Repository: rtrussell/BBCSDL Branch: master Commit: 483d7489af3b Files: 390 Total size: 5.2 MB Directory structure: gitextract_wqkzv1mv/ ├── .gitattributes ├── .gitignore ├── README.md ├── bbcsdl.bbc ├── bin/ │ ├── android/ │ │ ├── Android.mk │ │ ├── AndroidManifest.xml │ │ ├── Application.mk │ │ ├── BBCBasic.java │ │ ├── autorun.bbc │ │ ├── bbdata_x86_64.asm │ │ ├── build.gradle │ │ ├── help.bbc │ │ ├── help.txt │ │ └── styles.xml │ ├── ios/ │ │ ├── autorun.bbc │ │ ├── exported.txt │ │ ├── help.bbc │ │ └── help.txt │ ├── linux/ │ │ ├── install32.txt │ │ ├── install64.txt │ │ ├── makefile │ │ └── mkicon.sh │ ├── macos/ │ │ └── makefile │ ├── raspi/ │ │ ├── gpiodemo.bbc │ │ ├── gpiotest.bbc │ │ ├── install-rpi.txt │ │ ├── makefile │ │ └── mkicon.sh │ ├── rpi64/ │ │ ├── gpiodemo.bbc │ │ ├── gpiotest.bbc │ │ ├── install-rpi.txt │ │ └── makefile │ ├── wasm/ │ │ ├── BBC.h │ │ ├── autorun.bbc │ │ ├── bbcsdl.h │ │ ├── bbcsdl_shell.html │ │ ├── makefile │ │ └── readme.txt │ ├── win32/ │ │ ├── makefile │ │ ├── sdlrun.c │ │ └── unpack32.nas │ └── win64/ │ ├── makefile │ ├── sdlrun.c │ └── unpack64.nas ├── console/ │ ├── linux/ │ │ └── makefile │ ├── macm1/ │ │ └── makefile │ ├── macos/ │ │ └── makefile │ ├── raspi/ │ │ └── makefile │ ├── rpi64/ │ │ └── makefile │ └── win64/ │ └── makefile ├── examples/ │ ├── about.bbc │ ├── games/ │ │ ├── .Tables/ │ │ │ ├── Choice.mtb │ │ │ ├── CrnrPerm.mtb │ │ │ ├── CrnrSlic.ptb │ │ │ ├── EdgePerm.mtb │ │ │ ├── EdgeSlic.ptb │ │ │ ├── Flip.mtb │ │ │ ├── FlipChce.ptb │ │ │ ├── SlicPerm.mtb │ │ │ ├── Twist.mtb │ │ │ ├── TwstChce.ptb │ │ │ └── TwstFlip.ptb │ │ ├── 2048.bbc │ │ ├── Rubik.bbc │ │ ├── animal.bbc │ │ ├── buggy.bbc │ │ ├── bugs.bbc │ │ ├── cowboy.bbc │ │ ├── dibley.bbc │ │ ├── dibley.txt │ │ ├── dropperz.bbc │ │ ├── gorillas.bbc │ │ ├── hangman.bbc │ │ ├── hanoi.bbc │ │ ├── jigsaw.bbc │ │ ├── lemmings.bbc │ │ ├── rheolism.bbc │ │ ├── snake.bbc │ │ ├── sudoku.bbc │ │ ├── tower.bbc │ │ └── triples.bbc │ ├── general/ │ │ ├── BBSterm.bbc │ │ ├── SkyBaby.bbc │ │ ├── analyser.bbc │ │ ├── banner.bbc │ │ ├── banner.xml │ │ ├── bbcbasic.txt │ │ ├── bezierfit.bbc │ │ ├── bigdem.bbc │ │ ├── calculator.bbc │ │ ├── calendar.bbc │ │ ├── ceefax.bbc │ │ ├── ceefax.car │ │ ├── client.bbc │ │ ├── conway.bbc │ │ ├── dlgdemo.bbc │ │ ├── ellipsefit.bbc │ │ ├── example.csv │ │ ├── filters.bbc │ │ ├── kerning.bbc │ │ ├── lanchat.bbc │ │ ├── listdemo.bbc │ │ ├── mode7dem.bbc │ │ ├── mode7dem.car │ │ ├── multidem.bbc │ │ ├── multitouch.bbc │ │ ├── mysqldem.bbc │ │ ├── optics.bbc │ │ ├── pdfdemo.bbc │ │ ├── poem.bbc │ │ ├── polyfit.bbc │ │ ├── polyfit.csv │ │ ├── prompter.bbc │ │ ├── recorder.bbc │ │ ├── scroll.bbc │ │ ├── server.bbc │ │ ├── server_multi.bbc │ │ ├── sheet.bbc │ │ ├── solve.bbc │ │ ├── sortdemo.bbc │ │ ├── sorttest.bbc │ │ ├── telstar.bbc │ │ ├── textedit.bbc │ │ ├── timerdem.bbc │ │ ├── unicode.bbc │ │ ├── video.bbc │ │ ├── weather.car │ │ └── welcome.bbc │ ├── graphics/ │ │ ├── Demo.ptr │ │ ├── aagfxdem.bbc │ │ ├── aliens.bbc │ │ ├── anigif.bbc │ │ ├── bbcowl.bbc │ │ ├── bounce.bbc │ │ ├── candle.bbc │ │ ├── chain.bbc │ │ ├── clock.bbc │ │ ├── colorcycle.bbc │ │ ├── disco.bbc │ │ ├── doodle.bbc │ │ ├── ellipses.bbc │ │ ├── fern.bbc │ │ ├── fire.bbc │ │ ├── flier.bbc │ │ ├── flood.bbc │ │ ├── fluid.bbc │ │ ├── illusion.bbc │ │ ├── jclock.bbc │ │ ├── kaleidoscope.bbc │ │ ├── knots.bbc │ │ ├── lighting.bbc │ │ ├── mandel.bbc │ │ ├── opengl.bbc │ │ ├── pageturn.bbc │ │ ├── penrose.bbc │ │ ├── persian.bbc │ │ ├── piechart.bbc │ │ ├── pointer.bbc │ │ ├── polydots.bbc │ │ ├── polygon.bbc │ │ ├── pyramid.bbc │ │ ├── raytrace.bbc │ │ ├── saucer.bbc │ │ ├── scarab.bbc │ │ ├── seascape.bbc │ │ ├── sine.bbc │ │ ├── sliderule.bbc │ │ ├── slitscan.bbc │ │ ├── smithchart.bbc │ │ ├── snowscene.bbc │ │ ├── soccerball.bbc │ │ ├── spectrum.bbc │ │ ├── spotlight.bbc │ │ ├── squares.bbc │ │ ├── surks.bbc │ │ ├── swirl.bbc │ │ ├── teapot.bbc │ │ ├── teapot.fvf │ │ ├── torus2d.bbc │ │ ├── truchet.bbc │ │ ├── vampire.bbc │ │ ├── voronoi.bbc │ │ ├── wheel.bbc │ │ └── world.bbc │ ├── immediate.bbc │ ├── keywords.bbc │ ├── keywords.txt │ ├── physics/ │ │ ├── .pinball/ │ │ │ ├── ball.fvf │ │ │ ├── flipper1.fvf │ │ │ ├── flipper2.fvf │ │ │ ├── pinball.fvf │ │ │ └── plunger.fvf │ │ ├── bbclock.bbc │ │ ├── cradle.bbc │ │ ├── cradle.fvf │ │ ├── crates.bbc │ │ ├── dangle.bbc │ │ ├── dunebuggy.bbc │ │ ├── girder.fvf │ │ ├── lotto.bbc │ │ ├── pinball.bbc │ │ ├── pintograph.bbc │ │ ├── plinth.fvf │ │ ├── samples/ │ │ │ ├── Hello_Box2D.bbc │ │ │ ├── SAMPLES.bbc │ │ │ ├── breakable.bbc │ │ │ ├── bridge.bbc │ │ │ ├── bullet.bbc │ │ │ ├── cantilever.bbc │ │ │ ├── car.bbc │ │ │ ├── chain.bbc │ │ │ ├── confined.bbc │ │ │ ├── crank.bbc │ │ │ ├── dominos.bbc │ │ │ ├── gears.bbc │ │ │ ├── lotto.bbc │ │ │ ├── pendulum1.bbc │ │ │ ├── pendulum2.bbc │ │ │ ├── pendulum3.bbc │ │ │ ├── pendulum4.bbc │ │ │ ├── pendulum5.bbc │ │ │ ├── pendulum6.bbc │ │ │ ├── platform.bbc │ │ │ ├── pyramid.bbc │ │ │ ├── radialgravity.bbc │ │ │ ├── sensor.bbc │ │ │ └── wobble.bbc │ │ ├── spinmaze.bbc │ │ └── trebuchet.bbc │ ├── sounds/ │ │ ├── bauble.bbc │ │ ├── bauble.fvf │ │ ├── belier.bbc │ │ ├── blacksmith.bbc │ │ ├── brandenburg.bbc │ │ ├── carolmedley.bbc │ │ ├── carousel.bbc │ │ ├── carousel.fvf │ │ ├── crank.fvf │ │ ├── dubois.bbc │ │ ├── entertainer.bbc │ │ ├── figleaf.bbc │ │ ├── forge.fvf │ │ ├── ground.fvf │ │ ├── handle.fvf │ │ ├── horses.fvf │ │ ├── icerink.fvf │ │ ├── lights1.fvf │ │ ├── lights2.fvf │ │ ├── metronome.bbc │ │ ├── nut.fvf │ │ ├── piano.bbc │ │ ├── platform.fvf │ │ ├── polly.bbc │ │ ├── skater.fvf │ │ ├── skaters.bbc │ │ ├── skaters.tun │ │ ├── soldier.fvf │ │ ├── soldiers.bbc │ │ ├── tocfugue.bbc │ │ ├── tofair.bbc │ │ ├── tofair.tun │ │ ├── widor.bbc │ │ └── xmascene.fvf │ ├── starcmds.bbc │ ├── starcmds.txt │ ├── tools/ │ │ ├── BBCEdit/ │ │ │ ├── bgroupmod.bbc │ │ │ ├── dlgmod.bbc │ │ │ ├── filedlgmod.bbc │ │ │ ├── menumod.bbc │ │ │ └── msgmod.bbc │ │ ├── BBCEdit.bbc │ │ ├── SDLIDE.bbc │ │ ├── addconst.bbc │ │ ├── compiler.bbc │ │ ├── crossref.bbc │ │ ├── getri.bbc │ │ ├── hello.bbc │ │ ├── listvars.bbc │ │ ├── macrorec.bbc │ │ ├── memmon.bbc │ │ ├── mmap.bbc │ │ ├── profiler.bbc │ │ ├── saa505x.bbc │ │ ├── searchin.bbc │ │ ├── settab.bbc │ │ ├── sysvars.bbc │ │ ├── timing.bbc │ │ ├── touchide.bbc │ │ └── versinfo.bbc │ ├── vducodes.bbc │ └── vducodes.txt ├── include/ │ ├── BBC.h │ ├── SDL2_gfxPrimitives.h │ ├── SDL2_gfxPrimitives_font.h │ ├── SDL2_rotozoom.h │ ├── SDL_net.h │ ├── SDL_stbimage.h │ ├── SDL_ttf.h │ ├── bbccon.h │ ├── bbcsdl.h │ ├── begin_code.h │ ├── close_code.h │ ├── dr_mp3.h │ ├── stb_image.h │ ├── version.h │ ├── zconf.h │ └── zlib.h ├── lib/ │ ├── Bedstead-ext.otf │ ├── Bedstead.otf │ ├── Unifont.otf │ ├── aagfxlib.bbc │ ├── arraylib.bbc │ ├── audiolib.bbc │ ├── bigint.bbc │ ├── box2ddbg.bbc │ ├── box2dgfx.bbc │ ├── box2dlib.bbc │ ├── classlib.bbc │ ├── datelib.bbc │ ├── dlglib.bbc │ ├── editbox.bbc │ ├── ellipse.bbc │ ├── eventlib.bbc │ ├── filedlg.bbc │ ├── fnusing.bbc │ ├── gfxlib.bbc │ ├── gleslib.bbc │ ├── gpiolib.bbc │ ├── imglib.bbc │ ├── listlib.bbc │ ├── memusage.bbc │ ├── menulib.bbc │ ├── mode7lib.bbc │ ├── msgbox.bbc │ ├── multiwin.bbc │ ├── mysqllib.bbc │ ├── nowait.bbc │ ├── ogllib.bbc │ ├── pdflib.bbc │ ├── script.bbc │ ├── sdldebug.bbc │ ├── shaderlib.bbc │ ├── socklib.bbc │ ├── sortlib.bbc │ ├── stringlib.bbc │ ├── timerlib.bbc │ ├── treeview.bbc │ ├── utf8lib.bbc │ ├── webgllib.bbc │ └── xmllib.bbc ├── licence.txt ├── src/ │ ├── SDL2_gfxPrimitives.c │ ├── SDL2_rotozoom.c │ ├── b2Alias.cpp │ ├── bbasmb_arm_32.c │ ├── bbasmb_arm_64.c │ ├── bbasmb_arm_v6m.c │ ├── bbasmb_wasm32.c │ ├── bbasmb_x86_32.TODO.c │ ├── bbasmb_x86_64.c │ ├── bbccli.c │ ├── bbccon.c │ ├── bbccos.c │ ├── bbcmos.c │ ├── bbcsdl.c │ ├── bbctmp.m │ ├── bbcvdu.c │ ├── bbcvtx.c │ ├── bbdata_arm_32.s │ ├── bbdata_arm_64.s │ ├── bbdata_wasm32.c │ ├── bbdata_x86_32.nas │ ├── bbdata_x86_64.nas │ ├── bbeval.c │ ├── bbexec.c │ ├── bbmain.c │ ├── flood.c │ ├── sort.c │ └── sound_sdl.c └── tests/ ├── ALLTESTS.bbc ├── arraytst.bbc ├── byreftst.bbc ├── convertst.bbc ├── errortst.bbc ├── exittest.bbc ├── filetest.bbc ├── fortest.bbc ├── int64tst.bbc ├── slicetest.bbc └── structst.bbc ================================================ FILE CONTENTS ================================================ ================================================ FILE: .gitattributes ================================================ *.ptb binary ================================================ FILE: .gitignore ================================================ # Prerequisites *.d *.bat # Object files *.o *.ko *.obj build/ # Linker output *.ilk *.map *.exp # Precompiled Headers *.gch *.pch # Libraries *.lib *.a *.la *.lo # Shared objects (inc. Windows DLLs) *.dll *.so *.so.* *.dylib # Executables *.exe *.out *.app *.i*86 *.x86_64 *.hex # Debug files *.dSYM/ *.su *.idb *.pdb # Editor files *~ #* .#* ================================================ FILE: README.md ================================================ # BBCSDL BBC BASIC for SDL 2.0 (BBCSDL) is a cross-platform implementation of the BBC BASIC programming language for Windows, Linux (x86), MacOS, Raspbian (Raspberry Pi OS), Android, iOS and Emscripten / WebAssembly. It is highly compatible with BBC BASIC for Windows and has the same language extensions, but uses SDL 2.0 as an OS abstraction layer to achieve cross-platform compatibility. The BBC BASIC Console Mode editions (BBCTTY) are lightweight implementations for Windows, Linux (x86), MacOS and Raspbian (Raspberry Pi OS) which do not support graphics or sound but are otherwise compatible with the desktop, mobile and web editions. They take their input from stdin and send their output to stdout, so may be used for scripting, CGI and remote terminal applications. ![Architecture](https://www.bbcbasic.co.uk/bbcsdl/arch.png) The files in green constitute the generic BBC BASIC interpreter which is shared by all the editions. The files in the red box are used to build the Console Mode editions. The files in the blue box are used to build the SDL 2.0 editions. The files in brown run in the GUI (main) thread, all the others run in the interpreter thread. The files with the 1 and 2 superscripts are CPU-specific and the different variants are listed beneath (not all exist!). Note that bbasmb_wasm32.c isn't an assembler, but has been used as a convenient place to put the function wrappers needed to support SYS in the in-browser edition. Not indicated in the diagram is that the in-browser edition uses different versions of bbc.h and bbcsdl.h from the rest. Note that the name 'BBC BASIC' is used by permission of the British Broadcasting Corporation and is not transferrable to a derived or forked work. ================================================ FILE: bin/android/Android.mk ================================================ LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := libbbc-prebuilt LOCAL_MODULE := main SDL_PATH := ../SDL LOCAL_C_INCLUDES := $(LOCAL_PATH)/$(SDL_PATH)/include LOCAL_LDLIBS := -lGLESv1_CM -lGLESv2 -lOpenSLES -llog -landroid LOCAL_LDFLAGS += -Wl,-z,max-page-size=16384 ifeq ($(TARGET_ARCH),x86_64) LOCAL_SRC_FILES := bbdata_x86_64.asm bbmain.c bbexec.c bbeval.c bbcmos.c bbccli.c bbcvdu.c \ bbcvtx.c flood.c bbcsdl.c bbasmb_x86_64.c SDL2_gfxPrimitives.c SDL2_rotozoom.c LOCAL_CFLAGS := -fsigned-char endif ifeq ($(TARGET_ARCH),arm) LOCAL_SRC_FILES := bbdata_arm_32.s bbmain.c bbexec.c bbeval.c bbcmos.c.neon bbccli.c bbcvdu.c \ bbcvtx.c flood.c bbcsdl.c bbasmb_arm_32.c SDL2_gfxPrimitives.c SDL2_rotozoom.c sort.c LOCAL_CFLAGS := -munaligned-access -fsigned-char endif ifeq ($(TARGET_ARCH),arm64) LOCAL_SRC_FILES := bbdata_arm_64.s bbmain.c bbexec.c bbeval.c bbcmos.c.neon bbccli.c bbcvdu.c \ bbcvtx.c flood.c bbcsdl.c bbasmb_arm_64.c SDL2_gfxPrimitives.c SDL2_rotozoom.c sort.c LOCAL_CFLAGS := -fsigned-char endif LOCAL_SHARED_LIBRARIES := SDL2 SDL2_ttf SDL2_net Box2D include $(BUILD_SHARED_LIBRARY) ================================================ FILE: bin/android/AndroidManifest.xml ================================================ ================================================ FILE: bin/android/Application.mk ================================================ # Uncomment this if you're using STL in your project # You can find more information here: # https://developer.android.com/ndk/guides/cpp-support APP_STL := c++_shared APP_ABI := armeabi-v7a arm64-v8a x86_64 APP_CFLAGS += -Os NDK_TOOLCHAIN_VERSION := 4.9 # Min runtime API level APP_PLATFORM=android-16 # For 16K page size APP_SUPPORT_FLEXIBLE_PAGE_SIZES := TRUE ================================================ FILE: bin/android/BBCBasic.java ================================================ package com.rtrussell.bbcbasic; import org.libsdl.app.SDLActivity; public class BBCBasic extends SDLActivity { protected String[] getLibraries() { return new String[] { "c++_shared", "Box2D", // "hidapi", "SDL2", // "SDL2_image", // "SDL2_mixer", "SDL2_net", "SDL2_ttf", "main" }; } /** * Override so that BBC2APK can set orientation in manifest */ public void setOrientationBis(int w, int h, boolean resizable, String hint) { } } ================================================ FILE: bin/android/bbdata_x86_64.asm ================================================ ;/*****************************************************************\ ;* BBC BASIC for SDL 2.0 (x86_64) * ;* Copyright (c) R. T. Russell, 2000-2023 * ;* * ;* BBCDATA.NAS RAM data definitions * ;* Version 1.38a, 02-Sep-2023 * ;\*****************************************************************/ ; MAX_PORTS EQU 4 ; Maximum number of i/o ports MAX_FILES EQU 8 ; Maximum number of open files SOUNDQE EQU 4 ; Number of bytes per sound entry SOUNDQL EQU 5*SOUNDQE ; Number of bytes per channel ; GLOBAL stavar,lc,oc,pc,dynvar,fnptr,proptr,prand GLOBAL accs,buff,vpage,flist,lomem,pfree,himem GLOBAL errtxt,onersp,errtrp,datptr,curlin,errlin GLOBAL tracen,random,vcount,vwidth,errnum,liston,tmps ; GLOBAL path,keystr,keybdq,keyptr,spchan,exchan,tweak GLOBAL fcbtab,timoff,usrchr,soundq,envels,waves,libase GLOBAL eventq,timtrp,clotrp,siztrp,systrp,moutrp GLOBAL alltrp,iMsg,wParam,lParam,filbuf,portab,fvtab ; GLOBAL forgnd,bakgnd,hfont,colmsk,modeno,lthick,hrect GLOBAL origx,origy,lastx,lasty,prevx,prevy,pfont,cmcflg GLOBAL textwl,textwr,textwt,textwb,sizex,sizey,sclflg GLOBAL textx,texty,charx,chary,cursa,cursb,tempo GLOBAL pixelx,pixely,txtfor,txtbak,optval,farray,fasize ; GLOBAL vduq,queue,flags,kbdqw,kbdqr,keyexp,scroln GLOBAL vflags,sndqw,sndqr,sacc,smix,evtqw,evtqr GLOBAL eenvel,escale,epsect,easect,epitch,elevel,ecount ; GLOBAL hwndProg,zoom,offsetx,offsety,platform GLOBAL memhdc,reflag,sysflg,panx,pany GLOBAL prntx,prnty,prchx,prchy,cursx GLOBAL paperl,paperr,papert,paperb,lstopt ; GLOBAL datend,sysvar,bbcfont,lastick,link00 GLOBAL cmdlen,cmdadr,dirlen,diradr,liblen,libadr GLOBAL usrlen,usradr,tmplen,tmpadr,hwo GLOBAL voices,chrmap GLOBAL breakpt,breakhi,ttxtfont ; EXTERN loadn,loads,storen,stores,getvar,putvar,expr,item,lexan EXTERN xfloat,xfix,xeq,token,putevt,palette,str00,con,TTFcache ; EXTERN gfxPrimitivesGetFont,gfxPrimitivesSetFont,RedefineChar ; %define checkalign ; SEGMENT .data ; Crashes if .bss ; ;The following locations are initialised to zero when program is RUN: ;Variables used by generic modules (bbmain, bbexec, bbeval, bbasmb) ; align 16,db 0 stavar: times 12 dd 0 ; Static variables @% to K% lc: dd 0 ; Static variable L% times 2 dd 0 ; Static variables M%, N% oc: dd 0 ; Static variable O% pc: dd 0 ; Static variable P% times 10 dd 0 ; Static variables Q% to Z% dynvar: times 54 dd 0 ; ( Pointers to dynamic vars ) fnptr: dd 0 ; ( Pointer to user FuNctions ) grouped proptr: dd 0 ; ( Pointer to user PROCedures ) accs: dd 0 ; Pointer to string accumulator dd 0 ; 64-bit pointer vpage: dd 0 ; Current value of PAGE tracen: dd 0 ; Maximum line number to trace lomem: dd 0 ; Current value of LOMEM pfree: dd 0 ; Pointer to start of free space himem: dd 0 ; Current value of HIMEM libase: dd 0 ; Pointer to INSTALLed library errtxt: dd 0 ; Pointer to error text for REPORT dd 0 ; 64-bit pointer errtrp: dd 0 ; Pointer to ON ERROR statement datptr: dd 0 ; Pointer to DATA statements vcount: dd 0 ; Current value of COUNT curlin: dd 0 ; Pointer to current statement alltrp: ; Start of trap pointers timtrp: dd 0 ; Pointer to ON TIME statement clotrp: dd 0 ; Pointer to ON CLOSE statement siztrp: dd 0 ; Pointer to ON MOVE statement systrp: dd 0 ; Pointer to ON SYS statement moutrp: dd 0 ; Pointer to ON MOUSE statement errlin: dd 0 ; Pointer to last error statement ; prand: random: times 5 db 0 ; Current 'random' number (5 bytes) vwidth: db 0 ; Current value of WIDTH errnum: db 0 ; Error code of last error liston: db 0 ; *FLOAT/*HEX/*LOWERCASE/OPT ; ;Variables used by OS-specific modules (bbcmos, bbccli, bbcvdu, bbcvtx) ; align 4,db 0 path: dd 0 ; Pointer to path/filename buffer dd 0 ; 64-bit pointer keybdq: dd 0 ; Pointer to keyboard queue dd 0 ; 64-bit pointer keyptr: dd 0 ; Pointer to *KEY string dd 0 ; 64-bit pointer ; lstopt: db 0 ; LISTO value (indentation) sclflg: db 0 ; Scroll flag (COPY key) optval: db 0 ; *OUTPUT and *INPUT values ; ; ------ End of 'absolutely-addressed' variables ------ ; farray: db 0 ; Number of dimensions = 1 | fasize: dd 0 ; Number of elements = 16 | filbuf: dq 0 ; Pointer to file buffers | @hfile%%() portab: times MAX_PORTS dq 0 ; Table of port handles | chntab: times MAX_FILES dq 0 ; Table of file handles | exchan: dq 0 ; Handle for *EXEC @hfile%%(13) spchan: dq 0 ; Handle for *SPOOL @hfile%%(14) ptchan: dq 0 ; Handle for printer @hfile%%(15) ; fcbtab: times MAX_FILES dd 0 ; Table of FCBs voices: times 4 db 0 ; Voices (waveforms) for sound channels ; flist: times 33 dq 0 ; Pointers to string free lists tmps: dd 0 ; Temp string descriptor: address dd 0 ; Temp string descriptor: length ; ; Variables moved here to make room for 64-bit pointers and handles: ; onersp: dd 0 ; ESP storage for ON ERROR LOCAL dd 0 ; 64-bit pointer buff: dd 0 ; Pointer to string input buffer dd 0 ; 64-bit pointer keystr: dd 0 ; Pointer to user *KEY strings dd 0 ; 64-bit pointer usrchr: dd 0 ; Pointer to user-defined characters dd 0 ; 64-bit pointer waves: dd 0 ; Pointer to SOUND waveforms dd 0 ; 64-bit pointer envels: dd 0 ; Pointer to ENVELOPEs dd 0 ; 64-bit pointer eventq: dd 0 ; Pointer to event queue dd 0 ; 64-bit pointer hrect: dd 0 ; Pointer to clip rect (part of @vdu{}) dd 0 ; 64-bit pointer ; ;Text/graphics metrics (pointed to by @vdu%): ; vduvar: origx: dd 0 ; Graphics horizontal origin origy: dd 0 ; Graphics vertical origin lastx: dd 0 ; Immediately preceding x-coordinate lasty: dd 0 ; Immediately preceding y-coordinate prevx: dd 0 ; Previous x-coordinate prevy: dd 0 ; Previous y-coordinate textwl: dd 0 ; Text window left (pixels) textwr: dd 0 ; Text window right (pixels) textwt: dd 0 ; Text window top (pixels) textwb: dd 0 ; Text window bottom (pixels) pixelx: dd 0 ; Width of a graphics pixel pixely: dd 0 ; Height of a graphics pixel textx: dd 0 ; Text pointer (cursor x) texty: dd 0 ; Text pointer (cursor y) hfont: dd 0 ; Handle of current font dd 0 ; 64-bit handle ; forgnd: dw 0 ; Graphics foreground colour/action bakgnd: dw 0 ; Graphics background colour/action ; cursa: db 0 ; Start (top) line of cursor cursb: db 0 ; Finish (bottom) line of cursor txtfor: db 0 ; Text foreground colour txtbak: db 0 ; Text background colour modeno: db 0 ; Mode number colmsk: db 0 ; Mask for maximum number of colours vflags: db 0 ; VDU driver flags scroln: db 0 ; Scroll counter in paged mode cursx: db 0 ; Cursor (caret) width lthick: db 0 ; Line thickness (lines, outline shapes) cmcflg: db 0 ; V5.3 cursor movement flags tweak: db 0 ; Character spacing adjustment (signed) ; sndqw: times 4 db 0 ; Sound queue write pointers sndqr: times 4 db 0 ; Sound queue read pointers eenvel: times 4 db 0 ; Envelope number escale: times 4 db 0 ; Envelope scaler epsect: times 4 db 0 ; Envelope pitch section easect: times 4 db 0 ; Envelope amplitude section epitch: times 4 db 0 ; Envelope pitch (frequency) ecount: times 4 db 0 ; Envelope count soundq: times 4*SOUNDQL db 0 ; Sound queue (four channels) vduq: times 10 db 0 ; VDU queue (must precede 'queue') queue: db 0 ; VDU queue status ; kbdqw: db 0 ; Keyboard queue write pointer kbdqr: db 0 ; Keyboard queue read pointer evtqw: db 0 ; Event queue write pointer evtqr: db 0 ; Event queue read pointer keyexp: db 0 ; *KEY character counter ; align 4,db 0 ; ; ------ End of initialised variables ------ ; datend: ; ;The following locations are NOT initialised when program is RUN ;(but are guaranteed to be zero on initial execution). ; sizex: dd 0 ; Total width of client area sizey: dd 0 ; Total height of client area charx: dd 0 ; Average character width chary: dd 0 ; Average character height prchx: dd 0 ; Average character width (printer) prchy: dd 0 ; Average character height (printer) paperl: dd 0 ; Printer left edge paperr: dd 0 ; Printer right edge papert: dd 0 ; Printer top edge paperb: dd 0 ; Printer bottom edge prntx: dd 0 ; Horizontal printing position prnty: dd 0 ; Vertical printing position ; ; ------ End of VDU variables ------ ; lastick:dd 0 ; To check for TickCount wraparound timoff: dd 0 ; Offset to add to TickCount sacc: times 4 dd 0 ; Sound accumulators (not initialised) smix: times 4 dd 0 ; Stereo mix elevel: times 4 db 0 ; Envelope level (amplitude) ; ;The following variables are organised as a linked-list at ;sysvar, for access via 'system variables' starting with @: ; align 4,db 0 ; sysvar: dd link1 - sysvar db 'wparam%',0 checkalign wParam: dd 0 ; Saved wParam for ON xxxx interrupt ; link3: dd link4 - link3 db 'lparam%',0 checkalign lParam: dd 0 ; Saved lParam for ON xxxx interrupt ; db 0 ; Padding link23: dd link24 - link23 db 'ispal%',0 checkalign bPaletted: dd 0 ; Paletted display flag (BOOL) ; times 7 db 0 ; Padding link1: dd link3 - link1 db 'memhdc%%',0 ; n.b. aliased to @memhdc% checkalign memhdc: dd 0 ; Shadow screen device context dd 0 ; 64-bit handle ; times 7 db 0 ; Padding link9: dd link10 - link9 db 'msg%',0 checkalign iMsg: dd 0 ; Saved iMsg for ON xxxx interrupt ; db 0 ; Padding link4: dd link5 - link4 db 'hwnd%%',0 ; n.b. aliased to @hwnd% checkalign hwndProg: dd 0 ; Handle for program window dd 0 ; 64-bit handle ; times 5 db 0 ; Padding link12: dd link13 - link12 db 'flags%',0 checkalign tempo: db 0 ; *TEMPO value sysflg: db 0 ; *SYS flags reflag: db 0 ; *REFRESH flags flags: db 0 ; Boolean flags (byte) @ 3FBH ; times 7 db 0 ; Padding link16: dd link17 - link16 db 'chrmap%%',0 ; n.b. aliased to @chrmap% checkalign chrmap: dd 0 dd 0 ; 64-bit pointer ; times 5 db 0 ; Padding link5: dd link6 - link5 db 'hpal%%',0 checkalign dq palette ; Colour palette ; times 6 db 0 ; Padding link10: dd link11 - link10 db 'vdu%%',0 checkalign dq vduvar ; Pointer to VDU variables ; times 6 db 0 ; Padding link00: dd 0 ; End of list db 'fn%%(',0 checkalign dq fnarr ; Pointer to function array ; dw 0 ; Padding link11: dd link12 - link11 db 'platform%',0 checkalign platform: dd 0 ; SDL version & OS ; dd 0 ; Padding link6: dd link7 - link6 db 'ox%',0 checkalign offsetx:dd 0 ; x-offset memhdc->hwnd ; dd 0 ; Padding link7: dd link8 - link7 db 'oy%',0 checkalign offsety:dd 0 ; y-offset memhdc->hwnd ; times 3 db 0 ; Padding link17: dd link18 - link17 db 'dir$',0 checkalign diradr: dd 0 ; Program directory address dirlen: dd 0 ; Program directory length ; times 7 db 0 ; Padding link18: dd link19 - link18 db 'lib$',0 checkalign libadr: dd 0 ; Library directory address liblen: dd 0 ; Library directory length ; times 6 db 0 ; Padding link24: dd link25 - link24 db 'panx%',0 checkalign panx: dd 0 ; Horizontal pan ; times 3 db 0 ; Padding link19: dd link20 - link19 db 'cmd$',0 checkalign cmdadr: dd 0 ; Command line address cmdlen: dd 0 ; Command line length ; times 7 db 0 ; Padding link20: dd link21 - link20 db 'usr$',0 checkalign usradr: dd 0 ; User directory address usrlen: dd 0 ; User directory length ; times 6 db 0 ; Padding link25: dd link26 - link25 db 'pany%',0 checkalign pany: dd 0 ; Vertical pan ; times 3 db 0 ; Padding link21: dd link22 - link21 db 'tmp$',0 checkalign tmpadr: dd 0 ; Temp directory address tmplen: dd 0 ; Temp directory length ; times 7 db 0 ; Padding link22: dd link23 - link22 db 'vdu{',0 checkalign dq vdufmt ; Structure format address dq hrect ; Structure data address ; times 6 db 0 ; Padding link14: dd link15 - link14 db 'zoom%',0 checkalign zoom: dd 0 ; times 7 db 0 ; Padding link8: dd link9 - link8 db 'hfile%%(',0 checkalign dq farray ; Pointer to file handles array ; times 5 db 0 ; Padding link26: dd link27 - link26 db 'brkpt%',0 checkalign breakpt:dd 0 ; Breakpoint (bottom of range) ; times 3 db 0 ; Padding link15: dd link16 - link15 db 'hwo%',0 checkalign hwo: dd 0 ; Handle for wave output ; db 0 ; Padding link27: dd link28 - link27 db 'brkhi%',0 checkalign breakhi:dd 0 ; Breakpoint (top of range) ; dw 0 ; Padding link28: dd link29 - link28 db 'size{',0 ; V6.1 Member name checkalign dq ptfmt ; V6.1 Format address dq sizex ; V6.1 Data offset ; times 6 db 0 ; Padding link29: dd link00 - link29 db 'char{',0 ; V6.1 Member name checkalign dq ptfmt ; V6.1 Format address dq charx ; V6.1 Data offset ; dd 0 ; Padding link13: dd link14 - link13 db 'cache%%',0 checkalign dq TTFcache ; Font cache ; ; Structure @vdu{o{x%,y%}, l{x%,y%}, p{x%,y%}, tl%, tr%, tt%, tb%, ; d{x%,y%}, c{x%,y%}, hf%%, hr%%, ; g{a&,b&,c&,d&}, t{a&,b&,c&,d&}, m{a&,b&,c&,d&}} ; times 5 db 0 ; Padding vdufmt: dd sndqw-hrect ; Total length (bytes) vlnk00: dd vlnk01 - vlnk00 ; Link to next db 'o{',0 ; Member name checkalign dq ptfmt dq origx-hrect ; Data offset ; db 0 ; Padding vlnk01: dd vlnk02 - vlnk01 db 'l{',0 ; Member name checkalign dq ptfmt dq lastx-hrect ; Data offset ; db 0 ; Padding vlnk02: dd vlnk03 - vlnk02 db 'p{',0 ; Member name checkalign dq ptfmt dq prevx-hrect ; Data offset ; vlnk03: dd vlnk04 - vlnk03 db 'tl%',0 ; Member name checkalign dd textwl-hrect ; Data offset ; dd 0 ; Padding vlnk04: dd vlnk05 - vlnk04 db 'tr%',0 ; Member name checkalign dd textwr-hrect ; Data offset ; dd 0 ; Padding vlnk05: dd vlnk06 - vlnk05 db 'tt%',0 ; Member name checkalign dd textwt-hrect ; Data offset ; dd 0 ; Padding vlnk06: dd vlnk07 - vlnk06 db 'tb%',0 ; Member name checkalign dd textwb-hrect ; Data offset ; times 5 db 0 ; Padding vlnk07: dd vlnk08 - vlnk07 db 'd{',0 ; Member name checkalign dq ptfmt dq pixelx-hrect ; Data offset ; db 0 ; Padding vlnk08: dd vlnk09 - vlnk08 db 'c{',0 ; Member name checkalign dq ptfmt dq textx-hrect ; Data offset ; times 7 db 0 ; Padding vlnk09: dd vlnk10 - vlnk09 db 'hf%%',0 ; Member name checkalign dd hfont-hrect ; Data offset ; times 3 db 0 ; Padding vlnk10: dd vlnk11 - vlnk10 db 'hr%%',0 ; Member name checkalign dd hrect-hrect ; Data offset ; times 5 db 0 ; Padding vlnk11: dd vlnk12 - vlnk11 db 'g{',0 ; Member name checkalign dq b4fmt dq forgnd-hrect ; Data offset ; db 0 ; Padding vlnk12: dd vlnk13 - vlnk12 db 't{',0 ; Member name checkalign dq b4fmt dq cursa-hrect ; Data offset ; db 0 ; Padding vlnk13: dd vlnk14 - vlnk13 db 'm{',0 ; Member name checkalign dq b4fmt dq modeno-hrect ; Data offset ; db 0 ; Padding vlnk14: dd 0 db 'w{',0 ; V6.1 Member name checkalign dq b4fmt ; V6.1 Format address dq cursx-hrect ; V6.1 Data offset ; SEGMENT .text ; bbcfont: DB 00H,00H,00H,00H,00H,00H,00H,00H ;NUL DB 07EH,081H,0A5H,081H,0BDH,099H,081H,07EH ;SOH DB 07EH,0FFH,0DBH,0FFH,0C3H,0E7H,0FFH,07EH ;STX DB 06CH,0FEH,0FEH,0FEH,07CH,038H,010H,00H ;ETX DB 010H,038H,07CH,0FEH,07CH,038H,010H,00H ;EOT DB 010H,038H,038H,0D6H,0FEH,0D6H,010H,038H ;ENQ DB 010H,038H,07CH,0FEH,0FEH,0FEH,038H,07CH ;ACK DB 00H,00H,018H,03CH,03CH,018H,00H,00H ;BEL DB 0FFH,0FFH,0E7H,0C3H,0C3H,0E7H,0FFH,0FFH ;BS DB 00H,03CH,066H,042H,042H,066H,03CH,00H ;HT DB 0FFH,0C3H,099H,0BDH,0BDH,099H,0C3H,0FFH ;LF DB 0FH,07H,0FH,07DH,0CCH,0CCH,0CCH,078H ;VT DB 03CH,066H,066H,066H,03CH,018H,07EH,018H ;FF DB 03FH,033H,03FH,030H,030H,070H,0F0H,0E0H ;CR DB 07FH,063H,07FH,063H,063H,067H,0E6H,0C0H ;SO DB 099H,05AH,03CH,0E7H,0E7H,03CH,05AH,099H ;SI DB 080H,0E0H,0F8H,0FEH,0F8H,0E0H,080H,00H ;DLE DB 02H,0EH,03EH,0FEH,03EH,0EH,02H,00H ;DC1 DB 018H,03CH,07EH,018H,018H,07EH,03CH,018H ;DC2 DB 066H,066H,066H,066H,066H,00H,066H,00H ;DC3 DB 07FH,0DBH,0DBH,07BH,01BH,01BH,01BH,00H ;DC4 DB 03EH,063H,038H,06CH,06CH,038H,0CCH,078H ;NAK DB 00H,00H,00H,00H,07EH,07EH,07EH,00H ;SYN DB 018H,03CH,07EH,018H,07EH,03CH,018H,0FFH ;ETB DB 018H,03CH,07EH,018H,018H,018H,018H,00H ;CAN DB 018H,018H,018H,018H,07EH,03CH,018H,00H ;EM DB 00H,018H,0CH,0FEH,0CH,018H,00H,00H ;SUB DB 00H,030H,060H,0FEH,060H,030H,00H,00H ;ESC DB 00H,00H,0C0H,0C0H,0C0H,0FEH,00H,00H ;FS DB 00H,024H,066H,0FFH,066H,024H,00H,00H ;GS DB 00H,018H,03CH,07EH,0FFH,0FFH,00H,00H ;RS DB 00H,0FFH,0FFH,07EH,03CH,018H,00H,00H ;US DB 00H,00H,00H,00H,00H,00H,00H,00H ;" " DB 030H,030H,030H,030H,030H,00H,030H,00H ;"!" DB 06CH,06CH,06CH,00H,00H,00H,00H,00H ;""" DB 06CH,06CH,0FEH,06CH,0FEH,06CH,06CH,00H ;"#" DB 018H,07EH,0D0H,07CH,016H,0FCH,030H,00H ;"$" DB 0C0H,0CCH,018H,030H,060H,0CCH,0CH,00H ;"%" DB 038H,06CH,038H,076H,0DCH,0CCH,076H,00H ;"&" DB 018H,030H,060H,00H,00H,00H,00H,00H ;"'" DB 018H,030H,060H,060H,060H,030H,018H,00H ;"(" DB 060H,030H,018H,018H,018H,030H,060H,00H ;")" DB 00H,06CH,038H,0FEH,038H,06CH,00H,00H ;"*" DB 00H,030H,030H,0FCH,030H,030H,00H,00H ;"+" DB 00H,00H,00H,00H,00H,030H,030H,060H ;"," DB 00H,00H,00H,0FCH,00H,00H,00H,00H ;"-" DB 00H,00H,00H,00H,00H,030H,030H,00H ;"." DB 00H,0CH,018H,030H,060H,0C0H,00H,00H ;"/" DB 078H,0CCH,0DCH,0FCH,0ECH,0CCH,078H,00H ;"0" DB 030H,070H,030H,030H,030H,030H,0FCH,00H ;"1" DB 078H,0CCH,0CH,018H,030H,060H,0FCH,00H ;"2" DB 078H,0CCH,0CH,038H,0CH,0CCH,078H,00H ;"3" DB 018H,038H,078H,0D8H,0FCH,018H,018H,00H ;"4" DB 0FCH,0C0H,0F8H,0CH,0CH,0CCH,078H,00H ;"5" DB 038H,060H,0C0H,0F8H,0CCH,0CCH,078H,00H ;"6" DB 0FCH,0CH,018H,030H,060H,060H,060H,00H ;"7" DB 078H,0CCH,0CCH,078H,0CCH,0CCH,078H,00H ;"8" DB 078H,0CCH,0CCH,07CH,0CH,018H,070H,00H ;"9" DB 00H,00H,030H,030H,00H,030H,030H,00H ;":" DB 00H,00H,030H,030H,00H,030H,030H,060H ;";" DB 018H,030H,060H,0C0H,060H,030H,018H,00H ;"<" DB 00H,00H,0FCH,00H,0FCH,00H,00H,00H ;"=" DB 060H,030H,018H,0CH,018H,030H,060H,00H ;">" DB 078H,0CCH,018H,030H,030H,00H,030H,00H ;"?" DB 078H,0CCH,0DCH,0D4H,0DCH,0C0H,078H,00H ;"@" DB 078H,0CCH,0CCH,0FCH,0CCH,0CCH,0CCH,00H ;"A" DB 0F8H,0CCH,0CCH,0F8H,0CCH,0CCH,0F8H,00H ;"B" DB 078H,0CCH,0C0H,0C0H,0C0H,0CCH,078H,00H ;"C" DB 0F0H,0D8H,0CCH,0CCH,0CCH,0D8H,0F0H,00H ;"D" DB 0FCH,0C0H,0C0H,0F8H,0C0H,0C0H,0FCH,00H ;"E" DB 0FCH,0C0H,0C0H,0F8H,0C0H,0C0H,0C0H,00H ;"F" DB 078H,0CCH,0C0H,0DCH,0CCH,0CCH,078H,00H ;"G" DB 0CCH,0CCH,0CCH,0FCH,0CCH,0CCH,0CCH,00H ;"H" DB 0FCH,030H,030H,030H,030H,030H,0FCH,00H ;"I" DB 07CH,018H,018H,018H,018H,0D8H,070H,00H ;"J" DB 0CCH,0D8H,0F0H,0E0H,0F0H,0D8H,0CCH,00H ;"K" DB 0C0H,0C0H,0C0H,0C0H,0C0H,0C0H,0FCH,00H ;"L" DB 0C6H,0EEH,0FEH,0D6H,0D6H,0C6H,0C6H,00H ;"M" DB 0CCH,0CCH,0ECH,0FCH,0DCH,0CCH,0CCH,00H ;"N" DB 078H,0CCH,0CCH,0CCH,0CCH,0CCH,078H,00H ;"O" DB 0F8H,0CCH,0CCH,0F8H,0C0H,0C0H,0C0H,00H ;"P" DB 078H,0CCH,0CCH,0CCH,0DCH,078H,01CH,00H ;"Q" DB 0F8H,0CCH,0CCH,0F8H,0D8H,0CCH,0CCH,00H ;"R" DB 078H,0CCH,0C0H,078H,0CH,0CCH,078H,00H ;"S" DB 0FCH,030H,030H,030H,030H,030H,030H,00H ;"T" DB 0CCH,0CCH,0CCH,0CCH,0CCH,0CCH,078H,00H ;"U" DB 0CCH,0CCH,0CCH,0CCH,0CCH,078H,030H,00H ;"V" DB 0C6H,0C6H,0D6H,0D6H,0FEH,0EEH,0C6H,00H ;"W" DB 0CCH,0CCH,078H,030H,078H,0CCH,0CCH,00H ;"X" DB 0CCH,0CCH,0CCH,078H,030H,030H,030H,00H ;"Y" DB 0FCH,0CH,018H,030H,060H,0C0H,0FCH,00H ;"Z" DB 0F8H,0C0H,0C0H,0C0H,0C0H,0C0H,0F8H,00H ;"[" DB 00H,0C0H,060H,030H,018H,0CH,00H,00H ;"\" DB 07CH,0CH,0CH,0CH,0CH,0CH,07CH,00H ;"]" DB 010H,038H,06CH,0C6H,00H,00H,00H,00H ;"^" DB 00H,00H,00H,00H,00H,00H,00H,0FFH ;"_" DB 060H,030H,018H,00H,00H,00H,00H,00H ;"`" DB 00H,00H,078H,0CH,07CH,0CCH,07CH,00H ;"a" DB 0C0H,0C0H,0F8H,0CCH,0CCH,0CCH,0F8H,00H ;"b" DB 00H,00H,078H,0CCH,0C0H,0CCH,078H,00H ;"c" DB 0CH,0CH,07CH,0CCH,0CCH,0CCH,07CH,00H ;"d" DB 00H,00H,078H,0CCH,0FCH,0C0H,078H,00H ;"e" DB 038H,060H,060H,0F8H,060H,060H,060H,00H ;"f" DB 00H,00H,07CH,0CCH,0CCH,07CH,0CH,078H ;"g" DB 0C0H,0C0H,0F8H,0CCH,0CCH,0CCH,0CCH,00H ;"h" DB 030H,00H,070H,030H,030H,030H,078H,00H ;"i" DB 030H,00H,070H,030H,030H,030H,030H,0E0H ;"j" DB 0C0H,0C0H,0CCH,0D8H,0F0H,0D8H,0CCH,00H ;"k" DB 070H,030H,030H,030H,030H,030H,078H,00H ;"l" DB 00H,00H,06CH,0FEH,0D6H,0D6H,0C6H,00H ;"m" DB 00H,00H,0F8H,0CCH,0CCH,0CCH,0CCH,00H ;"n" DB 00H,00H,078H,0CCH,0CCH,0CCH,078H,00H ;"o" DB 00H,00H,0F8H,0CCH,0CCH,0F8H,0C0H,0C0H ;"p" DB 00H,00H,07CH,0CCH,0CCH,07CH,0CH,0EH ;"q" DB 00H,00H,0D8H,0ECH,0C0H,0C0H,0C0H,00H ;"r" DB 00H,00H,07CH,0C0H,078H,0CH,0F8H,00H ;"s" DB 060H,060H,0F8H,060H,060H,060H,038H,00H ;"t" DB 00H,00H,0CCH,0CCH,0CCH,0CCH,07CH,00H ;"u" DB 00H,00H,0CCH,0CCH,0CCH,078H,030H,00H ;"v" DB 00H,00H,0C6H,0D6H,0D6H,0FEH,06CH,00H ;"w" DB 00H,00H,0CCH,078H,030H,078H,0CCH,00H ;"x" DB 00H,00H,0CCH,0CCH,0CCH,07CH,0CH,078H ;"y" DB 00H,00H,0FCH,018H,030H,060H,0FCH,00H ;"z" DB 018H,030H,030H,0E0H,030H,030H,018H,00H ;"{" DB 030H,030H,030H,00H,030H,030H,030H,00H ;"|" DB 060H,030H,030H,01CH,030H,030H,060H,00H ;"}" DB 076H,0DCH,00H,00H,00H,00H,00H,00H ;"~" DB 00H,010H,038H,06CH,0C6H,0C6H,0FEH,00H ;DEL DB 03CH,062H,0F8H,060H,0F8H,062H,03CH,000H ; &80 euro symbol DB 000H,07EH,07EH,07EH,07EH,07EH,07EH,000H ; &81 block (teletext) DB 000H,000H,000H,000H,000H,018H,018H,030H ; &82 single low quotation mark DB 000H,00CH,018H,018H,03CH,018H,018H,070H ; &83 small letter f with hook DB 000H,000H,000H,000H,000H,06CH,06CH,0D8H ; &84 double low quotation mark DB 000H,000H,000H,000H,000H,000H,054H,000H ; &85 horizontal ellipsis DB 018H,018H,07EH,018H,018H,018H,018H,000H ; &86 dagger DB 018H,018H,07EH,018H,018H,07EH,018H,018H ; &87 double dagger DB 010H,038H,06CH,000H,000H,000H,000H,000H ; &88 circumflex accent DB 0C6H,0CCH,018H,030H,060H,0DBH,01BH,000H ; &89 per mille DB 038H,07CH,0C6H,070H,01CH,0C6H,07CH,000H ; &8A capital S caron DB 000H,018H,030H,060H,030H,018H,000H,000H ; &8B left angle quotation mark DB 07EH,0D8H,0D8H,0DEH,0D8H,0D8H,07EH,000H ; &8C capital OE ligature DB 030H,078H,0FCH,030H,030H,030H,030H,000H ; &8D up arrow (teletext) DB 038H,0FEH,00CH,018H,030H,060H,0FEH,000H ; &8E capital Z caron DB 000H,020H,060H,0FEH,060H,020H,000H,000H ; &8F left arrow (teletext) DB 000H,008H,00CH,0FEH,00CH,008H,000H,000H ; &90 right arrow (teletext) DB 030H,030H,018H,000H,000H,000H,000H,000H ; &91 left single quotation mark DB 018H,018H,030H,000H,000H,000H,000H,000H ; &92 right single quotation mark DB 06CH,06CH,036H,000H,000H,000H,000H,000H ; &93 left double quotation mark DB 036H,036H,06CH,000H,000H,000H,000H,000H ; &94 right double quotation mark DB 000H,000H,018H,03CH,03CH,018H,000H,000H ; &95 bullet DB 000H,000H,000H,0FEH,000H,000H,000H,000H ; &96 en dash DB 000H,000H,000H,0FFH,000H,000H,000H,000H ; &97 em dash DB 036H,06CH,000H,000H,000H,000H,000H,000H ; &98 small tilde DB 0EAH,04EH,04AH,04AH,000H,000H,000H,000H ; &99 trade mark sign DB 06CH,038H,07CH,0C0H,078H,00CH,0F8H,000H ; &9A small S caron DB 000H,030H,018H,00CH,018H,030H,000H,000H ; &9B right angle quotation mark DB 000H,000H,07EH,0DBH,0DFH,0D8H,07FH,000H ; &9C small OE ligature DB 0CCH,0CCH,0CCH,0CCH,0CCH,0CCH,0CCH,000H ; &9D double line (teletext) DB 06CH,038H,07CH,018H,030H,060H,07CH,000H ; &9E small Z caron DB 0CCH,000H,0CCH,0CCH,078H,030H,030H,000H ; &9F capital Y diaeresis DB 000H,000H,000H,000H,000H,000H,000H,000H ;" " DB 018H,000H,018H,018H,018H,018H,018H,000H ;" " DB 000H,018H,07EH,0D8H,0D8H,07EH,018H,000H ;" " DB 038H,06CH,060H,0F0H,060H,066H,0FCH,000H ;" " DB 066H,03CH,066H,03CH,066H,000H,000H,000H ;" " DB 0C3H,066H,03CH,018H,03CH,018H,018H,000H ;" " DB 018H,018H,018H,000H,018H,018H,018H,000H ;" " DB 03CH,060H,03CH,066H,066H,03CH,006H,03CH ;" " DB 066H,000H,000H,000H,000H,000H,000H,000H ;" " DB 07EH,081H,09DH,0B1H,0B1H,09DH,081H,07EH ;" " DB 03CH,06CH,06CH,03EH,000H,07EH,000H,000H ;" " DB 000H,033H,066H,0CCH,066H,033H,000H,000H ;" " DB 000H,07EH,006H,006H,000H,000H,000H,000H ;" " DB 000H,000H,000H,03CH,000H,000H,000H,000H ;" " DB 07EH,081H,0B9H,0A5H,0B9H,0A5H,081H,07EH ;" " DB 03CH,000H,000H,000H,000H,000H,000H,000H ;" " DB 03CH,066H,03CH,000H,000H,000H,000H,000H ;" " DB 018H,018H,07EH,018H,018H,000H,07EH,000H ;" " DB 070H,018H,030H,060H,078H,000H,000H,000H ;" " DB 078H,00CH,018H,00CH,078H,000H,000H,000H ;" " DB 00CH,018H,030H,000H,000H,000H,000H,000H ;" " DB 000H,000H,066H,066H,066H,07CH,060H,0C0H ;" " DB 03EH,07AH,07AH,03AH,01AH,01AH,01AH,000H ;" " DB 000H,000H,000H,018H,000H,000H,000H,000H ;" " DB 000H,000H,000H,000H,000H,008H,018H,000H ;" " DB 030H,070H,030H,030H,030H,000H,000H,000H ;" " DB 038H,06CH,06CH,038H,000H,07CH,000H,000H ;" " DB 000H,0CCH,066H,033H,066H,0CCH,000H,000H ;" " DB 043H,0C6H,04CH,05AH,036H,06AH,0CFH,002H ;" " DB 040H,0C6H,04CH,05EH,033H,066H,0CCH,00FH ;" " DB 0C0H,023H,066H,02DH,0DBH,035H,067H,001H ;" " DB 018H,000H,018H,030H,060H,066H,03CH,000H ;" " DB 070H,000H,03CH,066H,07EH,066H,066H,000H ;" " DB 00EH,000H,03CH,066H,07EH,066H,066H,000H ;" " DB 018H,066H,000H,03CH,066H,07EH,066H,000H ;" " DB 076H,0DCH,000H,03CH,066H,07EH,066H,000H ;" " DB 066H,000H,03CH,066H,07EH,066H,066H,000H ;" " DB 018H,018H,000H,03CH,066H,07EH,066H,000H ;" " DB 03FH,06CH,0CCH,0FEH,0CCH,0CCH,0CFH,000H ;" " DB 03CH,066H,060H,060H,060H,066H,03CH,018H ;" " DB 070H,000H,07EH,060H,07CH,060H,07EH,000H ;" " DB 00EH,000H,07EH,060H,07CH,060H,07EH,000H ;" " DB 018H,066H,000H,0FEH,0F0H,0C0H,0FEH,000H ;" " DB 066H,000H,07EH,060H,07CH,060H,07EH,000H ;" " DB 070H,000H,07EH,018H,018H,018H,07EH,000H ;" " DB 00EH,000H,07EH,018H,018H,018H,07EH,000H ;" " DB 018H,066H,000H,07EH,018H,018H,07EH,000H ;" " DB 066H,000H,07EH,018H,018H,018H,07EH,000H ;" " DB 078H,06CH,066H,0F6H,066H,06CH,078H,000H ;" " DB 076H,0DCH,000H,0C6H,0F6H,0DEH,0C6H,000H ;" " DB 070H,000H,07CH,0C6H,0C6H,0C6H,07CH,000H ;" " DB 00EH,000H,07CH,0C6H,0C6H,0C6H,07CH,000H ;" " DB 018H,066H,000H,07CH,0C6H,0C6H,07CH,000H ;" " DB 076H,0DCH,000H,07CH,0C6H,0C6H,07CH,000H ;" " DB 066H,000H,07CH,0C6H,0C6H,0C6H,07CH,000H ;" " DB 000H,0C6H,06CH,038H,06CH,0C6H,000H,000H ;" " DB 03EH,066H,06EH,07EH,076H,066H,07CH,000H ;" " DB 070H,000H,0C6H,0C6H,0C6H,0C6H,07CH,000H ;" " DB 00EH,000H,0C6H,0C6H,0C6H,0C6H,07CH,000H ;" " DB 018H,066H,000H,0C6H,0C6H,0C6H,07CH,000H ;" " DB 066H,000H,0C6H,0C6H,0C6H,0C6H,07CH,000H ;" " DB 00EH,000H,066H,066H,03CH,018H,018H,000H ;" " DB 0C0H,0C0H,0FCH,0C6H,0FCH,0C0H,0C0H,000H ;" " DB 03CH,066H,066H,06CH,066H,066H,06CH,000H ;" " DB 070H,000H,03CH,006H,03EH,066H,03EH,000H ;" " DB 00EH,000H,03CH,006H,03EH,066H,03EH,000H ;" " DB 018H,066H,000H,03EH,066H,0C6H,07EH,000H ;" " DB 076H,0DCH,000H,03EH,066H,0C6H,07EH,000H ;" " DB 066H,000H,03CH,006H,03EH,066H,03EH,000H ;" " DB 018H,018H,000H,03EH,066H,0C6H,07EH,000H ;" " DB 000H,000H,07EH,01BH,07FH,0D8H,077H,000H ;" " DB 000H,000H,03CH,060H,060H,060H,03CH,018H ;" " DB 070H,000H,03CH,066H,07EH,060H,03CH,000H ;" " DB 00EH,000H,03CH,066H,07EH,060H,03CH,000H ;" " DB 018H,066H,000H,03CH,07EH,060H,03CH,000H ;" " DB 066H,000H,03CH,066H,07EH,060H,03CH,000H ;" " DB 070H,000H,038H,018H,018H,018H,03CH,000H ;" " DB 00EH,000H,038H,018H,018H,018H,03CH,000H ;" " DB 018H,066H,000H,038H,018H,018H,03CH,000H ;" " DB 066H,000H,038H,018H,018H,018H,03CH,000H ;" " DB 00CH,03EH,00CH,07CH,0CCH,0CCH,078H,000H ;" " DB 076H,0DCH,000H,07CH,066H,066H,066H,000H ;" " DB 070H,000H,03CH,066H,066H,066H,03CH,000H ;" " DB 00EH,000H,03CH,066H,066H,066H,03CH,000H ;" " DB 018H,066H,000H,03CH,066H,066H,03CH,000H ;" " DB 076H,0DCH,000H,03CH,066H,066H,03CH,000H ;" " DB 066H,000H,03CH,066H,066H,066H,03CH,000H ;" " DB 018H,018H,000H,07EH,000H,018H,018H,000H ;" " DB 000H,002H,07CH,0CEH,0D6H,0E6H,07CH,080H ;" " DB 070H,000H,066H,066H,066H,066H,03EH,000H ;" " DB 00EH,000H,066H,066H,066H,066H,03EH,000H ;" " DB 018H,066H,000H,066H,066H,066H,03EH,000H ;" " DB 066H,000H,066H,066H,066H,066H,03EH,000H ;" " DB 00EH,000H,066H,066H,066H,03EH,006H,03CH ;" " DB 060H,060H,07CH,066H,066H,07CH,060H,060H ;" " DB 066H,000H,066H,066H,066H,03EH,006H,03CH ;" " ; ttxtfont: DW 00000H,00011H,00011H,00019H,00015H,00013H,00011H,00011H,08800H,08800H,08800H,08800H,08800H,08800H,07000H,00000H,00000H,00000H,00000H,00000H ; NU DW 00000H,0000EH,00011H,00011H,0001FH,00011H,00011H,00011H,0F000H,08800H,08800H,0F000H,08800H,08800H,08800H,00000H,00000H,00000H,00000H,00000H ; AR DW 00000H,0000EH,00011H,00011H,0001FH,00011H,00011H,00011H,07000H,08800H,08000H,09800H,08800H,08800H,07000H,00000H,00000H,00000H,00000H,00000H ; AG DW 00000H,0000EH,00011H,00011H,0001FH,00011H,00011H,00011H,08800H,08800H,05000H,02000H,02000H,02000H,02000H,00000H,00000H,00000H,00000H,00000H ; AY DW 00000H,0000EH,00011H,00011H,0001FH,00011H,00011H,00011H,0F000H,08800H,08800H,0F000H,08800H,08800H,0F000H,00000H,00000H,00000H,00000H,00000H ; AB DW 00000H,0000EH,00011H,00011H,0001FH,00011H,00011H,00011H,08800H,0D800H,0A800H,0A800H,08800H,08800H,08800H,00000H,00000H,00000H,00000H,00000H ; AM DW 00000H,0000EH,00011H,00011H,0001FH,00011H,00011H,00011H,07000H,08800H,08000H,08000H,08000H,08800H,07000H,00000H,00000H,00000H,00000H,00000H ; AC DW 00000H,0000EH,00011H,00011H,0001FH,00011H,00011H,00011H,08800H,08800H,08800H,0A800H,0A800H,0D800H,08800H,00000H,00000H,00000H,00000H,00000H ; AW DW 00000H,0001FH,00010H,00010H,0001EH,00010H,00010H,00010H,08000H,08000H,08000H,08000H,08000H,08000H,0F800H,00000H,00000H,00000H,00000H,00000H ; FL DW 00000H,0000EH,00011H,00010H,0000EH,00001H,00011H,0000EH,0F800H,02000H,02000H,02000H,02000H,02000H,02000H,00000H,00000H,00000H,00000H,00000H ; ST DW 00000H,0001FH,00010H,00010H,0001EH,00010H,00010H,0001FH,0F000H,08800H,08800H,0F000H,08800H,08800H,0F000H,00000H,00000H,00000H,00000H,00000H ; EB DW 00000H,0000EH,00011H,00010H,0000EH,00001H,00011H,0000EH,0F000H,08800H,08800H,0F000H,08800H,08800H,0F000H,00000H,00000H,00000H,00000H,00000H ; SB DW 00000H,00011H,00011H,00019H,00015H,00013H,00011H,00011H,08800H,08800H,08800H,0F800H,08800H,08800H,08800H,00000H,00000H,00000H,00000H,00000H ; NH DW 00000H,0001CH,00012H,00011H,00011H,00011H,00012H,0001CH,08800H,08800H,08800H,0F800H,08800H,08800H,08800H,00000H,00000H,00000H,00000H,00000H ; DH DW 00000H,0000EH,00011H,00010H,0000EH,00001H,00011H,0000EH,07000H,08800H,08800H,08800H,08800H,08800H,07000H,00000H,00000H,00000H,00000H,00000H ; SO DW 00000H,0000EH,00011H,00010H,0000EH,00001H,00011H,0000EH,07000H,02000H,02000H,02000H,02000H,02000H,07000H,00000H,00000H,00000H,00000H,00000H ; SI DW 00000H,0001CH,00012H,00011H,00011H,00011H,00012H,0001CH,08000H,08000H,08000H,08000H,08000H,08000H,0F800H,00000H,00000H,00000H,00000H,00000H ; DL DW 00000H,0000EH,00011H,00010H,00013H,00011H,00011H,0000EH,0F000H,08800H,08800H,0F000H,08800H,08800H,08800H,00000H,00000H,00000H,00000H,00000H ; GR DW 00000H,0000EH,00011H,00010H,00013H,00011H,00011H,0000EH,07000H,08800H,08000H,09800H,08800H,08800H,07000H,00000H,00000H,00000H,00000H,00000H ; GG DW 00000H,0000EH,00011H,00010H,00013H,00011H,00011H,0000EH,08800H,08800H,05000H,02000H,02000H,02000H,02000H,00000H,00000H,00000H,00000H,00000H ; GY DW 00000H,0000EH,00011H,00010H,00013H,00011H,00011H,0000EH,0F000H,08800H,08800H,0F000H,08800H,08800H,0F000H,00000H,00000H,00000H,00000H,00000H ; GB DW 00000H,0000EH,00011H,00010H,00013H,00011H,00011H,0000EH,08800H,0D800H,0A800H,0A800H,08800H,08800H,08800H,00000H,00000H,00000H,00000H,00000H ; GM DW 00000H,0000EH,00011H,00010H,00013H,00011H,00011H,0000EH,07000H,08800H,08000H,08000H,08000H,08800H,07000H,00000H,00000H,00000H,00000H,00000H ; GC DW 00000H,0000EH,00011H,00010H,00013H,00011H,00011H,0000EH,08800H,08800H,08800H,0A800H,0A800H,0D800H,08800H,00000H,00000H,00000H,00000H,00000H ; GW DW 00000H,0000EH,00011H,00010H,00010H,00010H,00011H,0000EH,0E000H,09000H,08800H,08800H,08800H,09000H,0E000H,00000H,00000H,00000H,00000H,00000H ; CD DW 00000H,0000EH,00011H,00010H,00010H,00010H,00011H,0000EH,07000H,08800H,08000H,09800H,08800H,08800H,07000H,00000H,00000H,00000H,00000H,00000H ; CG DW 00000H,0000EH,00011H,00010H,0000EH,00001H,00011H,0000EH,07000H,08800H,08000H,09800H,08800H,08800H,07000H,00000H,00000H,00000H,00000H,00000H ; SG DW 00000H,0001FH,00010H,00010H,0001EH,00010H,00010H,0001FH,07000H,08800H,08000H,07000H,00800H,08800H,07000H,00000H,00000H,00000H,00000H,00000H ; ES DW 00000H,0001EH,00011H,00011H,0001EH,00011H,00011H,0001EH,0F000H,08800H,08800H,0F000H,08800H,08800H,0F000H,00000H,00000H,00000H,00000H,00000H ; BB DW 00000H,00011H,00011H,00019H,00015H,00013H,00011H,00011H,0F000H,08800H,08800H,0F000H,08800H,08800H,0F000H,00000H,00000H,00000H,00000H,00000H ; NB DW 00000H,00011H,00011H,00011H,0001FH,00011H,00011H,00011H,07000H,08800H,08000H,09800H,08800H,08800H,07000H,00000H,00000H,00000H,00000H,00000H ; HG DW 00000H,0001EH,00011H,00011H,0001EH,00011H,00011H,00011H,07000H,08800H,08000H,09800H,08800H,08800H,07000H,00000H,00000H,00000H,00000H,00000H ; RG DW 00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,00000H,00000H,08001H,08001H,00000H,00000H,00000H,00000H,00000H ; "!" DW 00000H,0700EH,0700EH,0700EH,0700EH,0700EH,0700EH,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; """ DW 00000H,0700EH,0700EH,0700EH,0700EH,0FC3FH,0FC3FH,0700EH,0700EH,0FC3FH,0FC3FH,0700EH,0700EH,0700EH,0700EH,00000H,00000H,00000H,00000H,00000H ; "#" DW 00000H,0F00FH,0F81FH,09C39H,08C31H,08031H,08039H,0F01FH,0F80FH,09C01H,08C01H,08C31H,09C39H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; "$" DW 00000H,0003CH,00C3CH,01C3CH,0383CH,07000H,0E000H,0C001H,08003H,00007H,0000EH,03C1CH,03C38H,03C30H,03C00H,00000H,00000H,00000H,00000H,00000H ; "%" DW 00000H,0000EH,0001FH,0803BH,08031H,0803BH,0001FH,0000EH,0001FH,08C3BH,0DC31H,0F830H,0F838H,0DC1FH,08C0FH,00000H,00000H,00000H,00000H,00000H ; "&" DW 00000H,08001H,08001H,08001H,08001H,08001H,08001H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; "'" DW 00000H,06000H,0E000H,0C001H,08003H,00007H,00006H,00006H,00006H,00006H,00007H,08003H,0C001H,0E000H,06000H,00000H,00000H,00000H,00000H,00000H ; "(" DW 00000H,00006H,00007H,08003H,0C001H,0E000H,06000H,06000H,06000H,06000H,0E000H,0C001H,08003H,00007H,00006H,00000H,00000H,00000H,00000H,00000H ; ")" DW 00000H,08001H,08001H,08C31H,09C39H,0F81FH,0F00FH,08001H,08001H,0F00FH,0F81FH,09C39H,08C31H,08001H,08001H,00000H,00000H,00000H,00000H,00000H ; "*" DW 00000H,00000H,00000H,08001H,08001H,08001H,08001H,0F81FH,0F81FH,08001H,08001H,08001H,08001H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; "+" DW 00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,08001H,08001H,08001H,08003H,00007H,00006H,00000H,00000H,00000H ; "," DW 00000H,00000H,00000H,00000H,00000H,00000H,00000H,0F00FH,0F00FH,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; "-" DW 00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,08001H,08001H,00000H,00000H,00000H,00000H,00000H ; "." DW 00000H,00000H,00C00H,01C00H,03800H,07000H,0E000H,0C001H,08003H,00007H,0000EH,0001CH,00038H,00030H,00000H,00000H,00000H,00000H,00000H,00000H ; "/" DW 00000H,0C003H,0E007H,0700EH,0381CH,01C38H,00C30H,00C30H,00C30H,00C30H,01C38H,0381CH,0700EH,0E007H,0C003H,00000H,00000H,00000H,00000H,00000H ; "0" DW 00000H,08001H,08001H,0800FH,0800FH,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,0F00FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; "1" DW 00000H,0F00FH,0F81FH,01C38H,00C30H,00C00H,01C00H,0F803H,0F007H,0000EH,0001CH,00038H,00030H,0FC3FH,0FC3FH,00000H,00000H,00000H,00000H,00000H ; "2" DW 00000H,0FC3FH,0FC3FH,01C00H,03800H,07000H,0E000H,0F801H,0FC01H,00C00H,00C00H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; "3" DW 00000H,07000H,0F000H,0F001H,0B003H,03007H,0300EH,0301CH,03038H,0FC3FH,0FC3FH,03000H,03000H,03000H,03000H,00000H,00000H,00000H,00000H,00000H ; "4" DW 00000H,0FC3FH,0FC3FH,00030H,00030H,0F03FH,0F83FH,01C00H,00C00H,00C00H,00C00H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; "5" DW 00000H,0F001H,0F007H,0000FH,0001CH,00038H,00030H,0F03FH,0F83FH,01C30H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; "6" DW 00000H,0FC3FH,0FC3FH,00C00H,01C00H,03800H,07000H,0E000H,0C001H,08003H,00007H,00006H,00006H,00006H,00006H,00000H,00000H,00000H,00000H,00000H ; "7" DW 00000H,0F00FH,0F81FH,01C38H,00C30H,00C30H,01C38H,0F81FH,0F81FH,01C38H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; "8" DW 00000H,0F00FH,0F81FH,01C38H,00C30H,00C30H,00C38H,0FC1FH,0FC0FH,00C00H,01C00H,03800H,0F000H,0E00FH,0800FH,00000H,00000H,00000H,00000H,00000H ; "9" DW 00000H,00000H,00000H,00000H,00000H,08001H,08001H,00000H,00000H,00000H,00000H,00000H,00000H,08001H,08001H,00000H,00000H,00000H,00000H,00000H ; ":" DW 00000H,00000H,00000H,00000H,00000H,08001H,08001H,00000H,00000H,00000H,00000H,08001H,08001H,08001H,08003H,00007H,00006H,00000H,00000H,00000H ; ";" DW 00000H,06000H,0E000H,0C001H,08003H,00007H,0000EH,0001CH,0001CH,0000EH,00007H,08003H,0C001H,0E000H,06000H,00000H,00000H,00000H,00000H,00000H ; "<" DW 00000H,00000H,00000H,00000H,00000H,0FC3FH,0FC3FH,00000H,00000H,0FC3FH,0FC3FH,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; "=" DW 00000H,00006H,00007H,08003H,0C001H,0E000H,07000H,03800H,03800H,07000H,0E000H,0C001H,08003H,00007H,00006H,00000H,00000H,00000H,00000H,00000H ; ">" DW 00000H,0E00FH,0F01FH,03838H,01830H,03800H,07000H,0E000H,0C001H,08001H,08001H,00000H,00000H,08001H,08001H,00000H,00000H,00000H,00000H,00000H ; "?" DW 00000H,0F00FH,0F81FH,01C38H,00C30H,0FC31H,0FC31H,08C31H,08C31H,0FC31H,0FC31H,00030H,00038H,0F01FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; "@" DW 00000H,08001H,0C003H,0E007H,0700EH,0381CH,01C38H,00C30H,00C30H,0FC3FH,0FC3FH,00C30H,00C30H,00C30H,00C30H,00000H,00000H,00000H,00000H,00000H ; "A" DW 00000H,0F03FH,0F83FH,01C30H,00C30H,00C30H,01C30H,0F83FH,0F83FH,01C30H,00C30H,00C30H,01C30H,0F83FH,0F03FH,00000H,00000H,00000H,00000H,00000H ; "B" DW 00000H,0F00FH,0F81FH,01C38H,00C30H,00030H,00030H,00030H,00030H,00030H,00030H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; "C" DW 00000H,0F03FH,0F83FH,01C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,01C30H,0F83FH,0F03FH,00000H,00000H,00000H,00000H,00000H ; "D" DW 00000H,0FC3FH,0FC3FH,00030H,00030H,00030H,00030H,0F03FH,0F03FH,00030H,00030H,00030H,00030H,0FC3FH,0FC3FH,00000H,00000H,00000H,00000H,00000H ; "E" DW 00000H,0FC3FH,0FC3FH,00030H,00030H,00030H,00030H,0F03FH,0F03FH,00030H,00030H,00030H,00030H,00030H,00030H,00000H,00000H,00000H,00000H,00000H ; "F" DW 00000H,0F00FH,0F81FH,01C38H,00C30H,00030H,00030H,00030H,00030H,03C30H,03C30H,00C30H,00C38H,0FC1FH,0FC0FH,00000H,00000H,00000H,00000H,00000H ; "G" DW 00000H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,0FC3FH,0FC3FH,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00000H,00000H,00000H,00000H,00000H ; "H" DW 00000H,0F00FH,0F00FH,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,0F00FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; "I" DW 00000H,00C00H,00C00H,00C00H,00C00H,00C00H,00C00H,00C00H,00C00H,00C00H,00C00H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; "J" DW 00000H,01830H,03830H,07030H,0E030H,0C031H,08033H,0003FH,0003FH,08033H,0C031H,0E030H,07030H,03830H,01830H,00000H,00000H,00000H,00000H,00000H ; "K" DW 00000H,00030H,00030H,00030H,00030H,00030H,00030H,00030H,00030H,00030H,00030H,00030H,00030H,0FC3FH,0FC3FH,00000H,00000H,00000H,00000H,00000H ; "L" DW 00000H,00C30H,00C30H,01C38H,03C3CH,07C3EH,0EC37H,0CC33H,08C31H,08C31H,00C30H,00C30H,00C30H,00C30H,00C30H,00000H,00000H,00000H,00000H,00000H ; "M" DW 00000H,00C30H,00C30H,00C38H,00C3CH,00C3EH,00C37H,08C33H,0CC31H,0EC30H,07C30H,03C30H,01C30H,00C30H,00C30H,00000H,00000H,00000H,00000H,00000H ; "N" DW 00000H,0F00FH,0F81FH,01C38H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; "O" DW 00000H,0F03FH,0F83FH,01C30H,00C30H,00C30H,01C30H,0F83FH,0F03FH,00030H,00030H,00030H,00030H,00030H,00030H,00000H,00000H,00000H,00000H,00000H ; "P" DW 00000H,0F00FH,0F81FH,01C38H,00C30H,00C30H,00C30H,00C30H,00C30H,0CC30H,0EC30H,07830H,03838H,0FC1FH,0CC0FH,00000H,00000H,00000H,00000H,00000H ; "Q" DW 00000H,0F03FH,0F83FH,01C30H,00C30H,00C30H,01C30H,0F83FH,0F03FH,0C031H,0E030H,07030H,03830H,01C30H,00C30H,00000H,00000H,00000H,00000H,00000H ; "R" DW 00000H,0F00FH,0F81FH,01C38H,00C30H,00030H,00038H,0F01FH,0F80FH,01C00H,00C00H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; "S" DW 00000H,0FC3FH,0FC3FH,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,00000H,00000H,00000H,00000H,00000H ; "T" DW 00000H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; "U" DW 00000H,00C30H,00C30H,00C30H,00C30H,01C38H,01818H,0381CH,0300CH,0700EH,0E007H,0C003H,0C003H,08001H,08001H,00000H,00000H,00000H,00000H,00000H ; "V" DW 00000H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,08C31H,08C31H,08C31H,08C31H,08C31H,0FC3FH,0F81FH,0700EH,00000H,00000H,00000H,00000H,00000H ; "W" DW 00000H,00C30H,00C30H,01C38H,0381CH,0700EH,0E007H,0C003H,0C003H,0E007H,0700EH,0381CH,01C38H,00C30H,00C30H,00000H,00000H,00000H,00000H,00000H ; "X" DW 00000H,00C30H,00C30H,01C38H,0381CH,0700EH,0E007H,0C003H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,00000H,00000H,00000H,00000H,00000H ; "Y" DW 00000H,0FC3FH,0FC3FH,01C00H,03800H,07000H,0E000H,0C001H,08003H,00007H,0000EH,0001CH,00038H,0FC3FH,0FC3FH,00000H,00000H,00000H,00000H,00000H ; "Z" DW 00000H,0E007H,0E007H,00006H,00006H,00006H,00006H,00006H,00006H,00006H,00006H,00006H,00006H,0E007H,0E007H,00000H,00000H,00000H,00000H,00000H ; "[" DW 00000H,00000H,00030H,00038H,0001CH,0000EH,00007H,08003H,0C001H,0E000H,07000H,03800H,01C00H,00C00H,00000H,00000H,00000H,00000H,00000H,00000H ; "\" DW 00000H,0E007H,0E007H,06000H,06000H,06000H,06000H,06000H,06000H,06000H,06000H,06000H,06000H,0E007H,0E007H,00000H,00000H,00000H,00000H,00000H ; "]" DW 00000H,08001H,0C003H,0E007H,0700EH,0381CH,01818H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; "^" DW 00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,0FFFFH,0FFFFH,00000H,00000H ; "_" DW 00000H,00006H,00007H,08003H,0C001H,0E000H,06000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; "`" DW 00000H,00000H,00000H,00000H,00000H,0F00FH,0F80FH,01C00H,00C00H,0FC1FH,0FC3FH,00C30H,00C30H,0FC3FH,0FC1FH,00000H,00000H,00000H,00000H,00000H ; "a" DW 00000H,00030H,00030H,00030H,00030H,0F03FH,0F83FH,01C30H,00C30H,00C30H,00C30H,00C30H,01C30H,0F83FH,0F03FH,00000H,00000H,00000H,00000H,00000H ; "b" DW 00000H,00000H,00000H,00000H,00000H,0FC0FH,0FC1FH,00038H,00030H,00030H,00030H,00030H,00038H,0FC1FH,0FC0FH,00000H,00000H,00000H,00000H,00000H ; "c" DW 00000H,00C00H,00C00H,00C00H,00C00H,0FC0FH,0FC1FH,00C38H,00C30H,00C30H,00C30H,00C30H,00C38H,0FC1FH,0FC0FH,00000H,00000H,00000H,00000H,00000H ; "d" DW 00000H,00000H,00000H,00000H,00000H,0F00FH,0F81FH,01C38H,00C30H,0FC3FH,0FC3FH,00030H,00038H,0F01FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; "e" DW 00000H,03000H,0F000H,0C001H,08001H,08001H,08001H,0F00FH,0F00FH,08001H,08001H,08001H,08001H,08001H,08001H,00000H,00000H,00000H,00000H,00000H ; "f" DW 00000H,00000H,00000H,00000H,00000H,0FC0FH,0FC1FH,00C38H,00C30H,00C30H,00C30H,00C30H,00C38H,0FC1FH,0FC0FH,00C00H,01C00H,0F80FH,0F00FH,00000H ; "g" DW 00000H,00030H,00030H,00030H,00030H,0F03FH,0F83FH,01C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00000H,00000H,00000H,00000H,00000H ; "h" DW 00000H,08001H,08001H,00000H,00000H,0800FH,0800FH,08001H,08001H,08001H,08001H,08001H,08001H,0F00FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; "i" DW 00000H,08001H,08001H,00000H,00000H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08003H,0000FH,0000CH,00000H ; "j" DW 00000H,0000CH,0000CH,0000CH,0180CH,0380CH,0700CH,0E00CH,0C00FH,0800FH,0C00DH,0E00CH,0700CH,0380CH,0180CH,00000H,00000H,00000H,00000H,00000H ; "k" DW 00000H,0800FH,0800FH,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,0F00FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; "l" DW 00000H,00000H,00000H,00000H,00000H,0303EH,0F83FH,0FC33H,08C31H,08C31H,08C31H,08C31H,08C31H,08C31H,08C31H,00000H,00000H,00000H,00000H,00000H ; "m" DW 00000H,00000H,00000H,00000H,00000H,0F03FH,0F83FH,01C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00000H,00000H,00000H,00000H,00000H ; "n" DW 00000H,00000H,00000H,00000H,00000H,0F00FH,0F81FH,01C38H,00C30H,00C30H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; "o" DW 00000H,00000H,00000H,00000H,00000H,0F03FH,0F83FH,01C30H,00C30H,00C30H,00C30H,00C30H,01C30H,0F83FH,0F03FH,00030H,00030H,00030H,00030H,00000H ; "p" DW 00000H,00000H,00000H,00000H,00000H,0FC0FH,0FC1FH,00C38H,00C30H,00C30H,00C30H,00C30H,00C38H,0FC1FH,0FC0FH,00C00H,00C00H,00C00H,00C00H,00000H ; "q" DW 00000H,00000H,00000H,00000H,00000H,0F819H,0F81BH,0001FH,0001EH,00018H,00018H,00018H,00018H,00018H,00018H,00000H,00000H,00000H,00000H,00000H ; "r" DW 00000H,00000H,00000H,00000H,00000H,0FC0FH,0FC1FH,00030H,00030H,0F01FH,0F80FH,00C00H,00C00H,0F83FH,0F03FH,00000H,00000H,00000H,00000H,00000H ; "s" DW 00000H,08001H,08001H,08001H,08001H,0F00FH,0F00FH,08001H,08001H,08001H,08001H,08001H,0C001H,0F000H,03000H,00000H,00000H,00000H,00000H,00000H ; "t" DW 00000H,00000H,00000H,00000H,00000H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C38H,0FC1FH,0FC0FH,00000H,00000H,00000H,00000H,00000H ; "u" DW 00000H,00000H,00000H,00000H,00000H,00C30H,00C30H,00C30H,01C38H,01818H,0381CH,0700EH,0E007H,0C003H,08001H,00000H,00000H,00000H,00000H,00000H ; "v" DW 00000H,00000H,00000H,00000H,00000H,00C30H,00C30H,00C30H,00C30H,08C31H,08C31H,08C31H,0FC3FH,0F81FH,0700EH,00000H,00000H,00000H,00000H,00000H ; "w" DW 00000H,00000H,00000H,00000H,00000H,00C30H,01C38H,0781EH,0F00FH,0C003H,0C003H,0F00FH,0781EH,01C38H,00C30H,00000H,00000H,00000H,00000H,00000H ; "x" DW 00000H,00000H,00000H,00000H,00000H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C38H,0FC1FH,0FC0FH,00C00H,01C00H,0F80FH,0F00FH,00000H ; "y" DW 00000H,00000H,00000H,00000H,00000H,0FC3FH,0FC3FH,03800H,07000H,0E001H,08007H,0000EH,0001CH,0FC3FH,0FC3FH,00000H,00000H,00000H,00000H,00000H ; "z" DW 00000H,0F000H,0F001H,08001H,08001H,08003H,00003H,0000FH,0000FH,00003H,08003H,08001H,08001H,0F000H,0F000H,00000H,00000H,00000H,00000H,00000H ; "{" DW 00000H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,00000H,00000H,00000H,00000H,00000H ; "|" DW 00000H,0000FH,0800FH,08001H,08001H,0C001H,0C000H,0F000H,0F000H,0C000H,0C001H,08001H,08001H,0000FH,0000FH,00000H,00000H,00000H,00000H,00000H ; "}" DW 00000H,0000EH,00C1FH,0DC3BH,0F831H,07000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; "~" DW 00000H,08001H,0C003H,0C003H,06006H,06006H,0300CH,0300CH,01818H,01818H,00C30H,00C30H,00C30H,0FC3FH,0FC3FH,00000H,00000H,00000H,00000H,00000H ; &7F DEL DW 00000H,0F003H,0F807H,01C0EH,00C0CH,0C03FH,0C03FH,0000CH,0000CH,0803FH,0803FH,00C0CH,01C0EH,0F807H,0F003H,00000H,00000H,00000H,00000H,00000H ; &80 euro symbol DW 00000H,0FC3FH,0FC3FH,0FC3FH,0FC3FH,0FC3FH,0FC3FH,0FC3FH,0FC3FH,0FC3FH,0FC3FH,0FC3FH,0FC3FH,0FC3FH,0FC3FH,00000H,00000H,00000H,00000H,00000H ; &81 block (teletext) DW 00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,08003H,08003H,08001H,08003H,00007H,0000EH,00000H,00000H,00000H ; &82 single low quotation mark DW 00000H,07000H,0F000H,0C001H,08001H,08001H,08001H,0F00FH,0F00FH,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08003H,0000FH,0000EH,00000H ; &83 small letter f with hook DW 00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,01C0EH,01C0EH,00C06H,01C0EH,0381CH,07038H,00000H,00000H,00000H ; &84 double low quotation mark DW 00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,09819H,09819H,00000H,00000H,00000H,00000H,00000H ; &85 horizontal ellipsis DW 00000H,08001H,08001H,08001H,0F00FH,0F00FH,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,00000H,00000H,00000H,00000H,00000H ; &86 dagger DW 00000H,08001H,08001H,08001H,0F00FH,0F00FH,08001H,08001H,08001H,08001H,0F00FH,0F00FH,08001H,08001H,08001H,00000H,00000H,00000H,00000H,00000H ; &87 double dagger DW 08001H,0C003H,06006H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; &88 circumflex accent DW 00000H,03038H,0706CH,0E06CH,0C039H,08003H,00007H,0000EH,0001CH,00038H,00070H,01C67H,0B60DH,0B60DH,01C07H,00000H,00000H,00000H,00000H,00000H ; &89 per mille DW 06006H,0E007H,0C003H,0F00FH,0F81FH,01C38H,00C30H,00038H,0F01FH,0F80FH,01C00H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; &8A capital S caron DW 00000H,00000H,00000H,08001H,08003H,00007H,0000EH,0000CH,0000EH,00007H,08003H,08001H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; &8B left angle quotation mark DW 00000H,0FC0FH,0FC1FH,08039H,08031H,08031H,08031H,0F831H,0F831H,08031H,08031H,08031H,08039H,0FC1FH,0FC0FH,00000H,00000H,00000H,00000H,00000H ; &8C capital OE ligature DW 00000H,00000H,08001H,0C003H,0E007H,0F00FH,0B81DH,09C39H,08C31H,08001H,08001H,08001H,08001H,08001H,00000H,00000H,00000H,00000H,00000H,00000H ; &8D up arrow (teletext) DW 06006H,0E007H,0C003H,0FC3FH,0FC3FH,03800H,07000H,0E000H,0C001H,08003H,00007H,0000EH,0001CH,0FC3FH,0FC3FH,00000H,00000H,00000H,00000H,00000H ; &8E capital Z caron DW 00000H,00000H,08001H,08003H,00007H,0000EH,0001CH,0FC3FH,0FC3FH,0001CH,0000EH,00007H,08003H,08001H,00000H,00000H,00000H,00000H,00000H,00000H ; &8F left arrow (teletext) DW 00000H,00000H,08001H,0C001H,0E000H,07000H,03800H,0FC3FH,0FC3FH,03800H,07000H,0E000H,0C001H,08001H,00000H,00000H,00000H,00000H,00000H,00000H ; &90 right arrow (teletext) DW 00000H,07000H,0E000H,0C001H,08001H,0C001H,0C001H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; &91 left single quotation mark DW 00000H,08003H,08003H,08001H,08003H,00007H,0000EH,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; &92 right single quotation mark DW 00000H,01C0EH,0381CH,07038H,06030H,07038H,07038H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; &93 left double quotation mark DW 00000H,01C0EH,01C0EH,00C06H,01C0EH,0381CH,07038H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; &94 right double quotation mark DW 00000H,00000H,00000H,00000H,00000H,08001H,0C003H,0E007H,0E007H,0C003H,08001H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; &95 bullet DW 00000H,00000H,00000H,00000H,00000H,00000H,00000H,0F81FH,0F81FH,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; &96 en dash DW 00000H,00000H,00000H,00000H,00000H,00000H,00000H,0FE7FH,0FE7FH,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; &97 em dash DW 06007H,0C00DH,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; &98 small tilde DW 00000H,00000H,0C67EH,0C67EH,0EE18H,0FE18H,0D618H,0D618H,0C618H,0C618H,0C618H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; &99 trade mark sign DW 00000H,06006H,0E007H,0C003H,00000H,0FC0FH,0FC1FH,00038H,00038H,0F01FH,0F80FH,01C00H,01C00H,0F83FH,0F03FH,00000H,00000H,00000H,00000H,00000H ; &9A small S caron DW 00000H,00000H,00000H,08001H,0C001H,0E000H,07000H,03000H,07000H,0E000H,0C001H,08001H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; &9B right angle quotation mark DW 00000H,00000H,00000H,00000H,00000H,0780EH,0FC1FH,0CC3BH,08C31H,0FC31H,0FC31H,08031H,0C03BH,0FC1FH,07C0EH,00000H,00000H,00000H,00000H,00000H ; &9C small OE ligature DW 00000H,0381CH,0381CH,0381CH,0381CH,0381CH,0381CH,0381CH,0381CH,0381CH,0381CH,0381CH,0381CH,0381CH,0381CH,00000H,00000H,00000H,00000H,00000H ; &9D double line (teletext) DW 00000H,06006H,0E007H,0C003H,00000H,0FC3FH,0FC3FH,03800H,07000H,0E001H,08007H,0000EH,0001CH,0FC3FH,0FC3FH,00000H,00000H,00000H,00000H,00000H ; &9E small Z caron DW 0300CH,0300CH,0300CH,00000H,00C30H,01C38H,0381CH,0700EH,0E007H,0C003H,08001H,08001H,08001H,08001H,08001H,00000H,00000H,00000H,00000H,00000H ; &9F capital Y diaeresis DW 00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; &A0 non-break space DW 00000H,00000H,00000H,00000H,00000H,08001H,08001H,00000H,00000H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,08001H,00000H ; " " DW 00000H,00000H,00000H,08001H,08001H,0FC0FH,0FC1FH,08039H,08031H,08031H,08031H,08031H,08039H,0FC1FH,0FC0FH,08001H,08001H,00000H,00000H,00000H ; " " DW 00000H,0F003H,0F807H,01C0EH,00C0CH,0000CH,0000CH,0803FH,0803FH,0000CH,0000CH,0000CH,0000CH,0FC3FH,0FC3FH,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,00000H,00000H,00000H,00000H,00C30H,01C38H,0F81FH,0F00FH,0700EH,0700EH,0F00FH,0F81FH,01C38H,00C30H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,00C30H,01C38H,0381CH,0700EH,0FC3FH,0FC3FH,08001H,08001H,0FC3FH,0FC3FH,08001H,08001H,08001H,08001H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,08001H,08001H,08001H,08001H,08001H,08001H,00000H,00000H,08001H,08001H,08001H,08001H,08001H,08001H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,0F00FH,0F81FH,01C38H,00C30H,00030H,00038H,0F01FH,0F81FH,01C38H,01C38H,0F81FH,0F80FH,01C00H,00C00H,00C30H,01C38H,0F81FH,0F00FH,00000H ; " " DW 01818H,01818H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,0F00FH,0F81FH,01C38H,00C30H,0CC33H,0EC37H,06C36H,00C36H,00C36H,00C36H,06C36H,0EC37H,0CC33H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H ; " " DW 00000H,0F00FH,0F80FH,01C00H,00C00H,0FC0FH,0FC1FH,00C38H,00C38H,0FC1FH,0FC0FH,00000H,00000H,0FC3FH,0FC3FH,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,00000H,00000H,00000H,00000H,00000H,00000H,01C0EH,0381CH,07038H,07038H,0381CH,01C0EH,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,00000H,00000H,00000H,00000H,0FC3FH,0FC3FH,00C00H,00C00H,00C00H,00C00H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,00000H,00000H,00000H,00000H,00000H,00000H,0E007H,0E007H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,0F00FH,0F81FH,01C38H,00C30H,0CC37H,0EC37H,06C36H,06C36H,0CC37H,08C37H,0CC37H,0EC36H,06C36H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H ; " " DW 00000H,0F00FH,0F00FH,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; " " DW 0C003H,0E007H,0700EH,0381CH,0700EH,0E007H,0C003H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,08001H,08001H,08001H,08001H,0FC3FH,0FC3FH,08001H,08001H,08001H,08001H,00000H,00000H,0FC3FH,0FC3FH,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,0C00FH,0E00FH,07000H,07000H,0E003H,0C007H,0000EH,0000CH,0F00FH,0F00FH,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,0C00FH,0E00FH,07000H,07000H,0E00FH,0E00FH,07000H,07000H,0E00FH,0C00FH,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,06000H,0E000H,0C001H,08003H,00007H,00006H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,00000H,00000H,00000H,00000H,06030H,06030H,06030H,06030H,06030H,06030H,06030H,0F830H,0FC3FH,08C3FH,00030H,00030H,00030H,00030H,00000H ; " " DW 00000H,08C0FH,08C1FH,08C39H,08C31H,08C31H,08C39H,08C1FH,08C0FH,08C01H,08C01H,08C01H,08C01H,08C01H,08C01H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,00000H,00000H,00000H,00000H,00000H,00000H,08001H,08001H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,08001H,08001H,08003H,00007H,00006H,00000H ; " " DW 00000H,08003H,08007H,0800FH,0800DH,08001H,08001H,08001H,08001H,0F00FH,0F00FH,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,0F00FH,0F81FH,01C38H,00C30H,00C30H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,0FC3FH,0FC3FH,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,00000H,00000H,00000H,00000H,00000H,00000H,07038H,0381CH,01C0EH,01C0EH,0381CH,07038H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,0000CH,0000CH,0000CH,0000CH,0000CH,0000CH,0000CH,0000CH,01C0CH,03C0CH,07C00H,0EC00H,0CC01H,08C01H,0FC01H,0FC01H,00C00H,00C00H,00000H ; " " DW 00000H,00030H,00030H,00030H,00030H,00030H,00030H,00030H,00030H,0F831H,0FC31H,00C00H,00C00H,07C00H,0F800H,0C001H,08001H,0FC01H,0FC01H,00000H ; " " DW 00000H,0003EH,0003FH,08003H,08003H,0003FH,0003FH,08003H,08003H,01C3FH,03C3EH,07C00H,0EC00H,0CC01H,08C01H,0FC01H,0FC01H,00C00H,00C00H,00000H ; " " DW 00000H,00000H,00000H,00000H,00000H,08001H,08001H,00000H,00000H,08001H,08001H,08003H,00007H,0000EH,0001CH,00C18H,01C1CH,0F80FH,0F00FH,00000H ; " " DW 00006H,00007H,08003H,08001H,00000H,0F00FH,0F81FH,01C38H,00C30H,0FC3FH,0FC3FH,00C30H,00C30H,00C30H,00C30H,00000H,00000H,00000H,00000H,00000H ; " " DW 06000H,0E000H,0C001H,08001H,00000H,0F00FH,0F81FH,01C38H,00C30H,0FC3FH,0FC3FH,00C30H,00C30H,00C30H,00C30H,00000H,00000H,00000H,00000H,00000H ; " " DW 08001H,0C003H,0E007H,06006H,00000H,0F00FH,0F81FH,01C38H,00C30H,0FC3FH,0FC3FH,00C30H,00C30H,00C30H,00C30H,00000H,00000H,00000H,00000H,00000H ; " " DW 01807H,0B80FH,0F01DH,0E018H,00000H,0F00FH,0F81FH,01C38H,00C30H,0FC3FH,0FC3FH,00C30H,00C30H,00C30H,00C30H,00000H,00000H,00000H,00000H,00000H ; " " DW 0300CH,0300CH,0300CH,00000H,00000H,0F00FH,0F81FH,01C38H,00C30H,0FC3FH,0FC3FH,00C30H,00C30H,00C30H,00C30H,00000H,00000H,00000H,00000H,00000H ; " " DW 08001H,0C003H,06006H,06006H,0C003H,0F00FH,0F81FH,01C38H,00C30H,0FC3FH,0FC3FH,00C30H,00C30H,00C30H,00C30H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,0FC0FH,0FC1FH,08039H,08031H,08031H,08031H,0F83FH,0F83FH,08031H,08031H,08031H,08031H,0FC31H,0FC31H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,0F00FH,0F81FH,01C38H,00C30H,00030H,00030H,00030H,00030H,00030H,00030H,00C30H,01C38H,0F81FH,0F00FH,08001H,08003H,00007H,00006H,00000H ; " " DW 00006H,00007H,08003H,08001H,00000H,0FC3FH,0FC3FH,00030H,00030H,0F03FH,0F03FH,00030H,00030H,0FC3FH,0FC3FH,00000H,00000H,00000H,00000H,00000H ; " " DW 06000H,0E000H,0C001H,08001H,00000H,0FC3FH,0FC3FH,00030H,00030H,0F03FH,0F03FH,00030H,00030H,0FC3FH,0FC3FH,00000H,00000H,00000H,00000H,00000H ; " " DW 08001H,0C003H,0E007H,06006H,00000H,0FC3FH,0FC3FH,00030H,00030H,0F03FH,0F03FH,00030H,00030H,0FC3FH,0FC3FH,00000H,00000H,00000H,00000H,00000H ; " " DW 0300CH,0300CH,0300CH,00000H,00000H,0FC3FH,0FC3FH,00030H,00030H,0F03FH,0F03FH,00030H,00030H,0FC3FH,0FC3FH,00000H,00000H,00000H,00000H,00000H ; " " DW 00006H,00007H,08003H,08001H,00000H,0F00FH,0F00FH,08001H,08001H,08001H,08001H,08001H,08001H,0F00FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 06000H,0E000H,0C001H,08001H,00000H,0F00FH,0F00FH,08001H,08001H,08001H,08001H,08001H,08001H,0F00FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 08001H,0C003H,0E007H,06006H,00000H,0F00FH,0F00FH,08001H,08001H,08001H,08001H,08001H,08001H,0F00FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 0300CH,0300CH,0300CH,00000H,00000H,0F00FH,0F00FH,08001H,08001H,08001H,08001H,08001H,08001H,0F00FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,0F00FH,0F80FH,01C0CH,00C0CH,00C0CH,00C0CH,08C3FH,08C3FH,00C0CH,00C0CH,00C0CH,01C0CH,0F80FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 01807H,0B80FH,0F01DH,0E018H,00000H,00C30H,00C3CH,00C3EH,00C37H,08C33H,0CC31H,0EC30H,07C30H,03C30H,00C30H,00000H,00000H,00000H,00000H,00000H ; " " DW 00006H,00007H,08003H,08001H,00000H,0F00FH,0F81FH,01C38H,00C30H,00C30H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 06000H,0E000H,0C001H,08001H,00000H,0F00FH,0F81FH,01C38H,00C30H,00C30H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 08001H,0C003H,0E007H,06006H,00000H,0F00FH,0F81FH,01C38H,00C30H,00C30H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 01807H,0B80FH,0F01DH,0E018H,00000H,0F00FH,0F81FH,01C38H,00C30H,00C30H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 0300CH,0300CH,0300CH,00000H,00000H,0F00FH,0F81FH,01C38H,00C30H,00C30H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,00000H,00000H,01818H,0381CH,0700EH,0E007H,0C003H,0E007H,0700EH,0381CH,01818H,00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,0F00FH,0F81FH,01C38H,03C30H,07C30H,0EC30H,0CC31H,08C33H,00C37H,00C3EH,00C3CH,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 00006H,00007H,08003H,08001H,00000H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 06000H,0E000H,0C001H,08001H,00000H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 08001H,0C003H,0E007H,06006H,00000H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 0300CH,0300CH,0300CH,00000H,00000H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 06000H,0E000H,0C001H,08001H,00C30H,01C38H,0381CH,0700EH,0E007H,0C003H,08001H,08001H,08001H,08001H,08001H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,00030H,00030H,0F03FH,0F83FH,01C30H,00C30H,00C30H,01C30H,0F83FH,0F03FH,00030H,00030H,00030H,00030H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,0C00FH,0E01FH,07038H,03030H,03030H,03030H,0F031H,0F831H,01C30H,00C30H,00C30H,01C30H,0F831H,0F031H,00030H,00030H,00030H,00030H,00000H ; " " DW 00006H,00007H,08003H,08001H,00000H,0F00FH,0F80FH,01C00H,00C00H,0FC0FH,0FC1FH,00C38H,00C38H,0FC1FH,0FC0FH,00000H,00000H,00000H,00000H,00000H ; " " DW 06000H,0E000H,0C001H,08001H,00000H,0F00FH,0F80FH,01C00H,00C00H,0FC0FH,0FC1FH,00C38H,00C38H,0FC1FH,0FC0FH,00000H,00000H,00000H,00000H,00000H ; " " DW 08001H,0C003H,0E007H,06006H,00000H,0F00FH,0F80FH,01C00H,00C00H,0FC0FH,0FC1FH,00C38H,00C38H,0FC1FH,0FC0FH,00000H,00000H,00000H,00000H,00000H ; " " DW 01807H,0B80FH,0F01DH,0E018H,00000H,0F00FH,0F80FH,01C00H,00C00H,0FC0FH,0FC1FH,00C38H,00C38H,0FC1FH,0FC0FH,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,0300CH,0300CH,0300CH,00000H,0F00FH,0F80FH,01C00H,00C00H,0FC0FH,0FC1FH,00C38H,00C38H,0FC1FH,0FC0FH,00000H,00000H,00000H,00000H,00000H ; " " DW 08001H,0C003H,06006H,0C003H,08001H,0F00FH,0F80FH,01C00H,00C00H,0FC0FH,0FC1FH,00C38H,00C38H,0FC1FH,0FC0FH,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,00000H,00000H,00000H,00000H,0781EH,0FC1FH,08C03H,08C01H,0FC1FH,0FC3FH,08031H,08031H,0F83FH,0F81FH,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,00000H,00000H,00000H,00000H,0FC0FH,0FC1FH,00038H,00030H,00030H,00030H,00030H,00038H,0FC1FH,0FC0FH,0C000H,0C001H,08003H,00003H,00000H ; " " DW 00006H,00007H,08003H,08001H,00000H,0F00FH,0F81FH,01C38H,00C30H,0FC3FH,0FC3FH,00030H,00038H,0F01FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 06000H,0E000H,0C001H,08001H,00000H,0F00FH,0F81FH,01C38H,00C30H,0FC3FH,0FC3FH,00030H,00038H,0F01FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 08001H,0C003H,0E007H,06006H,00000H,0F00FH,0F81FH,01C38H,00C30H,0FC3FH,0FC3FH,00030H,00038H,0F01FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,0300CH,0300CH,0300CH,00000H,0F00FH,0F81FH,01C38H,00C30H,0FC3FH,0FC3FH,00030H,00038H,0F01FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 00006H,00007H,08003H,08001H,00000H,0800FH,0800FH,08001H,08001H,08001H,08001H,08001H,08001H,0F00FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 06000H,0E000H,0C001H,08001H,00000H,0800FH,0800FH,08001H,08001H,08001H,08001H,08001H,08001H,0F00FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 08001H,0C003H,0E007H,06006H,00000H,0800FH,0800FH,08001H,08001H,08001H,08001H,08001H,08001H,0F00FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,0300CH,0300CH,0300CH,00000H,0800FH,0800FH,08001H,08001H,08001H,08001H,08001H,08001H,0F00FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,0601EH,0E01FH,0C003H,0E007H,0700EH,0380CH,01C00H,00C00H,0FC0FH,0FC1FH,01C38H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 01807H,0B80FH,0F01DH,0E018H,00000H,0F03FH,0F83FH,01C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00000H,00000H,00000H,00000H,00000H ; " " DW 00006H,00007H,08003H,08001H,00000H,00000H,0F00FH,0F81FH,01C38H,00C30H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 06000H,0E000H,0C001H,08001H,00000H,00000H,0F00FH,0F81FH,01C38H,00C30H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 08001H,0C003H,0E007H,06006H,00000H,00000H,0F00FH,0F81FH,01C38H,00C30H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 01807H,0B80FH,0F01DH,0E018H,00000H,00000H,0F00FH,0F81FH,01C38H,00C30H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,0300CH,0300CH,0300CH,00000H,00000H,0F00FH,0F81FH,01C38H,00C30H,00C30H,00C30H,01C38H,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,00000H,00000H,08001H,08001H,00000H,00000H,0FC3FH,0FC3FH,00000H,00000H,08001H,08001H,00000H,00000H,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,00000H,00000H,00000H,00000H,0F00FH,0F81FH,07C38H,0EC30H,0CC31H,08C33H,00C37H,01C3EH,0F81FH,0F00FH,00000H,00000H,00000H,00000H,00000H ; " " DW 00006H,00007H,08003H,08001H,00000H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C38H,0FC1FH,0FC0FH,00000H,00000H,00000H,00000H,00000H ; " " DW 06000H,0E000H,0C001H,08001H,00000H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C38H,0FC1FH,0FC0FH,00000H,00000H,00000H,00000H,00000H ; " " DW 08001H,0C003H,0E007H,06006H,00000H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C38H,0FC1FH,0FC0FH,00000H,00000H,00000H,00000H,00000H ; " " DW 00000H,0300CH,0300CH,0300CH,00000H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C38H,0FC1FH,0FC0FH,00000H,00000H,00000H,00000H,00000H ; " " DW 06000H,0E000H,0C001H,08001H,00000H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C38H,0FC1FH,0FC0FH,00C00H,01C00H,0F80FH,0F00FH,00000H ; " " DW 00000H,00030H,00030H,00030H,00030H,0F03FH,0F83FH,01C30H,00C30H,00C30H,00C30H,00C30H,01C30H,0F83FH,0F03FH,00030H,00030H,00030H,00030H,00000H ; " " DW 00000H,0300CH,0300CH,0300CH,00000H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C30H,00C38H,0FC1FH,0FC0FH,00C00H,01C00H,0F80FH,0F00FH,00000H ; " " ; ; Structure {x%,y%} ; ptfmt: dd 8 ; Total length (bytes) ptlnk0: dd ptlnk1 - ptlnk0 ; Link to next member db 'x%',0 ; Member name dd 0 ; Member offset (bytes) ptlnk1: dd 0 ; Terminating link db 'y%',0 ; Member name dd 4 ; Member offset (bytes) ; ; Structure {a&,b&,c&,d&} ; b4fmt: dd 4 ; Total length (bytes) b4lnk0: dd b4lnk1 - b4lnk0 ; Link to next member db 'a&',0 ; Member name dd 0 ; Member offset (bytes) b4lnk1: dd b4lnk2 - b4lnk1 ; Link to next member db 'b&',0 ; Member name dd 1 ; Member offset (bytes) b4lnk2: dd b4lnk3 - b4lnk2 ; Link to next member db 'c&',0 ; Member name dd 2 ; Member offset (bytes) b4lnk3: dd 0 ; Terminating link db 'd&',0 ; Member name dd 3 ; Member offset (bytes) ; ; FastVar token type values: ; fvtab: db 1 ; &19 v& Unsigned byte (8 bits) db 4 ; &1A v% Signed dword (32 bits) db 8 ; &1B v# Float double (64 bits) db 10 ; &1C v Variant numeric (80 bits) db 16 ; &1D v{} Structure (8+8 bytes) db 40 ; &1E v%% Signed qword (64 bits) db 136 ; &1F v$ String (4+4 bytes) ; SEGMENT .data ; Necessary for Position Independent Code ; ; Array of function entry points: ; times 3 db 0 ; Padding fnarr: db 1 ; Number of dimensions dd (fnarrt-fnarr0)/8 ; Number of entries checkalign fnarr0: dq loadn ; Load numeric dq loads ; Load string dq storen ; Store numeric dq stores ; Store string dq getvar ; Get variable address dq putvar ; Create variable dq expr ; Evaluate expression dq item ; Evaluate item dq lexan ; Lexical analysis (tokenise) dq token ; Print character or keyword dq xfloat ; Convert integer to float dq xfix ; Convert float to integer dq str00 ; Convert a number to a string dq con ; Convert a string to a number dq 0 ; Reserved for sortup dq 0 ; Reserved for sortdn dq 0 ; Reserved for hook dq xeq ; Return to BASIC dq putevt ; Store event in queue dq gfxPrimitivesGetFont dq gfxPrimitivesSetFont dq RedefineChar fnarrt: ; ================================================ FILE: bin/android/build.gradle ================================================ def buildAsLibrary = project.hasProperty('BUILD_AS_LIBRARY'); def buildAsApplication = !buildAsLibrary if (buildAsApplication) { apply plugin: 'com.android.application' } else { apply plugin: 'com.android.library' } android { namespace = 'com.rtrussell.bbcbasic' compileSdkVersion 35 defaultConfig { if (buildAsApplication) { applicationId "com.rtrussell.bbcbasic" } ndkVersion = "27.3.13750724" minSdkVersion 21 targetSdkVersion 35 versionCode 149 versionName "1.44a" externalNativeBuild { ndkBuild { arguments "APP_PLATFORM=android-16" abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86_64' } // cmake { // arguments "-DANDROID_APP_PLATFORM=android-16", "-DANDROID_STL=c++_static" // // abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64' // abiFilters 'arm64-v8a' // } } } buildTypes { release { debuggable false minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } applicationVariants.all { variant -> tasks["merge${variant.name.capitalize()}Assets"] .dependsOn("externalNativeBuild${variant.name.capitalize()}") } if (!project.hasProperty('EXCLUDE_NATIVE_LIBS')) { sourceSets.main { jniLibs.srcDir 'libs' } externalNativeBuild { ndkBuild { path 'jni/Android.mk' } // cmake { // path 'jni/CMakeLists.txt' // } } } lintOptions { abortOnError = false } if (buildAsLibrary) { libraryVariants.all { variant -> variant.outputs.each { output -> def outputFile = output.outputFile if (outputFile != null && outputFile.name.endsWith(".aar")) { def fileName = "com.rtrussell.bbcbasic.aar"; output.outputFile = new File(outputFile.parent, fileName); } } } } } dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') } ================================================ FILE: bin/android/help.txt ================================================ • BBC BASIC is the programming language originally specified and adopted by the British Broadcasting Corporation for its groundbreaking Computer Literacy Project of the early 1980s. BBC BASIC for SDL 2.0 is an advanced cross-platform implementation which will run on Windows®, MacOS®, Linux® (x86), Raspberry Pi OS™, Android™, iOS® and in a browser. The full help manual may be found . The Android, iOS and in-browser editions have a simplified user interface. To run a program, navigate to the appropriate folder (games, general, graphics, physics, sounds or tools) and tap/click on the program's name. To exit a program and return to the main menu, tap on the Back [<] button (Android) or press the Escape key. In iOS there is a soft [<] button; it may not always be displayed but tapping in the top-left corner should still work. To create a new program, first navigate to the @usr$ folder then long-press or right-click below the list of files and select New file from the context menu. Alternatively create a new folder under @usr$ and put your program there. To edit a program, long-press or right-click on the program's name and select Edit from the context menu. To exit the editor tap on the [<] button or press the Escape key. You cannot edit the supplied example programs. In the editor a long-press or right-click opens a menu of commands. A long press and drag selects a block of code; a horizontal drag selects part of a line, a vertical drag selects entire lines. Tap on a selected region for options. In Android and iOS the contents of the @usr$ folder may be accessed from a desktop computer using a USB connection, or from the Files app in iOS. It is inevitable that from time to time BBC BASIC will crash (for example abort with an untrapped error), especially if you are testing and debugging your own programs. If this happens it will not damage your device or other apps, but it will be necessary to close BBC BASIC fully and open it again. BBC BASIC for SDL 2.0 is the Copyright © 2026 of R.T.Russell. The program and other materials are provided 'as is' and without any guarantee as to their quality or suitability. Although they are thought to be free from serious bugs, and it is highly unlikely that they could do any harm to other software or systems, there is NO warranty that they will not and their use is at your own risk. The supplied example programs and libraries remain the Copyright © 2001-2026 of R.T.Russell and others, but you may incorporate them in whole or in part within your own programs so long as any copyright notice is retained. ================================================ FILE: bin/android/styles.xml ================================================ ================================================ FILE: bin/ios/exported.txt ================================================ _SDL_AddEventWatch _SDL_AddHintCallback _SDL_AddTimer _SDL_AllocFormat _SDL_AllocPalette _SDL_AllocRW _SDL_AtomicAdd _SDL_AtomicCAS _SDL_AtomicCASPtr _SDL_AtomicGet _SDL_AtomicGetPtr _SDL_AtomicLock _SDL_AtomicSet _SDL_AtomicSetPtr _SDL_AtomicTryLock _SDL_AtomicUnlock _SDL_AudioInit _SDL_AudioQuit _SDL_BuildAudioCVT _SDL_CalculateGammaRamp _SDL_CaptureMouse _SDL_ClearError _SDL_ClearHints _SDL_ClearQueuedAudio _SDL_CloseAudio _SDL_CloseAudioDevice _SDL_ComposeCustomBlendMode _SDL_CondBroadcast _SDL_CondSignal _SDL_CondWait _SDL_CondWaitTimeout _SDL_ConvertAudio _SDL_ConvertPixels _SDL_ConvertSurface _SDL_ConvertSurfaceFormat _SDL_CreateColorCursor _SDL_CreateCond _SDL_CreateCursor _SDL_CreateMutex _SDL_CreateRGBSurface _SDL_CreateRGBSurfaceFrom _SDL_CreateRGBSurfaceWithFormat _SDL_CreateRGBSurfaceWithFormatFrom _SDL_CreateRenderer _SDL_CreateSemaphore _SDL_CreateSoftwareRenderer _SDL_CreateSystemCursor _SDL_CreateTexture _SDL_CreateTextureFromSurface _SDL_CreateThread _SDL_CreateThreadWithStackSize _SDL_CreateWindow _SDL_CreateWindowAndRenderer _SDL_CreateWindowFrom _SDL_DelEventWatch _SDL_DelHintCallback _SDL_Delay _SDL_DequeueAudio _SDL_DestroyCond _SDL_DestroyMutex _SDL_DestroyRenderer _SDL_DestroySemaphore _SDL_DestroyTexture _SDL_DestroyWindow _SDL_DetachThread _SDL_DisableScreenSaver _SDL_EnableScreenSaver _SDL_EnclosePoints _SDL_EventState _SDL_FillRect _SDL_FillRects _SDL_FilterEvents _SDL_FlushEvent _SDL_FlushEvents _SDL_FreeCursor _SDL_FreeFormat _SDL_FreePalette _SDL_FreeRW _SDL_FreeSurface _SDL_FreeWAV _SDL_GL_BindTexture _SDL_GL_CreateContext _SDL_GL_DeleteContext _SDL_GL_ExtensionSupported _SDL_GL_GetAttribute _SDL_GL_GetCurrentContext _SDL_GL_GetCurrentWindow _SDL_GL_GetDrawableSize _SDL_GL_GetProcAddress _SDL_GL_GetSwapInterval _SDL_GL_LoadLibrary _SDL_GL_MakeCurrent _SDL_GL_ResetAttributes _SDL_GL_SetAttribute _SDL_GL_SetSwapInterval _SDL_GL_SwapWindow _SDL_GL_UnbindTexture _SDL_GL_UnloadLibrary _SDL_GameControllerAddMapping _SDL_GameControllerAddMappingsFromRW _SDL_GameControllerClose _SDL_GameControllerEventState _SDL_GameControllerFromInstanceID _SDL_GameControllerGetAttached _SDL_GameControllerGetAxis _SDL_GameControllerGetAxisFromString _SDL_GameControllerGetBindForAxis _SDL_GameControllerGetBindForButton _SDL_GameControllerGetButton _SDL_GameControllerGetButtonFromString _SDL_GameControllerGetJoystick _SDL_GameControllerGetStringForAxis _SDL_GameControllerGetStringForButton _SDL_GameControllerMapping _SDL_GameControllerMappingForGUID _SDL_GameControllerName _SDL_GameControllerNameForIndex _SDL_GameControllerOpen _SDL_GameControllerUpdate _SDL_GetAssertionHandler _SDL_GetAssertionReport _SDL_GetAudioDeviceName _SDL_GetAudioDeviceStatus _SDL_GetAudioDriver _SDL_GetAudioStatus _SDL_GetBasePath _SDL_GetCPUCacheLineSize _SDL_GetCPUCount _SDL_GetClipRect _SDL_GetClipboardText _SDL_GetClosestDisplayMode _SDL_GetColorKey _SDL_GetCurrentAudioDriver _SDL_GetCurrentDisplayMode _SDL_GetCurrentVideoDriver _SDL_GetCursor _SDL_GetDefaultAssertionHandler _SDL_GetDefaultCursor _SDL_GetDesktopDisplayMode _SDL_GetDisplayBounds _SDL_GetDisplayDPI _SDL_GetDisplayMode _SDL_GetDisplayName _SDL_GetDisplayUsableBounds _SDL_GetError _SDL_GetEventFilter _SDL_GetGlobalMouseState _SDL_GetGrabbedWindow _SDL_GetHint _SDL_GetHintBoolean _SDL_GetKeyFromName _SDL_GetKeyFromScancode _SDL_GetKeyName _SDL_GetKeyboardFocus _SDL_GetKeyboardState _SDL_GetModState _SDL_GetMouseFocus _SDL_GetMouseState _SDL_GetNumAudioDevices _SDL_GetNumAudioDrivers _SDL_GetNumDisplayModes _SDL_GetNumRenderDrivers _SDL_GetNumTouchDevices _SDL_GetNumTouchFingers _SDL_GetNumVideoDisplays _SDL_GetNumVideoDrivers _SDL_GetPerformanceCounter _SDL_GetPerformanceFrequency _SDL_GetPixelFormatName _SDL_GetPlatform _SDL_GetPowerInfo _SDL_GetPrefPath _SDL_GetQueuedAudioSize _SDL_GetRGB _SDL_GetRGBA _SDL_GetRelativeMouseMode _SDL_GetRelativeMouseState _SDL_GetRenderDrawBlendMode _SDL_GetRenderDrawColor _SDL_GetRenderDriverInfo _SDL_GetRenderTarget _SDL_GetRenderer _SDL_GetRendererInfo _SDL_GetRendererOutputSize _SDL_GetRevision _SDL_GetRevisionNumber _SDL_GetScancodeFromKey _SDL_GetScancodeFromName _SDL_GetScancodeName _SDL_GetSurfaceAlphaMod _SDL_GetSurfaceBlendMode _SDL_GetSurfaceColorMod _SDL_GetSystemRAM _SDL_GetTextureAlphaMod _SDL_GetTextureBlendMode _SDL_GetTextureColorMod _SDL_GetThreadID _SDL_GetThreadName _SDL_GetTicks _SDL_GetTicks64 _SDL_GetTouchDevice _SDL_GetTouchFinger _SDL_GetVersion _SDL_GetVideoDriver _SDL_GetWindowBordersSize _SDL_GetWindowBrightness _SDL_GetWindowData _SDL_GetWindowDisplayIndex _SDL_GetWindowDisplayMode _SDL_GetWindowFlags _SDL_GetWindowFromID _SDL_GetWindowGammaRamp _SDL_GetWindowGrab _SDL_GetWindowID _SDL_GetWindowMaximumSize _SDL_GetWindowMinimumSize _SDL_GetWindowOpacity _SDL_GetWindowPixelFormat _SDL_GetWindowPosition _SDL_GetWindowSize _SDL_GetWindowSurface _SDL_GetWindowTitle _SDL_GetWindowWMInfo _SDL_HapticClose _SDL_HapticDestroyEffect _SDL_HapticEffectSupported _SDL_HapticGetEffectStatus _SDL_HapticIndex _SDL_HapticName _SDL_HapticNewEffect _SDL_HapticNumAxes _SDL_HapticNumEffects _SDL_HapticNumEffectsPlaying _SDL_HapticOpen _SDL_HapticOpenFromJoystick _SDL_HapticOpenFromMouse _SDL_HapticOpened _SDL_HapticPause _SDL_HapticQuery _SDL_HapticRumbleInit _SDL_HapticRumblePlay _SDL_HapticRumbleStop _SDL_HapticRumbleSupported _SDL_HapticRunEffect _SDL_HapticSetAutocenter _SDL_HapticSetGain _SDL_HapticStopAll _SDL_HapticStopEffect _SDL_HapticUnpause _SDL_HapticUpdateEffect _SDL_Has3DNow _SDL_HasAVX _SDL_HasAVX2 _SDL_HasAltiVec _SDL_HasClipboardText _SDL_HasEvent _SDL_HasEvents _SDL_HasIntersection _SDL_HasMMX _SDL_HasRDTSC _SDL_HasSSE _SDL_HasSSE2 _SDL_HasSSE3 _SDL_HasSSE41 _SDL_HasSSE42 _SDL_HasScreenKeyboardSupport _SDL_HideWindow _SDL_Init _SDL_InitSubSystem _SDL_IntersectRect _SDL_IntersectRectAndLine _SDL_IsGameController _SDL_IsScreenKeyboardShown _SDL_IsScreenSaverEnabled _SDL_IsTextInputActive _SDL_JoystickClose _SDL_JoystickCurrentPowerLevel _SDL_JoystickEventState _SDL_JoystickFromInstanceID _SDL_JoystickGetAttached _SDL_JoystickGetAxis _SDL_JoystickGetBall _SDL_JoystickGetButton _SDL_JoystickGetDeviceGUID _SDL_JoystickGetGUID _SDL_JoystickGetGUIDFromString _SDL_JoystickGetGUIDString _SDL_JoystickGetHat _SDL_JoystickInstanceID _SDL_JoystickIsHaptic _SDL_JoystickName _SDL_JoystickNameForIndex _SDL_JoystickNumAxes _SDL_JoystickNumBalls _SDL_JoystickNumButtons _SDL_JoystickNumHats _SDL_JoystickOpen _SDL_JoystickUpdate _SDL_LoadBMP_RW _SDL_LoadDollarTemplates _SDL_LoadFunction _SDL_LoadObject _SDL_LoadWAV_RW _SDL_LockAudio _SDL_LockAudioDevice _SDL_LockMutex _SDL_LockSurface _SDL_LockTexture _SDL_Log _SDL_LogCritical _SDL_LogDebug _SDL_LogError _SDL_LogGetOutputFunction _SDL_LogGetPriority _SDL_LogInfo _SDL_LogMessage _SDL_LogMessageV _SDL_LogResetPriorities _SDL_LogSetAllPriority _SDL_LogSetOutputFunction _SDL_LogSetPriority _SDL_LogVerbose _SDL_LogWarn _SDL_LowerBlit _SDL_LowerBlitScaled _SDL_MapRGB _SDL_MapRGBA _SDL_MasksToPixelFormatEnum _SDL_MaximizeWindow _SDL_MinimizeWindow _SDL_MixAudio _SDL_MixAudioFormat _SDL_MouseIsHaptic _SDL_NumHaptics _SDL_NumJoysticks _SDL_NumSensors _SDL_OpenAudio _SDL_OpenAudioDevice _SDL_OpenURL _SDL_PauseAudio _SDL_PauseAudioDevice _SDL_PeepEvents _SDL_PixelFormatEnumToMasks _SDL_PollEvent _SDL_PumpEvents _SDL_PushEvent _SDL_QueryTexture _SDL_QueueAudio _SDL_Quit _SDL_QuitSubSystem _SDL_RWFromConstMem _SDL_RWFromFP _SDL_RWFromFile _SDL_RWFromMem _SDL_RWclose _SDL_RWread _SDL_RWwrite _SDL_RaiseWindow _SDL_RecordGesture _SDL_RegisterEvents _SDL_RemoveTimer _SDL_RenderClear _SDL_RenderCopy _SDL_RenderCopyEx _SDL_RenderDrawLine _SDL_RenderDrawLines _SDL_RenderDrawPoint _SDL_RenderDrawPoints _SDL_RenderDrawRect _SDL_RenderDrawRects _SDL_RenderFillRect _SDL_RenderFillRects _SDL_RenderFlush _SDL_RenderCopyF _SDL_RenderCopyExF _SDL_RenderDrawLineF _SDL_RenderDrawLinesF _SDL_RenderDrawPointF _SDL_RenderDrawPointsF _SDL_RenderDrawRectF _SDL_RenderDrawRectsF _SDL_RenderFillRectF _SDL_RenderFillRectsF _SDL_RenderFlush _SDL_RenderGeometry _SDL_RenderGetClipRect _SDL_RenderGetIntegerScale _SDL_RenderGetLogicalSize _SDL_RenderGetScale _SDL_RenderGetViewport _SDL_RenderIsClipEnabled _SDL_RenderPresent _SDL_RenderReadPixels _SDL_RenderSetClipRect _SDL_RenderSetIntegerScale _SDL_RenderSetLogicalSize _SDL_RenderSetScale _SDL_RenderSetViewport _SDL_RenderTargetSupported _SDL_ResetAssertionReport _SDL_RestoreWindow _SDL_SaveAllDollarTemplates _SDL_SaveBMP_RW _SDL_SaveDollarTemplate _SDL_SemPost _SDL_SemTryWait _SDL_SemValue _SDL_SemWait _SDL_SemWaitTimeout _SDL_SensorClose _SDL_SensorFromInstanceID _SDL_SensorGetData _SDL_SensorGetDataWithTimestamp _SDL_SensorGetDeviceInstanceID _SDL_SensorGetDeviceName _SDL_SensorGetDeviceNonPortableType _SDL_SensorGetDeviceType _SDL_SensorGetInstanceID _SDL_SensorGetName _SDL_SensorGetNonPortableType _SDL_SensorGetType _SDL_SensorOpen _SDL_SensorUpdate _SDL_SetAssertionHandler _SDL_SetClipRect _SDL_SetClipboardText _SDL_SetColorKey _SDL_SetCursor _SDL_SetError _SDL_SetEventFilter _SDL_SetHint _SDL_SetHintWithPriority _SDL_SetMainReady _SDL_SetModState _SDL_SetPaletteColors _SDL_SetPixelFormatPalette _SDL_SetRelativeMouseMode _SDL_SetRenderDrawBlendMode _SDL_SetRenderDrawColor _SDL_SetRenderTarget _SDL_SetSurfaceAlphaMod _SDL_SetSurfaceBlendMode _SDL_SetSurfaceColorMod _SDL_SetSurfacePalette _SDL_SetSurfaceRLE _SDL_SetTextInputRect _SDL_SetTextureAlphaMod _SDL_SetTextureBlendMode _SDL_SetTextureColorMod _SDL_SetThreadPriority _SDL_SetWindowBordered _SDL_SetWindowBrightness _SDL_SetWindowData _SDL_SetWindowDisplayMode _SDL_SetWindowFullscreen _SDL_SetWindowGammaRamp _SDL_SetWindowGrab _SDL_SetWindowHitTest _SDL_SetWindowIcon _SDL_SetWindowInputFocus _SDL_SetWindowMaximumSize _SDL_SetWindowMinimumSize _SDL_SetWindowModalFor _SDL_SetWindowOpacity _SDL_SetWindowPosition _SDL_SetWindowResizable _SDL_SetWindowSize _SDL_SetWindowTitle _SDL_ShowCursor _SDL_ShowMessageBox _SDL_ShowSimpleMessageBox _SDL_ShowWindow _SDL_StartTextInput _SDL_StopTextInput _SDL_TLSCreate _SDL_TLSGet _SDL_TLSSet _SDL_ThreadID _SDL_TryLockMutex _SDL_UnionRect _SDL_UnloadObject _SDL_UnlockAudio _SDL_UnlockAudioDevice _SDL_UnlockMutex _SDL_UnlockSurface _SDL_UnlockTexture _SDL_UpdateTexture _SDL_UpdateWindowSurface _SDL_UpdateWindowSurfaceRects _SDL_UpdateYUVTexture _SDL_UpperBlit _SDL_VideoInit _SDL_VideoQuit _SDL_WaitEvent _SDL_WaitEventTimeout _SDL_WaitThread _SDL_WarpMouseGlobal _SDL_WarpMouseInWindow _SDL_WasInit _SDLNet_ResolveHost _SDLNet_ResolveIP _SDLNet_TCP_Open _SDLNet_TCP_Close _SDLNet_TCP_Accept _SDLNet_TCP_GetPeerAddress _SDLNet_TCP_Send _SDLNet_TCP_Recv _SDLNet_AllocSocketSet _SDLNet_FreeSocketSet _SDLNet_AddSocket _SDLNet_DelSocket _SDLNet_CheckSockets _SDLNet_Linked_Version _SDLNet_UDP_Open _SDLNet_UDP_Close _SDLNet_UDP_Bind _SDLNet_UDP_Unbind _SDLNet_UDP_GetPeerAddress _SDLNet_UDP_Send _SDLNet_UDP_Recv _TTF_ByteSwappedUNICODE _TTF_CloseFont _TTF_FontAscent _TTF_FontDescent _TTF_FontFaceFamilyName _TTF_FontFaceIsFixedWidth _TTF_FontFaces _TTF_FontFaceStyleName _TTF_FontHeight _TTF_FontLineSkip _TTF_GetFontHinting _TTF_GetFontKerning _TTF_GetFontKerningSizeGlyphs _TTF_GetFontOutline _TTF_GetFontStyle _TTF_GlyphIsProvided _TTF_GlyphMetrics _TTF_Init _TTF_Linked_Version _TTF_OpenFont _TTF_OpenFontIndex _TTF_OpenFontIndexRW _TTF_OpenFontRW _TTF_Quit _TTF_RenderGlyph_Blended _TTF_RenderGlyph_Shaded _TTF_RenderGlyph_Solid _TTF_RenderText_Blended _TTF_RenderText_Shaded _TTF_RenderText_Solid _TTF_RenderUNICODE_Blended _TTF_RenderUNICODE_Shaded _TTF_RenderUNICODE_Solid _TTF_RenderUTF8_Blended _TTF_RenderUTF8_Shaded _TTF_RenderUTF8_Solid _TTF_SetFontHinting _TTF_SetFontKerning _TTF_SetFontOutline _TTF_SetFontStyle _TTF_SetFontScriptName _TTF_SetFontDirection _TTF_SizeText _TTF_SizeUNICODE _TTF_SizeUTF8 _TTF_WasInit _TTF_GetFreeTypeVersion _TTF_GetHarfBuzzVersion _STBIMG_Load _STBIMG_Load_RW _STBIMG_LoadFromMemory _STBIMG_LoadTexture _STBIMG_LoadTexture_RW _STBIMG_LoadTextureFromMemory _STBIMG_CreateSurface _STBIMG_CreateTexture _STBIMG_Load_RW_noSeek _stbi_image_free _stbi_load_gif_from_memory _stbi_set_flip_vertically_on_load _drmp3_init_file _drmp3_init_memory _drmp3_uninit _drmp3_read_pcm_frames_f32 _drmp3_seek_to_pcm_frame _drmp3_get_pcm_frame_count _drmp3_open_memory_and_read_f32 _drmp3_open_file_and_read_f32 _drmp3_free _drmp3dec_f32_to_s16 _GFX_bezierColor _GFX_filledPolyBezierColor _GFX_aaFilledEllipseColor _GFX_aaFilledPolygonColor _GFX_aaFilledPieColor _GFX_aaArcColor _GFX_aaBezierColor _GFX_aaFilledPolyBezierColor _GFX_EvaluateBezier _GFX_RotoZoomSurface _b2NewWorld _b2CreateBody _b2DestroyBody _b2CircleShape _b2PolygonShape _b2ChainShape _b2CreateChain _b2CreateLoop _b2SetNextVertex _b2SetPrevVertex _b2SetAsBox _b2SetAsOrientedBox _b2SetFilterData _b2SetSensor _b2CreateFixtureFromDef _b2CreateFixtureFromShape _b2GetBody _b2GetShape _b2DestroyFixture _b2WorldStep _b2GetTransform _b2SetPolygon _b2SetTransform _b2SetActive _b2SetAwake _b2SetSleepingAllowed _b2SetBullet _b2SetFixedRotation _b2IsAwake _b2GetUserDataB _b2GetUserDataF _b2GetUserDataJ _b2SetUserDataB _b2SetUserDataF _b2SetUserDataJ _b2SetAngularVelocity _b2SetLinearVelocity _b2ApplyForce _b2ApplyLinearImpulse _b2ApplyTorque _b2CreateJoint _b2DestroyJoint _b2DistanceJointInit _b2FrictionJointInit _b2PrismaticJointInit _b2PulleyJointInit _b2RevoluteJointInit _b2WeldJointInit _b2WheelJointInit _b2EnableMotorP _b2EnableMotorR _b2EnableMotorW _b2SetMaxMotorForceP _b2SetMaxMotorTorqueR _b2SetMaxMotorTorqueW _b2SetMotorSpeedP _b2SetMotorSpeedR _b2SetMotorSpeedW _b2SetTarget _b2GetBodyA _b2GetBodyB _b2GetContactListW _b2GetContactListB _b2GetNextContact _b2IsTouching _b2GetFixtureA _b2GetFixtureB _b2GetChildIndexA _b2GetChildIndexB _b2GetBodyList _b2GetNextBody _b2SetGravity _b2DistanceJointGetAnchorA _b2DistanceJointGetAnchorB _b2PulleyJointGetAnchorA _b2PulleyJointGetAnchorB _b2RopeJointGetAnchorA _b2RopeJointGetAnchorB _b2GetLinearVelocity _b2GetAngularVelocity _b2GetMass _b2DebugInit _b2DebugMatrix _b2DrawDebugData _SDL_malloc _SDL_memset _SDL_memcpy _SDL_memcmp _SDL_free _getsockname _szNotice ================================================ FILE: bin/ios/help.txt ================================================ • BBC BASIC is the programming language originally specified and adopted by the British Broadcasting Corporation for its groundbreaking Computer Literacy Project of the early 1980s. BBC BASIC for SDL 2.0 is an advanced cross-platform implementation which will run on Windows®, MacOS®, Linux® (x86), Raspberry Pi OS™, Android™, iOS® and in a browser. The full help manual may be found . The Android, iOS and in-browser editions have a simplified user interface. To run a program, navigate to the appropriate folder (games, general, graphics, physics, sounds or tools) and tap/click on the program's name. To exit a program and return to the main menu, tap on the Back [<] button (Android) or press the Escape key. In iOS there is a soft [<] button; it may not always be displayed but tapping in the top-left corner should still work. To create a new program, first navigate to the @usr$ folder then long-press or right-click below the list of files and select New file from the context menu. Alternatively create a new folder under @usr$ and put your program there. To edit a program, long-press or right-click on the program's name and select Edit from the context menu. To exit the editor tap on the [<] button or press the Escape key. You cannot edit the supplied example programs. In the editor a long-press or right-click opens a menu of commands. A long press and drag selects a block of code; a horizontal drag selects part of a line, a vertical drag selects entire lines. Tap on a selected region for options. In Android and iOS the contents of the @usr$ folder may be accessed from a desktop computer using a USB connection, or from the Files app in iOS. It is inevitable that from time to time BBC BASIC will crash (for example abort with an untrapped error), especially if you are testing and debugging your own programs. If this happens it will not damage your device or other apps, but it will be necessary to close BBC BASIC fully and open it again. BBC BASIC for SDL 2.0 is the Copyright © 2026 of R.T.Russell. The program and other materials are provided 'as is' and without any guarantee as to their quality or suitability. Although they are thought to be free from serious bugs, and it is highly unlikely that they could do any harm to other software or systems, there is NO warranty that they will not and their use is at your own risk. The supplied example programs and libraries remain the Copyright © 2001-2026 of R.T.Russell and others, but you may incorporate them in whole or in part within your own programs so long as any copyright notice is retained. ================================================ FILE: bin/linux/install32.txt ================================================ Installing SDL 2.0 on Linux systems: 32-bit Debian / Mint / Ubuntu: sudo apt-get install libsdl2-2.0-0 sudo apt-get install libsdl2-ttf-2.0-0 sudo apt-get install libsdl2-net-2.0-0 64-bit Debian / Mint / Ubuntu: sudo dpkg --add-architecture i386 sudo apt-get update sudo apt-get dist-upgrade sudo apt-get install libglapi-mesa:i386 sudo apt-get install libegl1-mesa:i386 sudo apt-get install libgl1-mesa-glx:i386 sudo apt-get install libudev1:i386 sudo apt-get install libsdl2-2.0-0:i386 sudo apt-get install libsdl2-ttf-2.0-0:i386 sudo apt-get install libsdl2-net-2.0-0:i386 To start BBC BASIC: chmod +x bbcsdl ./bbcsdl To create a desktop shortcut: chmod +x mkicon.sh ./mkicon.sh If you receive an error message related to dbus_message_new_method_call start BBC BASIC using: env IBUS_ADDRESS=0 ./bbcsdl ================================================ FILE: bin/linux/install64.txt ================================================ Installing SDL 2.0 on Linux systems: 64-bit Debian / Mint / Ubuntu: sudo apt-get install libsdl2-2.0-0 sudo apt-get install libsdl2-ttf-2.0-0 sudo apt-get install libsdl2-net-2.0-0 64-bit Fedora: sudo dnf install SDL2 SDL2_ttf SDL2_net To start BBC BASIC: chmod +x bbcsdl ./bbcsdl To create a desktop shortcut: chmod +x mkicon.sh ./mkicon.sh ================================================ FILE: bin/linux/makefile ================================================ # On Debian / Ubuntu / Mint download SDL 2.0 and NASM from the repository: # sudo apt-get install libsdl2-dev # sudo apt-get install libsdl2-ttf-dev # sudo apt-get install libsdl2-net-dev # sudo apt-get install libsdl2-2.0-0 # sudo apt-get install libsdl2-ttf-2.0-0 # sudo apt-get install libsdl2-net-2.0-0 # sudo apt-get install nasm SDL_LIB = -L/usr/include -lSDL2 -lSDL2main -lSDL2_ttf -lSDL2_net -ldl -lm LBITS := $(shell getconf LONG_BIT) VPATH = ../../src ../../include CXX = gcc -Wall -pthread -I ../../include OBJ = bbmain.o bbexec.o bbeval.o bbcmos.o bbccli.o \ bbcvdu.o bbcvtx.o flood.o bbdata.o bbcsdl.o \ bbasmb.o SDL2_gfxPrimitives.o all: bbcsdl bbmain.o: bbmain.c BBC.h $(CXX) -c -O2 -freg-struct-return -ffast-math -fno-finite-math-only $< -o $@ bbexec.o: bbexec.c BBC.h $(CXX) -c -O2 -freg-struct-return -ffast-math -fno-finite-math-only $< -o $@ bbeval.o: bbeval.c BBC.h $(CXX) -Wno-array-bounds -c -O2 -freg-struct-return -ffast-math -fmath-errno -fno-finite-math-only $< -o $@ bbasmb.o: bbasmb_x86_64.c BBC.h $(CXX) -c -Os $< -o $@ bbcmos.o: bbcmos.c bbcsdl.h $(CXX) -Wno-unused-result -Wno-array-bounds -c -msse2 -O2 $< -o $@ bbccli.o: bbccli.c bbcsdl.h $(CXX) -Wno-unused-result -c -Os $< -o $@ bbcvdu.o: bbcvdu.c bbcsdl.h $(CXX) -c -Os $< -o $@ bbcvtx.o: bbcvtx.c bbcsdl.h $(CXX) -c -O3 $< -o $@ bbcsdl.o: bbcsdl.c bbcsdl.h version.h $(CXX) -Wno-unused-result -c -O2 $< -o $@ SDL2_gfxPrimitives.o: SDL2_gfxPrimitives.c SDL2_gfxPrimitives.h $(CXX) -c -O2 $< -o $@ SDL2_rotozoom.o: SDL2_rotozoom.c SDL2_rotozoom.h SDL2_gfxPrimitives.h SDL_stbimage.h stb_image.h dr_mp3.h $(CXX) -c -Os -fPIC $< -o $@ flood.o: flood.c $(CXX) -c -O3 $< -o $@ ifeq ($(LBITS),64) bbdata.o: ../../src/bbdata_x86_64.nas nasm -f elf64 -s ../../src/bbdata_x86_64.nas -o bbdata.o else bbdata.o: ../../src/bbdata_x86_32.nas nasm -f elf32 -s ../../src/bbdata_x86_32.nas -o bbdata.o endif libstb.so: SDL2_rotozoom.o $(CXX) -shared -o libstb.so SDL2_rotozoom.o bbcsdl: $(OBJ) libstb.so $(CXX) $(OBJ) -lz -lstb -L . \ -o bbcsdl $(SDL_LIB) -Wl,-s -Wl,-R,'$$ORIGIN' -rdynamic cp bbcsdl ../../ cp libstb.so ../../ ================================================ FILE: bin/linux/mkicon.sh ================================================ #!/bin/bash MYDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" > /dev/null && pwd )" echo "[Desktop Entry] Name=BBC BASIC Comment=BBC BASIC for Linux Icon=$MYDIR/bbc256x.png Exec=\"$MYDIR/bbcsdl\" Type=Application Encoding=UTF-8 Terminal=false Categories=None;" > "$HOME/Desktop/bbcsdl.desktop" chmod +x "$HOME/Desktop/bbcsdl.desktop" ================================================ FILE: bin/macos/makefile ================================================ # Download pre-compiled frameworks to /Library/Frameworks/ # SDL2 from https://www.libsdl.org/download-2.0.php # SDL2_ttf from https://www.libsdl.org/projects/SDL_ttf/ # SDL2_net from https://www.libsdl.org/projects/SDL_net/ ARCH := $(shell uname -m) SDL_LIB = -L/usr/include -ldl -lm MIN_MACOS_VERSION = 10.7 VPATH = ../../src ../../include CXX = gcc -Wall -pthread -mmacosx-version-min=$(MIN_MACOS_VERSION) -F /Library/Frameworks -I ../../include ifeq ($(ARCH),arm64) OBJ_EXTRA = sort.o endif OBJ = bbmain.o bbexec.o bbeval.o bbcmos.o bbccli.o \ bbcvdu.o bbcvtx.o flood.o bbdata.o bbcsdl.o \ bbasmb.o bbctmp.o $(OBJ_EXTRA) all: bbcsdl clean: rm -f *.o bbcsdl libstb.dylib bbmain.o: bbmain.c BBC.h $(CXX) -c -O2 -ffast-math -fno-finite-math-only $< -o $@ bbexec.o: bbexec.c BBC.h $(CXX) -c -O2 -ffast-math -fno-finite-math-only $< -o $@ bbeval.o: bbeval.c BBC.h $(CXX) -Wno-array-bounds -c -O2 -ffast-math -fmath-errno -fno-finite-math-only $< -o $@ bbcmos.o: bbcmos.c bbcsdl.h $(CXX) -Wno-unused-result -Wno-array-bounds -c -msse2 -O2 $< -o $@ bbccli.o: bbccli.c bbcsdl.h $(CXX) -Wno-unused-result -c -Os $< -o $@ bbcvdu.o: bbcvdu.c bbcsdl.h $(CXX) -c -Os $< -o $@ bbcvtx.o: bbcvtx.c bbcsdl.h $(CXX) -c -O3 $< -o $@ bbcsdl.o: bbcsdl.c bbcsdl.h version.h $(CXX) -Wno-unused-result -c -O2 $< -o $@ bbctmp.o: bbctmp.m $(CXX) -c -Os $< -o $@ SDL2_gfxPrimitives.o: SDL2_gfxPrimitives.c SDL2_gfxPrimitives.h $(CXX) -c -O2 $< -o $@ SDL2_rotozoom.o: SDL2_rotozoom.c SDL2_rotozoom.h SDL2_gfxPrimitives.h SDL_stbimage.h stb_image.h dr_mp3.h $(CXX) -c -Os -fPIC $< -o $@ flood.o: flood.c $(CXX) -c -O3 $< -o $@ sort.o: sort.c $(CXX) -c -O3 $< -o $@ ifeq ($(ARCH),arm64) bbasmb.o: bbasmb_arm_64.c BBC.h $(CXX) -c -Os $< -o $@ BBDATA_COMPILE = clang -mmacosx-version-min=$(MIN_MACOS_VERSION) -c BBDATA_SRC = ../../src/bbdata_arm_64.s else bbasmb.o: bbasmb_x86_64.c BBC.h $(CXX) -c -Os $< -o $@ BBDATA_COMPILE = nasm --prefix _ -f macho64 -s BBDATA_SRC = ../../src/bbdata_x86_64.nas endif bbdata.o: $(BBDATA_SRC) $(BBDATA_COMPILE) $(BBDATA_SRC) -o bbdata.o libstb.dylib: SDL2_rotozoom.o SDL2_gfxPrimitives.o $(CXX) -dynamiclib -F/Library/Frameworks -framework SDL2 \ -o libstb.dylib SDL2_rotozoom.o SDL2_gfxPrimitives.o bbcsdl: $(OBJ) libstb.dylib $(CXX) $(OBJ) -lz -lstb -F/Library/Frameworks -L . \ -framework SDL2 -framework SDL2_ttf -framework SDL2_net \ -framework Foundation -Wl,-headerpad_max_install_names \ -o bbcsdl $(SDL_LIB) install_name_tool -add_rpath /Library/Frameworks bbcsdl install_name_tool -change libstb.dylib "@executable_path/libstb.dylib" bbcsdl cp bbcsdl ../../ cp libstb.dylib ../../ ================================================ FILE: bin/raspi/install-rpi.txt ================================================ Update your Raspberry Pi (recommended): sudo apt-get update sudo apt-get dist-upgrade Install SDL 2.0: sudo apt-get install libsdl2-2.0-0 sudo apt-get install libsdl2-ttf-2.0-0 sudo apt-get install libsdl2-net-2.0-0 sudo apt-get install mesa-utils chmod +x bbcsdl chmod +x mkicon.sh Enable the 'experimental' GL Driver (Raspberry Pi 3 only): sudo raspi-config Advanced Options... GL Driver... GL (Full KMS)... Ok... Finish To start BBC BASIC: ./bbcsdl To create a desktop shortcut: ./mkicon.sh RTR 09-May-2021 ================================================ FILE: bin/raspi/makefile ================================================ # Get SDL 2.0 from the Raspbian repository: # sudo apt-get install libsdl2-dev # sudo apt-get install libsdl2-ttf-dev # sudo apt-get install libsdl2-net-dev # sudo apt-get install libsdl2-2.0-0 # sudo apt-get install libsdl2-ttf-2.0-0 # sudo apt-get install libsdl2-net-2.0-0 SDL_LIB = -L/usr/lib/ -lSDL2 -lSDL2main -lSDL2_ttf -lSDL2_net -ldl -lm VPATH = ../../src ../../include CXX = gcc -Wall -pthread -I ../../include CXXFLAGS = -march=armv7-a -mthumb -munaligned-access -mfloat-abi=hard -c OBJ = bbmain.o bbexec.o bbeval.o bbcmos.o bbccli.o \ bbcvdu.o bbcvtx.o flood.o bbdata.o bbcsdl.o \ bbasmb.o SDL2_gfxPrimitives.o all: bbcsdl bbmain.o: bbmain.c BBC.h $(CXX) -Wno-attributes $(CXXFLAGS) -O2 -freg-struct-return -ffast-math -fno-finite-math-only $< -o $@ bbexec.o: bbexec.c BBC.h $(CXX) $(CXXFLAGS) -DARMHF -O2 -freg-struct-return -ffast-math -fno-finite-math-only $< -o $@ bbeval.o: bbeval.c BBC.h $(CXX) -Wno-array-bounds $(CXXFLAGS) -O2 -freg-struct-return -ffast-math -fmath-errno -fno-finite-math-only $< -o $@ bbasmb.o: bbasmb_arm_32.c BBC.h $(CXX) $(CXXFLAGS) -Os $< -o $@ bbcmos.o: bbcmos.c bbcsdl.h $(CXX) -Wno-unused-result -Wno-array-bounds $(CXXFLAGS) -mfpu=neon -O2 $< -o $@ bbccli.o: bbccli.c bbcsdl.h $(CXX) -Wno-unused-result $(CXXFLAGS) -Os $< -o $@ bbcvdu.o: bbcvdu.c bbcsdl.h $(CXX) $(CXXFLAGS) -DARMHF -Os $< -o $@ bbcvtx.o: bbcvtx.c bbcsdl.h $(CXX) $(CXXFLAGS) -O3 $< -o $@ bbcsdl.o: bbcsdl.c bbcsdl.h version.h $(CXX) -Wno-unused-result $(CXXFLAGS) -O2 $< -o $@ SDL2_gfxPrimitives.o: SDL2_gfxPrimitives.c SDL2_gfxPrimitives.h $(CXX) $(CXXFLAGS) -O2 $< -o $@ SDL2_rotozoom.o: SDL2_rotozoom.c SDL2_rotozoom.h SDL2_gfxPrimitives.h SDL_stbimage.h stb_image.h dr_mp3.h $(CXX) $(CXXFLAGS) -Os -fPIC $< -o $@ flood.o: flood.c $(CXX) $(CXXFLAGS) -O3 $< -o $@ bbdata.o: ../../src/bbdata_arm_32.s as ../../src/bbdata_arm_32.s -o bbdata.o libstb.so: SDL2_rotozoom.o $(CXX) -shared -o libstb.so SDL2_rotozoom.o bbcsdl: $(OBJ) libstb.so $(CXX) $(OBJ) -lz -lstb -L . \ $(SDL_LIB) -o bbcsdl -Wl,-s -Wl,-R,'$$ORIGIN' -rdynamic cp bbcsdl ../../ cp libstb.so ../../ ================================================ FILE: bin/raspi/mkicon.sh ================================================ #!/bin/bash MYDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" > /dev/null && pwd )" echo "[Desktop Entry] Name=BBC BASIC Comment=BBC BASIC for Raspberry Pi Icon=$MYDIR/bbc256x.png Exec=\"$MYDIR/bbcsdl\" Type=Application Encoding=UTF-8 Terminal=false Categories=None;" > "$HOME/Desktop/bbcsdl.desktop" chmod +x "$HOME/Desktop/bbcsdl.desktop" ================================================ FILE: bin/rpi64/install-rpi.txt ================================================ Update your Raspberry Pi (recommended): sudo apt-get update sudo apt-get dist-upgrade Install SDL 2.0: sudo apt-get install libsdl2-2.0-0 sudo apt-get install libsdl2-ttf-2.0-0 sudo apt-get install libsdl2-net-2.0-0 sudo apt-get install mesa-utils chmod +x bbcsdl chmod +x mkicon.sh Enable the 'experimental' GL Driver (Raspberry Pi 3 only): sudo raspi-config Advanced Options... GL Driver... GL (Full KMS)... Ok... Finish To start BBC BASIC: ./bbcsdl To create a desktop shortcut: ./mkicon.sh RTR 09-May-2021 ================================================ FILE: bin/rpi64/makefile ================================================ # Get SDL 2.0 from the Raspbian repository: # sudo apt-get install libsdl2-dev # sudo apt-get install libsdl2-ttf-dev # sudo apt-get install libsdl2-net-dev # sudo apt-get install libsdl2-2.0-0 # sudo apt-get install libsdl2-ttf-2.0-0 # sudo apt-get install libsdl2-net-2.0-0 SDL_LIB = -L/usr/lib/ -lSDL2 -lSDL2main -lSDL2_ttf -lSDL2_net -ldl -lm VPATH = ../../src ../../include CXX = gcc -Wall -pthread -I ../../include CXXFLAGS = -c OBJ = bbmain.o bbexec.o bbeval.o bbcmos.o bbccli.o \ bbcvdu.o bbcvtx.o flood.o bbdata.o bbcsdl.o \ bbasmb.o SDL2_gfxPrimitives.o sort.o all: bbcsdl bbmain.o: bbmain.c BBC.h $(CXX) -Wno-attributes $(CXXFLAGS) -O2 -freg-struct-return -ffast-math -fno-finite-math-only $< -o $@ bbexec.o: bbexec.c BBC.h $(CXX) $(CXXFLAGS) -O2 -freg-struct-return -ffast-math -fno-finite-math-only $< -o $@ bbeval.o: bbeval.c BBC.h $(CXX) -Wno-array-bounds $(CXXFLAGS) -O2 -freg-struct-return -ffast-math -fmath-errno -fno-finite-math-only $< -o $@ bbasmb.o: bbasmb_arm_64.c BBC.h $(CXX) $(CXXFLAGS) -Os $< -o $@ bbcmos.o: bbcmos.c bbcsdl.h $(CXX) -Wno-unused-result -Wno-array-bounds $(CXXFLAGS) -O2 $< -o $@ bbccli.o: bbccli.c bbcsdl.h $(CXX) -Wno-unused-result $(CXXFLAGS) -Os $< -o $@ bbcvdu.o: bbcvdu.c bbcsdl.h $(CXX) $(CXXFLAGS) -Os $< -o $@ bbcvtx.o: bbcvtx.c bbcsdl.h $(CXX) $(CXXFLAGS) -O3 $< -o $@ bbcsdl.o: bbcsdl.c bbcsdl.h version.h $(CXX) -Wno-unused-result $(CXXFLAGS) -O2 $< -o $@ SDL2_gfxPrimitives.o: SDL2_gfxPrimitives.c SDL2_gfxPrimitives.h $(CXX) $(CXXFLAGS) -O2 $< -o $@ SDL2_rotozoom.o: SDL2_rotozoom.c SDL2_rotozoom.h SDL2_gfxPrimitives.h SDL_stbimage.h stb_image.h dr_mp3.h $(CXX) $(CXXFLAGS) -Os -fPIC $< -o $@ flood.o: flood.c $(CXX) $(CXXFLAGS) -O3 $< -o $@ sort.o: sort.c $(CXX) $(CXXFLAGS) -O3 $< -o $@ bbdata.o: ../../src/bbdata_arm_64.s sed 's/_\([a-z]*\)/\1/g' <../../../BBCSDL/src/bbdata_arm_64.s >bbdata.s as bbdata.s -o bbdata.o libstb.so: SDL2_rotozoom.o $(CXX) -shared -o libstb.so SDL2_rotozoom.o bbcsdl: $(OBJ) libstb.so $(CXX) $(OBJ) -lz -lstb -L . \ $(SDL_LIB) -o bbcsdl -Wl,-s -Wl,-R,'$$ORIGIN' -rdynamic cp bbcsdl ../../ cp libstb.so ../../ ================================================ FILE: bin/wasm/BBC.h ================================================ /******************************************************************\ * BBC BASIC for SDL 2.0 (Emscripten / Web Assembly) * * Copyright (c) R. T. Russell, 2000-2022 * * * * BBC.h constant and variable declarations * * Version 1.28a, 23-Jan-2022 * \******************************************************************/ // Constants: #define STACK_NEEDED 512 #define ACCSLEN 65536 // Must be the same in bbcsdl.h // Sentinels: #define CALCHK 0xC3414C43 #define DIMCHK 0xC4494D43 #define FNCHK 0xC64E4348 #define FORCHK 0xC64F5243 #define GOSCHK 0xC74F5343 #define LDCHK 0xCC444348 #define LOCCHK 0xCC4F4343 #define ONCHK 0xCF4E4348 #define PROCHK 0xD0524F43 #define REPCHK 0xD2455043 #define RETCHK 0xD2455443 #define WHICHK 0xD7484943 // Tokens: #define TAND -128 #define TDIV -127 #define TEOR -126 #define TMOD -125 #define TOR -124 #define TERROR -123 #define TLINE -122 #define TOFF -121 #define TSTEP -120 #define TSPC -119 #define TTAB -118 #define TELSE -117 #define TTHEN -116 #define TLINO -115 #define TOPENIN -114 #define TPTRR -113 #define TPAGER -112 #define TTIMER -111 #define TLOMEMR -110 #define THIMEMR -109 #define TABS -108 #define TACS -107 #define TADVAL -106 #define TASC -105 #define TASN -104 #define TATN -103 #define TBGET -102 #define TCOS -101 #define TCOUNT -100 #define TDEG -99 #define TERL -98 #define TERR -97 #define TEVAL -96 #define TEXP -95 #define TEXTR -94 #define TFALSE -93 #define TFN -92 #define TGET -91 #define TINKEY -90 #define TINSTR -89 #define TINT -88 #define TLEN -87 #define TLN -86 #define TLOG -85 #define TNOT -84 #define TOPENUP -83 #define TOPENOUT -82 #define TPI -81 #define TPOINT -80 #define TPOS -79 #define TRAD -78 #define TRND -77 #define TSGN -76 #define TSIN -75 #define TSQR -74 #define TTAN -73 #define TTO -72 #define TTRUE -71 #define TUSR -70 #define TVAL -69 #define TVPOS -68 #define TCHR -67 #define TGETS -66 #define TINKEYS -65 #define TLEFT -64 #define TMID -63 #define TRIGHT -62 #define TSTR -61 #define TSTRING -60 #define TEOF -59 #define TSUM -58 #define TWHILE -57 #define TCASE -56 #define TWHEN -55 #define TOF -54 #define TENDCASE -53 #define TOTHERWISE -52 #define TENDIF -51 #define TENDWHILE -50 #define TPTRL -49 #define TPAGEL -48 #define TTIMEL -47 #define TLOMEML -46 #define THIMEML -45 #define TSOUND -44 #define TBPUT -43 #define TCALL -42 #define TCHAIN -41 #define TCLEAR -40 #define TCLOSE -39 #define TCLG -38 #define TCLS -37 #define TDATA -36 #define TDEF -35 #define TDIM -34 #define TDRAW -33 #define TEND -32 #define TENDPROC -31 #define TENVEL -30 #define TFOR -29 #define TGOSUB -28 #define TGOTO -27 #define TGCOL -26 #define TIF -25 #define TINPUT -24 #define TLET -23 #define TLOCAL -22 #define TMODE -21 #define TMOVE -20 #define TNEXT -19 #define TON -18 #define TVDU -17 #define TPLOT -16 #define TPRINT -15 #define TPROC -14 #define TREAD -13 #define TREM -12 #define TREPEAT -11 #define TREPORT -10 #define TRESTOR -9 #define TRETURN -8 #define TRUN -7 #define TSTOP -6 #define TCOLOUR -5 #define TTRACE -4 #define TUNTIL -3 #define TWIDTH -2 #define TOSCLI -1 #define TCIRCLE 1 #define TELLIPSE 2 #define TFILL 3 #define TMOUSE 4 #define TORIGIN 5 #define TQUIT 6 #define TRECT 7 #define TSWAP 8 #define TSYS 9 #define TTINT 10 #define TWAIT 11 #define TINSTALL 12 #define TPRIVATE 14 #define TBY 15 #define TEXIT 16 #define FUNTOK TLINO // first function token #define TOKLO TPTRR #define TOKHI THIMEMR #define OFFSIT TPTRL-TPTRR // Non-token statements: // * star command // = return from function // ( label // : separator // [ assembler // Bit names: #define BIT0 0x01 #define BIT1 0x02 #define BIT2 0x04 #define BIT3 0x08 #define BIT4 0x10 #define BIT5 0x20 #define BIT6 0x40 #define BIT7 0x80 // Flag bits: #define ESCFLG BIT7 // ESCape key pressed #define ESCDIS BIT6 // ESCape key disabled (*ESC OFF) #define ALERT BIT5 // Pending event interrupt #define FLASH BIT4 // MODE 7 flash update needed #define PHASE BIT3 // MODE 7 flash phase #define PAUSE BIT2 // In debug paused state #define SSTEP BIT1 // Single-step requested #define KILL BIT0 // Program wants to terminate // Special 32-bit 'pointer' type for BASIC's heap: #define STRIDE sizeof(void *) / sizeof(heapptr) typedef unsigned int heapptr ; // Structures and unions: typedef struct tagPARM { size_t i[16] ; double f[8] ; } PARM, *LPPARM ; // A variant holds an 80-bit long double, a 64-bit long long or a string descriptor. // n.b. GCC pads a long double to 16 bytes (128 bits) for alignment reasons but only // the least-significant 80-bits need to be stored on the heap, in files etc. // When a long double is 64-bits rather than 80-bits (e.g. ARM) it will be necessary // to force the type word (.i.t or .s.t member) to a value other than 0 or -1. typedef union __attribute__ ((packed)) __attribute__ ((aligned (4))) tagVAR { #if defined(__arm__) || defined(__aarch64__) || defined(__EMSCRIPTEN__) double f ; #else long double f ; #endif struct { long long n ; short t ; // = 0 } i ; struct { heapptr p ; // Assumed to be 32 bits unsigned int l ; // Must be unsigned for overflow tests in 'math' short t ; // = -1 } s ; struct { double d ; short t ; // unused (loadn/storen only) } d ; } VAR, *LPVAR ; // String descriptor: typedef struct __attribute__ ((packed)) __attribute__ ((aligned (4))) tagSTR { heapptr p ; // Assumed to be 32 bits int l ; } STR, *LPSTR ; typedef struct tagRND { unsigned int l ; unsigned char h ; } RND, *LPRND ; // Structure for linked list of string free space struct node { struct node *next ; char *data ; } ; typedef struct node node ; // Base address for 32-bit offsets into heap: #if defined(__x86_64__) || defined(__aarch64__) #define zero userRAM #define TMASK 31 #define STYPE 16 #define ATYPE 40 #else #define zero (void*) 0 #define TMASK 15 #define STYPE 24 #define ATYPE 4 #endif // Register globals: #ifdef __llvm__ extern signed char *esi ; // Program pointer extern heapptr *esp ; // Stack pointer #else #ifdef __i386__ register signed char *esi asm ("esi") ; // Program pointer register heapptr *esp asm ("edi") ; // Stack pointer #endif #ifdef __arm__ register signed char *esi asm ("r10") ; // Program pointer register heapptr *esp asm ("r11") ; // Stack pointer #endif #ifdef __x86_64__ register signed char *esi asm ("r12") ; // Program pointer register heapptr *esp asm ("r13") ; // Stack pointer #endif #ifdef __aarch64__ register signed char *esi asm ("r10") ; // Program pointer register heapptr *esp asm ("r11") ; // Stack pointer #endif #endif // Data locations (defined in bbcdata): extern int stavar[] ; // Static integer variables #define dynvar ((heapptr *)((char*)stavar + 108)) // Linked-list pointers #define fnptr ((heapptr *)((char*)stavar + 324)) // Pointer to user FuNctions #define proptr ((heapptr *)((char*)stavar + 328)) // Pointer to user PROCedures #define accs (*(char **)((char*)stavar + 332)) // String accumulator #define buff (*(char **)((char*)stavar + 336)) // Temporary line buffer #define vpage (*(heapptr *)((char*)stavar + 340)) // Value of PAGE #define tracen (*(unsigned short *)((char*)stavar + 344)) // TRACE maximum line number #define lomem (*(heapptr *)((char*)stavar + 348)) // Pointer to base of heap #define pfree (*(heapptr *)((char*)stavar + 352)) // Pointer to free space #define himem (*(heapptr *)((char*)stavar + 356)) // Pointer to top of stack #define libase (*(heapptr *)((char*)stavar + 360)) // Base of libraries #define errtxt (*(const char **)((char*)stavar + 364)) // Most recent error message #define onersp (*(heapptr **)((char*)stavar + 368)) // ON ERROR LOCAL stack pointer #define errtrp (*(heapptr *)((char*)stavar + 372)) // Pointer to ON ERROR handler #define datptr (*(heapptr *)((char*)stavar + 376)) // DATA pointer #define vcount (*(unsigned int *)((char*)stavar + 380)) // Character count since newline #define curlin (*(heapptr *)((char*)stavar + 384)) // Pointer to current line #define timtrp (*(heapptr *)((char*)stavar + 388)) // Pointer to ON TIME handler #define clotrp (*(heapptr *)((char*)stavar + 392)) // Pointer to ON CLOSE handler #define siztrp (*(heapptr *)((char*)stavar + 396)) // Pointer to ON MOVE handler #define systrp (*(heapptr *)((char*)stavar + 400)) // Pointer to ON SYS handler #define moutrp (*(heapptr *)((char*)stavar + 404)) // Pointer to ON MOUSE handler #define errlin (*(heapptr *)((char*)stavar + 408)) // Pointer to error line #define prand (*(LPRND)((char*)stavar + 412)) // Pseudo-random number #define vwidth (*(unsigned char *)((char*)stavar + 417))// Width for auto-newline #define errnum (*(unsigned char *)((char*)stavar + 418))// Error code number #define liston (*(unsigned char *)((char*)stavar + 419))// *FLOAT/*HEX/*LOWERCASE/OPT #define lstopt (*(char *)((char*)stavar + 444)) // LISTO value extern node *flist[] ; // String free-lists extern STR tmps ; // Temporary string descriptor extern unsigned char fvtab[] ; // Table of 'fast' variable types extern int vduvar[] ; // VDU variables #define modeno (*(char *)((char*)vduvar + 72)) // MODE number #define evtqw (*(unsigned char *)((char*)vduvar + 205)) // Event queue write pointer #define evtqr (*(unsigned char *)((char*)vduvar + 206)) // Event queue read pointer extern int sysvar[] ; // @ variables linked list #define memhdc (*(size_t *)((char*)sysvar + 12)) // SDL Renderer #define flags (*(unsigned char *)((char*)sysvar + 183))// BASIC's Boolean flags byte #define link00 (*(int *)((char*)sysvar + 490)) // Terminating link in @ list #define diradr (*(heapptr *)((char*)sysvar + 228)) #define dirlen (*(int *)((char*)sysvar + 232)) #define libadr (*(heapptr *)((char*)sysvar + 248)) #define liblen (*(int *)((char*)sysvar + 252)) #define cmdadr (*(heapptr *)((char*)sysvar + 268)) #define cmdlen (*(int *)((char*)sysvar + 272)) #define usradr (*(heapptr *)((char*)sysvar + 288)) #define usrlen (*(int *)((char*)sysvar + 292)) #define tmpadr (*(heapptr *)((char*)sysvar + 308)) #define tmplen (*(int *)((char*)sysvar + 312)) // Defined in bbcsdl.c: extern char *szCmdLine ; // @cmd$ extern char *szLoadDir ; // @dir$ extern char *szLibrary ; // @lib$ extern char *szUserDir ; // @usr$ extern char *szTempDir ; // @tmp$ extern const char szNotice [] ; extern void *progRAM ; extern void *userRAM ; // Alignment helper types: typedef __attribute__((aligned(1))) int unaligned_int; typedef __attribute__((aligned(1))) intptr_t unaligned_intptr_t; typedef __attribute__((aligned(1))) unsigned int unaligned_uint; typedef __attribute__((aligned(1))) unsigned short unaligned_ushort; typedef __attribute__((aligned(1))) void* unaligned_void_ptr; typedef __attribute__((aligned(1))) char* unaligned_char_ptr; typedef __attribute__((aligned(1))) VAR unaligned_VAR; // Helper macros to fix alignment problem: #define ILOAD(p) *((unaligned_int*)(p)) #define ISTORE(p,i) *((unaligned_int*)(p)) = i #define TLOAD(p) *((unaligned_intptr_t*)(p)) #define TSTORE(p,i) *((unaligned_intptr_t*)(p)) = i #define ULOAD(p) *((unaligned_uint*)(p)) #define USTORE(p,i) *((unaligned_uint*)(p)) = i #define SLOAD(p) *((unaligned_ushort*)(p)) #define SSTORE(p,i) *((unaligned_ushort*)(p)) = i #define VLOAD(p) *((unaligned_void_ptr*)(p)) #define VSTORE(p,i) *((unaligned_void_ptr*)(p)) = i #define CLOAD(p) *((unaligned_char_ptr*)(p)) #define CSTORE(p,i) *((unaligned_char_ptr*)(p)) = i #define NLOAD(p) *((unaligned_VAR*)(p)) #define NSTORE(p,i) *((unaligned_VAR*)(p)) = i ================================================ FILE: bin/wasm/bbcsdl.h ================================================ /******************************************************************\ * BBC BASIC for SDL 2.0 (Emscripten / Web Assembly) * * Copyright (c) R. T. Russell, 2000-2023 * * * * BBCSDL.H constant definitions * * Version 1.37a 28-Aug-2023 * \******************************************************************/ // System constants : #define ACCSLEN 65536 // Must be the same in BBC.h #define PAGE_OFFSET ACCSLEN + 0x21C00 // Offset of PAGE from memory base #define XSCREEN 2048 // Width of screen output texture #define YSCREEN 2048 // Height of screen output texture #define MAX_PORTS 4 // Maximum number of port channels #define MAX_FILES 8 // Maximum number of file channels #define MAX_LINE_LEN 2304 // At least 252*RECTANGLE + 4 #define MARGINL 1000 // Default left margin (mm * 100) #define MARGINR 1000 // Default right margin (mm * 100) #define MARGINT 1000 // Default top margin (mm * 100) #define MARGINB 1000 // Default bottom margin (mm * 100) #define SCREEN_WIDTH 640 // Initial width #define SCREEN_HEIGHT 500 // Initial height #define AUDIOLEN 441 * 4 // Length of audio block in bytes #define SOUNDQE 4 // Number of bytes per sound entry #define SOUNDQL 5*SOUNDQE // Number of bytes per channel #define MAX_EVENTS 512 // Maximum SDL events to queue #define MAX_TEMPO 10 // Maximum (slowest) *TEMPO setting // User-defined message IDs: #define WM_APP 0x8000 #define WMU_REALLOC WM_APP+4 // must be the same in BBCEQUS.INC #define WMU_WAVEOPEN WM_APP+5 // must be the same in BBCEQUS.INC #define WMU_WAVECLOSE WM_APP+6 // must be the same in BBCEQUS.INC #define WMU_TIMER WM_APP+26 // Custom user-event IDs: #define EVT_VDU 0x2000 // Send a VDU command #define EVT_COPYKEY 0x2001 // Handle 'copy key' actions #define EVT_TINT 0x2002 // Get RGB pixel value #define EVT_DISPLAY 0x2003 // *DISPLAY command #define EVT_PIXELS 0x2004 // Read back pixels #define EVT_CARET 0x2005 // Get text caret coordinates #define EVT_FONT 0x2006 // Open a font #define EVT_CHAR 0x2007 // Get character at text x,y #define EVT_WIDTH 0x2008 // Get width of a string #define EVT_REFLAG 0x2009 // Update refresh flag #define EVT_SYSCALL 0x200A // Call in GUI thread context #define EVT_QUIT 0x200B // Terminate with exit code #define EVT_MOUSE 0x200C // Get mouse position/buttons #define EVT_MOUSETO 0x200D // Move mouse pointer #define EVT_OSK 0x200E // En/disable On Screen Keyboard #define EVT_OSWORD 0x200F // OSWORD call #define EVT_TIMER 0x2010 // Set new timer period #define EVT_FSSYNC 0x2011 // Sync filesystem (Emscripten) #define EVT_RUNJS 0x2012 // Run Javascript (Emscripten) // Bit names: #define BIT0 0x01 #define BIT1 0x02 #define BIT2 0x04 #define BIT3 0x08 #define BIT4 0x10 #define BIT5 0x20 #define BIT6 0x40 #define BIT7 0x80 // Bits in [vflags]: #define IOFLAG BIT0 // Insert/overtype #define EGAFLG BIT1 // EGA-compatible modes (*EGA [ON]) #define CGAFLG BIT2 // CGA-compatible modes (*EGA OFF) #define PTFLAG BIT3 // VDU 2 active #define HRGFLG BIT4 // VDU 5 active #define VDUDIS BIT5 // VDU 21 active #define UFONT BIT6 // User font selected #define UTF8 BIT7 // UTF-8 mode selected // Bits in flags byte: #define ESCFLG 0x80 #define ESCDIS 0x40 #define ALERT 0x20 #define FLASH 0x10 #define PHASE 0x08 #define PAUSE 0x04 #define SSTEP 0x02 #define KILL 0x01 // BASIC tokens: #define TOK_ELSE -117 #define TOK_THEN -116 #define TOK_LINENO -115 #define TOK_FN -92 #define TOK_WHILE -57 #define TOK_CASE -56 #define TOK_WHEN -55 #define TOK_ENDCASE -53 #define TOK_OTHERWISE -52 #define TOK_ENDIF -51 #define TOK_ENDWHILE -50 #define TOK_CALL -42 #define TOK_DATA -36 #define TOK_DEF -35 #define TOK_FOR -29 #define TOK_GOSUB -28 #define TOK_GOTO -27 #define TOK_IF -25 #define TOK_LOCAL -22 #define TOK_NEXT -19 #define TOK_ON -18 #define TOK_PROC -14 #define TOK_READ -13 #define TOK_REM -12 #define TOK_REPEAT -11 #define TOK_RUN -7 #define TOK_UNTIL -3 #define TOK_EXIT 16 #define TOKLO -113 // first token with left and right forms #define TOKHI -109 // last token with left and right forms #define OFFSIT 64 // offset from 'right' to 'left' form // Special 32-bit 'pointer' type for BASIC's heap: typedef unsigned int heapptr ; // Structures and unions: typedef struct tagPARM { size_t i[16] ; double f[8] ; } PARM, *LPPARM ; typedef struct tagFCB { unsigned char p ; // pointer unsigned char o ; // offset (0-256) unsigned char w ; // written (0-256) signed char f ; // bit0: offset<>0, bit7: written<>0 } FCB, *LPFCB ; typedef struct tagRND { unsigned int l ; unsigned char h ; } RND, *LPRND ; // Static variables: extern int stavar[] ; // Static integer variables #define accs (*(char **)((char*)stavar + 332)) // String accumulator #define buff (*(char **)((char*)stavar + 336)) // Temporary line buffer #define vcount (*(unsigned int *)((char*)stavar + 380)) // Character count since newline #define curlin (*(heapptr *)((char*)stavar + 384)) #define timtrp (*(heapptr *)((char*)stavar + 388)) #define clotrp (*(heapptr *)((char*)stavar + 392)) #define siztrp (*(heapptr *)((char*)stavar + 396)) #define systrp (*(heapptr *)((char*)stavar + 400)) #define moutrp (*(heapptr *)((char*)stavar + 404)) #define prand (*(LPRND)((char*)stavar + 412)) // Pseudo-random number #define liston (*(unsigned char *)((char*)stavar + 419))// *FLOAT/*HEX/*LOWERCASE/OPT #define path (*(char**)((char*)stavar + 420)) // File path buffer #define keystr (*(char ***)((char*)stavar + 424)) // Pointers to user *KEY strings #define keybdq (*(char **)((char*)stavar + 428)) // Keyboard queue (indirect) #define eventq (*(int **)((char*)stavar + 432)) // Event queue (indirect) #define keyptr (*(unsigned char **)((char*)stavar + 436))// Pointer to *KEY string #define usrchr (*(char **)((char*)stavar + 440)) // Pointer to user-defined chars #define lstopt (*(char *)((char*)stavar + 444)) #define sclflg (*(char *)((char*)stavar + 445)) #define optval (*(unsigned char *)((char*)stavar + 446))// I/O redirection #define farray (*(unsigned char *)((char*)stavar + 447))// @hfile%() number of dimensions #define fasize (*(unsigned int *)((char*)stavar + 448)) // @hfile%() number of elements #define filbuf ((void**)((char*)stavar + 452)) // @hfile%(0) #define fcbtab ((FCB *)((char*) stavar + 504)) // fcbtab[] #define spchan (*(SDL_RWops **)((char*)stavar + 536)) // SPOOL channel #define exchan (*(SDL_RWops **)((char*)stavar + 540)) // EXEC channel #define sacc ((unsigned int *)((char*)stavar + 544)) // Sound DDS accumulators #define smix ((short *)((char*)stavar + 560)) // Stereo mix for each channel #define datend ((char*)stavar + 576) // End of initialised variables // VDU variables allocated in bbdata_wasm32.c: extern int vduvar[] ; // VDU variables #define origx (*(int *)((char*)vduvar + 0)) // Graphics x-origin (BASIC units) #define origy (*(int *)((char*)vduvar + 4)) // Graphics y-origin (BASIC units) #define lastx (*(int *)((char*)vduvar + 8)) // Current x-coordinate (pixels) #define lasty (*(int *)((char*)vduvar + 12)) // Current y-coordinate (pixels) #define prevx (*(int *)((char*)vduvar + 16)) // Previous x-coordinate (pixels) #define prevy (*(int *)((char*)vduvar + 20)) // Previous y-coordinate (pixels) #define textwl (*(int *)((char*)vduvar + 24)) // Text window left (pixels) #define textwr (*(int *)((char*)vduvar + 28)) // Text window right (pixels) #define textwt (*(int *)((char*)vduvar + 32)) // Text window top (pixels) #define textwb (*(int *)((char*)vduvar + 36)) // Text window bottom (pixels) #define pixelx (*(int *)((char*)vduvar + 40)) // Width of a graphics 'dot' #define pixely (*(int *)((char*)vduvar + 44)) // Height of a graphics 'dot' #define textx (*(int *)((char*)vduvar + 48)) // Text caret x-position (pixels) #define texty (*(int *)((char*)vduvar + 52)) // Text caret y-position (pixels) #define hfont (*(TTF_Font **)((char*)vduvar + 56)) // Handle of current font #define hrect (*(SDL_Rect **)((char*)vduvar + 60)) // Pointer to clipping rect #define forgnd (*(short *)((char*)vduvar + 64)) // Graphics foreground colour/action #define bakgnd (*(short *)((char*)vduvar + 66)) // Graphics background colour/action #define cursa (*(unsigned char *)((char*)vduvar + 68)) // Start (top) line of caret #define cursb (*(unsigned char *)((char*)vduvar + 69)) // Finish (bottom) line of caret #define txtfor (*(char *)((char*)vduvar + 70)) // Text foreground colour index #define txtbak (*(char *)((char*)vduvar + 71)) // Text background colour index #define modeno (*(signed char *)((char*)vduvar + 72)) // MODE number (can be -1) #define colmsk (*(char *)((char*)vduvar + 73)) // Mask for maximum number of colours #define vflags (*(unsigned char *)((char*)vduvar + 74)) // VDU drivers flags byte #define scroln (*(signed char*)((char*)vduvar + 75)) // Scroll counter in paged mode #define cursx (*(unsigned char *)((char*)vduvar + 76)) // Cursor (caret) width #define lthick (*(unsigned char *)((char*)vduvar + 77)) // Line thickness #define cmcflg (*(char *)((char*)vduvar + 78)) // Cursor movement control #define tweak (*(signed char *)((char*)vduvar + 79)) // Character spacing adjustment #define sndqw ((unsigned char *)((char*)vduvar + 80)) // Sound queue write pointers #define sndqr ((unsigned char *)((char*)vduvar + 84)) // Sound queue read pointers #define eenvel ((signed char *)((char*)vduvar + 88)) // Sound envelope numbers #define escale ((unsigned char *)((char*)vduvar + 92)) // Envelope scalers #define epsect ((unsigned char *)((char*)vduvar + 96)) // Envelope pitch section #define easect ((unsigned char *)((char*)vduvar + 100)) // Envelope amplitude section #define epitch ((unsigned char *)((char*)vduvar + 104)) // Envelope pitch (frequency) #define ecount ((unsigned char *)((char*)vduvar + 108)) // Envelope count #define soundq ((unsigned char *)((char*)vduvar + 112)) // 4*SOUNDQL = 80 #define vduq ((unsigned char *)((char*)vduvar + 192)) // VDU queue (different from asm version) #define queue (*(unsigned char *)((char*)vduvar + 202))// VDU queue status #define kbdqw (*(unsigned char *)((char*)vduvar + 203))// Keyboard queue write pointer #define kbdqr (*(unsigned char *)((char*)vduvar + 204))// Keyboard queue read pointer #define evtqw (*(unsigned char *)((char*)vduvar + 205))// Event queue write pointer #define evtqr (*(unsigned char *)((char*)vduvar + 206))// Event queue read pointer #define keyexp (*(unsigned char *)((char*)vduvar + 207))// *KEY expansion counter #define sizex (*(int *)((char*)vduvar + 208)) // Total width of client area (pixels) #define sizey (*(int *)((char*)vduvar + 212)) // Total height of client area (pixels) #define charx (*(int *)((char*)vduvar + 216)) // Average character width (pixels) #define chary (*(int *)((char*)vduvar + 220)) // Average character height (pixels) #define prchx (*(int *)((char*)vduvar + 224)) // Average character width (printer) #define prchy (*(int *)((char*)vduvar + 228)) // Average character height (printer) #define timoff (*(int *)((char*)vduvar + 232)) // Offset to add to TickCount #define envels (*(signed char **)((char*)vduvar + 236)) // Pointer to ENVELOPEs (16 x 16) #define waves (*(short **)((char*)vduvar + 240)) // Pointer to SOUND waveforms #define elevel ((unsigned char*)((char*)vduvar+244)) // Envelope level (amplitude) #define prntx (*(int *)((char*)vduvar + 248)) // Horizontal printing position #define prnty (*(int *)((char*)vduvar + 252)) // Vertical printing position extern unsigned char bbcfont[] ; extern unsigned short ttxtfont[] ; extern int lastick ; // To test for TIME wrapping // System variables: extern int sysvar[] ; // @ variables linked list #define memhdc (*(SDL_Renderer **)((char*)sysvar + 12)) // @memhdc% #define wParam (*(int *)((char*)sysvar + 28)) // @wparam% #define lParam (*(int *)((char*)sysvar + 44)) // @lparam% #define hwndProg (*(SDL_Window **)((char*)sysvar + 60)) // @hwnd% #define offsetx (*(int *)((char*)sysvar + 88)) // @ox% #define offsety (*(int *)((char*)sysvar + 100)) // @oy% #define iMsg (*(int *)((char*)sysvar + 132)) // @msg% #define tempo (*(unsigned char *)((char*)sysvar + 180))// @flags% #define sysflg (*(char *)((char*)sysvar + 181)) // *SYS flag #define reflag (*(char *)((char*)sysvar + 182)) // *REFRESH flag #define flags (*(unsigned char *)((char*)sysvar + 183))// BASIC's Boolean flags byte #define zoom (*(unsigned int *)((char*)sysvar + 212)) // @zoom% #define hwo (*(SDL_AudioDeviceID *)((char*)sysvar + 328)) // @hwo% #define platform (*(unsigned int *)((char*)sysvar + 348)) // SDL version and OS platform #define chrmap (*(short **)((char*)sysvar + 364)) // @chrmap% #define panx (*(int *)((char*)sysvar + 380)) // @panx% #define pany (*(int *)((char*)sysvar + 396)) // @pany% #define breakpt (*(heapptr *)((char*)sysvar + 448)) // @brkpt% #define breakhi (*(heapptr *)((char*)sysvar + 464)) // @brkhi% #define voices ((unsigned char *)((char*)sysvar + 508)) // Voice (waveform) for each channel // Variables declared in bbcsdl.c: extern SDL_Rect ClipRect ; extern int bChanged ; extern SDL_Texture *TTFcache[65536] ; extern unsigned int palette[256] ; extern size_t iResult ; // Result from user event extern int nUserEv ; // Number of pending user events extern int OSKtime ; // On-screen keyboard timeout extern SDL_sem *Sema4 ; // Semaphore for user event wait extern SDL_mutex *Mutex ; // Mutex to protect event queue extern void *userRAM ; // Base of user memory extern void *progRAM ; // Default LOMEM extern void *userTOP ; // Default HIMEM extern const char szVersion[] ; // Initial announcement extern const char szNotice[] ; // Copyright string extern int bChanged ; // Display refresh required extern SDL_Joystick *Joystick ; // Handle to joystick extern SDL_TimerID UserTimerID ; extern int bBackground ; // BBC BASIC in the background extern int useGPA ; // Use SDL_GL_GetProcAddress ================================================ FILE: bin/wasm/bbcsdl_shell.html ================================================ Emscripten-Generated Code
Downloading...
{{{ SCRIPT }}} ================================================ FILE: bin/wasm/makefile ================================================ # Requires Python and the Emscripten SDK to be installed. VPATH = ../BBCSDL/src ../BBCSDL/include CXX = emcc -s USE_PTHREADS=1 -s USE_SDL=2 -s USE_SDL_TTF=2 -s USE_SDL_NET=2 \ -I . -I ../BBCSDL/include -pthread -Wall -Wno-pthreads-mem-growth LXX = emcc -s USE_PTHREADS=1 -s USE_SDL=2 -s USE_SDL_TTF=2 -s USE_SDL_NET=2 -s MAXIMUM_MEMORY=1gb \ -s PTHREAD_POOL_SIZE=2 -s ALLOW_MEMORY_GROWTH=1 -s WASM=1 -s ASSERTIONS=0 -s STACK_SIZE=5MB \ -I . -I ../BBCSDL/include -pthread -Wall -Wno-pthreads-mem-growth OBJ = bbmain.o bbexec.o bbeval.o bbcmos.o bbccli.o \ bbcvdu.o bbcvtx.o flood.o sort.o bbdata.o bbcsdl.o \ bbasmb.o SDL2_gfxPrimitives.o SDL2_rotozoom.o all: bbcsdl.html bbmain.o: bbmain.c BBC.h $(CXX) -c -O3 -ffast-math -fno-finite-math-only $< -o $@ bbexec.o: bbexec.c BBC.h $(CXX) -c -O3 -ffast-math -fno-finite-math-only $< -o $@ bbeval.o: bbeval.c BBC.h $(CXX) -c -O3 -ffast-math -fmath-errno -fno-finite-math-only $< -o $@ bbasmb.o: bbasmb_wasm32.c BBC.h $(CXX) -c -Os $< -o $@ bbcmos.o: bbcmos.c bbcsdl.h $(CXX) -c -O3 $< -o $@ bbccli.o: bbccli.c bbcsdl.h $(CXX) -c -Os $< -o $@ bbcvdu.o: bbcvdu.c bbcsdl.h $(CXX) -c -Os $< -o $@ bbcvtx.o: bbcvtx.c bbcsdl.h $(CXX) -c -O3 $< -o $@ bbcsdl.o: bbcsdl.c bbcsdl.h version.h $(CXX) -Wno-unused-value -c -O3 $< -o $@ SDL2_gfxPrimitives.o: SDL2_gfxPrimitives.c SDL2_gfxPrimitives.h $(CXX) -c -O3 $< -o $@ SDL2_rotozoom.o: SDL2_rotozoom.c SDL2_rotozoom.h SDL2_gfxPrimitives.h SDL_stbimage.h stb_image.h $(CXX) -c -Os $< -o $@ flood.o: flood.c $(CXX) -c -O3 $< -o $@ sort.o: sort.c $(CXX) -c -O3 $< -o $@ bbdata.o: bbdata_wasm32.c $(CXX) -c $< -o $@ bbcsdl.html: $(OBJ) Box2D231.o bbcsdl_shell.html $(LXX) -O3 --emrun --no-heap-copy --shell-file bbcsdl_shell.html $(OBJ) Box2D231.o \ -lidbfs.js -o bbcsdl.html --preload-file examples/ --preload-file lib/ index.html: $(OBJ) Box2D231.o bbcsdl_shell.html $(LXX) -O3 --emrun --no-heap-copy --shell-file bbcsdl_shell.html $(OBJ) Box2D231.o \ -lidbfs.js -o index.html ================================================ FILE: bin/wasm/readme.txt ================================================ If you get a build failure like: 'AssertionError: attempt to lock the cache while a parent process is holding the lock' build the individual ports separately using: embuilder build sdl2-mt embuilder build sdl2_net embuilder build sdl2_ttf ================================================ FILE: bin/win32/makefile ================================================ # Update these paths as necessary to match your installation SDL_LIB = -LC:/SDL2-2.26.2/i686-w64-mingw32/lib -lSDL2main -lSDL2 \ -LC:/SDL2_ttf-2.20.2/i686-w64-mingw32/lib -lSDL2_ttf \ -LC:/SDL2_net-2.2.0/i686-w64-mingw32/lib -lSDL2_net SDL_INCLUDE = -IC:/SDL2-2.26.2/i686-w64-mingw32/include/ \ -IC:/SDL2_ttf-2.20.2/i686-w64-mingw32/include/ \ -IC:/SDL2_net-2.2.0/i686-w64-mingw32/include/ VPATH = ../../src ../../include CXX = gcc -Wall -I ../../include OBJ = bbmain.o bbexec.o bbeval.o bbcmos.o bbccli.o \ bbcvdu.o bbcvtx.o flood.o bbdata.o bbcsdl.o \ bbasmb.o SDL2_gfxPrimitives.o SDL2_rotozoom.o all: bbcsdl.exe sdlrun.exe bbmain.o: bbmain.c BBC.h $(CXX) -c -O2 -freg-struct-return -ffast-math -fno-finite-math-only $< -o $@ bbexec.o: bbexec.c BBC.h $(CXX) -c -O2 -freg-struct-return -ffast-math -fno-finite-math-only $< -o $@ bbeval.o: bbeval.c BBC.h $(CXX) -Wno-array-bounds -c -O2 -freg-struct-return -ffast-math -fmath-errno -fno-finite-math-only $< -o $@ # TODO: Need bbasmb_x86_32 assembler!! bbasmb.o: bbasmb_arm_v6m.c BBC.h $(CXX) -c -Os $< -o $@ bbcmos.o: bbcmos.c bbcsdl.h $(CXX) -Wno-array-bounds -c $(SDL_INCLUDE) -msse2 -O2 $< -o $@ bbccli.o: bbccli.c bbcsdl.h $(CXX) -c $(SDL_INCLUDE) -Os $< -o $@ bbcvdu.o: bbcvdu.c bbcsdl.h $(CXX) -c $(SDL_INCLUDE) -Os $< -o $@ bbcvtx.o: bbcvtx.c bbcsdl.h $(CXX) -c $(SDL_INCLUDE) -O3 $< -o $@ bbcsdl.o: bbcsdl.c bbcsdl.h version.h $(CXX) -c -Wno-unused-value $(SDL_INCLUDE) -O2 $< -o $@ SDL2_gfxPrimitives.o: SDL2_gfxPrimitives.c SDL2_gfxPrimitives.h $(CXX) -c $(SDL_INCLUDE) -O2 $< -o $@ SDL2_rotozoom.o: SDL2_rotozoom.c SDL2_rotozoom.h SDL2_gfxPrimitives.h SDL_stbimage.h stb_image.h dr_mp3.h $(CXX) -c $(SDL_INCLUDE) -Os $< -o $@ flood.o: flood.c $(CXX) -c $(SDL_INCLUDE) -O3 $< -o $@ bbdata.o: ../../src/bbdata_x86_32.nas nasm --prefix _ -f win32 -s ../../src/bbdata_x86_32.nas -o bbdata.o bbcsdl.exe: $(OBJ) $(CXX) $(OBJ) \ -o bbcsdl.exe -lz -lmingw32 -lpsapi -mthreads -mwindows $(SDL_LIB) -Wl,-s -Wl,--export-all-symbols sdlrun.o: sdlrun.c $(CXX) -Wall -c -O2 $< -o $@ unpack32.o: unpack32.nas nasm --prefix _ -f win32 -s unpack32.nas -o unpack32.o sdlrun.exe: sdlrun.o unpack32.o $(CXX) sdlrun.o unpack32.o -o sdlrun.exe -lmingw32 -mwindows -Wl,-s ================================================ FILE: bin/win32/sdlrun.c ================================================ /******************************************************************\ * BBC BASIC for SDL 2.0 (Windows edition) * * Copyright (c) R. T. Russell, 2024 * * * * Version 1.4, 15-Nov-2024 * \******************************************************************/ #include #include #include #include #include "version.h" #ifdef __x86_64__ #define SECURITY_PTR 0x128 #else #define SECURITY_PTR 0x118 #endif #define STACK_NEEDED 0x400 // Functions in BBCUPCK.NAS void WINAPI unpack (HANDLE, char*, int, DWORD*, int) ; BOOL WINAPI verify (HANDLE, char*, int) ; // Structure declaration typedef struct tagPROGINFO { int DefaultRAM ; int Library ; int WindowWidth ; int WindowHeight ; int CmdShow ; int Flags ; unsigned int SerialNumber ; int ProgLength ; } PROGINFO, *LPPROGINFO ; int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow) { char szAppName[_MAX_PATH] ; char szLoadDir[_MAX_PATH] ; char szTempDir[_MAX_PATH] ; char szLibrary[_MAX_PATH] ; char szBinaries[_MAX_PATH] ; char szFileName[_MAX_PATH] ; char szEmptyFile[_MAX_PATH] ; PROGINFO ProgInfo ; SHFILEOPSTRUCT shfo = {0} ; SHELLEXECUTEINFOA sei = {0} ; HANDLE ThisFile, EmbedFile ; int signature, offset ; int embedsize, remain, dirlen, liblen ; BOOL anyresources = 0 ; DWORD nRead ; char *nameptr ; void *pBuffer ; // Get the path to this file and open it: GetModuleFileName (NULL, szFileName, _MAX_PATH) ; ThisFile = CreateFile (szFileName, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL) ; // It shouldn't be possible for the file not to exist: if (ThisFile == INVALID_HANDLE_VALUE) return 1; // Discover if there is a signature and if so where it is: SetFilePointer (ThisFile, SECURITY_PTR, NULL, FILE_BEGIN) ; ReadFile (ThisFile, &signature, sizeof(int), &nRead, NULL) ; if (signature != 0) nRead = FILE_BEGIN ; else nRead = FILE_END ; // Read the ProgInfo structure either from the end or just before the signature: offset = SetFilePointer (ThisFile, signature-sizeof(PROGINFO), NULL, nRead) ; ReadFile (ThisFile, &ProgInfo, sizeof(PROGINFO), &nRead, NULL) ; // Quit if there are no embedded files: if ((ProgInfo.Library <= 0) || (ProgInfo.Library >= offset)) { CloseHandle (ThisFile) ; return 0 ; } // Find directory containing this file: GetFullPathName (szFileName, _MAX_PATH, szLoadDir, &nameptr) ; *nameptr = '\0' ; dirlen = strlen (szLoadDir) ; // Get the path to the temporary directory: GetTempPath (_MAX_PATH, szTempDir) ; // Set the path to the binaries subdirectory and create it: GetTempFileName (szTempDir, "BBC", 0, szBinaries) ; DeleteFile (szBinaries) ; CreateDirectory (szBinaries, NULL) ; strcat (szBinaries, "\\") ; // Set the path to the libraries subdirectory (but don't create it): strcpy (szLibrary, szBinaries) ; strcat (szLibrary, "lib\\") ; liblen = strlen (szLibrary) ; // Set the path to an empty file bin\$ (but don't create it): strcpy (szEmptyFile, szBinaries) ; strcat (szEmptyFile, "$") ; // Allocate a buffer to hold the uncompressed data: pBuffer = malloc (ProgInfo.DefaultRAM) ; if (pBuffer == NULL) return 2 ; // For each of the embedded files: int embedptr = offset - ProgInfo.ProgLength - ProgInfo.Library ; while (embedptr < (offset - ProgInfo.ProgLength)) { int len ; char type ; SetFilePointer (ThisFile, embedptr, NULL, FILE_BEGIN) ; ReadFile (ThisFile, &type, 1, &nRead, NULL) ; ReadFile (ThisFile, &embedsize, 4, &nRead, NULL) ; ReadFile (ThisFile, szFileName, _MAX_PATH, &nRead, NULL) ; len = strlen(szFileName) ; embedptr += len + 6 ; // type == 0/1 for @dir$, type == 2/3 for @dir$\bin\lib if (type & 2) { memmove (szFileName + liblen, szFileName, len + 1) ; memcpy (szFileName, szLibrary, liblen) ; } else { memmove (szFileName + dirlen, szFileName, len + 1) ; memcpy (szFileName, szLoadDir, dirlen) ; anyresources = 1 ; } // Check if the file already exists: EmbedFile = CreateFile (szFileName, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL) ; // If it does, verify the existing contents against the embedded data: if (EmbedFile != INVALID_HANDLE_VALUE) { int diff = 0 ; SetFilePointer (ThisFile, embedptr, NULL, FILE_BEGIN) ; while ((diff == 0) && ((remain = embedptr + embedsize - SetFilePointer (ThisFile, 0, NULL, FILE_CURRENT)) > 0)) { nRead = ProgInfo.SerialNumber ; unpack (ThisFile, pBuffer, min(remain, ProgInfo.DefaultRAM), &nRead, type) ; diff = verify (EmbedFile, pBuffer, nRead) ; } CloseHandle (EmbedFile) ; if (diff) EmbedFile = INVALID_HANDLE_VALUE ; } // If the file doesn't exist OR is different from the existing one, create it: if (EmbedFile == INVALID_HANDLE_VALUE) { CloseHandle (CreateFile (szEmptyFile, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, NULL)) ; shfo.hwnd = (HWND) 1 ; // Any non-zero value! shfo.wFunc = FO_MOVE ; shfo.pFrom = szEmptyFile ; shfo.pTo = szFileName ; shfo.fFlags = FOF_SILENT | FOF_NOCONFIRMATION | FOF_NOCONFIRMMKDIR ; *(szFileName + strlen(szFileName) + 1) = '\0' ; *(szEmptyFile + strlen(szEmptyFile) + 1) = '\0' ; SHFileOperation (&shfo) ; // Create directory if necessary EmbedFile = CreateFile (szFileName, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, NULL) ; if (EmbedFile == INVALID_HANDLE_VALUE) { MessageBox(NULL, szFileName, "SDLRUN: Cannot create file", 0); return 3 ; } SetFilePointer (ThisFile, embedptr, NULL, FILE_BEGIN) ; while ((remain = embedptr + embedsize - SetFilePointer (ThisFile, 0, NULL, FILE_CURRENT)) > 0) { nRead = ProgInfo.SerialNumber ; unpack (ThisFile, pBuffer, min(remain, ProgInfo.DefaultRAM), &nRead, type) ; WriteFile (EmbedFile, pBuffer, nRead, &nRead, NULL) ; } CloseHandle (EmbedFile) ; } embedptr += embedsize ; } free (pBuffer) ; ReadFile (ThisFile, szAppName, _MAX_PATH, &nRead, NULL) ; CloseHandle (ThisFile) ; // Get path to program .bbc file and hide it: if (anyresources) strcpy (szFileName, szLoadDir) ; else strcpy (szFileName, szBinaries) ; strcat (szFileName, szAppName) ; strcat (szFileName, ".bbc") ; SetFileAttributes (szFileName, FILE_ATTRIBUTE_HIDDEN) ; // Enclose in quotes in case embedded space(s): strcpy (szEmptyFile, "\042") ; strcat (szEmptyFile, szFileName) ; strcat (szEmptyFile, "\042 ") ; strcat (szEmptyFile, szCmdLine) ; // Run BBCSDL: strcpy (szLibrary, szBinaries) ; strcat (szLibrary, "bbcsdl.exe") ; /// ShellExecute ((HWND) 0, "open", szLibrary, szEmptyFile, szLoadDir, ProgInfo.CmdShow) ; sei.cbSize = sizeof(sei) ; sei.fMask = SEE_MASK_NOCLOSEPROCESS ; sei.hwnd = NULL ; sei.lpVerb = "open" ; sei.lpFile = szLibrary ; sei.lpParameters = szEmptyFile ; sei.lpDirectory = szLoadDir ; sei.nShow = ProgInfo.CmdShow ; ShellExecuteEx (&sei) ; // Wait for process to finish: if (sei.hProcess) { DWORD res ; do res = WaitForSingleObject (sei.hProcess, 1000) ; while (res == WAIT_TIMEOUT) ; CloseHandle (sei.hProcess) ; } // Delete the binaries directory and all the files it contains: *(szBinaries + strlen(szBinaries) + 1) = '\0' ; shfo.hwnd = (HWND) 1 ; // Any non-zero value! shfo.pFrom = szBinaries ; shfo.wFunc = FO_DELETE ; shfo.fFlags = FOF_SILENT | FOF_NOCONFIRMATION | FOF_NOCONFIRMMKDIR ; SHFileOperation (&shfo) ; return 0 ; } ================================================ FILE: bin/win32/unpack32.nas ================================================ ;/*****************************************************************\ ;* BBC BASIC for SDL 2.0 (Windows edition) * ;* Copyright (c) R. T. Russell, 2023 * ;* aPLib courtesy of Joergen Ibsen, www.ibsensoftware.com * ;* * ;* UNPACK.NAS Compressed file unpacker (32-bit version) * ;\*****************************************************************/ ; GLOBAL unpack@20,verify@12 EXTERN ReadFile@20,SetFilePointer@16 ; SEGMENT .text ; BUFSIZ EQU 512 ; verify@12: pushad mov ebp,esp ; Save stack pointer mov edi,[ebp+40] ; Data pointer mov ecx,[ebp+44] ; Data size (bytes) mov ebx,-BUFSIZ ; V1.1 and esp,ebx ; Align neg ebx ; mask -> BUFSIZ sub esp,ebx ; Make space on stack mov esi,esp ; Buffer pointer vloop: mov eax,ecx ; Get remaining size cmp eax,ebx ; Remaining > BUFSIZ ? jbe vloop1 mov eax,ebx ; If so, use BUFSIZ vloop1: push eax ; Save bytes to load/compare push ecx ; Save bytes remaining push eax ; Make space for NumberOfBytesRead mov ecx,esp mov edx,[ebp+36] ; File handle push byte 0 ; lpOverlapped push ecx ; lpNumberOfBytesRead push eax ; nNumberOfBytesToRead push esi ; lpBuffer push edx ; hFile call ReadFile@20 pop eax ; Discard NumberOfBytesRead pop eax ; eax = bytes remaining pop ecx ; ecx = bytes to compare sub eax,ecx ; Adjust bytes remaining jecxz vloop2 push esi repz cmpsb ; Compare file with memory pop esi vloop2: xchg eax,ecx ; ecx <- remaining, eax <- result jnz vloopx ; Different, so bailout or ecx,ecx ; Anything remaining? jnz vloop ; Continue comparing vloopx: mov esp,ebp ; Restore stack pointer mov [ebp+28],eax ; Result popad ret 12 ; WINAPI calling convention ; unpack@20: and dword [esp+20],byte 1 ; Test bit 0, zero remainder jz near ReadFile@20 ; n.b. lpOverlapped = NULL pushad mov ebp,esp mov edx,[ebp+36] ; hFile mov edi,[ebp+40] ; lpBuffer mov eax,[ebp+48] ; &nRead mov eax,[eax] ; nRead mov ebx,-BUFSIZ ; Mask and esp,ebx ; Align stack pointer mov esi,esp ; Initial buffer pointer neg ebx ; Mask -> BUFSIZ sub esp,ebx ; Make space on stack for buffer push edx ; hFile [esi-4] push eax ; Space for last block size [esi-8] push eax ; nRead [esi-12] push ebp mov dl,80H xor ebx,ebx literal: call getbyte stosb mov bl,2 nexttag: call getbit jnc literal xor ecx,ecx xor eax,eax call getbit jnc codepair call getbit jnc shortmatch mov bl,2 inc ecx mov al,10H getmorebits: call getbit adc al,al jnc getmorebits jnz domatch stosb nextt1: jmp short nexttag ; codepair: call getgamma sub ecx,ebx jnz normalcodepair call getgamma jmp short domatch_lastpos ; shortmatch: call getbyte shr eax,1 rcl ecx,1 jnz domatch_with_2inc pop ebp ; saved stack pointer pop eax ; discard SerialNumber pop eax ; last block size pop edx ; hFile mov esp,ebp ; Restore stack pointer and esi,BUFSIZ-1 ; Get offset into buffer jz noptradj sub esi,eax ; How much to adjust pointer push byte 1 ; dwMoveMethod = FILE_CURRENT push byte 0 ; lpDistanceToMoveHigh push esi ; DistanceToMove (negative) push edx ; hFile call SetFilePointer@16 noptradj: sub edi,[ebp+40] mov esi,[ebp+48] ; &nRead mov [esi],edi ; return unpacked length popad ret 20 ; WINAPI calling convention ; normalcodepair: xchg eax,ecx dec eax shl eax,8 call getbyte call getgamma cmp eax,32000 jae domatch_with_2inc cmp ah,5 jae domatch_with_inc cmp eax,byte 7FH ja domatch_new_lastpos domatch_with_2inc: inc ecx domatch_with_inc: inc ecx domatch_new_lastpos: xchg eax,ebp domatch_lastpos: mov eax,ebp mov bl,1 domatch: push esi mov esi,edi sub esi,eax rep movsb pop esi jmp short nextt1 ; getbit: add dl,dl jnz stillbitsleft xchg al,dl pushf call getbyte popf xchg al,dl adc dl,dl stillbitsleft: ret ; getgamma: inc ecx getgammaloop: call getbit adc ecx,ecx call getbit jc getgammaloop ret ; getbyte: test esi,BUFSIZ-1 jnz getbyt1 sub esi,BUFSIZ ; Address start of buffer pushad push eax ; Make space for NumberOfBytesRead mov ecx,esp push byte 0 ; lpOverlapped push ecx ; lpNumberOfBytesRead push dword BUFSIZ ; nNumberOfBytesToRead push esi ; lpBuffer push dword [esi-4] ; hFile call ReadFile@20 pop dword [esi-8] ; NumberOfBytesRead (may not be BUFSIZ) popad getbyt1: lodsb ret ================================================ FILE: bin/win64/makefile ================================================ # Update these paths as necessary to match your installation SDL_LIB = -LC:/SDL2-2.26.2/x86_64-w64-mingw32/lib -lSDL2main -lSDL2 \ -LC:/SDL2_ttf-2.20.2/x86_64-w64-mingw32/lib -lSDL2_ttf \ -LC:/SDL2_net-2.2.0/x86_64-w64-mingw32/lib -lSDL2_net SDL_INCLUDE = -IC:/SDL2-2.26.2/x86_64-w64-mingw32/include/ \ -IC:/SDL2_ttf-2.20.2/x86_64-w64-mingw32/include/ \ -IC:/SDL2_net-2.2.0/x86_64-w64-mingw32/include/ VPATH = ../../src ../../include CXX = gcc -Wall -I ../../include OBJ = bbmain.o bbexec.o bbeval.o bbcmos.o bbccli.o \ bbcvdu.o bbcvtx.o flood.o bbdata.o bbcsdl.o \ bbasmb.o SDL2_gfxPrimitives.o SDL2_rotozoom.o all: bbcsdl.exe sdlrun.exe bbmain.o: bbmain.c BBC.h $(CXX) -c -O2 -freg-struct-return -ffast-math -fno-finite-math-only $< -o $@ bbexec.o: bbexec.c BBC.h $(CXX) -c -O2 -freg-struct-return -ffast-math -fno-finite-math-only $< -o $@ bbeval.o: bbeval.c BBC.h $(CXX) -Wno-array-bounds -c -O2 -freg-struct-return -ffast-math -fmath-errno -fno-finite-math-only $< -o $@ bbasmb.o: bbasmb_x86_64.c BBC.h $(CXX) -c -Os $< -o $@ bbcmos.o: bbcmos.c bbcsdl.h $(CXX) -Wno-array-bounds -c $(SDL_INCLUDE) -msse2 -O2 $< -o $@ bbccli.o: bbccli.c bbcsdl.h $(CXX) -c $(SDL_INCLUDE) -Os $< -o $@ bbcvdu.o: bbcvdu.c bbcsdl.h $(CXX) -c $(SDL_INCLUDE) -Os $< -o $@ bbcvtx.o: bbcvtx.c bbcsdl.h $(CXX) -c $(SDL_INCLUDE) -O3 $< -o $@ bbcsdl.o: bbcsdl.c bbcsdl.h version.h $(CXX) -Wno-unused-value -c $(SDL_INCLUDE) -O2 $< -o $@ SDL2_gfxPrimitives.o: SDL2_gfxPrimitives.c SDL2_gfxPrimitives.h $(CXX) -c $(SDL_INCLUDE) -O2 $< -o $@ SDL2_rotozoom.o: SDL2_rotozoom.c SDL2_rotozoom.h SDL2_gfxPrimitives.h SDL_stbimage.h stb_image.h dr_mp3.h $(CXX) -c $(SDL_INCLUDE) -Os $< -o $@ flood.o: flood.c $(CXX) -c $(SDL_INCLUDE) -O3 $< -o $@ bbdata.o: ../../src/bbdata_x86_64.nas nasm -f win64 -s ../../src/bbdata_x86_64.nas -o bbdata.o bbcsdl.exe: $(OBJ) $(CXX) $(OBJ) \ -o bbcsdl.exe -lz -lmingw32 -mthreads -mwindows $(SDL_LIB) -Wl,-s -Wl,--export-all-symbols sdlrun.o: sdlrun.c $(CXX) -Wall -c -O2 $< -o $@ unpack64.o: unpack64.nas nasm -f win64 -s unpack64.nas -l unpack64.lst -o unpack64.o sdlrun.exe: sdlrun.o unpack64.o $(CXX) sdlrun.o unpack64.o -o sdlrun.exe -lmingw32 -mwindows -Wl,-s ================================================ FILE: bin/win64/sdlrun.c ================================================ /******************************************************************\ * BBC BASIC for SDL 2.0 (Windows edition) * * Copyright (c) R. T. Russell, 2024 * * * * Version 1.4, 15-Nov-2024 * \******************************************************************/ #include #include #include #include #include "version.h" #ifdef __x86_64__ #define SECURITY_PTR 0x128 #else #define SECURITY_PTR 0x118 #endif #define STACK_NEEDED 0x400 // Functions in BBCUPCK.NAS void WINAPI unpack (HANDLE, char*, int, DWORD*, int) ; BOOL WINAPI verify (HANDLE, char*, int) ; // Structure declaration typedef struct tagPROGINFO { int DefaultRAM ; int Library ; int WindowWidth ; int WindowHeight ; int CmdShow ; int Flags ; unsigned int SerialNumber ; int ProgLength ; } PROGINFO, *LPPROGINFO ; int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow) { char szAppName[_MAX_PATH] ; char szLoadDir[_MAX_PATH] ; char szTempDir[_MAX_PATH] ; char szLibrary[_MAX_PATH] ; char szBinaries[_MAX_PATH] ; char szFileName[_MAX_PATH] ; char szEmptyFile[_MAX_PATH] ; PROGINFO ProgInfo ; SHFILEOPSTRUCT shfo = {0} ; SHELLEXECUTEINFOA sei = {0} ; HANDLE ThisFile, EmbedFile ; int signature, offset ; int embedsize, remain, dirlen, liblen ; BOOL anyresources = 0 ; DWORD nRead ; char *nameptr ; void *pBuffer ; // Get the path to this file and open it: GetModuleFileName (NULL, szFileName, _MAX_PATH) ; ThisFile = CreateFile (szFileName, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL) ; // It shouldn't be possible for the file not to exist: if (ThisFile == INVALID_HANDLE_VALUE) return 1; // Discover if there is a signature and if so where it is: SetFilePointer (ThisFile, SECURITY_PTR, NULL, FILE_BEGIN) ; ReadFile (ThisFile, &signature, sizeof(int), &nRead, NULL) ; if (signature != 0) nRead = FILE_BEGIN ; else nRead = FILE_END ; // Read the ProgInfo structure either from the end or just before the signature: offset = SetFilePointer (ThisFile, signature-sizeof(PROGINFO), NULL, nRead) ; ReadFile (ThisFile, &ProgInfo, sizeof(PROGINFO), &nRead, NULL) ; // Quit if there are no embedded files: if ((ProgInfo.Library <= 0) || (ProgInfo.Library >= offset)) { CloseHandle (ThisFile) ; return 0 ; } // Find directory containing this file: GetFullPathName (szFileName, _MAX_PATH, szLoadDir, &nameptr) ; *nameptr = '\0' ; dirlen = strlen (szLoadDir) ; // Get the path to the temporary directory: GetTempPath (_MAX_PATH, szTempDir) ; // Set the path to the binaries subdirectory and create it: GetTempFileName (szTempDir, "BBC", 0, szBinaries) ; DeleteFile (szBinaries) ; CreateDirectory (szBinaries, NULL) ; strcat (szBinaries, "\\") ; // Set the path to the libraries subdirectory (but don't create it): strcpy (szLibrary, szBinaries) ; strcat (szLibrary, "lib\\") ; liblen = strlen (szLibrary) ; // Set the path to an empty file bin\$ (but don't create it): strcpy (szEmptyFile, szBinaries) ; strcat (szEmptyFile, "$") ; // Allocate a buffer to hold the uncompressed data: pBuffer = malloc (ProgInfo.DefaultRAM) ; if (pBuffer == NULL) return 2 ; // For each of the embedded files: int embedptr = offset - ProgInfo.ProgLength - ProgInfo.Library ; while (embedptr < (offset - ProgInfo.ProgLength)) { int len ; char type ; SetFilePointer (ThisFile, embedptr, NULL, FILE_BEGIN) ; ReadFile (ThisFile, &type, 1, &nRead, NULL) ; ReadFile (ThisFile, &embedsize, 4, &nRead, NULL) ; ReadFile (ThisFile, szFileName, _MAX_PATH, &nRead, NULL) ; len = strlen(szFileName) ; embedptr += len + 6 ; // type == 0/1 for @dir$, type == 2/3 for @dir$\bin\lib if (type & 2) { memmove (szFileName + liblen, szFileName, len + 1) ; memcpy (szFileName, szLibrary, liblen) ; } else { memmove (szFileName + dirlen, szFileName, len + 1) ; memcpy (szFileName, szLoadDir, dirlen) ; anyresources = 1 ; } // Check if the file already exists: EmbedFile = CreateFile (szFileName, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL) ; // If it does, verify the existing contents against the embedded data: if (EmbedFile != INVALID_HANDLE_VALUE) { int diff = 0 ; SetFilePointer (ThisFile, embedptr, NULL, FILE_BEGIN) ; while ((diff == 0) && ((remain = embedptr + embedsize - SetFilePointer (ThisFile, 0, NULL, FILE_CURRENT)) > 0)) { nRead = ProgInfo.SerialNumber ; unpack (ThisFile, pBuffer, min(remain, ProgInfo.DefaultRAM), &nRead, type) ; diff = verify (EmbedFile, pBuffer, nRead) ; } CloseHandle (EmbedFile) ; if (diff) EmbedFile = INVALID_HANDLE_VALUE ; } // If the file doesn't exist OR is different from the existing one, create it: if (EmbedFile == INVALID_HANDLE_VALUE) { CloseHandle (CreateFile (szEmptyFile, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, NULL)) ; shfo.hwnd = (HWND) 1 ; // Any non-zero value! shfo.wFunc = FO_MOVE ; shfo.pFrom = szEmptyFile ; shfo.pTo = szFileName ; shfo.fFlags = FOF_SILENT | FOF_NOCONFIRMATION | FOF_NOCONFIRMMKDIR ; *(szFileName + strlen(szFileName) + 1) = '\0' ; *(szEmptyFile + strlen(szEmptyFile) + 1) = '\0' ; SHFileOperation (&shfo) ; // Create directory if necessary EmbedFile = CreateFile (szFileName, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, NULL) ; if (EmbedFile == INVALID_HANDLE_VALUE) { MessageBox(NULL, szFileName, "SDLRUN: Cannot create file", 0); return 3 ; } SetFilePointer (ThisFile, embedptr, NULL, FILE_BEGIN) ; while ((remain = embedptr + embedsize - SetFilePointer (ThisFile, 0, NULL, FILE_CURRENT)) > 0) { nRead = ProgInfo.SerialNumber ; unpack (ThisFile, pBuffer, min(remain, ProgInfo.DefaultRAM), &nRead, type) ; WriteFile (EmbedFile, pBuffer, nRead, &nRead, NULL) ; } CloseHandle (EmbedFile) ; } embedptr += embedsize ; } free (pBuffer) ; ReadFile (ThisFile, szAppName, _MAX_PATH, &nRead, NULL) ; CloseHandle (ThisFile) ; // Get path to program .bbc file and hide it: if (anyresources) strcpy (szFileName, szLoadDir) ; else strcpy (szFileName, szBinaries) ; strcat (szFileName, szAppName) ; strcat (szFileName, ".bbc") ; SetFileAttributes (szFileName, FILE_ATTRIBUTE_HIDDEN) ; // Enclose in quotes in case embedded space(s): strcpy (szEmptyFile, "\042") ; strcat (szEmptyFile, szFileName) ; strcat (szEmptyFile, "\042 ") ; strcat (szEmptyFile, szCmdLine) ; // Run BBCSDL: strcpy (szLibrary, szBinaries) ; strcat (szLibrary, "bbcsdl.exe") ; /// ShellExecute ((HWND) 0, "open", szLibrary, szEmptyFile, szLoadDir, ProgInfo.CmdShow) ; sei.cbSize = sizeof(sei) ; sei.fMask = SEE_MASK_NOCLOSEPROCESS ; sei.hwnd = NULL ; sei.lpVerb = "open" ; sei.lpFile = szLibrary ; sei.lpParameters = szEmptyFile ; sei.lpDirectory = szLoadDir ; sei.nShow = ProgInfo.CmdShow ; ShellExecuteEx (&sei) ; // Wait for process to finish: if (sei.hProcess) { DWORD res ; do res = WaitForSingleObject (sei.hProcess, 1000) ; while (res == WAIT_TIMEOUT) ; CloseHandle (sei.hProcess) ; } // Delete the binaries directory and all the files it contains: *(szBinaries + strlen(szBinaries) + 1) = '\0' ; shfo.hwnd = (HWND) 1 ; // Any non-zero value! shfo.pFrom = szBinaries ; shfo.wFunc = FO_DELETE ; shfo.fFlags = FOF_SILENT | FOF_NOCONFIRMATION | FOF_NOCONFIRMMKDIR ; SHFileOperation (&shfo) ; return 0 ; } ================================================ FILE: bin/win64/unpack64.nas ================================================ ;/*****************************************************************\ ;* BBC BASIC for SDL 2.0 (Windows edition) * ;* Copyright (c) R. T. Russell, 2024 * ;* aPLib courtesy of Joergen Ibsen, www.ibsensoftware.com * ;* * ;* UNPACK.NAS Compressed file unpacker (64-bit version) * ;\*****************************************************************/ ; GLOBAL unpack,verify EXTERN ReadFile,SetFilePointer ; SEGMENT .text ; BUFSIZ EQU 512 ; ; Parameters: rcx = hFile ; rdx = lpBuffer ; r8 = nNumberOfBytesToVerify ; Result: eax = non-zero if different ; Preserved: rbx, rbp, rdi, rsi, r12, r13, r14, r15 ; verify: push rbp push rsi push rdi mov rbp,rsp ; copy stack pointer xchg rcx,r8 ; rcx = nBytes, r8 = hFile mov rdi,rdx ; lpBuffer mov edx,BUFSIZ neg rdx and rsp,rdx ; align stack pointer neg edx sub rsp,rdx ; make space on stack mov rsi,rsp vloop: mov eax,ecx cmp eax,edx ; remaining >- BUFSIZ ? jbe vloop1 mov eax,edx ; If so, use BUFSIZ vloop1: push r8 push rax ; Bytes to read push rcx ; Bytes remaining push rdx ; BUFSIZ mov rcx,r8 ; hFile mov rdx,rsi ; lpBuffer mov r8,rax ; nNumberOfBytesToRead xor r9d,r9d ; lpNumberOfBytesRead push byte 0 ; lpOverlapped sub rsp,32 ; Shadow space call ReadFile add rsp,40 pop rdx pop rax ; rax = bytes remaining pop rcx ; rcx = bytes just read pop r8 sub eax,ecx ; Adjust bytes remaining jrcxz vloop2 push rsi repz cmpsb ; Compare file with memory pop rsi vloop2: xchg eax,ecx ; ecx <- remaining, eax <- result jnz vloopx ; Different, so bailout or ecx,ecx ; Anything remaining? jnz vloop ; Continue comparing vloopx: mov rsp,rbp ; Restore stack pointer pop rdi pop rsi pop rbp ret ; ; Parameters: rcx = hFile ; rdx = lpBuffer ; r8 = nNumberOfBytesToRead ; r9 = lpNumberOfBytesRead ; [rsp+40] = lpOverlapped ; Preserved: rbx, rbp, rdi, rsi, r12, r13, r14, r15 ; unpack: and qword [rsp+40],byte 1 ; Test bit 0, zero remainder jz near ReadFile ; n.b. lpOverlapped = NULL push rbp mov rbp,rsp ; copy stack pointer mov r10,rcx ; hFile mov eax,BUFSIZ neg rax and rsp,rax ; align stack pointer mov rcx,rsp neg rax sub rsp,rax ; make space on stack push rbx push rsi push rdi push rdx mov rsi,rcx mov rdi,rdx cld mov dl,80h xor ebx,ebx literal: call getbyte stosb mov bl,2 nexttag: call getbit jnc literal xor ecx,ecx call getbit jnc codepair xor eax,eax call getbit jnc shortmatch mov bl,2 inc ecx mov al,10h getmorebits: call getbit adc al,al jnc getmorebits jnz domatch stosb jmp short nexttag ; codepair: call getgamma_no_ecx sub ecx,ebx jnz normalcodepair call getgamma jmp short domatch_lastpos ; shortmatch: call getbyte shr eax,1 jz donedepacking adc ecx,ecx jmp short domatch_with_2inc ; normalcodepair: xchg eax,ecx dec eax shl eax,8 call getbyte call getgamma cmp eax,32000 jae short domatch_with_2inc cmp ah,5 jae short domatch_with_inc cmp eax,7fh ja short domatch_new_lastpos domatch_with_2inc: inc ecx domatch_with_inc: inc ecx domatch_new_lastpos: xchg eax,r8d domatch_lastpos: mov eax,r8d mov bl,1 domatch: push rsi mov rsi,rdi sub rsi,rax rep movsb pop rsi jmp nexttag ; getbit: add dl,dl jnz stillbitsleft xchg al,dl pushf call getbyte popf xchg al,dl adc dl,dl stillbitsleft: ret ; getgamma: xor ecx,ecx getgamma_no_ecx: inc ecx getgammaloop: call getbit adc ecx,ecx call getbit jc getgammaloop ret ; donedepacking: pop rdx sub rdi,rdx xchg rdi,[r9] ; [r9] = nRead, last block size = [r9] and esi,BUFSIZ-1 ; Get offset into buffer jz noptradj sub rsi,rdi ; How much to adjust pointer (negative) push rcx push rdx push r8 push r9 ; lpNumberOfBytesRead push r10 mov rcx,r10 ; hFile mov rdx,rsi ; DistanceToMove (negative) xor r8d,r8d ; lpDistanceToMoveHigh mov r9d,1 ; dwMoveMethod = FILE_CURRENT sub rsp,32 ; Shadow space call SetFilePointer add rsp,32 pop r10 pop r9 pop r8 pop rdx pop rcx noptradj: pop rdi pop rsi pop rbx mov rsp,rbp pop rbp ret ; ; In: r10 = hFile (to refill buffer) ; r9 = lpNumberOfBytesRead ; rsi = buffer pointer (on stack) ; Out: [r9] = nRead (if buffer refilled) ; al = byte read ; getbyte: test rsi,BUFSIZ-1 ; Buffer empty ? jnz getbyt1 push rax push rcx push rdx push r8 push r9 ; lpNumberOfBytesRead push r10 mov eax,BUFSIZ sub rsi,rax mov rcx,r10 ; hFile mov rdx,rsi ; lpBuffer mov r8,rax ; nNumberOfBytesToRead push byte 0 ; lpOverlapped sub rsp,32 ; Shadow space call ReadFile add rsp,40 pop r10 pop r9 pop r8 pop rdx pop rcx pop rax getbyt1: lodsb ret ================================================ FILE: console/linux/makefile ================================================ VPATH = ../../src ../../include ../../../BBCSDL/src ../../../BBCSDL/include CXX = gcc -Wall -I ../../include -I ../../../BBCSDL/include OBJ = bbmain.o bbexec.o bbeval.o bbasmb.o bbdata.o bbccos.o bbccon.o all: bbcbasic bbmain.o: bbmain.c BBC.h $(CXX) -c -O2 -ffast-math -fno-finite-math-only $< -o $@ bbexec.o: bbexec.c BBC.h $(CXX) -c -O2 -ffast-math -fno-finite-math-only $< -o $@ bbeval.o: bbeval.c BBC.h $(CXX) -Wno-array-bounds -c -O2 -ffast-math -fmath-errno -fno-finite-math-only $< -o $@ bbasmb.o: bbasmb_x86_64.c BBC.h $(CXX) -c -Os $< -o $@ bbccos.o: bbccos.c bbccon.h $(CXX) -Wno-array-bounds -Wno-unused-result -c -Os $< -o $@ bbccon.o: bbccon.c bbccon.h $(CXX) -Wno-array-bounds -Wno-unused-result -c -Os $< -o $@ bbdata.o: ../../../BBCSDL/src/bbdata_x86_64.nas nasm -f elf64 -s ../../../BBCSDL/src/bbdata_x86_64.nas -o bbdata.o bbcbasic: $(OBJ) $(CXX) $(OBJ) -L . -L/usr/include -ldl -lm -lrt -pthread \ -o bbcbasic -Wl,-s -Wl,-R,'$$ORIGIN' cp bbcbasic ../../ ================================================ FILE: console/macm1/makefile ================================================ VPATH = ../../src ../../include ../../../BBCSDL/src ../../../BBCSDL/include CXX = gcc -Wall -I ../../include -I ../../../BBCSDL/include OBJ = bbmain.o bbexec.o bbeval.o bbasmb.o bbdata.o bbccos.o bbccon.o all: bbcbasic bbmain.o: bbmain.c BBC.h $(CXX) -c -O2 -ffast-math -fno-finite-math-only $< -o $@ bbexec.o: bbexec.c BBC.h $(CXX) -c -O2 -ffast-math -fno-finite-math-only $< -o $@ bbeval.o: bbeval.c BBC.h $(CXX) -Wno-array-bounds -c -O2 -ffast-math -fmath-errno -fno-finite-math-only $< -o $@ bbasmb.o: bbasmb_arm_64.c BBC.h $(CXX) -c -Os $< -o $@ bbccos.o: bbccos.c bbccon.h $(CXX) -Wno-array-bounds -Wno-unused-result -c -Os $< -o $@ bbccon.o: bbccon.c bbccon.h $(CXX) -Wno-array-bounds -Wno-unused-result -c -Os $< -o $@ bbdata.o: ../../../BBCSDL/src/bbdata_arm_64.s as ../../../BBCSDL/src/bbdata_arm_64.s -o bbdata.o bbcbasic: $(OBJ) $(CXX) $(OBJ) -F/Library/Frameworks -L . \ -framework Foundation \ -o bbcbasic -L/usr/include -ldl -lm cp bbcbasic ../../ ================================================ FILE: console/macos/makefile ================================================ VPATH = ../../src ../../include ../../../BBCSDL/src ../../../BBCSDL/include CXX = gcc -Wall -mmacosx-version-min=10.6 -I ../../include -I ../../../BBCSDL/include OBJ = bbmain.o bbexec.o bbeval.o bbasmb.o bbdata.o bbccos.o bbccon.o all: bbcbasic bbmain.o: bbmain.c BBC.h $(CXX) -c -O2 -ffast-math -fno-finite-math-only $< -o $@ bbexec.o: bbexec.c BBC.h $(CXX) -c -O2 -ffast-math -fno-finite-math-only $< -o $@ bbeval.o: bbeval.c BBC.h $(CXX) -Wno-array-bounds -c -O2 -ffast-math -fmath-errno -fno-finite-math-only $< -o $@ bbasmb.o: bbasmb_x86_64.c BBC.h $(CXX) -c -Os $< -o $@ bbccos.o: bbccos.c bbccon.h $(CXX) -Wno-array-bounds -Wno-unused-result -c -Os $< -o $@ bbccon.o: bbccon.c bbccon.h $(CXX) -Wno-array-bounds -Wno-unused-result -c -Os $< -o $@ bbdata.o: ../../../BBCSDL/src/bbdata_x86_64.nas nasm --prefix _ -f macho64 -s ../../../BBCSDL/src/bbdata_x86_64.nas -o bbdata.o bbcbasic: $(OBJ) $(CXX) $(OBJ) -F/Library/Frameworks -L . \ -framework Foundation \ -o bbcbasic -L/usr/include -ldl -lm cp bbcbasic ../../ ================================================ FILE: console/raspi/makefile ================================================ VPATH = ../../src ../../include ../../../BBCSDL/src ../../../BBCSDL/include CXX = gcc -Wall -I ../../include -I ../../../BBCSDL/include CXXFLAGS = -march=armv7-a -mthumb -munaligned-access -mfloat-abi=hard -c OBJ = bbmain.o bbexec.o bbeval.o bbasmb.o bbdata.o bbccos.o bbccon.o all: bbcbasic bbmain.o: bbmain.c BBC.h $(CXX) -Wno-attributes $(CXXFLAGS) -O2 -ffast-math -fno-finite-math-only $< -o $@ bbexec.o: bbexec.c BBC.h $(CXX) $(CXXFLAGS) -DARMHF -O2 -ffast-math -fno-finite-math-only $< -o $@ bbeval.o: bbeval.c BBC.h $(CXX) -Wno-array-bounds $(CXXFLAGS) -O2 -ffast-math -fmath-errno -fno-finite-math-only $< -o $@ bbasmb.o: bbasmb_arm_32.c BBC.h $(CXX) $(CXXFLAGS) -Os $< -o $@ bbccos.o: bbccos.c bbccon.h $(CXX) -Wno-array-bounds -Wno-unused-result $(CXXFLAGS) -Os $< -o $@ bbccon.o: bbccon.c bbccon.h $(CXX) -Wno-array-bounds -Wno-unused-result $(CXXFLAGS) -O2 $< -o $@ bbdata.o: ../../../BBCSDL/src/bbdata_arm_32.s as ../../../BBCSDL/src/bbdata_arm_32.s -o bbdata.o bbcbasic: $(OBJ) $(CXX) $(OBJ) -L . -L/usr/lib/ -ldl -lm -lrt -pthread \ -o bbcbasic -Wl,-s -Wl,-R,'$$ORIGIN' cp bbcbasic ../../ ================================================ FILE: console/rpi64/makefile ================================================ VPATH = ../../src ../../include ../../../BBCSDL/src ../../../BBCSDL/include CXX = gcc -Wall -I ../../include -I ../../../BBCSDL/include OBJ = bbmain.o bbexec.o bbeval.o bbasmb.o bbdata.o bbccos.o bbccon.o all: bbcbasic bbmain.o: bbmain.c BBC.h $(CXX) -Wno-attributes -c -O2 -ffast-math -fno-finite-math-only $< -o $@ bbexec.o: bbexec.c BBC.h $(CXX) -c -O2 -ffast-math -fno-finite-math-only $< -o $@ bbeval.o: bbeval.c BBC.h $(CXX) -Wno-array-bounds -c -O2 -ffast-math -fmath-errno -fno-finite-math-only $< -o $@ bbasmb.o: bbasmb_arm_64.c BBC.h $(CXX) -c -Os $< -o $@ bbccos.o: bbccos.c bbccon.h $(CXX) -Wno-array-bounds -Wno-unused-result -c -Os $< -o $@ bbccon.o: bbccon.c bbccon.h $(CXX) -Wno-array-bounds -Wno-unused-result -c -O2 $< -o $@ bbdata.o: ../../../BBCSDL/src/bbdata_arm_64.s sed 's/_\([a-z]*\)/\1/g' <../../../BBCSDL/src/bbdata_arm_64.s >bbdata.s as bbdata.s -o bbdata.o bbcbasic: $(OBJ) $(CXX) $(OBJ) -L . -L/usr/lib/ -ldl -lm -lrt -pthread \ -o bbcbasic -Wl,-s -Wl,-R,'$$ORIGIN' cp bbcbasic ../../ ================================================ FILE: console/win64/makefile ================================================ # Update these paths as necessary to match your installation VPATH = ../../src ../../include ../../../BBCSDL/src ../../../BBCSDL/include CXX = gcc -Wall -I ../../include -I ../../../BBCSDL/include OBJ = bbmain.o bbexec.o bbeval.o bbasmb.o bbdata.o bbccos.o bbccon.o all: bbcbasic.exe bbmain.o: bbmain.c BBC.h $(CXX) -c -O2 -freg-struct-return -ffast-math -fno-finite-math-only $< -o $@ bbexec.o: bbexec.c BBC.h $(CXX) -c -O2 -freg-struct-return -ffast-math -fno-finite-math-only $< -o $@ bbeval.o: bbeval.c BBC.h $(CXX) -Wno-array-bounds -c -O2 -freg-struct-return -ffast-math -fmath-errno -fno-finite-math-only $< -o $@ bbasmb.o: bbasmb_x86_64.c BBC.h $(CXX) -c -Os $< -o $@ bbccos.o: bbccos.c bbccon.h $(CXX) -Wno-array-bounds -c -Os $< -o $@ bbccon.o: bbccon.c bbccon.h $(CXX) -Wno-array-bounds -Wno-unused-value -c -Os $< -o $@ bbdata.o: ../../../BBCSDL/src/bbdata_x86_64.nas nasm -f win64 -s ../../../BBCSDL/src/bbdata_x86_64.nas -o bbdata.o bbcbasic.exe: $(OBJ) $(CXX) $(OBJ) \ -o bbcbasic.exe -lmingw32 -lwinmm -Wl,-s -Wl,--export-all-symbols copy bbcbasic.exe ..\..\ ================================================ FILE: examples/games/.Tables/CrnrSlic.ptb ================================================ xYwxxxh˼˼˼˘Wxwhyghixyx͛viwwxxxxihyyy͊hyyixvhxwxxwvhxhyʬ˼ʼʉzxʫhxxxyvhwwxyyy˻˺ʺʻixxxy˼˼˚yyʬ˼ʬʚʬʼʼ˼˼˼wXwhi˼˼˼ʬ˼ʼʺ˼˼˼gV'wvvufVfWT˫˺fF7guevVVfGT˼˼˼˩˼̼˼˩wV6vfvvgUwWcˬ˼ʬwU7wvvfgFwVT˺˻ˬWwfwwgXvvgVyyyͺ˼˼˼XvgvvvXggf˼˼˼ˊ˼˼˼HfWwvvHwWVͽͽܽ˽˼XwgwgvwWvfVwgwxhwʬʬʼˉʬʼ˼˼̼˼xxxxyx۽͉ˬʼʼxxʫʺhxxxʬʼʬ˼˼˼˼yyzzyxx˼˼˺ͼ˽˼ۼ˺xyxʼʼʼy۽iyyy˼˼˼˻˼˖wxxywvyhguggXvvg͙iWuhhhvgzyʺʻ˼˼˼˪xftWwWguvViyyyxgeggguvefyʺ˫ʺgGUwgfgfvveW˼˼˼˼˼˼˚ʺʉxGewfvVwvtg˼˚ͻ۽۽͚g8ehguggueh˼˼˼˼˼˼ˉyͼ˼˽˽zxGdwWvgwvegwwxhwwhwwͽܽܽʬʬˬ˚yyufwvWvgggf͆wwhxxgw˼˼˼˚̼˼˼̼˼˼˼wwhxxgwʻʺ˺͉yxxxhiʬʬ˼ʺhhhh˼˼˼xyyxvxwxxwiˬ˼xiwxwX˼˼˼˺ͽ۽۽ʺ˻˼˼˼ˉzyxyʺʺޘiyyyyyyʻʫ͈iyxyʺ˻͉yzyxxyWfeVuVWfuefWedFeVVfueVyyyXfeWvggwufgGVUvVuVVfdUf݆xhxvwxxxxx͚yx͚wxxxvxxxwxwxͽ۽͊hiyhi˼˼˼xyy˼˼˼ʺʻxixxhgwxvhyXʼˬˬ˺۽̺ܽܽzvwwxxxhvʻʬ˚wxwxwx˼˼˼ywvxwgxxxͽ۽۽vxwwhxvˬʼʼʙ͚̽̽˽fuhvfwvgggu˼˼˼̺gwvxwhyxxxwxwxxw˼˼˼wxʻ̼̼̽xx˼˼˼uwvwgwuxgvvy˻˻vwxwgʬʼʬvXxuxghvhwxxw˼˼˼˩˻˼˼˼˼gvwwxxwwxhxyxx˼˼˼ʻʫ˼˼˼ˇxxxxhyxx̽˽˼hxhyxyx˼˼˼ʬˬʬ˼˼˼vwywxxh˻˼xiyy۽yyxyy˼ʼʼʻ˼˼˼̼˽̽ۼۼyyzyxyyyy͆wgwvhvwhgwyxxyxxxxxx͉xyy˼˼˼xxxxxyyx˼˼˼ˊ˼˼˼yy˼˼˼xxxxhyyixwxhvxWx˻˪ͻ͘yyyyvxWxgxwgwgwwhgg˼˼˼ˈxyy˼˼˼˺˼ܼ˼˼˼˼˩˼˼˼guwvgwwgfxu˼˼˼ˈxx˼˼˼VwtgvWFweug۽ܽ˼˼˼˼˼ۼ˼fvsWfGVfeuV˼˼ܽfgtgeWWwdugy˼˼˼evdvVfVVvUdgܽܽzy˼˼˼ˉyyy˼˼˼ͽܽ۽͈y̼˼̽˼xyy̼˼˼͉ʼ˼ˬʼˬ˼ܽܽ˼˼˼ͽܽ۽͉yyyy˫ˉxyyyyxyyˬyyxݻʫyyxʬʬ˼ͺݺʬʬ˼ʺxYwxxxh޺ʫhhyhxwgvhwhxihxxx˼˼˼˻ʫʼͪͺʻxhxwwyvʫ˼wXgWhhxyhxͪixhyyzyyyͽ۽˼˼ܼ˼˼˼˼˼˼͚zʼ˼ˬyyxyx۽ܽܽ˼ܼ˼˼˼˼̼˼˼˼͈yyixxxufvwggvWhgvvwvwhwghwvxwwwhwhwwwhxwxwxvwxxhhxwfgvwgwgWwfxxxx˼˼˼ˉxxxywwigxhx˼˼˼˺ʬʬˬˉyy˼˼˼ʬʼʬʊxxyyyʫʫhxxhyʬˬʬʛ˼˼˼xyyhwuggXwvWiguwhhhwvX˼˼˼˼˼˼˼˼˼˼xvtvWwWgfvGxwewgggfveW˻˻̽˽˼˺ʺʹʬʬʼˉxixxhxxyx˼˼˼˺ʬ˼˼̼ʬʬʼʈxyxyxywhhiwwʬˬ˼˼˼̼˺gdGvwvvfEfWSʬʬʼ˺ʫʺʬʬʼwsWuwwww5wWSʬʬʼ˹˼˼˼ʬʬʼ˹fdWvvfwgEvGSʫʺ˼˼˼˹ʫʺʫʺfdVfgfgfDfVBʺ˻ʺ͚wgufwfheugyyiyhguggXvvgޚʺʬxftWwWguvVyy˼˼˼hWugghvvgyͪx͘xixyxʫʉx˼˼˼wx͇yx͗yxxxyxyz˼˼˼ˉyy˼˼˼˙˼˼˼ˈyyʬʬʼxxʫʺ˼˼˼wdFvfggv5wVT˼˼˼ʬʬʬ˺ʬwU7wvvfgFwVTʼʬʬgeGuwgwFvFT˼˼˼̪˼˼˼˻˫veFvfgWvEgUCgguwgfWfdvvUʬ͙ͽͽ۽XgvvvfWuwf˼˼˼ˉygxvgvggevvfͼ˼˽˽˼˼˼˼˼˼hgfwuggugf͗hyyywxxhghwXhxhxw͇ixxxy݆whwxxwxwxwv˼˼˼ˇxxxxyއhyxyxʬʬˬ˺xXgxxvwyhwxhxvʫ˻˻˻ʬʬʼʻihxxxyyyxihhxyy˼˼˼˺˼˼˼˪yyyhwxhghxޚ݆wwxwxh˼˼˼ˆyxxxxwxhxhXw͆wxwxv͆yxxxixyxyh͗yxyxxxxyxiʺʇwx͊x͇xyx˼˼˼xzyxvwxwxxh͚ݚwxxhxxwxxxwxxwxxxͽ۽͚wxw͗xyh7ewWgXdfVʼʼ˼̼ۼ̼˼˼˼ʼʼʼͽ۽ͼ̼ۼg7VwgvggSvVU̼ۼ̼ʼʬ˼˼ˬʼͼ̼ۼ̬˼ˬʼX7fwgWhdeV˼ʬʼ˼˼˼ͽ۽ͬʼʼ˼ͬʼˬʼͽ۽ͽͽ۽h(fhhhhdfF͇xwxxxyyyz˼˼˼xxxxhxhxyxyhyh͙ʺʺyxyygxvgvggevvfʻ˼˼˼ܽ۽WgwfvXuvvfy˼˼˼fgvwWvggdfuU˼ۼ˽͙˼˼˼ggggwhuuffʼhguffwewugyyޚ˼˼˼hWvgghvugʻʻgfvWWxuwtVyyXgvgghvugiyyʺʼʼ˼̼ۼ̉xxͽ۽͙˼ˬʼˬ˼ʬʚͻXgwgwWevvV˻˻˻WgvwgugfTfvV˺˼˼˼˼˼˼˼ͽͽ۽˼˼˼yz˼˼˼ˊWWwXuhgevFyyzHfwgwgeuvW̼ۼ˼˼˼˼XWvWghvvgxyy˼˼˼ˉhhvXhhvvggguGgxewuV˼˼˼˻˼˼˼˩hgfWWwewfg̽˽˼˼˼˼vdVvgwfw5gFT˼˼˼˺˺˻ʬʼʬweFgvugFwGTʻgUVwfwvwFv7T˼˼˼˹˼˼˼ʬ˼ʬveUvWgfvEgFCʼʼʼʈxyxyxʬʬʼˉʬʬʼʙ˻ʺ˼˼̼ˇwihhwwxyxx˼˼˼˺ʬ˻ʺyhxxix˼˼̼˺zy˼˼˼˻gfvwugHewW˼˽̼fgvwgfgWTuvVܽ۽˼˼˼˺yzy˻˼˼˼˙͚gWwhvXWeuF˼˼˼WgvwvgXewV˻˼whxvxwx͇yxݚwwxxxxwwxxxͽ۽͆xxxwhxwxxx͚yyyyxyyxyyyyʻxxxhiyy˼˼˼˙ʬ˼ʼʇxhhixwxhwxhyv˻ʻʬˬʬˉyyy˻˼xxgXxv˼˼˼˼˼˼ˉ˼˼˼˚yy˼˼˼ˉyy˼˼˼˻yyxwgfWwWhefgxgugwGgeuV˼˼˼˺˼˼˼ˈ˼˼˼hWvgWXvvghhvhXhvvg̽˽˼͙yxxy˼˼˼yxhyhyxʫxxwxxxhxhxxzyyyyfeGvwevV5fWD˼˼˼˺fdVfgfgf$fVD˼˼˼̺˼˼˼̩VeWvvfwf5eGDʻ˼˼˼˺ʻeUVugVge5VV3wwxwhxxvwiwhwxxxughgvWvgggwxxxxxxfvXvgufwggwvwhwgvwghwvwwgvwgxwwwvxxxʻ͇wuhg˼ʺʖyyyhʺʻwxhhwކxyxx͗xxxxx͇vwwxhvxxyxhʼʺ˼˼˼ʬʬʼ˼˼˼˺ʼwygxw˼˼̼˖xxxyxʬʬʼ˹ʻʫʚxxxxxy˼˼̼ʬˬ˼ʺ˻yyxgVgggXvuwg˼˼˼˼˼ͺhWvwWgXw˼˼˼˚XGgwffGvvwg͊hWvgWXvvg˼˼˼˼˼˼xiyiyͽ۽ܽܽ˼˼˼͚yyyyyyͼۼ̼ͼʬˬ˼˽̼˽xyͽܽܽ˼˼˼˼˼˼˼˼˼yyzzyzʺʺ˼˼˼ʺʬwxhghxwxhhwކxyyxh͹yyxxy˺ʺvxvwxxxyxx͆yxxxhvxxxwwʼʺ˼˼˽xxxxyxʺʻ˼˼˼hxyxxx˼˼˼˺˼˼˼ˆxgxw͆wwhwhxʬʼʬvxwxxw˻˼wxxw˼˼˼˼˼˼˹vwvwvvhww˼˼˼˖xyxyx˼˼˼ˇxvxwxgͨuhvxwxʻy˼˼˼xۼ˼˼˼˩fuxvwwvgvwuʼʼ˼ʬʼʼˉʙ˼ˬʼ̼ۼ̙ͽ۽͚xywxxvhwxxwxy˼˼˼˺ۼ̽ͺ͆uvvgxwvWwwv˻xyhxhxyʺˆwxvhwx˼˼˼̇yxwxxwhyzzy˼˼˼ۼ̼ۼ͉x˼˼˼˼˼˼ͼ˼̼˽ʼ˼ʬy˼˼˼ܽ۽yͽ۽ixyxuvwwgwuggvۼ˼̺wxwxxwxxxyx˼˼˼˩gwvxxwyvwxxwgww˼˼˼˼hyxyʬʬʼʇguvhx˼˼˼ˉyʬʬʬ˚hyhyx˼˼˼̼˻ʫʫ˻˻yyvhwxwvhWegWgfwvf۽۽͉˼˼˼˺˼˼˼˚˼˼˼hVfWggvwugWGVwgvgVvffW͙yygWfhvhgwvvg̼ۼ˼whwgxxw˼˼˼ˇyyyvxwwhhxw˼˼˼yxxyxxxxxxyxyy˼˼˼wwhhvxxxwxxxxxxyyxvwxxwxhhw˼˼˼˚˼˼˼Xguhhiuvg˼˼˼˺˼˼˼˚WVvwwhvvfg˼˼˼GWfwvwXvfWyyx˼˻˼̼˼Xgvgghvug̼ۼ̙ʬʼˬʙʼˬʼyxʼˬʼʺʚ͚ܽ˼˼˼ˉGfvvwughtwf۽ܽ۽˼˼˼˼̼۽˽HewvwXegf˼˼˼HfwgwgeuvWzyy8VgvvXegf˼˻yz˼˼˼YWvXhhvvhͩyyzXVwguggvggyyy͚ʫ˚XWvgWhuvwyxhiyxy˫˼˼˼˚HGgwggWvuggHWWvvHfWg˼˼˼yyyy۽ͽܽXfgvvvXfgvXgggvwWefg˼˼˼˺˼˼˼ˈWgfwgXevgg̼ܽ˽xyyʬ˼ˬ˺ʻʗvwwvhh˼˼˼ˈyyxʺ˙xyhxx˼̼˼˺ʼ˼ʬ˼̼˼ʼ˼ʬʺxxx˼͗y˼˼˼˅wvxuxhhvwwwhvgXgwͩ˼˼˼˗yyʼ˖xyhyx˼˼˼̹uwvwwgfuxgg˼˼˼˅gxvxhWxx˼˼˼vhwxwwhxyyyxxxxxvxwwhhxwˇyyxy˫vwwxwhhxvwxxwxhhw˫xxxxxW8fhWvWWvfh͉˼˼˼ˊ˼ˉgGewFVhvwvg˻ˊ˼˼˼۽۽͉fGVwWvWgvffW˼˼˼yzyy˼˼˼˻˼ܽ˼yyzgGfwWGhvweg˼ˬ˼۽ܽͬˬˬ˼ͽܽ۽ͼ˼˼˼yyy˼˼˼ܽ۽yyyyͼ̼۽˽xyy͈yyy̽ܽ˽whxwxwxvywhhxwvwvwhwghwvwwxwhwwhwxxxxvuvvvhfWgwvufwvwhwvgXgfxxxxvxwhwxgwgxw˼˼˼˺˼˼˼˼˼xxixx˼˼˼wxwx˼˼˼˩xxywxwXhwͻ˼˼ܼ˼ʬ˼ʬʺxxxxixhyyx˼˽ͽ۽۽yxyͽ۽۽ܽ˼˼˼ʬˬ˼۽ܽ۽yyy̽ۼۼ˼ˬʬ˼˼˼yz͚WWggghfvwfʫixhyxyyXWvWghvvg˼˼˼ˊXXvhXhuvwyyyzyyHGgwggWvugg޻˻ˬˬˬ˅wxwhXhxwxxiyyʬˬʬ˚vyxvhxxwyyzyxhxhyy˼˼˼˺ʻ˼˼˼˚ʬˬ˼yyz˼˼˼͉͉hyix˼˼˼ͼ˼˽̽xyyyyx˼˼˼۽ܽܽ˽̼˽˼˼˼۽۽yyzyyyy͙yʺʨ͉͘˼˼˼yywiwgy˼˼˼˼˼˼˼vwwxvxxhʻxxyxʬʼʬ˺xxy˼̼̽wxxwx˼˼˼˺˼˼˼xxixxuhgvxxxyx˻˩z˼˼˼˚˼˼˼ˉ˼˼˼˚y˼˼˼EwewfUVFfeff͉˼˼˼͚DffffDfFfdffͩEvfvVUfFveeg˼˼˼5gVweUe5wUVg͉˼˼˼ۼ˼uhvxwxxyxiͻxuxgvhxx˼˼˼tvxwWvwghvy˼˼˼˼˼˼˸˼˼˼˺˺˩ewwwgwewgwyx˼˼˼ͺxxvwwxxx˻˻˻vxwvxxx˼˼˼wxw˼̼̺˼˼˼ˇewwwvfwuxggyxxxyvwxhxwͩͽͽ͚̼˼̙ʬʼˬʙxxʼʼ˼ʼʼ˼ʺʙwxwxixxyxͩʻʺʫ˻ʺvhxwvxwwiwxv͆yxxyuxgwhͺʻʺ޺xxxxyxxyxx˼˼˼vwwxvxhʺʩ˻˻˻˼̼̽xxy˼˼˼xxyxhwvxhhwʬʼʬʺuhgvxxXxx˼˼˼˼˼˼˼wwx˼˼˼ͺxxyiʺʻܙͺʬʼʼʉxyxyyʬ˼ʬݺtwvgvuxgwʬʼˬʼ˼˼˼ʺʬʼˬswwwwWwuwWwwʬʼˬʹʬʼˬʹtgwgwuhgg˼˼˼ʺʹ͹ʺʺʺdvgfgdxfvʺͺʺʻxyiyiyyyyyyz޺ʺhiyxyyzyy˼˼˼yyyyyxݺ˩ͩʫ˩˼˼˼yzͩ͹yyzͩyzyy͙͘yyyʺ˼˼˼ۼܼ۽FwtgeWWvfug˼˼˼yz˽˼ܼ˼˼˼ˉ˼˼˼EfuvfTfVgeufͺFwuWegVwvtgͽܽ۽6gefefFweeWzͽͽ۽˼˼˼˺ʻyyyy޺y˼˼˼˺ʼʺʫxyyhyxyyͺʻʺvxwwhx˼˼˼˘xxww˼˼˼vwxwxx˻vxwvxxx̼̽˼hxhxxˬxxegwfvuwgwwʬʬʬ˺xx˽̼˽xyy˽̽ۼ͉̉yyzyzͼ˼˼˼˼˼˼yyyyͽ۽˼˼˼ʼ˼ʬ۽ͽ۽˼˼˼hyxiyyxxyyyʺyxʺʺ͉xyy˻ʫʹyy͉ܙʼʼʬʩˬʼʬʺݘtwhvWvggxwyy˼˼˼˺˻˼˼˼uxgvhx˼˼˼xxy̽˼uxhvXwx˼˼˼ˇyyxixhxy˼˼˼ewwwgwehgwwˬˬʼ˽˽̼xyyyyyzyy˼˼˼˼˼˼ͼ˼ۼ۽ʬ˼ˬyxy͉۽ܽ۽ܽ۽ͽ۽۽6WfwVeVFwefg͉˼ͽ˽˼˼˼˼˼˼˼yzy˼˼˼˽۽ܽEffvWTWVgeffFgvGeWWwfug˽ܽ˼zyyͺ۽ܽFguWeGVvvvw˼˼˼۽ܽ۽ʬ˼ˬ˽۽˼yyyxyyy۽۽ܽͼ˼˼˼ͼ˼̽۽y۽۽ʼˬʬͼ˼˼˼zͩ͊yy˺ʫ͉yz˼˼˼vhxwvxxwͺʺʫwXwXi˼˼˼ˆhxyxxwwhvhyͺʺʫuXgxwhixhxy˫ixhxx͆hxixʬˬʼ6vuvgdWVeevf˼˽ۼʬˬ˼˼˼˼ˊ˼˽ۼ5uvugSgUVUve۽ܽ۽6vvWdgVfeuV˼ˬʬ&fffdfFfdff۽ܽ۽ʼ˼ʬ˼˼˼ˊ˼˼˼ˉyzzy˼˼˼zyy˼˼˼ˉXgvwgWhvvgxxy˼˼˼ͻ˼ˊ˼˼XfgvguggwwWHWggggWwugW˼˼˼˼˼˼˼˼˼˼YgvwXhhvW˼˼˼˚˼˼˼ˊy˼˼˼ˉz˻whhxhhwʼˬˬ˼˼˼˼˼˼ʺ˙xxxxxyxyyzʬ˼ʬ˹wwxwxyh˫hyixhvF6gfgUvFgEU˼˼˼˩˫˼˼˼e76WeVeeWV6U˺˺vG5fVgevVgFT˼̼˼˪˫˼̼˼fG&gffdfVfFE͇ixxhyhyxhxxxxx͊yxyxyyyyzyxxʬwxxwxx˼˼˼ʬ˼ʬ˚˼˼˼vwxxgvgxw˼˼˼̅gggvhvvwWgv۽۽ܽ˻ˆvxwxwxgx͉yvxwxwxgxۼ̙˼˼˼ˇxxx˼˼˼yyxyvvxvgvggxv͇xxxxxxyy˼˼˼˙˼˼˼xxxxxyyyxxxxx̼˼˼̽gVugwWhvfg˼˼˼˘˼˼˼˺yy͚xetWFxeef˼˼˼xVugWwvvfgʻʫʙxfevVVxfev۽ܽ۽˼˼˼ˉ˼˼hVfwvwWvvg˼˼˼yhWugghvvg˼˼˼˼˚WGfwvuvhvvghWvwgghux˼˼˼whxy͉xxyyxxxxʬʼʼʩ˼˼˼ʻwvywxhͽ۽۽͉˼˼˼͉yxxxxxyxy˼˼˼yyzyzۼ̽˽ywgvwyxxx˼˼˼˼˼˼ʬˬˬ˘xxyxyyyyͽ۽ܽܽy˫ʬ˼ˬ˼˼xxxhi͙ʉyy˼˼˼͉yz͚xYxxhwhˬˬˬ˺۽ܽܽyyz͹xwivxhwxˇhihhi˼˼˼˼˼˼ˈyhxxhyˬyxixyx͊ʫʚyxwxwxxyxzyy˼˼˼xxxyxyxx˼˼˼˩FeeuVeVWetef˺˼˼˼GtdFtFGftdf˫˼˼˼GeeVuVVfdeV˼˼˼7eUuUuUWVsUe˫˼˼˼yxvvxvgvggxv˼̼˼ˇxxxxxxy˼˼˼xxxx˼˼˼͉xyyxxxxxxxx͉yyʬʼʼʼ˼˼˼wgvwxxhxyxxwxwxyxx˼˼˼˼˼˼˹wxwxh˼˼˼xyvwxxhw˼ܼ˼xxx˻˻˺ʻʫ˼˺ixxxͺfwXwvwuvwvhwwgvvwgxͩyx˻ʫvhwxvwx˼˼˼vhwxvxwx̼̼̽wxxwxx˼˼˼yyyyugggvgvgXgwʬˬ˼ʉʼvwxvwhhx˼˼˼̼ܽ˽vwxvwhhx˼˼̼˚۽ܽvxxwgvwgxxvhwvhwyyy۽۽ͩyxxxx˼˼˼˼˼˼yyyyy˼˼˼xyy˫xxxˬʼʼʼ̼۽ͪ˻ˬˬˬʼiixyhxxhxͺwghxgwʫxgvwvxwgxxxx˼˺˼˼˼ͺxwxxwx˼˼˼˺gwWwgwwfgwwghgw˽ܼۼxxyiy˼˼˼ʬʼ˼۽۽ܽ˽ۼۼ̉yy˼˼ܼyyxx˼˼˼˼˼˼۽ͼ˼˼˼yyyyy˼˼˼ˉxyyvwwxwhhxxxxxxwwvhwxxxxxxx˼˼˼ˉvhwxwwhx˼˼˼˙xyxxxxxx˼˼˼ˆwhwxgxwxxxxxʫʊ˻˻˻ˉwghwxix˫hhhh˼˼˼˼˼˼˚yʬʼʼʻyxyhxxixwXwxwXxʬˬ˼ʺyyy˫gfevgwWhwvWxfevgWwwvvW˼˼ͩ۽͚ܽxuduVGxfuV˼˼˼xvevVVxgef˼˼˼˺˼˼˼vhwyvhxwxxyhxʫˬ˼˼˼˼˼˼˼xyyxxxhyhiwxhwhXxxxx˻ʬˬˬ˼˼˼˼˼˼˼˺˼ܼ˼whwxgxwxxwx͉UftvVfFVgVuf˼˼˼˼˼˼eusuWV7eVVue˼˼˼efdvWeGfgUefdfdfFfFffFdf˼˼˼iyyiyͽܽܽܽ˼˼˼˼˼˼yyyzz˼˼˼˼˼˼yyx˼˼ܼ۽ܽͬ˼ˬˬͼܼ̼̽yxyyy˼˼˼yzzzyyy˼˼˼˸˼˼˼˺yyzͪyy˼˼˼ͩͺʫʬiyyXwuwhhivvWhguwgghvvgͩyyʫʻ͚gvtfWWxuwvVygwewgvgxfeWyy˼˼˼˺ʫ˻͊˼˼˼zͬʬʼ˼ۼ̼ۼyʬ˼ˬ۽ͽܽ˽ۼ˼yxͽ۽ͽ͈yyxͼ˼˼˼۽ͽ۽xxxfwWwvgfgghvugggWvvwghvxxxwwxwhxxvxhxhwxxyvwhwgvwghwvwxwgvwgwʬʬʬ˚hhhi˫˻˺˼˼˼ˆwXwXwxxwgiwxhxˬ˻xyyʬˬʬ˻yyy˼˼˼˚hixxxviwxhxyw˼˼˼˻ʫhhixxwgvhwxhxxxxxxxx˼˼˼˼˼̼̽˼˼˼˼xxyʬˬˬvXXwxghhiyhx˼˼˼yxyyixxxyʻʫ͉yyvxxvwxy۽ܽyxxx˼˼˼̈xy˼˼˼ʬʼʼʅwxwhxhxu˺fuwvvfvggxuۼܼ۽wxwxwxy˼˼˼ˉwvxwgxxxͽ۽۽vxwwhxv˼˼˼ˬʬ˼ʚhWugghuvw˼̼̽gftvWWxdwvg͙xy˻˺Xguhhiuvg˼˼˼˼˼˼˪˼˼˼˼˼˼˚ggegvgxuefwVfWvgxvug˼˼˼ˉͺ۽۽͚wWegvWxfvffGVwgeggvufW˼˼˼˙˼̽˽˼˼˼gWfhvhgwvvgʻ˫ˬyxy͉xxxxyyy˼˼˼̆wgwvhvwhgw˼˼˼xxxxx͈yyyxxxxx˼˼˼xyyxxy˼˼˼ˈyyyWveWvghvufgVeduFuVWeeefyxxyWfeVuVWfuefFfUVeVWftUVʼyʬʼʼܹʻʫʺʬ˼ʬ˺yyݹ͘xyy˼˼ܽvwwvxhyh˼xxyxxˬʬ˼ʼ˼˼˼ii˼˼˼yyzʬ˼ˬ˼˼˼˺hxxhy˫xxyxyyyzy۽۽͚xxwhghxhwxxxwhyyy͆xxxxy݉˼˼˼vxxvhxwhxhxxixhxyxXhxhxwޚʬˬˬˈyxxyܽܽܽiixyˬ˼ˬʻxyyhixxx˻xyxxyyyzyz˼˼˼yyy˼˽̼˼˼˼xvyxhwiw˼˼˼˖hyhyxͺ˫ʫ˼˼˼˅whhxhhwʬʬʼʺỷhxxxx˼˼˼۽ܽͺyygywxxxwgxvhw˼˼˼ˇxxͻ̼̽˼WvxwxhhhyxyxwgvvhwwXwv˼˼˼˨˼˼˼˗y˼˼˼˗xx˼˼˼ufvgguwgww˻ʻͩhxyxyhyiyyʺ͖hxxxgvwxwxuXgxwhޅxXhxhxw˼˼˼˺gxxxxxxʫʆhxixͺʫʬˬ˼xxxxxxy˼˽ۼʬʼ˼ʙ˼˼ʬxyy۽ܽ۽xgxxxhw۽ͽ۽ufhvwWwvggxf˼̼˼ˆwhvhwxxxw̼˼͚ʻ˼yyyywhvhwxxxwʬˬʬˉwwwwhxwhw˼˼˼xhwxgwxgwxgyxwxwxxxxxy͛xxyxxxx۽ܽxxxyxxxxwyxwwͺ˫xyyyyyʫyxyxyyʬˬˬ˹yxy˼˼˼̺ˬʬʬˬʬʬ˼˼˼̆ixhxyxyxʻʫʺˬ˼˼˼wwixyv˼˼˼˺˼ʹ˼̼˼fW'vvfugFvWUʬˬʬ˩VG7fufvfFeGU˼˼˼˨˼˼˼˨gW6ufwvwFvWTˬ˫gV7vvwfw5vVeʬˬʬʹGvvfwughewWyz˼˼˼zyy˼˼˼HuguwvXfwV˼˼˼˼8fgvvvXfgV˼˼͉˼˼˼˽ͽ۽HvwvgwgvuvF˼˼˼˻ʫiyy޻ʫ˫ixyxyyʫ˫ͪyyyzݪyyͻʫʫ˻x۽۽˼˼˼zVvsvWeGfefufFwtgeWWvfugy˼˼˼˽˼̼ͺͽ۽۽͉VgtgtWfveuw˽ܼۼUwdwVeVffVdf˼˼˼˼˼˼ˉ˼˼˼˼˼̼ʬʼ˼yyx۽۽͚۽yyyy˼˼˼˽۽˼͚yyzyx˼˼˼˼˼˼̺ʫxyʬˬʬʇhhhyxwwxghhʫͺ˽̼ܼxyywwghhxwuvvggwWhwv˼˼˼xwwxxxwͺ˼˼˼xxwxxhw˻˻xxyxWxwhyghhyhxʫ˫޺͗hixyxxhyxxwwXhhwgwvywyxʫʫ˻ͻʫ˺wwhxxg˼˼˼˗hxxhx˽̼˼VgcVfVVwfdWʼʼˬ˼˼˼ˬʬʼ˼۽ͽܽffbFfFfffdfʬʼ˼۽ͽܽfWcwVeVfwedg˽̼˼egSwUVUewVSgʼ˼ˬ˼˼˼ˉxy۽ͽͼ̽ͽ˼ͼ˼˼˼y͙ʬʼ˼yy۽ͽܽͼ˽˼ۼʼ˼ˬͼ˼˼˼۽ͽ۽yy˼˼˼ˉzz˼˼˼˩y˼˼˼˺yyͺyyzʺͩͩ˼˼˼۽ͽܽvvgxxxvʼ˼ˬxxʺʬʬ˼ʉxxʬʼ˼xyx˽̼˼vVvugvvwhfw˼˼˼ˉ˼˼͚˼˼˼˺˻gvxxxwgwhwxwʼʬʬʉ͉ܽ۽wgxxhwwy͉y˼˼˼˻˻˻xVcFVxeefgWdWghvweW۽ͽܽ˼˼˼ˊ˼˼˼yzʻxGdwWvgwvegxWTVVxvTf˼˼˼̼˼ͼ˼͚hXuhhhuvwxyXWfwuwgfvfyʫʬ˺͉zgGfwwtwXvfg˼˼˼hWvgghvug޻˻˻xxxyxiʼʼˬͽ۽vhwhxwzyʻyxyʼʬʬʺy̼̽ͼ˼yzyz˼˼˼˼˼˼˖xxxyh˼˼˼˺zʬ˼ˬxixxh˼˼˼ˈyxxyʻ۽۽yyyyyy˽ͽ˼˻˻xwhxxwxvʼʬ˼ʩxxxxyx˼˼˼˼˼˼͉yͺzͩʻʫ˼˼˼̈y˻wgvyhyxw˼˼˼˘Wvxxygܽ۽yyyhixxxhhyhhʬʬ˼ʼ˼˼˼ʻ͊xxxyx˼˼˼xyy͆ixxxyyywxw˺ʫhyxyxWVTvFeVVfuUfʻ˼˼˼˺ʻWeSu5uUWVuUe˼˼˼˺˼˼˼˩VfTFuVWfeUVʻ˼˼˼˺ʻGfDFtFGgtDfyy˽˼̼gvxxxwgwhwxwʼʬ˼ʚ˼˼˼˼˼̼˙ͽͽ۽wgxxhwwvwVwuhvggfvʼwwxvxx͗gwvwx˻˻ʺxxyxx˼˼˼ˇhyxyx޺͖hyxyxwwxhhwʻʫʻʻ͇WwhghyxxWvhxxg̹x˼˼˼˗xwVwewvwwgw̼̼˼˼˼˼˼˼˼Wvxwxhhʻ˫ˬyy˼˼˼˼˼˼ˆixyxy͹vGvwvvhwWxx˼˽˼ʫyxʼʼʬyxyͽ۽ʼ˼ʬvvygxxxvʬˬʬʬʬʬʼ˼˼˼xyyhxhyx˼˼˼˺hxiyh͉yyͽͽ۽ʺʫwgvhxwʻWvXgͺyyggdwWghwweGxWdgWvgwweW۽ͺ˼˼˼˼ͽͽ˼xfcvFVxfeV˼˼˼xfTwVVxgTW˼˼˼˼˼˼˼˼zy۽۽ͽͽ۽۽ͽ͙ܽyyx˼ܼۼʼʼˬʬ˼ˬyy˽ͼ˼yy˼˼˼ͼ˼˼˼yxxxxʻwwhhvxxxwʻwwvhwxxxxxxxxwhwgxxwxyʻxxxxxwhwxgxwʻ˼˼˼ˉwwhgxhyʫʬ˹˼˼˼˺ihxxxyyxxxx˼˼˼˺ʺ˻ˬʬʬʉʬʬʼʉxxyyʬˬʬʇihyyyͻWvXwxhhˬwwVwehvwwhgwxyy˼˼˼˼˼˼˼˼˼˼˼ͼ̽˼˼˼ˈxxx˼˼˼˺wGvgvwxgWWvhXg̺yyyXwuwhhivvWixy޺ʫ˫WffvwwhwvvW˼˼˼yyGgfwwvwXwfGyʻ˺yzXwvgghwuW˼˼˼ˊzyz˼˼˼˙˼˼˼ˉʬʼʬʉvhwxxyw˼˼˼˺ʬ˼˼˼˺ʬʬˬ˙yyx˫ʫxyyʬˬʬʺixxxx˼˼˼ˊwV&wegfvFwVUʫʬˬʬʺʫfG&gdfffVfFEʫ˼˼˼˺ʫvW&vewfwVgVTʬˬʬʹ˼˼˼˹ʬˬʬʬˬʬwWwuwuwWwWU͇ihxxyhihyxxyy˼˼˼xxwxxwxyyzyy͉yyyyxxyxxxxͩ˼˼˼ˉ˼˼˼˺zy˼˼˼yy˼˼˼ˬ˼˼ʬGhtgvgGvtHͽ۽˼̼˼ʼ˼ˬVgcVfVVwfdW˼̼˼˼˼˼ˬʼ˼ˬVWdwfefVwedW˼˼ʬVgdVfVVwfcWͽ۽yyͩ˼˼˼ʻʺy͚͙޺ʻʫvXwuxhhhyyyxhxyyx͇hyxyʺ˻ʺʪ͆gxxxxw˼˼˼ˆhyxxwXhxhxwvhxwvxwʻʻʫʬ͚yyyͽͽ۽ͼ˼˼ʼ˼ʬʼ˼ʬ˼˼˼yyyyx۽ͽ۽ͼ˼˼˼˽˽˼ͽ۽ͽ۽yyʬʬʼ˺yyʫʺyxiʼ˼ʬ˼˼˼۽ܽ۽˼̼˽͚y̽ͽ˼yzzyͼ˼˼˼ͼ˼˼˼۽ͽ۽˼˼˼yyyʺyyiyy˼˼˼˙yy޺ʻyyi͉zyx݈yʺ˻ʺʺ˺ʺ˻͘xvwWwvfwwgwhxxxwgvvwgͼ˼˼˻ˆgwvxw˼˼˼wwwxgwvxxw͇x˼˼˼˼˼˼˽ܽܽ۽Fgefef6weeWyz͚˼˼˼zyͽ̼̼VwtgfWFwuug˼˼˼˼˼˼˽̽˽˽UfevgUgFgdef۽ͽ۽VwuWfgGvetg͙˼vwxwg͇xxxxhvwxxwgwgvvwg˺˼˼˼wwxwͼ˼xfwgwwvwvWw˼˼˼͆xxxxgwʺ˻ʺvwwxvxhʺʆxyyxhͺʻʫʹwxhxhXwyxyh޺˼˼˼ˆxxyhuhhvxwXxyyyhʺ˫ʻ˼ʼʬʺxxvxwhx˼˼˼xixhͺxxyxh˼˼˼ˇwwxwxy˻˩vwwxvxxhxx̽˽˼vhwxgXx˼˼˼˼˼˼˺̼ۼ̉ʺʼʼ˼˼ˬʼyyˬ˼ʬʙͽ۽͚gwhvxxX˼˼˼˗xy͹vwfwfxuvwxWw˼˼˼xx˼˼˼˺yyixigwxxhWͽ̼̽˼˼˼˨˼˼˼˗yyvWvwvvhwGiyyʺyʻʻy˼˼˼˺ʺʺxyyyziyyyʻʫyy͉˼˼˼ʬy͈ugwgwthggʼ˼˼˼ˬ˼ʬʺugvwvuhwgʺͺʹtgwgwuhgg˼˼˼ˬ˼ʬʺ͹ˬ˼ʬˬ˼ʬʅXxYxX͉˼˼˼yyy˺ʫ͊yzͩͺʺyyxˬ˼ʬʉxyyˬ˼ʬʹ͉˺ʺ܊͚ʼ˼ʬ˼˼˼yy˼̼˽yzzy˼˼˼۽۽͉ixy˼˼˼y˽˼˼˼˼۽ͽ۽y˼˼˼ˉyy˼˼˼˹zy˼˼˼ˊͪ˼˼˼ʺ˺zyyyyͺ͘vhxwvxxwvhwxxxx˼˼˼˼˼˼ͺ˼˺Xgvxwhxhxyxxˬʼʬʺxx̽˽˼˼˼˼wwyxxw˼˼˼hxixͩVfdvWVGUgfef˼˼˼FWewVfVFwfeW˼˼˼͚˼˼˼͚VfUWeWVheUf͉UfevGfWVgVdf˼˼˼˼˼˼˼̽̽˽6gefefFweeW͊˼˼˼۽ܽ۽GwtgeWVvfug˼˼˼zy˼˼˼˽۽ܽܽFfevgdgUgUefͼ۽˼FwuWugVwftgyz͊۽ͽ۽ܽ۽۽ͽ۽ʼ˼ʬxyy˽ͽ˼ͼ˼˼˼yyyyyͼ˼˼˼ͼͼ˼ʼ˼ʬyy͉xyyʻݺyyxͺʻˬʼʬʩˬʼʬʉ܆Whwxxg˽˼yx˼˼˼˪vwWwuxfvwxfwixiyy˼˼˼˼˼˼˼xxXvxwxhg˼˼˼˺˼˼˼˩͗yyvGvwvvhwWyyyxyyyyxyʻhxxxyʬʬʼʼ˼˼˼xyxhghxv˼˼˼˺yxxxi͉y͉ܽʻʼywxwxvʬʼʼwxwwwhx˼˼ʬxx˽̼˼xyxʫˬʼʼܽͽ۽yx޺xxxy˼˼˼˺xxyhʻ͗xxyxxxhwhxuʺ˻ʺwxwxv͆wwvxxxʺ˻ʆwhwhxwʫʺyxxxi͹˼˼˼yxwuhgxʻ˻ʫvvhwgtwWxv˼˼˼˼˼˼͇ixxxy̽˼˼˼˼˼˹xxuvwwfwuxfwv˼˼˼ˇxyvxwxg̻vwxxgvgxwyy˼˼͊˫˫wgwvXvuvggfxhvwwxv˼ʬʬʚ˼˼˼ܽͽ۽xhvwwxv̼˼˼˙ʬ˼ʼʺgdGvwvvfEfWSʺ˼˼˼˺ʬʼʼge8veVVXcʬˬʼʺʺVUHweVVeHSʺ˼˼˼˺ʺʬ˼ʼgeGvwvvfUfWR͚ʻʫyyxxxhxxhx͗hyyix˼˼˼xyyxxwxywwyyxxyxyy͹˼˼˼˚zy˼˼˼˚yy˼˼˼˙hxxxx˼˼̼˙ʬ˼ʼʈyxyʺ˫ʬʼʼʚxyxyxx˼˼˼ˉʬʼʼ˼˼̼˻ʫvhwhxwhwvwggXvuW͊yyhxuhhXwvWyyhiggfwwwXguvV͉ʺʫyy˼˼˼ʻʬyxyXgfwwwGwvfG͚iWuhhhvgiyxy͚hVfwvwWvvgyxʺʼʙyy˼˼˼hWvgghuuwޙʬ͉yXGfwwwgvtfgyyvxwxwxgxܽͅgggvhvvwWgv˼ۼ˼˼˼˼̉˼˚˼˼˼vwxxgvgxw͉vxwxwxgxʼʬˬ˚xyxxh˼˼˼̼˼˼˼˼˼˼˼yzyywixvxwxyyyͽ۽ܽͻ˻xyyxiyiyʼˬ˼yxͽۼۼ˼˼ʬʬʺʻyyxggvwgvgVdevU˼˼˼˽˼۽˽ͽͽ۽ܽhgvwgGeuwV˼˼˼˙˻ʻXfvwgWutwVzz˼˼˼͉yz˼˼˼˻˻gWwhvXWeuF̼˼̼˼yyxxxxʺʼˬˬͽͽܽܽwxhwhwxwʼˬˬyxxxʼˬʬʉ͇xyy͇hxxxx˼˼˼xxʫʫʇxxywwxw͗hyxyxyxxhi˼˼˼ʬʬ˼̺˻ʺwyhwxhxvyyxwxwxwXx˼˼˼˻ܽͽ۽yyyhxhy˼˼˼͙yyͩzyʬ͹ʻWVfvfufUeUfV˼˼˼˻˼˼˼˺WfeVtVFVeeU˼˼˼˪VfuWeWVfeuFʻGeeVuVVfdeV˼˼˼˺ʻʼʬˬ˼˼˼˼˼˼˼˘xxxxyyxiihwxgxwyxyۼܼ˽˻˻۽ܽܽyzyyʻyyyxxyyyxyhhh˼˼̼˼ʼˬˬ˼˼˼˚yy˼˼˼ˉy˼˼˼ˇxxxhy˼˼˼ʺʺʺwhwxgx͇xyyhxwxxxhXxv޺ʫˬyyyhiͺxhyhhʬwhwhXwʻwhwxhxv˼˼˼˚̼ۼ̼˼fvuvWfWFeduVʼˬˬ̼ۼ̼˼ʼˬˬVvugeW6fdvVʼˬˬ˼˼˼˚gghvHGvtGͽͽܽܽVvugeWFfcvVʼˬˬͽܽ۽yxyͼ˼˼˼ͽͽܽܽyyx̼ܼ˽͉ͽͽ͉ܽܽyy˼˼˼ʼˬ˼˼ˬˬ˼ܼ͚yyyyͽ۽ܽʺʫ˼˼˼yyzyyy͚ͺͩˬ˼˼˼˼ˉxwhxxwxvʬʬʼʈyxxyʬ˼ʬʬʬʼʉ˼˼˼˺hxxhxxyxxxyxy˼˼˼˺ʻʼyywxgvhX͇ixxhywxhvxWxˬ˼˼˼˼˼˼ˈxyyxfvwwWwfxWwv˼˼˼vvhwguwGxv̽ۼ˼˼˼˼˼˼˼ˈxxxyyy˼˼˼͉yyy˼˼˼y˼ˬˬ˽˼˼͉ͽ۽ܽܽͽ۽ܽܽܽܽͽ̽ۼ˼͉yxxʼˬˬxxxxxwhwxgxwʻvwwxwhhxxyywxwwhxvxxxxxʻxyxwwhhvxxxwʻzyz˼˼˼gwvggvgVUevF˼˼˼˻˻˼˫hwvwwgGfuwF͉zyyͽܽܽXvvvwgWftwG˼˼˼˙˼˼˼˽۽˼ggwhvXWfu6xy˼˼˼Xgvgghvug͚iXvgghvug˼˼˼ˉ˼˼˼˪hguffwewug̼˼˼hgvWvWwetV˼˼˼˻˻hWvgghuuw˼˼˼ˉyޚwgufwfheug͘y˼ʺʺyyyhhggYuugͪͻˬwgvwWWhdvtf۽ܼۼgWufVhvwdWy˼˼˼ˉ˼˼˼xVdUUxfdgͻxGewfvVwvtg˻˻ˊxVeVFxecf˼˼˼zܽ۽۽˼˼˼˚yy۽͙̼ۼ̙ʬʼʬʪ˼ʬʼ˼ʬʼʺʚ˼˼˼˺˺xfevVVxfevgWvWwghfef۽ͽ۽yy͙˼˼˼xWvWgwfvef˼˼˼xfuGVxUdeܼܽ˼͇wuhgyyxxyyxyh˼˼˼ˇxxxyުwiwxx͗xyxyxwvywxh͗xwvwg˼˼˼˺xihyh˼˼̼ˉyʬˬˬ˻gwxvhyXʼ˻xwyvwyg˻˻yʼˬ˼ʇxyxihveVfggVvDgES˻˼˼˼˻ʫʼgUGwwwewEvFd˼˼˼vdVvgwfw5gFT˼˼˼ʬʬˬ˺˼˼˼˩ʼʬˬweWwvvfgEw6T˼˼˼xVugWwvvfg˼˼˼˼ܼ˽yyyxfevVVxfev˼˼˼˺gVugwWhvfgͽ۽۽ܽxetWFxeef͙ʼ˺ʼˬˬˉyyyyx͙˼˼˼xxyxyxhxxxʬyyͪxwxwz˼˼˼ˉ˼˼˼˚yy˼˼˼˺ʻwVFvfwFwEwDT˼˼˼˪˼˼˼˩UEwVhV6hEUvF6gfgUvFgEU˼˼˼˩ʫvVFwegVvFg5E˼˼˼˩igvhXhuvg̼˼˼hfuvgvGwtuf͚˼˼˼˺XWvgWhuvw˼˼˼˼˼˼ˉ˼˼˼˻˻ˈyyhgfWWwewfg˼˼˼˘wvxXyg˻˼ˬˬʚxihyhyhihyyyy˼˼̼ˉyyxʼʬˬ˻wxyvhygwʺ˻X7fwgWhdeV˼ˬʼ̼˼̼˼˼˼˼ˬʼܽͼ̼˼YFeVVYdef̼˼̬˼ˬʼ˼ˬʼͼ̼˼̬˼ˬʼXGfwgWhceV˼ˬʼ˼˼˼ܽͬ˼ˬʼͬ˼ˬʼͽܽͽ۽IGvgGittgxx˼˼˼xxʉ͗yyxyhxhxy͉xxwwwyyixi͚xx͚wwwxxxwggw͛xxxwvxhhw͚yxxܽܽ͊wwyxxwxxyy͗xx˼˼˼ʇyxhxi͇yyyyyhyhwxxwxxyyxyyz͗yyiyhyxhxhwxgiw͉xyhyh˼˼˼˗wxvhgw͚wiwXXyyhxihwvXWމzzʬxyhxxyy͉˼˼˼yyyxxyxx͇͇xwwxwʺfUvWhUEh5Tʺ˼˼˼ʼ˼ˬ˹˼˼˼˹eVgxe6X6eʼˬˬvVFwfwdwFg6Uʼ˼ʬ˺ʺʺvVVwfwewFg&Uʼ˼ˬʹ˼˼˼˺ʼˬˬʙvhwyvhxwyyxxx˼˼ˈ˼ʺʼʼˬ˙xyhhhyyyxxyxʼˬˬʻˬ˼˼˚͘yyx˼˼˼hgvgWhvvghWvhXYvvhͺyyyy͚wgfWwWhefgiyyiywfugGhevuWzyʻޚyyy˼˼˼˚˼˼˼ˉyyz˼˼˼˚͇xxwiwgy͚wwxwxwxwwwvhwvhwyx͚xxxyxxܽ۽˼˼˼˻xyhhxxxyxʼˬˬ˙ʼˬˬʬ˼ˬ˙˼̼˼˻ʼʬxywgxgwxyyyxxx˼̼˼˺˼ʻʫyxyyyyxyy˼˼˼xWfWvGwveW˻˻˼˼˼˽ܽ۽۽xVUFFxfUgyyzxVeV6xedf͉ʬ˼˼˼zyy˼˼˼˻gGfwWGhvweg̼ܽ˽vfVuggVv5gEDʬʬˬ˼˼˼˻ʬˬˬwVGvwveg6wFU˼˼˼veVvgwfw%gFU˼˼˼˺ʼʻ˼˼˼˸˺gfWvwfw6v6UWGVwgvgVvffWyz˼˼˼ˉhVfWggvwugʻ˺˼˼˼ͽ۽۽gWfhvhgwvfg˼˼˼˺ۼۼ˼hWegWgfwvfygWufVhvwdW˺˼˼˼ͽͽ۽˼˼˼gWdWghvweWfGewgvggvfUW˼˼˼ˉ˼ܼۼ˼˼˼yyWXexgvgWveH˻˻˼ˬʼxzˬ˼ʬʚʺʼʼ˼̼ۼ̙ͽ۽͉ʻʫiyyHWfvvWvuvW˼˼˼˚xXgugghuvgyzͺʫʫ˻WVvwwhvvfgXgvgghvugyͩ˼˼˼˼˼˼˺hhuhhXvvgXWfwwGvvfWyxx˻˻˻˼˼˼˼˼˼˼gWvwwXfuffhgvggXuugͼ˼˼˼˼˼ˊXgvvvfWuwf۽ͽܽyy۽ܼۼXfgvvvXfgv˼˼˼˚˼˼˼WgwfvXuvvfHVguuHvgf˼˙˼˼˼wxwhvwxhyxxyxxxxxxyyxywhwgxxw˼˼˼ˇxxxxxxyyx˼˼˼ˆvxwwhhxwvhwxwwhx˼˼˼ˉyxy˻˻˺˼˼˼wxvhwxxwwxwxxwhxyhxxͽ̼̽˻xy͆uvvgxwvWwwvx͆wxxvhw˼˼˼˻˻˻˻zvyxvwxxʻʼ˼˼˼˚hxhyh˼˼˼ˈyyxʼʬʬ˚xhghxvʼʬ˼ʉyxxxxxyiy۽ͽ۽۽ͽ͉xy˼˼˼yyyzzͽ̽˼ͼ˼˼˼xy̼˼˼˼˼˼˼˽̼˽ʼ˼ʬyʬʼˬʙ˼ˬʼ̼ۼ̙yyͽ͉ܽ˼ˬʼʺʚ˼˼˼˼ͼ˼̼xxuwggvuwgfw˼˼˼˹vwwwhvgXgw˼˼˼˖xyhyh˼˼˼gwxxhWyy˺˺xvxuxhgxy˼˼˼˻͹̈xxxwxwxxw˼˼˼xvwwvxxhyyyʻwxwxxvhwxvxwx̽˼˼˼˼˺˼˺xxhyhuvwggguhgwwͩvxxxwwww˼˼˼˼ʼʼʬ˺˼˼˼˗vwwvhhwxwhhw͆yyxxxxx˼˼˼˼˼˼˼˺ʺ˼ܼ˼xxyxhxxxxwvhxwʺxxhxh͇wvwghxxixxͺʻ˼˼˼˺ʻwxxwXhx޺ʻhwvXW͹xyhyhxixhͺʫ˻hyxyXWfwuwgfvfYhugghugyͩ˼˼˼yxXgvgghvugyHWfvvWvuvW޺ʻʻyy͉ʼ˼ʼ˼˼˼˽ۼۼxxyͽͽ۽͈xy˼˼˼ͽ۽۽ܼ̬ʼ˼ʬͽͽ۽yyʬʼʬ˺xxixxxͼ˼˼˼˻˺͆wwhXxwxyvwxxhw˻ʫʼ˼˼˼xxxwhxw˼˼˼˼˼˼˼wxww˼˼˼˺hxixhyhyxʫʫ˼˼˼̼ˉxyy˼˼˼yyyhvwgwʬʬʬˉhyhyx˻ˉˬʬʬʇWvXgfwhwgvfggWvxxxxxxuwgwWvvfghgvwhwgvwghwwwxhxwvwxwgvwgwvxhwwxhwXWvgWhuvw˼˼˼˼˼˼˼GGwwfvfXvgg˼˼˼˛XXvWgivvg˼̼˼yyx˻˼˼˼˼WWggghfvwfxxyʼ˼ʬ˺yy˼˼˼ˈxxxʼʼˬ˹˻ʺxyhxh˼˼˹˼˼ʼ˼ʬ˙˻ʻgwgxw͹ʺʺ˼˼˼vxvhxxwxixhxxhxy͆xyixyʻޅwxxwXhxyyhxivxwhwxxhWhxwˬͩwxxwxwhvwvwhwghwvuvgfwhwvfXwvxxxxxxxvugvghwWgfvxwxyghwwwxwhwwhwx˼˼˼˼˼˼yyyyz˼˼˼ܽܽͬˬˬ˼˽̼˼xyyyxyͼ˼˽̼yyyyܽ۽ixhy˼˼˼8VgvvXegfˬ˼˼˼ˉܽܽ۽˼˼˼yyHfgwvXUweGgwguwhevV˼˼˼˻˻˼˼˼zyHgvwwggduwf˽ۼۼvwxxwxhhw˫˺xxxxxvhwxwwhx˫yxyyxxxxx˫xwxghwwyxywhwgxxw˫˺vxwXgxxx˼˼˼˼˼˼˹fvwuwwvWvxv̖hyhyy˼˼˼ˇyx̼̼̽uxhvXwx˼˼˼˩˼˼˼˺ʫ˫yyyvgwwwvHwgyyxͼ˼ۼ˼۽˽yyy۽۽˼˼˼˼˼˼yyܽ۽͉ˬˬʼ۽ܽ۽ʼ˼ʬˬʬʬ˼˼˼̉yxy˼ʬˬ˺̼˼˼˖hxhyx̼˼˼yyxʻxwywhxxw˻ʫyxˬʬʬˊxxxx˼˼˼yy˼˼˼͉yyxwgwvhvwhgwxxxxxxyyxy͉˼˼˼xxxxx̼˼̼ˉxʫʼ˚˼˼˼wwxhwwhwwܼܽ˼vvwfgufWgv˼˼˼˚ywwxwhgͽܽ۽͇wwxwhg͚ˬʬʼʙ˻ʻwxxwh˼˼˼wwwxyxxxxwvxw̺xxvxww˼˻ˇͺxͽ˼˼vwuwxgvgwvu˼˼˼˺yxxyyxx˼˼˼˼˼˼ʺ˻ʻ˼˼˼˺ʬʼʼvhwgxhvwwx͇xxxwvwg˼˼˼˼˻˺̼ۼ˼xxxxyxxyxy˼˼˼˼۽ܼzyyyyxxyxxxʬ˼ʼʩ˼˼˼˻˻wxvwh˼˼˼˽۽yxʻˬ˼ʼxgV7wvvtfVfGT˼˼˼˩˼˼˼˺ˬˬʬʩgUGwwwewEvFd˼˺ʫʫVFGgvfufVe7T˼˼˼˪˼̼˼˺ʬˬʼʹgVFvgwuwVvGShfvvWggwweW̼ۼ̚ʚhguwgWggwfVyyyggfwhvhgxvfW˼˼˼˼˼˼˺˼˼˼WWfggvgVwfVGͽ۽۽yyʼˬʬʉʺʬˬʼʉxx˼˼˼ˇwhhxhhwʼˬʼʚ˼˼˼˺˼ʻhxixiy˻˻wwywxxhxyxxx˫ͪxyxixgwgxhxxwXhwކwxxxhXxv˼˼˼˪͇xxxhiwxxhhgyxxhyxyxihͻ͚WfwvgvwXdvg˻˙˼˼˼˺˫˫˼˼˼XegwvHewf˼ܼ˽XfvwgWutwVzy˼˼˼HVgvvXegfܽܽ۽yy˼˼˼˺yxyˬ˼ʼxxx̼ۼ̼˼xxxwyvxhhʼ˼ˬ˙ʼˬˬͽ۽ܽ۽xyʫʻʚ˼˼˼wxvhvhwxwxxwhwx۽ܽܽyyzʼʼʬ˚vvhugwfWfgv̽˽˼xxwggxw˼˼˻͉zxgvVVguvvfyyxhWvgWXvvgyiyʻ˼˼˼wfugGhevuWhgvgWhvvg͉yzywxvwxg˻˺ͽܽܽ˼˼˼yyyyyxxxxyʼʼʬ˼˼˼˼˼˼˼˺xxxyyyzz˼ܼͺyˬˬʼ˫xyxx͗hvwwvxwwixyv͇y͇xxww͈ܽܽxxxwxww˼˼˼ˆwxwxwXXͽ۽۽ܽʫ˻yyxywiwxhhwxyxih˫˼˼˼ʼˬʬͺyhihyyyyͺzʺʺ˼˼˼ˉyyyyyxݺʺyyhyyyʻʺyiy޺ʻzyʻͺyghgxwyyixhhy˼˼˼ʻʺ˼˼˼ˈxyyyxhhhwxwxWXx˼ʬˬ۽۽ܽGfeUuUVfdeVyyWfeVuVWfuefVeeVuFWfedVWvvfVgwuugyxxyʬ˼ʼʺʻʼʚhxxh˼˼̼ˈxyxxxʬˬʼʺ˼˼˼xhwxgwxyxxyyyʫʬ˫ʬˬʼ˼˼̼˗xyxix͈xhyhxކhxxwXhwxyyhxˬʺ˻ʺ˼˼˼ˇxyxihwxhvwhgwhhvxWxʫˬʻ˫whwhhwͼ˼˼˼ii͉yzy˼˼ܼ˼˼˼ͽܽܽ۽͈˼˼˼˼ˬˬyyy˼˼˼ͼ̼˼yyyͽ۽۽ܽyyxxxvwXwfuvgfgvvggggvugWhwxxwxwxxwvwhwgvwghwxhxwxgxvwxwgvwgw̼ۼ˼xwvwVVgfvvW˻˻˼˼˼˚hgvwgWXwvW͉xyy˼˼˼hwvwgWhwvW˼˼˼˼˼˼˼wvuvgGhvvuFxyyyyxy˫yyxyx˼˼˼˼˼˼˩vvwWfvwWgw˼˼˼whuxXgxyhixͻʫʬyyyͩgwhvxXXͼۼ˼vwwwhvgHgw˼˼˼˼˼˼ˈyyyx˼˼˼ˊyy˼˼˼ewewFfFVfUef۽۽ܽ˼˼˼۽ܽܽVguWfGGwevg˼ۼ˼˼˼ˊfvtWf7VfeuV͉zyfwuWuGVwdvg̽ۼ̼ͺ˼˼˼ܽ۽͉yy͚yyyͽܽ۽ܽ˼˼˼̽˽˽yyͼ˼ܼܼyyܽ۽ܽˬˬ˼˼ʬˬͺʬʬ˼ʻʫ˫˻yyxyyyxݙʼʬˬ˺ܺʬ˼ʼʚz͚vwVwuhvggfvgxwxxw۽۽ܽ˻ʆgwhwxw˼˼˼wgxxhwwͼ˼˼˼˼̼˗xxx˻˻ʼ˼ʼyyyywygxw۽ͽ˼˼˼˼˼˼̼ˆxxxxh˼˼˼z˼ͽ˼y˫˺ˬʬʼʗxxx˻ʪ˻˻ˇxwwxvxxͼ˼˼xxyxx˼˼˼˺wwwʬʼʼʼ˼˼˼wxxxvhyxx˼˼˼xxwxxhhw˼˼˼˹ͼ˼˼vxwwhxwxx˼˼˼˺˼˼˼xxvwxwxx˺vxwxwxy̺˼˻˺egwfvuwgwwixxxy͉xy͇xxx˼˼˼vvxvgvggxv˼˼˼ˉyyxxxxx˼˼˼ˉxxxxxx˼˼˼xxxxxyyy͙xvxwxxwiʼ˻˻ʬˬʬʺxhwxhxyihxxy˼˼˼˼˼˼˚yxyxxxhyʼʬʼʻ˼˼˼gvxgvggfvvV˼˼˼˺˻WwfwwgXvvgVyyۼۼgwvwvfhvuwV˼˼˼ˉͽͽ۽fwuggvWgefvEyzy˼˼˼̙˼˼ܼxͽͼ˼˼yyyy˼˼˼ʼ˼ˬ۽ܽܽ˼˼˼ͽ۽ͽ۽˼˼˼yyyy˼˼˼xxxxxxxxxhwgwwxxxxxwwhhvxxxw˼˼˼ˉwwvhwxxx˼˼˼ˉxxxxxxxxxx˼˼˼ˇvwwxwhhxxyyyx̼̼˼wxhwxg͇xxhhxxhwwhg˫˼yxywxhwxgx˼˼˼vgwWvfwVww̺˼˼˼ˈxxwxx˼˼˼ˉgVgggXvuwg˼̼˼hgvXhiuvg˼˼˼˺˼˼˼yhgvgWhvvg˼˼˼WWggughvgW˻˻xyxyh˼˼˼ͺywhhxhhwʼˬʬ˺xyhyhxyy˼˼˼ͽܽ۽ͩʼ˺˫xwyxxgwxxxxxyxxxxx͉xyvvxvgvggxv˼˼˼ˇxxx˼˼˼xyy˼˼˼˼˼ˇxxxxxyygxvgvggevvfͽ۽۽ʻʫggvvfheuwg˼˼˼zfguwgvWgTfvV˼˼˼˪˼˼˼˘˼ܽ˼WgfwgXevggxwwhvwxh˽ͼ˼ʬˬˬ˙wwxvxxh˼˼˼vwgwfheggWv˼˼˼̈ͽ۽ܽyy͚wxwxvxhhwʬxx͆ixyxy˼˼˼yʫʫˉhxxyxyy͇xxwxxwyy˼˼˼VgeVeVVveeG˫˺˼˼˼ˉ˫VfTFuVWfeUVeVevVvVgeVeV˼˼˼˪VfeUuEWfedV˫˺˼˼˼ˉʻʫ͉y˼˼˼͉͉z˼˼˼ͺ˫ʺ˺yyhxxhhyhix˼˼˼̺hwixhwwyyywXwxwXx۽ͽ۽ʬʬʼʺxhhiyxyy˫˺˻˻˼ʬˬ˼˼˼yyyyzxxxyyxwiwxhxvyyyܼۼ˽˼˼˼˼˼˼ͽܽ۽ܽʼʬʬˈyxyyyyiiVeGfwfvf4eWT˼˼˼˺˼˼˼Vf8veVEeXT˫˼˼˼GVGvvvvgEtGTʫ˫˼˼˼VfGuwfvfEeWC˼˼˼yyxxxxwywyyhhy͗xyhhx͈yxyxxxxyyxyyyzͩ˼˼˼˙˼˼˼˚˼˼˼ˊyyyyixhxy˫wwhvhyyyyyˬˬʬʺ˫˙hxhxyyy˼˼˼̼˼˼˼ˊ˻˻ˬʬʬ˚YwXhXwvwgghwuW˼˼˼˼˼˼XwuwgghvvWxyyyWffvwwhwvvW˼ܼ˼˻˻˼˼˼ˉHgvwvvWwufG˼˼˼˼˼˼z˼˼˼˚y˼˼˼˩͹yyyyy͊ʫʺ˼˼˼ͩ˼˼˼VeVeVVVeee˼˼˼VvtvgeGVeevVͺ͉EwewfUVFfeff˼˼˼VwewfdVUfTffͩ˼˼˼yxyy˽˽˼ˬʬ˼۽۽͚˼˼̼yyy˼˼˼˼˼˼yyzy˼˼˼iiܽ۽ͼ˼˼˼͘xwwxxxw˼˼˼˺gwwhhxͼ˼˼xhihxxxhwgh˼˼˼˩˻ʫxxxy˼˼˼xxihh˼˼˼ʼʬˬˆwhXXw˻˻xxx˼˼˼fuhvfwvggguͽͽ۽ʬʬʬ˚wxwwxxx˼˼˼wvxwgxxx̽˼˽˼yyvxwwhxvˬʻͽ۽giwxwwʫʺxxxʼʼˬxy˽̼˼xyx˼ʼʬˬʬʼʆxwuhgxhyxyxͼ˼˼˼˼˼vuwvvwfgwxu˫˫ʻx˼˼˼˘x˼˼˼uxgvhxxͩ˼˼˼̗yy˼˼˼vgwwwvXwgvXwuxhhʻʫ˼˼˼˺ʻʻwYhh͇hxyxxvhwwxyʫʺgvwwxixxxxʺ͇ixxxyͩhyxxʺ˫hxhyhͺͽͽ۽xwwivy˼˼˼wiwhXʬʬʼʺy̺˼˼˼˫˺xxxxiʬˬʼʚyyxʫyy˼˻whwxhw˼˼˼wghxgwhyxhxͺxyxx̼̼˽̼wgwxhg̺vvvwWwvhWvw˼˼˼˺xxxxw˼˼˼˙˼˼˼fwdwVVVUfedfͼ˼ܼ˼˼˼˼˼zyVwtgfWFwuug۽۽ܽ˼˼˼ˉyyfvsWfGVfeuV͙ggtgeWVwdugͽ۽۽ܽͺy˼˼˼̙˼˼˼zyyyy˼˼˼ͼ˼˼͚ͽ۽ͽ۽iyyyͽ۽۽͈xyy˼˼ܼ˼˼˼ʼʼˬzyyyyyͺ˻ˬ˼˼˼˻ʫˬyyhiyyiމzxyxͻʫʫ˻ݪyzyyͺ˼˼˼˙ggggwhuuffͽ۽ͽܽhgfwuggugfy˼˼˼XfgvvvXfgvʻ˻ʫXVWvvXvWf˼˼˼˚˼۽˼ˬʬʼʆwwhxxgw˼˼˼ufwvWvgggf˺˻wwxhwwhwwͽ̼̼yyͽ۽۽ܽ˼˼˼ˆwwhxxgwyy˼˼˼yxxyxxxxxx˼˼˼wgwvhvwhgw˼˼˼˼˼˼ˉxyyyyx͊xxxxyyxxxxx˼˼˼˼˼˼˚xgeggguvefywgtWWhevvV˻˻˻˼˼˼˪˼˼˼hhuhhXvvghWugghvvg̽˽˼˼ˬʬʇgwvhX˼˼˼ˈy̩ͽ۽ܽvwwxhvzyhxixi˻ʺ͉˼˼˼xxxyhʻ͚wiwxvWwhg͇vhwxwvhxxxy˼˼˼˙ixxxy͖hxxxxhyyyxwYhh޺۽ͽ۽˫˺zxxxxyywihhww˻˻˻˼ܼۼ˼˼˼ˬʬʼʩxxxyx˼˼˼ˈyyihxxhyyʼ˼ʬ˼˼˼˺͙yݺʬʼʬʙyʻʫʬʼʬʩʺ˻ʻܺyywygxhhw˼˼˼˽̼ۼۼ˼˼̼˼˼˼˼xxxyyyyzyyxxhxix˻˻ʻ˼ʼʬʬˬ˼ʺ۽۽hyxixxyyWfUVtVFfeUVWfeVuVWfuefyyVfdFuVWVeeUyxxygweWgWgvffhxhyyy˼˼˼˚ʬʬʼʻihxxyXwxxwi˼˼˼˺˻˻ʬˬʼyyxhxwwyvʫʻxwewgggfveWyyʺ˼˼˼˺hxuhhXwvWވyyihguwgghwvWzyyˬʻwwtwWWhfvvFxyyͽ۽ܽ۽˼˼˼˼˼˼ʼ˼ˬyy͉yyͽ̽˼ͽ۽ܽʼˬˬͽ۽ܽ۽ͼ˽̼̼xyxvwvwhwghwvhwwxwxxxxvfgvwXwughwfvvfuwhgggguxxxxwwxwhwwhwxwwixxxxvxxy˼˼˼hxyhxwwhgxhxhhyhx˼˼˼˻ʫ˻˼˼˼˺xwwxxxxxwgvhwhx̽˽˼XgvWhʬʬ˼ʼ˼˼˼˻˻˻xxxxgV'wvvufVfWT˼˼˼˩˼˼˼˺ʼge6wfwvwEvWTʬˬʬʺʬˬʬ˩VV7wufvfVeGD˼˼˼˩˼̼˼˺˫˻ʫgf7vwfwVvVSggewfVhwwtG۽۽ʫggdwWghwweGyyzfWUggvggwfeG˼˼˼yy˼˼˼ˊ˼˻˼˼˼ˊ˼˼˼WhexgvgWve8̼ܽ˼yyyyx˫yyyyx˫˺ʫ˺ʫyy˼˼˼viwxxxwʻʬʬʼ˼˼˼ˉhxhxy˼˼˼ˬʬʬʺxyyxyʬˬʬʹ͛xxwxxwxxxhhwxgxx͇whhhwxxxxxxxxxxxxyxyyxxxͽ۽۽hxhyx˼˼˼ʬʬʬ˺xxx˼˼˼ʬʬʬʬʬʬ˺yxxʻyy˼˼˼˻ˬʺxwggw˼˼˼˺˻WXexgvgWveHܽ۽gGUwgfgfvveW˼˼˼yy˼˼˼ˉyhWdVwfgvuWۼ˼˼hWegwWgvdW˼˼˼˼˻ʼ˼ʼʼ˼ʬܽ۽۽̼˼yxx͉xy۽̼̙yyͼ˼˼˼ͽ۽ͽͽ۽˼˼˼yyWhwxxgͼ˼˼xx˼˼˼˻˼˼˼˺˼˼˼guhvxxxyxvgwvXwghwwͩ˼˼˼˘yy˫˼˼˼˗hyhyxufvgguwgwwͩwwhhvxxxw˫˺yxywxwhvwxh˺xxxxxyyxy˺whwgxxwxxxxxxwxghww˫˺˼˼˼WgwfvXuvvf˺yy˼˼˼˚HVguuHvgf۽̼ۼ˼˼˼XgvvvfWuwfXfgvvvXfgvܽܽ۽iXvgWXvvg˼˼˼˼˼˼˼XGgwffGvvwgxyy˻ˉhWvWgXuvwͼ˼˼˼˼˼˼˼˼˼˼hWwgvgWfgf˼˼˼˺ʺxyhyWWvvuvHvfWhhggYuugͺy͈xyhguggXvvg͉ygWvwwXfuffʺ˻ʺyyʬʼʬʙʼʬ˼̼˼̙ͽͽ۽͉ʼʬ˼ʺʪ˼˼˼˺yzggwwguwHdvfͽ۽۽ܽhgvwgGeuwV˼˼˼˼˼˼ˉyyXVgvv8egf˻˻XfwvwHUge˼˼˼˙۽̼˼ʬʼʬ˚zvxxvwxyʫʺ˼˼˼˼˼˼ˉyyxxxxxy˻˻xhghxvʬʬʼʻhyhxhʻˬʺWWvvuvHvfWyzy͙hguggXvvgʺ˻ʺyyihVfwvwWvvgxhgvggXuug˼˼˼˚ͺwhwwxxxwwhxgyxvvwfwXwufhgvxxxxxxxufvwggvWhgvvwvwhwghwvwwxwhwwhwx˼˼˼ˇww˼˼˼hxyxxʬʼʬ˺xxyyxxxͼ˼˼˼˼˼˼ˇvhwvhwwwxvxx˼˼˼ʻwwhwhxͺ˻ˇxxxyy˼̽˽ͽ۽ܽ۽ʼˬʬ͉yy˼˼˼ʬ˼˼xyyͽͼ˼˼ͽ۽ܽ۽ܽ۽˼˼˼͉y˺yx˼˼˼vwxhxwwxxwhx͇xxhyx˻˼˺vuwvwwgWxvv˽˼vxwwhxwxxw˼˼˼˚zxͽ۽͚̼ۼ̙ʺʼʼ˼˼ˬʼˬ˼ʬʉʻ˺ʼ˼˼˼xxixxx˼˼˼˺˻˺xwvhxw˼˼˼wwwxͅwxwXhwʬ˼ʬ˺wxxhxxw˼˼˼˪yxͼ˼˼xixhކxwhxXxwʻʫ˼˼˼ˇxhWhxw˫ʫyxhxxͺʺxwwvhxyxiyxͺixhyyvxxvhxwhxixvxwuXhx˼˼˼ʬ˺yyyvvxuwvfWwwvxyͽ̼˽˼˼˼˼˺̅xgvXwxxx˼˼˼˗yyhyh˼˼˼˼˼˼˹vgwwwvHwg˼˼˼ˇvwwxwhhxyxyxxxxxxyyxwxwhvwxh˼˼˼ˈyxyy˼˼˼vhwxwwhxxwxghww˼˼˼yxxyxxxxxxgWfhvhgwvfgzy˼̽ۼgVugwWhvfgͽͽ۽ܽ˼˼˼˺ʫˬVGfwgfgWvvVWͺ˼˼˼˼˼˼˘gWvWwghfefxyhyhʺʻ˼˼ˊyyywvwgh˻˺xyhyhʬ˼ʬyyx˼˼˼˼˼ʬʗgvXWͼ˽˼wwxwxxxhyhxx˼˼˼xxwwxxvwwvxxh˻˩vhwxvxwx̗xx˼˼˼˺yyyʬuvwggguhgwwͼ̼۽˼˼˼˼yyyyz۽͉ܽyxyͽܽ۽yhxiˬˬ˼˽̼˼˼˼˼yyyyyyx˼˼˼˼˼˼yx۽ܽͼ˽̼˽ʼˬʬ˼˼˼zyyyz˼˼˼˼˼˼iyxy۽۽۽̼˼˼˼۽˼͈xyy˼˼˼˼˼˼˺XgugghuvgGWfwvwXvfW͚˼˼˼ˉxxy˻˻˻˼˼˼XWfwuwgfvfXhvhhhvugͼ˼˼wxwhxwwhxvwhxwvwhwgvwghwvwwgvwgxwxxxfwWwvgfgghvvwhwvgufWggxxxxwhxXxw޺ʫhyhyxhvwgwxxixx˼˼˼˺ʺͺͺvwxxhwʺWvwXhhxhxxͩhxixʺyxyˬʬʬˬʬʬ˺̼˼˼̉xyyxyˬ˼ʬ˼˼˼̖xwxwhyxwˬ̼˼˼ˇxyhxhʬʼʬʪyyxʻ˺ʺܙyyʼ͉˼ʼʬ͉͉yyyʫʉ˼˼˼͉͊ʻʉyxyyyͺʺ޺ʻʺxyhyyy˼˼˼˺˺ʺyݺ͉yugwgwthggʬʼʬʼ˼˼˼ʺʬʼʬuwwwwWwswWwwʬʼʬʺʬʼʬʺuwvgvtxgw˼˼˼ʺʺͺʺʺʺdvgfgdxfv͙ͺzyyy͹ʺ˺˼˼˼˼˼˼ˇixyxewwwgwewgwvvhwgtwWxvy˼˼˼˺˼˻x̼˼vxwuxh˼˼˼˹vxxuhgx˼˼˼˺xy˼˼˼ʻxyyyxyyyxۼ˼۽WwuWfgFvetg͊zܼܽ˼˼˼˼ˊ͚Fgefef6weeW˼˼˼VwtgvWFweugͽܽܽVfuvfefEgTuf˼˼˼yzܽ۽˼˼˼ʬ˼ʼʉܙʬʼʬ˺yyxʺʻxyݺyˬˬʬ˽˼˼yyxyͽۼܼ˽ʼ˼ʬͽܽܽ۽ͽ۽ܽ۽ͽͽͽ۽ͼ˼˼˼yyy˼˼˼zxyxxͺyxxxx˺ʺyxxyhwugx޺ʺvwwxvxhwiwxxʺʼʇxwwivͺʺ˼ʇxxyxx˼˼˼˚z˼˼˼˚y˼˼˼˩˼˼˼ˊyxyܼ̽˼͉ͽ۽͉ܽyy̼ۼ˼˽ˬˬʬͽ۽ܽ۽yyz˼˼˼ʬˬ˼͉˼˼˼yyxy۽ܽ۽ͺʺʫˉzyͺ͹˼˼˼yzyʬ˼ʼVvvvWeg6edufͽ۽ܽ۽ˬˬʼ˼˼˼˚ͽ۽ܽ۽Ffffdf&fdff̼ۼ̼˼VvugeW6fdvVʼˬˬUuvugUg5VSve̼ۼ̼˼ʼˬʬ˼˼˼˚˼ˬʼʺʚʬʼʬʉxx˼ˬʼ̼ۼ̙͉ܽ˼˼˼˼˼˼˼vxxuxghxyxyxxwwxxx˼˼˼˺ʼʼʬ˺ywwgi˼˼˼xxixxyxx̼ۼ˼vhxwvxxwʺ˻˪˼˼˼˼˼˗xxuwvgwewfgwww˼˼˼vxxvxwx˺̆wxvhwxxxhxhxxvxww˻ˇxx͹˼˼˼vwxvgtgWhwyy˼˼˼ͺͼ˽˼vxwuXhxyxhxi˼˼˼vxuhgx͇xyy˼˼˼yxx˼˼˼˺˺ewwwgwehgwwhwuxgXyxhxiʻʻ˼˼˼ˇxxyxhކxxhxiwyvwhhvwwxvxxh˻ʻʺwiwXX͆xixh˼˼˼˺xxwxxvhwvxxvxwx̼˼̺yxxxy͗uwgwwgvexfw˼˼˼wwxxxwvxw˼˻yyxyzy˼˼˼˼˼˼ͽ̼ܼܽܽ͊˽yxy˽̼˽xyihˬˬʼ˼˼˼ܽܽ۽˼˼˼͉yyzyyyyxxʼ˼ʬ˺ʺʺʼyxyxy݉yy޺˼˼˼ˉyyyʻxiyhyzyyy͉yzyiyyiy˩͊۽ͽVgvGvWFveuw˼˼˼zyyWguWfGFwevg˽˽˼˼˼˼˽͚ܽܽFWfwVeV6wefgyyzVffvWeWEgTff˼ܼ˽˼˼˼˼˼˼˼vXxuxghxx˼˻ͺ˼˼˼hxyxxwxw˼˼˼ˇvhwhxwvhxwvxwʼ˼˼˼˼˼˼˼ʬ˼ʬʺ̼ۼ˼yxxiyxx˼˼˼FwfwVefEfUef͊˼˼˼͚5gVweUe5wUVgͩFvevfeVEvUfg˼˼˼FffffdfDfDff͊˼˼˼yyyxy۽ܼ˼۽ܽ۽˼˼˼͉˼˼˼yyʼˬʬyyzyz˽̼˽ͽܽ۽˼˼˼ͼ˼˼˼̊xyhi͉ͺyyyʻͪyzyy˼˼˼˼˼˼˙zzyy˼˼˼˩˼˼˼ˉyyzyxxyWfeVuVWfuefWVevUtUFfeefyyhgvfuVWgvufWfeVeFVVudUxhwhxuxxxxgw͚ݚ˼˼˼vxvwxxxxxxxyxxywhwhhhޚxyxyh͇xxxxiyxxyʬˬʬʺyxi۽ͽ۽yyۼ˼ۼ˼˼˼ˈxwwxgxh˼˼˼ˈxxyx˼˼˼yzyyyˬʼʬʻxxxxix˼˼˼ʼʬͺ˻ʉy͙ܺʺʺʻxyʬʼʬʺ˽˼˼x˻˻xywgxgw˺xyxxzyyyyܽܽ۽ˬˬʬyyyhxxx˼˼˼˘xxxx˼ʬʼʼ˼˼˼yyi˼˼˼ʺ˻wwxwxh͆xyxxͺxxyxxxyxyxʻˬʺ˼˼˼˺ʻʺhwugxwhwhhhކxwvwgxxxxhͺ˼ʺxxxh˼˼˼wwxwxyhyyyͽܽܽʺxyhyhͺy̺˼˼ʬ˼˼˼ˇxwhwhXw˫ʫʚ͇wwxwhgyvvwfgufWgv˼˼˼ˉܽܽ۽ʬʼʬ˙˼˼˼wwxhwwhwwͼܼۼ̇wwxwhg̘ywwvwXvwhgv˼˼˼˼˼˼˹ͩgwhvxxX˼˼˼˗xyyxwhuxg̼˼̺ʻʫ˼˼˼˗xxuwvwwgfuxgg˼˼˼˼ˬʬʚyyˬ˼ʼxxxʼˬˬʺͽ۽ܽ۽xwhvxhw̼ۼ̼˼yxyhxxx˼˼˼ʬ˼ʼ˼˼˼ˇhvwwxʻʫʚxxʺʫʙxxxʬ˼ʬʺʬ˼ʼ˼˼˼ˊyxywfGvwvegUwFS˺ʺ˼̼˼˺ʬ˼ʬ˹weFgvugFwGTgV7wvvtfVfGT˼˼˼˩˼˼˼˺˫˫˼˼˼˪fVGwveuVVf7Dʬ˼ʬʺܽ۽۽xyyxyxxx͈xxwwxxyxxxvhwyvhxw͈viwxhxywyxxxxwxxxwxʺxyyxxyyxyͽ˼˼˼˼˼˙Xfgvvv8fgV˼˼˼gwwgguwHevVͽܽ۽͚ͻ˫yyzhwvwwgGfuwF˼XvgvwvHVwU˼˼˼˼˼˼ˊyzyxgugwGgeuV͘yy˼˼˼˼˼˼˼˼xgvVVguvvfiXvgWXvvg˼˼˼˼˼˼˙hgvgWhvvg̼˼˼gGfwgugfveVW˼˼˼˙̽ۼۼyyxVugWwvvfgܽ۽ʫʻgWfhvhgwvfg˼˼˼ͺ˼˼˼˙xWvWgwfvefyyxxxxx˼˼˼ˉyyxxxxxx˼˼˼xyyx˼˼˼wgwvhvwhgwyxy˼˼˼̇xxxxyyyyxhxh˼˼˼ʻ˼ʬʬˇxhghxv˼˼˼ˉyy̺ixhxyͺʺ۽ܽͺyyyyvyxvhxxw˼˼˚ͽͽ۽ܽxxwggxw˼ʬʼʇwxvhvhwx˼˼˼yyxwwhwx˽˽˼vvhugwfWfgv͊ʼʻyyy˼ˬˬ˼˼ܼ˼˼˼yyx˼˼˼˼˼˼̼ۼ˼˽˼˼˼yzy͚yyܽܽͽͽܽ۽yiyʼˬʬʉyxʺwxwxxxw̺˼˼˼ˇuwvwhgwWgvv˼ˈxyxxxwxxhw˼˼˼͗xyhhxxhwwhg˫hxwhgw̼ܼ˽yyx͚fwuWeGVwtvg۽ܽ˼˼˼˽˼˼̽˼˼˼fvevFVFUveeg˼ۼ۽˼˼˼WguWfGFwevgzzyyfvtWf7VfeuVͽ۽ܽyyz˼˼˼˺yyz݊yzyyyx˻yyyyyyhi˼˼˼˻މii˺͙yyyyyxxxxfvXvgufwggwvwhwgvwghwvwxwgvwgwwxwhxwwhxvhxwvwgwgvuvWhfxxxʻ˫whwxihwʬˬˬyy˫hiyhiʼ˼ʬʚxxxixyy˼˼˼ˉ˼whxxXhw˼˼˼ˉyxxwhgvxXxʬʬˬ˻˻˼˼˼xyxx˼˼˼yhyixxxyhxxhwxgwxͻˬ˼˼˼˽̼ۼ˼˼˼˼˺wxhvwhgxxxxxxyyͼ˼˼ܽͽͽܽܽxyyͽܽ۽ܽ˼˼˼ˬʬˬܽ۽ܽyy̼۽˼˼ˬˬ˼˼˼͉yyzxwuwgwGgfuFyyyʻʺ͚˻˼˼˼xwvwVVgfvvWyzyihvxgWXwvWii޺zyyhwvgWhwvW݆gxxxxxx˼˼˼ˇixhxxyxhxy͚xyxyxͪxwgwwhwhwhhxhWhxwhyhyxޚXGfwgWhceV˼ʬʼ̼ۼ̼˼˼˼˼ˬʼͽ۽ͼ̼ۼg7VwgvggSvVU̼ۼ̬ʼˬʼʼʼ˼ͼ̼ۼ̼ʼʼʼhGewWgXcfVʼʼ˼˼˼˼ͽ۽ͬ˼ˬʼͼʼʬ˼ͽ۽ͽͽ۽hHfhhhhbfFͫxxxvxwhxwwx͇xxݚxgxwxxywxwxxͽ۽ͪyxwxx͚zyʉy͗xyhyxyx͙˼˼˼xxyxxxy͉xxhyhyyyxy˼˼˼xyyz͇xxyxxxyxhxiʻxwx͉̼ۼ̉ʉ˼ˬʼʼʼ˼ʼʼʬ˙ͽ۽xxxx˼˼˼ggvwWfgfTvuV˽˼ۼ۽۽XgggvwWefgyyy˼˼˼hgwfuvgevg͉˼˼˼ʬ˺gxvgvggevvggwgXvhWcufܽܽ˼˼˼˼˼˼ˉyy˼˻WfwvgvwXdvg͙˼˼˼fgvwgfgWTuvV˼˼˼˺ʺ˚zy˼̽ۼggwwguwHdvf˻˼˼˼˼˼xfvvWwWgdtgyyx˼˼˼hgvggXuugۼ˼̉˼˼˼˺wgufwfheughWvwgghux͈˼˼˼ʻ˚zyxguwGwggdufyyywgfWwWhefgˬhXvXhXuvwiihgvWghuvg˼˼˼ˉyyy˼˼˼˩gftvWWxdwvg͛ۼ˼̉hWwgghuvxxyy˻˻˼˼˼˼hguffwewug˼˼˼Xgugghuvg˼˼˼˩xwx͚xxʖxyhyxxy˼˼˼xy͙y͚yzyxxxyˬwyhwghxxyʬʬˬ˼˼˼˺˚wxwXWxxhihhiˬʬʬ˺˼˼˼yyyyhhxxfeWfvewV4fGTʻʩ˼˼˼̺ʻeuVUgVge3VVS˼˼˼˺˼˼˼˩VeGfwfvf4eWT˼˼˼̺fdVfgfgf$fVD˼˼˼ˉzzy˼˼˼ˈyyy˼˼˼WgvwgugfTfvV۽۽˼˼˼˺yz˻XfvvwgWdvwg˼˼˼WwghuXgcvf˼˼˼˺ʼˊ˼˼˼yyۼۼ˼Hgvwwggduwfxxxͽ۽wxwݚwwx͆wxgxyxx͗xxvhwxxxxyyyʻʩyyyyyyy˼˼˼̺wfGvuvgg5wFUʬvfFefgWv4gUTʬʬʬ˼˼˼˻ʼ˼˼˼˩˼˼˼˺weFvfggv%wVUgV7vvwfw5vVeʬˬʬ˺˼˼˼̈yxxyxxyy˻ʺ̼˼˼̺xihxxxwhwgix̼˼˼˺ʬ˙˼ʬˬˉˬʬʬˈyxyyˬʬʬ˙fguwgvWgTfvVʫ˫˼˼˼ggvvfheuwg˼˼˼ܽܽWgfwgXevgg˼˼˼ˉyyy۽ۼ˼gxvgvggevvgwgwx݆xxxxxgxͅxhWhxwxyhyhyxhxy͚whwhwhhxyxyx˼˼˼ˆxxhxiޚ˼˼˼˺wVVvfvvg5w7eʬʼʬvfUeWgfv4gFTʫ˼˼˼˻ʼʼʬ˼˼˼˨˼˼˼̹veVvgwfw%gFUgfFvgwuw5vGU˻ʻ˼ʼʬ˺xyxxhhy˼˼˼˺ihhih˼˼˼ˉyyyˉ˻wxhwghywxwxWXxʼʬʬ˚xxxxˬʬʬXXvhXhuvwyyyyyyͪhgvgWhuvg˼˼˼hgfWWwewfgͺʫ˺ii˫ʫyzgguwgGxdwuf͇yxxxxwyx˼˼˼ixhxyʺyx͊xxxzyhyhxxyyy̼˼˼˺ʻyyxˬ˼ʬˈyyxy̼˼˼̇xwiwghxˬʬʬˉ˼˼˼̈xyxxyxxhixʻ˫ˬʬʬ˼˼˼ˉyyyyzz˼˼˼ˉ˼˼˼gfWuvvwf%fGUˬʬʬ˺ffVdgfgf$fVD˼˼˼˺ffGuwfvg%vWUˬʬʬ˺˼˼˼˹ˬʬʬˬʬʬwuWuwwwwwWUˬʬˬzy˼˼˼˗xxhix˼ʬʬʺyxxxxhy˼˼˼˼˼˼˽ܼ˼۽yxxivwxwxy˼˻˻yxxyʻܽ۽ܽyzyyyyy͇xxywwʺʫ˗xyyx͙͇xxxxxx˼˼˼xyy̺xwyvwygʼʬhhhh˼ˬʬʼ˼˼˼ʻʉyyͺxxxix˼˼˼ˈxvyuhxgܽͽ۽zͺʺʩ˼˼˼͹ͺyʻVfeUuEWfedV˼˼˼˪˼˼˼˺ʻGfdDtDGgtdf˼˼˼ˉʻWVevUeEVfudfʻWeUuUu5WVuSe˼˼˼˪ʫʻwhuxg˼˼˼yxy˼˼˼˻xvxuxhgvguwtvxwg˼˼˼˼˼˼͗yxxxy˼˼˼ͼܼ˼̘xwgwvwewwVw̼˼˼˚xwwhvwxhܽͽ͇xwxvxxg˼ۼ۽yyy˫˫͙vgvfgevwhWw˼˼˼wxwxvxhhw˼ʬʬʉyxxx͚̼ܽܽۼ̼˼xxxʼˬʬʇvxvggxˬˬʼˬˬʼʺxxxwhwxxwyyyh͹ʺ˺ʺwxvhgwvxwhwx͆xxyxwvuxhʻʺ޺xxyxhxyxyx˼˼˼˗xwvwgʺʻʺܽͽͺʻʉxyxxxyyxʼ˼ʬ˼˼˼˼xvuhg̺˼˼˼˺yxxhʺʼˬʬʗxyy˼˼˺xxxxyʼ˻˼̼˼ʼˬʬ˙wixvxwxxyxxxʼˬʬ̼˼˺wWFvfgdvVw6TʼˬʬʺʺʼˬʬwW7wuwswWw7Uʼˬʬʺ˼˼˼ʼˬʬʹvVFwfwdwFg6Uʺ˼˼˼˹ʺʺfGFgffdfVf&EͺʈxxyXWwgffGwvgWhgvwWgXvvg͉zyyy޺yyhiihvxgWXwvW˼˼˼ˉyyyhggwgvgWgwV˺˼˼˼˺yyz˼˼˼˩˼˼˼˹zyy͊yyyyyzyyx͈xyxxxxyxyhix͇xxhhxwxxxxw˫ʬyyx˼˼˼˫ʻwWfVFxvvuW˼˼˼zyܼۼۼ˼˼˼ˉxWeEExvef˼˼˼˻hGvwVwFgvegܽܽ۽xVeV6xedf͉z˼˼˼˼˺ʻXWwffgvtgW͉yy޺yy˼˼˼˪hgvWghuvgʼxxygVgggXvuwgyyhhgvgWhvvgͪʼʼʬˇwxwxvxhhw͚yxwwhvwxhܽͽ۽xwxvxxgˬ˫˚˼˼˼˼ۼvwgwfheggWv˼˼˼˼ʼʬ˪˼ʬˬyxxyyxx̼˼̽xxxˬˬ˼yvxvggxܽ۽ܽyxyʻyxxܼۼʼʼʬ˪˼˼˼ˇxyxxxzyyyz˼˼˼˼˼˼˼yywiwgyܽܽͺˬˬ˼˻˺ixhyyxxxxxvhwxwwhxxxxxxhwgwwxʻʚvwwxwhhxʻʚxyʻwxwwhxvxxxxxˬ˼̼˼˘xxyxxxyʫ˻ihwxgxw˼˼˙ʼˬʬʘxyyxyʼ˼ʼʙ˼ˬˬʚ̼˼ˇxxhhyxyxy˼˼˼wgugtwhgg˼˼˼˼ܼܽ˼yyẏxvXuxhgʆwhuxXgyyhhyͺ˼˼˼˼˼˼˼˼˼wwgwvhewwhVwyyxˬʬˬܼۼ۽yxyyzy˼˼˼˼˼˼ͽ˼˼̼ˬʬ˼xyy͊ܽ۽ܽͽܽ۽ܽܽ۽͉xfevV6xfdV˼˼˼˙ܼ˼˼˼˼˼˼˼˼yyz˼˼˼˼˻xfewEExgeWhWfgVwFgwuW˻yzyͺͽ۽۽wgvwVFxwveGܽ۽ܽˬʬ˼˼ۼ̽yyyyxܽ۽ܽͼ˼˼˼ͽܼ˼̈yyͽܽܽ˼ˬˬͼ˼˼˼z˼˼˼˹˼˼˼˚yy˼˼˼ˊyzwxyvhygwʺͻʼwhwXXw˼˼˼˗xhhxxgwwhhxͺ˼ވwvyuXxhxhihxxxihh͗yiihܽ۽ܽfgeFe6fweeW˼ʬˬ˼˼˼ˬˬʬ˼̼˼̽egUw5V5ewVUgˬˬ˼̼˼̽VWewFf6Vwfegܽ۽ܽffdFf&fffdf˼ʬˬ˼˼˼˺͊˼˼˼yzyy͉yzy͚ʬhhhi˼˼˼ͺzyhvxwgxwʻʬʬʬʈgyvXxw۽۽ܽyyx˼˼˼ͻˬʫʫxxhixwwxͽ۽͛vhwxxwyxxx͆xxxwwx͇xxxxyygwvfuVXfvufVfeUdUGfueVyxxyWfeVuVWfuefVfevVuFWUedeʻʫʺވyyiyyzz͹yyʺʺͺʺʫxyyyxyyxyy˼˼˼˺ʫݩyyͺyhhxxxwxXwi˼˼˼˺ܽ۽۽yxx̺˫hwxgxyw˼ʬʬ˺yhhhx˼˼˼˫˺͆xhxvwx˼˼˼˺uhgvxxxʬ˼ʬˆxxixx˼˼˼ʺʺʻ˼˼˼ˇxxxxۼ˼ۼxxyxxwvxwgyxw˼˻˼˼˼˼˼˼ˉxyxxxxx˼˼˼wgwvhvwhgwyx͊xxxx˼˼˼ˉxy˼˼˼yyyxxyxxxxxxyxxʫʼ˼˼ʼyyxyyyzy˼˼˼˼̽˽ʬ˼ʬ˺xyhxxxy˼˼˼yxyͽͽܽ۽˼˼˼˼ˆxxvxwiwۼ˼̇y˼˼˼uwvggguwgw˫ʻwwxwxxx˼˼˼xwxͺxvwwvxhxx˻˻˻vhwxvwxxxxyxͺˬˬʼʇwxvhvhwx͚˼˼˼xwwhwx˻ʻ˼̼˼vvwuvgfWfxv۽˼̙ܽ۽۽xxwggxwyxxxvuvvvhfWgwvvgfwWwfgwvxxxxwhwwxxxwwhwgxvwvwhwghwvxwwwhwhwwʼˬʬ˼˼˺˫ˬxyxyyxyxyxy˼̼˼ˈʼˬʬʺʺʻ˪yhxxxhhwxgyw̼˼ʼˬʬʺgwuggGxewuV˼˼˼˼˼˼˼ۼ˼̊˼˺gwvwVvVxfvWXgvwgWhvvg˼˼˼yyxͺ˼˼˼hxxgWivvWyyxy˼˼ܼ˼˼˼xx۽۽ܽͼ˼˼˼yiyi͉zyˬʬ˼ͼ˼˼˼˼˼˼˼˼ܼyyzyzܽ۽͚wxvwxhxihWwxgx˫ʻ͹yhhxy͇xhyxxxhihxxhxxXwy޻ͺ˻˼˼˼wxhvwxhgyxhhxXWvgWhuvw͚yyxyyggvVvVxuvfͺʫ͉hhvgWiugyy˼˼˼˻ʫyyiyޚgguwgGxdwufz˼˼˼ͽ۽ܽ˼˼˼gXfxWuWgufH˻ʫfGVwWvWgvffW˼˼˼˼˼˼ˉ͙wWeGWxvvfW˻˻˻wWfVFxvvuWy۽ۼ˼yxxyy˼ʬ˼˫˺˼˻xwywwxx˼˼˼ˉyiyyͽܽ۽ͩyyxixhxy˼˼˼ʬˬʬ˺˼ۼ̽˼˼˼̼˺yyyyzyxyhwvxwwhx˼ۼۼ˼˼˚˼ʻʊ˼˼˼hwvxwwhxvvhfwgwufWxvyyyʼʬʬ˚wwwwhxwhw۽͉ܽxxyyͽ۽ܽxxy˼ʼˬxxx̼˼̼˼ʬˬxwhvwxhwˬʬʬˇixhxy˼˼˼̼˻ʻ˫˼˼˼wiwhx˼ʬʬ˚xyʬˬʬ˚xxhxy˫˻˻yywxgiwggGwwewFvFTʬˬʼʹ˼˼˼˺ˬ˫˹gfFvgwuw5vGUfW7vvftgFvGU˼̼˼˨˼˼˼˹ˬˬʬ˼˼˼˹VWGvvfufFe7Eʫ˻͙xihyyyyhhy͇xhhxywvwxgxhwvyuXxhxhxxXwy˼˼˼˚xyxgwhwyhihͺˬˬʬˉyzܽ۽ͺHggvuuHggW˼˼˼WwwwfvXfvvWۼ̼͊ͺʫyyyyXwvwvvfWfwW˼˼˼ˊXvgvvvXggf˼˼˼˼˼˼yy۽۽ͼ˼˼˼۽۽͉yʼʬ˼۽۽͊ˬʬ˼͉y̼ۼۼyyۼۼxyyx˫yyyy˫˺܉˼ʬˬʉxxyʫˬʫxyy˼ʬˬ͉˽ۼ˼WwuWdGfvevgy˼˼˼ˉz˼˼˼VwewFUFeffef۽۽͚VvtvWe7fefuf˼˼ܼ˼˼˼˽۽ܽ͊˼˼˼FguWeGVvvvwyxyx˼˼˼˼˼ܼ˼˼˼wwvgvwHgw˼˼˼˘yxywvwufwgWgxv˼˼˼˼˼˼˩͗xihyyvxWwXhʬgvXWx̘yyyyxxxyyyzyyyy˼˼˼yyy˺ˬʬʬ˻yhhxxxyxxʬʬʬ˺۽۽۽yiy̽˽˼yyhxvwywv˼˼˼˼˼˼͇ixxxyx˼˼˼hyxxxyxxww͊zʺʫyyxxͺʬʬʼxhwxhxy۽ܽ۽˼˼˼ˉxyhxxxʻʺxhhix˼˼˼yy̺ywxwxhv˫˺͚͉ͩzʫ˼˼˼WfeVtVFVeeU˼˼˼ˉ˫˺˼˼˼WeUuUsU7VuUe˺˺VfevVdVGUuee˼˼˼˺˫˺˼˼˼GvdFtFGFtddgwvxwʺʘx˼˼˼vwWwvfwwgw͇hxxxx˻˻˼˼˼ˇwwxgwvxxwͼ˼˼̺̺xxwgvvwg͇xxxxxyyvvxvgvggxv˼̼˼ˉyy˼˼˼xy͇xxx˼˼˼xxxxxyyxxxxx˼˼˼̼˼˼˚xhvwwxv۽̼˼ˬˬʬʚwgwvXvuvggfyy͙vwxxgvgxw۽ܽ˼˼˼xhvwwxv˻ʺ˺wxhwhxx˼˼˼˗xx˼˼˼hvwwvxxyxx˼˼˼ˬ˼ʬʩʺ˻ʆwwvxxxͼ˼˼˼˻˻˻xxx˼˼˼ˇxwwxxyiˬˬʼʘxxx˺x̽ͼ̼˼ͽͽܽܽgwgxwyxxy˻˻ʼ˼ˬyyi˼˼˼zyzyxxxxi˼˼˼˼˼˼ˉy˼˼ܼʬʼ˼۽ܽyy˼˼ͼ˼˼˼۽ͽ۽yyỷ˼˼˼˼˼˼˼˼˼zyzy˼˼˼˺˼˼˼˚˼˼˼ˉyzyyxxx˼˻˼˼˼ʬʬˬʺwXwXhxxwwxxwgxwhhͼ˼˼˼˼˼˼˺˼˼˼͈gwxgyxwhhixxʫxhihx˼˼˼xxxyy͚fftvVUFegeuf˼˼˼˼˼˼ffdfFFFdffdf˼˼˼VfdvWVGUgfefeusuWV7eVVue˼˼˼͚ʫ͉yyy͉zyy˼˼˼˼˼˼wWegvWxfvf˻ʻ۽۽ܽxfevVVxfevxfdVGxUue͉y˼˼˼˺˼˼˼˺hWegWgfwvf˽ۼۼ˼˼˼hWgggWvugW˻˻˼˼˼͚hhvXhhvvgxhgvgWhuvg˼˼˼˼˼˼ˉWWggghfvwfͼ˼˼xyxxxxx˼˼˼˼˼˼˙xxxxx͇xxxxxyyvvxvgvggxvyyyx˼˼˼ˇxxx˼˼˼͉yyʼ˺wxggxxwwxggxxwͽ̼˽˼۽۽ܽvwgwvWvfhgg˼˼˼vxxwgvwgxxʬˬʬʚ˼˼˼ʻʺͽͽ۽ܽiwgxw˫˺hxhxi˼˼˼ͺz˼˼˼ˬˬʬ˺yyxhxhxyYwXh̹xyy˼˼˼ˉwhwgxxwxxxxx˼˼˼ˇhwgwwxxxxxxwwhhvxxxwxxx˼˼˼˙xxxxxwxwwhxvxxxx˼˼˼˻˼ˬʬʺxihxxyywiwxhhw˫˻˻˻ʻˬˬʬʻwhXxxhwyyhhyhh˼˼˼˼˼˼˚xvtvWFxVeU˼˼˼˙ͽ۽۽˼˼˼˼˼˼xvevVVxgefhguwgWggwfVʫʬyyyͩͽ̼̼wguwgvWxgfVyxxyyy˼˼˼ͽͽ۽ܽ˼˼˼yzyyyyy˼˼˼yyxy˼˼ܼͼ˼˼̽۽۽ܽ˼ʬˬyyii˼˼˼xwwxxxxx˼˼˼wwXwvfugwghw̩yxy̼˼˼̽hwgvwhx˫hwgvwxhxihhxͺ˼˼˼˻˻xgvwvxwgxxyxʬˬʬʺ˫gywxxxwzhxxyʬʬʬʻ˻˻ˉXwhwhxwyxxhyxxxʫʻʫ˼˼˼˼˼˼vW6vfgUvVgED˼̼˼˩˫˺˼̼˼fG&gffdfVfFE˫˫vV5wVgevFgFE˼˼˼˺˫˺˼˼˼eW6weVeeUV65˼˼˼˼˼˼ˉWgfwvuvHwvGhxvxggYvW˼˼˼˼˼˼˚yyxhwuggXwvWggfwwwXguvVͼ˼˼˻˻zz˼˼˼˺y˼˼˼˹˼˼˼˹͚yzyyxyyyyy˼˼˼yxywwxxxxʻxhhyx͇ihixyyxxxxyxxʬʬʬ˺ʫwV&wegfvFwVUʬʬʬ˺wV6wdgfvFwFUʫ˼˼˼˺ʫf5vUhWEhUTʫe6eXg6xVeʬʬʬ˺˼˼˼ʬʬʬʺYhugghugyhguffwewugyyyͺ˻͉yhWugghuvw˼˼˼˩ʫ˺ʚމhgtwWvWwdvf˼˼˼xxixiyyyx͚www͙xxxxyyhxhyxʉ͚˼˼˼ˊ˼˼˼˩yyz˼˼˼˺xxxyy˼˼˼˘xyxxʬʬʬ˼˼˼˺ʫʻxyʬʬʬ˺˼˼˼ˉgwxgyxwʬʬʬ˙xhhyx˫ʺwxwxi͗gwvwxhyxy˼˼˼˚vhwwxy͆yxxx͖xyxyxޗguhwyxxyy͇xxhyxyyxx͇x˼˼˼yzzʺʺyxxyy͇wwwxhGewWgXcfVʼʼ˼̼ۼ̼˼˼˼ʼʼ˼ͽͽ۽ͼ̼ۼYFeVVYdef̼ۼ̼ʼʼ˼ʼʼ˼ͼ̼ۼ̼ʼʼ˼h7ewWgXdfVʼʼ˼˼˼˼ͽͽͼʼʼ˼ͼʼʼ˼ͽͽͽͽͽͽiGtGgItvgyx͇wwx˼˼˼xxxhʻʺxyy͇xxyxyx͙͚ywwgixxx͗vwwvhhxywwwxx͗xxwwwwxxxyͽͽͽܽ˼˼˼wVfWvgxvug͙˼ͼ˽˼˼˼ˉxeeFWxetfyyyhVfWggvwugܽܽ۽xfevVVxfev˼˼˼ʺ˺ʼʼ˼ʺʉʬʼˬʪʼʼ˼̼˼̙yyͽͽͽ͚hgfWWwewfg͉yxyʺhfuGvgweuWzyYWvXhhvvh͚iyiyyyyyy˼˼˼hgvWghvvgޚhWvWgXuvw˼˼˼yywfuvGghtvuf˼˼˼˻˻͚hgvXhiuvg˼˼˼ˈ˼˼˼˙˼̼̽wgfWwWhefg͊wWeGWxvvfW˻˻˻˼˼˼۽ͽܽxVd6Vxeefyyz˼˼˼ˉxVUFFxfUg˼˼˼ʻ˼˼˼ˉyzyhGewGwWgvfg˼˽̽wdFvfggv5wVT˺˼˼˼˼˼˼˹ʻʺwUFwevwgEwGd˼˼˼̩veEfVggvDgVS˼˼˼ʬˬʬ˺ʬʬʬge6wfwvwEvWT۽̼ۼhWdVwfgvuW˼˼˼ˊz˼˼˼ˊ͚xVcFVxeef˼˼˼wGtwVfxvveg˻˻ˉxVdUUxfdgyͽ۽ͽܽ˼˼˼˺vhwhxwxx͚xxxxxyͽ۽ͽ͇xxgwgxw͚ͪwwwwwxwxyʬʬʬ˙ʬʬʬʊxyxxʬʬʬʈxxxyy˼˼˼˺˺ʺyyy˼˼˼˺hhhyxvwwvxhyh˻˼˼˼˺xyyyʻyyxyyhyhixʬʬʼʬʬʬ˻ʫʫgwvywyxyXvywhxg˼˼˼˺˻˼˻˼˼˼yhixyxwgufwfheugxy˼˼˼˻˻˻͚˼˼˼˩wgtWWhevvVhXuggivvg˼̼̽˼˼˼ˈ˼˼˼hguggXvvg͙xxxyyxx͇xxwwxx˼˼˼yyyhyhyyʆixhxyyy͉yzy˼˼˼˩vV5wVgevFgFE˼˼˼˩vFEgUgfvFg6UʻʺwVDvFwfwEwFT˼˼˼ˆUEwVhV6hEU˼˼˼˩˼˼˼ˊ˼˼˼ˉzyy˼˼˼ˊyyyʬʬʬˉyyy͙˫xfdVGxUuehWegWgfwvf۽ܽ۽˼˼˼˚˼˼˼˼˼˼wWegvWxfvfyyxfevVVxfev˽˼ܼ͚ixhyyWvwXhiwgxw͗wgvhxw͖hyiyywXwXihyhyx˼˼˼ˆhxhxy޺gyvXxwʬʬʬ˻ˬʬʬʻhihyxyyhyhix˼˼˼yyyy˼˼˼˺˼wgvyhyxwʬweFvfggv%wVUʼʬʬ˼˼˼˼˼˼˹ʬʬʬgVFvewww6vGU˼˼˼̩vfEuVggv5gVD˼˼˼˺ʫʺ˻wf6fvvg6wWU̩˼˼˼ˆWvhxxgxxvgwvXwghww͗xyhyx˼˼˼˺˼˼˼˩˼˼˼ͼ˼˼͇yuwgwfgwuxgvyyʺˆhuhvxxw˼˼˼ʺʺ͇vhwxwvhxyxxhyyyxxyxͻʫʫvxwxxw͖xxxxxwhwhxޗguhwʫ˺ʺʻʺ˼˼˼˚̼˼̙ʬʼʬʙʼʼʼʼʼʼʺʉxyͽͽͽ͚vwxxwgx˼˼˼̼˼̺˼˼˼ˆgwvxxwwwwwxxxwy̺xyxxxuvwwgwuggv˻˻wwhXxw͇xwggw˼˼˼ʬʼʬʺxxixxyxxͼ˼˼˼˼˼˼wwxxxwwvhx˻˻˼˼˼˺˺˼˼˼˼xxxhxixʻͻʼwxxhghwwxvxxhxyyx͇hxxxyͺʺʫ˼˼˼vxxvwxxxyxyxxyywhwhx޺ʺʺxxhyx˼˼˼ˉʫʇvhwvhw˼˼˼ʬʬʬ˼˼˼ˉyyxyyxʬʬʬʚʻ˺ʬʬʬˊxxxigvhhXuugͼ˼˼˼˼˼˼˪XWfwwGvvfWhVfwvwWvvg˼˼˼xyy˻˻˻˼˼˼˼˼˼˺hguggXvvgyۼۼۼ͉y͉x˼̼˽ʼ˼ʬͽͽ۽˼˼˼yzzy˼˼˼˼˼˼˼˼˼͉ͽͽ۽yxiuwvfgvvWhvvxxxxxxxvfgvwXwughwfvwvwhwghwvwxwwxxhwwxwhwwhwxvxwhhywͽ۽͙̼ۼ̙ʙ˼ˬʼʼʼ˼ʼʼʼ˚yx˼˼˼˚XVwguggvgg˼˼˼˼˼ͺXWvWghvvg˼xyyGGwwfvfXvgg͉XWwgWhvw˼˼˼˼˼˼gGfwWfWfvvVW˼˼˼ˊ˼˼˼hGvwVwFgveg͚ܽܽ˼˼˼˻˼ˊW8fhWvWWvfh˼˼˼yzyy˼˼˼˺ˉyzyhGewGwWgvfg۽ͽ͙gWvhvhgwvfg˼˼˼˚VGfwgfgWvvVWͺyy˼˼˼gWvWwghfefgVugwWhvfg˼˼˼˺˼˽̼͉yyhWwgvgWfgf͙hXvXhXuvwzyyyyyxhWvgWXvvgͪ˼˼˼ʺyhxiWGgwgugHvgg޻ʬyvwvwvvhww˼˼˼˩˼˼˼˩vxwuxhxͼ˼˼̇xgvxwx˼˼˼˹˼˼˼˼˼˼˗xyxyxvuwvvwfgwxuʫʺʚʺʫwxgywy˼˼̼ˉʬʬʼ˺xxxʼʼʼ˼˼˼ˇxx˼˼̼ˇxyxxxʬʬʼʺ˼˼˼hfwvgwGtuvf˻˻˙˼˼˼˻XVgvv8egf̼˼˼̽˼˼˼gfvwugHewWyyzXegwvHewf۽ͽ۽zy˼˼˼˺vxwwhhxwxxxxxyxyywwhhvxxxw˺xxxxxwxwhvwxhvwwxwhhx˚yyyyyyͽͽͽ۽˼˼˼ˬˬʼͽ۽ܽ۽ʼ˼ˬyxyxyyͼ˼˼ͼ۽̼̼ͽܽܽ۽˼˼˼͉zyͅwxwhhwxx˻˻˻ʺʻ˼˼˼˼˼˼ˆwxgxwwvxxxxxyxhx˼˼˽ʼʼʬ˼˼˼˺xyxxxwwx˼˼˼xwxwhxwvwhwgvwghwvggggvugWhwxxxxxxfvgvugfwgXwwwxwxvxhivwxwgvwgwhWvWgXuvwxyͺ˼˼˼˚gVgggXvuwgxiyhy˻yyyhWvhXYvvhʻ˺yzyWGgwgugHvggxyhyhʼ˼ʼʗxvuhg˻˻˼˼˼yyxyh˼˼ʺ˻ʻʼʼʬ˹yyvwwxhv˼˼˼͉ܽܽ͊yyyͽ͙ܽܽͼ˼˼̽yyx˼˼˼˼ˬ˼yyyy͉yyyܽܽͼˬˬ˼̽˽̽vxwwhx˼˼˼˺̇xyvuwvwwgWxvvyxʼ˪˻vwxhxwwxyxx˼˼˼hxhyx̼˼ͺwxxwhyx˼˼˼͉˼˼˼yyyˬˬʼ˽̼˽˼˼˼yyyiiyxyܽ۽۽ͽܽ۽̼ۼ͚˼˼˼zyzyzy˼˼˼˼˼˼ˉXgggvwWefgܽܽ۽WgfwgXevgg˼˼˼˺HWWvvHfWg˻XfgvvvXfgvyyyy˼˽̽xwxghww˼˼˼ˇxxxxxxyyxvwwxwhhx˼˼˼ˉyyxyyxxyxxxxxx˼˼˼vwxxwxhhwyyywwhhvxxxw˼˼˼ʬʼʬ˚ˬʬʬˇwxwhXhxwyy˼˼˼ˊhxhxy˻vxxvhxywzyyyyixxʺ˼˼˼˺ʺvhxwvxxw͆xhwxxxwʫ˻ʬʫvxwuxhhyyxyxyxiyxʺʺwhwhwhhhyhyx˼˼˼ˆxyxx޺ʙ˼ˬʼ̼ۼ̉ͽ۽ͩʼʼ˼ʼʼʼʈʻ˺˼˼˼ˇy˼˼˼vwWwuxfvwxfw˼˼˼vgtwuvxwg˼˼˼̻yx˼˼˼˅gxvhwͩhuhvxxw̼˼͹yxxyyͺxxyxx˼˼˼wxwww˼˼˼˼˼˼˼xxgvwhʼvhxwvxwۼ˼ۼxx˻˻˻vwxwxxhʬʼʼʆxxyx˼˼˼xvwwvxxh̺yxhxixyvwhwuvvfwwXw˼˼˼˩ͼܼ˼ͺͪxvwwvxh˻˻˻xxx˺˺xxwwx˼˼˼wgvvwgtwvgvuxgwʺ˼˼˼ʬʼʼ˺ʺugvwvuhwgʺͺʺuwvgvtxgw˼˼˼ʼʼʬ˹ͺʼʼʼʼʼʼʅxxyxx˼˼˼͊yyyyͩʉyzyͺͺʬʼʼʩyxxʬʼʼʉxyyͺʺʉݹ˺ˈʺʺ˩͙˼˼˼yy͙yy͉͘yyyyyyxݹʉyyyy˼˼˼ˈxxyʻͺʺiiʺ˺yzyyhxiީ͉ͩ˼˼˼ʫʫˊyyyyͩۼ˼ۼxxxxyxxʬ˼ʼ˼˼˼˼˼˼˼ʺʺvwwxvxhwhxvxwxxvhwgxͺ˻˻˻˼˼˼ˇwwwwxxyxx˼˼˼˼˼˼ˊyyyy˼˼˼˩zyy˼˼˼˺˼˼˼VfuUeUVheuf͚͚˼˼˼VfuvFVVUgftf͉˼˼˼FWewVfVFwfeW˼˼˼UftvVfFVgVuf͚̼˼˼˼͙yxiiyxyxxyۼ˼̽ܽܽ۽˼˼˼˼˼˼ͽܽ۽ܽyyyyz˽̼˼yyyy˼˼˼ͼˬˬ˼yyx͹˼ʼʼʼʹʼʼʼʉ݉xxyͺʼʺݺ˼˼˼ˆwvhxgy˼˼˼˼˼˼˻xywvxuxhhۼ̽vguwtvxwgʫˬ˼˼˼͹˼˼˼̹vwfwfxuvwxWwyyxxyyxyʻʚxyyyxyyyxyyyy˼˼˼ͼ˼˼˼yyyyyyxͬˬˬ˼ͼܼ˼ͽܼ˼۽͚yxxˬˬ˼ܽܽܽܽܽܽ۽͙ܽ˼˼˼˽۽ܽ۽UfvvVUVFgdvfyyz˼˼˼͉zzzyۼ̽VgvGfWFvuuw͊˼˼˼˽۽˼FWfwVeV6wefg۽ܽܽVguWfGGwevg˼˼˼˼˼˼yyz͹ͺyyyyͺʺʫ͆xwxwxxh˼˼˼ˆxxyxxyixyͺxyhyhʼͺʻvwwxvxxhwhwhwhhuhhvxwxxyxyyʺ޺xxyͼ˼˼˼ܽ۽ܽyyxۼ̼͉ܽܽ۽ܽyyyy˼˼˼ˬˬ˼ˬˬ˼˼ۼ͚yyyy͉ܽܽyyyy˼˼˼˚yyz˼˼˼˨˼˼˼˹̼˼̼VWfwFeFVwefW˼˼˼ˬˬˬ˼ˬ˼˼VWew6fFVwfegܽ۽͊ˬˬ˼VWewFf6Vwfeg̼˼̼ܽܽ͊˼˼˼ˬˬ˼˼GHvhGvGGvvhͺʩyyzixhyxyyyxxʫʺʫ˺yyiiyyyy˼˼˼yyvhwxvwx˻˻˻wxxwx˼˼˼yxfwXwvwuvwvhwͩ˼˺˼˼˼˹vhwxvxwx̺xxx˼̼ͺixhxywgvvwg˼˼˼˼۽̼̊FfvvVdVUgUvf˼˼˼͉ܽܽ۽GgvGeWVwfugyzzz˼˼˼˽۽ͽ۽6WfwVeVFwefg˼ۼFguWuGVvfvwzyy˼˼˼yyyyz˼˼˼͊yxy˼˼˼ܽ۽ܽyyyy˼˼˼yxxܼ˼̼̉˽̼˼۽ܽܽ˼˼˼iixyˬˬ˼ˬʬʬˉyyyyhyxyyyx˼˼˼ʬʼʬ˺whwxxywʬ˺ͽͽ۽yyhyxyx˼˼˼˺̺Xwhwhxw˼˼˼hgfwuggugf˫˫ʻgguwgfWfdvvU˼˼˼˺͉yͽ۽ͽͺgxvgvgguvvf˼˼˼ˉXgvvvfWuwfۼ˼˼iXvgghvug˼˼˼˺hGvwvvWvufg˼˼˼˻˻˛˼˼˼hWugghuvwy˼˼˼˺ͼ˼˼˼XWfwuwgfvf˼˼˼gxwxxwʬˬʬʚʼgwhwxw͉yܼۼ˽wgxxhww˼˼˼ˉ۽۽͆vVvugvvwhfwvvxvgvggxv͉yyx˼˼ˉxyxxxxx˼˼˼yyxxxxxxxxx˼˼˼yyxxx˼˼˼˩͉y˼˼˼yʺʺʩ͊͹˼˼˼gVevVVVeeveV˼˼˼ˉʺWVTvFeVVfuUf˺VGegVeVVveeg˼˼˼˪WVevUeEVfudf˺˼˼˼ˉyy͗xyxx˼˼˼ʺ˺xxzy͗yxxwxy͗yxxxy˼˼˼˼˼̼ͼ˽ͼ˼whwiwyxyxxxyzzy˼˼˼˻˼˼ʬʼʼˉyyxhxxhyiyxyxyxʬʬˬ˽۽۽yyywxwhxig̺˼˼˼xihyhyyxhxxh˼˼˼˼ˬˬʺܽܽ۽whXxxhw˼˼˽vxwhwxʼx˻y˼˼˼˼˼˼˹whxxwxxyxh˼˼˼˺wwxwxxxxwwxxxyx˼ʼʬʼ˼˼˼xwvxwxy̺˼͆wxxvhw˼˼˼ˇxwxx˫˫xxwvxw˼˼˼y͇xxxxx˻˻uwgwwgvexfwxxxizzyy˼˼˼˼˼˼˼˼˼ʼʼʗxyʉyxyܼ˼˼iyyiyxyy˼ˬ˼˺ͽܽܽyyyyxwxwhyxw˼˼˼ˉxxxxx˼˼˼yxxxxxxxxxxyxy͉yyy˼˼˼vvxvgvggxv˼˼˼xxxxyy˼˼˼˻ʺ˺wxwxvxhhw̼˼˼˙xwwhvwxh˼ͽ͚۽ܽܽwwxvxxhvgvfgevwhWwˬˬʬʚ͉yyz˼˼˼ˉy˼˼˼ˊy˼˼˼˙xxxyxy˼˼˼˼˼˚˺˻ʺwhxyʼʼʼʻ˻˻ixxxyʬ˼ʼʚyyxwwivʺgVGvvtvGEvGT˼˼˼ffGewevVDfWS˼˼˼˩˺˼˼˼˩˫feGvwevV5fWDVf8veVEeXT˼˼˼˺͘yxyyxx˫ʫzy͉yyyxxyyxxwxxxxxy˼˼˼hhhyxihyyy͚˻̼˼˼˼hggwgvgWgwV˼˼˼WWgggugHwgW˼˼˼ˉhhvxXhXvvg˼˼˼hgvwgWXwvWyyxy˼˼˼˺VvtvgeGVeevV˼˼˼ͩ˼˼˼UvevfTVVvdfg˼˼˼VeVeVVveeg͊FvevfeVEvUfg˼˼˼ͩyzy˼˼˼˼˼˼˼˼˼˼˼ܼyʼ˼ˬͽ۽ܽۼܼ˽yyyy͙̼˼˼˼ͽͽͽ۽yyiyyyy˼˼˼ˈ˼˼˼˙yyz˼˼˼ˈxxxx˼˼˼xhyxx˻˻ˈxxxxwXxhhw˼˼˼ʬʬˬʼ˼˼wwhxxgxwwxxw˼˼˼˪ʫ˫˻˼˼˼͈hhyhxwhhhw˼˼˼ͺ͊yzyyyyy˼˽xyy˼˼̼̉˼˼˼yxyyyܽ۽۽˼˼˼˼˼˼yyzy͉˼˼˼۽۽ܽˬʬ˼yiyxxxxxxxxxx˼˼˼ˉwxwwhxv˼˼˼vhwxwwhxxxxxwhwxgxwxxxxx˼˼˼xxxxxywhwgxxw˼˼˼˺ixhhyyy˼˼˼˼˼̼˻ˬʬˬ˻hhhxyyyxYxxhwhʬˬˬˉ˼˻˻˫hwxgxywˬyxywxgwxhx˼˼˼˻˻˼˼˼ˈxxwxxfwgwwVvvxWwwxgwxḧ̼ܼxxywwxghh͇ihxxyhwfwwuggfgWͼͼ˽˼gwuggfWfUvvFܽ۽ͺ˼˼˼˙˼˼˼˺˼˼˼gvxgvggfvvW͉yzyXwvwvvfWfwWʬʼˊvvhfwgwufWxv͚˼˼ˉhwvxwwhx۽۽۽hwvxwwhx˼ʼʼʚ˼˼˼˼ۼ͚ywwwwhxwhw˼˻˺hfuvgvGwtufy͉ۼ˼̊hgvgWhuvg˼˼˼˼˼˼˼ggvVvVxuvf˼˼˼XWwgWhvw˼˼˼˩yggvvfheuwgܽ۽۽ۼ˼ܼ˼˼˼XWguuXfgg˼˼˼ˊhgwfuvgevg˼˼˼XfgvvvXfgvʺʻʉ˼˼˼ˈyy˼˼˼wgwvhvwhgwxxxxxxy͉yxxyx˼˼˼yx˼˼˼xxxxxxy͇xxxxhvwgwyy۽۽ͩxyxxxʻʉ˼˼˼y˼˼˼˗gvxwʬʼʼ̺ʻͺhxxxʼʼʬ͉xʺ˻ʙʼʼʬ˺yݙ݉͘ʻʫʺ˼˼˼ˈyiiyyyxxx˼˼˼ˬˬ˼ʽ˼˼̼˗xwhwgixyyxyzzyyyxxxyʻܽܽܽ˼˼̼˺ˬˬ˼yyyyihxxyxxxh͙yxxxy˼˼˼ˆxxhxywvwgh͚wvuxhwyvwhhͪhwhyޚxyxyyʫʼˬ˼ʼ˼˺xyxxixxxyzyyyxxx˼˼˼̽˼̽˼˼˼˼˼˼˼ˇwxhwxgiyyyxyyxyxyihͽܽܽ۽ˬˬʬʺWeeuVeFVeudfyyWfeVuVWfuefFVevUeUWftefWfvfvVgvuwyxxy˼˼˼ˇyxvxuhgxvwvwvvhww˼˼˼˨˼˼˼˗y͗xx˼˼˼ʻʫ˼˼˼fvwuwwvWvxv˼̼uxghwxyxyy͆xwvxwgyxxxxxxyxyxhxyʺʺwxgiw͆xxixxhwhyuhhvxwxʺʻ˼˼˼˚̼˼̽yyyˬʬʼ˙xxyyˬ˼˼ˬˬ˼xxxwxwwxvxih͉ܽܽxxwggxwۼۼۼʼ͇wxvhvhwxyyywxxwhwx˼˼˼ʬˬˬ˚˼̼˼vvwuvgfWfxv͚ܽܽwxwhi˼˼˼ˈx˼ʼʬ˺yxxxx˼˼˼˼yyywwhvhyܽܽͺͺʫ˺yyixxxy˫ˉxyyxxyʼ˼ʼʺxy˼̼˼˙ʼˬʬʹxxy˻ʺʺ˫ˉxywhxvxwy̼˼˙yxxxx˼˼˼ˬˬʙfGGfveuVFf7U˼˼˼˹ʬˬˬʨwWFugvugEwGdʺʺ˼˼˼˺˫˫fW7vvftgFvGU˼̼˼˼˼˼˩ʬˬˬ˪wVGvwveg6wFUyzy˼˼˼˻˻ˊ˼˼˼gWVgWfWfwvfGۼ˼̊WHfXWvWWvfX˼˼˼˼˼˼ˉhWegGwWgwfW۽ܽhWfgVwFgwuWyzyyͻ˫͈xxxxxxxxxxx۽۽͊xxyyxyxxxxxxxwwxx͛xxhwghwwhgxhxyyy͉ˬʬ˼˼˼˼˼˼۽xxͽ۽۽ܽyyx˼˼˼۽۽̼ܽۼͬʬʬ˼۽۽͉yyxxxxvvuvgfvghwuuvgfwhwvfXwvxxxwhwxwxvwvwhwghwvwvxwwiwwxwhwwhwx˼˼˼xiwXwx˼ʻˬˬˬʉxywxvwxhxiixhhy˫˼ʬˬ˼˼̼˚xhhxyyyyyxxxxxxwwxhvwxhgۼ˼̺˼˼˼˺xxxx˻˼˼˼˼vhWxgxˬˬˬʇxhyxx˼˼˼xyx˼˼˼˻xhihx͇hhwxgxxzyhwvwgWhvvWhvufgvGweuWͻˬyyxy˼˼˼˺yyyygwvwVvVxfvWމyiyiXgvwgWhvh˼˼˼yzzVvtvWe7fefuf۽۽ܽͺ۽۽ܽVwuWdGgvevg˼˼˼˼˼ˊUvevFeFfvVeg˼˼˼zyyFguWuGVvfvw˼ܼ͊˼˼˼yyiyyy۽ܽܽ۽ܽˬʬ˼yy˼˼ܼ˼˼˼˼˼˼yyx̼˼˼˼ͼ˼ۼͼ˼˼˼yzyzyzyxyˬˬˬˉxyyyۼۼwxvhwxghxwxxxxx˼˼˼vwwgWgvgWw̺˼˼˼wwhwxhxxyy˻˻͇hwgvwxhxxhhyxyxxzyyyzyzyyݻʫʫ˻yxyyyyzyiyihyiyʫ˼˼˼˚ʬˬʼxxʫyxyʼʬʬʚʬʬʼ˼˼ۼyywxwwwh۽۽͚WwghuXgcvf˻˼˼˼˼͉z۽۽Gfvvwughtwf˼˼˼˙VgvwgeggdvvU˼˼˼˼۽˼̼˼˼˼ʻWgvwwtgXdwfhhvgWiugxyygWgftfXvwW͉zWWggghfvwfxyʺʫ˼˼˼yyhgvWghvvgyxxiyxyʼʬ˼˻˻˺ʻʇyxʼʼʼʺxy˼˽̼yyzxxyx˼˼˼˼˼˼˼˼˼˺۽۽yvhwxxyw˼˼˼ˉ˼˼ܼvwgwvWvfhggwxggxxwʼʬʬʉ͚yyͽͽͽ۽wxggxxw˼˼˼vxxwgvwgxxʫ˻͉͉y˼˼˼ʈ͉ʻʈyxyyxyyz۽۽۽˻˻˻˺˽˽̼xyywwhgxhyyxxxxxyi˼˼˼˼˼˼˼ʼʬʬʬʬʬ˼˼˼˼ˇxhhyxyyzy˼˼˼yʺʺ͗xxxxixxx͉yyxyxyyxxwwx͚ʫVfufWeWVdeuf˼˼˼˺ʻʉ˼˼˼˺VfevVdVGUuee˼˼˼˩UVfvfUfWeufVFeeuVeVWetef˼˼˼˺ʻܽͽ۽˼˼˼ˉxXgxxvxyywxhwghyʬ̺˼˼˼ˬˬʬ˺yhhxiʻxhhxyyyyyͺʺʻ͆hxyxyxxwhghˬwwxwxh͆yxxxyvwxxhwʺʫxwgwʫ˼˼˼ˆhxhxyކxyxx˼̽˼˼˼˩yuwvwfwugfwixyxtwhvWvggxw˼˼˼˼˼˼˻̅xgvXwx˼˼˼ˇxxyuxghwʺʻʗyy˼˼˼ʼʼʼvwxvwhhx˼˼˼˼˼̼˚vwxvwhhxܽͽ۽ugggvgvgXgw˼ʚ͉˼ܼ͚vxxwgvwgxxyyyyxhxiyͺ˼˼˼ˬʆxwgwyʻͽͽͽ۽yyxxhxy˼˼˼ˬ˼ʬ˺͹wxwhXhxwyyxx˼ʼˬܽͽܽyyyxxx̼˼̽ˬˬˬˆwxhwhwwˬ˼˼ͼ˼˼ܽʬʼ˼yxxʬʬ˼ͼ˼ͼ˼˼˼y˼˼˼yyy۽۽۽۽۽ͽ۽۽۽ʻʙxxxxxwwvhwxxxxyywhwgxxwʻhwgwwxʻxxxxxʻvhwxwwhxxxx˼˼˼˻ihhx˻˼˼˼̘xxxyyyyˬˬˬˉʬˬˬˈyxxyˬˬˬˈivwxwxy˫˼˼˼̉WwvgwtgXewV۽۽WwWhuXgdvVۼ˼˼˼˼˼˼˼ˊ˻˻˼˼˼yz˼˼˼VwvggeggUvvFyyzGvvfwughewWʫyyyyfwvwWwfgWw˼˼˼˼˼˼˼˼˼˼˼˼˘xxyxy˼˼˼˼̼uwhvGvggxwvxXwhgx͘yyyʫvxWwXh͇ihix˼˼˼yyy˼˼˼ˊzyy˼˼˼ˈxxyxx˼˼˼˺ˬˬʬ˙wiwgy˻̼˼˼ˉˬˬʬˉ̼˼˼ˆixxxʫ˚ˬˬˬʇyxy˼˼˼˹VWHueV6eHUffGtwfvg5vWTˬʬˬ˺ˬˬʬ˹ffGuwfvg%vWUˬˬˬeg8Vg6vXeˬˬˬ˼˼˼˹˼˼˼yyyyxxwxyxwxyyzyyyxyyyxxxxxyy͊xihyyihhx͊ʫ˼˼˼yyyXfgvguggwwW͛GWggfvfXwwWˬxyyXgvwWghwvWyyzXgvwgWhvhhyiy޺6vuvgdWVeevfʬˬ˼˼˽˼ʬʬ˼۽۽FvuvgcWVeevfFvuvWdWfefuV˼˽˼˼˼˼˚ʬˬ˼˼˼˼ˊ۽۽GghtHgtvgʬʬ˼ʼʬ˼˼˼˼y͉۽۽ͼ˽̽ۼxyy۽۽ͼ˼˼˼͉yy۽۽͉yʬʼ˼ͼ˼ܼy˼˼˼˪˼˼˼ˉy˼˼˼˚͉ͺʫʫ˼˼˼yyyyzyhhyy͈xhihxˬwxhwghwwXwXhͻˬ͇wgxwhhhhhxy˼˼˼˪ʺʫއhhiyyxXWxw˼˽ۼxxxxxxͽ۽۽۽˼ʼʬxxxyʬʬʬʙʬʬ˼ghwywxXgugghuvgxͩyhXuhhhuvwggegvgxuefyͺʫʫ˻ʺ˼˼˼˚hgtwWvWwdvfyyyy޼˼˼˼HfgwvXUwe˺˼˼˼˚ͽ۽ͽ۽˼˼˼ˊyXVgvvHegf˼˼˼XgwgwWevvVͻ˻˻˻WgvwwtgXdwf˽˼ܼ۽ܽ۽wxwwxxxwvxwgxxx˼˼˼˚ͽۼ˼̪˼˼˼ʻʺ˻vxwwhxvʬʬʬ˚fuwvvfvggxu͚zʬʬʬ˼˼˼˼yyyhxhxy˺xxxʼʼˬzͽ۽˻˻wvwhvyiy˼˼˼˘xxxzyzyzyͼ˼ܼ˼˼˼ͺʻy˻ʉxyxyʫ˼˼˼˹y͉yʻʺʺyyyy޺ʬʬˬʼ˼˼˼˺hixyxwghwxixxyyy̺ʫʬ˺۽۽۽˼˼˼ˆwhXxxhwyyhixyxͺ͇wxyxhvwwx͚xwgvwxx͛xxyxwwxxxxͽͽͽܽyhxxxyyx˼˼˼˺ʻʫʻͻ˼˼˼ihxxyxgwgyy̺۽۽ܽʬʬʼʆxXgxxvWfdvFeVVUueeWfeVuVWfuefyyVVUvVdVGfuUfyxxyggeWugWffvvwwxxxͺ˻˻˻xy˼˼˼vvvugwwgxwux˼̹vwxwxxhxxyxwwwxʻʺ˼˼˼wxxwhgvwxwxxx˼˼˼˻˻hxyxx˼̼̽yxwwixyvͅXgvxwhˬ˼ʬ˼˼˼˺ʻʫ˼˼˼˺xxy˼˼˼hxixͽͽ۽yywhvhwxxxwˬˬ˼ʆwhvhwxxxw͚˼̼˼ufhvwWwvggxf˼ͽ˽wwwwhxwhw˼˼˼˻xxxxxx͉xyyxy̼˼̼ˉxxxxx˼˼˼wgwvhvwhgwxy˼˼˼xxxxyyy˼˼˼˻˻˻ͽͽ۽ܽixywywxiv˼˼˼˗xxyʻ˼ʼˬyy˼˼˼ˬˬʬʺxyyhxhyxyzyzyzyxy̽˽̽˼˼˼˼˼˼ˉVvsvWeGfefuf˼˼͊ͺͼ˼˼̉zVgtgdWfvuuw۽ܽܽ˼˼˼ˊyVvdvVUVevfdg˼˼˼GwtgeWVvfug۽۽ܽ˼˼˼xyyx˼˼˼۽̽̚ʬʼ˼۽ͽܽʼʼˬ͉yͽͽ۽˼˼˼˼˼˼۽۽͉y˺yyyyyyy˫yyyyẏgXvxhw˼˼˼ˈxyxy˼˼˼ˆvgwvHwghww̼˼̼ͺ˼˼˼vwfwvWgvxWwxxyx˼˼˼˩˼˼˼˻˫͇WvXwxhhhihyxʬʬˬ͉ˬˬˬʺ͉xyyxyyy˻ʫʫ˻۽۽˼˼˼˼˼̼yyzyyyx۽۽ܽ˼˽ͼ˼˼˼˼˼˼̙iyy˼˼˼yyʬʼ˼͚vwhwgvwghwwwxwxxxxxuwgwWvvfghgvvWvvfvwfhwxxxvwxwgvwgwhgwwyxˬʬˬ˙˼˼˼ˈviwxhxyw̼˼˼ˬʬˬˈyxxy˺xyyxxxyy̼˼˼ˇihxxyˬˬˬʺʺhhuxhhhvvg˼˼˼hwtgWvWwevV˼˼˼˼˼˼˺˻˻˼̼̼gwewgvgxfeW͈yyxXwuwgghvvW˼˼˼˛hihywgvhwxhxͺ˼˼˼˺ʺʫxghxxhxˬvXWwxhhʬhhyhx͗hiyyyʫhhiyyކwXXxxxxʬˬʬʚʫyy˻˻˺gxwxyxwy˫hxhyxˬʬˬʚˬ˼ʬxyxXwhwhxw˼˼˼ˉhxxx˫ʺ˼˼˼fW7vuevVFfGE˼˼˼˹ʺ˫wg7uvvfgEwVTˬˬˬʺ˼˼˼˺ʬˬ˼ʹfW'vvfugFvWU˼̼˼˼˼˼˨ʫ˻wf6fvvg6wWU˼˼˼ˊ˼˼˼ggfwhvhgxvvW۽۽͚VWVggfgWwvfG˼˼˼˺ggfwWwghguV̽̽˼gfevgwWhwvWyyͺˬ͇xhhxyhwhxhwx͊hiiyihhxyxghgwhixyx͛˼˼˼˛xXWxwwXXxxxx͘yxyyyyyhhyy͚xyyxhhyx˼˼˼xxxxxyyywxxxwz͇hxxxx˻˻˻ʼ˼ʼy˫˺ywxgyw˼˼˼˼˼˪˼˼˼xxx˼˼˼z۽ͽ͈yyyˬ˼ʼʗxxx˼˼˼VgeVeVVveeG˫˺˼˼˼ˉWfdEeUVfueV˺gVevVVVeeveV˼˼˼˪WfUVeFVfuTV˫˺˼˼˼ˉhyhyxyyx˼˼˼ͺʫ˺ʫwhhxhhwʬʼʬ˺ͽ۽۽͊hyxyx˼˼˼ͺy˺gxwxyxwʻʫͪͺyyy˼˼˼yyͪ˼˼˼˼˼̼ʺʫyxyhxxxyxxhiʼʬˬʹviwwxxxxyxyxxhwh˻˼ʬʬ˼ʻʺfeWfvewV4fGT˼˼˼˺˼˼˼gVGvvtvGEvGT˺˼˼˼VfXveVEe8T˺˼˼˼ffWuvewVEfGCyxx͉yy˼˼˼xxxwwxyʺʺ˙y͙xyxxh͗yxyxi˼˼˼˼˼˼ˉhWgggWvugWigvhXhuvg˼˼˼˼˼˼˚yhgvWghvvgXVwguggvggͼ˼˼˼˻˻y˼˼˼ˊz˼˼˼˹˼˼˼˹˼˼˼ˉxxxxxxxxxxvxwwhhxwxxxxwxvwxxhw˼˼˼ˉvwxxwxhhw˼˼˼xxxxxxxxx˼˼˼ˆxwwwghyx̺xwx˼˼˼˺uwvgwewfgw˼˼˼xwvxwxy˻˻˩xxͼ˼̼wxvhwxxxvxww˻yxxxi͇yxhxhyyˬ˼ʬ˺˺wyvwhh˻˚˻ˉyyyyyxhxi˼˼˼˼˼˺˼ʼʬʻwhXYggvwWfgfTvuVͽ۽ܽ˼˼˼ˉʼhgwfuvgevgzͪ˼˼˼gxvgvggevvf˼˼˼ˊ˼˼˼XgggvwWefg˼˼˼xyyyͽ۽ܽͼ˼˼˼ˬ˼˼ͽܽͽͼ˼˼˼ii͉yzyy˼˼˼̼ͼ˼yyy˽ܼ˼͉˼˼˼yyz˼˼˼˼˼˼̉yyyy˼˼˼۽۽۽ܼ̼˼x˼ʼʬܽͽ۽ͼ˼ۼyyyyʬ˼ʼʼ˼˼˼˻˼ˇxwxhwhxxxxyxx˼˼˼x˼˼˼˺˺ʹxxxwvxxyhwwwvxxxwwͼ˼˼˼˼˼˹ͩy͉z˼˼˼ʺʺͩ˼˼˼ˊ˼˼˼ˊyy˼˼˼ˊyyFwfwVefEfUef˼˼˼ͩ˼˼˼UwfwVTfVfdefVvvvGegVeetV͙˼˼˼VeVeVVVeee˼˼˼gvxgvggfvvV۽۽ͼ˼˼hwwwfuvgvvV˼˼˼˙˺XwgwgvwWvfV˼˼˼͉yy˼˼˼gwvgWfgfevuE˺ʇwwxwhgz͚wwhxxgwͼ˼ܼwwxxxgʼʬʼʚ˼˼˼ܽͽ۽wfwvguvghVv˼˼̼˻whwxihw˫ˬ۽ܽ۽̺wxwXwxXxihyh˼˼˼ͺyyy˼˼˼yyhxxhʼˬ˼ʺ˼˼˼xxxxxxy˼̼˼ˉxy˼˼˼ˇxxx˼˼˼vvxvgvggxvxyyxxxx͇xxxxxyy˻˻˼˼˼WgfwvuvHwvGhfvvwvwWwfW̼˼˼˼˼˼˼ˉ˼˼˼ͪhwuwggXwvWhwvwggXvuWyyxy˼˼˼yxywxgwxhx̺͇xhhxx˻fwvVwvwWgwwwghhx˺xyy˼˼˼ܼ˼wgxxhw˼˼˼ˈxwxxxxxxxxx͙˼˼˼xxxxx˼˼˼ˇxxxxxyyyvvxvgvggxv˼˼˼xy˼˼˼yy͇xxxͼ˼˼ܽyyxy˫˺ʬʬˬˈyyxyxwhwxixvyyyܽ۽ܽ˼˼˼yyyyzihhx˼˼˼˼˼̼ˈyyxxx˼˻˻˼ʬˬyiyi˼˼˼̉hwvxwwhx˽ۼ˼ʼʬʬ˚wWwegfvghgvyy͊hvxwxxwͽ۽˼˼˼whvhwxxxwʺ˫yxxx˼˼˼˼˼˼˺wXwXhxhihxwhxghx˼˼˼ʬʬˬ˼˼˼xwxxwxwhhixxˬwxwhhgͼ˼˼˻˼xxxʺyxy˺yyxyyyzͼ˼˼˼۽ͽ۽ۼۼۼͼ˽ͼ˼xyyyx͉y˼˼˼ͽ۽ͽͼˬʼʬܽͽ۽ˬ˼ʼ˼˼˼˼˼˼ˇxx˼˼˼uwggvuwgfw˼˼wwvwXvwhgv˼˼˼˼˼˼˗xxwvhxgy̆hwhvxxWxyxyhͻʻʺ˺ʬʼʬ˺͙ܺʻ˻ʫʺʺʺyyy݉ʬ˼ʼʺܽ˼˼˼ˊzfwdwVVVUfedf˼˼˼WwuWfgFvetgyͺ۽̼˼˼˼˼ͽܽͽ͚fguWegVvttw̽۽˼fvuvGfWVeesf˼˼˼˙xxxyʫʺ͉xy˼˼˼yyvyxvwxx̩yxxxi˼˼˼ͽͽ۽ʬˬʼʇwxwhxhxuͽܽ۽۽xxxwxxywwyxxxxxxw͈xxxx͈xwwxgxhyxxxyxxxywgxgw͗xxxxhͺyy˼˼˼ˇwhhxhhw۽ͽʼ˼ʼʺxyhyh˼˼˼y̺˻ʺʺxwxxygwyxxyhvfguWWvvegWfUVtVFfeUVyyyWfeVuVWfuefWeeuVeFVeudfzyyyiʻʫʻyyyy͉xyy˼˼˼˻ʫݺʫˬͻʫ˻yxix˼˼˼˙˼˼˼gWvhvhgwvfg͚ܽܽgGfwgugfveVW˼˼˼˺xVugWwvvfg˼۽˽xWvWgwfvefͺ˻ʬ˺˻ihhh˼˼˼˚˼˺wxwhxigyyy˼˼˼ˆwxwxwXXʼ˼ʬ˚yxyʼʬˬ˚˺xxxihwWWuvvfgFw6T˺ʺʼʼʬ˺˼˼wVVvfvvg5w7efGGfveuVFf7U˼˼˼˺˻ʺ˺˼˼˼˪˼˼˼gWWvuvvfFf'Uʼʼʬʹ˼˼˼˪xwhghxxxhxhXwޗyyyhݚyxhxivxvhxxwxxhxh͇yxxxxxwxwxxhyxʺʼˬʬigvhhXuug˼˼˼xfvvWwWgdtg˼˼˼˼˼˼͘xyhWvgghuuw˼˼˼˚˼ˊ̼˼˼xgeggguvefwxyxxvxhhvwwgvwgxwxwxwhxwvwhwgvwghwvghgvguwWgvxxxxxxfwhwgvfggWvއxxhxhXwyxyxhʻʺʻͺʆhwuxgXxxxxxgxxxxhxwvxwgͺ˼˼˼˻yyiyhxixh͇yxhxiʼʼʬ˺˻ʻyxy˼ʼʬ˼˼˼̉yxxʻʺ˼˼˼̗yyx˼ʼʬˊ˼˼˼ˇwywxiv͚ˬ˼ʼy˼˼˼xyܽͽͼ˼˼˼˽˼˼xͽ۽ܽͼ˼˼˼̼ͼ˼yzyyyyyy˼˼˼̙vxwxwxgx˻˼˼˼ۼ˼۽˼̼˼ˇxhvwwxvxwwxwxͽ۽͚yvuxvgvfgfwuˬˬʼʚxvvfWwWgutVމyyi˼˼˼ʻʫʺʺxwewgggfveWyyhgvwgghvug͚yyyiwvwhhXvuW͚ʼˬʼʙˬ˼ʼxwxhxxgyxxxͽ۽ܽ۽ʺʼˬˬyyx̼ۼ̼˼xxx˼˼˼ͼܼ˼˽xyxxyzyyyxxyxxyzyˬˬʬ˺ˬˬʼʼ˼˼˼yyxyhxxhii˼˼˼˘vhwyvhxw˻ͽ۽ܽ۽ͼܼ˼hvwfgwGeuvWzy˼˼˼ˊyyz˼˼˼Xfgvvv8fgVͽ۽۽˼˼˼XuwuvwHfgV˼˼˼˻˻gvvvwugHvwFxxxxxyxy͉xyyxyyy˼˼˼̉xxxxx˼˼˼wgwvhvwhgwyyy˼˼˼xxxxxy˼˼˼ˉyxx˼˼˼˻ʼxhyih˼˼˼wxhvwxhgxxxxxxx˼˼˼˻˼˼˼xvyxhwiwʬʬˬwhgvxXX̼ۼ˼xxihhyyxy˻ʺwwxhwwhww˼˼˼wxwxvxhhw͚ʬʼʬ˙۽ܽ۽yyyywxwxvxhhwͽۼ˼vfxvwgwugWhf˼˼˼˚yyzyzyxxyͽ̼˽˼˼˼˼˼ˬʬˬʻyxxyxyyyyyxxxxihʼʬʬ˩˼˼˼˼ܽ۽ܽyxiiviwxhxyw˼˼˼ˈxwxxxwwʼ˼˼˼xxwxxhwܼܽ˼yyxuwvwhgwWgvv˼˼˼˺xyhhhhxwhgw͇xhwwhgͺ˻xyxxxxxi˼˼˼˺ywwgi̼˼˼˺ʺ˻ˬ̼˼˼˗yxxxxˬʼʬ˚ˬʼʬ˼ʼʬʈyxyggvwgvgVdevU˻˻˼˼˼˼˼˼˼۽ͽhfwvgwGtuvf˼˼˼gwgXvhWcuf˼˼˼˽̽ۼۼ͉zʻXgwwgwWdtvfʻxxxxxwxwhvwxhyyxxwwwghʻʚxwxghwwʫʙxxxxxʻwxvwxxhwxxxvxwXgxyyxyxiͻwuhgxʺʻvwxvgtgWhwۼ˼˼˼˼˼˼˼ˇyxx˼˼˼˼˼˼˗yuwvwfwugfw˼˼˼˼˼˼ͼ˼˼˼yyͽ۽ͽ͚ͽ۽ͽܽͽ͉ͽ۽ܼ˼˼˼ʼyyyyxͼˬ˼ʼͼܼ˼ͩ˼˼˼ʙ͚͉yyyy˼˼˼˙yyz˼˼˼˚˼˼˼˙yͼܼ˼˽ˬ˼ʼܽͽ͉xxͼ˼˼˼۽ͽ۽ˬ˼ʼͼ˼˼˼yyyͼۼۼ̉y۽ͽ۽ʻʺyxyxhxwhghx˻͆xwvhxw˼˼˼ˇyxhxhwhwxxwʺʼ͆wgwxʻ͗yxxxyxxyx˼˼˼˼ˬ˼ʼ۽ͽggHvhGttgˬ˼ʼfvuvWfWFeduV̼˼̼˼˼˼˼˚͚ܽܽVvvvWeg6edufˬ˼ʼVvvvWegFecuf̼˼̼˼ˬ˼ʼʻVfufWeWVdeuf˼˼˼˺ʫʉ˼˼˼˺WeeuVtVFeeef˼˼˼˪WVfvfufUeUfVGfevVuVVUdee˼˼˼˻ʻxyxx˼˼˼̼˺˼˼ʼyʫʗxyyzyͽͽͽ۽ʬˬʼʪxxyxyiy˼˼˼˼˼˼ˉyxͼ̼ۼ˼˻˻˩yxvxwhw͚xwwxxxyxyyhix͘xxxxyyxyzyxyyy˼˼˼yyyyyyyxhhi͇yxhxxyͺ˻ʫʆywgwxyyͻʻixhxy˼˼˼ˬʬʬ˪۽ܽ˼˼˼ˊwxwhXhxwʬ͊zyyyy͚˼˼˼͙˼˼˼ywxxwxxxxi͚yyxyx͉zyyyxxxxʻʫ͊ihWghuvgyxy޺hWwgvgWfgf˼˼˼˙yyXWwffgvtgW͉yxʻʻ͉zhgvgWhvvgʼʼʬˈyxxy˼˫ˬʫ˼˼˼ˬʬʬˉxyvxwwiyyxxxyy˼˼˼˻ˬʬʬ˺xhhi˼˼˼˼ʼʬ˺˼˼˼˺ggXve6V8eˬʼʬgfWtvvwf5fGT˼ʬʬ˼ʼʬ˺gfWuvvwf%fGUVWHueV6eHU˼˼˼˺y˼˼˼˚˼˼˼˪y˼˼˼ˉ˼˼˼˼˼˼˼yzy˼˼̼˗xyhhx˻˻˺xxxxyyixˬ˼ʼܼ̽˼yxyʫʘxyyxyʬˬˬʇwyhwxghͽ۽ͽ۽yywhwwwx۽ͽ͗yxy̼ۼ̼˼ʼˬʬʚʬ˼ʼyyʬ˼ʼxxʺzy˼˼˼hvwfgwGeuvWʼgwWXvhWduV˻˻˼˼˼͉yzy̼ۼ˼˼˼˙gwvggvgVUevF˼˼˼˙XwwggwWetvV۽ͽͻ˺ʚ˼˼˼vxxwgvwgxx˼˼̼ˆgggvXvugggwܼ˼͚ʬˬʼʇwxvhvhwx͊wxvhvhwx۽۽ܽyyyhgvwgWXwvW˼˼˼ˉyyy޺͚hgwWgXvvhyyihXWwgffGwvgWʻyzy˻yxygfwvggXwugWixhhy˼˼˼yyyy͈xyy˼˼˼ˬʬˬˇyxhhxwyhwghxʻ˪۽۽ܽʻ̺xxgXxvyyܼۼ˼vxxwgvwgxxxxwggxwʬˬˬʚ˼˼˼˼˼˼ˉ۽ܽxxwggxwͅwgwvhvvfWggʼ˺yyy˼˼˼ʼwhvXWx˼˼˼ˈyxyxxwxgvhXxͻ˼˼˼˼ۼۼ̈yyyyfwvwWwfgWwvwxvgugGhw˼˼˼˼˼˼͇xihi˼ʬˬˬʼʬwwwhhxwxxx̼˼̽ܽ۽ܽxxyyyyyˬˬ˼yxhhh˼˼˼ˇxhihx޺˻whwghxwxhhgwwhwXXwyyhhyͺʻʺ˺ʬyyihhxWXxw˼˼˼ʼʼʼʺfW7vuevVFfGE˺˺˹gWGvtvvfFf7U˼˼˼˼˼˼˩wgFevwgFwGT˼ʼʬwfGvuvgg5wFU˼˼˺ʼ˺͇wwxxx͇xx݆xxvwhwwxxwxxxyͽ۽͗xxxWfWvGwveWͽ۽۽ʻʺ˺xWuFvVwvfWygGfwWfWfvvVW˼˼˼z˼˼˼˚˻˻˻˼˼˼ˉ˼˼˼gXfxWuWgufH˽˼ۼʫʫ˚˫ʺ˺yxwygxhhw˼˼˼ˈyxyxʼʬʬʹʬʼʬ˼˼˼ˉxxxhy˼˼˼ˉyxyyxʬʬˬʺyxxy˺yyyy˫˺ۼ˼ۼ˼˼˼˺gvwxwxwxyxxixx˼˼˼xxʺʺʻ˼˼˼vxxwxhxyxxxxvxxuxghʬʼʬ˻˻˻˼˼˼yxhxx˼˼˻yy˼˼˼wxwhi˻˻ˬʼʬ˚yxhxi˺yxʼʼʬ˻˻ʺiwgxwihWghuvgyiyyމyyxgvVVguvvf͙˼˼˼ʺhWvWgXuvw͹yyʺ˙yxyxguwGwggdufwwxghwxwwwhwhwwwxxwxwhvwvwhwghwvvwfwgwfWgvxxxxxxxuwvfgvvWhvv˼˼ʼܽͽ͉yyۼ˼̼˼˼˼ͽ͙͈ܽܽy͉y˼˼˼ˬ˼˼ͽ͈ܽܽyy̽ͼ̼˼vhwxvwx˼̗̽yʻ˻͆xvwwvxhxyxxxxwxwxxw˼˼˼xx˻˻xxw˼˼˼uwvggguwgwͺʻʺyxyޘyiyy˼˼˼ʻʺʺʫ͈xyyyzʺʺʺyyxyyzyݹ˼ʼʬˉzyͼܼܼ˼˼˼˼yyzyzzyˬ˼˼˼˼˼ܼͼ˼ͼ˼˼˼yxyy˼˼˼yiiyxxܽͽ۽͚ܼܽܽۼ˼fwvGeWWvdugy˼˼˼˼˼˼ˉzfvuv7fWVeetfܽͽ͚˼˼˼ewewFfFVfUef˽ͼ˼˼˼˼˽ܽͽ͙VgvGvWFveuwxxhyxyxʻʬʼʬ˼˻˻˺yyxʼʬʬ˺xyyͽ۽ܽyyzxxy˼˼˼˼˼˼̼˽˼۽˽yy˼˼˼viwxxxwyxxyXwuVvfgfuvfWfdvFeVVUueeyyWfeVuVWfuefGfeUuUVfdeVyxhxiyy˼ʬ˼˼˼˺˻˻˻xwxwwyxyxyͼ̼˽˽˼˼˼ˈyyiyxxy˼˼˼ʬʼʬ˺ܽ۽ͺ˫˺yyyyzyxyxywxXxhyyhix͛huxvXywhwxgxywyxhhxhvxwgxw͊˼˼˼˛yhhyyhihyͺʼ܉yxxʬ˻ˬʬˬͺˬʬˬʪyyx͉˼˼˼yxxxxxx˼˼˼yxxyxxxxxyy͉wgwvhvwhgw˼˼˼ˈxy˼˼˼xy͉xxxxxihhh˻ʻͺʼˬˬʘwvxXygxyy˼˼˼ˉzywvwxgxhܽͽ۽ʻʼ˼˼˼xihxxyyyۼ̽˼wwxhwwhww˫ʙuvxfwWwvfghv͚˼˼˼xwwhvwxhʬʬˬˆxwwhvwxh˼˼˼˚۽ͽ͙˼˼˼˺˼˼˼ixvxWghvWۼ˼̊hgvwWgXvvg˻˺xwugGwggeuVxyyxwvwVVgfvvW˼˼˼˼˼˼˩ʼXvgvvvXggf˼˼˼XwvwvvfWfwWͺ˼˼˼ˊ۽ͽyyyyWwwwfvXfvvWܼ˼͊HggvuuHggW˼˼˼˺۽̼vwxvwhhx˼˼˼fvxufvvWgwv۽۽ܽ˼˼˼wxwhwxˬʼʼʉʬwxggxxwy˼˫ͺxhhhyxiwXwx˼˼˼xxyˬʬˬ˺۽۽ܽyyxyxgwhwxxhhy˼˼˼˫˺ͽ۽ܽhvxwwhxwxxx˼ʼˬyyxx̼˼̼yxx˼ʬˬˬʬʬxywxXxhwxgxWhˬ˫ˬʫ˼˼˼˪yxhhyxhihx͇ͪxxyhxxwivxhwxʫwgvhwxhxxhhxyyyhixwhvXWxܼܼ˼˼˼˼ˈyxyvxWXggvxuwgwWfwv˼˼˼xyxy˼˼˼˪˺ʺ˼˼˼˩˼˼˼wwvgvwHgw̘yyyyܽ۽۽yxxxxxxyxͫwxwxxxhvwwxxxw͚ywxxwwwxvxwxygxxx͹veVfggVvDgES˼˼˼ˬʬʼʺ˫ʫwfGvwvegUwFS̼˼˼˺˼ʬʼgVWvvwfwUv6c˼˼̼˹˼˼˼˻˫ʻwfVuggfvUwFRxyxxh˼˼˼ʼˬʼʘxxx˼ʬʼʙʼˬʼʚyyyxx˼˼˺ʻ˫˼˼ʻ˻hvwwvʻyyxyyyxʻxy˼˼˼˼˻ggewfVhwwtG˼˼˼˚yzxWugfvVwwdWͼۼ˼̻˼˼˼˽۽۽xgdvUUxwdVyxfevVFxfcVʻ˼˼˼͊˼˼˼˚yy˼˼˼˚y˼˼˼˙͚zyʬyyxixhxyxy͈wxwxxxw˼˼˼yxxyhyxixxxyxx˼ˬʼʇgVgXeVx6cʼˬʼʺ˼˼˼˺˼˼˼˺fUvWhUEh5TwWFvfgdvVw6T˼ˬʬʺ˼ˬʼʺwWVvfgevVw&Txyxx˺˺ˬˬʼʙwxvwxg˼˼˼˺˼ˬʬʚyyx˼̼˼˺˼̼˼ʺʻʉyyx˼ˬʬʘxxxxvvfWwWgutVzyʻ˫ʺ˼˼˼hwvwggXvuW͙yyhgwgghugyyiyʺ˻wwuwfwfhvuVxxxhʼˬʬ˺yxywvxg˼ʬʼ˼˼˼˺xyxyh˼˼˼̼ˉyy˻˻ʻˬwxvhgw˼ˬʼʚyyʺޚxhxxh˼˼˼˚yxhhh͗yhyxihwxvxyWwxyvhygw͈wxvwxhxiiwxhwXyyyih͹wWWuvvfgFw6T˻ʺwfVtggfvEwFSˬʬʼ˼˼˼˼˼̼˺ʫʻ˼˼˼˩vfVuggVv5gED̼˼˼˹ggGwwewFvFTˬˬʼʺxvevVVxgefyyͼܼ˼ͺ͙˻˺xuuuGVxfdVhfvvWggwweW˼˼˼˚˼˼˼۽wfvvWvgxweW˼˼˼ˊʻ˼˼˼˪vW6vfgUvVgED˼˼˼˹vGFfegVvVg5TʻʻWEuVhVVhES˼˼˼wVFvfwFwEwDTʫ˼˼˼˹xxxxhy˼˼˼̼˺ˬʗxwvwgyˬˬʼʺʻxyxyhʼˬʬʚ˻˺˼˼˼ˉgwvhX˼˼˼˚yy˼˼˼˚˼˼˼˩yy͘yyyyxxhiʬzy͉yyxyxxxyyyihyxxy˼˼˼yxyxxwwxxxxx͚˼˼˼˙hgvwgghwuW˼˼˼hwuwffwvwuV˼˼˼˻yyx˼˼˼˚͉gvvvWWxfwtG̼ۼ˼XwvwgghwuW͘yyyyxxwxxw͊yxxxyyx˼˼˼ʺʫhxxhxxxxyxixޚwxuhygyhxxyxyxix͇xxxhy͈ywxwxhv˼˼˼˗hxxhiwxhwxxwyvwyg͚yhxxyxwxxxww͗xixxxyyxyx˼˼˼yyxʺʫzyzxxxxxͽܽ۽۽yxxxwwwxw͛xxxivwxwxyyxxhxvwywv͚xwwxxxwxxyigvggGIvt'ܽ۽۽ˬʬʼ۽۽۽˼ʬʬˬʬʼhWfWgWXee&ˬʬʼܽ۽۽˼˼˼˼˼˼ˬʬʼ˼˼˼YfefVVYfe&˼˼˼ͼ˼ʬʬܽ۽۽˼˼˼˼˼˼˼ʬʬ˼ʬʬhgfggWXfegwuggGxewuV˼˻˼˼˼˼˼˼hwvwgWhvvWxyyXhvxhXhvvg͙˼˼˼˼̼ۼ˼˼˼˼˺hwfwWWwvwfVxvevVVxgef˼˼˼˫ʫ˼˼˼ˊͽ˼˼xvtvWFxVeUwguwgvWxgfVͽܽܽyy˼˼˼hguwgWggwfV͙޺yyyhgvwgWXwvW˼˼˼wwfwWwWhvfV˺͙yyxyʺyyzxwuwgwGgfuFyyiihxvhXhwvWͺzyͽ̽˽˼xgfwWvGwweG͊gWfgWGhwweW˻˼˼˼ʻʻxgUvFFxwUV˼˼˼xfevV6xfdVܽ۽˼˼˼˼˼˼˚yzyܽ۽۽yyyˬʬʼʫ˼˼˼ʬʼˬʙ˼ʬʬyxx˼˼˼gXvxhw˼˼˼wgtguwhggyyyʻʫ˼˼˼ͪ˼˼˼ˇyxxhywWwugfwgfw˼˼˼˩huhvxXw̼ۼۼyyyyʻʚxyyxʻʻͽ˼˼ܼ˼ʬ˼xyx˼ʬˬ̽ۼ˼ͼ˼˼˼y˼˼˼yyͽ۽ܽͽ۽۽ͽ۽ܽ˼ۼۼWwuWdGfvevg͉zzۼ˼ۼ˼˼˼ˉ͚VgfVcVVwdfW˼˼˼VwvGtWfweugͽͽ۽۽FfvvVdVUgUvf˼˼˼yͽͽ۽˼˼˼˺ʬʬˬʉʬʬˬʉxʻ˻ͺݺͻˬ˫y˼˼˼VfuUeUVheuf͚͚˼˼˼fftvVUFegeuf͙˼˼˼fWewVdVfwdeW˼˼˼efuvFeVfgUtfͪxwwwxw˼˼˼˺˼˼˼xhyhxۼ˼̈xxxxxhyxxʬʬˬʻ˻˹xyyxvxXwxgh͇hgwgw˻ʫˬ˼˼˼˼˼˼˩wxghhw˼˼˼˺y˼˼˼˚yy˼˼˼ˉyy˼˼˼ͼ˼ʬˬܼۼ۽yxxxyy˼˼˼ͽͽ۽̼ܽ˼˼˼zzyy˼˼˼ͽ۽ܽͼ˼˼˼͙ixyyy͹͚zy˫ʺ˼˼˼ͩzzyyͼ˼˼˼ͼۼ˼ܽxxy̼˼˼˼͉yyxyy˼˼˼˼˼˼ͽܽܽ˼˼˼ͽͽ۽۽˼ˬˬyxiۼ̽˼fwvGeWWvdug˼˼˼yۼۼۼ˼˼˼˙˼˼˼UfvvVUVFgdvfͺfwuWeGVwtvgͽͽ۽ܽVgfVdVVwcfW͉zzͽ۽۽˼˼˼ˇyxxhixgvwvxwgܼܼ˼xxxxwxvhwgh˼˼˼˩˻wxvhwxghxxwxyxwx˼˼˼ͩ˻˫gwhwugvwwfXwyxyyyˬʬʼ˺˼˼˼ˉyyyމyyyyiyʬzy͈xxyʼ˫݈yyyʫ͉zyyhx˼˼˼˩˼˼˼˹yyy˼˼˼ˉyܼܼ˼˼ʬ˼ͽ۽ܽxͼ˼˼˼ͽͽ۽ܽ˼ˬˬͼ˼˼˼yyͼܼۼ̈xyͽͽ۽ܽ˼˼˼˼˼ʬˬghvGtGgtvHͽ۽̼ܽ˼̽˼ʼˬfge6eFfweeW̼˼̽˼˼˼˼˼ʼˬVWfwFeFVwefW˼ʬˬfgeFe6fweeWͽ۽ܽyyhixwxgxWh޺ˬhwxwXhw͇hgwxgwˬyxyhx͗hxxhx˼˼˼ˈxhihx͇hwhxhwx͉yyͪʻʫzy˼˼˼͉xyyxwhgvxXx˼˼˼˼˼˼˼ۼ˼̈xxxx˻˺wwggh˻ˬxxyhxwwwxwx˼˼˼˺ͺʬˬˬʼ˼˼˼xhyhxhhwgxwyhxxywvXuxhhۼ̼̼wgugtwhggyyy˼˼˼˼˼˼˩ʻ˫ʫ˼˼˼ˈxxy˼˼˼wfwfguwgWwͩwvhxXg˼˼˼˻yyxhxxh޺˼˼˼ˇxhihxhwXwxhwxhyxyͩ͗xihyyhWwxgxwwgxgh˻˻͇whwxhhxxwwxxxyx˼˼˼xgvwvxwg˫˫xxxx˻ˇhwgvwxhx͹͇hwgvwhxihxxy˼˼˼˪˼˼ܼwwXwvfugwghwyxyˬʬʼyy˼ʬˬʚ۽۽͙ʬ˼˼ʫ˼˼˼˫ʫͪzyͺyy˼˼˼ͩ˫˫͉xʼʬˬݺʫʫ˻ʼʬˬʉyʬzy͉͊˼˼˼͙yyˬ˫ފzyxhyyiyyxxʬʫ˻ͺʫ˼˼˼ˉyyyyyyzyyyyͺ˼ʬˬʇxXYXxˬʬˬ˼ʬˬʼ˼˼˼vwvGvvhWwͺwgvWvwhWgvwvWvvhGw˼ʬˬʻ˼˼˼˻˻WwvgwtgXewV˼˼˼˼˼˼ˊXfgvvvHfgVʺHvwvvwXVgUͽ۽۽͊z˼˼˼˽ͼ˽˼˼˼˼XwwwgwWfvvFyy˼˼̼ʬʬ˼ʺxxxxy˼˼̼˗whwiw˺˻ʺʻʫʻʚʬˬʼ˼˼˼ˇxixxxxxxxˬʬʼʺhwgwwx˫˺xxxxxwxgxwhw˺yxxxxxxwxwwhxvxxyxwhwxwv˫˺xyy͉yy˽˽˼̼ۼۼˬʬʬͽ۽۽۽ʼʬˬ͉zͽ۽ܽ˼˼˼˼˼˼۽۽۽͉yxxxwxgvhX˼˼˼˺˼˼˼۽̼˼xx˼˼˼ˆWwhgxwuxvwfgggwuxixyx˼˼˼˺˼˼˼˪wwvgvwXgwʺʻyyyyyͼ۽̽ͼ˼˼˼˼˼˼z˼˼˼xͽ۽۽۽̽˼˼˼ʬʼʼ̼˼˼˼۽ͽ۽xyhgvwgghwuW˼˼˼˼˼˼˺̼˼˼˼hhuxhhhvvggWfgwtwXwfW͚˼˼˼˙˻˻yyXgvwwuwggfV˼˼˼ˬˬʼʘxyxx˻ʻʼˬʼʚxxxxy˼˼˼ˉxy˼̼˼˗xixxxʼˬʼ˼̼˼˘wvywxhvʻ˻ʺxwwwhwhwwwhwxxxvvwvwhwghwvhwwxwxxxxfwvwWwgggfvvuvgfvghwuxxxxyhxxyʻʫwXhhwވxhyhxgwgxͺ˼˼˼˻yhxhͺxhyxh˺ʻxgwxhwʺʬXwxxuwwvhwxxx˼˼˼ˇxxxxxxyyxxwhwxwv˼˼˼ˉxyyxxyxxxxxx˼˼˼ˆwhwxgxwyxxwxgxwhw˼˼˼˙ۼ˼̼yzyyy˼˼˼xyx˼˼˼̉˼˼˼ͽ۽۽ܽyyͽͽܽܽyxi̽˼˼˼ʼˬˬyy˼˼˼ͽ̽˽˼yyXvgvvvXggfgwgwgwhfufW˼˼˼˺ͽܽ˼˼˼˼˼˼ˉhwfwwuggfgW˺ʼXgWvvvXgWWͺxhhhy˻ʻ˼˼˼˺ʻʻyhxxhyghgxwyy˻˻ˬˬ˼ʚˬˬʬˆxXgxxvyyy˼˼˼˗xixhۼ̼̼xxwxxhw˻˻yyvvughwwggwuͺ˼˼˼xxxwywwxhwxg˻˼whwxgx˼˼˼˺̈xxxhixyxguxvhyxʬʬˬʻ˻˻ˬʬ˼ʹʻyyvhxwxxwv˼˼˼yhxxh˼˼̼˺ʻvwwgvwgxwigwwxwvwhwgvwghwwwxwxxxxxuwhwvWvvggfvwXwfuvgfgvxxxͽ̼˽˼˼ʬˬͽ۽ܽyyy̼˽˼ܽ۽ܽͼ˼˼˼ܽ۽͉ܽyyyy͊˼ʬˬ˼˼˼ˬʫzyhggwggWwugG͚WgwwgghgvgVyyihxvXhhwvWyyyhwvwgWhvvWyxxͺ˼˼˼˪wxxyww˼˼˼xhyhx˼˼˼˺˼˼˼ˇhwhwxwgwxh˼˼˼ʻ͆wwhwhXxxx˻ʬʬ˼ʺͼ˼˼hxyhxxxxyy̺whwxhwwgwhgxwxw˼˼˼˺ۼ˼̺˼˼˼xxxʻwghgw˻˻vvvwWwvwWvͺxxxixwxuhygʻ˫ʺ˼˼˼ʻʫʻއwXhhw͇xyxixwhwxgxʺvwwxxxhvxhyxhʫ͈xhyhxͺiyyhyy˫ʫwvXuxhh˼˼˼˼˼˼˗xixyx͆wwvwHvwhgv˼˼˼˺vvwWfvwWgwyyx̼̼˼˼˼˼̺˼˼˼ˇgXvhWxyxxxxxxhyih˼˼˼˫˫˼˼˼˺xyxyͼ˼˼˼xhyxxwXwxhw͘wgvwyxxx˼˼˼ʬˬ˼ʺ˻˻gwwhhx˼˼˼xxwxxw۽۽۽yyxʬʬʼʬʬˬʚ˼˼˼ʫʼʬʬ۽۽͊ggfwhvhgxvvW˼˼˼˚gWVggugfwefGͺzy˼˼˼xfevgWwwvvWʺʻʻxgfwWgwgvuV˼˼˼˺ͽۼ˼˼˼˼ixvxWghvW˼˼˼˺˼˼˼˚hggwgvgWgwV˼˼˼XggwffgwtwGy˻˻ͼ˼˼hwvgWhwvWzyxgfwWvGwweG˫˫˼˼˼ͽ۽ܽ˼˼˼xgewFvVwwvGgWVgWfWfwvfG˼˼˼˚ͼͼ˽˼˼˼˼˙yzghfxWuWguf8˻˻˻˼˼˼˻ˬxhyhggwggWwugGiwvwhXhvvWͺyyzxyyhwvWghwvW͉zyXfgvguggwwWʺʫ˼ʬʬˬʬˬʚyy˼˼˼ʼ˼ˬʫͽ۽۽hixyxwgvhwhxͺʫ˫ކhxXwxhwʫʫ˼˼˼vxWwxhh˺ʫʻxhyyxxixyxͺ˻͇xhyhxhwhhwwygwhwxwʻʺ˚͚˽˼ܼgwhwxwuvgfWvfgwv˼˼ˈͽ۽۽͚˼˼˼wwwwhxwhw˼ʬ˼ʙ˺˼˼˼hihyʬ˺ʫhixyxͺxyyy˼˼˼ˆwXwXwxxʬʬˬ˗hwhxiwwͽܽ۽۽yyʬʬʬ˙yxyʬʬ˼xhxvhwxyxͽ۽۽۽xxx˼ʼʬ˼˽ۼyxyyy˼˼˼˩vgwvHwghww˼˼˼ˇguXxhwxihyxͼ˼̼ͻxyx˼˼˼˪XvXwxhgʼʺvgfWwvwWvw˼˼˼˼˼˼ˈxyyyfF7guevVVfGT˼˼˼˺ʼʬ˼ʩwUFwevwgEwGdʼ˼˼˼˺˺˹fVGwtfvgVv7T˼˼˼˼˼˪˼ʬˬʩwVGvuvggVwFS˼˼˼ˈxwwxgxhʫʺʚyyʻʺ˼˼̼ʬʬ˼ʺyxxyxxxyxʼʬ˼ʺhxxhʬʬ˼˼˼̼˺͘xxxwwwxxyͽ۽ͽ͛xxy͇xwwxwywxiv͇wvwhvXfvvwgWdvwg۽۽ܽ˼˼˼˼˼ͼ˽˼˼˼XVgvvHegf˻˺WfwgtwXuvVzy˼˼˼HewvwXegf˻ˊyy˼˼˼˩yyyxy˺yyyx˻˼˼˼˼˅whhxhhw˼˼˼ˉyxxxyx˺ʻʼʼʼxxwhwxxywixixhʬʬ˼ʺ˺xxyy˼˼˼xx˼˼˼˺xxgvwwx˼̼̽ʼʼʼʅxgvwhxxy˼˼˼˻˻wxvwh˼˼˼ʺʺʻxxyxxvwhwgvwghwvwwgvwgxwwwxxxwxxxgxwhughgvWvgggwxxxxxvwgwufvgfXvʺ˼˼˼ˉzggvVvVxuvfͪyiyhgvWghvvgxyyˬhfuGvgweuWXWvWghvvgyyzyyͼ˼˼˼ͽܽ۽͉yyy̽˽̽ܽͽܽˬʼ˼ͽܽ۽ܼܽ˼˼yy˼˼˼yyͬ˼ʼˬʫyyʼʬʬʉ˻ˇwxxwh˼˼˼vwxwxxx̼̼xxyxvwwxxxʻʺ˺ͺ̺wwwvvvugwwgxwu˼˼˼˺yyyyyͺʺʺʻ˼˼˼˺ʺhyyyiyyyyxyyͺʺʫݹzzy˼˼˼ͼ˼˼˼yyyyyzͼ˼˼˼ͼ˼ۼܼ̼˼˼˼˼˼ʼˬyyy۽۽ܽiiͽܽ۽yy˼˼˼ˉ˼˼˼VwewFUFeffefͽ̼˽˼˼˼˼ͼ̽˼zyVwvGdWfwuugܽͽ۽˼˼˼ˊyyVvu7eWffftV͉GgvGeWVwfugܽͽ۽ͺۼ˼̊˼˼˼VWVggfgWwvfGʚggfwhvhgxvfW˼˼˼͙gfevgwWhwvW˼˼˼ggfwWwghguVyyyͽ۽xyyx˼˼˼ˈyy˼˼˼xxxxxxyyxxxxxxxxxy͆wgwvhvwhgw˼˼˼̼˼̼ˉx˼˼˼ˉxyyͺwxwXWxxˬʬʬˇyhhxiʻʬ͉˼˼˼ʻhhhxyxghgywyyܽ۽ʬʬʬ˚˼˼˼wxggxxwwxwwhxxzyyͼ̽˽˼ʻʻʉfvguwfvWghvܽܽ۽vwxvwhhx˼˼˼˚gwvwVvVxfvW˼˼˼˼˼˼˼˼˼˼˛˼˼˼hwvwWghwvWXgvwWghwvW˼̼̼͈xyy˼hvuvGvgwvuF͇ihxxxhixyxhxXwxhwޚyhxxywxxXhxxv͛wghxhx˼˼˼ˇxixyxxgwg͇hvwwx˼˼˼˼˼˼˼۽̼̉xxxxyx˻˺ʻʬʼ˼ʼʬʼʇyxyͽ۽ͽ͉xy˼˼˼yyyzyxVfeUdUGfueVyygvuVufWwvgWedFeVVfueVWfeVuVWfuefyxxyxxxzyyyz۽۽˺xxxxy˼˼˼˺yʬʼ˼ywgvwxx˻˻˼˼ͼͺʬʬʬ˼˼˼˼˼˼˼yyyyxͺʬ˻xyyyʬʬˬˉyyxݺʼʬ˼ʉ˼˼˼˼˼˼˼˼˼yyyyy۽̼˼yyxx̉yiy˼˼˼ͽ۽ͽ͉yyܼͼ˼ˬʼʼͽܽͽ۽˼˼˼˚y˼˼˼ˉz˼˼˼ˊwhxxwʼʼʼʼ˼˼˼xxx˻˻ˇwwx˼˼˼˺xwvhxwͼ˼˼˼xxyx˼˼˼yx˼˼˼͗wxvwxgxxyxhʻʺʺ͚ʪ͉yy͉yz˼˼˼͚VfuvFVVUgftf˼˼˼˼˼˼ffdfFFFdffdf˼˼˼ffevGUWegedfeuuu7VWeVVse˼˼˼˫wvxwgxxx˼˼˼˼˼˼̚wvxwgxxxͼ˼˼vgggvWvwhgvʼʬʬ˚͉yͽܽͽ۽vwxxgvgxwxxwxxw˼˼˼˺wgwhg۽̼˼xgvwvxwgxxxxͺ˻˺xhxxhͺwwgwfgwgWw˼˼˼wgwxhgʼxxxyxxx͇xxxxxxy͉˼˼˼xxxx˼˼˼xyyxxxxx˼˼˼vvxvgvggxv˼˼ˉyyyyyyyxyxˬʬʬ˻˻˼˼۽ʬʬʬ˘xyxxy˺ywxvxwxygܽ۽۽˼˼˼˼˼˼˼˼˼˼yyzyzihxxxxxx˻ʬ˻ͼ˼˼˼xwgwxh˼˼˼xxyyxxwXxhhw˼˼˼˺vwwvxhyhxhyxxʬʬˬ˼˼˼˼ihyhx˼˼˼˺wxxwx˻˚˼˼WVvwwhvvfg˼˼˼hWwgghuvx˼˼˼˼˼˼ˉhGvwvvWvufgyhWvgghvug˼˼˼vGFfegVvVg5T˼˼˼˩˺˼˼˼e76WeVeeWV6U˺˺vFEgUgfvFg6U˼˼˺˺˼˼fGFgdfffVf&Eʼˬʼʻ˻˻ˉwxwXwxXhhhh˼˼˼˼˼˼˺ʻʉxyyxixxhywxwixhg˺ʼʬʼʹxyxi͚xyxxxʺʇxxwwxxy˼˼˼yxy͊yyzx͊xxy˼˼˼˺yyy˼˼˼ˉzzzy˼˼˼˩̼۽˽hVfWggvwug˼˼˼˺˼˼˼xfevVVxfevyyͺwVfWvgxvugʻʚxeeFWxetf˼˼˼ˉͽ۽ͽ۽ʼʬʬ˺whhxhhw˼˼˼˼˼˼zyyhxiyhʬ˚˻whwyxxw˺xxxyxxxʬʬʬˉʻʺ˺xvwwvxhxxxiͺxyxvwwvxxhͽ̼˽˼wgvvwgx˻˺˼˼˼ͺvwhwuvvfwwXwxxwwxx˼˼˼˼˼˼˙yyxwxgxwhwxxxxxwxwhvwxhxxxxx˼˼˼ˉwxvwxxhw˼˼˼ˉxyxxxxx˼˼˼ˆvxwwhhxwxxxxxyxyܼͼ˼ͽ̼˽˼˼˼˼zyyyzͼ˼˼˼iyiyyܽͽͬ˼ʼˬ˼˼˼ܽ۽ܽ˼˼˼xyyyy˼˼˼˙˼˼˼yyyxxxxxxxxxxyyxxxxxx͉yxy˼˼˼ˇxxx˼˼˼vvxvgvggxv͉y˼˼˼hgvwWgXvvgyxx˻ˊWWgggugHwgW˼˼˼˼˼gfwvggXwugW˼˼˼˺˼˼˼hgvwhXYvW˼˼̼ˆgggvXvugggwܽͽ͉˼˼̽wxvhvhwxʺʇwxvhvhwxyyyy͚˼˼˼ʼʬʼvxxwgvwgxx˼˼˼ˬʬʬ˺yyhxxhyzyihhih˼˼˼ͺxhwxhxYwxvwxhxiˉܽܽ۽˺xuuuGVxfdV͉yyy˼˼˼˺ͽܽ۽xvevVVxgefwfvvWvgxweWۼ͚̽˼˼˼˩˻hfvvWggwweW˼˼˼vhwwxy˹͉yyxxxxxxyʺʫ˼˼˼ͺʼʬʼʇywxhͽ۽͉˼˼˼xxxx͚yzxwxwxxxxxx͘yyyyʺ͇yhxxixxxyxyxhxyh˼˼˼xxx˼ʬʼʺͽ۽ͽͺiixxxxyyyx˺˻˼ʬ˼˼˼˼˼˼˼˼˗vwwvhhyyy̼˼˼ͺyyyyy˼˼˼yx˼˼˼˺WeeuVtVFeeef˺˺˼˼˼WeUuUsU7VuUeˉ˼˼˼VeeVdVGfueV˼˼˼GtdFtFGftdf˺yzyͺ͙ͩ˼˼˼yyʺʺvwvwhwghwvwwxwhwwhwxxwwxwhvwiwxwvvwfwXwufhgvxxxxxxxvvwufhvggvu˼˼˼˼˼˼˼wfuvGghtvuf˼˼˼hWvwWgXwۼ˼̚˻˺xgvVVguvvfhgvWghuvgyͪ˼˼˼˺ʬyxyx˼˼˼ˬʬʬʼʬʬʹˬʻxxxxyʬʬʼʺvwywxxh˼˼˼˺yxx˼˼˼ˉiwgxwvxwuxhhʫˆxyxxʺʻwyhhއyxhxy͇xxixx͆gvwxwxxxxxyʫ˼˼˼ˉyxyyyͽͽͽ۽ͼܼ˼ͼ˼˼˼ˬʼ˼yy˼˼˼͚yiyy̼˼˼˼ܼͼ˼˼˼˼ܽ۽ܽzzyyzyʬʼʬ͉ʬʼʬ˺͙y݈xʻʻʫʺˬ˼˼ˬ˼ʼܽͽͼۼ̽˽xxxyyۼ̼͚yyyͼ˼˼˼ܽܽ۽ܽܽ۽˼˼˼yyxyxyˈxyyx˺ʼ͆wuhgxyyxyxvwvwvvhww˼˼˼˗xx˼˼˼˹ͼܼ˼ͩ˼˼˼˼˼˼˘xy˼˼˼vvxuwvfWwwvyuxgvhx˼˼˼˙fvuv7fWVeetfܼ˼͚ͺ˼ͽ͊yyzVgvGfWFvuuwܽͽ۽˼˼˼ˉzzyfvevFVFUveeg˼˼˼gwvGeWVvdugܽ۽˼˼˼˼˼˼wwigxhx˻˺hyix۽۽ܽyyz˼۽˼˼˼̼ˈyxyyxxxxyyʻʬʬʬ˼yyy˼˼˼yxxxxxix˼ʬˬʺ˼˼˼ˉxy˼˼˼xxxxxxxxxyxxyxxy͙˼˼˼ˉyy˼˼˼xxxxxyx͆wgwvhvwhgwxyxۼ˼̺xhihxxxxxxxyhx˼˼˼˼˼˼˻˼˼˼˼˼xwxxxxxywgvhwxhxxgvxWhˬʬˬʺ˼˼˼wxgxhhxۼ˼ۼ˼˼˼fvxufvvWgwvʻʻwxwwhxx˼˼˼͚wxggxxwʬʬʬvwxvwhhxyyy۽͚ܽyyx˻hwgvwxhxͺxwxxxxx˼˼˼xwhwxhw˺˼˼˼vwwgWgvgWwyyyx˼̼̪̺wxvhwxghxyhhxwwhvhyhxxx͚˼˼˼˚huvxwwyhhއyxhxxhvwgw͚͙yxxxyyyxyx͙yhgwfuvgevgʺʻʚ˼˼˼˙˼˼˼XfgvvvXfgvܼۼۼggvvfheuwg˼˼˼XWguuXfgg۽ͽܽgWGvtvvfFf7U˼˼˼˩˼˼˼˺ʼʬʬ˩gWGuuwgwEvFd˻ʫʼʩVG7fufvfFeGU˼˼˼˩˼˼˺ʼʬʬʪgVFvewww6vGU˺yxhhxʬyhhxi˼˼˼˚˼ʬʬyx˼˼˼ˈxwxXwiˬʬʬxwivxhwx˻yyy˼ʬʬˉxyyʻxxxyyˬˬ˼yyyy̼ܽ˼zzyyyxxxy˼˼˼˺ˇxwiwghx˼˼˼ˈyiyiܽ۽ܽyxyy˼˼˼ˬʬʼʇyxxhiˬʬʼʚuvxfwWwvfghv͚y˼˼˼ˈxwwhvwxhۼ̽͊xwwhvwxhʫ˙˼˼˼۽۽wwxhwwhwwgWfgWGhwweW˻ˊͻ˼ܼ̊gWugFVhwwfWyzyyWHfXWvWWvfX˼˼˼yyz˼˼˼ˊܽ۽˼˼˼ˊ˼˼˼fWfgWvWgwfVG˻xxx̼˼̽ˬʬʼ˙ˬʼ˼whwviwxxxyyxxˬʬ˼yyyܽ۽͉ͩzyhgwWgXvvhwvufGghevuW˼˼˼˺ވyiiyͺ˼yyyyxwvwVVgfvvWyxyyhwvwWghvvWͺVeduFuVWeeefyygfuVfWvvvwWVevUtUFfeefWfeVuVWfuefyxxywvxgʼˬʼʺͽܽͽͺxxxyxy˼˼˼˺ʺ͹ʻʇwvwghyy̺˼˼˼xxxh͛xxxxwhxghx۽۽͈xxxwxxxwxyyxxxxxxxxxxxxywxhwxgh͇wyvwhhxʺ˺xxxxyyyyͺwiwhx˼˼˼˽۽ܽͺ˼˼˼˼ˬʬʬ˺xxiyyyyxyyyihyzyʫʻyiiyމzyyy͉yzy݈xyxzyʼ˼˼˼ʬʬʼʉxxyxxyx˼˼˼˺ʬ˺ʫʼʬʬʈyxyyxwxgxhiw˻˼˼˼ˉˬʬʬ˼˼˼ˉyhhxx͗xywwʫˊx˼˼˼xyyx͆xxxxx͇xyxʬʫyxxgWgftfXvwW͚޺hyyhgvWghvvgyy˼˼˼˺ʺXVwguggvgg͚hgvgWhuvg͉yywV6wdgfvFwFUʼʬʬʺʫʼʬʬwW7wswuwWw7Uʼʬʬʺ˼˼˼ʼʬʬʹvW6vdwfwVgFTʫ˼˼˼˹ʫʫfG&gdfffVfFE˼˼˼ˉ˼˼˼˺yzyy˼˼˼˩˼˼˼˼˼˼˨˼˼˼xwVwewvwwgwyx˼˼˼vgtwuvxwg˼˼˼˼˼̻ʼ˻guxhw͆yxxxyguhvxxx͗yʫʚxxxxxwhwxwvxxxxxvxwwhhxwʻxwwwghyxʻwxwhvwxhxxxxxʻ˻xWuFvVwvfW͉zۼ˼ܼ˼˼˼ˉ˼˼˼˚xVd6VxeefgGewFVhvwvg۽ͽܽxWeEExvef˼˼˼yz˻˼˼˼ʬʼʬˉʼʬʬʇyyxʬʬˬʉʫʫ˼˼˼yxxxx˼˼˼˺ʹvwxwxxiyxxxx˼˼˼˺yyˬ˼˼ͼ̼˽˽͉xyͼۼ˼̉˼ʼˬܽܽܽܽͽܽͽ۽ܽͼ˼˼˼yyy˼˼˼zhyyyͺhxyxxʺxyxxhuvxw޺wgvhxwwwxwxhͺʫʆxwwvhx͹ʫˇxyxyx˼˼˼˺zͺyʫʉͨͩ˼˼˼xyyۼ˼͙ܽܽ۽ܽy̼ܽ˼ˬʼ˼ܽͽܽyyz˼˼˼ˬ˼ˬ͙˼˼˼͉xyͽܽ۽͉˼˼˼˹zyy˼˼˼ˉ˼˼˼˹yzy̼˼̽fge6eFfweeW˼ʼˬ˼˼˼ˬˬʼ˼ܽͽܽffd&fFfffdfˬ˼˼ܽͽܽVWew6fFVwfeg̼˼̽egUw5V5ewVUg˼ʼˬ˼˼˼˚ʬˬ˼xxxyʫʼʬʬvxvggxʬʬ˼˼˼ۼxxx۽۽͇xxx̺guxvhyxhhhhyyͺ˼˼˼ˬʬˬʼ˼˼˼yxixxxʻʈgwvywyxʫʻ۽۽ܽ˺˺˚͚wWwegfvghgvygvxwxxxͼ̽˼ʬˬʬˆwhvhwxxxw˼˼˼hwvxwwhx۽۽ܽ˼˼˼̇yhhyywgtguwhgg˼˼˼˼˼˼˺yyyʇguXxhw˼˼˼̆guhvxXxyxyx˼˼˼˪˼˼˼˼˽̼ܼwwVwehvwwhgwxyyhuxvXywxhihxͻʬ˼˼˼˗xxhhxއhhixxwxwhhg͈wgvyhyxwʫˬwwXwXh͗hiiy͚whvhwxxxwˬˬˬʇgvxwxxx˻ʫ˼˼˼ۼ̼˽̼˼˼ˉvvWvehfwggwyyyhwvxwwhx۽۽͉xyvxwwizyܽ۽ܽˬˬˬʩۼ̼ܽxxyyxxyʻxxxyyhxˬ˼ˬ˻˻˼˼˼˼˼˼˼˼˼ˇxihxxyzyyyyyxxx˼ʼˬvxvggxyܽͽܽxxyyˬʬˬ˪ˬ˼˼̼˼̽xxyyxxWgwwgghgvgVXgvwgWhvvg޺˼˼˼yyyihyyXhvxWgiwvWyzyyGWggfvfXwwWˬ˼˼˼ˉͽܽxgewFvVwwvG˼˼˼zyygWugFVhwwfW˺˼˼˼˻˻˻xfdv6VxfeVyyzxfewEExgeWۼ̼˼˼˼˺guvhx۽۽˼˼˼˺xxxyxxyygwvwxʻ̺ʬʬʬ˼˼˼˼ʻʉhxxyʻʺWfdEeUVfueV˼˼˼˺˼˼˼˺ʻWeSu5uUWVuUe˼˼˼ˉʻVVdvEuUWfeefʻGfdDtDGgtdf˼˼˼˺ywwgixxy̽ۼ˼̻˻˺˼˼˼˖xxxyxyyˬʼ˼yyyzzyxyʻܽ۽ͺ˼˼˼˼˼˼˼ʬˬʬ˺yhxixy͇xhhxxyyy͚xihyxxwwxxx˫ʺxyxyxxx͉zyyxyyxyy˼˼˼͊yzyy͹yyz˼˼˼ʻۼ˼̉hxvxggYvWhgvwgghvug˼˼˼˼˼˼˙˻˻˼˼˼˼wwuwfwfhvuVywwvgWWhevtV˼˼˼͚ffGewevVDfWSʻʩ̼˼̼˺ʻeuVUgVge3VVS˼˼˼˺˼˼˼˹VfWevfwfDeGSʻʻ̼˼̼ʻʻffVdgfgfDfVB˼ʼʼʻ˻ˆxwgwyyyxy˼˼˼˚xxxxy˼˼˼˺˼˻xhghxvixhxhʻʻ˼ʬʬ˺˼˼˼˙y˼˼˼ˉ˼˼˼ˉz͈xxwxxxyxyyyy͚yyyxxhyxyx͙yyʬʫxyxixyy˼˼˼yyxʻʩyxyyyʻʻgwWXvhWduV˼˼˼˺˻˻˼gwwgguwHevV˼˼˼˼̽WvwfgvwXuvVzy˼˼˼˚yz˼˼˼ܽ۽fwvggfgWeuvEwfVtggfvEwFS˫˼˼˼˼˼̼˪ʼwWFugvugEwGd̼˼˼˩vfUeWgfv4gFT˼˼˼˼ʬʼʺˬʬʼggVufwvwEv7T˻ʫ˼˼˼̉xwxwwyxʻyxy̼˼˼˗xxyˬʬʼˉˬʼʬ˙yxˬˬʬ˚xyxxx̼˼˼̙ͪxyxyhwhwxxxx۽۽͈xxx͈xxyxxxhwghxwwxxwxxwx˼ʬʬ˙xwywwxx̼˼˼̺ʬˬʬʼˉxxxyxyxyˬ˼˼˼̗xyˬʬˬ̼˼˼ˇyxx˼˼˼˙zy˼˼˼˙˼˼˼˙wwfwWwWhvfVyiyͺ˻ޚʻ˺wvufGghevuWyzyhgvwWgXvvg˼˼˼˚yyxͺyyhwvwXhivvWgfWtvvwf5fGTˬʬʼ˺ˬʬʼwuWswwww5wWSˬʬʼ˺˼˼˼ˬʬʼ˹ffGtwfvg5vWT˼˼˼˹ffVdgfgf$fVD͊xxxxyxy͘yyyyxxxihzyyxwxxxxx͘xxyxyyxxhiʬyxy˼˼˼vfFefgWv4gUT˼ʻ˼˼˼˻ʻʻgWGuuwgwEvFd̼˼˼vfFtfwgwEgVS˼˼˼ˬʬ˼ʩ˼˼̼˪ˬˬ˼wg7uvvfgEwVT˻˻˻ˬʫˆywgwxʻʻy˼˼˼˼˼˼˺hxhxiˬʬʼʻxhghxvyxxxxyyxˬʬˬ˺ˬʬʼˉxx˼˼˼˺gwgwgwhfufWͽ۽ܽgvxgvggfvvV˼ܼ̺yyʻ˺ʺ͊fwvgWvggUfuF˼˼˼WwwwfvXfvvW˼˼˼˩͇yxhhyhwxwXhwޚxxhhxixxhx˼˼˼ˆxxwxhXxvhyxix͛wxhwghxghxxhx͊zy˼˼˼WwWhuXgdvV˼˼˼˽۽۽ͺۼۼXvvfwgWuvwVyz˻HwvgwggeuwV͚˼˼˼˼˼˼˫ʫWwvggugfefvEhwuwffwvwuVۼ˼̉˼˼˼˺˻˻˼˼˼˼hwtgWvWwevVhguwgghvvg˼˼˼y˼˼˼˙YxxgghvvW͚ͺXwvwvvfWfwW˼˼˼gvxgvggfvvV˫ʻʺ˼˼˼ۼ˼̺˼˼˼ˊgwuggfWfUvvFyyhwfwwuggfgWͽ۽۽yiyiwvwhXhvvWޚXgvwgWhvvg˼˼˼˺yyʫ˺hwfwWWwvwfVxyyhvufgvGweuWyyzͻˬˬʬʼ˼ʬˬʚxx۽۽͙ʬ˼˼ʫ˼˼˼͈xyxxxxwwxxxxxx۽۽͚wxwxxxx͛wxhghxyxyxwhwh͙xixyxyyyyy͈xyxʫyy͈xxxwxyyyhxxyyxyx˼˼˼ͪhwXwxhwwhwghxކxxwXhxxvxixyhxhhxx͇yhhxyxhxxi˼˼˼˫xxxhxhg͈yxyxxxxxx͊xwxxxxxihxxyʺyyyyhixxx͉yyzyxyyxy˼˼˼hWfWgWXee&ˬʬʼ۽۽ͼ˼˼˼ʬʬʼ˼˼˼۽۽hHfHhhhdf&۽۽ͼˬʬʼʬʼ˼ͽ۽۽ͬʬˬ˼XWeWWghef&ʬ˼˼˼˼˼˼˼˼ˬʬʼͬʬ˼ʼ˼˼˼˼˼˼gWVWgvggUvV˼˼˼hguwgghvvgxͺʫʫʚhWfgvvWwuvWzXgvwwuwggfV͉yyʫ͉zihvxgghwuWʻʫ˼˼˼˼˼˼ˉxyyhxxxhhhh˻˻˻ʼʬʼʆwxwXwxxygwgxy˼ʬ˼ʻʻvgfwWwfgwvxxxxxwwxwhxvxhwxwvwvwhwghwvxwwwhwhwwxxxvguggwvghfu˼˼˼zyͼˬʬʬ˼۽˼yʬʼʼͽ۽۽۽˼˼۽yyͽܽ۽۽yͼ˼˼˼۽͉xxxyhyix˼ʬˬͼ˼˼˼˼˼˼wxxxw˼˼˼˺xhyxhxgwxhwwvywxhv˼˼˼˺ʻ˼˼˼˼˻͇wXwhhwxyxxyy˼˼˼ͽ۽۽͉yyxۼ˼ۼx˼˼̉ʬʼʼʬʼʼͽ۽ͼ˼˼˼۽۽͙yyxWugfvVwwdWͼ˼˼͚˼˼˼˻˼ˊ˼˼˼xWdgWvgwweWgHeXguggueX͉˼˼˼˚˺˼˼˼˙zgWeggfgfwvUG۽͚˼ʬʼʺxxxxy˼ˬʬ˼˼˙xyxxʺ˘wgvwyxxx˼˼˼ˉyyyʺʻ˼ˬʬʗxixh˼˼˻wxvwxxhwxyxxxxxhwgwwx˺yxxˇwxgxwhwwwvhwxxxˉxxxxxyy˻˺˼˼˼˪wwvwHvwhgv͇xvXuxhgxxxy˼˼˼˼˼˼˺˼˼˼˻yxx˼˼̹gwXhW̺vwwwgWvvxWf˼˼˼˗xiyhugggWvvwghvxxxwwxxxwwxwgwhvwhwgvwghwvwxwgvwgwxxvvhvfvvwfWw̼˼˼˼yixͽ۽ͽ͉y̼˼̽˼͈yyx͙˼˼˼˼˼˼˼˼˼zyyyyʬ˼ʼ̽˼˼˼xyx۽۽˼˼˼˻ˈxhfvvwvwWwfWhgvwgghvug˼˼˼˼˼˼˼˼˼ͺiguwhhhwvXXWfgwwgwtfW˼˼˼˚˻˗xwhwxixv̼˼˼ˬʬˬˬʬʼ˺ʻʬyxxxyyxxx˼ʬʬ˺yxy̼˼˼̹˼˼˼̇hixxxhwxvxyW˺ͻʬwxhhgwxixyhwxXwxhx޺͘wvwxgxhxhyxx˻˼˼˼ˈxhyhh͇xyxih˼˼˼yxyˬʬ˼ʚWvxxygʬʬˬ˗hixyxˬʻ˼˼̼ˊʻhxxhxhvxwgxwy˻˼˼˼ˆxwwwghyxxxxxxyxxyxwwvhwxxx˼˼˼˗xxy˼˼˼ˆxwhwxwvhwgwwx˼˼˼xyyxxxxxx˼˼˼̼˼˼˼˼ʬˬyyyzzyy˼˼˼ͼ̽˽̽ͼ˼˼˼xyy˼˼˼xhyܽ۽ܽܽ۽۽͉xyyʻʫʚgWVggugfwefGۼۼ͚ggfwhvhgxvfWz˼˼˼˙xgfwWgwgvuVͽ۽۽xfevgWwwvvW˼˼˼˼˼˼˚yyxwxvhwgh˼˼˼˺xxxihxwhwxhw̼̽˼vwwgWgvxWwvyxxyʻ˼˻˼˼˼hwgvwhxwwxxxxxxwwxxy˼˼˼˼˺wgxwhhxxyhxxxx˼˼˼˼˼˼˼ʫ˫˼˼ͺxxyhhyhxˬʬˬʆwwhxXw˼˼˼ˇxxhwxhvxixxx˻˻˺͇vvughwwggwüxyxxxwxxhw˼˼˼ˈxxxxwxwhwxgx̼˼̼̼wxhwxg˼˼˼˼yyyhyxixhyxyʻˆxxwXhxxvއwxXwxhx˼˼˼ʫʻgwwhhxxhhxyͺ˻˫xhyhhghgxwxxxxwxgvhXxͺ˼˼˼˻˫ʻʘyyyy˼˼˼xWwhgxwgwgwwhgg͗hiyyy˼˼˼˺˼˼˼˼˼˼˪wvwufwgWgxv̼˼˼̽yxyˬʬʼ۽۽yzʬ˼˼ʬˬ˼˚˼˼˼ʫʼyyWffvwwhwvvW˼˼˼˪hWfgvvWwuvW޺ʫyyi͙hguwgghgyhgvwgghwuWyxx͚ͼۼ˼hwwwfuvgvvV˼˼˼˺XvgvvvXggf۽͊XfgwuuXwgV˼˼˼ˉy˫˫ʫ˼˼˼gwvwvfhvuwVhwvwgWhvvW̼˼˼˼˼˼˼˼˼˼˺hwvwWghwvWXfgvguggwwW˼˼˼ˉ˼˼˼˼yyggwwftfXwgG˻˼˼˼ˊzyXfgvvvHfgVXvvfwgWuvwVyy˼˼˼ʻ˫˼˼˼˻ͽͽ۽۽WvwvgtwXfvG˼˼͊HuguwvXfwV˼˼˼ˊܽ۽۽ˬʬʼxyyʬʬˬʚ˼˼˼ʫ˼ʬʬviwwxxxxͩʫ˫xhyxx˼˼˼vxWwxhhyhxxyʫ޺ͺʫ˻xxwhwiˬhgwgwxhyhxͺxxxhy˼˼˼ˉyz˼˼˼˙˼˼˼ˉܽ۽۽ͼ˼˽̼xyyͽ۽۽۽ͼ˼ۼʬʼ˼˼˼˼͈y۽͙yy˼˼˼˼ʬʬ͉ʬʬʼFvuvgcWVeevfͽ۽۽۽ʬʬ˼˼˼˼˚ͽ۽۽۽FfffbfFfdff˼˽ۼFvvWcgVfeuV˼ʬʬ5uvugSgUVUve˼˽ۼʼʼʬ˼˼˼˺ͺ˫ʺzͩͪ˼˼˼zy˼˼˼ͽ۽۽EfuvfTfVgeufzz˼˼˼͊yͽۼ˼VgtgdWfvuuw͊˼˼˼˼˼˼VWewfcfVwdegͽܽ۽۽VguWdggwetg˼˼˼xxx˼˼˼˹ۼ˼̆Wwhgx˼˼˼yxyxvxWxgx˼˼˼˺˼˼˼˻˫yyuvxwGvwghvvwwwVwvwVw˼˼˼˺hyxiʻyyxyʻxyyyy۽۽۽ͽ۽ܽͽ۽۽۽͉y˼˽ͼʼʼˬʬʬʼy˼ۼ͉y˼˼˼ͼ˼˼˼yyyyxͺʻˬˬˬʪʬʬˬʉܚyyʫ˻ݺxiyyͼ˼˼˼˼˼˼yʬʼʼ͉yyyxy˼ͽͽ۽˼˼˼۽۽˼˼˼̽˼˼˼yzyz˼˼˼UwfwVTfVfdef͙˼˼˼͚DffffDfFfdffͩUvevfTVVvdfg˼˼˼UgVweSeUwSVg͙˼˼˼wxwxxxhvwwgghʻ˻˼˼˼˼˼˼˼˼˼˼ˈwxwx˼˼˼xhyxhxhyhixxy˼̼̽ʬʬ˼ʺͺ˼vhWgXxyxx˼˼˼ˉyy˼˼˼˪zy˼˼˼˙͊yyʺ͉͙˼˼˼yzxxxˬʬ˼ʉʫxyy˼˼˼ͽ۽۽͚ʼʬˬyyyyy˼˼˼͈͙̽˼˼˼xy̼˽̼̙۽۽ܽ˼˼˼xy˼˼˼z˼˼˼۽۽ܽVgfVcVVwdfWyy͚˼˼˼yzͼ̽˽˼VwvGdWfwuug˼˼˼˼˼˼˼̼˼EffvWTWVgeff۽۽۽VwuWdGgvevg͉xyyfwvVwvwWgwͪʺyxxhyͼ˼̼wxgxgxwgxxhẅxx˼˼˼˩˼wwghhx˼˼˼xxwxxwˬyyiyyzyy˼˼˼yyy޻ˬ˫yiyiyzyyyxyxyyˬʬxxyyfwgwwVvvxWw˼˼˼˹̼˼̼ͺ˼˼˼xwwxxxʻ˫wxgxgxwwxghh˻˻xxͩwxgwxhhxxhxivwxwxyˬʬˬʇxhyxx˼˼˼vhWxgxyxxx˼˼˼˼˼˼˺˻˻xxy˼̼̽˻ˬwwgxghͺxhihx˼˼˼ˈxxxwwyxxx͹˼˼˼vxWXgihxxyxWwhgx̼̽˼˼˼˼̘yyyuwhvGvggxw˼˼˼vwwwVwvhVwwʺ˼˼˼˼˼˼˼˼xxxyyhwxgxyw͇hgwxgwʫ˻ixxhx˼˼˼ˇhhixx޺͇hhyhxxXwhwiˬˬvXWwxhhihhxy˼˼˼ʬʼ˼xxxʬʬˬʚ۽ܽʫʼʼˬyyͺyy˺ʫʻzyyi޻ʫ˫xyyyiyͻʫʫ˻yyݺʫ˼y˼˼˼˺ͺ͉z͹˼˼˼yʫʺxyy˻ˬ͉ʬʬˬ˙ʫ˫܉͉݈yyʼʬ˼ʪ͚zyyzͺ͊˼˼˼˼˼˼ʫvwvGvvhWwʬʬˬʺͺʬʬˬʬʬˬuwwww7wuwWwwʫ˼˼˼ʬʬˬvgwGwvxWgʫfvgFgfxFvʫ͇ihyyyͺʫʻʪwwXhhwxhyyxwxxXhxxvͻʫ˫޺yhxxx˼˼˼˺hhyhxʫ˻xwgwxhͻʫwxhwxhvʺʼ˼ˬxyxyx۽ͽܽʼʬ˼ʆxwhwwwxʬʼ˼xx˽̼˼˼˼˼˻ihxxyyyy̺wxwXwxxʬwxhwxhyv۽ܽܽyyx˼˼˼ʼʬʼʇyhxh˼˼˼wvxwgxxxʬˬʬvgggvWvwhgv˺˚͙ͼ˼ͼ˼yyvwxxgvgxw˼˼˼̉wvxwgxxxͽ۽۽͚xyyxfvwwWwfxWwv̼̼˽̼˼˼˼͇yhxxi˼˼˼˼˼˼uvxwGvwghvvxWwxhx˻yy˼˼˼vXwhgx˼˼˼˘yxxxʫfdWvvfwgEvGSʬʬ˼˼˼˼˹ʫVUHweVVeHSʫʼʬ˼eeXVgVv8cʼʬʼʹ˼˼˼˹ʼʬ˼ʺʫfeWvvfwgUvGR˼˼˼ˉ˼˼˼˚yyy˼˼˼˙ʺʺʇxy͉˼˼˼xxwwwxy͗xxy͆xxxxhxyxyhhWugghuvw͉yWVvwwhvvfgyy˼˼˼˙ʺhWvhhiugxiyyxyʻͪgGfwwtwXvfgxhxxh˼˼˼˙ʼʬ˼ʻ˼˼˼˘xxxyxxyyyxxyʼʬˬʹ˺˺ʼʬ˼ʉwxwxxxhv˼˼˼ʺ˻ʺxyxxyx˼˼̼˺˻ʻʼʬ˼ʇyxyʼʬʼʙʼʬʼʈxxxxh˼˼˼˹˺ʫ˼˼̼ˉwvxhhwygvxwxtvxwWvwghv̼̼̽˼˼˼˼˼˼ˇyx˼˼˼˼˼˼˸˼˼˼xxuvwwfwuxfwv͆yxxxiuxghwxʻʺʫyy˼˼˼ͼ˼˼˼yyyyxyyͬ˼ʼˬ˼ͼͼ˼˽͉̽xyy˼ʼʼͽ۽۽ͽ۽۽ͽ۽zz˼˼˼VgvwgeggdvvU˼˼˼˻˻ʻʺ˺WfwgtwXuvV͉yzͽ۽۽GgwguwhevV˼˼˼ˉ˼˼˼˼˼̽˽WWwXuhgevFxxxxxvwxxwxhhwʻxwhwxwvxyxvxwwhhxwxxxxxʻyyxwxgxwhwʻ˼˼˼ˉ˼˼˼ˊ˼˼˼˚yyzyvxwxxwyxxx˼˼˼˹ʫʫ˻ʫͺʻʻxwxwvwwxhhwxxyxxxhwhxu޺ʻʩhyxxixxxyͩ˼˼˼ʺʺyyͺzyͨ͹˼˼˼ˊ˼˼ۼFvuvWdWfefuV˼ʼʬ˼˼ۼ˼ʼʬFvvWcgVfeuV˼˼ʬ˼˼˼˚GgHthgvvGͽ۽۽6vvWdgVfeuV˼˼ʬͽ۽ܽ۽۽˼˼˼͉xyxyܽ۽۽̼˽̼ͬ˼ʼˬ˽˼yyͽͽ۽yyy˼˼˼˼ʼʬ˼˼˼xyyxʫʺxyxxyyxhxxh͉yyxiyyh͊xwywxwyyxxx͆ixxxyʼʼʼʼ˼˼˼xhghxv˼˼˼˺ͽ۽۽ͺyxxxh͙ÿxyʺʫxwxwyvʻUVfvfUfWeufV˼˼˼˺˼˼˼˺VeeVdVGfueV˼˼˼˩VfuWeWVfeuFʻFfeVeVWVteU˼˼˼˺ʻyyxiiyxy˼˼˼˼˼˼˼ˬ˼ʬʩvwxwxxi˻xy˼ۼyyyhxxyx˼˼ˬ˼ʼʼܽ۽ͺyyzyʻxyy˼˼˼ͺyyzʬͺyyyͩʻyyGgfwwvwXwfGXgvwwuwggfVͺʫ˻xyyޚXwuwgghvvWyy˼˼˼XxvhhhwuWhyyi͛yy۽ܽܽvxwwhxv͉vxwwhxvˬ˼ʬʚ˻ʺ˫vwxxgvgxw˼˼˼uwgwvgvvXgfͼͽ˼̼˼˼˚yyzy˼˼˼˼˼˼ˇhhhyx˼˼˼wxgxhiwܽ۽۽yyyxyy˼̽۽ʬˬʬ˺ʻxxyyy˻˼yxxxxxyi˼ʼʬ˼˽˼xxxyxxxʫ˼ʬʬͽ۽۽wwxwhhxw˼ˬʬxyyʬˬʬʉVwvggeggUvvF˼˼˼˼̽̽˼ͽ۽۽WvwvgtwXfvG˼˼˼ˊ˻GwwwguwhfvFyzz˼˼˼yzy˼˼˼˻˻WgwXuhgfv6͉FwuWegVwvtgͽͽ۽˼˼˼˼ܼۼ˽˼˼˼VvdvVUVevfdgͼ˼ͼ˼˼˼˼WguWdgfwetgyVvuGeWfffsVͽͽ۽zy˼˼˼˺ʺxzʼʬʼʉ̽˼˼xxgwvxwwwxxxw˼˼˼y˻˻ˇwx̺˼˼˼uwvwgwuxgvvʻvwxwgxxxyhʺ˻ʺyzyxʺʫy͉yވiyyyʺʻ˼˼˼xiyyʻʺyy݉zyxxܽͽ۽ͽ۽͈yyi˼˼˼yy̼˼˼˼͚yyzyy˼ͼ˼˼˼˼z˼ʼʬܼͼ˼˼˼˼ʬʬʼˉʬʼ˼xx˼̼˼xyxwwwhxgͽ۽ͽ͇xxxˬʼʼʫʺyyx˼˼˼˺˺˺˼˼˼wuxvwfgggwu͘yyyywgwgwwhgg˼˼˼˼˼˼˩xiyyhvxWwxhx̼˼ͼ˼xgvxWxͻ˼˼˼˘xx˼ʬʼʚxwwxwx˼˼˼xhvwwxv̽˽˽yvxwxwxgxʻ˚͚ͽ۽۽۽vugvwgfgfhu˼˼˩viwwxxxxyͽ۽۽۽ʬˬʼʺyyxXwxxwi˼˼˼˗hhhhͺ˺˺˼˼˼˺ihxxxywxwxhvʫxhyxhwxhvwhgxxxhiʺʫ˼˼˼ʺʻxhxxxwY˺ʻhWwgXͺxhyhhyhxig8ehguggueh˼˼˼ˉ˼˼˼˚˼ۼ˽wGtwVfxvvegͽ۽ͽ͚˻ˉfGewgvggvfUW˼˼˼˼˼˼ˉyͻʻʉzwGewgWxvvdggVWvvwfwUv6cʼʬʼʹ˻˹˼˼˼gUVwfwvwFv7TVFGgvfufVe7T˼˼˼˹˼ʬʬ˼˼˼˹˼˼fVWwufvgVv'T˺˫xyyyyˈxyyyy˺xxxwvvxxwxh͇xwwxxxx͛xxxyxxͽ۽͊˼̼˼ʼˬʬʺyhxxhwxhwxgi̼˼ˉyyʺ˻ʻʼˬʬ˼˼ˈyyyxxyxxxʼˬʬʚgfvWWxuwtVyͺʻʫ͉ʫʫ˼˼˼ggegvgxuefyhWvhhiugiyyyުyzXgvgghvugyxxxiʬˬʼʉwvywxhʬ˻ʻyyʼʬʬʉyyyxxxh˼˼˼̼˚˻˻ˉ˼˼˼wiwhXʻ˻ʫ˼˼˼͆xxvwhwxxyhxxyxh˼˼˼xx˼˼˼˼˼ʼʼʬuhgvxxXxxxwvwgxxww˼˼˼˼̽˽˼˼ʼʬ˼˼˼͉yy͉y˼˼˼ͽ۽˼۽˼yyy˼ʼʼͽͽ۽yxy̼۽ͽͽ۽xxxfwvwWwgggfvwvwhwghwvwxwwxxhxwwwhwhwwvxxhhxwwvugvghwWgfvxxxxxyxʼʬʬ˼˼˼˼iyyy˼˼˼yzzyxx˺ͽͽ۽˼˼˼̼ˆxxxhʼʼʼy۽˼y˻˻ˆwyxxwv͙˼˼˼˘vwwxxxhvyhxhxyxih͇yyyhixhxxxwYxiyyhxvxwxxwigwyhxW͗yyx˼˼˼yzyy˼˼˼ˆwhxvxwyyy˼˼˼۽̼̼˻˻xyhxhxyʼˬ˼ʻiyxyͽ۽ܽͺʼʼʬʺyyxyyyWfeVuVWfuefVVUvVdVGfuUfyxxygffguWXwvegVeeVuFWfedVxyyʬˬ˼ʺ͉˻ݺʬˬ˼ͻʻxyy˼̼˼˚ͽܽ۽wgxxhwwʬˬʬˇwgxxhww˼˼˼yywwwwhxwhw̼۽˼vfgvgugWwf͙˻ʼ۽۽XwgwgvwWvfVyyy˼˼˼HfWwvvHwWVͽͽ˼˼˼˼XvgvvvXggf˻˼˼˼ˊWwfwwgXvvgVyyx˼˼˼ˆwgwvhvwhgw˼˼˼yxxyx˼˼˼xxxxx˼˼˼ˉyyxxxxxyy͙͈xyyxxxxܽͽ۽zvhxwxxwvyyx˼˼˼ˈXvywhxgʬʬʬ̺ͻʫʼihyihhxxix˼˼˼ʻgvvvWWxfwtGyyx˻˼˼˼˼˼˼˼gwewgvgxfeWhgvwhhiwuX˼˼˼˼˼˼ˉXwvgghwuW̽˽˼yyyy˼˼˼˼˼˼۽۽ܼ̼˼y˼˼۽̉yyz˼˼˼ͬ˼ʼʬͽ۽˼˼˼iyyWgwfvXuvvf˼ܼۼfgvwWvggdfuU۽۽ͺ˼˼˼˘˼˼˼˺˼˼˼gxvgvgguvvf͉yggggwhuuffˬ˻yxxxi˼˼˼˼˼˼̼˚yyywxhʼʬʼʬʬʼʻyxxxyx˻ʬ˻wiwxv˼˼˼vxwxwxy˻˻˻˺vwwxxx͆xxxxxͼ˼˼vwxhxwy˼˼˼wxxxewwwvfwuxggxxxxxxxxxx˼˼˼ˉxwxghww˼˼˼ˇwxgxwhwyxwxwhvwxhxxxxx˼˼˼xxxxxxxxxwhwxwv˼˼˼˩͸˼˼˼ʫʫʉͩy͉yVvvvGegVeetV˼˼˼ͩ˼˼˼EvfvVUfFveeg˼˼˼VeVeVVveeg͚VvfvVdfUvTeg˼˼˼ͩ˼˼˼ˉy˼˼˼˙˼˼˼ˊy˼˼˼˺ʺʺwxxwxxxyxxy˼˼˼hxyxx˼˼˼˹˼˼˽xwwvhxwwwxxwxwxhx˻ˬʼʬʼ˼˼˼yyx̼ͼ˼ܽͽ۽ˬ˼˼˼˼˼˼˼˼yzyy˼˼˼xyyyyͼ˼˼۽ܽܽ˼˼˼̙yiyˈyy˽ۼ˼xyxyxʬˬʬ˘xxxyx˻˻˼ʬʼʼyiyyzzy˼˼˼˼˼˼˼˼˼˺hxxhxwiwhwy۽ͽ۽wwxxxgͽܽͽ͚˼˼ܽwwhxxgw˼˼˼ˈʫʫwwxwhg˼˼˼͉yʼʬˬvvfvvhuwgVwwwxxxwxxyhx˼˼˼˻˻ˈxxx˼˼͇xgwxhwʬ˻wxhwhXxxxxx˼˼˼˼˼˼˼˼˼˼ʬˬˬʺxhyhhhhhww˼˼˼vvxvgvggxv˼˼˼yyxyyyxxx͇xxxxxyxy˼˼˼ˉxxxxx˼˼˼͉yxxxxxyxx˼˼˼hxwhgw˼˼˼ˈxxxwxwhwxgx˼˼̺͈yxywxhwxgxvwwwvWwfxVg˻˻͇yxxhiyz͙yxxyx͆yxxxy˼˼˼ywxyxx˺ʫxxy͙hWvgghuuwy˼˼˼˹WGfwvuvhvvg˼˼˼˼˼˼˙˼˼˼hXuggivvg˼˻˺˼̼˼gWvwwXfuff˺VfXveVEe8T˼˼˼VfWevfwfDeGS˼˼˼˩˼˼˼˩ʫVeWvvfwf5eGD˫GVGvvvvgEtGT˼˼˼˺˼˼˼ˊ˼˼˼˚yyyyzyy˼˼˼˺ʼʬʬ˚yy˺xyxgwhwˬˬʬxhwxhxY˻˻yhhxiyxhhhyy˼˼˼˼˼˼ˉ˻ʫ˼˼˼eVevVvVgeVeV˫˼˼˼ˉ˺VVdvEuUWfeefʺVGegVeVVveeg˼˼˼˪VVUvVuFWfeTf˼˼˼ˉxyxyh˼˼˼˫wwywxxhyyʺ˫˩yxyhxyy˼˼˼ˉͽ۽۽ʼˬʬʺxwhwhXw˼˼˼xxy˫ʺxyhhhzy͈xxxxwxyxxyyy͈yxyyyxxyyyhi͗yyxzzyy˼˼˼ˬʬʼʗyxiyiyyͽ۽ܽʈyyxixxx˼ˬ˼˪˼ܼܼ˼˼˼̼˼˼˼yyyyxwywhxxw˼˼˼yyyyyyz͉͊͊ʇwgiwxhx۽ܽܽ˼˼˼yyhxxhxˬʬʬʺhyhixyyy˼˼˼͉̺whxxXhwvvxvgvggxv͉yy˼̼˼yyxxxxx˼˼˼yxxxxxxxxxx˼˼˼yyxxxx˼˼˼˚XhvxhXhvvg˼˼˼˼˼˼˼XgvwWghwvWxyyyHWggggWwugW˼˼˼˼˼˼˼ˉ˼ܼ˼WgwwgghgvgVhvxwxxw˼˼˼˼ʼʬʚ̼˼˼ˉܽͽ۽vvWvehfwggwhwvxwwhx˼˼͉ˬ˫whvhwxxxwzyy˼˼˼WwwwfvXfvvW˺ʺfwvgWvggUfuF˼˼˼˺yyz۽ܽͺgvxgvggfvvW˼˼˼ˉgwgwgwhfufWͽۼ˼ʫʼʬʬʉxygxxxxw͆ixxxx݉yxxyhyxyx˼˼˼˚xhwhxuwhwhhhvxxvwxxxxxx͚gWfhvhgwvfg˼˼˼˼˼˼ˉyywVfWvgxvugʼ˻ͺͽͽ۽fGVwgeggvufW˼˼˼˺۽˼̼wWegvWxfvf˼˼˼˺˻ʩVV7wufvfVeGDʼʬʬ˹fVGwtfvgVv7T˼˼˼˼˼˨gfFvewwwUvGS˻ʺ˫geGuwgwFvFT˼˼˼˺ʼʬʬʩyyhwixhww˻˻˺xixxxihyihʫ˺˫˼˼˼ʬʬʬʚʼʬʬʈyywhXxxhw˼˼˼˺ʼʺuxgwhwhwxxwͺ˺ͩʫʫ˻˼˼˼ˆgvwwxhxxxxxxyxxʺʻwhwhhhީxyxyx͆xxyxyyzܼ̼˼˼˼˼ͽ۽ܽxyy˼ۼ۽˼˼˼yyͽͽ۽˼˼˼yyy˼ʼˬ͚˼˼˼̉yiy˼˼˼͙yyhgvWghvvgXXvWgivvg˼˼˼˼˼˼˼˼˼˼gguGgxewuVggvVvVxuvf˻˻˼̼̽xxx˼˼˼ˈ˼˼˼wxvwhʬʬʼʺʫ˻ʚxxxhʼʬˬxxʻ˼˼˼ʬʬʼʉyxyxxxuwhwvWvvggfvwhwgvwghwwwxhxwvwwgvwgxwvxhwxhwfvgvugfwgXwxxx˼̼̹wgvvhwwXwv˼˼˼˼˼˼˗xx͖xyyxguxhwʻʩXvxwxhg̗y˼˼˼˼˼˼˨uwgwfgwuxgv˼˼˼ʺʺʻ˺ʈyxyݙܹˬʼʬ͉͘ʼʼʬʺ˼˼˼VwvGtWfweugͽ۽˼˼˼˼ۼ̼˽Vvu7eWffftV̼ܽ˽FgvGeWWwfugyzzy˼˼˼UvevFeFfvVegͽͽͽ۽zyy˼˼˼˺xyyxyʫxxyyyyͽͽ۽ܽ˼˼˼ˬ˼ˬܽͽܽ˼ʼˬxyyyyܼۼ˽˼˽̼ܽܽܽ˼˼˼zyyʼʬʬˉ͆gwhwxwuvgfWvfgwv˼˼ˊ˼˼̈˻˻ʚ˼˼˼wwwwhxwhw۽ܽܽgwhwxwy˼˼˼ʼʬˬʺxxixxxyyxyxxʬ˼ˬʻۼۼ˼˼˼˺yxxyyyzyyxhwxgwx˼˼˼ixy۽ͽ۽˻˻wgwvhvwhgw͈yy˼˼˼xyy˼˼˼xxxxxxxxx˼˼˼yxy˼˼˼xyyxxxxxxyyyxhhyxwwghhx̺˻ˈxyxwwxghhxxwxxhw˼˼˼xwwwxxx˻˼˼˼wuvvggwWhwv˼ͼ̽xyyxwwxgxhvxXwxghʼʬˬ˼˼˼˺xxyxxhyxx˼̼̽˼˼˼xiyhyxxy˻˼˼˼˩˻˻˼˼˼wgvhwhxxxxxxxhyhyx˼˼˼ˬʬʬʩwhwyxxwʺyyyyhxxxͺͽܽ۽˼˼˼˅XwhwhxwyyWfeVuVWfuefVfdFuVWVeeUyxxyWguVvfhguvfFVevUeUWftefyxhxi˼˼˼ˬʼʬ˅xhghxvܽͽ˼˼˼ˈyyhxhxyͺʻ̹ʻyyyyvxxvhxywxvyxhwiwxyyx͚vwwvxhyhxxyxxwyxwxxxx۽ܽxxxyxwwxxxxx˼˼˼˻yyyxyyxyyihyyˬͺˬyyziiyyyyyyz۽ܽ۽yxyxxx˼˽ۼ˼˼ʬˬʼˬʚhvxwhxwʫyyʬˬ˼xxxhyxˬʬ˼ʼ˼˼˼˫ʬ˼ˬyyxxxxxxyxyzyyy˽˼˼˼˼˽۽۽ܽ˻˼˻gwxgyxwiyy˼˼˼˻wxwhwxͽͽ۽۽ˬʬ˼ʚyyfvguwfvWghvvwxvwhhx˼˼˼˚˽ܽ˼˼˼˼wxggxxwʫʺ˺˼˼˼ˉHvwvvwXVgU˼˼˼HwvgwggeuwVͻ˻˻ͼ˼yyzGwwwguwhfvF۽ܽ͊8fgvvvXfgV˼˼˼˼˼˼zyyyyyhwvWghwvW͊XhvxWgiwvWyzyˬ˼˼˼˚gwuwGgxfwuFiigwvwVvVxfvWyyzͺʺʫxxwxxxwxgwxh˻˻˺˼˼˼̈xyx˼˼˼wgxxhwxxwxxhwxxxix̼۽˼wvwuwggghvu˻yyʬʼʼʆwxwxwXx˼˼˼ˈxyˬʬʼʉ˻˼˻xgwgyyhhhhʫ˻˼˼˼˙xxxhyʻʻ˼˼˼ˇwxwwhxvxyyxxxxxxyxxxwwwgh˼˼˼ˇxxxxxyxxyx˼˼˼ˇhwgwwxwxvwxxhw˼˼˼ˉxy˼˼˼̼˼˼˼yxxy˼˼˼ʬʬʼ̽˼˼˼˼۽˼͚˼˼˼yzyyyyyxxyi۽۽۽۽۽˼˼˼gwvwvfhvuwV˼˼˼XfgwuuXwgV˻˫XvgvvvXggfۼ̙yͽܽ۽͚˼˼˼hwwwfuvgvvVʬʼʼ˼˼˼͉y͈yyx˼˼˼ͽ۽ͽ۽ۼۼyyʬ˼ʼͽ۽۽͈xۼ̽ͽ۽ͽ۽yxx˻˺wXwxhw͇xhyxxxxx˼˼ͺˬˬˬʺ˼˼˼xxwyxwx˼˼˼xhyhh˼˼˼ʬ˻wxhhgw˼˼˼ˇwhxxhxvʻˬˬʼʚwvwxgxhyxyxih˻ʺ˼˼˼˼˼˼ˉyxyxhxxhgyvxxWʼˬʬ˻˼˻vghgvguwWgvxxwxwxxwvwhwgvwghwwhwwgxvwwgvwgxwxxxvvWvvfvwfhwhgwgghug͙yy˼˼˼˛hguwgghwvWxyxWWvgvuvhwfWޚʺʻyʺyiyhfvvwvwWwfWͫˆwhwxgxwxxxxxxxywxvwxxhwˇxxxxxwwvhwxxxxwwwgh˫yxzyͼ˼˼˼ͽ۽ܽ̽˼̽˼ۼܼ˽yyy͊y˼˼˼۽ܽܽʬˬʼͽ۽ܽ۽ʬ˼ˬyyyih˼˼˼ͪgvxuwgwWfwvʻ˺ʘyyyywgwgwwhgg˼˼˼˹˼˼˼xxxxvxXwhgx˼˼˼wxghWx˼˼˼˻̼ܽ˽yxyˬʼʬ˺˼˼˼̗xxxihˬʬʼ˹xxxyʻʺ˫ˇxwiwxhxvyxy̼˼˼̘yxxxy̼˼˼ˬˬʬ˙ͽܽܽ˼˼˼ˉzyXuwuvwHfgVWvwfgvwXuvVyy˼˼˼˻ۼ͚̽˼˼˼˼XvvvwgWftwGʫHfgvvvXfgV˼˼˼˙˼˼˼ˈyyyyxxxxˬʬˬˬʬˬ˼˼˼˺ʬˈwxvxwxygxxyxˬʼ˼ʹʫʼhxix˼˼˼˩vwfwgwfWgvxxxwhwxwxvwvwhwghwvwvxxwhxxwwwhwhwwxxxxvvfuwhgggguyyx̼˼˼˼˼ˬˬ۽۽ܽͼ˼˼˼yhxܽܽܽzzyy˼˼˼˼˼˼˼˼˼ͽ̽˽˽yyyyyxyxhhx͇yxyhxʫˆxxwxhXxvwxwhhgͻˬ˫ކxwhxxXwixyhyˬ˼˼˼˻ʫʫ˻͇hhyhxxghgw˼˼˼˹XggwffgwtwG˼˼˼gfwvggXwugW˻˻yy˼˼˼˺hwvwWghvvW˼˼˼hwvwgWhwvW˼ܼ˼˼˼˼˼ۼۼ͊fWUggvggwfeG˻˚gHeXguggueX˼˼˼ˉz˼˼˼ywWdgVfxwvuW˼wWeggWxwvdW˼˼˼˻ͽ۽۽͊hgvwgghvugxʺ˻ʺʪggfwwwXguvV͉zWWvgvuvhwfW˼˼˼yyʻzhhuxggiwvWwguwgvWxgfVʻ˫ʫʚ˼˼˼˼͚̽˼˼˼wfvvWvgxweWggfwhvhgxvfWͽܽܽzfWfggeggwuVG˼˼˼˚˻ˉxgWfgwtwXwfWhguwgghvvg˼˼ͺ˼˼˼˚˼˼˼hgvwhhiwuX˼˼˼WffvwwhwvvW˼˼˼˚ˬʬʼ۽۽͚zyʬ˼˼ʬˬ˼˚˼˼˼xxy̼ܼ˼˼˼˩vwfwvWgvxWwguhvxXxyxxx˼˼˼˻̪˼˼˼yy˫˼WhwXg˼˼˼˺wgvvhwwHwv˼˼˼˗hyixhxvwywv˼˼˼˺ˬʬˬ͆wwhwhX˼˼˼xwwxxwwhxxg˻˻˼˼˼˺xxxxiyhyʫ˼˼˼˼hxyhx˼ܼ˼xxyxyxxyʻʻhwgvwhx˼˼˼hixxxvwwgWgvxWwv˻˻wwhwxhxxyyͪܽ˼˼˼˼wxvhwghxwxxwxhvxwgxwxxyhxͻʫhyxix͇hhyhxxwhxxXwވWvywxxhˬˬ˼˼˼˺wgxwhh͇hixyx˼˼˼ʬˬ˼ʫyxy۽ܽܽʬʼˬʚʼˬˬxhxwwyvgwvywyxxixyx͚xxwhwiyhxxxޚ˼˼˼˗hxxhguyhxwyxxhyͩveEfVggvDgVS˼˼˼ʻʺ˻ˬʼʼwV6vfvvgUwWc˼˼̼˩˻˻gfFvewwwUvGS̼˼˼˸˼˼˼ˬ˼ʼvfFufwgwUgVRhyxyxy˼˼˺˼˼˼˺˻ʗgwvwxʻ˻˻ˉyhxxxxʬʼʬʻˬʼʼʹXvwhgʫˬʼʼʉyy˼˼˼˼˼˼ggfwWwghguV˼˼˼ˉxgfwWgwgvuVͽͽ۽۽ͼ˼xvevVVxgefyyxvevFWxVtU˼˻͙˼˼˼˙yyy˼˼˼˚˼˼˼ˈ˼˼˼xxxxixyxxwxxwx͈xyyy͘yyʬhxxhxxxyyͺʻWEuVhVVhES˼˼˼˹˼˼˼˩wVDvFwfwEwFTʻvG5fVgevVgFTʺ˼˼˼˩ʻvWEvUgfvVg6D˼˼˼˩hyxyxʬʼʬ˺ʻgvxw˼˼˼˺˻˻hxxx˼˼ˉyyˬʼʼyxyʺ˻wgvhxwxwugGwggeuV˼˼˼˩hhvxXhXvvg˼̼̼˼˼˼hwvwWghvvW˼˼˼˩xyy˻˻˼˼˼wwfwWwWhvfVxyy˼˼˼˺ˬ˹yyxwgvwxx˼˼˼˺ʻ˼˼˼˺xxyxˬʼʬʙˬʼ˼ˬʼʬʗxxxʻxyyyxyxʺyy͚wwwxwxxwxxwxw͈xxywvywxhvxxx۽ܽxxyxyvxwwiyxxͩwgFevwgFwGTˬʼʼvfFtfwgwEgVSʻʻ˼˼˼̼˼˼˩˼ʼʼ˼˼˼˨vfEuVggv5gVD˼˼̼˸gW6ufwvwFvWTʻ˼xgUvFFxwUVzy۽ͽ˼˼˼͉˼˼˼˺ʻxfdv6VxfeVhWegGwWgwfW˻˼˼˼̽˽̼wgewGWxwvfG˼˼˼zyyʬʼ˼ʹvW&vewfwVgVTvW6vdwfwVgFTˬʬ˼˼˼˼˹ˬʼʼʅg6exgVXVcˬʼˬʆf5vUhWEhUT˼˼˼˺xxy˼˼˼ˈʬʼʼʗxxxyy˼˼˼˺ʺʫˬʼ˼ʙhxxyxʫ˺˫ʬʼʼʺ˼˼˼ˉwvwhv˼˼˼˚˼˼˼ˉyy˼˼˼˨yy˼˼˼xyyyxxhy͙xyxxxxxxixyy͚ʬyzzxwwxxxwxxx͊yyyhxvXhhwvWhwfwWWwvwfVͺʫyiyiˬyyzgwuwGgxfwuF͈yxyyXgvwWghwvW˼˼˼˩˼˼˼xxyyzʫʫxxyxyxyx͙xxxwwwxxx͚ixyhyyyhxix͚wgvwyxxxxxxxyxxwwxxw۽ܽxxywxxwywxwhxxwxvxxxͼ˼˼˼ihxxyʻʫxyxy͗hiyyyyxxyxyy͘yyyxxxyzyxxwxxwxxxwivxhwxhxxhx˼˼˼˙͚wgvyhyxwxXwhwiixyhyWvywxxhޚhhhxyhiyyyYfefVVYfe&˼˼˼ʬ˼˼ͽ˼˼˼ʼ˼ˬʬ˼˼XWeWWghef&ʬ˼˼˼˼˼۽ܽ˼˼˼ʬ˼˼۽ܽܽIgtgGgivv'۽ͽܽͬʼ˼ˬ˼˼˼˼˼˼۽۽ʼ˼ˬʼ˼ˬXgegWghffgvtfWWxuwvVyzʫͩhguwgghgyiy˼˼˼XwuwgghvvWމy͈yyʫʫ˫hwuwffwvwuVxgdvUUxwdV˼˼˼ʻ˼˼˼˼˼˼zy˼˼˼˽ͽͽܽxfcvFVxfeVwWdgVfxwvuWۼ̊y˻˻hgtwVwfgweG͉˼˼˼˙hwuwggXwvWwwuwfwfhvuV˼˼˼˼˼̼̼˼˼˼˻xvtvWwWgfvGyyxhguwgghwvW˼˼˼yyͽ۽۽xfevgWwwvvW͙gfevgwWhwvW˼˼˼˺˫˼xvevVVxgef˼˼˼xuduVGxfuV˼˼ͺ˼˼˼ˉ˼˼˼ʬ˼˼ʬʬˬʚ۽ͽܽyyyʫʼ˼ˬʫ˼yݻʫ˻yyyyˬͺyy˼˼˼ˉy޺zͻʻyyyyʫʺˬʬʼ͉zͼ˼˼˼˼˼˼ͽ۽ͼʬʼʼxyy˼˼˼۽ͽ͉y˼˼˼˽۽˼y̽˼˼˼̊FfevgdgUgUef˼˼˼̽˼˽˼˼˼˼͉z˼˼˼ͽ۽۽VWewfcfVwdegWguWdgfwetg̼۽˼y˼˼˼ͽ۽۽VgtgtWfveuw͉xwxyww˼˼˼wgwxhg˼˻wwgwfgwgWwxx˺͹̼˼ͼ˼hxxhxgvwvxwg˼˼˼˪wgwhg̺xxx۽ͺfWcwVeVfwedgʬʼ˼VWdwfefVwedWˬʼʼ˼˼˼˼˽̼˼ʬʼ˼˼˼˼˚ͽ۽ͽͫgHthgtggtth˽̼˼fWdwVeVfwecgˬʼʼʺʫy˼˼˼͚yͺͪ˼˼˼˚˼˼˼ˉyy˼˼˼˙˼˼˼y͊ʬʼʼ۽ͼ˼˼˼͊yͽ۽۽ͼʼʼʼ˼ͼ˼y۽͉yyy̼̽ͼ˼hxxh͗xhyxh͇wxxhhgxhyhh˼˼˼˩ʫʫ˻ʻxiyyhhWwgXއwwgghʻʻͺˬʺwxXxXwʼʼʼ˼ܼ˼͉yyyͽ۽ͽ͙ͽ۽ͽ۽ͽ͉˼˼˼ͼ˼˼˼yyyʬ˼ʼͼ۽˼˼˼˼ͽ۽fguWegVvttw͉zfgtgeWWwdug̼˼˼̼˼˼˼ͽܽ۽͙UfevgUgFgdefy˼˼˼VWewfdfVwceg˼۽˼˼˼˼͙݉y˺ʻ͉ʬˬˬ˪ʬˬˬ݉˻ˬ͙yyyyʻʻyyyyyʻyhyxiwfwfguwgWw˼˼˼ͻyy̼˼̼̼gwXhW˼˼˼˩˼˼˼ˆgwhvxXXxxxx˼˼˼ͩ˼˼˼ʺʺʻwWvgvwxgGyyyy˼˼˼˚˼˼˼ˉy˼˼˼ˊy˼˼˼۽ͽ͚z̽˼˼˼˼˼˼ͽ۽۽y˽ͼ˼yʬ˼ʼ͈y˼˼˼yxͼ˼˼˼̚fWewVdVfwdeW˼˼˼˼˼˼ffevGUWegedf͚˼˼˼efdvWeGfgUef͚͙˼˼˼VfUWeWVheUf˼˼˼zͺyy͉͊yxxxwhgvxXXͺ˻˻xxhwgh˼˼˼˼˼˼˼wwgxghʫ˻xhyhh˼˼˼wxxwyw˼˼˼˺ʼʬˬ˺xxihh̽˽˼xxxx˼˼˼yͺʬyͺͩ˼˼˼ˉyyݻʫyyzyyy˺ʻ޺˻ͻˬʻyyyyyyy˼˼˼͚͚͉zʬʬˬ˺ݙyyʬʬˬ˻ˬͺʫ˼͉݉ͺʫwgvWvwhWgʫʫ˼˼˼ʬˬ˼˺vgwGwvxWgʬˬ˼˺ͺXXyXXʬˬˬ˺vgwWwvxGgʫʬˬ˼ʼ˼˼˼hyyixwXgWhͺʻ˺͇wghxhxʫhgwgwʫʫ˻hhyhx˼˼˼˗hxxhުʫˬʻ͇hxyhxwXxXxwhxxhwghgwgwWwgwwfgwxx˼ܼ˼˼˼˼˩˼xwywxw˼˼˼xgvwvxwgͩwghxgw˻˻xxxywxxww˼˼˼ͺhhixxwxhghxhhyhx˼˼˼ʬʬˬ˼˼˼˼˼˼˼xxxyvXXwxghhgwxgwʬ˻˼˻̽˽˼xxxxxxxx˼˼˼wWwugfwgfw˼˼˼ʺʻʻyy˼˼˼ˇXvXwxhg̼ͪ۽˼WhwXgixyhy˼˼˼˩˼˼˼wGvgvwxgWyyyy˼ʬʬ˼˼˼ʼ˼ˬʬˬˬyyyyͽ۽۽gwewgvgxfeWyyʫ˺ͺhgvwgghwuWyyXxvhhhwuW͊zމyyiʻ˼˼˼hwvwWvWwftFyxͽ۽ʫʺxyxʼ˼ˬxxx˽̼˼˼˼ʬwxwigwˬʬʼʪxyxxx˫˺yyʼ˼ʬyy˼˼˼˼ʬ˼ʇhxxhwhhiww˻˼۽ͽ۽˼˼˼ˈyyiۼ̼˼zxxxx˼˼̼˺ͼ۽˼wgxxhww˼̼˼˚wwwwhxwhwͽܽ۽۽vfgvgugWwfˬ˼ʼʉyy˫˼˼˼wgxxhwwyy˼˼˼˽ͽͽ۽˼˼˼WhexgvgWve8ʼgWeggfgfwvUG˼˼˼˼˼˼ˉ͙hgtwVwfgweG˻˻hgewgwWgwdGyyz̽˼˼ʺʼʬ˼ʺyyx˼˼yyywxwxhvʬˬ˼xiwxwX˼˼˼ʼʬ˼ʉyyyhxhyxxhi˼˼̼˻ʻʫ͗xxxxhxwwiv͙yxxxixyyyhvwwxhvyxxxhͪ˼˼˼˚gwhWhwhY޼˼˼˼XfgvvvXfgv˼˼˼˙ܽ۽۽XVWvvXvWf˼˼˼ggggwhuuffyͺʻʺʫhgfwuggugf̼˼ͼ˼fVGwveuVVf7D˼˼˼˺˻ʺ˺weWwvvfgEw6Tʼʬˬ˹˼˼˼˺ʼʬˬʹfVWwufvgVv'T˼˼˼˼˼˹ʺwfVfvvgVw7Siyyyͼ˼˼˼̉yyyzy۽۽ܼͼ˼˼˼˼˼˼˼ͼ˼yܽyxy͈˼˼˼˼ʼʬyzxwvwgxxxxi˼˼˼ʺ˻ʺ͹͆xxyxhyxxxiwvywxhuhhvxwXʺ˺ʺʬʻʺއhwhYxxyhvwvwhwghwvwwxwhwwhwxxxxvguggwvghfuufwvwhwvgXgfxxxxwxwxwhwxxxxiwv˼˼˼Xhvhhhvugy˼˼˼˚hWvgghvughgvWvWwetV˼˼˼˼˼˼˺˻˼ggegvgxuef̽˽˼˼˼ʬʺ̼˼ˆxxvxwiw˼˼˹yxʼˬ˼˼̼˼ʼ˺yyyyxyxhxhʺʼˬʬʹ˼˼˼yy˼˼˼UwdwVeVffVdfܽ۽˼˼˼ͽܽͽ۽VguWdggwetgͼͽ˼˼˼˼ˊVvuGeWfffsVzyFwuWugVwftgͼ˼˼ͺvxxuhgx̗yy˼˼˼fuxvwwvgvwux˼˼˼˨˼˼˼˩ˬ˻uxghwxxyxyh͗x˼˼˼˼ͼ˼˼˼˼vgwwwvXwgʬ˼ʬʺy݉yʻʺʺʺʺʻʬ˼ʬ͘ܚ۽˼yyxͽ̽˽˼yxx˼˼˼yy۽۽ͬ˼ʼʬͽ۽˼ʼʬyyͽ۽۽˼˼˼yyx˫˺˺yyyyxyyxxyx̽ۼ˼vvvwWwvhWvw˼˼˼ˇwgwxhgxhxyh̺ͺyy˻˻wghxgwwwhxhw˼˼˼xxxxwܽ۽yyxhvwwxvʼʬˬˆvxwxwxgx͚˼˼vugvwgfgfhu˼۽˼wxxwxwx˼˼˼˻ʻ˼hhwxgyw˼˼˼۽ܽ۽xyhi˼˼˼xyxxixhʼʬʼʺyyxxxyyʻʼˬˬyzyy̼ۼ˼̼˼˼˼˘yyxxyyxyxxyxxxxxxwgwvhvwhgw͉yy˼˼˼yy˼˼˼˙xxxx˼˼˼ˈxyyxxxxx˼˼˼xxwxxxwxwxhvwhg˼˼˼˻˻͇wxhwxgh˼˼˼˺vhWgXʼʬ˼ʇxhyhhyxx̽˽˼˼˼˼˻ʫˬ˼˼˼xhyxhxxxxyyͪyz˻˼˼˼ˉzyxxݻʫ˻hyyiyyͻʫˬʻyyi޺ˬyyʬ˼ʼʺhyhxh˼˼˼˫˺ܽ۽˼˼˼wXwhiwiwxv˺ʫy̺yͺixxxxWfeVeFVVudUWfeVuVWfuefyxxyFfUVeVWftUVyyWwfgvWggefʻ˼˼˼ˉyhyxxxixixh˼˼˼ͽ۽ˬʼʬʗXvwhgvhwxwvyz̺ʻ͈xxxxxxxxxyywxgxhhx͚xyxxhhhww͛xxxxxwxxxwxxxͽ۽۽yy۽ͼ˼˼˼͊ˬʼʬyy˼˼˼yyx۽ͽ۽˽۽˼ͽۼ̼˼˼ʼʬܽͽ۽yܽͽ۽VgdVfVVwfcW˼ʼʬ˼˼˼ˬˬʼʼ˽̼˼egSwUVUewVSgˬʼʼ˽̼˼fWdwVeVfwecgܽͽ۽ffdFfFfffbf˼˼ʬ˼˼˼ˆwhwhxwxwvwgˬʺ˻ʺͺxxyxx͗xyxyh˼˼˼ˆxyxyhvxxxwwʺ˫ʺ޺˺ʺgwhWxxyh͹͊ʺʫz͉y˼˼˼˼˼˼˚yz˼˼˼˙˼˼˼˚zxx˽̼˼˼˼ʬʬ˼ʼʘxyxxxʫˬʼʼܽͽ۽vxxvxgvxfevVFxfcV͊yy˻˻˼˼˼˺˼˼˼˽˽˼xfTwVVxgTWwWeggWxwvdWͽܽ۽͉˼˼˼˺hgewgwWgwdG˼˼˼zy˼˼̼˙̽۽˼wfwvguvghVvwwxwhgʬˬʼʚ͚yyܽܽwwhxxgw˼˼˼wxvxxgʺ˻˼ˬʼʬxxxxxyyxxyʻy˽˽˼ʬˬʼʺͽ۽ͽ۽zwxwxxxhvyyyyyhxxix˼˼˼˼˼˼˼˼˼˼˛iwvwhhXvuWyxiʻ˫XgfwwwGwvfG͉yzhfvvwvwWwfWyˬʺ˼˼˼ˉyyhwuggXwvW͉zhWugghvvggWvwwXfuff͚˼ʉ˼˼˼ˈyʺ˫ʻͪXGfwwwgvtfghXvhhhuuwyx˼˼˼˹y˼˼˼ˊzz˼˼˼˼˼˻ˬwyhwxghʼˬ˼ʙ̼˼ˉyyxxxx˼˼ʬʙxxxhi˼̼˼˙ʺʺ˺yyxxʼˬʬ͇yxxxixyxyhx˼˼˼wwxʺ˺xyy͉yyxxyxwWVvfgevVw&TʺʼˬʬʺfGFgffdfVf&Eʺ˼˼˼ʺvVVwfwewFg&Uʼˬʬʺ˼˼˼˹ʼˬʬʼˬʬwWWwuwuwWwU˼˼˼zy˼˼˼˻˼xWTVVxvTfhWegwWgvdWܽܽ۽͉yʻwGewgWxvvdg˼˼˼xVeVFxecf˼˼˼˼˼۽˼ܽͽ۽۽ͽͽ۽ͽ۽˼˼˼yyyͼ˼˼˼͉xy۽˼˼ʼʬˬ˼ʼ˽˼yyhwhvxxW˻ʬyxyxi͘xwgwvwewwVw˼˼˼˼˼˼˼˼˼˺gxvxhW̺yyͽ˼˼˼˼˼ˇx˼˼˼˹vWvwvvhwGyxʻwxgxwhwʻxwxghwwxxxxxwxvwxxhwxxxxʻxxxxxvwxxwxhhwʻ˻ʺʺyxvxwhw˼̼˼˙̼˼˺xxxxiʼˬʬ˙ʼˬʬʙyyxʼˬʬʉyyx˼˼ʺ˻˼˼˼ˉͽ۽۽ܽwwhxxgw˼˼˼wwxwhgʬ˼ʬʉ˺˫vvfvvhuwgVw͇wxvxxg̼˽͚yxwyvwygʺ˻ʫ˻͇xgwxhw͗xyxihwhwhXwˬʻgwyhxWxhyhhˬʻ͇xxyhx޺˼˼˼˗xhxxhxx̼˼̼˼ʺyxyʼˬʬxyͽܽ۽ʼˬʬvxxvxgyvʼˬʬʺxxxihyʼˬʼʼ˼˼˼˼˼˼͉yyyhhyhhgyvxxW̺ͽ۽۽ܽˬwxyvhygwʻxxx˼˼˼˻gXvhWwwgwvhewwhVwyyx̼ܼ˽˼˼˼˺˼˼˼˼˼˼ˇyyyhiͺwWvgvwxgG˼˼˼hwhvxXWʺ˺yyyʬ˼ʬʪxxxixy˼˼˼˼˼˼˽ͽ۽ʻyxyzyzywvxhhw˻y۽˼yz˼˼ʬhyxxx˼˼˼˺yyͺʬ˼˼˼ͪͺyyzʻ˻wxvhgwyyx˼˼˼˺ܽܽgvXWhyixhʼ˼ʬʼ˼˼˼ʻ͉yyxyhxhWfUVeFVfuTVʻ˼˼˼˻ʻWeUuUu5WVuSe˼˼˼˺˼˼˼˪VVUvVuFWfeTfʻ˼˼˼˺ʻGfDFtFGgtDf͊xyxxxxxyyx˼˼˼yyxyzy͇yxxhiyyyyxwxxxwxyhihͺvwhwgvwghwvwwgvwgxwxxvvhvfvvwfWwvwhwvgufWggxxxxwxwxxwywwghxʫʺxwgvwWWhdvtfxgeggguvefyʼ˼˼˼˺yhgvggXuughXvhhhuuwyyyyމxy˼ͽ˼۽ͽ۽ͼˬʼʼ͉y˼˼˼xyͽ۽˼˼˼ܽͽ۽˼˼ʬ۽˼̚yvhwxgXˬʼʬʼ˼˼˼˻˻yxxxxyxhwywxivʻʫ˼˼˼˺̼ۼ˼xwvxwgxx˼˼˼˺xy˼˼˼xixh˼ʬʬʉyxxxwyxxgw˼ʻ˺˼ˬʬʚxxxh˼˺xwhwhXw˼˼˼˺xyhxhy˼˼˼͉yyʼʺʺݺyxyʺ˼ʺʻ˼˼˼˺˺yxyyyyޚ˼˼˼̼ͼ˼yyˬ˼ʼy˼˼˼̈˼˼˼xyܽͽ۽۽ܽ۽͉yyi˼̼ͼ˼˼˼yzyy͚˼˼˼ˊyfvuvGfWVeesfܽͽ۽ͺܽͽ۽VwuWfgGvetgۼ˼˼˼ˊevdvVfVVvUdg˼˼˼zfguWugVvdtw̼˽͚˼˼˼xxvxwwxyxxhͺʻʺ˼˼˼ˆvwuwxgvgwvu̇wwxwxͼܼ˼̆xxwvxw˻˼yx˼˼˼wxxwhʺʼˬʬʚyÿyyx˼˼˼ʬˬ˼ʆxxgXxvygwgxyͽܽͽ۽˼˼˼xxxhyyxxhiʫʺ͙˫ʻvuxvgvfgfwu͆vxwxwxgx˼˼˼ʬ˼ʬ˚˼̼˼˚۽ͽ۽xhvwwxvۼ˼̚wxxwxwxz̼ۼ˼hwvwggXvuWwwvgWWhevtV˼˻͉yyx˼˼˼˼˼˼˚xwewgggfveWhhvxhhhvug˼˼˼˼˼˼˚x͚xxxxy̼˼̼ˆwgwvhvwhgw˼˼˼xxxxx͉xyxxxxx˼˼˼xyyxyyy˼˼˼˚hguwgWggwfV˼˼˼˚ͺܽ۽͚hfvvWggwweWyyWWfggvgVwfVG˼˼˼ˉ۽˼˼˼˼ggvwhvhgxvfWʺ˺͛wxxwxxxwxvwh͗wxvwxg͇yxwyxxxxܽ۽ͻ˻XgwwgwWdtvf۽ܽ۽WgvwvgXewV˼˼˼ˊy˼˼˼XfwvwHUge˼˻HVgvvXegf˼˼˼˙˼˼˼˚ܼܽ˼˺yyyyyy˫yyyyyxxx˼ʼʬʺ̼˼˼˼ʬʬ˻yxxhiyxxy˼ʬʬˉ̼˼˼˺ˬyxy˼˼˼xvyxhwiwʻgWWvuvvfFf'U˼˼˼˪˼˼˼˺ʼ˺ggVufwvwEv7Tʼʬʼʺ˼ʬʬʹVWGvvfufFe7E˼˼˼˩˼˼˺ʬgfWvwfw6v6U˼˼˼˫xyxihwxwixhg۽۽yyyyxy̺ʼˬʬ˼˼˼ˆwhxxXhwʺʺ˺xyxihͺxxxˬ˼ʼʼˬˬyxxxʼ˼ˬʙxxx̼ۼ̼˼ͽ۽ܽ۽wywhgxxyxx˼˼˼ˆwvhxXg˼˼˼ˈyxyx˼˼˼vwwwgWvvxWf˻˼˼˼˅vwwwhvgHgwyyy̩˼˼˼˼˼ۼͺhwhvxXWxyhih˼˼˼vfxvwgwugWhfͽ۽۽ˬʬʼʚwwxhwwhww˼˼˼wxwxvxhhw˼ܼ˽͉yywxwxvxhhw˺yyyihͪyyihhxxxhxhgxhyhhͺʼ˺͇yhihwxhvwxhgwhhvxWXʬ˫˼˼˼ʺʻކwxxxXXxGVUvVuVVfdUfWfeVuVWfuefyxxyVfevVuFWUedeyyWgfgWgfuev˻˻hvwwvyyyͼܼ˼˫ͽܽ۽xxxyyzzyzxxxʬ˼ʬ˼˼˼˼yiy˼˼˼˼˼ˬʬzyxhxh˼˼˼˺ʬˬˬyyxyˬˬʬˬʺxyy͉݉܉ʫˬ˼ʼʬʺͽ۽ܽyxiyxyyxx˼˼˼zzyyzyʻ˼ˬˬ˻˻yyxxyhxhyywwixyv˼˼˼˼̽ܽ˽˼˼˼ͪwhwxhhxxWXxw͇ghgxwxyxih˼˼˼˚yiih͇yxhhxyxhhiwxxxXXx޻hhyhhhwhxiww˺˼ʬˬʉyy˻˼ˬʼʬʚwhxxXhwˬʺxxhixyy˼˼˼˼˼˼zxyy˼˼˼xwwʻʫxxxyh͆yxxxixyxxͼ˼˼˼WWggughvgW˼˼˼ˉ˼˼˼͈xhgvWghuvghhvhXhvvg˼˼˼˼˻hWwgvgWfgfͼ˼˼˼˼˼yzyy˼˼˼˹˼˼˼˸vVFwegVvFg5E˼˼˩˫˺˼˼fGFgdfffVf&E˺˺vWEvUgfvVg6D˼˼˼˪˫˺˼˼˼eW6weVeeUV65vwxxwgۼ̇xfwgwwvwvWw˼˼˼wxw̺͆xxxxhvwxwgʻʺ˼˻˼˼˼xxwgvvwgxxx˼˼˼ˉxwhwxwvxxxxx˼˼˼vwxxwxhhwxxxxxxwwwghyyx˼˼˼˙xxxxxxwxghwwxxxx˼˼˼͉yxWvWgwfvefʻʺ˺ܽܽ۽xfuGVxUde˼˼˼˙xfevVVxfev˼˼˼˼˼˼˺gWvWwghfef۽̼˼yyyˬ˼ʼͽͽ۽˼˼˼yy˼˼˼۽ͽ۽˼˼˼ۼ̽̈yܼͼ˼͈̉˼˼˼yzyz˻˻ˉ˺xwxxygwʻ˻ʺʼˬˬʻxyxxxxyhʼʼʬʹxwhwhXwyxxhz˼˼˼˼˼˼vxwxxw˼ܼ˼˼˼˼wxwwvwhvxxyxxʻ˼˼˼˼˼˼˼ˬʼʬʅxwxxhhw˻˻xxxxx˼˼˼iyxx͉z͹ʺʺͨ˼˼˼̼˼˼˼ͽ۽ܽyiyiyxyyܼͼ˼ܽ۽˼ʼˬxyxyyy̼۽˽yzyyyyy˼˼˼˼˼˼˼˼˼͙efuvFeVfgUtf˼˼˼˼˼˼euuu7VWeVVse˼˼˼UfevGfWVgVdfdfdfFfFffFdf˼˼˼zz˼˼˼˹˼˼˼ˉ˼˼˼˸yvxwwhxv˽ܼۼ˼ʬˬʉvwxxgvgxw˼˼˼uwgwvgvvXgf̼˼˼ˈͽͽ۽yy͚vxwwhxv˫˻ʫxyxxhwh̹˼˼˼˺xihhxyyxxxxhyʼʬ˼ʩ˼˼˼ʫʬ˫۽ͽ۽xhxwwyv˫˺yyy˼˼˼˼˼˼ˇxxxvvxvgvggxv͉xxxxxxxyxxxxxxxxxxyy˼˼˼˙˼˼˼˼˼˼ˉͼ˽˼xgfwWgwgvuV˼˼˼ggfwWwghguVʼʺ˼˼˼˚xvevFWxVtUyyyxvevVVxgefͽ۽˼˼˼ˉXgvwwuwggfVͼ˼˼YxxgghvvW˼˼˼˺˼˼˼xyyXwvgghwuW˼˼˼HgvwvvWwufG˻˻˻͇xxxxxyyxvvxvgvggxv˼˼yx˼˼˼yy͇xxx˼˼˼xxxxxyyxxxx˼˼˼˺۽ͽ۽yywvywxhvyyy˫xxyxʼʬˬ˼˽̼̼ʬ˼ˬ˼˻yxxxyiyxxhhyyyzyyyy˼˼˼˼˼˼˼˼˼˚wgwvhvvfWgg͉yyʼʼʬʚܽ۽vxxwgvwgxxxxwggxw̽ۼ̼˼˼˼ˉʫ˻xxwggxw˼˼˼xywgxgwxxihh˼˼˼ʼʬˬʩxwxxwx˼˼˼͇xhihxwxhhgw˼ܼ˼xxx˻˻ʻ˼˼˼˺whXXw˼˼˼yyxxxxhhigwhwugvwwfXw˻˻˻yxy˻wxvhwxgh˼˼˼̼ܽ˽wxvhwghxxwxxwxx˼˼˼˺xgvwvxwgxyxx˻˻˼ˬʬ˫xixxxxyxx˼˼˼yzyzͽ۽۽ˬʼʼʗxxxiyyxwggwyۼۼ˼˼˼˼˼˼GfevVuVVUdee˼˼˼ˉ˫˺˼˼˼7eUuUuUWVsUe˫˫FfeVeVWVteU˼˼˼˪˫˺˼˼˼GvdFtFGFtddˬʼʬ˺ͽͽ۽۽whXYixhxh˼˼˼˼˼˼ͺʻʫxyyyxhxhzwxgiw˫˺̹͊ʬʫyyy˼˼˼yzy͇͊xihiyxy˼˼˼xyhhxxxxyyyxyxwxxwxzyyʬyyyyxxyx͉yxx̼ۼ˼˼ʬˬʘxhihxxgvxWhxxxy˼ͺ˼˼˼˼˼˼xyvxwwi˻ˬhgwxgwxxyhx˼˼˼˼˼˼ˈwxxxw˼˼˼ˉ˼˼˼ˉyz˼˼˼ˉyxͽ̽ۼ˼˼˼˼ͽܽ۽͉xyyyyyy̽˼˼˼ܽܽ۽˼˼˼˼˼˼͉yxy͚̚˼ˬʬ˼˼˼z˼˼˼VwewfdVUfTff͚˼˼˼ͪUgVweSeUwSVgͩVvfvVdfUvTeg˼˼˼FffffdfDfDff͚˼˼˼ͺz˼˼˼ͩͺyʻʫʫ˼˼˼ͼܼۼ̚VfuvfefEgTuf˼˼˼͙ͽ۽۽ܽggtgeWVwdug͊y˼˼˼ͽ۽۽۽VWewfdfVwcegۼ˼fguWugVvdtwzz˼˼˼xx˼˼˼˪̇whwxgx˼˼˼wxxxxwhxwhgw˼ʫyyxxvwwwvWwfxVg͇xgwxgx˼ۼͺxhxxh˼ˬʼʙʺxxxyxͼۼۼ̽̚˼˼˼˼˼˼yyyyͽ۽ܽ۽˼˼˼ʬˬʼiyxyͽ۽۽˼˼˼ͼ˼˼˼zyzyyiyyyͺ˺ʻʫˬʬyxyyy݉zyiyʻʻ޺yyy˼˼˼ˉyͽͽܽ۽ͼ˼˼˼͙ʬ˼ʼy˼˼˼yͽ۽ͽ۽ͽۼۼ˼ͼ˼̼ͼ˼ˬʬͽ۽ܽ۽yyʬ˼ʼVvvvWegFecuf̼ۼ̼˼ˬˬʼ˼˼˼˚̼ۼ̼˼UuvugUg5VSveͽ۽ܽ۽VvugeWFfcvVʼˬˬFfffdfFfbffͽ۽ܽ۽ʼˬʬ˼˼˼ˈiwxhwXwwgxghʫ˻ͺxhxxi͈xhyhh˼˼˼ˇxxihhxyxgwhw˺޺whhvxWXyxhhi˼˼˼ˉ˼˼˼˙zy˼˼˼ˉyy͚yz˼˼˼͙͚zyyyyxʻxyyʫyyyͼ̼ۼ˼ʼˬˬ˼˼˼͉yy˼˼˼ͽ۽ܽ۽۽ܽܽͽ۽͙ܽͼ̼˼ˬˬʼyyx͙˼˼˼ͽۼ˼VgfVdVVwcfW͚˼˼˼۽۽gwvGeWVvdug˼˼˼yz˼˼˼ܽ۽۽VffvWeWEgTff̽˽˼fwuWuGVwdvgyy͚yyyvwxvgugGhwͪ˺ʼ˼˼˼˺yxxhi˼˼˼vwwwVwvhVwwwxghWxܽ˼xxxy˼˼˼˺˼˼˼ˇgvXWx˼˼˼yyxxx˻ʫˬ͉yyݻʬ˻xyy͊܉ʼʬˬʬʬ˼ʪyyvvhwguwGxv˼˼˼˹˼˼˼˼˼˼˼xyxy˼˼˼˫˫ʫvwwwVwvwVwxgvxWx˼˼˼˘xxxͺ̼ܼwxghWixyhiwxhwxʫˬxhyhxwhhvxWxyxxhyʻʬʺxvxwxxwi˻wwggh޺xxyhx˼˼˼˺yhxxxxx͹˻˻xhwwhgyhxxywxhwxg̩ͼۼ˼yyxvgwWvfwVww˼˼˼ˇxgwxgxʻ˼˼˼xwxxxwyxx̼ۼ˼hgwgwʫʫ˻˻˻˼˼˼ˈxwwxihyhxͺ˼˼˼hxyhxxwhxxwxvʬˬ˼ʺ˼˼˼˼˼˼˼XgvWhxxyxܽ۽۽ˬʬʼʫ˼˼˼xxxʬʼˬʙ˼ʬʬͺˬʬˬʪyyʬˬˬʉyyxʬ˻ܺʬͺ˫ʬ˼˼˼zͩͺzyyyii˻͉yxy˺ʬyy˼˼˼˫yxyy݉yyy͙zyyވyyiyyzʬ˫͚yzyyʬ˼˼˼͉͊˼˼˼ʬʼˬʺvwvWvvhGwʫͺʫʫfvgFgfxFvʬʼˬʼ˼˼˼ʫvgwWwvxGgʬʼˬuwwwwWwuw7wwʬʼˬʺ͘vhxwxxwvhxyhx˼˼˼˻ʫʫ˻͇ͩxixyxxhyhxxwgwxhguyhxwʫʫ˫ʻͺʻކwhwhXhyyi˼˼˼˗xxxixy˼˼̼˺ʬʼʼʈxxxxwiwhwʬ˻˼˼̼ʼʬʼʙʫʺʚxxxxˬʬʼʺvwgwgvuvWhfxxxxxvwgwufvgfXvvwhwgvwghwvwxwgvwgwxwxwxxwxwwgiwyyͽ̼ۼۼyyyxxͽܽ۽۽̽˼˼˼˼ʬʬ˼˼˼̙ͽ۽۽xyi˼˼˼yyyzy˼˼˼˼˼˼hxxgWivvWͼ˼˼˼˼˼˚ggwwftfXwgGWgwwgghgvgV˼˼˼y˼˻˼˼˼˼˼˼˺hwvWghwvWͽ۽۽yͽ۽ͽ۽yx˼˼˼x̼˼˼˼˼˼˼y̽˼˼˼ʬ˼ʼz˼˼˼۽˼͉xxxʻvvvwWwvwWvwghgwwxxw˼˼˼˼˼˼˼˺yy̩wgwhg̼ܼ̺wwhxhwxixxxʻhxxhxvyuhxgʼˬʬʚ˼ʬʼ˼˼˼ˉy˼˼yyvwwxxxhvxyxih˼˼˼˺ʺwxvwxxhw˼˼˼˘xxywxwwhxv˼˼˼yxxyxxxxxxyx˼˼˼ˇwxgxwhwxxxxxxyyxwhwxgxw˼˼˼˙wfvvWvgxweW۽ͽ͚˼˼˼˺˼˼˼˚˼˼˼wguwgvWxgfVfWfggeggwuVG͙ʺʺʻzyggvwhvhgxvfWͼ˽̼fgvwgwgWwfxxxxxxxvvwufhvggvuvwvwhwghwvxwwwhwhwwwxwxwhwxwxxhvyy˽ܼ˼ͽ۽ͽ۽ͼʬ˼ˬ͉z˼˼˼yyxͽͽܽ۽˼˼˼ͽ۽ܽ۽˼ˬʬ̼ۼ˼̼ywxvxwxyg˼˼˼˼˼˼˼ˬ˫wxwhhgyxyxwwhxXwͻ˼˼ܼ˼xxxhiyhxʬʬ˼ʺxxyhx˼˼˼˼˼˼˼xwxxxw˼˻˻ˬʼʬˆxxgXxvʻʻxghgywyyˬʬʼʚyhhhxhxxhyʺˬ˼˼˼ˈyyy˼˼˼˛ͺ˻yhxgfwvggXwugWhwvwXhivvW͉zy͹˼˼˼ˉyyxhwvgWhwvWyyzWggwgughwgGʺʻxxyxʬʬ˼˼˼˼˻ʬʬ˼˼˼˼ˇxxxixyxxxxˬʼ˼ʉ˼˼˼ˈxyˬʫʫhxvwywvʫʻʫxwwwgh˫˺yxxwhwxgxw˫xxxxxxyxwhwxwvxxxxxwxwwhxv˫˺˼ˬˬͽ۽۽˼ʬˬ˼˼˼ܽ۽ܽyy͈yܼ̼̽˼˽̼͈yyܽ۽͉ܽyy˼˼˼xyyܼ˼huhvxXw˼˼˼˼˼˼˗xyxixvgfWwvwWvw̪ͅwgvvhwwHwvyy˼˻˼˼˼˼˼˼˺˼˼˼WvhXgxxyx˼˼˼˺˻˫ghfxWuWguf8ͽ۽۽fWfgWvWgwfVG˼˼˼ˉyz˼˼˼ˉzywgewGWxwvfGͽۼ˼wgvwVFxwveG˼˼˼˻˻˼˼˼˼˼˼˼ggfwwwXguvVXWfgwwgwtfWͻ˼yy˼ܼ˼hguwgghwvWhhvxhhhvug˼˼˼˼˼˼˼۽XwwggwWetvV˼˼˼˼˼˼˙XvgvwvHVwUͽ̼̼HfgvvvXfgV˻˻z˼˼˼˺ʻ˼˼˼WwvwwvgXfwFyyhxvhXhwvWzy͹ͫhwvwWghvvWxyxhggwgvgWgwV˻yyyͺyyiWggwgughwgG˼˼˼˛˼˼˼˺yyXgWvvvXgWWhwfwwuggfgW˼˼˼ʺ˼˼˼˼˺̽˽̼gwgwgwhfufWͽ۽۽XvgvvvXggf˼˼˼ʬ˼ʼʫ۽۽ʬʼˬyyxʼ˼ʬhxhyͺʫ˻wwhxxgxhyhxxgwgͻʫ˼ͩyxxhyhxyhx˼˼˼˻ˬwhwhX޺˺ʻxxwXuxyxix˼˼˼˼˼˼˺wwvgvwXgw˽ܼۼxxguwvgwwgfxu˼˼˼˹˼˼˼˘xxxvXwhgxwxghW˼˼˼ʻʻyyyxxxxhyhxͼ˼˼˼˼˼ˇwhwh͇wXwhhwʼʬ˼ʩwhwxgxxwyxww˼˼˼˻˻˼˼˼ʬ˼˼˼˺xhyxhxxxywxxxwwgxxhw̼ۼۼ˼˼˼˺˫ʫyy˼˼˼wxgwxhwvwuwggghvu͇hxix˻˻xxwxxhẅxxx˼ʬʬ˼ʬˬʚ˼˼˼ʼ˼ˬʫyyͽ۽۽x˼˼˼XwvgghwuWihvxgghwuWͺyʫͪhwuwffwvwuVyyyyhwvwWvWwftFyy˺ʻޚgeGvwvvfUfWRʫʺˬʬʼʺʫʺfdVfgfgfDfVBʫʺ˼˼˼˺ʫʺfeWvvfwgUvGRˬʬʼʺ˼˼˼˹ˬʬʼˬʬʼwuWuwwwwUwWQʻʼ˼˼˼ʼʬʼʗxxxy˼˼̼˗x˼˼̼˺ʬʼʼʙwxxywvhyxxxˬʬʼʻʫ˼˼˼˪˼˼˼ˉzy˼˼˼˚y͈xxxyxxxxwxx˼˼˼hyxiʫʺxx͉xxxzyxixxxyyy͊ʫʺˬʬʼʉgwvgWfgfevuEʺʻ˼˼˼XwgwgvwWvfV˼˼˼ͽ۽۽hwwwfuvgvvV˼˼˼˚y̽˼˼gvxgvggvvvVwfVuggfvUwFRˬˬʼ˼˼˼˼˼̼˹ˬʬʼgVFvgwuwVvGS̼˼˼˩veUvWgfvEgFC˼˼˼ʻʺ˺˻ʻwfVfvvgVw7Sˬ˼ʼʻwxwhxhxuʬˬʼʺyyxxxxiʻʻ˻˻˚xwxwyvʺ˻ʺxxxx˼˼˼ˊy˼˼˼ͪiyyhXwxxuwhwhhwwhwxhxv͇yhxiwxXxXwyhxxx˼˼˼˗xhxxh޻˼˙wxwhxhxu˼˼˼ʬʬ˼ʺʻʻxxxxyyˬʬʼʻywxwxvʻʼixxxxy˼˼˼˚˼˼˼˚zy˼˼˼˙˼˼˼˚yhwfwWWwvwfVy˼˼˼˻˼͚˼˼˼˺hvuvGvgwvuFYgvwXhhvW̽˽˼˼˼˼˙˼˼˼hwvWghwvWffWuvewVEfGCʻʻ˼˼˼ʻʻffVdgfgfDfVB̼˼̼˺̼˼̼˹VfGuwfvfEeWCʻ˼˼˼˺ʻeUVugVge5VV3͙yyxyxx˼˼˼yyxiyhʺʺyyyx͈xxwxxxhxxhyyyyyveFvfgWvEgUCˬʬ˼˼˼˼˻˼ʬ˼wVGvuvggVwFS̼˼˼vfFufwgwUgVR˼˼˼˺˻ʼ˼˼̼˩ˬʻgf7vwfwVvVSʬˬʼʙʬʬ˼ʗxxxˬʬʼʉ˼˼̼˺xxxyhʺʫ˼˼˼ˆwyxxwv˼˼̼ˇxyʫʻxyʻʻxxyʻxz˼˼˼˻XwwwgwWfvvFͽۼ˼WwvggugfefvEͽ۽˼˼˼˺zy˻˼˼˼ˉ͊WgwXuhgfv6˼˼˼HvwvgwgvuvF˻˻͈yyxywxghhw͚wxxwxxxxwwwhxxhxvxxyx͛xxxxxxxͽ۽۽˼˼˼fwuggvWgefvE̼ܽ˼۽gwvwvfhvuwVy˼˼˼WwfwwgXvvgV͚˼˼˼ʻʻgvxgvggvvvVwwuwfwfhvuV͉xʺʬʻwwtwWWhfvvFyyhhuxggiwvW͚yyyyy˼˼˼hwuggXwvWޚͻgvvvwugHvwF˻fwvggfgWeuvE˼˼˼˼˼˼˼˼ͽ۽۽˼˼˼ˉz˼˼˼˚ggwhvXWfu6zyWwvwwvgXfwFͼ˽̼y˼˼˼hwvgWhwvW͚hgvwhXYvW˼˼˼˙˼˼˼˹wwfwWwWhvfV̽˽˼wvuvgGhvvuF˼˼˼˻˻˼ʬʬ˼˼˼ʼ˼ˬʬˬ˼ʚͽ۽۽͇ixhyhxxhxhwhhww͚xxxhy˼˼˼wxhwxhv͛wXxXxwhyyixxwXu͊xxxixyyyxx˼˼˼xxzy͘yxxxxxxixyhʻʫʫxxxxwͪhhwgxwxxx͇xxhwxhvxyxxwxxwx͈yxyywxxxwxxxxͽ۽۽͈xwxxxyyyy˼˼˼xyyyhxxhxyyhyix͙ʫʬxxyxyyyhgfggWXfe˼ʬʬ˼˼˼˼˼˼ʼʬʬͽ۽۽˼˼˼gWVWgvggUvV˼˼˼˼ʬʬʼʼˬͽ˼˼˼ʼˬˬXgegWghffʼ˼ˬ˼˼˼ͽ۽۽˼ʬʬͬʼ˼ʬͽ۽۽ͽ۽۽hhfhhhhff ================================================ FILE: examples/games/.Tables/EdgeSlic.ptb ================================================ :YYYZhxvxwyvwgxhwxhhxvvgiixxyiihgvwxxywxghxuxxxwwWxxgwxwIXHXYiwfghwvVgYvhxiiwXxwwxwwwhixyxYxwgxwxvwhwxxxhwWJYYYJhhvxxxwwWYYxyyyYwxgvwxwwwYhvyxigGhixxxxuYxxwxwwwxwwgwwhgwwxxgWIIYIYhhxhhwwgxxgvYYyYYiYxxxhxxhixhxhhhhhhxxgwvxwxvhhhXxjJjjjjJvwghhvxxxxxxhxhhiYyYiYYvxxxxvwwgvwwxhwwxxxhhxxhwwwhxvxxxxvxvvwvghhvhXxxXiYyYiYYwwxgxhxhwxwvwwvgvhwxwxvwiYxyYXhhxXXwxvhxvgvwghhxghvwxwxxghwvvxgxwxvxwwxwwvwwvgvwxWxviYyijiIgwwvhxvxwwxwwwhwwxhwxgxwwwYIyiiiYXxxXhxxggwiXxhyiXguxwwggvxwwgxvvxvwhxwgwwwwxwxxxxfxxwhxxgwxvwvgXhxhhgwvyywwwwxwwwwhhxhhxXxxxxhwxwxxwwxgwvhhxXXhXwwwxwwvvgvxwihhhhXXwwwvwwvgxwxwwXxiiiiiIxxxwhwxwvYYyiiyYwwwwxwwhxxhhvwhwxxwvwxhxgwiivxyhgGxxwxwwihxXXywhxxxywxxxxwywgxwWwxxhgvyyxxyxvixwuHvhwhxfhgwwvwXXxXXxxhxhxxgxgxxyyxxxxhwghXXxxvwhwvvvGwxwgxxhwxwivwxhxwxxxxxwxhwgxxwwwvxwxXihvhhxxxxxxhhxHHyxxyxw7hhhXxxxywxwwxxwwwxyxyyyxhxxxxxxxxxxhxxwvxwwwxhwxxxvwgxvvwxwxwxxhxwxxgxhxhhwwxyxyxxxxxxxxxhyxxxxxxwvvwxxxvwgwxxwwwwwgwwxwhwiXiihhxyxyxwxwyywxxxiwwxxgiwxwxfghixhxyYIyiiiYwxhiwwxxwxwxwwwhwhiYxiyYiwwvwxxwhvvywxwxxxxxwhiihhiyhxgxhxwxwwwXiYyYyiixwwxxwXvxxxxxxxxhxhxxyyxyyiiYyxxxxxxhxxiywwxxxwwwxxxxxxwwxwxxxxxxxyiyyiyyyyiyyxxxxiyyiixwyxwwwyyyyyiiyxxyhiiyxiixxwwhxxywwwwwwxxxwxxxwxwyyiiihxhxxxyyYZzhhwxxxxxxxxxxxxxyyyyxxxxxxxxxxyxyyyiiiixxxwwxvgwxxxwywxWXwwxxwxxhiyxxyiiiwwyxxxvyxwwgwyhxhhixvhgwWXwxxhhxxhxxxwxxyywxwxXXxxvwwwwxvvhxxhhhxxxxxxxxyyyYYYyxxxxxxihxwxxxxxxihhHHwwvwgwixhxyiyiyiiixxwywxhxxxxxhyxXiyxxhxxyxxxxyxwvwviyyiiiywwxxxxwxgxhxxwwwhxwwxwwxwxxxxxywxxuxxxxyhxhxxxxxywxgyxuxxxxyyyxyxyxxxxyyxxxxxxxxxjjjjjxxxxxxxyiiyiiy[{[[[yiyyiyyyyyxyyxxxyxxxwyyxxxxxxxjjjjjyyyyiyyxxxxjjjjjxxxxyyyiyiiyxxxywxxxxxyxyxxxiviivxxwyvyhh[Zjjj[jwwhxwwxhhyiyxghxvhxhxiwwyxgwhxvyxxxyZYiiijYixxxixwxhixywyywwxxxwyKJjjjkjYxxxhxxvhxxZYYYYZihwxyvyiixXxXxwhxfyyzjZjzxiiyyiiiyxwxxxxxhhxixxyxxxyiiiyxxyyxyyiyyxyxxxxxxyhxihxxxxxyyxyyyxxxjzjziyyyyxxvxiwxxxxxxxxyxXxgxxxxiyihiixwwxxxwxxywxxviiiiiiiwxxwxwxyWxhvxxhxxhxxywwxwhyyhhixyxXxXxxhYyyYYYyiiHihxxxxwxxxxxxxwxwgxggwvxhvxxxxxxxxxyhxxxixvwXwhhwuyyyiiiywwxwvwxwxxhvhgxwxxyyxwwxwxxyixyxxxyxwxwghhxvxgwhgwxxxxxxhxxxxhhYXxxxxyyyyyxyixhxhxxyxhvxvwxxvxxxxxxxxxxxxxxxxxxxxyyiiyxxjjZjjhhxxhxxxxxxxyiyiyiiwwxwxwxxhhxhxxxxxxxxxxxxxwxxxxxiyiiixxxxhxxxjjjZjyyiyiiywxwywwwwwxxwwxxxxxxyyyiixhxhxhxyxxxxxwxwxwxwxxyxxhhhxxxhhxhxxxxxxxxxxxxjjjZZxxyyiiihxhhxxxxxxxxxxxxxxxyxxxxwxxxwwxxwxwxxxxiiyiiiyyyiyixxyxxwhvxwxvwhwxxyhxgxxxxvxwwgxxXhxyihhxwxwwwhwxwxwhvYYiiYiixxxixwxhxvyhyhvhwywxyvwwwxxxwhvYYyxiXxxxhwvxIYyiiiYwxxwxwwwxxxwxyiwxxYxhxxxvhwxfwxxwhhxxxxxhxhhwxxwwxwxwwwxxxxxhyyhxvwgWwhhgwhxhhxxwhxwhwwxxwhvwwWvxhxxxxwwxxwxyiyxywwwwxwxxwxxhxxxxwxwxwwwghwwggwgfwxxxwwxxwxwxwwvxxwvhwwxwgwyyyhyxxyyxxxhxxwwwwxxhhxxxwxxgxwwvxyxyyyyyyxxxxhwwxwwhwwxxxxxxxxyyyyyhxxxyyxxwxxxxxyxyyyyyxyxyxyxxxxxxxxxwxxwxghxxhhhhxxyxxxxxyyiyiiywxwxxuwixgghxxxxxyyxyxxxxxhxhxxxhxyhhhXhxxxxxyyyyyyyxxxxhxxhhhxxxxxxxvwXWvigxiwyyyxxxxxyxyxxxxxxxxxhhxhhxwxxXhyvxxxxxxyyyxxxhyiyxwwxwxihyixxxxxxxxxxxxwwwwwwwxxxyxxxxxyxxxyxhyyhhXXhxxxxyyyiiiyixiixxxxxxxwggugghxxyyyyxxyxhixhixzzyyyxhiihhhXXxxxiyyyiyixxxxxxyixhhixxxxyyyxxxxxXXhhiyiyxyyYxwxxwwwwyjzjzzxxyxxhvxwxyyxhhxyiXwwxxwhhxwwxxvyyiyyyxyyiwxhxyyYyiyiYhxwwhjjjyxyyywwwxwwiyyYyyxyxxxwhiyixxxHhxvxwyvwgxxxxxyyyyxxyywwgxvxxyxwxxxwxxyyyyxxyxxxxwwwhxxxxxyxxxxyxwwyyyyyxxxwwxwxwvwwvxhwwwvxxxwgwvxWwuxxhxyyihiiyxxxxhvxuwhwwiyiyiiiXxxXhxxxxxxwwwxxwhhwxXxwxvxwwwxixhhyxxxyyyyyYyYYyxwxwwwwxwxxwwxhhhhHhwwwxvgfgxvwwhwxxxxxwxxxwwiyxyxxhxxxxxwxwxwwwwxwxxhxwvyxxhyxxxxyyxhhxwxxvixxhixxxwyxxwxxxYxxxhyyxxxyixxhxhwxvxxixyyyyyxxhxwwwwwwwwxxxxxxxxxxxwyyxyxwvxfxwxwxfwvfvvwwwwwwgwwguxxxxxyyhxwwxwihxixwxxwwwvwwvgxwgwxvxxxxvhwwwwvxxxxxxyyxxxxwxwwwwxwxwwwXxgVxyxxxgygwwwgvwffgxhvhxwxxxwxxxhXXXxuhxxhxfyhHhugVWwhvXXggxwxxwhvwfvgxxwwwxxxxgxwgXxhxhxxhvggxhfvvgwhxvWhvWevhxhwwWXwvvhxghxxxxxhhHIxwwwwgivxxxwxxwxxhxyxxxhXxwxxXwwuuWwxxvXxwfVgwwvhxvxxxwxwwxwwwxxxyxyyyxxxxxxxxwxxwwwwwvwxwwwxwwwxxxxvxwwwxgwwwxwvxxyxyyyxxxxxxxxxyhxxwwwwxxxxwwxgwwffgwvwwwgwuXXxXhxhwwhwwwwxwhhhhyhiixwvxwwvhiXixxwxwwxxwwwxgwvxwxvxxwxvgwvvxhwxhwwxwwxwwwwwxwgxgwhhxHXhhxwwwgxwwixhiyxxwwggwwxiwxxxvyywxxhxwwvxwwwwxhghWhguugxiiyyyxxyyyyyyxyxxyxxxxxxxxxxyhxxxyyxyYyiyxyiyyyyyyxxxxxxxxxxxxxxxxxxxxyxhxxxwxxwwxxyxxxxxxxxyzzzzjxyxwxyyxyxxxxxxxxxyxyxwwxyyyyyxxyyxyyxhhxhxxxxyiiiyxyyyzzzzzxyyxxxyyxyXvXwxxgvhxxixxyyiyyiiyxxxhiwxwwxwwwxwxxhyyxyyyxyyxxxvhivhxwwxxihhhihyxxxxyxxxxxxxyxwwxxwwgvwhwvxgffhhhhxxyxyyyzzzzzzhyhhhxxyyxxyyyyyiyyxxyxyhhhhhxyxyxiyyyiiyyyyyxxxyyyiyyxxxvwxvwggvxggxwwwwwwwxwwwxxhhxXXxhxyxuvxhxwhvxxwxxhxhhxhhwgwvwxxvgwvxhvYYyiiyYwxwxwxwxwhxxiiyYYiiwxwvgxxxwwwwvwwvxhhhhxwxwvhvXvhxwuxxxhhhhxhhhhwxvxvgvhwwwxxxxxxxyyyyyYiiyiyiizyxxxhyxxyyyyxxxxyxxxxxxxxyyyxxyyyxxxxyiiiixxxxxiyyyxxxyxxhxxxxxxzzjzzxyyxyiixwyyxxxxxxyyxxxyxxxxyyzzjzzxzjZjzhxxyxyyyyxxxxxxxyxyyxyxxyyy{k{kxxyyywgwxxwxhxvxwwxhhxxhxhyyxxxhxhyxxyyxxgxgxxwwwxxyxxihxyixxxyxxxxxwXhxxxwxwwwxxxxxyiyyiiyxxxxxyxxwwwyxxxxxyyywhwgwhWgwwvxwwxwvxgwvxyyyyxyyxxxyyyyk{{xxxyxyyyZjzjziyhyxyyxyyxxyxxyyyxxxjzzzzxxxxjzzzzxyixxyywxwxxyyyyyxhhxxyxxxxhxyzzzzzxxxxxxxxxxyxyyyyyzzzzzxxhyyxxxxyxxxyxxiiyiyxxwxxyyyyxxxxwiyxyxxyxyyxxxhxhxhyxyyiyiyxxzjzjzxxxyiyyyiyyxxxxxyxyyyyyxyxxyyxxxjzjzixxyxyyyyyxywxxxihixyyyyxk{yyzyyy{{{{{k{k{||nj||iyyyyxxxwxxxxwyyxxwxyxyyyyyxyxyiyyyyyxxxywxxxxxyxyyxxxxxywxzzzzziyhihhxyyyxxxyxxxxxyxhxxxhzyyyxxxxxyxyyyxyyiyyiizyjxxxxxyyyxyxyxyxxxxixxyyyyyywwwwyxxxijyiyxxxxxxiYyiyyixxyhxxhxxxxxxxxxxxxyyxxhxxxxxxxxxxyiyyyyyyxxxxxxxxxxxhhyhxyyxxxxxyiiyyxxxyYyiiyyyyyyyyxxxyxxxwwxxyxxxwwwwwwwhhxxxwwwwwxxxxxyyyyyxhxyxxxxxxxxxyxxyyyyyxhhxxyxxhxxixyiyyyxhixwwwwwwwwwxxxxxxyxxyyyyxyxyyyyyxxyziiyxxxxxyxxxxxxxxxxxyxxxxxxyiiiiyxxxxyyyyyyiyyyxxxxyyyhxxhxwwwwxwxxxyxhxyxxxxxxyxxxwwwwxxwxxwwwxwxxwxyyyyyhxhxxxxxxyyyyxxxyxxhxwxxxxxxxyxxxgxwvxhvwwwwxxwwgxXXxHhhhyyyvhvXhwXwxxyhxxhhhhxwwxxwhxhwhwvxxYIyYiiiwwxwgxwwxwhghxiYyYYiYwxwxhwghwxwwwxxwxxwxxxhhhhhxxxxxwxwwxivwxgvxwwhXhXxXhXhhvgwxgwxxxhwxxwwxxwwyyxyxywwwwxxxhxxxxwwwwxwxgxxxwgwwxvwwwwyxxxxxyxwwwxxwwwwvwxwhhhwxxxxyyyxyxxxxxxxxxxxxxwwxvxhwwxfvfvwxvxvxgWwxxxxxxxhyhhxhxwwwijyiyyxyxyizziixxxxxxxxxyxxyxxxxxyxyyyyyxhyyiyyixxxxxyyyyywwxwwwwxxxhxhxxxxxyyyyxxyxyyihhhhhxiyyyyyiwxxxxzjzjZxxyxxyyyyxyyxyxxxxiyyiiiyxxxxxjzjyjxxxxxyiyiixxyxhihhyxyyyyyxxxxxyxxhhzhhhhyyiyiyyyyyyyiyxxyyyyxxhhxhhxxxxxxyyyyxhhhhxxxxxiiyyiyxxxxyyhhhhiyyiyxvvwxWWuxxxwxwwxwwwxvhvxxvwhwxxxxxyyyyxyyxywxvgxwwxxxxXvxwhxxxxwxwyxxhxxhxvxvwhxxxxxxxxxxxiyyyxyixxxixhxxxhwhwggWwvvwwwvwggwuhhgwxwxxxyyiyyiiywxwyxwwxhhwxwxxxxxxxxxxxxxwwxwvxvXXwhvxxyxhxhyhhhyxixxxxyxyyyxxxxvwwgwwgfgfyyyyyxxxxxxhhxxxxxyxxhxxywwwwxwxxixxhxwwwxxxxxxyiyyxxxyxxxyyyyxxxxwwxwwxwwxwwxxzzzzjyxwwxxxwyywxhxyyhxxxiiyyyyxyxxwyxxxxxxxxwxxxxyyiyyxxhhixyxyyyyxxxyxyyxyyxxxyyyyzzHXxhXhhvvWxwwwxhxwxgwwgxxvvgxvvghxwxxvvwwwwhgwwwxxxWhvWXgvvhgwwvgghgwghvwvggxwwhwgwxWhvfwgvgwwhgggghxvhgwwgwgxfhwgvwXhxXHXhwwvxxvvWhxwvXvvwvXXxwxxxwvxwgwgXgvwgwvhgvggwfxxwhwwxvvwgwwxxwxxxwwXhhXhxixxxiixxhixxxivxhxxyxxxxxxxhxxxwwxwwxxwhxxxyxxxxxxxhxxxxxxxwwxwxyixyxwxwxgyxxxxxhixhxixxxWxxwxwwwxwxwxxxxxxxxxvxwxwxyxwwiiiyyyyxywxwwwwwyyxxxxxxxxxxxwwxwyiiyiiyyyyyxxxyyyyyxxxxxxxhhxhyxxxwxxwwwxxwwwhyhhxxxxhyiyyixxxxxxxxxxxIYhhhhvhwwxwvxxxxhwwwxxvxwwvwgwxxhhxwxxgxvvggwXiiixivwxxwhhxwhwvwvhwwwxwwwxxvwxhwxwxwwxwwwxvhvxxvwhwXYxhiiywxwwwhgxwxfghhvxuwhwwvywWXxwwwwvxwhwxwhwwvxwfwwvvfwvwyxxhwxwXixYYiihxhxxyxhhxxyyyiixyxxxxxwwwxwxwwwxwxyxxxwxwxhxxxxxxyxwxwwwxxxhxyxxyyxxxiiiyxxxxxxxxxxxxxhghxxxwwwxxyyyiyxyxxyxwhxixxxxhxwxxxwwxyyyyxxxhxxxxyxvhyxxxxhxxywxwwxyxxyhxxxxxxyxyxywwxwwxxwxxxxxxvxwwixwxxxxxxxxxxxxxxxxxxyyyyyxxxyyyyyxxyyxyhhxxhxywwwxxxxxxxhxihhxxxxxxyxxxxxwxxwwwwiyxyyyyywwxwwwwwxxiiyyiwxwywxwwwxxxwxxxiiiiiiYYyyYywwwxxwxwwxxwxwxxxxxyyyyyxxxxxxxhhxxhxyyiiixxxxxxxxxxxxxxhxxhxxyhhxxhxxiiyyyxwwwwwwxwwwwzzjjjhhhxxhhhxxhxhxxxhhhhhxxxxxxxxxxxxyyyywwwxwwwxyyyyxhixxhiyyxyxxxyiyyyxxyyxyxxxwxwxxwwyyyxxxxxyhhxxhxxxxxwxwxxxxxxxxxxxhxyhhhyiiyyxxyxxxxxxxyxxxxxyhxiihzzzzxhxxhxywwwwwwwyxxxxxxxxzyyhhhhxxxxywwwwwwwxxxxxxxxxxxxxxxxxyxxxxxxxjzjjjxxxxxxxxwwwyxwwwxxxxxxiiiiiiwwwwwwwwyiyyihxxhhhxhhxxxxxxyxxwxwxxwxwxxxyiiyyhxxihhxxhhhhhhhYyyYYYyxxxxxxxxhxxxxxzzzzzwwxxgiwxxxxyyxxyxyyyxxxxxxwxiXxxvxxxxwxwxwwxyxxxyhxhxxxxvhyhyvxxxyxxxhxxywxxxxxhiiwxwxwwwwwxwxxxgxxhxfyYYyyyyxxxxxwwxxwxxwxwxwwwiyjyyxxxxxyiiyiiyjjZjjxxxxxxyyyxyxwyxxxwxxxxxxhhxxxyyiiixxxxxxxxzjjzjxxhxhhxxxhxhxhxxxhhhyixxwhvwxwhwhhhhxgwvxwwgfYYxyiiifwggxwwwwhgwxxvxxwxhxwwwhwvwwvwgxwgwxwwwhgxwgwguwhxvYhihiXhhxXhwgghgwwhwhxxwwwxwxxwIYyiiiYvhwwwwvwxvxxvhxYiyiYYiuwwvwvwwwxwXxhhvvxgXWyvwxwwxWwxhxxxzZYyyhiyihyixwywwwwwxhxxxxxxxxhhxiiiyxxyiiyyiyyxxxxxxxwxwxxwwxxxxxxxxxxxxxxxxxxxxxxxxyiiiiyyyihxhiYyyyYYywxxwwwxuxwXxyhxxhhhhxwwxxxwxyvhxhxhxxxhiyiiyyXyyhxhhxxxhyxxxyiiyiwwxvxwXxyxxwwwYyyYyYyihHiihxxxxhxxhhhxxxxwxxxwxxuxyiyyxxxxxxxxxxxxxxxxxxihyyxhhxiiyyyxxxxxxhxxwxxwwwwwxwwwxxyyyxxxxxxxxwxxxxxwxxwxwxxxxxxxxxxyyxxyxhxxxwwwwxxxhyxxxzzzzzxhxxxxxxxxxxxhxxxxxwwxwxwyyxxhxxxxhxxxxxhxhxhxyxxxxxxwwwwwwiyyyzjizxxxyxiyyyyzyiywxxwxxxxxwxwwxwxxhxxxxxxiyiiyxxxyyiyYixwxyxxhxxxxxyxyxwwxxhxxhxxxwwxxxxxxxxywxwxwxxxyiyyiyyyxxxxxxxxyyyiyxxyxxxxxxxyxxhhiyyyiywxwwxxxxxxxxyyyyiyiyiiyxxhxxxxxxxxxxxxhyjyyixxyxyixxxxyxyyxxhxyyyyyxxxhxxxwwwwwxwwxyxwxxiyyxxyxxxyxyyyyyyyyywgwvxhwxwwgwgxhhvwhwwghgwwYYhiihvgxxhxwxxwwxwwxxhyxxxxwwwxWgxvvxggvxfhwwwvvxwhxghgxxvxvvwxwXXxYiiihhhhxxwxwghxwwwxvxgwhwwxwwxwxwxwIIyhiYhXhwxwgwvwhwwxwgYXxhYiXwguhwwwgxhwxxywxwXXxhvgxhvxxxxxxwyyhhhxyyyhyiyyyyywwwwwwwyxwwyyyyywwxwxwwxhhxxxxxxxxxxxxxxxxyxiyyixxxxxxxxxxxxxxyyyxyyyjyixxxxhxhxiyyiyywxxxxxxxxxhhhhhwvggxxxwxxxxxvyvwxwwwxhxxxxxwgyvxxxxwwwxwxxwxxxfxwxxxxwwwwxwwwxfhxxwxwuivxwxyhxxhhyxwxxxxwwvvwxxwwwxwwwxxhhxhxhxwxWxyvxwxxxiyiiixhyxyyiihihhwxxwxxxxxwwxwwhxxhxyxxyyyyyiixxxxxxyyzZZyyixxxxxxxxxxxxxxxxxxxxxxxxxxxhhxwxwxxwwyiiiiyyyxxxxxxihwwwxxihxyxxxxxxxhhxyxxwwwxwwxxxxxxxxyyiyxyxyxyxxxxxxxxxhwhiiyxxxxxxxwxyXyyvhxxhyiiyyxxxxxwxxwxhixxxyxxxxixyxxxxxxxxxxxxxxxhxxwwwwxxxwwxwxxxhxxxxhwwwwxxxxxxxxvxhxxxxxxxxYwxhxyhyhhxyhhxxxhwwvhyixxxxxxiiiiyxXyxjzjjzhxhxhxxhxhxxxxxxhhhhhxxxxiyyiyhxhhxxxxxxxxxxxxxxxxwxwwxxxyxyiyyihxihxxxxxhhhhiyxYyYYyyyxwwxwwxwwwxwxxxwxwwxwwxxxxxyyyyyvhwxxyxxxxxxyhwxyxxwwxwxwxyiyxxyxyxhxxhxxxxxyhhxxxyxxxhxyxixxxxwxxwxwwwxxxihxxxxxxxyxwxwxwwwhhxxxwwyhyyviyiiiyywywxwwwwwxxxxxiiwwwxxxhxxyxxxyyxxxxxxxyixwxyiiyyxxxxhxxhxxxxxxxxxxxxxxxxxxxyyyyyyyy9YyYYiivgxxwwwwwwghwxhxhhxwwvhwxvvxhxxxXXxghxwxfvgwwIiyiXiXvhxXXxvxwvwxwWhxwwxxxwwwxhxgxwxhwxxxgxxgfxxhHhxiYXhvvxwhvvXWxwwhwwxXxxwwXxuxXxihHHhwgwwwgvxhhvxhxvvhwvxwwwgwwwxwvgxxIiiiIiihhxXhhhxxxxxxxxiiiyiiiWXvwhgwiyiyiyyxhhhhxgvggwvxxwxhwwwxwxxxxwxwwxxxxwwwxhgxhhvxggwwgxyxxxxhxihxxyggwgxxwxxxxyxxxxyxxxxxxxwwWvxgwuyxxxwywxxwxiyyyiyyjjjjjxhxyxhxxxxxxxxxwxwxxwwyiiyiiyxhxhxzzzzzxxxxxxxxxxxhiyhyxxxxxyyyyyxxxxxxxxyyyyywxwwxxxxxxixhyyxxyhxhxxxxyxxxxxxxxxZjjZjxxxiiyiiwwwxwwwwwwwxwxxxiiiiyyyxxxxxxxxxxxxxxxhhxxhxiyyiyxxxxxxyxyhxhhiyyiyxxhxxxxwwwxIiyYIiYxxxvgxhhxvwivxxghvWwwvwXxvxxgvwxxwxvxhvvvgwwXyYYXixwwgxhxhhhhxxyxxvfxgwwvgwxxxxxwxwXwuXhxhXihwxwxwgxwxwvuwixgghfxhvwggwwwgwvwxxvwxhhwxwwhwwwwhhxxxuxwxwxhwvYhhXihvhvvwhggwyywwxwxxwxxhxxhhhxxxxwwxxwxxxxhwwwxxwxfwgwvvwhhwxhhxxxxwxwwxyyyxxxxxxxxxhvuhvwgvwXXvxxyxyyhxxhhhxwxwxxxwxwxxxxxxwwwwwwxwxhxxhhxxwwwwwwxwvgwwfwvxghfxxxxxyyyxxxyyyxxxxxxxxxhhxhxwwwwwwwxxhhxhywxxyiiyyxxxhxxyyyyyxxxxxxyixyiyiyhiwwwwwwywwwxxxxxxxxxxxxxxxxxxxyyzyixxxwxhhhhhYyYyYyywwwxwwwwxyxwwhxxxjzzjjxhxhxjjjjZiiyiiywxwwxwxxxxxxhhhhxxxxxxxxxxxyyyyhhxhxxxxxxxwyxyyjyixxxxxyiyyixxxxhxhyhhyyxxxxxyxxxxhxxyxxxixhywwxwxwhxxyzzzzzxxxxxxxhxxxxxxxxxwwwwwwxhhxxxxxxwwxxyyyyyyyywwwxxwwxxxxxxwxwxwxxxyxyyyyiiixxxhhhixxxyyyhxhxxxxxxxxxxwwwwxxwwxxxiiyiiyxxxxxxxxxyyyiyxxxxxjjjzjxxxxxxxwxxhxxxYYYYyyyxxxhhhhxxxyiiyyxxhxhxxwwxwwwxwwxxwwwxwxxxxxxxxxxxxxyyyiyywxxxxxxxhxhhhhhxxxxxxxxhhhhyxhyhhhiyxxwwwwwxyyzyyxxxxxxxxxxxyzzzzyxyyyyyhixiyxxxxxxxxxxyyyyyxxxxxxyxxxxxxyyyyyxxxxxxyxyyxixihxxxxxyxiyyiiiywwwwxjjjjjihhhihx[[[[[[{zzzzzzzzzzlllllllzzzzzzzzzzkkkkkk{kkkkkk{xxxxxyjjjjjxxxxxxxyyxyiiyyiyyywyxxyxxxxxxiiiiiiyyxxwxyxxxxxxxjjjjjxxx[{[[[iyyiiiixxxxxxyyyxyyyiyyyiyxxxyxyxyyyxxxxxxxxxjjjjjxyyxxxxxyxyxxywxxxyxxxyyyyyxxxxxxxhxyxhxwwwxxwxxxxxyiyyiiiywxxxwxwxwyyyyyxxxxxxhhihiixxxxxxxxjjjjjhxxhihxiiyiiyzzzzzxxxxxxxxxxyxyyxyjjjjjYyyYYYyxxxxxihhxyhxxxwwxxwxwhxxxzzzzzhhxxhihhxyhhhxyyxyyiiyiiiiwwwwxxxwyyyyyxyxxxyyxxxwxxwxwxxxxxxxxxxxxixihhhyxxyxyxxyyyyyhhxhhyyyyyyyxxxxxxxxwgwhgyhxxxxxyxxxxxxhxhxyyxxxXXhhhhhxxxiiiyyiyxwxxwxxxhxxxhxxxxxxxxxxvhWvxxyuxxxxyxxxxxxxywxxxyyiyyiyjjjjjxxx[[[{[iiyiiyxxxyxyyxyxiiyyiyixxxxxxxxxxxxyxyyyyxxxxxxxxyxxjjjjjyyyyyiyxxxjjjjjxyyxyxxyxywxxyyxxxxxxxxxiiyyixhhxxxxxxxxxhxxxwwxxwwyxxxhxhxhxxxxxxxxxxxZZjjjhhxxxjjjjZiyyyiyixxxxxxxxxxyxxxxxxyxxxxxwwwwxxxxiiiyiiiiyyiyxwxwwwxxwXhhhxhihxyhhxhxxxxxxwvhhxxxxwYiyiYiYhXhhhwgxwgxwwYiyYYYYwhwwwhxvvhvwhvvxwhvxxxhhhhhvwhvhxxhvxgxwvxwwYYyiYiYxxxxhhxhxJjjjJjJxxxxxwxgwwxxwhxhhxXxhYxwxhxxwgvgwxhxwxxxxhhxwwxwxwxxxxxYYYyyYyHHhihiiiiiiiuxguhwywvWWvgxwwxxxxxxwxxxwxxxwwwwwxwxxxxxxxxxxwwwvxxxwXXwhhxiihyiiyXXXxxxxxxhhhxyhxyyxxyxhwvwwxfvxxfvxhxxxvhwwhXXhihwxxgxxxxxxxywwxwxxwwYhxXXXhhhwhhhwwxwxxwwhgwwXhxHXIhvxhwgwghxugvWwggXwxxxyyxXhhXhvhxxxhwwxwxwxwwwwYiiYYYihhxhxxwhxIYyYIYYxxxxxwxgwwxhhhhhhXhxXwghxhwwvwxxxxxxxyyyyyxxxyyxxxxxihhyxhxxxxxxxxhiyxyyxxxxyyyyyxxzzzyzxxxxiyyyiyywxwwwwyyyyxyyxxxxxxxxxxjjjjjixixhyhhhhhhxxwwwwwwwyyyyyxxxxxxxxxxxxxxxxxxxxxihiiyyyxxxxxxxxxxyyyyyxxxxxxyyyxyyxwxxxxhxyhxxxxxxxxxyyyyxyxxxxiyiiixyxyxxxhhhhxxyxxyyxxyyxxwwxwxwxwwvxfwvxxxvxggwwwggwhhyxyxxxxxwwxxwwxxwxhxxhyyyyxyhwhxwxwwwwhhxxxxxxxxxxwwvwixwxxxyxxxxxxxxhhhyxhxwWXxxwwxxhxxhhhxxyxyxxxxxxXvWvxxxvxxxxxxxwgvwhhxhxxhxxxhxxyyyyyyyxxxxxxhhxhhiyxhhhxxxiyiyiyyyyxxyxwwgghgwxyxxxyyyxyyxxxxwwgwhwvwwwxxfwfvwwwxxxXvWwywxxixhhxhxxhhxhxwxwwwyyxyyyyyyyyggxxwxhgxxxwxwxxhhhhhhxxxxxxxxxhyhxiihiiiyWWxxxjjjjjhxyhhhhywyxxyxYyyyYyywwxwxwwxiyyyiyizzzzzxxhxxxxxwwxwxxwwxxxxxxxxxxxxyyyyyxyxixhhihhyhxxxxxyyyhxxyhxxxxyyxxxwxwxwwxzzyyyiyyiixyyxxxxwxxwwwwxwwxxxyxxxxxiiyyyxxxyhxhhxxxxxxwwwxiyyiiiixxxyyyyywxwwxxxxxxxxxxyxhxxyxxyxxwxxxwwxwwyyyyhxhhxxyhxxxhxxxxxxxxxxxwxwxxixvxxxxhxhxywwwwwxwwxyxxihxYixxxxhxxhhhxxxxxxxxxxxxyxxyhhhgwhyv9iyY9YYxxxgwvwhhgwwXvxvhXwwHhhHhwwgwwwhwvXgwwXhwIhXHYhxxgxwvXwxvwxvhwvXXwwhxhwvgwwgghgggxxxxxwwwwwhhvIhxhHhihvhvwgwvhxvXXwwuXxwxXxxgxggxhhwghxwvwXxvxXywwxwxxwvwwxhhggIyiIiiihfhwwvVwxwwxhghhwxxwwgxxyxxvwfygfwgwwgghxxxyxxvXwvvvWghwxxwhxvvwhhhihwwwwxwwxhhxwxxxxwwwXxvWhhvxxvhwwfVwwwxwwxxwwwvwwhxgxxxxxvxwhxfhgvwvwxxWxxwxwwwxhxgvhwhXWxxuhvwvuFYYyYiYYhhhhhwhwhxgvguhgyhxxxxvvwfwwxwvxxxxXiXYXigwwgwwxvvwwxxxwgvvwxXvxxXwhvxwhxwggxhgwwxxxwwggwhhxHhIiwwgwhxwwwvhgyhxxxvwWwxwguvwfwvfhwwxyhhxvxguwxhwxwwwwwWihXhYhIYiiYihwxwwhwvxhhxhxhwxhxwwwwwwxwvwxhvwwwwwwhgwYiiiYYwxhwhwhhhhxvvxwxwxxxvwxxxhxwvhvhvihvvhvXwvXwxwXXiiIiwwxxwwgwwhxhwxwgwxwwwxxwvhwhxvWwxwxgxwxxwvwwfggxgwvwhhxxwXhyYiYiHhxXhhXxvwwwwwwhwvvgwgwgwhwwWgwgwxwgxxxwwgwwvwhwwXxhXhhxxxxxwwwuwwwwxhxgxffvwvwhwwxxvwgxwwguXhxhhXXwxwxwxwxgwvuuggghgfwfvvvvwwwwgxxxwwgwwvvwvvvvhxvvgxwgwgxxvfvwvxvwxvvWguguhgg9XYYIwwwghxwXwYhywuXiXxxiYwwgxhwhhhxwvXgxywhxIhHhHhgvWhvwwWgIvyiiiwuYvwxhhXiyxYwgxxwxwgwXwhxiwHIYYY9hhhxwxXXIxhiXvwXwxxxwgYXhhwwGiYyyyhhxwwgwwwwxxXvXghyhgtXwwHwXYXHshxxxyyxwfxgxxggwwxxxywxwxwwxxxxxxxywxxwwxxxhxxxxugwgxgwvxxxxxxxxxvxxxxvxwwxyxxxwyxxxxxyxxxxxxxxxwwxyyyiwvxwxxwvxfvxwvxwwvgwwxgxxxxwggwwxxxwxhixyxxxhxhxxxxxxxxuhvwwwvwxhhxxxxwwwwhhwxwwwxxxwwwhxhxxxxxwxxhvxgghvxggvvfwwgwwwxwwwwwxwxxxxxxxhhhxxxxxwxwxxxxxxhhxxhxxxWXxxvwwwxgWwwxwxwyyyyzyiyxxyxyyxxyxxxhxxxxxxxyiiyyxxxyhxxyiyyyxxxhxhwxxwwxxxxxxxxyyiyjjyzyxxxxxxxxxxxxxxxwwyxyxhxwxwwwiyiixyyxxxxxxyiiyxxxyxxyywwwxwwxxxxxyxxxxxwwwwwxxxxxhxxxxxxxhwwxgwxihYiYxiiyhyxxiwxxhiwyYwxhvwwxgvxwwxwxxxwiHhhiXyxyyiywhwxixxYyXhiixxgwxwgXxgxxhwhxyyxiwhxxxxwyyyixwhyhyyxxYyXyiiiYwwxxhixxxxxwwwiwxxxxyxyxxxxyxyxwgvxxxxyygxxwxxxyxyxyxwwyhxxyiyxwwwxxwxvxwvxvyyyyxyyxyxyxyxwxxyyiiiiywwxwwxxyyyyywxxxxxxxxxxxxyxxxxxxxxxxxxxxxxxyyyyyyyyiyiyxxxxihyxyywwxwxjjjjjxxxhzzzzzxxhxhyxhhhxxxixhxyxyyxxhxixxhxxxiwgxxhxhhyhhhxxxxyhixiyyyiyyxxxxwwyxwfwwxxxxxxhwgxyxxyxxxxwwyxgwhxxxxiyiiiiixxWxxwxwxxxxxwxxwwwxxxvxWyxvhhhhhiwwxxxzzjzzxyyyyxxxxxxxxxyxxxyxxzzzzzxxxywxyxyxxxxxyyyyiyiixyxyyyxyyyyyyyxxxxyyxxyyhgxhwwxxxxhwwhwxhxjIiiijighvxwwXyxyywhwhwyxwxxwxgXyxiigxwxgwwxxxhxiYyyiyhixxiXwwwxhhhwxiwxhxxwZIiiijYwXywxhvwhyxxxwiYiiijhxgvxgyyxyXvhygxXwxxxxgvhhhhxvwwxxwwxhxhxxyyyxyxwwxxwwwwwvvwxfwwxhxfxxxxxwxwwwyvwxwwwggxwxxxxxxwxwxxxwwwxxxhxxhxwxxwwwxwwwvwxxhhgwwwxggvxyyyyxxwgxgwwXwwxxxxxxxxxxxyyxhxhwgxxxvxxxwwwwwwwwwwwxhxhxhhxyiyyyxxxwwwxyiiiyxxxxxxxxxxxxxxhhxihxyxxhxxxxxxxxxxyiyyyxxxxxxxxxjZjjjiyiiyyyxxxyxhxxxxxxxwwhxhxxxxxyxwwwxwwwxhhhhhhyyiiyiyyiiiyxxxxjzjjjxxxxxxxxxxxhxxwxxxxxxyyiiixxxxxxyhxxihhxjjZZjxxxxyyyyyyyxxxxyxxxxyxyvhgwwxwhxxxhxxhhxxyxwihxxxyxWgxxxyyyyyiyhhxhhwhhwwxhwxwxxxyxyxxxxyxxxxxxxxwghggvwgxwwxwwwxxhxhhxwgwxwxxwyxxxyxyyxxyxxxxxwXWxwxwxXwwxwhggxxyhvxxxwwhxhxwxwiwiYxyiiYiixxYgvxvxwxhiYiYYYwhxxwwhwxgxhxwiXwwwxhgwgxwwxwgiIhhiXxxvYxwxhvYZyiiiIxxxxhhxhiwhwxhwhxyxxvgxxvxxwwwvyyxxxxxyyyyxxxwyxwhvhxxxxxxxyhxyxxxxxxyyyyyxxxyxyyxyyzxxxxxxwhwgwwxXhhhhvfxvxwgwvxxyxhxxhhhyxhxxxhhhhhyiiyyyywhwxgwvwwwyxxxxxxwxvgwggxhhhgvxxxxyxyxxxxxyyiiiiixxwwwwxwxxwwwxxxwxgwhWxuxvhwvwWWwwwxuxwhxyxxhxxxhxyxxxyxwwxiyiihxxyiXyxiyyyiiywxxwxxxxxxxwxviyyiyiyxxxwxwwyvxxhxxxxixhxyhxxxxxxxhxxxxxwxyuxxywxxiiyixxyxhxyyXyyxxhxxxiyxxyyxxwxxxxxvvxwwwxgvwwgwgvwxwwvwgxvyywywxwxxxxxxxxxxxxxxxhhgwvwxxwwxwyyyyxxxwgwwwxxwixxxxxhxxxxvxggxxxxwgyhxiivWywwwxwyvxgwwwxwgvxwxwwwyvwxwxwwXXhhxxxxxgyyiYitvWhhhhhwxhxxwwwvxxxxwxhhyuxxxwwwwwwvgwwvwxxyuhhugVwggghhvhxwxxyvxxxxhXXXywxxhxfxxixxxyxgxwxxwhvwfvgxxxhyvGxxwwxwxwwwxxxxxxxwgxwwxwwwxxxyyyxxxxxxwxwhyxxxxxhxxhxyyxzzwxxwwwxxwwxxvhwvhvgxwvxxwwwwxhxxhxhxxhhhxyywwwwxxwxxfwxgvfwwwwxwwwwxxxxxxhxxhwwwwwxwwwxxwxwwxxxxyxvwwvWWhgvxxxxhhhxxxhxxwwxxwwxxxxxyyyxwxwwwwxxhwwwwgvggffhwhxxyyiwxxwxxxxwxxwxxxxwwxwwgxxxyxxhyxxxxxxxyxwyyxxwxxxxxxxwiwXxyihxxhxxxwxwxxxwyyxxxxiyiywywhyyvwguxgixxiyyyyyxyyxxxyywywvvwvvvhxvxxxxxyxxxxxxxxxxwwvxgXhhxhyhixxxxxxxxxxxhyxwwxwxghwixvxYwyxXyywhyxhyZzzzziyyxhxwwwwyyyixihxxXgwhvxxhXwxxhhwxyjyyyhhiihxxXhyiIXwxxhhwYyyyixyxyxhhxxxhjjzyyyyyiwgxwxXihxxYxhwxhhxvvgxxxwxxhwgwwyxxxxxxwhgwwhggvxxyxxwxYXyuvWxhhhhhvgwwxgwwvwxxxyxgyxxxwwvvxxWgwwwwhgivfVxxhhxwvhwwwwxhxxxiihXXxxwxxvxxyxxxxxgwwwwwivgfvfxhhxuWhhxhxxxxxyxyhgxggxxxxxxxxxwxwwwhgxxwxgxwwwyyxyyyxxxxxyyxxxwxghwwvxvxxhxxxxxxxyxxxwwwxxwxxxxhhwwwxwwwxhxhhywwwwwwffxxxvwWxuwvhxxhxxwwwxxxwhwwgxyyyyyxxhhxxxhyxwvwxwxxxxxxyyxyxxxhhhxxyxxxxyxixxwxxxwyxxxxxwxwwwwxwwxxhxxxxxxxxyixhxwxvwhhvxhhwxxwxyxxyxxxxxvwvxwwyvwwwwvhwhxgvwwwwgxwxxxxhxyyxxxxxwywxxxxhxwwxwwvxyyxyyyxxxwwwxwxxwxxxxyywgwwwvxxwxxxwxyxxxwwwwzxxxxwwwxxxxxhxixyyyxxxxhxxxxywxxxyyyxhxxxxxyxwwwxwwwxxwxwxghwwxhwywxhXYxhiiyyyhxhxyyxywhywivwhuwwxxvihiIyxiiixxxhwxwxhhiYiyihwwwvxxhwhwyxwxxxxxyxyiixxyyyywyxvxhxwxwwwYhYyhxXhxxvhxhvfwwxvwwhhxyyyxhxxxxxxyxyhhxxxwhwwwwhhxxxwwwwxwwxxxxxxxxxxxxxxxwxwxwwwwwxvxxgwvgwhgxxxxwwwwxxxxxwyxxwxxyxyyiiiwwwwghxvxwhvwWWwwxwxxxwwwwxxwxxyxxxwxwwwxxhxxxxxyxwwxxwwxxhxhxxxxxxxxxiiiyxxxxxxxyyyyyxxxxxxxxxxhhxxxyyxxxxxxhhyiyyiwwwxwywwzZzzZxxxhxxxxxxxxxxxxxxxiiixixyxxxxxwxxxwxwyiiiixxxxxxxxiyiixxxxxyyyuvgvwwxxwwxhxxxxwvhvhxxxwwwxwxwwxxxyyxxxxyyiifgwgwhgwwwwwxwwxxwwxXwXhhxxxhyyxxwxwwwwxwxxwwwwxwxxwwxvhhyxxvwwvhwwgxxxhxxhxhxiiyiyyyxxxxxxxwxwwxyxyxxyhxxhhhhhxgwvvwxvwxwwxgwvywyywwyxxwyxikZzzzkzxivxhixyixxxwhyvvhwxxhwvxxhxwywgxxjYiiijivhhxiwvxwiwiviivxwxwyv[Jjjj[jYxxxwxwywxxwjYiiijiwxhvwwxxiyxwhxYxghxfxxxxxxxxyxxhixixyyyyywwwwwxyzzzzxxxxxxxxyyxyyyxxxxxxyyyiyiyxxxxxxxxxxxyyyjjjjjxxxxxxxyyyyyxyyhxhhyhhihxhiwxwxwxxyyxwhwwwxxyxyiwgxvxhxxxxyxxyxxwxvxxxyyyxyyyhxyyxxxwxyxxxxxwwfwxxxhxxiiixyyXyyxzzzzjxxxyyiyxxywxwyxxxyyxxxxyxxyyyzzzzjxzjzjZyhyixxxyyxxyyxxxyxxxyyyxyyyyy{k{kxxyyyyhvxxvxxxxhyhxxiihyhyxyyyywwwfwwxxxxwxxxiyyXyyxxxxyxyxwwxvyvxxxihihiiiyyxxxxwxgvxxyyxyyyyxxxxyxxwxxuwhwhxxhxyxiyhxyyyxywxwhhyyxYhyxxxhxxvxxivhYhhIhixxyyywxwXyihxixwwywwxxwhviYyxYiyxxxhxwwYYyiYYxwxwwwxhixiixxhvwxwxuhxhxhxxyyyiyxyxhxxxwxwwxwxwwhhxyxxxxxxxxxxxxxxxxxxxxxxyyyyyxyyyyyyxyyyxxxxxxyyxyyxxxxxxxxxxxxxxxxxiiiyixxyxxyxxxhxhxhyxxxxxxyyyyyxxwwxxxxwwxwwwwxyyiiiyyyyyyxxxxxxxxxxxyyyyyxxxyyxxxxxxxxxxxxxxxxxxxxyxxxxxxxxyijiyxxwxwwwwxgwwwhwxxyyxxxxxxwwxxxxxxhhxxxxhxwwxwwwwhwhhhxhxxxxxyxxxxxxwwwwxwwxwxxwwwwwgxxgwvxxxxyxxxhxwxgwwxxwxxyxxyxyxxxxxxwwggxxxxwuwgwxwwhhxvxxxxxxxxxxxxxxxxxhxxxwwwwxxwxyxwxxwwhgwggwwwxwxwyiiixxxyxyyxyxxxxwxxxxwwwxxihxxxxxxxwwwhwxhwwwxwxxxxxyxxyyyxyywvvwgxwxxf:YIYYxwwwxwxwggghgigvXYiyxyYYxwwxxwxxXwuxwxwfgXhxxxxIY8XXXvffhwgxWWXgyxuxhgwXxxxxwXihhiHhwwxfhgxxXgWIiIiIXgvwwxggvxXIYyiiiYwwhxhwHgvxghvwwGYhxhhhXxxyyxwhxxhggWwvxhVwhIYIYXvgxwxvwxxvwggwhwHhxhHiixxhxxYhhXxwxhyxhhXhhhwgwxgxwwwwhghhxvYYyiYiYwgxxvxxxvxvhxxxYiiYYYiwxwxwxwwwwwwwhhwxxxxxxhhhhxwwvxwxwxyxxyxvhwvgWWwvxXwxhhYhxhXhhwvhvxwvhwgxwxhwxwwwwvxxxwwxxxwwwYXyiYhuhguxhggvwwhhvgwwwxhgxwwwwwxhwvwhxhhvwwwwwxwwvwgwwuhhwvihhYiXggxihwwwxwwwwwwwwgxxhxwwgxwwhxvYXyiiXhhxhxwxvxwxxwwiiiiihvwvxvxxxxwxxxhhwvwwghgffxwwxwwwWxwXxxwxXxvhwvghyxxhxxxygvwxwgwxwgXhxxXhXvhhxxhhwwgwxxwwgwwhhxhHXXwwxxwxxwwWvwxhYhhhXXhwwwwxwwwwhxxgwiYyyYiYxxywgxwwwvYiiYiIwgwxwxxwhxhhxwwhwgxxwvxhxwwhXxvxxxwwWxhxxhhvixxihhxxxywWxxgvwxxwvxyyyxyxhhxwwXwxgwxwwxwwwwvggghhxxyxxxwxhixuxyyxyyyxhhhhhxxwgvugWvwhxwwwwvwvhxhxxxxxxhxgwxwhxyhyyxxxxxxyxxwhwhvwxWWvixxxxvGiixxyiixxwyxxk{{xxxxwyxwxyyyyyhxxiXwvxwwwwhxwhwwwywxzzzzzyxyyywhxxxwyyYxyyYYigxxjzzzjiiyiwxxhzzjzzyxyyygxhxhxwyhwxyiuXxxxxxxviuxggxhxxxhxxhxyyyyyyyyyxxxxxhxxhhxxyxxhhhhxxxxxxxyiiyyyyxxxxxxhxhxyxyxvxvxXguxwxxxxxxxxxxxxxwihxxhyyhxxxxxxyyyyxxxxxywxxxxxxxxwgyxxxyyyiwxxxxyyxxxxxxxwyxhyxuxxxyyyxxwwxwwxxxyiyyyyyyiyxyxyxxxxxxhhxxxxyyyxxvwgvggxgyyyyiyiyyiyiyxxxxyhxxhhxyyyxxhxhhxzzzzzzxyyxxywxwvxgwyyxxxxxyyyyyyywxwywwwwxxxwwwwWxxxhhxxxxxzzzyiiyiyxywgxxxxxxxxzzzxxxxxyxyhxxxyxxhgfwhgvwxxywxgyyyyxxxxxxxxxxywwhgwxxwxwwyxxwyhxyhihxwwxwwwxxyyyyxwxxxwxhyxxxxxxvwxwwwvhixxhxxxxxxxxhxxxhxxxxvxhwxhwxhxxxxxxxxyxxxxxxxxxXhiXxxxxxxxxhxhxxxxhwwwwwwxwyyxxxxwxhxhgvXwxwyxxxxyxxxyyxyywwwxxwgxhxyxxxxxxxyhxyxxxxxxxxxxxxxxhxhxyxxxxxwxxwxwxwxxxxxhhhhxxxwwxwxyyxyyhhyhhvXwwvhXixxwywyiyyyyyxxxxxxxyfgwvvwgxwxyhxyxxxxxxhyxyxxuhwvwhiiihhxxxxwxwxxxxxxxxxxxxxxvhgxhxvxXxxyxwYxyhxhxxxwZzzzjyyywyhwwhiyyyYyiyiwxxxxXhxxhgyyyjzjyyXwyxhiviHxhxhYhyxxiiyyyYyyxhhwxhhYwiiixxxxxyxhwgwwghwxXxyyyXvwghhvxxxxxxxxwxvgwvxxyxxxxxxxxxxxhhxxxxwxxwxwgwvwxxxxxxxxxyxwxwxwwwxwxwwwwwvxxxwxhhwxxxxxxxxhhxxhxxyxxxxxxxxhhhhhgxvggxxxXXhhyhhxhxxhvhxvwhxwxhxxhyxxxhxxhxxxuxwxwxhwvyhxxxixvwhwxxwvxxxxxxwxxwxxxhwxxxwwghgxxxxxhyyxxxhhyxyyyyyyYyxyxwwwwwxwxwwxxxwwxvxwxwwwvxxxWwiyyiyxxxxxxxxxhxxhxwwxwxyyxwwxwwwyzyiixxyxxhxxyhxxyxyxxhxhxxxxxyiyyyyxxwwxwxwyxhyxxxxxwxwwwwxxxyyyyyyyyyiyyiyxyxwwwwwxwwxxxxxxiiixxxxhxyxyxxxxxyxxxxxixyixxwwyyiiixxxxhxxhxxxxxxxxxxxxxxxyyyxxxyyyyi9yiYYivhxwwgvwxwxghxvhgxxyxxxYhxxhIyXiihvxxxxXwwgwxwXwhxxvgywxhwghxwwhvhxxvhyIxhhiXvhwxxxYwhywyXwwxxxihhhIxwwgwxxxxwXxxxxwwwgxwgviIiiiiiwxhiwxxxyyxyyyyxyxxxyyyyxgxgxxxxxxxiyhxxxxxyxyxwxwxxxxwxyxxyywvxwgxxyyxixxxxxxhxwgyvxyxyyhiihiiiyxxWxxwjjjjjxxxxxhxxhxyhhihxhxxyhxyyhhhyxxxzzzzzyiyiyiixxxxyyxyxxxyyyyyxyxhxhxyxxyxywxyxyxxxyyyYyYyxxxxxwwxwwxxwxwwxxwxwwwxxwwxyyyzzxhxxwYyyyYyywwwxwixwxxywxwxxwxxywxxxxxgxxwxxxxxxxxhyyxhyxwhygxxuiiiyiiixxxxxywxwYxhxxxxxxxhihihiyiihyyxxhhvxwfyyyyiyxhyyxiixywxyxxwxxxxhwxxyyyyyxywxwxyxxyyyyxxyxyyxxxzzjzzxxiihxxhxxxxxxxxxyyyyyyyyzzZ9YYYZiHihihhwwhwhgxhgvYwxxyhwwxxxxXwghxvwxxxiIiiijhwxxxxXwwhvxxyXwXyxyyxxxxgwXyxxxwwhwhxjIiiijiyyxyXhwxhgwhvxgiihiHyxwxxxywwWwhiwwXxxxxwxxwwghiIiiiixwxwxwxwxxxxxxxxxxxxxwggwgwwxxxxwxhvxwXvwwWvyyyixxxxxxxxxwwxxxxxxxxwwwxwwwwwwxwwhvvfwxxxxywxwgxxwhwvxwggyxyyyyxxxxyhhxxxxxxhhxxxyiiyyxhhxihhxxxwwwxxxxyyxxxxxiiyyiyiyyyiyxxxxxxxxxxxxxxxwwwwxwwxyyyyyxhxixxxxxyxyxxwxxwwwwxxxxwwxwxxwxyyyyyyiiyxxxxxxxxxxxhxxhxwxxxxyxxyyxwxxyyyyiixxyxxxxyhxhxxxxxxxyxyhhhhxxxwwxwxxwwyyyyyxxxxxyxxxxxxyxhxhiyyxxxwwxwwwwxxyxxxyyywvxvgwxwxxwwxxxxxxxxxxxggxxhvhxxxvxwwwvwhwxwwxhxvxxxxxxxxyyxwwxwwhhxhxxxxxxwwxxwXxhYxhhxxxxxyyxxyyxxxxwwwxwwYIxhXiYxxxxxyiYxwxiwvwhxvwwgxwgvwXxxxxwhIyYhYhxhxhyyxxYyyiwwxhwhywihwiYiiiiwhwwwxWixxyiwxgxghhxwxxxwgXhhiywhwxwyixxihYyhhhigxwxxhhwWxxyxxihwxwvvxxxgWwxhxxwxyxxxyxhhihhxyxgxiXiwGxgwXvhgWwwwgwwwxvxwgwxxxxhixhixyxxxyxxxwwwhxgwgwvxwxhXgVhhhhhYwxxxiiiyyxXwgXXhhwyhixuxxxxxyiixxhhvggxhxvfgwwyvgivwvWhwhgwvxhhihxxwXvxvxXxwwxwxxxxxxhhyxyyxxvwxwwxwfvwwwyhhxhxyyyyyyxxyxyyyyvhxyhxxxgwvxxxxxiyyxxxxxwxxxwwwhxxxxhiyixiiygwwggwxxxWwvhuyxxxvxxhxwxwxwwwfxwwxvxxxhxwxxwxxwwwwxwxxwwxwxggxxxxxxxhxxxxxwixgxxuxyxxwxxxxxxvxvxywxxxxxgxvxxwxxwxhxxwygvxxxxxxxxxwwwxxwxwxwwwwwfgxwvwwgwxgxxyxxwxxxxxxxxxwxxxxgfwgxgxxxxvgvxvwvwvxvvxWgvgxwwxxxxxxxxxxxiiiyyxxywxwxwwwwwwwgxwxwvxxxxxxwghwwxxwwxwxwxhxxxyyyxxywxwxwwwwwxxxwwvyyyyyxixxyyhywwxxvwxwgwwxxxxxxxxxxyyyyywwwgxxxyyyyzxxxhyyyzzxxgxgxvhxuxxxwwWxxwhgwwhggvxwyxwxxxxgxgxxxxvxxxxihvwXvwvwifwggwwfhXxhhxxxxxwwxxwwxxxxxxxhhhhhhxhwxwwggWgxxgwwwxwuhgxhxxwwwxxgwxWwxghwvwwihgxxxwxwxwywwwwwXXyXXviyyxvvGYYyiYiYvWWwvwhxwxWwwwwwXWvwxxvxxwWxxxxxxxYhhXihvwXwhhwuwxhxgwwggwgwvhgxhxvfxvfvwwwxgxhxwvvvihxXhXhwXwwxxuhvWvxxxuwxxhHhhhwgwwfvggwfxxhgxwfvwxgwgxwwgiiiiihXYyxhhhggwhwvxhxxxxXwwxwxvfwvwwxxwxhxxxfxwfwwgwgiiyxiiXggxxxvxWwxxuggxxxwgxxvWXvwhgwwwgwhwvhhyyxYhwgwwwvxvhwxfwxwwwwxwWwwgghvwgwwgvwwwwxwfwvgwxwgxhxxxvhhxiihiXhxhXxXxywvxvxwhhxxxghgvxgXxxwxvvwxwghuhuWgggxxxwgwwwvywghxhxvxxxvwvfhhxxhhXwhxxgwXXhihwxwwxwxwxhxxwghgwhyvwwggxxxxwwwwxwwhxxhxh)IXHYxxgwvwwxwwhwhXxwXiYxwxiwXxvgxwwxwwihtxiwwHxwXxhxxwg8wXGWXthgegvXwwwGhXvxxhyxHwhxxxwhhxhxYwWxxwxxhhwgwwvgixwvW9YXXIiXuxxhxxHYYxxixHghxhxvYhuyxXw8hiyxxyXxhwxxgwwhghwxhwhfxvhxgwX9YXXXwhxxgwhhYXxIiyYIiYxxxvXwwvhXigxxwhwvxwgghvhvgiyhwxwwwggxvhgvwwxxYhhhXihxgwhgwwwwxwxwvxgwhhYyyYYYhvxxgwwwggwggxwxxxxxxvwggwgvghhxvxxvwvvxxxwxxxhvwvXXxvvwwXwhhxuXhxhXihxwxwxvvvwxwhvxhhxxxxyxxxxxxxxxhyhiixxxhxxxxxxxhxxxhxxxxxxxxxwvhwhhxxxxxxwwwwwwxxxhxxhhhxxxxxxxxxxxhihXXxxxxxyyyyxxxxxxxyyyyyyzzzzzxhhxhyxyxxyyyyyxxwwwxxxyyyyxxxxxyxxxxhhxhxjjjjjwxxxwxwyyiyiiyyyyyyxxxhxhyhxihxxxyxxxxxyyyyyyyxxxxxxxyyyyyyyyyywwwxwwxwxxxxxxxxhhxxxxxxxxxxwxxxhxhxhxxxxxxxxxxiiyiiyyxxxyxxxyyiiixyyxxxxxxwwxwxxwxxxwvxwwwxxwhghwwwxxxxxxyyyyyyxxxxxxhxxhxihhxyhWwXwhgwxxyxxxxhxxxxwxxwxxvxgwhwxwvgwxwhwhgxhyyhhixxhxxhxwxwwwyyxxyxyxyyyxwxxwxxwxxxxhhhxgwvxxxhhwYYyYYiYwvxwwwxhwhhhhyhhhxxxxxxxhhJjJJjjhxhhhwxxwxxxxxwwxwhwxxhvXxhXXhxhhxvxwxwxhYiyYYYYvxwwvwgxwgvxvgggwxgwwxhvhxXXhxxxxxxxhxxxxgYiyYYYiwwvxhvxvvvxxxhhhxxxxxyyyxyyyhxhxhxhxxwwvwgwiyyiiiyhhxXXwxwxxxxwxxyxuhwwwggvxhhgwyyyyyyxwwwwwwxxxxxyhxhhxxxyxyxxxxxWhxxxggwxxyxxxyxyxxyyyxxyjjjjjyyyyyyxxxxxiyyihiyxyyyyyyyyyyyy[[{[[yyxyxxyyxyxxyxxyyyyyyyjjjjjxxxyxjjjjjxxxxxxxxxxiiyiiixxxxxiyyiiiyxwwwwwxwwwxyxyyyiixxxxjzjjjyyyyyyxyyyxxxxxxhhxxxhhxhxxxxxjjjZZxxxxxxxxxyyiiixxxxxxyxxxxyxhxhxyxyxhvwvxXXvxxxxhxxhhhxxxhxxhXxhXXxxyxxxxxiyyiiiyyyywwwxwwxvgwvxxXXxxxxhxxhhhxxwxxwwwYiiYYYiyyxyxxxxhhhxHHxxxjjjZjiyyyiyywwwwwwwxxxxxxxxxxxxxxhxxhhxxxiyyiyxxxjzjjjyyyyyyyxxxxxxxxxxxxxxxyyxxxxwxxxyyyyiyxxxhyhxxxyyxyxhxhxhxxyxxxxxxxxiyyiyxyxyxxyyyyywxwwwwwxxxxwwwxxxyyxyxxyxxxxxxxyyyyyyxxxxyyijiyxxxxxxxxxhhxyyyyyxxxxxxxxwxwwwwxxxxxxxwxwxwxxxxxxxxxxxxxxiiyiixhxhxhxhxhxhxiyyiyxxwwwxwxxxxxxxxxxhxhxxxxwxxxxxxxZjjZjxxxiyyyiyiiyyiyxwxhxhhxxxxxxihyxxxxxxxyxxxyyyyywwwwwxxxhxhywwwwwwwxxxxxxxhxhxxxxxxxyyyyyxxyxxxxxxhxxxhxxyyyyiyxyxxxhywxxxxxhxxxhxhyxhhhxxwwxwwwwxxxxxxiyyiyhhhhxxxwxxxxxxxxyxxyyxyxyyyyxyyyyyxxxxxyxxxxxxyxxxxxxxxxyyyhxyxwwwxxxwwixxiyyyzyxxyxxxxyyyyyyyyxyyjjjjjyxyxxxxxxixyiiiyyxyyyxyxxxyyjjjjjxxyyyyyyyxxyxxxxxxyxyjjjjjxyyyyyyy{[[[{yyyyyyyxxxxxiiiiiihhhhhhhjjjjjxxxxxxxxxxhxhhihxxixxhhxxxxxyyxyxxyxxxyxxyyyyyxxyyyyywwxwwxxxxxxxxxxyyywxwxxwwiiiyyiyyyyyyxxxyyyyyyyzzzzzxxyxxxkkkkkk{[[[[[[{zzzzzkkkkkk{zzyzzlllllllxxxxxxyyyyyyyxxyxxxywwxwwxxyyyyyyyyyyyxyxyxxxxyxyyxhxxxhxxxxhhxxxyyyyyhhhhhhxxxxxxzzzzzwxwxxwwxxxjjjjjiiiyyiyiihxxhxxxyxxxyyyyyxxxxxxxyxiihxhxxwxwwwwwwhxxhhhjjjjjxxyxwwxwwwxwwYYYyyYyhxxhhhyyyyyyxhihxixxxyxxxyiiiyyiixxxxxxxxyxxxzzzzzhgggyyyyyyyhxxhhxxxxxxxxyxxxxxxhvvxwwxgwxwwwgxggvhhhxyixiyyyiyyxhiXhwxgwwvfwxwwwwwxxxxxwwwxxxxwxxxyxyyxxxiyixxxxXWxxxgwvvxhxxwguwhwhwwhhwwIYyYIYYxxxxxxWvvxhXhwwiWvwhXwwgwhhiyxxwhwwvhvhvxhhYiyYYYivwxwxxxxwxxxfwwvggwhxwYhhHXIhwxxhggXhhXhxxxxxxywfgwgwvghhwwhwhxggwwwwwxxxxgvwxWYxvwvhhwwwfYhxXXXhwxwwvfwhhxhxxxxyxxyxxwwwxxjjjjjyyiyiiyyyyyyxyxyxyxhhxhyyxyywxxxwxwxxxxxyyxyxxxxxyyyyyyxxxxzzzzzhxxhhhxyyyyyxxhiiyxxyxxxxxxxxjjZZjxhxxxxxxhhxhhxhyxxxxhxhxhxhyhhhhhhhxhxxwwwxwyyiiywxxxxyyiiixxwxxwwxxxxxxxxxwwwxxwwxxxiyyyiyixxxxxxxxxxxxyyijiyxxxxxxyxxxxxxxxxxxxxxxxxvwgvxwvghhhxxxhxxxxxxwwwwwwwwwxxxwwwwxwwxxggwggwggvhhxxxwxwwwwxwvgwgvhggvxxxxxxxxxxxxxxxxxxhhhxxhhhxxxwwwwxwvxvxWWuxxvwvgXhxxxxxxhxxxhxxyxyyyyxhxXXhxyywwwwwwwxwxwwYiiyYiixyxyxxxxwvvxhXhuhxxxhxxiyyiiiyxhxxxxhxhhHXuhguxhgixxiihxhwhgwwwxxxxxwwwwwxxxhxhxxxxxhhxwwxxxxwwxvhxvgvwgxyxxyyyyxyyxhxhivyWvXgxvwvwxwwwxxxxxxxxxwxxwxwxxwxxxxxxxhxxhyyyyyxhhggwxxxhxvyyyyyyyhxiiyxxxxxxxyxxhxxhhhjjjjjhxxxhxxyiiiiiyxxyyyyyxxxyhxihxxxyxxxwwxwxwxwyyYyYYywwwxwxxxwzzzzzyyyyyxxxxwxxxxxxxxxyxwwxwxwwyyyhxxxxxxxyyiiyxxyyxxxxxyxxyyxxhxhhxxwxyyyiixxxyxhxxxxxxxyxxxxxxxxyxyxhxxhihxxwxwwwxxwyyyHhxhHiiwxxwhhxwwhxxhxXiXYixhhhxxhxwxxxxxy9iyY9YivXxhXxggxhwwxxwxxhwhhhwHhXHhhxwXXxgxwxgwhxxwIhxXHXhwhxwxhxwvWvxvvXXxwyyyvhhxxhxvXhHHxhxxixxhhxwxxwxxxwwIyyiIiYxhwxwvwwhxwwxIYhhhhxxyXwxwyxiixhixivxxxvxhyYYxyiixxwywyxhxxyYYiyYYwwxxhhyyxxiyyyixiywwxwxixyxhwxxhwYhyxyhhxvwxxwhuwxwxwwwxwxxyxhxhhhxxxxyyxxxxxxwwhwwwwxwxxxwwgxxgvxxxxwxxwxxxxhxxxwxwwgxwxhwwgwwxxxxxxxwwwwxxwxxxyxyyxyxxhxxxxxhhwxxxwxggwxxxxxxxxxxxxyyyyyyyijiyxxxxxxwwxxwwwwyyyyyyyxxxwwxxxxxxxxxhhxxhxyiiiyyxxxxxxyyyyyxxxxxyxxxxxxxxxxxxxwxxxwwxwwxxxxxxxxxxxxxxxxxyyyyyxyyyyyxxxxxxxyhxyyxyyxwwwxwwxxxxxxxxxxxhhxhxxxxxxxxxxwxiyiiixyyyyxxxyiyyyxxxxhxxyhxyxyxxxxwwxxxwwxxwwxxwxxyyxyyxxyyyygwwwhggwwxxxxxxxhixxxhxxxxxxxyxxwxwhwxwhwwwxwhwuhxgviiiyxxxxyxxxyxxxxwxxxwwxxxxxxxxwxwwxxxwwwwwvxxwxgvfhhxhhvwgxvvXXxXhxhxyyhixxhxwgwvwwxwhvxhhwxxwxxxxxwxwxwwwxwhhxhxxiwwxwwwxvxwwggvWggvuhvxwwxxwgxxvxgxyxvvhwyywgwfwvxxiYxhixwwwwwhhxhxhXxxxvggIXYYHgxguxhvwWYhvyyhxWyixyyXxxhwxgwwwxxwwwv9XYYIxxgxwwviivxyhgGgxwxxhhwWxXxxyxwYWhvxxhhXhxgxhuywuVHwgIhHtxwXxwwxxyhxxiyYxwgxhvhfxwiXyhxIwhxwwwxhwwxxuwWwwghxvhxwvWIXXY9wxgwxhihhXhYhwvvwxvwxgvxxxxxxXXxhhvgfggwggvgghgwwxwxvxxxwhwhwxhxxwwxxxwwYiyYYYixxxYYyYiYYugwgxgwvxgxwvxhXvXwxxgvxxxvhgwWXwhwXvgxwxwwwwhwgwxhghhxHhIivwwwxvghxgxwhxxgwhwxwwwgvvguwxggvxwwxhhyYXiyixwwwxwwwwwxvgwwvfwwxxxwwxwwxgwwxwwghgggxxwvxwwwwwxwwiYiiiiwghhxvwwhhgwwwvxwxxgvvxxwxwwwyYhYyXgwfggwwfgwwhwxgwviHhhiXxwgwwxvwwwxxihxhhxhxwwgwxwXyhyihguGgvhwyXWvxXvwxwxgwwwxgygxxyxwwwxyxwwxwxxxhhvhywvXxxxwhwgxxhghxhxhhwxwxxwXXxihvhggwvggwgfwxxvxXxwvvXyxxxxxxwxhwxxxxxxyxxwwxxwhhxxxvwixyxhhhhihhwxhwgwxxWgvxxviwxvwufXwwxyyyyiyywxyxwwwwwxxiiyyyxxhxxxxxxxxxxxxxxxxxxxxxxyxyyxxxxyyyiyxywwxwxwyyiiyxxxxxxyhxxvyhuwwhwxxxwwwgwiyyiiyyxwxxwxxxxwxxhxxxxhhhhhxxyhxhhixvwwwwxxwwgxhxxixxhgwwgxyxyxyvhvhvxhhxxyxxxxxxxxxxxxxxyxhxxxxxxxxwhwhxXxxxxhvwyXvxxXwxwxwhxgwYYyiiYYwiwwwxyxxxxiyhxixwxhhwyxghwhwwhwxwviwhxyvwyvwxvYYhiYYhIYiiYiyxwwywgwvxhwxwhghxxxyxXxXyxwXwiwwxxwwxwxwxgxhwXhxYiHhxxwvhxwxhghgxhxxxxxxwwwwyyxyyyjiyiyxhixhxyxyxzyiiywwxwwxxwxxxxxxxxxxyyyyyyxxxxyxxxxxyiiyyxxxxxxxxxhhxxyyyxwxwhfxhwxxXXXxhhhxhxhhxxxxyyxxxxxxwxxxggwxwxxyxxyyxxxxxxxxxhhhhxxwwwhhgwxxxxxwxwxwwxxxxxxxxxyxxxyxyxxxxxxxxxxxhxxhvwhhgwxxxwxwxwxxxxwwwxxxhyxiiyiyxxxxxxxxxxyxyxxyxywxxhyxxxyihiihhxzzjzzxxzzyywxxxxiyyxyyxxxwxxxxyyyxyyyyxxxyzzzzzyywfwxwxxxxxxxyhyhyyxiyhxhxxxyiiyyyyvxwwxwxxxwxwxxywwwyvxxxxXxxvwxwhyxxxyxuxvxwxhhhhyxhxyxxxihxhhyyyyyyyxxwwxhwxxxxxxwxwxxwwyyyyywwxwwxxyyxyyyiiiiyyxyxxxxxyxyxxhhhhhhyyyyyxxxxxjjjjjxhhxxxhxxhhhxxxxyhihhxyyyyyyyxyyyyxxzzzzzxyxxxxxxhxywwwyyhxiwfwhxjXhhhiivyvxxwvywwxwxvxgwxiwxhwvxwxwvyvxywyyhyyjIiiijixwvwhxyvxuxwxhxhxxwyxxxyiXxxhyixfxwhxixhxyZIiiijYuivxwxywwxvxwXxyxgxvxxhwxhgvxvxxwhxiyxiihvxwwywXxxyxxyxhwxxyxxxiwwwxyyyyyyyiwhxhwxyxxxxhhhixxxyxyxxxygxvwhwxxwyxixhwxyyyyyyyyyyixwhwhwxhxxxxxyyyxxwhywghgxxxxxxyyxxxwiyyyyyyyxxxxxvgwvxfwgxvxyxxxxxxwxwxxxxhhiixxxhxxvxywxXguwwwwwvxyxxxxxxxxyyxxxxxwwwxxxxxxxyxyxxxwwwxwwxgxgwyyyyyyyyyxxhxhixxxwxxxxwwywiwghhxxxhxhxwwwwxwwxxxxxxxhhhhxixxxxxxxxxxxxhxxhhhxxxxxxxwywihghxxxxxxxxxxxxxhxhxxxxxxxxxyxxxxxiYXhYhhyhyxyxyxxhhxxxxxyxwwwxxxxxhxwhYwxxxxyxyxyxxyyhyyyxxyhxxxxxxxvwhxivwwwxwwxwxxxxxxxxxxxyxxxxxxxxxxxhyxyihyxyyXwxwhxhwiwwhxyiiixxyxyxyyyxyXxxyXyyyyiwgwxxxwxhyZzzzjiwxhxwyxhwhyhxhyyXiyjjjyyyxxxhxiyyyYyyxyxyxyhXwxxxhiyXyihHwwvgvhwwxwvhwwxwvxxxhxxxxxxxxxxxwxwxxwxxwwwwwwxyxyygwwxfwvgvvwwvwvuwwwxxxxxxxyxxhyyyyxxxwxwwwwvwwvwwwffhwxxxxxyxxxxhxyzyyyyyyywwwghxxxwxwwxxyxxihxyhyxyxixxxwwxwWxhyxxyxyyyyyyyxyiixxwxwxgxhxxvxvvxxwwvwxhwhWxuyixhhxxhhxxwwwwwxxxxxwxxwxhxxxxxxyxyxyxwwwwgwgxfyyxyxhwxwwhwvhxxyiyxwgwgxhhxxwwwxxxxxxxxhhxxxxxxxxxvhxxhhvyyyyyxhhxxwxxwxwxxxxxwwwwwwwhwwxwxxxxwxyxxwwwwwxxwxxvggxxxwwxxxxxwihwxyxxwxxxxhxiwxwyxvxxxhxhwvvwwwxxwxwxwwhxxxxwXywxhvhxxhhxxwwwwxxwxwhvxgxxvwhWwwwuggxwxxwhvwfvgwhvwwXXxwwxXixyxiyihxxyhhxxhxiwihXxvWxxxxxhhihhxxgwwhwhWgwwxxwgiixhxxhgwwvxWgwhXgwgxXHhvvWxxxxhhiyxxxxxxyiyiwhwwhXhxxxxxwwxgxwggwxhxhhhwhhwXhwfVxwxxxwwxhxhyxyyxyyyiixxxxxhxxxyyxxxxwwxwwxxxxxxxxxhxxixxxxxwxxxxxxxwxwwxwxwxyyiyxxxxxxxxxxxyyyxxxxxxxxxxxxxxxyyyyiyyyxxxxxxxhxyxxxxxxxxxxxxwyxxwwyyiyiywxwiyyiywwxxyyiyyyxwxwwxxhhyxhxxxxxxxxxxxyyiyzyxxxxxxxwwwwxxyiyyxxxiiyiiyyxxxyiYyiyxxhhxhywxxwxwwwwwwxhxxxhxxxwxxxxxxxxxyyzijzyxyxyxxxxxyyxxxxhxxxxxhxwwwwxxxxxzzzzzhxxxxyxhxxhxxxxhxxwwxwxwxxxxxyyyyyxxxyxyxxyyyyyiyyjyxxhxxxxxxxxxxyxxhwwxxywxxyiiyiixxxxhxyxhxxyxyyyxxixwwxwxwwxxxxyyyyyyxxxwyxiyxjzzzzyyxiyyihiyyyyyy{{{{{yyiyyxxxwyjzzzzxxxzjjjjxxxyxyyiiiihivvwwxgwwxwwwuhwhwgvxxxxxwwwyyxxxxxxxwwwwwxwhyiyxxxhxvgxxhxxxhxwywxwhwxgxxwyyyyxihxyxxxxxyxxvhwXxhxxxxwxXhxHhhXwhxwxgggxhxxwhvxwhhgwxwwwwwwhwxwhhIiyIiiiwwxxwxxwhwwXxhXXwhwhxgwxxwwxxXXxHhhhyyuwixgghvyxwwgwxhhXXhgxwwxvwgxxvwxxXwgwhwxYii9YYixhhyxhxxixxiiyyyxxxzyyiyxxxxxxxyyyyyyyxxxyyiyyxwxwyxwhxziyyiwwxwxyiyyiixxxxxxxxyxxvvgvghxgwxwyxyxiyyiyixyyyXXhxXjzzjjjyxxwhhhyhiyyiyixxyxyyYiiYiYyxxxxxyxxxxhXXxhhxxyxxxyxxxwywxxzzzzjyiyyyxiyixxyyxxywxyxxyyyyyyyyzzzzzxxxxwxyyiyyxxhxihxyyyfvwgvvgxxwxxyhxixxxxxxxyxxxxxxyvguhgyhwwyxxxyyyiyyiiyxxwgwhhiyxyyyxxxixhhyhxxwwwxxxxxxxvwvXXxhwwxwxwxwwwwXxXhhhvwxvxwwwgwxxvgwwwhgxvvwgggwhgvvfggvwgvwvxwwhgwgwgvgxvxvvgfwwwwxwxvvghwWgWWgvvgxxHhxXhhXwgxgwwXwwvxhxxxvhwwvhvvwhggwxxyvxxwvhwwxwgwwgvhvWWwvwxxuwwvwvvgwxXhxHXXhgwwhgwwfhvwwxxxgxghwwxxxxxxwxwwxxxwwwwxxxxxxwwwwwxxhxxxxxwwxxxhxxxxxxyxyyyyyxxxxxyiyiixhxxxxxxxxhxxxxyxyxwuxwgvvgxxvwgxvwwwxhxwxxhxyyxxhixxxxxgvwwyxwwxyxxwxxxxgxvwxxwxxxxxxxwwwxxxwxwxwwxxxxxyyyyxxyxyxyyxyxixhxxxvxwwwxhxxxxxxxwxhxxh{k{{{[{{{zzyzz{k{zzyzzllȌȌiyywxxxxyyzwxxxxyyxxyyyxxihyxyyxxxyxhyzzzzzxxwxxwxiiyiyxxhyxhxyxxyxyxxxyyxyyxyxzzzzyyyyyhixyxyyyxwxxwyiiyiyxxyyxiYYiiiyxywwxxxhxxyyjjjjjxxxyxhiyxyyxxhyiyiixxxxyzZyZzxyyxxiiiyyiixhxyyyxxhyxzzzzxxwwxyxxxzyyyxhxyyxxxyihxyxyyyxiyyzzzzzwxxxxxyiyiixwxxxxyxxxyyxxyyyxyyyyzzzzzxxyhyxxxyyxxxxyyyyhxxjjjjjhxyxyyxxixxiiiyxxhxzzzzzyxyyxxyxyxxyyyxyiiiiyixyyyyyyy{{{{{yyyyyxyyyzzzzhxxyiyyyywxyxxxyxyxyxxxwyxxxixxzzzzjwxxyiyyyyyxwxxiyhhxxxxxyyxxyvxwxwxvhxhWgvWvgWggxwhwxxwxxxvwhwhxwxghwwxxxwwxxwwwwwhxwwywihghwxwxwwxxxXhxXhhhHXxXhhhwwhwxfxhxhhXhhixhhhyyxwwgxxwxvxxhiXXhwxwxxvgxwxfwXhxHXXXwwwxxwwxwxwwhwgwhvvhfxwfwwgwwxxWwwggwxxxwwxwwywxxyixyxxyywwxwwxxxxxxxyxxgxxhhvxwwxxwhwhxxhxywxwxwwwxxwxyyyxxxhxxhxxxxxwwxwhxxgxwyxxwwxgxghxxwxwxxxxwxxxhxyyyyxxxxxxxxxxxhxhxhxyyhxwxwiyiiyxxxxxxxxxwxwxwyiyYixxxxiyyiyywxwxywxxxxxxxxxxxyyyiyyyyyxxwwgvfwhggvxxxwyxxxxxxxxxwwwxxxxxxyxyxhxxvggxxvhwgvhxhxyixyxxxxiyyiiyxxxhxihxixxxxvWvXxhwxxxxyyiyyxwxxixihxxxyxyyxxyxjjjjzxxxxxxxiiiihixxxwxyyyyyyyxhyhhxyyyYyYYyyyxxxxzzyzzuwxvxvvgwwgvxhfwwfgwwxxxxxxxxxxxxvwxhwwxwxxhxxwxxwwxwwxxxyxwggwvvxwwxwxwfvwgwxwxwxxxxxxxxyxxxxxxyxyiiyxyxxxxwwwwxxxxxxxvwxwgxxvwwWvWghvxwxxyixhyhhhyxxyhxxhxxhXXhhxyxxyxywxwxxYiiYYiyxxxxhXXhiyyixhhixxyyyhyxyyyYyYYiiyxxxxxxihyyxxHHhXyiyyxwxwwwwwxxxxxxxxxxxxyyyxxxxxxxzyjjyhyxxxxxxxxxxhxxxwxyyyiyxhxyxwxwwwyyyxhyxxyxyyxyxyhxyhxxxwxxwxwyyyyyHhxXXXhgxxxwhhxxwwhxwXhxhvxvXXwwwywxwwhwwwhxx9iiYYYivwxwxwhwwxvgxxggxhxXXhwwgwxxXxwgxwwxghwwHhxXXXXxyxvvhxXWxwhxxhxxxXhHHxxxwxxwxwxwgwxxwgwhvxwvgwxIyyIIIiyiyYixxxxyxxxyyxxxyxhxhixxxxxxxxxywwwwyyiyxxxjyziixyyxyxyxyyyxyyiyyyyyyxxxxxyyyyiyjixxyxxxxyyyyyxxxxyyiizyyxxhixxxxxxxxwwxwwwxxxyxxxixyyyxyyxwwwwiiiiyxxxxxxxxyyyiyxxxxxyyyyyxxxxxxxxyyyyyxxwwxwwwyxxxxxhxxyyyyyyxxwwwwwwwxhxxxxxhxhyxxxyxhxhxxxxyyyyyyyyyyiyxxxxxxhhyhxxxxxxxyyiiyxyyxxxxxxxiiyYyxxxxxyyyxxxxxyxxxyyxyxxxxxxxxxhxwwyyyyyxxxxxxyyxxxxxxwwwwxwxxxxyxhxyyyhxhxxwwwxwxwxxyxxxyxxhyyyiyxxhxhxyxxxxxwxxxxxxxyyyxxwwwxwwxxwyxxxwhiyyxyxxhyxxyzyiixxxxxxyiyzyyyxxyxxxxxyxxxyxxxxxiyiyxxxyyyiixwxwxxxxyyxxxxxxwwywygwxxxyyyiyyyhyhyixxxhxxxxxiyyiyiyixxiXxxxhxhhxyxxwxxwXyxxxwxxxhxxxxxxxxwwygxxwyhyxyyiiyixwxxwhxxxxxxxxxxhxyiyyyyxyXxhxhxxxhhxhxxxxxxxxxxxjZjjZxxjjjzjxxxxxxxyxyyyyyyyxxxxxyyyiyiyxxxxxxxxxxxywwwxwxwwyiyyixxxxxyiyyihxyhhhxxxxxyxyxyxyiYIYiiwwxvwxxwywhhgwwuxxhhwxwvxvggWwvxvxxhhwgwwhgYYYiiYhxxhhwhghwwwwxwwxxhxhvvxwgxwwwvxvxwwwhYXhihwvxvgWWwwvvwhgwvxwxxhhhhhhxhvwwxgwwwwxwxgxgxgxxwwvwxwwxwfvhIyXiihxghgwwxxxxyxxyxwhxxxxwwxwxxyixyixyyxxwhxxwxxhxyyyyyyywwwxxxwwxxxxxvywhyXxxxxxxxiyxxyxhxxixxxxxyxhhyxxxxxiywwxhwxhxxhxyzzzzzixhyxhhxxyxhhxxhxxxhywwwxwwwxxxxxxxxxxxxxxxxxxyywwwwwwxhxhxxyxxxxxxxxxxxhhxhxxxxxxxxxxxxxwxxxxxxyiiiyixyxxxhxxxyyyyywwwwwwwwyxyyyyyxxxxxxxxxxxxyxxxxxyyyyyxxyyiiyxyyxyyyyxhxhixxxxxxyyxxxxxxxxxxxxjjjjjxxxxyxyxxxxyxyiyiiyyyhxxxhxhhxxhxhxhxhxxyyiiyxxwxxxwwxxxwxxjjZZjxxxiiyiiiixxxxxxxwwxyxwxxxxxxxxxxxhhxxxxxxxxyxxiyiiiwwwwxxwwxxxhxhjZZjjxxxhxhxhxxxxxxxhxhxxxxwwwwwwwxxyxhxhxyyiiyyxhhyhhyiiiyxxxxxxxxxxxxyxxxxxxyxxxxxxwxwwwiyiiyyyxxxyiiyyxxwxxxxxyiiyywxwyxwxxiiyiiiixwxxwwxxxxwwxwxxwxxhxyyiiywwwxwwwwxxxyyxyhhxxyhxxxxxxxxxyxxxxxxyyyyyxxxxxxyyyxhhyhhxwxxxxxxxxxxxyxyxxxyyyxxxyYyiiwxwxwyyyyyiyxwxxwwxwwiyyxxhxhxxxiiiyyxxxxxxhxxxxxxxwxxxxxxxyxxxxxxxxxyiyyyxyyvxyvhhvxxxxxxxxyhxxxwwwwwwxxxxxxhiwyYwxxyxxyyxxyxyyxxhxxxxhhxhxxyyyyxiyhhwwwwxxxxxxyxxxxxxxxxxxxxxxxxxiyxxixxxxxwxxxwwyiyyixxxxxwwxwwxyyyiyiixxxxhhxxxhhxxhxxyiyyyxxxwxxwxxxxxhxjZjjjxxxxhhhhxxxxxxxxxyxxhxxxxxxxxxxxxyyxxxxxyijiyxxyxxxwhvwwhxwhXihxwhhwvhxwiYyYYiYwgxxvxwwwwwxggwgvxuwixwxXgwxwxgwvxvwwxxwxxghfxxuwgghwwviIxhhyXghhhxvwgXxwwgwwwhxvhwwwwxxxwiYiYyXxvwwwvxhggwgwwwxxwYZyiiiIwwvwixwXXXxxwghwwxxwhhxwxxxwgvxwvwvxxxxhihxhxixXxXyxxxhyyxxxxihxxhixhwwxyhwwwwxxwxxxxxxhxhxxwgxhwxwwwxwxwwxxyyxxxhwwwxwxxhhxxxxxxxxwhxiyxwxxxxxyxxxyxyyyxyyxhxxyyxxxxxxxxxyyyyyyxxxhxwwwwwxxxwxwwxxxhxxxxxxwxxxwwxxxxwxwwwwxxxxxyxxxxhxxhxiiixxhxxwwwvxxhgwxwgwwhhxvyhxhhxviYXYiYxwwvxwxwwhvvhwgwgfwvhvhvxhhwgwwxxxwgwxwxwwwxxwwxwxwwxxxvxxxxxwwwiYiiiivwhxxhwhwwgwvhxhwwxwgxgwwwwwxxwxwwxiYXiihwxwfxfwggxvwgwwxxwwwxYIhhYYwwhwhwhxxwhhhhxxhyxxwhwxwwxWhhxxhxxxwxxxwxxxxxxxxxxxxyxiiyiixwwwwxxwyyyyyxxxxxxxxxxxhxxhxxyyyyyyyxxxyyyyyxxxxxyiyyixxxxxyyxxxxyxxxyxxxwwxxxwwivgyxyyyyyxxwywyxwxxxwwwxwwwxyyxxhhxhxxxxvxxwxxxwxxxxxxwxxwxwxxxxxyxyhxhxxxxxxxyyxxxxwxywgxgxxxxhxyxyxyhhxihxxxxxxxxxxwhwxwxxxxxyiyxxxxxxxxxhwwhxxxxxxxxwwwwxyxxxwhxxxxxxxxhxhxxxxxYxwyiwxyyxyyxxxxxxxyyyyhvhixxxxwiwyxiyyyxxxxyxyyyiyiiyyxwxxxxxxxwwwxxiyyxxxxyizyyxxxxxxxxxxwxwwxyyyixxxxxxhyyhyxxxxyxyxyxxxyxwwxxwxwyyyyyhwxgxxwhxxhhxxxxwwgwwvxxxwwxxxwxwwwxxxwxwwwxhhxwwwwxwxxxhxxxxwhwhxwxxwwwxwwwhxxyxxxwwxwxxxxgxwvxxxxwxxxxxxhxvXxgyhwxwwxxwxxwxxwwxgwxhyiyyixwxhxhhxxxyxxxxxxxhhxxxyxxxxyyiyyyxxxxxxxxxxxixxiyyyxywxyxxxxyyyyywwwwxxxwxxxxhhxiyyxxyxhxxxixxxyxyxyxxxxxxxwxwxwwwyzgywXyxxxxxxxxwwxxwwwxxxxhhyyiyxxxxxxxxwhyhxixyyxxxxxxxxxxxwwxwwxxhyiyhxxxxxyxxhyxyyyixxxxxxxxxxxyxxxxxxwxwxwXhhiyXhxYIhhgxxxgwhxwvvxgwXXxvvgvggxgvwghwwxXgvhxxhxwwXxxhhxIYxiYiYhxxhxvhgvwhhwxwwxwxxwwwgwxwhhxgvwwghhgwgwxxwhhxwXhyhYyiwgwxwwxhhxgvwxwXxxwhxxhxwXvxvxYxwxhxwhxxwwgwxxhxwwwxwxwwxxfwxvwwhggXYyhXhihhvxxwxxwvxwgxgwwwyyyxyxwwwxwxxwxyyhxxhhxhxxxxwywwwxxhhxxxgwwgxwgvwwwwwxxxwxxxxxwwXxwwggwxhvhhhvxxxxxxyyyxyxxxxxxxxxwwwwwwwxxxwxwwxwxxwvxwwhxwxfvfxxxgwvgghgxyxyxywhwxwhhxxxyyxxxxxxxxhhxhhxhhxxwwwwxvwgwyhxxxixxxxyxiyyyyyyxxxwwwgwxwvwghwxxwxwywxxxxxxxwxxxyyxxxhxhxxxhhhxxxgWwxwxWXwxxxyyyyyyyjjjzjxxxxxxyxxxxxhxxxxxxxxiiiyyhhhhhhxxxiyyiiiyjZZjjxhxhxxxwwxwwxwwxxxyxxxxxxwxxxxxxxxyhxxhihxyiiyyyxyxxxxxxxxxyyiiiyxxxxxxxxxxxxxxxxxhyxxxwxxwwwwwwwwyyyiyxhhhhixxxxjjjZjxxxxxxxxxxhhxxhxxxhxxxxxxxyyiyiiywwwwwxxyyyiywwxgwwxwwgihxhhYYYiiYxxwgxwhwxxyxhvXiwxhwxhvvxwxgvwxxxwiIhhiXiwwxxhwxYxxiiiZyiiYIxxgwhwwXwxxhwhxwhwxhwhwxgxxxxhyxxgvhxwxYviYxiyiYxxgvXXxXxhhwwxwxwwhwxxxhvhgugxiyxvwvwxhwIiyIiiihgwwgwwxwxvxxxwwwxwXXhxXxxxxghwwgwwgXhxXhhXwwwwwwxwvgwuhxyhvwwvwxghXhhhxvxwxwwvxwxwgYiiYiYiyixYxhtWhhhihhwwywwxgxywhygyxxxxxxxxxxiYvYxwuWxyxxyvwxvgxwxxWwhXhhXwhxxxwhhhyhwwwxwwxxwwgwhhxHxguXyyywvyxhxxhhxyxxhwvhxxgyyxxxywwxXvXxgwxxxxggvxhXwgwveGYiyIiIYwwwwxhhhhxxvhwvhwvgwhwwgvwxwxxhhxxhJjJjJjwwwhhgwwwwhxwXXhxXhhhvwwwgxxwYYyIYIYxxxiihxixhxxhxxxhXXxhwwwghhwxwwhxhxhhxxYiy9Y9iiYHhhhxvxvwywwwwwwvghwwwwvwxgvxvXwvwwWvxwghhhxhYYYiiYwhwhxxhwwwxxwwhwxwxhxvwhxhxwhvhhwwwvwwxxiYYYiiwxvhwwwwWvwwxxxgvxgxxgwwwwwwxxgwxhxvwwxhhhxhhwvwggfgxwwwvwwwiIyXiXhIYYY8fhgxxvyhvwuhYXwixwwWyXxxyXxgwxgwxxwwxxwxxwxxwww:YZZ9xxxxxwwwhhvhywvXghwhihvXiYyiiiYWYwyxiwvXhhgxXvyvvwgIXIY8whwxwxgwyXhhyYwxxwxxwgxxgwxiIhiiIhxwwwvghxxxXWhiwhwwXIIYJ)xxhxhxiiyYyhxxywwwwxxwxwwxxhxhxxxxxiyixywwxwwxhyiiizyyiyxyyxxxxxxxxxxxxxxxwxxxxxyyziyyyxxyyxxyxwwxxwvvxyhvwwwwxxxxxxxxxxxxxxxxxxwwhwwwwwxxxxxwxwwwwxwxwhhhwixxhyhhxxhyxwxxxwwxxwwxyyyxxxxxxxxxxxyxyxxxyxxxwwwwxwxhxxhxxxxhvxwgwwwwvhhhwxhiXhiyyyyyyxxxxxxxxwxxyiyxxxxxwwvwwxxwhyxxxihxhhyxuxhwwhhwwxxxxvghixyyyyyxwhwhixvwywxyxxxxxxxxxxxxhxxxxxxxxxywwwxwXwXhwvxxhhhwgwwghxxwxxxxxyiYyiyxxxxyyyxxxxxxxxxhhxxxxxyiyyyxxxxyiyyyyyyyyyyxxxxxyxxxxxyyyxxhxxyxxxxxxwxxxwhwwxwhWiYzYiiIYhxyhxhxxyxxhxwiwxyixxvwxxxwhxvwwxgYywhiwwixxxgwiHXXiYyyyYYYiiYihxhhwgwwxxxwgwhxxwxxhxxwyxixhwhvyhxixxyxwxhxxhiXyIiYYwixgxXwxwxhxhxiihihhxxxyiyiixxxxxxYYYYYYyxxxxxxjjzjjxxxyhihhiixxxxiiyiyxyzZyZzxxxiiiiiihwvyxwxxxxxxxxvxuywyhxxxxhhihxxxwxvxxwwwiiiiiiywwwxwxxxvxxxxXxxxxxxvgxhxhxyiiiyyhyhhxyyyyyyyihxhhxyxxxwwxhwxyxxxxyyyyyyyyxxxjjjjjyyxxyxxxxxyyyiyxiiiyxxxyyyxyxyxyjjjjjyxyyyyyyyyyxyxxxxyyyyjjjjjxxxxxxyyyyyyy{[[[{yyyyyyyxxxxxxxxxyiiiiyivxgxhxyiiiiiiyhyhyywxxxxxxxwwvwxxxwxxxixyiihxxxvXxxxxxyyyyyyywwvxywwwxvhuywyxxxxxxhhxhixxxxxhxxhhhixxwhwxwiwxhwhixhhvxwxxwwwjIiYijYxyyyiwxxyxhvxwxvxvxxxwYwyyyYvwwwxxxwhyxxiyyyx[:ZZZ[ZwxvvxxxxxwhixhhhwxiwxxyhjIiiYjYwxyixhwhhxihkJjjjkJhhxihwhxiyxwwhxyxxviyyyiwwxxxwwxwwyxxxgwwhgxxxyyxxxxxxxwxxwxxvxvwgwxxxhxxwwxgwwXgwwgvwgvwvfwxwxwwwxwxyixixxxxxxxxxwwwwwwhgxwwwxvvvwwxwwgvwwwxxxxyyyyyyyyyxxwxxwwwxxxxxxxyxxxyxxxwxxxgwwyyyyxyxyyxxxxxxxxxhxwxxxwwwwwfxwfwghxxXYhhiyyiiiywwxwwxxwwxxxxxxxxxwwxwgvxxwhxxxxxyhhhixuuxwgwwhhhwxhhhxhyyyyyyyvhvhvxhhxyyxxxxxxyxxyyyxxxxxwxwxwxwXhxXixxiihxxwhwhxxwxhxxxxhhxxwwwxwxhxxxyxxxxixhxxxxwvxxwhhxxxxxxxxwxxwxxyixxxyyyyyhxgwwxwwxxxxwwwxxvwyxxyyxxxhxyyxhhxihxyxyxyxxxxxxwhwxwwgvhxvweWxxwhxvhgwvxihhhhvhxhxwwxxyxxxxxxwwxxxxxvhwxhuixvwfhwwwwXWvyghghfggwwvwfgwwggwxxxxwgxwwxwwwwwhhyhhwwxxXvYxewfXhhwhxvhxxxxwxwxxxxxxxwxwwhygxwxxxxyxwxvxhfxfwwwgwxhvhvxWWvxxhfhivfVWhixYixhxhxiixyixyxxhhhXhxxxxxxwxyyxxYiiiiiyxxyxxxwxvwwvhvugXhuxixixhhyxxxiyYiYYyyyxiyyxxhhHXvwxwwxhxxxxyxyyxxxyxyxyxyxwwwhvyyyyxhhhxxxwwyyixxyxxxxxvvvvgvyzzyxxyyyyyyyyyyxxxxyxyhxwxwgxwXvXxgvxxxxxxyxhxxhhhxxxyxyyhXXxhxxxwwxxwxxwxxwxwwxxYiiYYYixxxxxxxvywXWwhhxxhhhxyxyyyiyyiiiyxhxixhxhxxHHhXhxyyhxxxwxxwwwxyxxxyyxyyyxyyxhwxxihxxxhxxxxxxxxxxxxxxxxxxxxgxwxyxxxxhxhhwwxxwwywixxyyxxxxyxyyxxxxxxyywwxwxxhhXhhiyyXixhIxwwwhyhxwwhwwxhhYyyyiyyiIhiiIxvxvxxhhwhwwhxxhwJjjjjwhwgxxhwxwgwyhxwxXYxiHxyYyyyiyyyyyZzzzZyyyxwhXhxgwhwwxYhyYyYyY9xhhgwvyyyyyvgxhhxxxxxxxxxwywyxxxyhhyxyxixxwwvwxxwwxxxwwghgxihxxxyxwxiyyiiyyxXYhhvhxwgvxwxxxhyixxxxwyxxxxxxxxxxxxxxhvwwhhXwuwxxxvvvxhwwxwxwvyxxwxxYYiiYixxwhxxxxhxYvhyhyvhwwwxxvxgxhiYxyYXwvxwgxxxwhwwwxxiYyiiIYwxvwxhvixxxixxxxwxiywxwyhvxxwwwwxwyxwxwhxwxvhhhxiyXhvxxwhfxxxxxxxxwxxxxxxxxZZjjjyyyiyiiiiiyyhxhxhxhhxxhxxxxxxxxxxwwwxxwxxhhxxwxxwxwxxxxxxxxxxxxxxyxxxiiyiixxhxhhxxwxiiyyyxxxyxxxyxhxxxyxxxxjZjjjxxxxxxiiyyiyixwywwhxhxhxxxhxhxhxxxxxwxyiiyywwxwxwjjZjjxxxxxxxxxxxxxxxxxiyiiyyyxxxxxxxxxhxxxxxxxxxiiiyixxxwwxwwwwwwwwxxxwxyyxxxhvxWwwwwhxvxxxxxxxwwwxxxxwwwwxxwwxxhwxhwwwwwxxwwxwxwghfgwgwgwwhxhyyxxyyixyxxhhhxwxgwwwvvxhxwxwhwhxxxhxxxxxwwxwxwxxhxxyyhyyxhxxxhxhwwxxxwxwwwwwghvhWgwxxxhhwwxwxvwxxwxxxxxxyyyxyxxxwxwwwwwwxxhgxxxxxxxxxxwuxwvhggvwwxvxwwggwyyxxwxyxxxxxxxxyyxxxxxxggxwwwhxXhhtXxxwwwwxwwwgwixhhhxwhygyyyxxxxxxxxxxxwXwYhywuXxihxXXwxwvvxxxgWwxhxxxwwgwwxwwhhhhhhhhyIXivuXxxxxwuyxxhhxhxxyxxhwvxxhgxxxwwgwhxhwwxvwxWhwgXwghwveGxhvhhwwuhugggwxwxwxwwwyyyyyyxxxxxyyyiyiyvwwhwwxwxxxwwxxxxwxhXhhXxxxxxhhxhxvwhwwghgwwyyyxxxxxxhyyhhixxxxyxxixhixXvXxhxxxxwhwxxhwxwwygxxxxxxxxxxhyxyyxxxxxyiyyxhxiixyXyyyiyyyxwxxwxxxhxwXxxxxwiyyiyiyxxxxwwxwxghxxhhxhyxyhhxxxxxxxhxxwxxwxwiiyixxxxyyxyXwxvxwwxXhhyyyiyzzzyyyyyxxhxwxhwyyyxxxxxxxyxwwxwxyyyxxxyhxixxxxhggxhyyyzyzyyxxxyxixxwxxxhxwxxxxxxxyxxxxxxxxxxxxyxxxxhxxxxxwwxwwwxxxxxxxxwxxwwyiyiyyyxxxxiyyyxwwwwwxxxxxhxyywxwhxhiXiyYXwiwwwyyyyyyyxxiwihhyxyxhwxhxwihyiywwxwYYhiihiyXYhhihwhwwgxywhwwgxwwYxwhxyyxxxhiixixixxhyxwywhixXyYixwwvhxxxwxwXwhwxhhghvwwgxwwWhwhxxxxyyxyyxxxxxxxxxxxxxxhxxxvwwwxxhxhxhxxxwwwwwxxwxwhuwxwvhhgwxxyvwwwwwwhwvxxhwxxgxwwxwxxwxxxxyyyxxyyxxxhwxwwwwxwxxwwwxwwwwwvggghgwgxxhyxxxwhwhxxwxiizzixyyyxyyyxyxyyixxxxxxhxyiyyywwwwhxhxxxxyYyiiyxxxxxxxyxxxxhyyyxxxxyxxyyyxyyxxyiiiixyxxxwxwwwwwhxgvxvwgxxwyiiiyxxxyxxxxvhwxxxwxwxxxxxxgwgvggwwxxxxyxvWWwgwxwxxxxhwxwwwxwxwxxxxxxxxxxxxxxxxxxxxyyxyyyxxxxwhwhwwxwhxxywxxxxhxxhiyyyhhihiixwxxxxzzjzzyyzzxxyxxxxyyxxxxxyxxxxxhyxxyyxyyxhxyxxxxxxzzzzzwxxxxxyiyiiyyyxyxxxyywyyxhxxwuyvxwxivwwxxyXxhxiiyyhyygxvxxxwwyvxxhhwxiwwwxfhyxxxyvxvxywjIiiijiwvgxxyxhxiyxwhxwxwvyvxywiXhhhjiwwyvxwXxxvhuxwxxjIiiiZYixhyyfxwxhxvxwwxwyhwxhgxhhxxxyyxyyhhhhhhxxxxxxzzzzzxxxyxxyyyyyyhxxhhhyxyyyxxyxxxxxyyyyyyyxxxxxxyyyyywxwxxwwxjjjjjxwwxwwxxhihhyxyiiiiyyxyxxxxvxwwyxhyyyyyyyxuhvxwxxwwwyxwvxwxwxxxwxxxxxyhyxyiyvXxxxxyiiyyyyxxyxwwfwxwxxyhyhyxxxxhhxhixxxxhhhxyhxxhxxxwhwxwxyxyxxwwwxgwvwhxyiyyyyyyxxxyixxxhyxiiixxyyxxyxwwhhxwxxyxxvxvxxwyyyyyyvxwwxwXyxyyyyxhhihxxwhxixywhxxhxixgxwvxwwwhxWwwgwwXhxXhhXxxvvhvvhvxxgvwwxvwvxggwfwwvhfwwxvwhhgxwgwvfhvwfwwwwWgguggvuhuwwggwwwxxwvwwxgvgxwhxhXXhwxwxwxwwwwwgwgwvhxxvxwwggfgwvhhxvvwxwvuwwwwxxvhwuXvuggxuwvwhfwvgvvhhxhhhhxxxwxvvvwHhIhGtWxgxxvyXewXHhvxhhwXihxxyyXwXwgwxxxxgxwhwwxgw9XIYHxwxxxgxwXxvxxxwvwXWhvyihYvHhXxxyhwXHivxihYvXXwggvxwvvWHX9XHvhhgxihyxiyXwiwgvhxxWwxXXyhyHhwxvxvWxwhhHvWWxwwxwhwuwgHYHY8wxwvgxYyyYYYhvwghhxxxxxxxuggwwwhxvwwgggvhfwvfwvwwgwwhwxwwxwhwhwgxwwwhuhhxIhhXHYhwwwwxxxYiyYYYYhXihxgxgwhxvwXvXxwhxxxxwwxvvwxghgvhwXhwxuxxxvwwxwwwYhxHXHhwwhwXYwvxxxhxwghxwwgwhxxgwgxwwWxwhhvhhxviXYYyYxwxwwwxxvwxxwhfxwgggwwgwxwxxwWwxwghghuwxwwwuhwwwuhhxvvvxwfYHyhXiYgwwxgvhhYXxwwgxxwvvxxvhhxxiYyiIiYwwxxwhvvxwgwvwhvwxxwiYziYiIwgwwwxxwwgxwxgwXxhXyhhxwxwxwghxxhwywweVhhyhhwwxgwwwxxwwwwvgxhyxxxxxxwwwwwwwXhvxhwyvwfgxxyxxvgghwfggwwfwvXgwyWhwghwwxxxhhhhhgxvhhwxxvwxhxWxxwvwfWhxixxwhwxxyxvwwxxwwxyxhxwxwhxyhwwxxxxxwhvWwhgWwfxwxxwhwwfvgixvhhgvfVWyyxyixhxvwivxxghiyyyyyxxyxxxxxwwxwxvywywhxhyxxxywxxyxxgwxgvhwvhggvxxxxxxxxxxxxyyhhhhxxxvxvxxWhuyhxxyiYvxxwhxhxhxwyjjjyyyyyyyiXxxiYyxyyywhxxxhxxwxyZzzzjwhxxwywvyxxxhvyixhyiXhxyiyixxxxxyyxiyyyYxxyihhxwxhhxxYxixYHxxxxxxvwxgwhfwhggvwwwxwwwxxxxxxxxxwwwxwwwwwwwhxxhxwhfwhwvgfgwvgwgwgwhxxxxxxxxxxxyhxxhhhxxxwwwwxxxhxhxxxxxxxxvvXvvXwXwwxxwwwxxxxyyyyyyxxxxxyyyxyxhxgxxxxhxwxwxxxxxxxxxXywyhwxxyiixxxxxxxxxgwxxxwxwwwwhwxhxxyyxxyyyyxxyyixgxxxwwwwxhxxhxyxxxzzzxxwwxxxxxxxxxyxxwwxxxyhxhxxxxxwwxwxghyxxyyyyxxxxxxxxxxyxhxxxxxwwwwwxwwwwhxxyxhvWwwvwXxvxxxxxxxxxxxxxwxwxxxhxwxxxxxvxfvwwhwwxxxxxxxxwxvxgwwwgxhxgwxxwwwxxiyyyxxxxxxyxyyyyxxxxxwxyxxwgwwggwxxxhhwwxwwxxxxwwxwhwxxhvxxxxxxxxyxxxyywvxwwvwxwxxhxhhxxxxxxxxxxxhxYhxXvxgvwxxxxxxxxxxyyxxyxhhxwwwxwxwxhxggvwxwwwwyyyyyxxyxxxxxxyxxxxxxxyxxxxhhxhhxiiyyyxxxxxxxxxxwxxxxyxyxxyxwxxxyhxxhyiiyyhxyxhxxhxhxxxwwwwxxwwxwwwxwxwyyxixxxxxxxxyyyyyyyyyyyxxxxxxxxxxxxxxxywwwwxwwyiyyyhxxhxxixxxxyyxxxxxyiyiyiiwwxxwyyiiyxxwxxwwxxwwxxxwwxwwhhhixxxxyyxxxxxxyyyiYiiiiwwxhwxhxhiyxxiyyixxhyYIyhYhhiyxxwwWwxwhwvxhvhxwwiwwxxxxXwxhgxwwxxhiIxXhYYYxxyyixwxYwyiwhiwyihhXxxxxxwggwgwxwgvhYyhhhihxxhiwxyyyiyyxxxyXxhXXyxjzzjzzxyxxwvvhvvwwxhhvyyyiyyxxxiiiYiiyyxxxyhxxXhvvvwhxxyxxyxxxxxyyywwgxhwyyyyxywxxxxwyxxxyxyyyyyyxxxxwwxgxWyzzzyyzyxyyxyiixxwwxxxhwhvYwhxWwwxxwwwyyyxxxxhxhxxxxyyxxXXhxXxxxiyyiiiyxxxxxvhvXhwXwxxxhxhxxhxxxyiiYiYixxxxxwwxhhyyxyyhHXhHwyxxWxxxwxxwwwwyxxxxxxxxyyywgxwhxxyxxyyyxxwwwxwvvxhxxwxxxxwxxyyixxxxxxyxxxyxxxxxxgywxhwxXvxxyxYgxwxxwgxxxxhwjzzzZyyyxyyiYyiiiYywxwxxwxwxwxxxx[{{{[wxxxhwgxwxwxxgxXwxhixXyyyjzzzZxyyxyhjjjjJxxiwiiwgxxwgxwixiIihyiIyyiiiwxwywxxxxhxxyyxxxxiiyyzxxxxxxxhxxyxxxyyyxyyyyyxyyyyhyxyxxxxxwwwwyyyyyuwwwhggvwxwwxghwxwxxxwxxxxxiyyyyxxyyxxxxvvwfwwxwvyyxyxxxxhhxxxyhxxxxwwwxwxxxvwxwxxxxwxyyxyyxxxxwwwxxxxxxwwxwxwxxxxvwhgwhxwgxxgwvvwgxgvxwwwxxxxhxxxxxxxxxxwxwxwxxwwwwwxxwwvhvhxxxwwwwwwwxxhyyxxwggvfgwwfxwxyixiywwWgwgwxwxyyxhxhwwxwxxwwxxxwwxxwxxxxxxxxxxxhhxxyixxxwhwWwwxghvwwxxwxwxwwxhxxhwyiyyxyxxxhhxyxxxxxxxxxyxhxxxwwwxwwwxxxxxwwwwxwxxxxxxxyyyyyxxxxxxxxxxwwxxxxwwwxwxxyyyyyxiHyhxiXwhgxwwxxhwxxxxYwiywyXwYxxyyyiixxxyXIyhiihhxxvwhhwwXwxwwxghxvwyiwwhxhwwxhwiYiiiiyyyyhyxyiixxxxxyihhXwiwhxwwgwxwhgxwxwwhhhYyXhXizzjzzxxxyxxyxywyxxyyxxyjjzjjxxxxxxyxixxiiixyxyxzzjzzxxyxxxyywyyiiiiiihyyy{{{{{yyhyyhhhxyhxxxxfwwwxxxxxwwwyyxyyiwyxxyiyyyyyywhxxvxxyiyixhxxxvxvxxwxyyxwwvyxxwxhwxxyxhvxxyyyyyyyyixxyyyyyxxxhxhyhihhxxxxxyxxxxyyxjjjjjhxxxhxxwxwwwwwwxxyYYYYyyxyyxxxxyyyyywwxwwwxwwxhihhyxxxxxiiiiiihxyxxxxzzzzzvxvxxwxxwxyxwwvxxywyyyyyyyyixyyixiyyxyxxxxyyxxxxwxxhvwwwyyyhyyyifxwwxwyyyyyyhxxxxwhxyxxvhhhyxhxxhxxijIiiijiwwxhwvxxxxXhwxhgwhxwvhxxvXxxxx[:ZZZ[ZvXxxxxwxvhhxxwwhvYwyyYxvxxxxXwwxhwjIiiijiwhvhxxhwxhghxwhwxwiyyyiwwhwxwxhxxhkJjjjkjwwxwwwxwwxxyywwwwhxwwxwwxxwwvhwwxxxxxxxyxxxxwxgwgwxwwwvwwwggwyyxxyhxyxxyyiyxyxyxxxxwxwxwxwwwwvxxxhhwxwxhhhuWggfhggwvwvgwXhhXhxwwhxxxxxyxxxxxxxxxxghwhihvXxxxxhxhxhhxwgwwhxghxwxwxxxxwvWxvgvxwxwgvXwyhWgixYXivvHxyxwwxxwxxvywwxhxwwxwxyxxhyhvhgxxgxwwxwwwxwgxwWwhghwhhihhvxwiwhXwfWwgwhhwwgxfwwvxhxgxxwxwwxwxhxhxiyyxhxxwwxxwxwxhhhiyhhxxxxxxxyxxXwhvwYgwxxhxhxwwhwxwxhxvxxvxxxxxwwwxxxxxyyyyyyxwwwxwwyyxyyyxxxyxyyhwhvhhxwhxxhxhxxhwwwwxwhyyxxxhwwwwxxwwwhxxxxxxxxxxxwwxxxvhxxygwyhxxhyxxxhyxxxxxxxvhwxvyhxhxyxxxxixhwwvxgxxxxhiyxxXyhxxxxxxxxwhxyxxvxxxyyxyyxxxyxxxhxwwgwwxxwwxxxxxxxxyxwwxxxxxxwwxxxxxxxyxxxxxxxwxxwwxgxzzzyxxyyyyxxhxhxxxxwwhhxhhxXvxvwxxvxxgvwxxwxvhWvxxyuyhhxxxYiiYYiiwwhgwwxggxvxxxwwwvxwvhXxxhggxxxwxvxvxwvhhxhhhhwwxgvvXxxxuwwwxwwXHhhxxwwvvgwxwwgiyyiiiihxhxwvuWwwWvWwxhhvgwgxxxxvhixxyxxxxxxhhhxwvXxxxxhwgxwWwxxhgvhhihhwyhwwhvwgXxxwvxvxhfxgwwwgwwuxXwgxwvgyxixhvhxwxxxxyxhxxwwiXxxgyxyhhhhxhwwwxgxxgwvxhhwxwgvfXhhxXhYhxvxvwxxvgXxxxWvWvxwxuggxxxwxXWxxxYiyYYYixxxxxxwgxhhvfwvxwxwHHxhhgxxxwgxxxvYhxXXXhxxxhXXhhihhxxxwxxhXHhhxgghhxwxxwxxxwwxhxxxviyyIiIYyixXixhwgxxxvwwvvwfxwxhxfgwxwxxwuggwwgwhhxxxhhxxxiXyiiyYWgxxxxwxwwxxwwggxgvwwgxwgvwwxWhgxuvwwvxwvhhxiYxhwgwWwhghwwfwwwfhhxxxwvxggxxxxwgxxvwWXxxwwwvwwxfvxxfwxwxwwhYyhhhi9YXYHgxVfhivhvWXgfxugwvGiYxyhHxhwxwxwxxwxxwwwxw*IYIIxwwxwxwhxeyvxvwvwXfxgyvXhwwWiIihiyIWhfxughwxGixVhfhvfxW9XHXIwhxxxxxhXyyXyHxxxxxwxhxwxgwYYyyYy9gxxwxghgxvhXwVhhfxvxwguX9YYY9whvxwxvwwwwwwwwwhhvxhhwYYyiYYggwgxxwhhhhxwgxhhxwwwwwhwxhvvxxxvgwwguhxxvxxwwwwvgwwihhYiXwwxwxwwwwwwvxxxxhvwwwxwvwgwgxhhiYyiihwvvxwwgvwwvxwwwiiiiihwvwxxwwwwvgxgvfwvxhxxhwxwwxgwxxhyxyyxyyxxxxxxyyyiixiizyjyxyxxxxxxxxxxxxxxxixxxxxxxxxxwwwiiiiyxxwxwwxyyyyyxxxxxxxxyyyyxixhixxwxwxxyxxxxxxxxxxxxxxxxxxxwxihyyuxhxxxxyyyyxxyxxxxxxyyxywhywivxxxxxxyxyyyxyyxxwxwwwxxxxyyyhyxxxxxxxyyyyyxxxwxxxxyyyyyyhyxxxxxxxxyxxxxxxxxxxxxxxxxiyyiyxyyyyywwwxwwwxhhxxxxxxxxxxyyyyxyxxxxxxxiiiyixxxxxxyyxxxvyvxywxxxxxwxxwxfxwxhxxxhxwwxxwxxwxxyxwwfxwwwxwxwwwxxhxhxhxhwhxWxyvwwxwxxwwxxxxuivxhxxwhxxhhgwvxhwwxyxxxxxxxxwxgvxxxxwwxxxwxwwwxxxxxwvxxwggxxxyiiyxxxxxwxwwxxxxxxxxxxxxxxxyhxxxyyyyiyyiyyzyywwxxywyxyyixxxyxxyhyyziyyxxyxxxxxxxxxxxxxxxxxxiiyxxxxxhxwxwwwxxwxwxwxwxxxyxxhxxxxxxwwxxyywwwxwxxxxxxhhyyyyyxxxxxxxxxxxxxwwwxyiyiyiyyiyyywxwyiyxhxxxxxxwwxxxxxxxhhxhyxxxxxxxyYyiyyyxxxxxiiiyixxxxxxxxwwxxxyxxxxxxzzzzzxhxhxxyxhxxwwwwwwxxhxhxxxxxxyhxxxxxyyywwxwxwxxxxxxxhxyxxxyyyiyxxxxxxhxxxxwwxxwxxxxxyyyxhziyyiwwxwwxxwxxxhxhixxyxyxyxxxxxxxxxxxiiyyywxyxhxxxxyxxxxxyyyxxyiiywxxwxwxyyyyyiXiihhwgwvxWwuhgxggwhuwwxxvwxxwwwwwvwxvgxwwxxvxwhgiiYYiYwxxwgvwwgwwywxwwhhhhxxxvvxxhwxxxhhhhwhgwwwYYiiYiwxwwwwwwxivxxxvxwxxwxwwxwxgxwgwwwgwuxwwxhxvwxxvwwwffxiixiihhxxxxxxyyyyyyiyxxxxxxxhxihhxxxxxxxxyiiYyyxyyyxyiyyiyxxyyyyyyxxxxxxyyxxxxxxxxxxyxhxwxxwwxxixxxxxvyxxxxyyxxxxxxxhxxxwwwxwxxxxyxxxyyxyyhhhyxxxxwwwxxvhhxiyyyywwhxwwxxyxxhxxxxyyxxwwxxwwwwwxxyyxhxxxwgxxxxxxxxxxxxxxhxhxhxxxxxxiiyyywwwwwwxwxiiyiixxwwwxwyiiyiiyhxxixxxxxxxZZjjjxxxxxxxxxxxxiiyyyhxihxxxxxxxxxxhxhxxwwwxixhxyyxxxxxxxxwyxwwwyxxxxxxxhxhxxxhxhyhywhyxwwxxwxwxxxxhxhyyyxxyyyyyxwxxwYxwhxyxxxxhyyxyxxxxxxxxxxxxxhiyxixyxwxwxwxiiYiixyxxwhxxxxxxxxxyiyyihxxyhxxjjjzjxxxxxyyyiyiyxxxxxxxxxxxyxxyxxxxhhxxxwwwwwwwyiyyyyyyyyyyxxxxjZjjjxxxxxxyxyxyxxxxxxxxxxxxxxxwwwwwwwyyyyyhhxxxxxxxxyxxwwxwwwxhxyxxhxxyyyyyhxhxxyxxxxxxhxhhxyiyyixxxxxxxxxxxxxxyxxhhxxxhhxhxxxxjZjjZxxxxxxxxxhhxxhxxyiyyixxxxxwwxxwwxxxxxixxhxxxxwxxwxxxwxxwwyyyiyiiiiyiixxyxxxxxyyyyyxxxxxxxxyyyxxxxxwxwwwwwxxyyyyyyyiyyixyxxyyyyyyxxxxxhhxxhxxxxwxwwxxxxxxxxxhxxhxxxxxyxyijiyxyyxxxwxxxwwxwwyyyyyxwxwwwxwxhhxhhxxxxxxyxxxxyyyyxyyiyyixxxxwyxxxxxhyxhhhxyxyxyxxxxxxxxxxxxyiyyywxxxxhhxxxxxyxxyiiyxyyyxhyxyxxxxhxyxxxxwwwwxxwwyzvxwxwxxxwwyyyiyyyixhyyxxxxxyyyyiyyyxhhyxxxxxxxxxxxxxwxxgwxxxxhxhhuxwwxwywxxxxyyhyyyyiywxxxxwxxWxxwhxxhxhxxxyiyyyxxxyxyxxyxxxxxxxxyxxyyyyyiyijxxhxzyiiyxxyyxyyyyxxxxyxxxxxwwwyiyYyxyxyyxxiyyiyhhxyxhxxxhxxxwhxghxwxxwxxxwvghwhwxxYIyiiIYvvxwxwxhywXYXxhuuxwvhhywxwwwhWwxhhvhhhwwxwXvwhgwwwwxwxwwhxxwiYyiZYIwhwxgxxwfvwgwxwwhwwgxwhXhhXYYhiYYwwwwgwgxfhuhwugwgwiXxXiYXvhwxxhwwwwwvwgwvwwhwgxxxwwwfwwxxxiyyiiiijjjjZxxxxxxxxxxxxxhxhhhxxhxxxZjjZjxxxxxxyxhxxxhhhhhhxiyyiixxxxxxxhxxxxxxxxwwywxwxxxxwxwwwxxxxxyiiiiyyiyiiixxwxwxwwwyyyyxxxxhwhxxyxywxxwwxyyxyyxxxxxxxxxxxwxgxxxhxxxhxxxxxiyxxihyxxxxxxvyxXyyvxxxxxwwwwwxyyyxxyiwhwxxyxxxxxxxxwxxxxxxxxxyyxxwwxgxwwwwxwwxxxyxhyyxghxxwxyyxyyxxxwwwxyhyyxxvwxxhxxvyyyixxxxxxxxxxyxxxyyyxxwxxwwwwxxxhxyyxxyxxhxwwwxxyhxxhxxyyyyyxxxxxxxwwxwwxyxxxwxwwxwwxxxywxyxxhyxXxXxixxxxxxxxyxixxhixywwhxyvwwwwxwwxxiyxhxxhxgxywxxxwwxwxxxxxxwvxwiwxxhhhhyxxxxyhxhxxgvgxxxyixxxxxxyyyxyyyyyyxxxiyyyiyiwwxxwwxxxiyyiyxxxxxxxxhxihxxxwwwxwwwxwwwwxyyxxxxiiyyiwwywxwyxxyxyxxhhxxxxxxxwxwwwwxxxyxyxxyyyyYixyXhiwwwwwhhvWwhvwXhwhwhxgxgvxxxwwghxwwxwxwwwxxwhxvXhxYiyhIiXghwwhfwwgwgwhxwxhxwvxwWXywxhxwhwxxhhxwgwhwhhxxHYyhXXhggwxgxwxxwXwwxhxxwxxhhxwxxwxwwxxwgwwwgvwwhwvgWhvxxhhxwwhxvxgwgwhXhxiYhhxxxxxxiyyiiiyxxxxxyyyxxxxxxyjjjjjxxxxxxxxxxzzzzyyxyyyyyxxyiixhxxxyxxxxxxxxxyyyyywwxwwyyyyyxxxxxxixhihhhihixihiihhxxxxxxiyyiiiyjjjjjxwxwxxxxxxyxxxxxxxxxxxxxxxxxxxxxyyyyyxwxwwwiiiyiyywxxxywxwxxyyyyyxxxxxzzzzzxhxxihhxxxyhxhyxyxyyxxxxxxxxxxyxxxwyyyiyiyjjjjjxyxyxx[[[{[iiiiiiyxxxxxxxyyyyxyyyiyiyiyxxxxxxxxyxyyxyyyxxxxxxxxxxxxyyxyjjjjjiyyiiiixxxxxjjjjjxxxyyxxywxxxyyxxxkkkkkk{zzzzzzzzzzlllllllzzzzzzzzzz[[[[[[{kkkkkk{yyyyyxhyxxyxyxxhxyhhhxxxyyxxxiiyiiiizzzzzxxxxxxxxxyyxyyhxxxxxxxxxjjjjjhxxihhhhhyxihxihhiyxwxwwxwwxxxxxYyyYYYyxwxxwwxwwwxxxwyyyyyxxxxxxyhiixxyyyxyxxxxxxxyyzyihhhhhhxwwwwwxwyyyyyxxxxxxxxxxhxxhxwxxxxxxxyyyixiiywwwwwwwxwwiiyyyxxxxxxxxxxxxxxxxxxwhhhhhwxwxwxwwwwYiiYYYixwhhwxxxxxxxwwxwhwxxxhhhhxvhhhhxvwgxxxwwgwwhhXXhwxxwhhxxIYyYIYYxxxxxxYhxXXXhxwhvgxghxvgwxgwwYYhixhxhxihvxxyhhuwhvvXvghwuyxxxxxvxxvwxwxwXhxHXIhxhXWhgxwhvwfhXXhhxxhhihyyyyyyyxxxxxxxxxxvhgugxixxyyyyxxxxxxhxxhhhxxxxxxxxyxhhhhyyiyiiywxxwxxxhxhxxxxxxxxxxxwvXgyXwxxxxxxzyzzziyyiiiywwwwxiihihhxxxxxxxxxxxxyyyyyxyxxxxxyyyyyxxxxxxxxxxxxxyxyxhhihyxxxxxxxxxyyyyxyyxjjjjjhyhhhiyxvhvhxxxwhhyxxyyxyyyxxxxihhixwwwxwvwggfgxwxyxyxyyyyyyyhhhhxxxwWXxywwhhhyxhxhwhvgiwxxxxyyxywxxxhhhxxxhxhwwwxwwwxxxxwhwhwwxxgxiyihiixxwXuXxxxhxhxxxxxxxxxyyyyywxxwwwwxxxxwwwxxxxxxyyyiiiiiiyxxxyyyxxyiyyiywyxxwwwwxxwwwwxxxxxxxixhhwwwxxxxxxyyyiixxxxYhxXXXhwwwxgxwwgwvivhvhhxuxwghgwwwwwhhxxxxxwfxgxxggwwXiXYXixxxxwywxWXwxwwxxwhxhwhiwxwwwwhwxxxhhhxhhIYyYIYYxxxwhywghggwwwhggwwxxxxvwxvhvvwvvvwwvxwvXXhwwxwwxxgxWuywwghwYhHXIhxghxwwwxwxwxhxxyxxyxyxxxxxxxxxxxwwxwhwhwyxyyyyvvxwxwxhywxxxxxvhvhvihxxxxyxyhhhhxxxxxxxxxxxxxxxxxxwwwxxxwxxhxxwxwxxwwvwxfgwgxhwxixhhxyXvWwxwihyhxxxxxxxxyxxxyyyyyxxxxxxxxxxwwwwyxxxxxxxxxxhxxxiiiiiiyzzzzziyyiiiywxwwyxxxwyhjjjjjhyxhhhxwxxwwyyyyyxxxxxxxhxxihhxxxyxyyxyhhYYxxxxxxxxxhxxhhhxxxxxxxxhxwwhiwxxxyyxyxxxxxxxxxxxxixxhyixhhhhxxhhhxxxyywwwwwxwwxxhxxxxxxxhxhxvxwhhihwxxxxhhxxxxyyyxwwwwwwxxxxxxhxhzzzzzxxxxxxxxxwwwxwwwxhxhxxyyxhixxxxxhxhyxxhxhyxxxxxxxxxxxxxxxxyhxxxxxxxxyyyiiyxyiiiywwwwwxxxxxxxyxxxxxxxhhhhyxwwwxwwwhxxxhxhyxhhxxhxyyiiyxxyyiyiiyjjZZjxxxxxxxxhxxhxxxxwxxxxxxxxxxxyxxhhxhxxxxxxxxxxwxiiiyixxxhxhxhjjjjjiiyiiiixxxyxxyxwwxxwxxxxxhxhxxxxxxxxxxxxxyiiyyxxxyxxyxxjZZjjxxhxhxxxxxwwxxywxxyyiyiiyxwwxwwwwxxxxxyyxyyyyyyyyyyxyyyyyxxxxxxxxxxxxxxyyyyyxxxxxyxhyxxxxyiiyyhxhxhxxwwwwwwwwxxwxxhxihxxxxxxxyxxxxxxxxxxiyiiixxyxyxxyyyyyxwwwwxwwwxxhhxyxhxyxxyxxxxxxxyyiiyyiiyiiiixxxxxxxxxxxhxhhhhyxyyiiyxxxyyxywwxxxxwxxxxxxxxxxxxxxwxxxwxwxywxxyyyxwwxxxwwyyyhhhhhhxxxxxwxwyxwxyiyyixxxjjjjjiiiiiiyxxxxxxyyyxyxxxxxwwwxxxxYYYYYYyxwxwwwwwxxiyzyyxxhxhhxxzzjjjxxxxxxxxxxihhhihxxvhhhhvxwxvhvghgxxxxxxxxxxxxyxyxxxxxiiiiiiyhhxhhxxxwwwxwwhwhwhxxwyxhhyggwwgvgxxwhxhhXhxhxxxxxxhhihxxxwwwwxxxwwxxxwxiyiiiiiwvxXvXgxvxxxwvXvwgWwwxwvgwgYYyIYIYxhhhhxxxxvwxwiwxxxwhxhhhhXhhxvwhxxwhwxwhhhhxwygwghhxJJjJJJJxxxxxYYyIYIYwwxwxwhhhwhhXhhhhhyhxxxxxxxhhhhvwwggxgvxxxxxvxhvgxxwYYy9Y9YhxXXYvxxxxghgxxxxyyxyyyyxxxxxxxxyyyyxxyxxjjjjjxxxiiiiyy[{[[[iiyiiiiyyxyxyyxxxxxxyxwxxyxxxxxxxyxxxxxjjjjjiiyyiyyxxxjjjjjxxxiyyiyyyxxyxyxxxxxyxxxyxyxxxxxxxxxxxhhhhxyxxxxxiiiiiiyxxxxxxxxxxyyyyyyyhhhxhhwgvgxxxxxxxxxxxhxxhhhxiihhxhxxhhhxxxxxxxwvvXXxhwxyyyxwwxxxyyyiixwxxxwxwxxxxxxxyhxhhihhhihxxxhxhhxiiyyyxxxxxxxxxxxxxxxxxxxjjjzzxxxxxxxxxxxhhhhhxwwxwxwxwxwwxxxwyyYyYYyxwwxxwwyyyyyuvxwvgugXhuyyxxxxxxwxxwwxxwhxxhhhxhxxxxwwxxwwvvwvvvvhxvxxxhxhhxxxxxwwwwwwxwyxxxxxxwwxxxxhvvwggwvyyhxxxhxxxxwwxwxyyxxxxxxxxxxwwxxhiwxxxxwwwvwwggvwghgfwwxvwxxxwgXXhxwxwxxwwxxxxxxxhxhhxxyyyxiyiiiiigvhwywwxxxxxxxXYXxhxhxhvvhvXwvXwxwxxxxwxwghxwhxxxxxxiyihiixxwxxxxwwwxwxxwwwyyYyYYyhHHhihwxggvwwxhhyyyyyxxxxxyhxhihhhihixxxxzzzzziyyiiiixwxwwwxwxxxxxxxxxxxhyxxhxjjjjjYyyYYYyywxxxyxxxxwwwxhxxihhxyyxxyyxxxxwwwwwxxyxyxxxyyyyyHhxXHYhwghvgvxfhwvxgwgwwvhvxXWxwwxwWYxwwxxwxwwwhwXXxvIhXHYhxxxxxwhwwwwxhhxwhxgwgxxwwihhhxwwXwwxxgxwvWgwwWxw9YyY9YYxxxxxvYxgWxwwxxwXXxxhxifhwwgvwggwfhiHHhwhxwwwgxgfhwxvwwgwhIiIIIiiviivxvwwhwwvhxxh[Jjjj[jwxwxgyxYwxhxyvixhhywhxvixywywxxvxxvhijYiiijixxiwwxxxywywyywvhxwxkZzzzkzixxvixwwwjYiiijiwxxywwxxxYyxixghxfxxxyyxxyxxxxyxxjzzzzxxyZjzjzxyyxxxxyyxyxyxiyxxxyyyyxyyxyyyyyk{k{yyhijzzzzxxxyxywxwyyyxhyxxhyxxwxxxixxiihxxxxxwgvyyxxyyxxyxxwxvxxxxihxxxxyxywwxwhwxxxyyyyxywfwwxwxwwxiyyyXyyxxxxyyyyyxxxxyyyhyhhxyxxxxxxxxihxixxxxxxxxxyyyyyxzzzzyxxxxxxxxxxxxxyyxyyyxxiyyyiyyxxxyjjjjjwxwwwwhhhiyxwyvwxvyxyxyxwwxxxxwxhiiyxxxxxxxwwwfxxxhxxiihyyyXyyyxyyyyxxxxxvxhvxxyhxyyyxyxyxwgxvxxxyhiiiiyhxxwxxuxxxxyxxxxxyhxxiyhwxxwwwxyyyyyxhxhxhxyxyxxyyyyyxxwwxxxxxxxxxxxxxxxxxxxyyyyyxxxiyyiixxxxwxwwwwxxxwwywxwwwwwiiiiixvxwwwwxgYXiyYhxgwwhxxxxxwwyyxhiixwhxhwxwigxiwxvxiwIIyhiYhxxhYXyhyXxxwgiwhxghixhxyyyyhxyxwiiixxyyXYyXhHhywxwwwYhxxxhhwxxhxxvwxxxxwwxxxxxyyxxxyxxxxxxhhxwwxwxxxxxxxxxxxxxuwhwhwwhhwwxgwwgwwxvvxyyxhwvxxxwwwxwxxyxxxxxwxxxxwwvhgghwwyiiixxxwxxxxxxxyyyyyyiyyiyihiyywwwwwwwwwxxhxhxwwxwwxwwhhxhxyyyiywxxxxxxhxyyyxxxxxxxxxxxyxxyxxxxxxxxxxxxxxxxxxxxxxxywxxxyyjyihhhhhwxhxwgwwwxxxwxwwxwwxwxxwwxxwxhxhhhhxxxwxwwxhxxhxxxxxxxxxxxxwwgxxwxvxxxxyxvxwhvhwwxxxxxxxwygwghhxxxxyyxyxxxxxxxxhhyxxxxxgxxgxhghhhhxXxxXxxwwwwwgxhwwwvhhxhxiIyxiiiwxwwwxwwwXvxwhxfwwfwwvxvvvwxgxxgxwhxxxxwvwwwwxxwgwggiXxiyxiwwvxhvxvvvuhguxhgxhwwxwxwvgxxxxYYxyiiwwwwwwvhuxwvwggiXxhiyXwwvvwwwgxXxwwxxghxxvhhxxvxxxwwggiYyYyiYxhwvwgvxxwwxwwxxwwhhxhhhxxwwxxxwgvxhhhhwwxvgwYIyYiiiXXxXxhhxwwwwxvwgwvxhxxwghvwvxXXvyyxxhixxwuxghhwwwwxxxwhXxHhXhwxhwxXwhwhgvvIiIiIhhghxvwVhxxwxiYyyiyYwhwuhhvwVwgwwywxfhxwvVIYHYXhwxywxxxXYgxhuxwvVyhxxxIihfhwwvVxxwwxwxw:YIYYxxwxxxwyiyxyyYwxwwwXxgVwwxxhhxxxiXfhvwwhxwvGhhWWvxwvexxhwhIX9YXwxwxwxwwwwggxxwXXhhhxixhxYiiYYYixhgxxYhxhXhhwxwxxgwwxwvghxhhvuvguhwvwXXvxvggwhwyxxyxyhhvxxwhixYixgxwvxwwwwwwxxxwxxxxxxHhxhHiiwwwwhhxxxxYYyiYiYXwXhhxhhxhhhvwvggxhxvxxffgXwwxwwxxwhgvxyxxxxYxhxghhxhhxiyixwhwhvwxWWvixyxwuvHyyxxxxxxxxvwgwwwxwxwgwhhhhhvwxvgxwxxWwyyxhhhXxvxxxwvwXyxxxxxiwgwxhhihhhxxhxxivhXxxvwXXhhggvhgvhhxxfgxiyixiviwwwvvwWwwwwxwxhxxxyyyxwwwwwxxxhxxxxyxxxxxxyxiyiyxxxxxxxyyyixxxxxxxxxxwxwxwxxxxwxxxxxxxxyyyyyyxyxxhxxxxxwwwwiiiiyxxxxizziiyxxxyyyxyxxhhxxxxxyyyyyyiyxyyyxyxiiyYyxxxyxxxxxyxxxhyixyxxgwxxhxxxwwwwwwwxxhhxhxyxyyxxvguwhwwhxhwxxyhxxwwwhwvwwwvxxvwwwxxxhxxxwwxwwxxxxxxxyxxhxxxxwxwwwwhghhxvwwxwwxxwwxyyyyxxgwwvgghgwgxxxwhxWwwgwwxyyxxxhxxxxxxxwxxwhhxwxwwgwhwyxwywiyhixxxyiYihYhhwwvxxiYhhXhxxwxhhwywwwwiwyxwhxYixxyyyiyxyixixiwwhxhxwxwywyyyyYixyXhiwwyxgwhhxxYXyiiXihhwhiwhwwxXxxwwxxxwwwxwwxxxxxwwxxxxxwxgwvgwggxwxxyxxxwwvgWWwxwvxxhxwxyxxxxxxxyiiixxyxxxxyxyxxxxxxwwwxxwxxwhwwwwxhhxxxxxhyxyyywwxvvwxghgxxxxxxxxxhxxhxviwhxyvxxxxxxyxxxxxxxxxxxxxxwyyhhyuxxxxxyxxxxwwwwyxxxvywwwivyyxxxyyixxixyxwxwwxwwxxwxxxwwwwxwgxhxxfhhxhhxyyxyyyyiyyxyxxyyyzxxiihxiyxxyyxxyyxiyyiyiyxyyxyhhhhxzzzzzziyyiyiyyxyyxxwxvxvhvvgwhwhwxyxyyxxxyyyxyyxxxhxhxwxxhwvxxxxxxyhxyxxyyyxwxxxgxwyyyyyyxxxxxzyyxyxxhhwxxwxWhxXhhXhxxxyyyiiiiyyhihxxwwxxxxxxxuhyvghgxxxxxxyxxhxxhhhxhhhhhxxxxxxyyyyyyyxxxxxxxxxxxhxxhhhxxxxxvvhxXWxwyXyyyYXvixxhwxyxyyjzjzjixgyxhyywwxvwwiyhxxiXyyyyxwiwxwywzzZzzwyxwxxxihyxyihxxkk{xxxwxyxxzzZzzxhwxxixgxhxxwyyyygxxyiWxxwyvxxxxxxxwwwxYxxxwxxxxhhyhhwxwxwwwwwyxxyxxxxxxxxxxxhwxxxxxywhvxxxxxixxxxxyixxxxhgwxixxiixxyxxxxwwwvhhxxxxxxxxxxxxyyiiyxxxgwxwwwxxyyyxxxxxxxXhwxwxxywxwwggwwwxxxwxxwxxxwyxxxxyyyxixxxxxxxyivhwWwghwvxxhwwwwgvvwxhwyyxxxxxxyyyxyxhxxwxwwwxvwxhxxhxyxxwxwwxwwwxwxwxxyxxxyhxxxxxxxxwwxxzzzwwxgxwhxvxhwyyyyyyxxxyxxwxwxxxwhxhhxxvwWxugwgxfvgwwwwwxxxxxxhxyhxhhyxwxxwwwwxyyyxyyxyxxwwhhvvxhvxxxwwwwwhhvxxxxhhxhxihiiiyyiyxwXxuxXxwgxxWXwgVhhhhhhxxxhxhgxxxhxwwgvxxwWgwwwxxwxxxgwwwywgvgfvfwxyXhvWxxxxxxyxxhhXXixxwwxwhywgwgwhgivxxxxhxwxXhwwWxxxxxxxxwxyxhxwhgwwxxwxxxwhwwiyxgwxhwgWwvXXiXXwwwyxxwwwwgxiHivwGxxxxyizjzjZxxxyxyxyyyxxxxxyxyyxyyyxxxzzzzjyyyxxxzzzzjxiyhyxxwywyxyyyyyxyyyx{{kyyyyy{k{{{{{{kzyyyyyk{||||xyyyyyxxxxxxhxiiyxxxxxyyxhhxhyyxxyyiyiyzjzjzxyxyyyiyiyxywxxxyxyxyyyyyxxxxizjzjxxyyyxxxyxxxywxxxxxxyiyiiyyyxxyxxhxyxxxxxxhyxxzzzzzxxwxyhhxxxyxxyyzzzzzyiyxxyyyyxxxxxxxxyyyzzzzzxhxyxyxxhihhyxxxwxyxxxyyyyxxxwiyyxxyxyxyyxyyxixxyyyyyiwxxxyxxwyxyxwxhxxxxxxxxxyyyxyyyzxhxxxhhyyywwwwwxxxwwwwwxhxxxxxxxyxxxxxxxhxxxhxxxxzzzzxxxxxxxxxxxxxxxxhxyyhiyyxxwwwxxxxxxyiyjixxhxyxyyyzZZyxxxxxxxxxxxxxxxxhxxyyyyyiihhwwwwywwxiiixxxxxxxxxxxxxxyyyywxxxxhhzZyzzxxxxxxxxxxxxyyyyxhxhxwwwwxxixxyiiyixxwwwxxxhxxxhxxxxiyyyxyxyiyxiyyixwxwxxxyxyyxxxxxxxxxxxyiyijxhxhxiyyyxxxwwwwxwxyyyxxxxwwwwwxhxxxyxiiixxxxxxxxxhxxxxwxxxxxxwwwxxxxxxxyxhxyxxxxxxxxxyiiyixwxwxxxxyxyixhxhxxxxxxyyyxhxxyxyxyxxxxyxxxxwwxyxyyyiixxxxxwwwywxwwiiixxxxxxxxxxxxxxxxxxxyyyyyyyhxxhxwxwxxxxwxwwwxxxxyxhxxywwwxwxxxxxwwwxwxxxxxxxxxyyxxxxxyiyixyyxiiyxxxyxxyxxxxxxxxxxhhxiyxxyyxxyiyiyxxxyhxxyxxxyxxxwxwxyxyxyyyyyhxxyxxxxyxxyywxxxxzzzzjizzzzzyyyxxxyyyyxyyxxxyhxwxwxxxxyyxyxxwwxwxwwhxxwxxwwghwvwwwwuwwwwvvhxhyxxxxxyhhxxyxxwyyxxwxggxihwxxxxyxyxygxwxhwxxxyyxxxxxxwwxxxxwwxvxxxwwghxwhhxHXhXwwwwxxvWhhwxxuwhugwghhwxwxwgxwhwwfxhvvgvvwwwxwxwxwxxhxXhXhvxhwgvwwwwxyvwwwvwxhxhvfhvhgwwwwwvxwgxgwwwXhxXhhXvxWwwwwhxvvwgvxwvghhwhxxhxuhvwwwvwxhfwxgvfwwwwgwxgxwwwwfgwgwhgwwwxxWhvWXgvvhvvihgwhxxyxixxhhihhixwwxxwxxxffhhvvwwwwxxhxxiyxxxxxxwywxyxxvwXvXxwhxxxxxxxiyyiiyxyxxxxxyxxxxxxxxxwwihhhxwxxiizZzzZxxxxxxxxxxxxxxxwwwwwwxxxxyiyiyxyyxxxxhxxiiyyixwxxhhyyixwwxxwwxwwxxxxxxxyxxxxyyyxyiyjiyyyiyiyxxxxxxjyjzjxxxyxzjzjZxxyyyyyxyyxxxxhhxxyyxxyyxyyyyiiyhxxwxxyyiyiixxxxxiihxhxxyyyxhXhhXyhxiyyyyyyyyiyiixxxxxxxuughuughhxxxxxyyyyxiihhhhxxxxxxxhXhhhxxyyiiyyyyyiywxxxyyyxyhxhxiixxxxxxXiXYigxgwhxwwwwxwwxwhXhhhxxiYyYYiYgwwwwgxxxhhxhXXXwgxxgxwwwwggxhiwvXwXvxxgwxwwwxxwxxxyxvwihgwxwXXxwwwxvvwvwxwxhyxxyXhxhHhXwgwxwxxwYiiYiIwwhwxhwhhhxxxgxggxwwwxwwwxxwxyxxxyyxiyxixxxwgxwwwhxwxxxwwWwwvwhxvffwwgfgwwwxxxxxxxxxxxxxxxwxyxxxxyxihxwvvxvwwxxwhwxxxxxxxwhfgxxghxwwxwxxwgxwxgwyyyxxxwwxwxwwxxiyyyyyiywwxwwxxxxxxxyxxxxxxxxxxxxyhhxxxxiiyxxzzyZzxxhxyxyyiyhwywxwxwwwxxxxxxyxxxxxxxxyiyijyyyyyxxxzjzjzyxxyyxyyyyxxxyxxxxyyyxxxxzzzzzyyxxzzzzzxxxyyxxiyxywyxxwyyyxxyyxyxyyxx{{kyyyxXWwwwxwfwxgwxghXhhXxxYiYYYIxwxwggxxXhxhhHXwxwxxgwwhwwxxxxiuhiwgxgwxxwxwwhxxwxwhwhixvvywXWwhgxgwhxwxwwwxwxwxxxxHhxXXXXwxxwxxxwxxYYyiiYYwwgwwvhxwhhhxhwhxgwgxxxxhvhhyvxxxxxxxxxxxxyyywxwxwwxxwxvwwhwwgwwwvgxwxwuwxhxxxxwyyxxyyxxxxiyxxxxxywyxxxxxyxxgwxhwwwxxxxxxxxxyywgwwwxxwhxwwgwxxhxwxxwxxyyyiyyyhhhxhxyyyvvhwwwvghhxxxyxyxyiyyyiixyyxiyyyiixxyywxxhxhhxhhhxxxyyxxxzzzzzzyyyiyxwxyhyixxxxxyxxxxxxxxxxhxyxwwwxyxxxxxxxxxyxxyxiiyyiwwxxwxxywwwwxwiixxxxxxxxxxyyyyyyyyyyyyyyxxwxxyxyxihixyxyyyxxwxxxyyyyyyiyxxhxxxxxxwxwiyzzzzjyxyxywxywxxhxyyxyyxyxxyyyyyzwwwhxvgwwgxxwxxxiixxxwxxwghwxvvxxwwwWhhwfwfwxfvvwwwxwxwhyxyxxxxxxwwxwxxxxxxxxxxxwwxwwwwwwxyxyxxxxgxxgfxxhxxwgwwvgxxxxxxxyxywxwxwwwxxxvYwWxgxxxxxxixhihxxxxvvwhffwwwxxxywwxxxxxxxxxxxxyxvhivgxwhxixxxiyyiiyxxyxxxyxxxxxwwxwxxhhwghxwXhxXHXXwxhgfxxhwxxxYhXYixgxhvgxxwxwwwxwxxwhxwhxWguhWWvvhgxxxwgxwxyxxwxwxxvghxwvhiwhhxwgxxwhwxxxxHhxhXhXgghxxxghxhhxXxXxvxgwxxhxwwhhghxwxggwgxwxxwxwwxxXxhXhiyxyyyyxyyxywwxyyyxxxwgxvxxxxyxxyxxgwyxyxwwwxwxxxixxxwiwxwwywxvxvvxxxyxxiyhxxxxxyxyxxyxxxxxyxyxxxxyiiyiyxxxxxyxxxxxxyyyyxyyzzzzzxxxxyxyihhhhhzzjzzxwyxyxyyyywxxwyyxxyyyyxyxywyxghxxxxwxxwyyyiyiywhwwgxywywxwxwxwxxxihyxxxxxyxxxxxhhxwwfxwxxiyiiiiiixhxxxxxxwgixxxxxxxxWxxwxhxxxxxxhyhhhxxvyWxxvyihxyxyxhxxxxxjjjjjxxxxxxxhxxxixxiyyyiyyyxxxxwxwxwwwxwwxwxxxyyyyyxxxhyxwxxyxxxxxxxyyyyyhyxhhhxxxzzzzziiiiyyxxxxxxyyxyiwxhwxxvggiixyXjIiiiZYwhxxxxvXxgyhwXixxixxxxywwgwhwxhxxxxhwgwvxhwyYyiyihwhwhwwxxxyhwhgxhwggwxxwjIiiijiXyxyywhwxwhjYiiiihwhxxxxwwhxwyXvyyxyXxxxxgxxxxxyyyxxwwwwxhxhxhxxxxwxxwxyiyyxxhixhxyxyxxyyiiyxxxyyyyxxxxxxxxxhxyyxyyhwwwxwwxxxxxxxxxxxxwwxyyyiyxyxhxhxyxxxxwwwwgvfwwxxxwwwwwxxxxwwwxwxwxxxxxxxxxwggwwgxxxyxwxxwxxxwxxxxxxhxxxxyxwxxwfwvwgxyxyxxhxxxxyxyyxxxywwwwxhwwwhxyyyixwWvwgWwxhhhhxwxvhxhxxxxxyyxwxwwxxxxxxxxxxxvwwwgxxwxxhxxxwxxxwwhwxfxhxxwwwwwwxxwwxxxhXhhxxxhyxyyxyxxxxxxxxhhhhxxgwwxxxhxvwhwgwxxxhhxhyyyyxwwwxwwxxxxxxxxxxxxxxyxyyxxxxxwxwxwxxhyiyyixhhyhhyyyyyyywxwxwwwwxwwxwxwwxxxxxxxxxxxxxiiiiyyyiiyyxxxxxxxwhgwxwxWiYyhxXiwiwiwhxxgxxxhwyxxhwxvxxwwwxhxvwwxhhxwhYwxxxiYIhhYYxxxhYiyXixxiwhwwvxgxhyxxiiyvyhxixxwhyyywixxxxwiYxYiIYyyxxYxxxwwgYXyhyXxggwwwwwwwwxwwhvxgxwhwwxwhwhwgvhwywwwwgxxxhiYyhiwwwgwvxfwxxwwwwvwhwvxuhwwxvwxxxhxxxxhxwggwvvxwXYhhihvwwhwwxwwhwwhwxwxhxxxxwxwgiwwwxvxwhwvxWwxxuvwwvxxxvvwwfwwfvxfwihyiihhXhxhxXhxwxxwwgvwwwwwwxwxhhxyxwwxwxwwwvxxwwwwwxxwwXhhyhxvxwhvhwwxvwhxxwhwxwxwwhiwhhhwwhwwwwwxHXxXhhhyxhhhxiggwxwxxyxyvwxhhxwvvhxvwxhwwwxxxggwwxwgxwWgWvhWvuhixhwgffWwxvgxwwxwuwivwwwxxhhxxhxxyxwhhxhhiyixwuuWxxyxxwxxwgwwwxvgwvyhwhxxwwwwxhvxxxxxXhvxhxxvvgxxwyxwwgwgwhgivxxyxxxgxwhXhhxvwvwgfyggwwfxxxxxhxXxwvvXYhxHXHhxwXWywwxxxxuhgugxiwxwxwxwhgwwwwfvfvwxwxwwxgxhXxYYXigwgwgvvxxwxihxxhhhhvfwvwfwhhwvghixxxxxYiyYYYYvWWwgwxwvhwgvhxhwwgwxxXxwwggwwgvxxvxhyvvhwxgwxwvwwhhywwxxxxIhXHYhHXIY8iYwXxgGwgxwxwxgiHxhhXwhxhhWwWwwwvxhvhvwhxwuWHhHiHgywwhxxxxxhYIvyYigvWxXyyxYiYvYxwuWxwwwhv9XIYHxxhxwxhwyXxxyXwihXxvWhvxxyYiyyhgYxhywvHhXgHyfvVwwhwxxwWwHW9XGuxxxxxxxxwwwwxiiixyyxyiyyzyiyxixxxhyxxxxxwwwxxxxxxxxhhxxxyhxwwwxwxyizyyyyxxwxyYyiixxxhhxxxxyxyxyyyxhxhxyyyiyxxxyyyiyxxxxxxxxxxxyyyyxxxxxxxxxxxxxxyxxxxyxxhxyyyyyyyyyiyYixxxxxxxwxxxxxwxiwhhxvxywxxwyxxhxxxxxxxwwwhuhhxhxhhxxivhgwwwxvwxwyyyyyiyxyxyxwwwxxxxwxxxxxxxxvhwhwhwwyhxhhixxxxxxxwwwhwXXxvyyyyyxxxhXihxxxxxhxyixyxxgxwwxghwwxwxxwwwxwxwwwwxxwxxxxxxxxwhwhwwhxxwxhxxhhwwwwwwwhxxxxyyyxxxxxxhxiyxxxxxyyxwvvxwxwxwwxxwxxxxxxxhxxhxyxxxyxxxvwwwhywxxxxxvxgwxxhxwxgxwwwxwgxxwxhhihwyYwxxiHXXiYwXxgxiwiYiYYYgxxvwwhhyxhYwwhxxxxhxhxxyxyyyxxxvwxxwixvhyhxwWwhwwhgxwxxiwhxxYXyiIiYhhxhiyxxxiYziYiIwhxixywwiwyxixhxwhxxvxgwxwwwwxxwxhxvhuxwxxxwxxxxxhxxxhxwgyvxxxxxxxwwwxxvxvxxxxwxxxwwfwwxwwvxvwyxxxxxxwwwwwwwwvfwxywxxxxhxxxxxxyvxgyxugwxwgvwxwxxwwwwxyyyyxxxxxxxxxwwwwwxxgwxwxxyvwgwwxxwwwxhxxixxwwwwwwxxwwxxxhxxwxxwxxyyxyhxxxxxxxxxxxyvwwhgghgwgxxxvvhwwxwWwxxwhxxxyxxyyyxyxyyyxxxxxxxwwxwwwhwyyyyxxxxxxyhxxxwhwwxgwyyyyyyyxhxxhxixxxxyyxxhhxxxwhwWwwhxvxhwyyyyxyxxxxxxwwhwwxhxxxxvhwhhxwgwxwwhhxxxxwwwwxxwxxxyxxxyhhxhxxxxxyyyxxhhxhxwwwxxwxxxxyxxfvwwghgwwxxxxxxxyxyvwhvwxxwxhhihxxxwXvxvxYxwwwxvgXvvgWxhhhhyyyxyxxwhwhxyxgxwvgxxwxxxxxwgxxwwwwwwwwxhhvXyyyyxxyxxihxvwhhwghhxwhXyxvhhxxhxxgxwxxhhvwXxhhhxxhxhiwxWwxxvhgwwxxxxxyxhyyxgxwhwgxgwXvhgWwxxxyxxhxhXiuwHixixixyxxxxxwxxwwwwxxxxxxxxxxyhyxixywwxxxxxxhxyyxxxxxiwxywxxxxyxxxxxxixxxxxhxxxxwxwwwwwxxwhxxvxwwvhXhuxxwwxxixixhhhyxxxxxxvxxvxhyvyxxxxxyxxxxxyxxhwuwhyviyyyyyxywxwxwyyyyyxixhxxxxxwwwvgwfgghfxwxwxwxwyxxxyyyyyxxxxxhhxxxyxxxwwgxvyxxwwxxyyixxxxxxixxxwghvwgyyyyxxxxxxxyywwyxwwxxxxxwxyyyxwwxvxgxxwhXXihxyxxxhxxxhxxxxxxxxxxxxxxvxhhxwwxxhhyyyxxwwwwwwxwxihhyxhxxhxxhxxhhhxxxxxxyxxxxxxxxxxxxxxxxwhhghxwyXhyXHihihxxxxiYyyyiXwixyhwxyxygwxvxhhxixxhXxhyyYwhxxiwiizigxxxyyyhXwyhXyyyZzzzzxgwxxwwyyyyyjjzxhhxxxhwhXwhwhjxhhxhXhxgxxxxxwxwwwxhxyxxxxyxxxxiyyiiiyyiXxyxxwxxxxxwwvxvhxxxxxyxhxixhxxhwwyhyxhxxwxxxxwwxxwyxuiyiiyiiwwxwxxwygxyuxyyxyyyxxxxxxyxxyizjzjxxyxzjZjzyxxxiyyiiiyxixhxhxxxyiiiyxixxyyiyyxxyyhhixyxxxxwxyyyyxywyywxywhvixhxhkJjjjKjvyxxxxyXxXxiixxxixghxvhhywywxxxwxwwwxhjYiiiZYyixvxhxxiviivwhwwgxy[Zjjj[jiyxiwhxxZYYYYZiywxxvhxxxYyhhxwhxfxxxxiyyyiyi[[[{[yyyiyyyyyyxyyyxxxyxxwxyiiiiyyyxxxjjjjjxxxxxxxxxxxxxxxxxjjjjjyxxxxiyiyyyxyxyywxxxyxxyxxxxxxyyxxyyxxxxxjjjjjxyxxyxxwxwywxxxiiiiiiiXxXxyxxxxxhxxxxwyxvxxxxiyyhhhxxxxxwhxWyxvwwxxwxxYyyYYYyivxxwwxxwgxXxyxxxwxxxxhxhiHiixxxxxxhiyiihixwwxxggxhxhxhxxixhxxxxwxwwwiyyiywwwwxyiyyixhxhxhxxxxxxxxxxxxxxxxwxxwwwxwyYyYyYxxxxxwxwyyyyyxxxhxhxxxzjjzjxxxxxxhhhhhfwhwwvwvfwwwhvwggxxhwwxwxxwwwwwwxxxxhxhxvgxwgwgxxxxwxxwwxwxwwwwxgwwxhxhxxhhxwhvwxhxxwwxxvwwwgghyyxxwwxwwxhxxxxxxxxxxwwxwwxxxxxxhxxXvhxXxxxxwvxxwhvxwWwxxxwwwhgwiXyiiIixxgvwhxxwyvxgxxyhiixhxxhvxgxwhvywwwivxvxhvYIyiiIYxwyxwwwyxXXiiIixwwwiwwwxvxgwhyxvhyyxyyxXxgwxhhxihhixiYyYY9iywxwwwYxxwxwhwXwhhxhxxyxyyxxxxxxxwyxxxxxxxyyzyiwwwwxiiiiyyjjjjZxhhxhhxxxxxxxwxwxwwwwxwwYyYyYyyjjjzjhxxxxhxxxyyiiixxxxxxxxxxhxxxxixihhhyuxhwwhhwvwxXhxwxxxxxyhxxxhhhhihixyhxhhixvwwhhywwxxxxxxxxwwgwwvhxwxxxxwgvvwvhxxhxxxxhhiihxxxxxxxhxxyhxxiihwxxwxxwxxxwyxxxwwyyyYYYywwwwwvhxxxwxxxwxxwXwXxxyhhwxxxwwxxxwxwyvxyxxxxxxxxxxxyxvxwwwwxxxxxxxxxyxxxyxxhyxixhxhxvhxwxxxxxxxwwwwwwxxwxxyxhxyxxxxxxhxwxvgxxxhwxwwwwvwwwvxyxyyyxxxwwxxwwgwxxxxxxwwxwwxwxwxwxxwwwwwxwwxxxvghwhwxxxxxyyxxxxxwxxwxyxxxhxxxwwwfgwgwhhgxxxwxwxhvvWwxwwvxhfXgfWwgxgWguxxxxwhwwxxxxwwwwxwgwwwhxhxxhvxhxgvwwwvwwhghvuWxxxxxwxwxxwxhhhhhxvwxwhhxxhghhwwxggghgigvXxyxxwxxwwwwygygwwwgvwffgwxwwwwxxwxxgxvhhwxvvfwwgvXwXhWxhxxgwxXwWhfwvHvhhhhhwwwwxxxxyxxxvghwvghxhyhhxxxwwfxwvgwwxhhhhiyiyiyywwwxwxxxhxwwxxwxxxxxhXhhhiiiiiiixxxWwhvwXhwxxyxxxxihxxwgxwwhxvxxxxxvvxwhvvXWxwxxxxwxwxwyxyxhxxxyyyywxwxxxwwwxhvyyxxxwywwxyyyyxxyyyyigwwhhwwgxxxxxxxyxyxixxwxxwxxxyxxyyxxxvwwxxgxwxyiiyyxxxxxxxxxxxxxyxhxxxwxwyxwyyyyyiixxxxxxxhxyxwxwxxwxwwxxxxxxxxxywwxxwwyyyiyyyyiyyyxyxxxxxyiiyzxxxxxxxxxxxxxyyxxyyyyyyyyyxyxhhxixxyyiiyxhxxxwxwwwxxwwwwwhhxxxxxxxxxxxxxxyyiyijyyyxxxwwvwhgwhwxgxxwwvyxhivxxYYihYYhwxvxYYiiIiwxwwwhhwywxwwwigxhhixhyihhwgxywiwXxywwgxxhxwwwxvyvxxxxHhxiYXhywwxyxwxxwwwwYYyiiYYXxXxyxhwhxhwhxgxghvhvvxhhxxxxxxxxxxxwgxwwvwwwxhxxxxgwwghhhhhhyyyiiiyxxxyxxxxwxxxxihxhxxxxxxxxxxxuhwvwhywihxhhyxwwxxxxwXxwhhxxyyxxyxxhyxwgwxwxxwxxxvwXxvxXywwxwxwwxxxxhxxxxxyyyxxxxxxxhhhhxwxxwxxxwghhwwwwxxxggwhhhxxxxhxxwxxxxxxxxxxxfwhhxwxwxxxxxxhxxhwgvhxhhwxxxxxxxxxXXXxxxxxyxyyxyyxxxwxxwxwwxxwwhxhxwwhhvvxhvhXhhhYYyiiYYwwxxxxwwwgwwvgxxxwvwwxxvwgwwgwxxhxvwhxxuggughwwwwxhwwxxxYhihiXwfxwhwfwwhhhixwvgwwxxwxwvwvwvxhIXyiiiiwvwxvwvwxvwvugxwYiyYYiiwwwvwwxWvhhxuxhXXgwxwwwgxvxxgwwYiyiiYiwxxwxxxvwwwwwxgwwhhhhxvhwhwhwwvhwxgwxwhhhhhxwwwxxwYYyiiYYHhxhhXhwwxwxwwxwwxgxxggxuxwuhhiwxyxvxhXxwgwvxXXxvvxxxvwhxXhxXXHhxhxxhgwxhvvgIY9YIXhwxhxgwWxwhwxxgxxYXyyyyXghwxxhXwWxvgxxwwwxwgxfwhifWIY8YXxwhxxwxxxxxxwxxwxwIXvihigWhgxyxXXhvxhxxvvgixxxwghvwg:Y9YYigwwhhwwgihyxyihhxwxXhwwWxwxwxxwwhhyxxxWWivxhiivHXggxWxwwVxwxxvxwwhxIH)HXvxhxxxvhwwwgghiwhhxhhxxxIYyYIYYhhhhxIiyiIYYgxwwwxxvhhxXhvgvxvhggwwgggxxwxxxxxxhhhhxhxhhxXhhhxwgwxhxwxx9iyY9YYvwwwhywxxxxxJjjjJjJXXXxxhhhxxxggwgxXxxywxWevgXvwxwwwwgwwvxxxxwhxhwxwvvhhvghhxxxxhihhhYyyiigtvWxxxhhwgwwwgxxwxwhXxyvwgxwwwvhgwxxwxxwxwxIxihiguwXxwwwvywxgywXhhXyyxxxxxwxxhxfhXXYxvxvxhfxgwwwgxxyxxxYxhhhuwHxxxxxwyxxyixixxxxhyhxwxwwwwwxxxyxxxxxxxxxyyxxwxwxxxxyyxxxxxxiyxyhhxxxxxxvxyhxyuxxxxxxyyyixxxwxxhhhhyyxyyxxxxxyiyiyixyyyxyxxyyyiiiyxxxhhhhhyihyhxxxxxxxihhhihyyiyyiiyhxihxixxxxxvxvvXvXxWwyiyyxxxxwiYyiiIYixXxwyyyyjjjhxwgxiyxyxwxwgxhihhiXYyyxxixgwxwyyYyywxxwwgxxYiyxyYYxjzjzzxhvhxwyyiyyxwwxxgwixvxhghxxyhhyhiYHxxxxxxyyyyyyyyhhhhhiixxvhwyuxhgxxxxxxhxxhhhxxxxxxxyxhxxxhxxxxxxxxxxxvXvxhWxwxxhxhhxxyxxyiyiyiyywxwxxwwgixyyiiyyyyxxxxxxyyhxhxxxwwvWxxxxxxxxxxyyxyhhyhxhyyyyxxwwvxwgxwxxiiywxxwxxyyyyxyyhxxxxxxxxxxxzyygghxxvxwwgxxyyxyxxxxxixxxxiihiiiyxxxxwxwwxxggyyxyyyyyxxxxyxyxxxhxiwhwhxxyixxyxyhyyxyxxwygvxxxxxxxxyyyyxxWxxwzzjzzxwwxyxhihxxixyyyyyyyxyxyyyyyyyxiixxxxxwxyyxxyxwxxxiyyyyxxyxxywyxxyyyxxxxxxxhxyyxhzzxxwywxxxxxxhxYyyyhxhxxhxhiiiiyiixxgxxwwwxwwwxxxwwxxgyhuxxxxxxxxxhwxxxxywxxxiyyihiiyxxxxhihihyyyYyYyxxwyxxwvwxfyyyyyxwwxwxwwiiyyiyiyxxxyywwwxxwxwxzzzzzhxhxxhyxxhxxxxxhyhyxyxyxxxYyyyYyyjjjjjxxxxhhhiyxwxxwwxwxxxxxxxxxxxxxyxxyxxhyhhyyzzyyyjIiiijiwihwwXxxxxwhwxhgyyxyXwxgwxhwxxxyXwjIiiiihhhwwwXyxyyvhwyxxYwxxxxgwgxxvxhxHihiiZ9YYYZiwXvyxxhwhgxhgwxxxxXwwhwhxyxwxxxywwWhihiHwxvhgwXxxxxwiIiiiixyyiiyxxwwwwxxxxxxxixhhhhhhxxxhxhyyyiiwwwxwwxxxxxxxxxxxxxxxxxxxxjjzzjxxxxxxwwywxwwwiiiiixxxxxxxxxyyyYyYyxxhzzzzzuwwwggwwhxyhxxwwwxwxwwwxxhxxhxxxxyiyiyxwwxxwwwwvfvwvxvwxvvixiixxhyyhxXhxXwxxwwwwwwxwgwxixhxxhxvvgvwwxuxxwyxxxxwwwwxwwxxxxxyyxxwxxxwwwwxhxhwhxhhxwhxxhhhvwwwgvhwwwwvwxgxgwwgxXxwWxxyxxxxxxxxxxhxxxyhxxxixxvwvwxhwxxwxhxxxwiWvwhXwxxhxxhvwxXvxxXwxxwwxwgxxxhyyxwxwxxyiiiyxyxxxxxxyyyyyYyhHhhHxywxwxvwxwxhxyiiyyxxxxxxxxxxxxhxxxxwhhhhhxxxyyyiyxhhxhhxxwxwwwwwwxhxwwwxwwxwwxxxxxjzzjjyYYyYYyxhxxhxxxxhhxihxxxxxxxxwwwwxxwxixixhyyyzyyiHyXhYYxvhhxxfhhwwxxxxiywxYwwivxxyXwwxxxxvxxxxXiIyXiXhhywhxhwxwhwxwwxWiywwxhwwgxwxwxgxhvwY9yYYYixxxyhvxhgxyxxXxxxxvwiwiihhIwwhxwwhgxwXxxxxwiIiIiIixwxwyxxhxxxwxwxxxhxxxyhwhxxwxxwwyyyxwwwwwxxwhxxyxyxxyxxxxxxyhyxxxxxxwwwwvwyyvugwxxhxvxxxxhhhhyyxwxwxwwhvxwhxwxxhiyxxyyyxyyyxxxyxWvvxhXhwiyyyyyxxxxxxxyxxxxyxxxywvgwggwwhgggwxxxxhxxxxxxxxxyyywwwxwwwhxyhxxxyyyxyxxxwwxxwxxxxyxxxwxxxxxhxxxwxxxwwxwwxhxguvguWghWwhxxxhhhxxxhxhxyxyxxxwwwwwwxxyxxvfwhvwwfwwwxxwwyyyxwwxxxwxxxxxwwwxwxxwyvvhvvhvxxgvxxxxwwwxxhxxxhxxxhhhxhxxwwwwwxwwxxxwxwwwwxwxxfwgvgwwhggghHxhxYXXxihxhwyyiyyyYiyxyixyxivxxxxXyYyyiiiyyyxyhxwxhhjjjwhxxxwyyihXxxyhwXyyyZzzzjwxxwgiixxxiiihxixxYvwhiwwxgxyxyiyXxyihXyyyyyyxxxhxwxwxwwxyyyxxzyyiixyyxxxxyxxiiiyyxxxxxxxxxhxxyyyhxxwywwyyxxyyyyyyyyyyxxwwwwxwwxxxxxxxxxyyyyyxxxxxxxxxhxxyxxxxxwwwwwxyxxxxxxyyiyxxxxxxwwwxwxwwhyxxxxhxxxwwxwxxwwxxwwwwwwxxxxwgxgfvwwfgwwwxxxwxwwwwxwwwggWwxxvvxhhwhxxxxxxxwxwxxwxxxxyyiixxwxwwwxxxwwwxxhxxhwgxxvxxhyyxxxxxxwwhwgwxWhvxyyhxxhixyxxwwxvwvxggwxxxxxxwwwhxxhxwxxxxvxwwwxxxxyxxyyxxxhyxxxxxxwwxwwwvwxwvwfvwxxxxwxyyyixxxxxxxxxuggwhwwvxhhxxxxxxwxxwxxwwxxxwwxwxwwhwgxxwyyxyyyyxxywvwwxhhggiYiiiiwhwixhxxiyxyhwwgxxwwXwhwwxhwhxhiIyihXhwYxxxxwyyyyyyxxYviywxhwyxxxixxxxiHyxhiXvhwhwXywyiwwwgxwwhgxwhwxwXhhiyhhxwxwxwgxiyiXYyhXhiyyhyyxxxhxvxwwxwyyiyywxxwxxhxxxxxgxxwwxxxxyyiyxxxxyxxxyxwwwyyyyYyyiihihxxxxuywwxwyhhhhxxihhhiyyyYyyyxxxywwhxxhhhxxWxxwxwwxwxwxwvxhxxxxxxxxxxxxxiyyiywxxxwwvwwwxxyyyixhyxxxxxvvwgxxxvhxxxvgwxxxxxhyxxhxxhxxxyyxxxxwxxxwwgwXvxhgvyyyywwvwgwhwwwfwwxhgHvvGwhXXhWxxyxxyxxviwwwxwyxwwwxhhgxxxxxghvhhwxvwfwwgxwihYGyxyxhxxxxYXhYXxgxgxxhXhhXxxxwwWhvyihYvHxxyxwwxwxxxwxhyxxgwwhwhWgwxxxxyvhhxiuxwgxwwwggxwhIhhHxxxxWxxYXYv8vxwwxwxwxxxxxxxxxXhxWxihiiiiyvWwwvwXxvuvxxvxgxviiiiiyixxxwwxwxxxxxwxwwwwwwxwwwxxwxxxxxxxvwhhvxxxwyYYYYyyxxxxxHhhHhxhhhixxhhXxhXyxhxyxyyfwxvwwhggxxgxxyyyxyxyxxxxzzyxxxxxwxxwgwwzzzxxxxyixxxxyyxvwxxwwvyyyyyyywywxwwwwyxhxxxxyhhwgxxxwfXhxyihhwvxfxvwvxwwxhvwxwxuwwWvxgwuWWxxxhWxxxiiyihyXfwwfwwwwxwwxwwvgwwwuxwxxwxwgwwwvgwwxvwxwiYyyYiiwgvgxwxhhvxxxvxXxxxgghhxwwgwwgvhHhhhwvwvgwvgvwwwwiiiiiiihhxhhhhwwhxhvvvfwvfwwgwgvWvWxxwuwwgvwwwuxxxwwvvwxfwwxhxfWguguhggxxxvwgWwhhgwghxhwwvwwvgwwfwvxghfwwhxxwwwxWvgwxwxwXXxhXhhxvggvwwxvwwwvwgwvxxxvxfwvgwwggwfwwwWghgvxxwxxxwwgwwgwwwwwhhXhXxhgxwwgVvWhvhgvhhvxvfxxxxxihwxgxWggwuxxxxWwXvhhghxxxvefWxxxxxwwwwwwvxvxhfxgwwwgiXwgwxvwfygfwgwwggxxxxxXwuxwxwfgXwwwwxxhvxwhXXXxuxwxwwwxgwgvhHhhxwxuxXuxXwwWyxxxhhxhwhwfwgXXhxXXYhwwgwhxvxxxxvgwXxyxughxxgwwvWWxxxwwgwvxxxwYhhXihwXWwghwxxxhvwvWxgwuvwfvwgwwxhgfvvwwfxwxxxvxxYiyiYiYHHhhiWvvXxxxvwxgwwwhxwXWxwxwghwixvvxhxwwhwvvwgxwxxfxwIyiIii8YHYHiivgwwwxvwWxxXwhwxwghXyiyHhXvxxXiGfhgxxghevXxwwG8XwGXWtxWwwwxxhhxhwxxxxYXvxhhxGxhxYhhuhxWxwgxwvxwxw)IHHXxxgvxwxxxxwyXywxywXgivxIiwGgwxxwyiyxhxXWiuxxXy8hhfXwhwwVwhghwwh8X8XXXhhhxhxhhxgwwwhwxxyywvxvgXhxhXxXwxwxwxwwhxxvwwxhhxXHhhvvwvwwxhXihXxxwxhvhwhwwwwxxxxvgxwxvwxxggguWgvvhyxywwvwxwhxxhXxhgxxwwivyxgxwxwwwxwwxggvxxxwwyyiiyxxxxyxxyxhxxixxxxxwwxxyyiyyiyyiyyixxwwwxxxxhxxxxxxxxxxwwxxxxxxxxxyyyyiyyyxxxxxixxxxxyyzzxxwxyxyyxyihyhxyxxwxxyiiiyyyxxixzzzzjyyxxwxhxxxywyxxyxxxxxxxyxyyyyzzzzyyyhvhvgiyyxyxixxyxxxxxwxwxxxxxxxwhgugxixxxxxihxhixxxywxwvvgvwhfvxxwxxxxyyyyxxyxyxiyyiiyxxhxxhyXWvwxxvwxxghfxxxxxxxxxxyxxxxxyyxxwxwwxxwhxwvxxhwxvvwhwxxwwxxxxyxyixywxwxwxwxxxvvgvwwuxwwwgggffwgwwhxxxyxxxwxxwxwwxwwxxxxyxxxxxxxxxvgwwvwywxxxyyyxzzjzzhxyxyxixyiiiyxiyyhxjjzjjxyyyywxxxyiyyzzjzzxxyyy{{{{{yyxxxyyihiiiixxhxxzzzzzxxxxhhhiyxhxxiyyywxxxyhxxxyyyyiwxxxxyyywxxxyxyyywxxiyxyxxxyyzzzzxxxxyxyk{{{[{{{zzzzzk{zzyzzlȌȌxyyywxxxywxxiyyyyxxxxyyyiyyxxyyyyxxwxxxxxxhxxyxxyxxhxxhxxxzzzzwxxxzzzzziyhhihxxyyyyyyixxhyxxhhihyxxxxxjjjjjhxywxxxxyYYYYyyxxxxiyyyywxxxxyhhhixxyyxxihiiiixxyxyxxxzzzzzwxyxwwhxyxhxyiyyyyzyyiyxxxxxxxxxxyiyywwwxxxxxxyyxxxxxyxyizyyyyyiiyxxxxxxxxxxyxxxxxxxhxxxyyywwwxwwwxxxxxyxhyzzzzzhhxxxwwwwxxxxxhhxhxxyxxxxxxxxxxxxxxxxxxxxxxhxxyxyxxxxxxhhxhyiyywxwwyiyYyxxxwwxiyiiixwwxxxiiyyiyywwxxxxxxxxxxxxxxxxxxxyyyiyyyyyyywwwxwxxyxxxxxxxxxwwwwxxxxxyyyiixhxxxxhxxxxxxxxxxxwwwxxwxxxxxxxxxwxwhxhxxxxxxxxxyyyiiyxyxwxwwwxxwxhxxxxhxihxxxxwwwxxxxxxxiyyizxhxxwxyyxxxyyyxxyxyxhyiyyyxxxwwxxxwixxiyyyxxxxxxxxxxxxxxxxyyyyyyhhxXXxhxyyhxxxviuxggxvhxvwhxwxWwwwwwxwwhhxiyyIIiihwxgwxwxwxwwxXhhXhwxxwhhxXXhXwxhhxvgwwhywghgwxxxxwwvhwxwwwhxXXhwwvwxxwwhxwYiiYYiixhxxhxwxwxxyiyyzxxxxxxyxwwxxxyyyyxhxyyYiiyhxxhxwwxwxxxyiiixxxxyywwwwwwxhxhxxiyxxxxxxxxiiyyzyxyxyiixhxxwxxyiiiyyyiyYYiYyxxxxzZzZzwxhxxxhixixxyyiyiyxyyjjjjzxyxxxxxyiiiiiwwxwxwwwyyxhxwxwwgwwwvxywwwwxwxgvhxxxxxxxxhxxxxxxxxxxxvwvfvwfxwwvwwxvWvxgwvxxxxfwggxwwxxxyxxhyyhxwxwxxfwvwwxxwYYhixyyhyyxxihhhihyxxxxxxxxxhXXhhhxyxxxyyyiYYiYYyxyxyxyvvXuwXuwhgvwxyhihhhixixyixyxxxYiiYYiyxxyxyixiyHHxhhwvxvwwxxxyyxxwxwxxxWgxxxxxwxwvwxwxhxxxwwyxhyxixxxyhxxhxxxwwxwgvvwwhgugvxwgvywhxxvhxyyyxxxxxxxxxwyxxhxxxhxxyxyyyiyxhxxhxhxxxxxyyxxyxhxxxxwxxwwwxwwwxxxxxxwwwxxwxxxwwwxxwxxxxxxxxxxxyyyixxxxxxxxxyyyzzzzjxhxxhxxxxxwxywxxxyxwxyxxhhyixxyyiyiyxxzyyhyxhxyxyyyxxwxxxxxyyxxxzzzzyyyyyvgwxgwwhvvwggwvwwxxvwwwggxxxvvgvwwxuxxwXXxhXhhfwwfwwhvhxvwxgxgxwfxhhxXHhXwwvgvwhWxwvWuhugWgwwwxwvvgvxvgvwvvgwwwghwxwxwxwwwwhhhXXhxxwwvgxwwwvWgWWgvvgwxwxxwhuwxwvhhgwwhfwhwvgfgwwggvfgwwfxwfwvxwxwyxxyiyyiiywwxxxxxxxxWvvXxxxvwwwxxguwhgxxxhyyxyhhyhhyxxxxxhxxiyxxgfggvwggvxxxwhvvhxxxxxxxxxxxxxxxhihxyyyxyyyyiywxwxyyyyhXXxhyyxyyiiiiYiyhvvhvvgwxvxxyyyyiyxyxjzzjjzxxyxxxXXhxxiiyyiyiyxxyxxwxxwwxwxyzjizxwwxxwwyyxhyyxxyyxxxxxhhyyyyyxxxxxxxxxxxxxxyxxyyyxxxxyyyyyzzzzjyxxyxyxywxxxyxxyxhxjjjjzxxiiiyiixhxyzzzzjywyxxyxyxxiyyhhiyxxxxyyyy{{{{{wwwvxxxxxxxxxxxyyxxhgwwxvwxwxwxxwvhxywwwxwxwxyxxxxyxyxyyxxywxxxxvvgwguwxhwwvxwwvghxwyyywwwhgwxxyxxyixxxwxxywxhxxxXhxhHhXxxwXxwhhxvXvxhWxwwxxwxxwwwxgwwwhxwwwghwYiiY9YixWxxwwgwxghwwhxxwxxxHhXHhxhwwwwwXXxhHhhghwxhwxxwXyvgXwwxxhhxwxhxxvhhXxhXxwxxxxwvhwxxxIiyiIiixxxxxxxxxxxxxhxhxhxyiyihyiyyiiyxwxxxyyyyywwwwwwwxyyixxxxxxxxhxxhhxhxxxxxxxxxxxwxxxxyyyxxiyzyyxxxxxxyyyywwwwwwwwwxxxxhhhhhxxhxhxxxxxyxyywwwxwwxwxxxyiyyyxxxxyyyyyxxxxxxxxwxhhxihxwwwxiiiyiywxyxwiiiyywwxwxwxyyyxxxxyyxxxxxxxxxxxxxxxwwwxwwwxhxxhxhxzzzzzyxhixxhxxxxhxyxxxxxxxywwwwxxxyxxxxxxxxxxxxxxxxxhhxhiyyiywwwwxxwxyxhhxhhxxhxxxxxiiiyiywwxxywxxxxxxjjzzjxxZjjjjxxxyyYYyYyxxxxxxxhxxxxxxxyyyyxxwwwxwwwiyjyyhxxhxyyhhhyyiyyyxhhyhhxxhxxxhxxwxwwwwwwxwwwwxwxxxxxxyyiiywxxxxwxxyyYYyYYyxxxwwwxwxxhhxhhxxxxjzjjjxxhxhxxxxiyhhhhyxxxxxxxxxxxxxxxxxhhhhhxxxyyzyyxxxxywwwxxwxxxxxyyyiiyywwwwxwwxyyyyyyxyxxhhyhxxxxwwwwxwwxxhhxxhxxwwxxxxxxxxxxxxxhyyyyyxxxxxxyyyxxxwwxxiiiiiwgvxwwxxwwwwxwwxwwwfxwvgwwiYYYyhwwgvgwwvxhyxhxxhxxxXwwxwhghhhhxvgwxhxwgxwvwwgwxgYIxhXiYvfggvvwwwwwggvwgxgvwwwhxwwxwgwwhhxiYxiIiixxhXwxvvwwxxwxiYyhXxiwhxxvhxwxwwxwwxxxWwxXxhvhhxxvwwxwwxxxxxxwwxwxwwxxxhyxxxxxxxxxhxwwwwxwxxxwwwxwxxxxxyiyyyyyxxxhxxxyiiyxxxxxxxxxxxxxxxyxyhyggwyyixiiwwxwxwwwxxxxxxXiwxhwxxhxxxxxxwwwhyxxxxwwwxwwgywwxvxxxxxxyxxxhxxyxxyxiyyyxyxywxwxxhxvhggxvxwxhxxxxxxxyxxhxxxhyixxxxxxxxxxhyxxxwxxwxwxxxxxxxxhyxwxvhhxxxwwwxwxxwwxhxxxxgwwxvxxhwXyxhxxiihxxxwxhxxxxxxxxxxxiyiiXxxxyxxxxhxxhxxxyxxxhxxxxxwwxwwwyyyxxxxxxxxhxxxxwwxwwwxxxxxhhzzzzxxxxxxxxxxxxhxxyxhxxxiiixxxxxxxxwwwwwxxxxwxyxyyxxxxwxxwwhxhxxxxywwwwwxxyxhxxxxxyyyixxxxxxxxxxxxxxxixxixiyyywxxxwxwjiyiyxxxwwwxwxzzyZzxyyxixxxxxxhhxxxxxhxhxxxyyyxwxxxiyiiyxxxxxxxxxyyyixxxxhhwxxwxxxyyyyyyxxxxxxxZZzyyhhxxxxxxxxxxhxyxyiiyyyxxxxxxxxxxhxxxiiihxxywxxxwxwxxxxyxxxxyyhyiywwwyxwwwijyiyyyyiiyyyxxxxxxxwwxwywwwxxxxyyyywwxyxxhxyyxxixxxxxxxxxxxxyyyxxxxiyiiyxyyxhxxhxxxxxxyxxxxxxwxxwxxxiiiyyyyxxxxxxyyyywxwxwwwxxxxhxxyhxxixxxyxyyixxwxwwwyyyxwxxxxxxxxwxyiyyixhxxxxxxxxxhhxxhxxxyxyxxxxxyiyyxxxiiyyyxxyxxiYxXYxxgwwwggxxxhwuwxhgwvgxwgvgxwvxvwvvvvfxvxwgwvhYiYxiwxxwwxxwwvxwwxhhxxwXvxvxXxwwgvwxwxgwhxwwhxgvwwgwghXYIiiwhvwxhvwwhffwwwuuywhgxwxwxxwxhvvxwxgvvxwwxgwhxxhxwhxwwxwwYIyhYhhxxxxyiixxxwwwxwyxhxxxxxxxxyyxyyhxwwwhxxxyiyYywxyyzyiywxxxhhhxyxxxxxxxyxyyxxxxyiyiyyjyxxxxxyyxyhhwwwwxxxxxxxxwyxwxxwwwxwxwwwxxxxxxxxxwhwhwxxxxwwxwxxwwxwwwwgxxvxhxxxhwwwwhhvwxwxxwvxwxgyxhxxhhxwwxghvxwwwwwxhxxxxxhxvYwxxyhwxyhyhxxxxxyxyxxxhyxxxxxwwwwwwwxxxwxxwhyxxixhxxxxyyxyxxhyxxxxxyxixxxxhxxhhwvhyxxxxxxxxwwwxwywxxxxxxyyyxxxxxxxxhxhxhxvwyiwhhxxhxxyiiyyxywwxwwhxxxhxxxxxxxxxxxxhhxxhxhxxxxiyhjzzjjxxxiyyiyxxxYYyyYywwxwwwwwwxwwxwwxxxxxxxxxxxxxxyyyyyxxxxhhhhhxhyyyxxgwgwxwwwxwwwwxhxxxhhhxxvwwwxxxwxxxxxwwwxxwyhxxhyxvXxxxxhxhxxxxxxhyhihxxhixwgwwwwxhxxxxxxyxhxxyxxxxxxxxxxvxwixxxyxxhxxxxwxxxxxxxxxxxwxwxwwxxxxyyyiiiiyyiyywwxxxxwxxxxyiyyywxwhxyxxxxhhxxyhyyxxxxxxxxxxxxxxxyyyiygwgxhwwwwxwxxxxwgxvwvvhviIyHYihvvxvwwxuxwgxWxhXwxxxhwhwwvxgxxhhXhhwhvgiwxvgwxxxY9yYYYiwxgwvgvwxwhwxwwhwwgwvxwgwihihhiIyYIiYwwwxxhwgwuuxwgwwhhhwiHXXiYgxxhhvxwwgxvwxxwxxxXwhvwYgwwXwxwwxgxxxxxxxxwwwxhhyxhxxhxiiyyyxxyxxhxxxyxxxxxxxxxxXywyiwwwwxwwwxxxxxxxhyxxyghyhihixxxxhxxyxxxxxxhhhxhxxxwxxxxiiyyihxyxhxxxxxxwywwwwwxxxxxxhwwwxwwwyiyyyxwxwwxxYyyyYyyxhxxxhxxxxxjzjjzxxxxxhhhhhxxxxxxyxxxxxxxxxiiiiixxxxzzzzzgyxwxyxyyixyxyxxxwxwwwxxxgxxyhxxxxxhhxxyxxxxxxxxxxxwwwxwxfwhxwwxxxxwxxxxwxwyxwxyyyxyxxxxwgwxwyyyyyxxxxxxxhhxxxxhyizyyxxxywwywxyxxyiiyxxxyyiyiiixxwwxxwxwxyxxxxxxxxxxxxyyyyyyyyxyhyyiyyxxwxWwywwyxxhxhxxhhhwxxxwwxxxyhwhxhhxxxxyyyyYyyHihiixxxxhxxxxxxyhhihYyyyYYyWwywwyxxwxxxxiyiiXyxyyhxhhhhwxxwxxwxxxxXwXYyXHhhvWgvwXwwwgxxwwhxxfvhvhwwvxhwhhhwwwwvwwhgwwfvwwghgwwYXyiIiYgwxhwwwxwhfgxxgHhhHhwwgxwwhgxXxwhXxwxWvwwvxhxwYYyi9YixxxxwvhwwxWwwxvhxxwuxxwXXxwwxxxgwxwxxvwxxvghxXxxXxvwgwxwxIIiiIiixxxxxyiyyiixhxhxhyiyxxxxxwxxxxxxxihhhxyxyxyxxxxxxwxwxwwwyyyyxyyyyywwwxwwwwxxxxxxxwxwwxywxxywwwwxwxxxxxxxxxxxxyyyyyxxxiiiiiixhxxxhyyxxxxxwwwwwwwxxxyyzwwwwwwwxxxxxyhxiihxxxxhxhxxyxxxxxyxxxxxyhhxxxxxxxxxxxxzzzzxxxxxxxxxyxxxxxxxxhxhxhyxyxyxyyiiyxwwwxwxyiyxyhyyyyyxyyyxxxxhixxwwxxxxxxxyyyiywwwxwwwhxyhhhyyyxxxxxxxxxxxxxxxxxxxyxxxhxhxhxhxxhhhiiiyywwxwwwxxxxxxxxxhxhxxhxhxhxwyyyiixxxxxxxxxxxxxxxxxxjjjzzyYyYyYxxwwxxhxxhxxxyhhwwwwxxwxwwwwwxyyyyyhhhhhyyiiyxxxxxhxxhhhhxhxxxxxxxxwwxiyyiyxxxxxxhxxhihxxxxxxxxxxyxwwwwwwwwYyyYYYyjjjzjhhxxwwwwywwxxhwxxwxxxxxxxxhhhhhiiiiiizzzzz[[[[[[{zzzz[[[[[[{zzyzz[[[[[[{zzzzzzyzzzzzzzzzzLLLLLLČYYYYYYywwwyyyyywwwyxxxyxywwwwwwwxwwhhhhhihhhhhhhhhhhhxjjjjjhhxxxxxxyyyyyhhhhhhxxxxxxxhxwyxyxwxxxxxxxxxxyyxxxxxxzzzzziiiiiihhhhhixxxxxxxxyyyyyhhhhhhxwwwwwwYYYYYYyxxyyyhhhhhhjjjjjwwwwwwihhhhhyyyyyyyyxxxxxxzzyzzxxxxxxxxxxxxxihiiiihhhhhhxxxxyyxhhhhhhxhhhzzzzzxxhhhhhhyyyyyxxxxxxxxxyxyxxxxihhhhhxxxxxxYYYYYYyjjjjjwwwxxxxxyyyyyxwwwxwyyxxwwwwwwwwyxwwiiiiiijjjjjxxxxxxxxxxxxywxyxwxxxxiiiiiixxxjjjjjxxxxxxxxxyyxyxxxxixxiiiyxxxxxxxxxjjjjjxxxyyxyxywyxxwiiixxxxxxiihiiixxxxxiiiiiiiii[[[[[YyYyYyyjjjjjhxhxhxxhhwwwwxxwyywxxxxhxhxhxhxhxhyxxxxxyyyyyxxyyyyyxxxxxxhxhxhxxxyyxxxwwwwxxxxyxyxxxxxxhhzzzzzywwwwwwwwwiiiiiyYyYyYxxiiiyywwxwxxwxwwxwwwwwwwwxxxxxxxxhxhxhxxxxxxxjjjzjxiyhxxhxxxyyyiyxhxhxhyhxxhhhwxwwxhxhxxxxxxxxxxxxxxxxxxxyyyyyhhhhhwxhxwghwhhhhygxvfgvwxwvxhyxxIhhXHYhfwxxggwgxwIhxhHhiwhgwgwgwvgxvghxwwvwvxhihwwghwxghwwwwwxxvhgwwxwwguxgixwXxxwxXxuwgwxwwhhxvxx9iyY9YYvvwxwxxxxxxxxHyyhHhiwXXwxxywhvvhxxxwxhxxvhhvvvgvvxgwwwxwwwwxyyyzzxxxxhhxhwxxxwwwwxwxyyxxughugggxhhhhxwwxwwhxxhhhxhxhxxxxfwwvhfwwxvwwwwxxwwxxwwwwwwxxxxxxywwxxxwxhxxhhhxxxhxxwwwxwxwwzvvgxvvghxwhhihiYyyYYYywwxwwwxwxxwwwwxwwxfxggfwwxwxhvwhhvwxxgxxgxwwxwwwxxxxxxxxhxxiihyxxyxixyiihxxxxxwuhwwwuhhxvxxyhxhxvhgvwhhwxxxxxxuXXuxyxiiiiiihhhxhXxxXxhxhxhyxxxxxyyyyyxxxxxxxxxxwwwYyYiYiywwwzzzzzxxxxyixhxhxxxxxxyyyyyxxxxxxhxhxhxjjjjjhxhxhxxxxxxiiiihixhxxhyyyiixwxhxhxhxxxxxxxxxxxwwxwwxxxyxyyhyhhxhxwxxxyyyyxxxxxxyyyyxxxxxxxxxxxxwxwwwwhxxihhxiyixyxxxxyxyxyiyyiyxxxxyxxIhxXHXhvygvgxxxxxyxwhuggggwxxxxfggxuxhgxwxwxwxwxxIYyYIYywxxxgwhxhxvwxwxwxxxhhhXXxxwgghxxhxHhxhHiiwvhvhxxxyxxhhxgwwgxxwywwwxxhhhXhwhhgxwgwhwxhwwxx9iyY9YivuyhuhwxwiyhihhhhxhxwxwwwvwvxvxwxxxxxwxxxgwwvxxwvxxxxxxhxxxhxyyyxxyyxyxxyyxxwfxwhwfwwwwxxwxxxxxxxhhxxhxhwxxwxuhguxhghxxiihyxxxxxxwvhwxvvxhxugwxgihxxxhxxhhhxxxxxxxxxxxxhxixhhhXXhxxxhxyiyyiiiyxyxyxuxwuhhiwxxxxxxhxxhhhxxxxxxwxxxxYiiYYYiwwwwxxxxxyxhxXXhhxhxhxxxxxxxyyyyywwwwxyyxxxxxixhxhxhxhxhxxxxyyyyyxxxxxxxxhxhxhxxjjjjjYyYyYyywwwwhhxywxywxhhxxxxxxyxxywwwwwwywwwzzzzziiiiiixxxxxxxwxxxxhxhxhxxxxxxxxxyyyyyhhxxxyxyxyyyyyywwwxwwwwxxxxxxxxxxxywwxwxwwyxxxxxyyiiyywwwywxwwyyyxxxxxwxxwxxxxxxiiiiiivwvxhvvwgwxxwwxxxxhxhxxwwwxwwxwxwhwhgxhyhhhxxxwggvwyvwxxxyxyxxyyxhxhxwxxwxxxxhxxxhxxghuwxwwhyxiiixxxxxxhxxhxyxxyyyxvwwxvxxxxxxxxxxxxvwxxvghxwwWXxwgwwughhwvwvvfvwhwxihhHhxIIHiuxXwXyxHhxXHYhwwvxwfggvxwiwhxwwvhwvghixxvwvvwxxxxxxxxwxxwfwvwghwuwhyvwxgxxggxhhiihxxxx9YyY9YYuxhwwhhwwxxwxwwxxIhhXHYhgwgvggwwxxxvggxxvgxxggxxxxxhxxxhxwwwwwwxzwwhgxxhhxxyxhhxxxxxhxxhhhxxxxxxxxxxxxxhxxhhhxxxhxxhhxhhxxxxxxxvhwhvxxxxhhhhxxxxxxxxjjjjjxyyxxxxxxxxxxxywxwyxxxxxiiyyjjjjjyxxxxxxxxxxxxiiihiixxxxxxyyxxxxjjjjjxxxxxxwywyxiixxxxxiyyhhiyxxxxiiiiiiiiiii[[[[{jjjzzhxxhxxhxxhhhhhxxhhhhhwwxxyyiiyxwwwwwwwYyyYYYywxxwxxxxxxxxxxhyxhhhiyyiixxxxxwywxwxwwwxxhxxxxxxxyxxxxxxxxiiiiiizzzzzgvxwixvxxxhxxhhhxwxwwxwwxxxxxhyhxxhhhXhxxxyxwxxwxYiiYYYihxxxhxxvhwvghyxxxxxhxxhhhxxxxiyyiiiyxxxxxxxXxhXxugwwughhwxxywwwwwwwxwxwxwxwwwxwxXwXxyiiiiiwwiwgxxxxvhhwwhyihixxxxxxxxxxxwwwxwxxxxxhhhixYyyYYYyhxxxhxwgwhwhhxxhyhhhxxxxgvwwhhvgwwhxhhxxXXx9YyY9YYvhgwwhhxxxxxxxyvvhvwvghxwwhwwghwxxXXxwgxwgxx9iyY9YixxhhxxxxxxvwhvvxxxhxhxXXhhxxhxxxx9iyY9YYwgvhxhhwhxhhxXxXxwxvwwghxXxhXxvwhxxxhgXxxXxxxxx*jjJ*JjxwhvwxwhwvhwxxyhixxxxxhxxwXYyxhhhhhwxwxuwxwhviYxihXywxxwyyxhxhxiwwyhvyyxxiwhxwhiIyixiiyywYwwwxxiYyiihyyxhwwyiyxyyxyhhvxxxvixxyiiyixhxxxwwwxxxxxxxxxxxxxxxxxxxxxxiyyiyxxxxxZzzZzxxxxxxyyxxxxxxhhixiixxiiiiywwywxwwwyyyxxxxxxxxxxhxxxxxxxxwwwxwxxxxxwwxwwxxxxyiiiyxhhxxxyyyyyxyxwwwxxwxwhxhxxxxxxwxwxxxxxxxxggxvhgvwwxxxyyxxxwwxwxxxxxxwwhgwwxxxxxwhwhwwwhxxxhxwxxxyyxxxxxxxxxyxwwwwhxhvfwwwwwxwwwxiiiywwwwxwwwxxxxxyyyxxxxxhxxhvWWwvwhxwwwxwxvvghwxyxxyxyxwwwwwxxwxhxxhxxxhyyxxwgxhhvxwwwxwxwwwxgwhwgfgwwwvxxvwxhhxxhyxxxyxxxwwwwwwxixyyxixxxxvwvxwwuxwgxhwhXXwwxwxwwwhxxhhhvxxyhhxxwwxwxxhxxxxyiyyiiyxxwwwvwgwvxxxvyYYyyyyxxxxxxxhhxxywwwjjjjjxxxxxyyyyyxhhxxxxxyxxyxxxxxxxxxxxhhxxxxxxxyxhhxxxxhhhzzzzzwwwxxyyyyyywwwwwwwxwwxywyxxiiiiiyxwXxxywwwvxvwyuywwxwxjHhhhiihihiifwwxxvwwxuxwhxyhgxhwwvggxihxhivhuyxxxvZ9YYYZiwxfwwyxxxyxhxxwuxvxhxiwjHhhhjywwyuxwXxxvxvwyjIiiijiyyhyygwvxhwuywwxwyhgxhgxhyxyyxxxxhyxxxhxxzzzzxxhyyyyxxyyxyywxxxxyxwxxyyyyxiyyyywyyxxzzjzzxxwxxhhhyxiixyxuxwwywhxxyyyxxxyyyvyvwxwxxxxxxxxxxvwxxxwxihhxyhxxiyxxiyyxxyyyvxgwwwwwxxwxxxyxyxxxhxixhxxhhihxxvhxwhixihxxxwxxxyxfwwhxwyYYYYyyxxxyhhhixwixxxgwxxxxxxxxyxxvwhhwxwwxwxwxxxvxuxhyhwwxxxxuxwwywXxxiiiiiihxxvyhxxhhihxxhhhxxhxyxxXYYyyYyjzjjzxxxxxxxwxwxxxxxxxxwxhhxxhxxhxxxxxxxxxyiyyixxiyyiyhxxxhxhhxxhxxxxxxwwxwwxxwwwxwxxxxiyyyyywwxwwhhhhhyyYYyYyxxxxxxZjjjjxhxxxxxxxxxwxwxwyiiiiyxxxxxjzjjjxxxxxxxxxwwxwwiiiyyxhhxhhhhhxxxwxyhxxxwwwxwwxxyxyyxxxhxxxiyzyyhxihhiyxhxwvwgwxihhiviwwwyvxyyIIyiiYYwYwwwxyIXiiXixvhghwxwxhgvxvyhxywxvxgxywwyxxwwyxxxhxihwhxwgxwxhwxwhvxxvxx9YyYYiiwiwxwwxIXyiiiigxXxyihywXwwxhxxwwgxwgvwwwxhxxxxxxxxxxwwwxwhwxwwgxxxxxvhxwwhxgxwvgwgxhxxhyxywwwhhxhxxhhxxxxxxxxvfhvwfwwwwwwwxxwwxwxwwwwwxwwxxvXxhXxxxxxwwwwxvwggwhwxhxxxxxxxvvWxwwwxhxwhiihhYyyYYyyxxxxxxhxxxyvwxwwhwgwxxxxwwvgxvwhwvvwywhhwwxxwxxxxxxxhxhhxxxxxihxhhyxxxxwwxxwxxwwwhuhhxxxxyxhxvwxwxwhwwxxhxxxxxywxwxwvxhXxwhxxiihiihhxwxxwXXxxggxwwwuhhgwxwfwwxvwwhhxxxhhyhhYYyiYiYuwwxxhwvxwxghwvhihxXhXhvwwwwwvuihwwhxxxxfvxvxwvvhgwuggwwwhvwxXwwxxhhxiihixhxxhwwxXxYhhhXihwwwwwwwghgxvywywhxvxfvwwhwwggxvxxgxvwwwxwhwhwwwvwhxvwwwgwiIyYiiYhhyhhwwwwxxgvxXhhhxhwwxgwxxhwgwxxwhwhgwvi9yiYYivxhwfhwwwxxwxwwwhxwwguvwvwwvxwgyIyhiiiwxhhXXvxvwgwiIhhiXwwwgxggvWwXwhgwwwvhwwwwWwxwhwxwxwxwwwwwwggwvwxhvhvfgwvvxxwxxxXhXhhhvwwwwxwghxwXhxhhXXwwgxgvgwvvvggvxxwwvuXvvXwvwghvwxwXvwxgwvwxyvxwwvgwwxgvhwvhvgxwvvgxwxvwxxuvgvwwxxwwxxHXxhXhhgwwgxwgvxwWgguggvuhghfgwgwgwwggwggwggvggxhwwxxw9XIXXhxhwxwxxxxxyXhxxhXxghxvwVgixxYyvuXXwwwwvwgwwg9YYYIwxxxhhWxfxwhxhvwxhwwwxhHxxhiYxxxxwwhwwwx8vXwXXXvxvwwhxvvGyYxxxyXHhvhhwwWgyhxiivWxYwyxXXxvxxxwwWwxwvxgwwwwxxxwwv)IXHYxxehhvfwXhxxhxxwwwwwxvxwwwwhygwXwXxuXXwuxHHxhhvhwhxvhgwgvwwgeyxuwgXvxWWvwxhhvxxxxxxxxhxhxvhwxxgxwwwwxxhhxhwtxxwvvvGwXXXXhwhyXghhgvhhxvvgwXWvyghvxvxxhhwvgghwfggwwfwxxxxxxyxxwwxhxeyvxvwvwXgxvxvvgfwwhxhxhxxwwwwwwwwwwwwxxxxxxxhxxxxwhwhuugghxxyxxwxxwwwhxxxhxxyyyyywwwwwwvvxvwxfvghwxihxxxxxxwxwxwwwwhxhxihhxxxhxxwwxwwywwwwxwwxvggvwwxvvhwgwxwwwwxwxwxxxxxxxyxxxxxhxxhxyhxxxxxYywhiwxxxxxywxyxxwxxhxxxhvwxivxxyiyiyywwwxxwwwxxyyxyiyxxxxwxxxhvxhgvhvwvvfwwwyxxwxyyyyxxxxuuixgghxxxxxxxxxihihhhxhyxxxhwhwgxwxwxxxxxxxxxyiyyyyyxyxxhxxyvYxgWxwwxhxwxyxwwwxwwxxxxxhxxxwxwwxwxxxxxyyyyzxwxxwwwwwxxxyxhxhxwwwxxxyxxxwwxwxwyXxhxhhxxyxxyiiyvywwwxxwixXhxwhiwwhxyhHhxiXhyhihxyyxyxxxYyyyiyyyxiyXyxxyXgxhxYjjzhhhxxxhxhiZzzzzvywxgywxxiiyyyyyXywxywXhhhhxxxxxwxwxwxxxxxYyyyYyyggwhwviyyhxxwhxwxvwwwhxxxxxxxxwwxwxwxxxwgguwxgvwwxXxxwxwwwwwiiiiiwvvxwwgvxhyxhxxhhhxXxxxyihihxhxhxxxhhxWwxwwxxyyyyYyyxwxxxxxxhxwxxxxhwxxwxYyyyYYyxxhHihihxyxxwiyiiyyxyhxxxxWwywwxxhxxhhhxxxXyxyyyyiywxyxxxxhhhhwxxxxXwwwgwuwhgxxxwyxxwwyxvwwgwwwwvyywxxwvvxxxwwvxxxyyxyxyyxxiixxxhxwwwvxxxxxxxxxihvgxxwwwyxxxwvwxvwxxxwxxxxxxxhhxxfxgxxxxxxxxxxxyxxwxhyyxyyyyyzxxxxzwgxxuwwhhxixxxywwwxwyyyxyyyyyyyxxgwvwwxwWixi8YwWxxxxhxhxWwxxihHhhIhxxgxwgwwxgwWxwvgXxfXvyHhgVwxgwxxwgwwwxxxxxxxxwwgwxihxhxhxxxxghuxHhvWhgfhhxgxvvgfghxxXxXYywxWwxxvhgwwxgwxxwwyyXhhXywxxwxxwywxwwwwygivxIiwGxxxyxxxhxxxxxxyxxxxxvvwwfxwxxxvxxxxxwxwwxxfwxggwgxxwwxyxxwwwwxxxxxxxxyxwxwxxhuwgwxggvxyxxiyyyvvwxwxxxxxxyyxxxxxxxxwxxxxwwwwwwwwwwxyyxxhxxxxxwxwwwxxxxxyxxyywwxxxxhxxyxxxxxxxxiiyixxyiiyxxxxxxxxyxyxxxxxhxxxhxxxxyxxxyxxxzyjjyxxhyxxxxxyiyzywwwxxyyxyxhyxxxxxwxwxwyyiiyxiyyyyiyyyxxxxxyxxxfggvwgvwvxwhxxhxxxhxxxwwwxwxxwwwwwxxwwXWxxxxxxvhvwxwuwwhggwxxwwwwxxixxyhxhxxhxxxxxxhxxhhxxwxgwxvvwgwhhwwwwwwwxxxxhxxxwhvgxghxxxxwwxxxxxxxxxxxhxxhxwxWvgwxwxwxXgwxwxgwhyhxiwvxwxwxxxwhxiyyxyiXyiiyYwiwxhxgvxxwwhxYYihighxxxwixxyhyYywihwwxxxxhwgxwxwhwiHhhiXiyYxxyyiYyhXxiyyyixixyywxxxhxwwxhhxxywwyyyyyyxxxxxxxxxiYYiiiywwxhhxxxxxyjjjjjxxxxxxxxyhhxxxxhhxxxyyyyyxxxxxxxxzzyzzxxxxxxxiihiiiwwuxxywhyyvxvwxyhhihxhxxxxxxyyyxxxvwxxwiywxyxxxwwwxxwxxyxxxixwfxgxxxyyhyyhhhxyhxyyyixxyxxyyyxxxxxxxvwhyxwxxyyyxzzzzzxhyxxiyxiiiyxxhxyhxjjjjjxyyyxwxxyxhxzzzzzyxyy{{{{{yyyxxiihiiiwxfxgyxxyyyiyyyhyyxwwxwxwxxxxxxxvwxxxwyyxxxhhhiyixxxyyxxyyxyyywwuyxxwwxxyxxvxvwxxxxxxihhhhyxhxhxxxxhvwhgxhwxxhxvxxwxxwjIiiijigyvxxhwvyxxwvxxwYwyyyYvxxwxxxwhwwxyhwvhxxygw[:ZZZ[ZxxvxwwxihgxhwhywxwhwjIiiijiwxhxixkJjjjkjhxxwxhxvxyiwyyyiwxxxhxwxwhhxixxwwwxwwyiiyyhyxxhxyyyyiyxyywwwxxwhyxyyyxxxxxwwxxxxxxxxxxxyxxyhhxxhxyiyyyxxxxxxxxxxxxyyyxxxxxxxyxxxxwxwxwwyiiiiywwwxxxwwwxxwwiyyiyxxyyyyyxxxxxwwxxxxxxxxhhhhyxxyyyxxxhxhxhxyhxxwwwwxxwyyiiyyyxxxxyyyxxxxxxxxxxxxxxxxxxhhXhhhhxhxxxxyyyyfxxhhwxwwhxwwwxwwxwwwwxwvxgwxxxxhxxwwwxwxxxxxxxhhhhxwxxxxxxxyyxgxxwhwxxxxxvhxxwhxxxxxxxxxxxxxwxvwwghxxgwwwwvfxwxyxwxxxwwwxxxxiyyyxxxhgwwwggxxxxxyxyxxwxxwxxxxxxyxyyfwvwwgwwyxxxxwwwxwwhwwwhxxxyxxwwxwxwwxwxhxxxxxxxxxvWgwwWxwgxwwvwhxwxxxxiwYhwxhwiyYIhhYYYxxyyXYyihihxxvxwwhwiwiwixxyhxghxxwxxxwwvwxxxwhwxxixwWwxwghixxxhxxIYxiYiYixxyyyXYyxhiivxhyhxxygwxwxxYhxXXXhyxxxxwhvwxhyihyhwgwxiwwhxxwwwxvhwhxxYYyIYIyxxxxxwwwvwwxywxxyxxhXhhXxyxyxwwwhxhhxXhYhgwwxgwvguuhuhughgxhvxxwvwhgwgwgvhXXhhvwwwxxvhvhxxxwYiyYYYiiXiihhuhxwxwvwxgggwxxvggvgvvgvwgxxwvvxguxxxvwwwwwwxxwhYiyXiggwwgvgxxwwWXxywwvvwgxxxvwgxwxwxgxxxhwhwhwwxghXyXiiywwvxvxhhxxwwxxgvffwgwfgwwwwwxwgvxxwhxvwwxgwwxwwxxgvwwyxwhhxxxXIyhiihHhxhhXXwxxwxxugvhgyhwwgxgwfvvwuxwhyxwhxwgxwIyyiiIiwwhwhxxxxwwxwxXXhhhhxxxyxHhxhhXhwgvvwvhxhwgvgxxwXwwxxgxwwwvwwxxwhXXxhhwxwwxwvhwxxx9iiYYYixwuwWgwwwvgixhxhhxxxhxwxywvhwhxfhgwwvwwXWwxwwxywwwhxwxhuhwvwvWhhhxxixxyxxyyxyvXxxxxxxxxxyyxyyhxxhxwWwwWvWwxhhvixhhvwhxwxwgwwwhhxxhigxxxwgxwwwvhgwhhyhxhxxxxhhuhxW9XIXHxxxhwxwwxwxHXhiXWggXyugWfXvxixgfXXhwgxfwwW9YYY9vgwwxhwvWvhwxxxhxxi9yiYYYxyxwwwxxh9YYYIuggxywweXyIhhhXHXvhivgVvhwxhuixvwfhiIhiiIXhvxhwyvwfgxxwwxxxxwwxxxx*IYIIgvxuwixwxxxxxxxxxxixyyixhhxxxyyxxwwvwxxxwhwwxhxxhxyxxxwxhxhxhxxwxwwwxwwwwfvhhwgwhhwwwwxwhyxhxxvvwwxxwxyxxyyyxxxxxxxwvgvwxxxyhyhxxxhxxxwhwwwwyhxxhyxhxxhxxxxxwxvxvxxxwxhxxxxihxxhixxxxwwxxxvXxxxxxxxxyyyxhhwwwwwwxxxxhwvxxxhxxxxxxyixxxyxxxxxxxxxxxvwhvxwwxvwwggxxxxhyxyxyxxvhwwxwwhghwiyhxxxwwxvwxwwxhxixxxwxxyxxxxxyyxgwwgwxwxxxxyxyxxxwwXxxhhxyyygxwxxxxxxwwxxxwxhzyxyxwwwxwwxxxxxxxxxxxywxwxwhxhxxyyyyxxxxxxwwxwwxxyyhxxhxxxxxwwwxxwwwxwgyhiHiuvXxyxwwxxxxwwwxhxyhWwhvyXgwxWwvgvxwxvhxxhhvhwxyvXhvggvxgwwwuhhwwwxxxhxhxywggxwxxxxxyxxxwxvxxXxvWghfgggwvwvgwwwwygwwXhhYxwxgxwxxwxxxwxxxxwxggwxhxwxxxxxxxwywxxXywXvwihgwxxxxxxxxhxxxhxxxxxxyyxhXXhhxxxxwxYiiiYyixxxxhhugxwwwxwwwhxxxhxxxxxxxiyyiiiyxxxxXXhxxhfxwxxwxxwxwxxxxxhhhxwwwxwwxywxxxxxixvhyhxxyxihxxxxxxxxxxyyyxxhvuxyxxxyyxxyyywwwwwxwyyyxxxxyxxxxivwxwgwxvggwviyyyiixxwwxxxxyyxhxXXhxyyyywxYiiiYYyyyxhxhhxxxxxxiyyyiixxjzzzjjyxXxhXxwgxugywzyyxxxxxxyyyyyxvxhyyhiyyyyyxxxvhfwwxxxxhhxxhxxxxxxxyyyxxwxxwxwxyyyyyyxwgxwvxwxwxYigxXyyyZzzzzvxggxxhwxgwxwwixwxixiIihiIgixxxyyyxyixJjjjjxyyxXywxXxwvxxhhwZzzzzhxwwxxwyyxxwxxxx[{{{{wxwxxxxxxxxxxiYyhhiYhhxhxxyxxxxyxyxxxxwwwvxvxwxhxxvwwhwwxwxxwxwwwxwwwwxhxwxxxxhxhxxxxXhhhvxvvgwyyxyxyxxxgxxwyxxxxxxxxxxxxvwxgwxxxwxxyxxyyxxxxxxxxiiiyyxxxzZYyywwwwwwxxxxxxxyxiixhxxhxxhxyxxxxxxxwwwxxiyhiiiiiyhhxxxxyiiyyyyywwxxxiiyyiwxwiyiyyyxxwxwwwwywxwywwwxiyxxhhxxxyYiiyxxxxhxxxyxxxxxyyxyxxxxxxxxxxxxxxxyiyyyxxxyyyxhvwwwxwvghxxyxhxixxxiwhwiYyyYiiwhhwwwhfxgxhXiiihvxwxwxywywxxxxxwwwxwxwigxwwyihhiwgwwxwwxiIyiiYYyyxxwXwwwxxYYxyiiihxwhwwwwihxixwxxyxXwwxwxvwxvvwvwxwxhhxixxxihxhhyxxxxxxhhxxHHhhiwyxxgwvwxywwXWxwywhxhhxxxhyixxxxhxxxwxywxYyyYYyyvgwwxwXWvwghwwwxxxxxxxwxwXXwxxyxxxxxxxxxxiyiivwgwwwxhhxxxxyyyyyxxhxxxxxxywxyxxhhxxxxxhhxxxyhhxxxhhjjjjjxxxxxyyyyywwwyYYyyyyxxyywwwwwwwwwwyxwwxxyxxxxxxxxxzzzzzxxxxxiiiiiwvgwxxxyxyxxxxhhhixxiyvxxxwwyxxyyxxwwxwxwxwxxxxxxxyixxhuxwwxwhyxhhhyxivxvwyhxxyxxyyyixyyyxxxxxvxwhxwxxyyywyyyyxyyiyxwxxyyhxxhxyxyyyyixhxxwxxxxxzzjzzxhyxxxihhxyhyyyxxxyxxyxxzzzzxxyxhxxwyyhyyvxgwgjHhhhjyvxuxxyhvuywwxwywfwwxhgxhwuxwwxwyuivxhxxwiihihZ9YYYZiwwyuxwhxxvyvwxyxwXxxywwwihxhiiHhhhjixgvhwwyxxxyjIiiijivyvwxwwxuxwXxyfxwwxvhgxhgvhuyhxxwxhhhixxxxuxwwxwXyxxyxxxhxxhwwwxxwxxgxwxxiwwyxxxxwxxxxyYYYYyyvhwhwxhhihyhxxhixihxxxxfxwwhwhhxxvxhyxxxiiiiiixxxXxxyxxxxxxxxwxxwwwwyyyyyyywwwywxwwwwxxxxxxxyxxyyhxxxyyywxxxwwwxxhhxxhxxiiyyiyxxxxxxiyhwwxxxxxxxxxxxxxxxxxyyyyyiiiiixxxxxxxxxxxxhhxhxyxxywxxiyjyyxwwwxwwwxyyyyyxxxxxyyiihihxxxxxhhxxxxxxxxxxxxxxxxyiyyyyyiywxxxyxyyyxxxxxxxxxwwwwwwywwwhhhhhvxwxhxxxxwxxxxxxxxyxwwwwhwuhhhwiiiywgvxwwgwvwwxxwxxxxwwxwwxxxyxxhhxxxxxhxxxxxxxxxyxyxgwvwhhgwwxxyyxvwwxxxwxxxxxxwxxxxhwgxhyyxxiixgiwyyYIyihIhwYwwwxyXXyyhYxxxwwhhwwhgwxyxhxixywwxhxxxiiwxywvgwwxxwxivxxwxxxHYyhXXhiwgxiYXyiYhxhyihxyxhxhhxwhwhwggyxxxxxxxxxxxwwxxvgwxxxhhhhvvwwwhhxxhxxhxxwxwxwwwxxxyyxyxxhxxxywwxxwxhxxhxxwgwxhxwxxxxxxwxxgghxxxgxxxxxxyxwwwxwxwxxxxxxxxhhhhXxxXxgwvxwwgfxxyxxyyxxxwwwxwxhxxxxwwwxwywxwhvhxxyyxxyxxxxxxxxhxxxxhyxiyvxwvxgxvwwvwwwwwxwwxxxxwgwgxhhwxxhxxxxxhxxyixxwgvgxwxxggwxwwwwxxxxwxvxwyxxxxxwxxxhxxxhxwhwxhxxxxxwxxwxwxwxwwwhwwhwxxxxxwxwggvxwwwwxwxxwwxxxwwxhxxwwggwxxwwxxxxhxxhhxxxxwXvyxxhwfvwgxwgvhvxwxxxxxxxxxwxwvgwhXwwwwwhhxwwxwwxxyhxxxxyxxxxxxxyywwxxxwwwwwwxxwwwghwxxxwwvwvwvxhwxxwxiyxxggwxgxwxxgxxXHhvXyxyyxxxxxhhxivxWgwhXgwwxgwwwvwwxvhxxhxvgwhWhwvWwywwwxhwxxxxyxxyxiwXxxxxxhxxxyxywwvwgwWxwugghvhhwxvwfwwgvyhyxvXwwgXxvxgwwwxwgvwhyxhyhxxhhxxxxxxixxwhwhXxwXxgwwgywxyxyyxxhxxxxyxxyxxyxxhxxxyhyyyyyxyyyyyyyzygxvgvxgvxxxxxxxxhxxxxxhhhxyyyxwwwyyyyxxgvxwxxxxwwXXxwwvhivgxwuhwvwhywxxxxxuggwhwwvYiyiYiYfwwwwvghhgxgwwgxXhxXXYhggwwxhhuxhwxxgvwwwxwxwvfxwvxggvwhhhhxwxgxgwxYhhhXihhxhihxwvvxvwgvHyyhHhixxxxxvwwxxxwviwyxhwWwxXxwgxgxwwgxwxwxwvvwghvxghxfghwwfvwxvwiXyiYyiwwhhgwvxxwxhxhhxhxxwWwhwwhxxxxywvvxvwwxxwhvwhhvxxxwiHyxhiXfhwwgfwwxwxwwxxwwwxwxwvgwxxwhwvuxvxwwggxiXiiyhwxxyhhgxwxXYyxhiixvwwxvxxxuXXuxyxwwwxwwxwhfhxxvxvgwxgwwwwwxxxxhwwhgiyxyyWggWWvvggwhwwwxxXhxxhXhhxwwwwwwxxwwwxYYhhygwggxwwxwvvxwxwxihhyxXhhhxfwhhxwxwxxyyHhxhXhXvhxxwhxXxxxhhhwwwxwxwxxxvhwhvxxxvwhxxxhg8X8WWwwhwgwyxwhiXyhxyXHwvxghfvwGWhvxhhwvXHxxhhWvX8YIXHgwwwwwXwvwgwuhwgwygxvxhhwYHxxhhXxxhwxvhxgx8YIXXfxgxxhfvXhXxxyh9hyXYgwWgxwxxhhvwXhXwyhXIxihiguwXxxwwvxwgxwxvwxxwwv)IHHXhxuxhhwvwXxxxxxyxvxwwwywvvgghwvggwgfwXXhhxuwhxwvxwgvhhuxywxfvvghhhxxhhhhxxxwxxwxggwwxxxwwwxxwwwwyixiihwvWWwXvyhgvhxhhvwXxwxwhgwwwxggwxhxwwxwxxxxxhxwwwxxwxxxxxxxYxuyxxwwXxxxxxhxxxhxxxxxxxxxhhxxxxxxyihxixxxxhxxxhxxwwwwwwxxxxxxxxyvyvwhxyhhwivyxgxxxxxxxhhxxxxxxxxxwwwwwhwhxyxyxhxyixyxxyyxxhxxyyxxxxxxxxxYxwxiwwwwwxxxxxxxxhhxxxiyxxiiyiyyyxxxxixyyxxxxxxxxxxhhwxxxxxxyxxyxxxxxxxyvhgwhwwggfwxxxhwyvghwwwxhhhihixiiyxxyxwiyyyyyxyxxxxXvxvhXwwxxxxxxviwyxhwxxxxxxxxxxyYxxhiXyyyxyxjzzixwxxYhhxxxihyhiIhxXXwhxxwyxyxyyyxxYyyyixxxyxxXxxihxwwvxxhwiiiyXwxxhixwxwwwyvZzzzzvixxiyyyyyhyiYxwxiwXwwwxxvxgwwyyyyyyywxwxwwywxwwwwxxxxxxxxxwwxwxxxixhhhyyyyxyyyyxvwxwgwxxxxxxyyhhyywxxxxxxxxxxxxxxxxxxyyhgvggxwvhhxxxxwxxxxxwwxxxxxxxxxxxxxxxxghgvxgwwxwxxwwhhxxxvxwgwxxvxxxxxxyxxxyxxxhxxhhvgwvgxvwwwhhhhwxwwwxwwxxyxxxxxxxxxhhxxxxxXXxxxiiiyyxxxxxyyhhxxxxxyxxxxxyiixhxxxwxxxxxxxxxxxxxxxxxxiyyiyxxxxxwwwxxwwwyyywwxxxxxxxxyyiiiyyyyyyiyxxyxwwxwxwxxyxxyyhhxxxiiyzyxxxxxyyxwxwwxyxywwwwwxxhxyyyiyyihhxyxxxhxhxwwxwxwwxxxxxxxxxxxxxxyxyyyyyyxgwhgwwwxwxwwihxxxyxhyxxxyxxxxwwwvxwvwwxxxuwwhwxxxvhhwvvxwxhxxxxxxxxxxxxxYyyyyyyhhyhhwxwvxwhvhhxxxywxxxxwxxwxxhxwxwyxwhhxxxhxyyhxxhwWxxxiIxhhyXxxxxvXxxxxXywyhwwxxhvwwgxwgvgwxhwiIyiXhhwgvxwwxgvYwxxxhwxxhxwygwxhxIhhhiY9yYiiiwXwwwxghvxhgwxxxxXwhvhhxxvwgwxwvxwhwxxxYxxxyiIiiiiijjjjjxxxxxyyxxwyyxxxxxyyxxiiixxxxxjjjjjxyyxxxxxxxxyyxxixxiiixxxxxxxxxxxjjjjjxxxxxxwyxyxiiiiixxxxxihiiiixxxxxiiiiiiii[[{[[iihhixhxxihhyxhwgxvxvxxxxhhwxxxxxhxwxwiwxwwxwxwxYYYyyYywxxxxvwhxvxxhhhxyhxuivxxxxvxyxxxwwuyxywxhxhxxxwxxxxxxxxiiiiiiYxxxyiyyyyxxxxxxhhhxyiwxxxxxyxxhjjzjjxxwxxxxYYYyyYyhxyxyyyyyiihhyxhxxxyxyiihiiixxxxxxxxxyzzzzzuxvxxxivxxxwwwxxwxxwwuyxywwxxxxiiiiiixxiwwxxhwhhhxyixxyxxxxxxwvxhvwxxxxxxxxihhiiYYYyyYygvwxxvxxxhhhyxhxwxxxhxxxhxhhhyxxxYZ9YYYZivixwhyxyxhgxhgvwxhvxyxyXxxyi[:ZZZ[ZxyxyhwgxhwvhwxvYwyyYxiyxxxhvwZ9YYYZixwhgwhgxhgyxxxXxvwhiwyyyiwvxwiXxxxyXyxyxK*JJJKjjzzjjYyyyYyywwxwxwwwwwxwywwxxxxhxxxxxiiyyywxwxxxxxxhxxxixxxxxxhxxxhxxxxxxyiiyyxxxxxxxxxxxxxxwwxxiiiiihhhhhzzzzzjjzzjxxhhhhxxxhhxxxhxxihxiywwyiyyyxxxYYYYyyywxxxxxwwwwxwxxxxhhhixxyyiiywwxwwwxwwhxxxxxxwwwxwxwxxxxxxxxxxxxxxxxxxhhhhhyyzyywgwwxxYyyyyyyxxwwwxxxvXhwwWiwwyxxwxvwXxvxXxwvhxvwwxwxyxxxhyyxxhxxxxhxhxxxihxxxyxxyyxxgvwxwgwxwgxxhxxxxxxxHhhHhxxxxxxWwxXxiyiixxxwvhwxxxuvwvxxwvxwghxxxiiiwwwxxwwwwXxhXhxxhhhwixwgvfvxxwvwvvvwwwwxwxxwwxxxxyxxxxxwxwwwxwwxwwwwwxxxwxyyxxuwwggwwhxhyyxxhhxxxxxhwhhhwxhxhxxwwwwxxwxxwxhyxhxxiyiyyvvwwwwhgwwY9yYYYiIhhiihyhxvhgwwWxxwwhwxxxxXwwgxxwwxgXIyiXihxhxwwxhxxxxywXvyxxiwhwxwyiwvXxxxxxxxYHyhXiYxwwhhxYxwyiwwwgwxwhhxxvwhivwxwhfhxxvxXxxyxwxxxxIIiiIiiuvxhxwhvxxyxyhxxxhxxxxxxxxxxxxxxhXhhXxxyxxiyyiiiyxxvhivwxgxxxxhxxxhxxxxwwwxwxwYiiyYiiwxxxhXxxhwyvxxhhxxxxhyixxwwxwxxwwxxxxxxhxxhyxxiwwwwxxhxhyyxxxxxxxxxyxxxxxxxxxxyhxhxxxxyxwxwwxwxwwxxxxxxhxxxxxyhxwwiwuXvwggWgwxxyxyxihihxxxwxwwyyxxyyxXhhXhhxxxxxyyyxxxYYYYiiyhixyxxyyYhhXxxxxyyhhhhyyxxxYiiiiiywxxyyixyHhXHhfwwwhfwyyyyyyyyyxxxxxxxxxxixxxvhxwxxxyyyyyyyyyyugwxwwwhxhxxxxyxxyxxxyxwxwxwwiyyxhhxxxyyyyyxvgxwwxwwhHxhXyXxxxYyyyivhxxwxhwwwghwhwvXxxxxY9yYiiYwXxxxxyyyyxyZzyzZyxxxiHxhhxYvgxxwhxYyyyiwgwwxhixwggwxxxJjjjjwghwwxxxxxyxyiIihiyIuwgghwwvxxhyxyiyxxxxxxxxwggxgvwxwwwhhvvxxxwvgwxghxxyixxxxxxywwwwwwYyyyYyyhhyhhwwfwvvgxwwwwxwxwwhWwxXxxxxxxxxhhiiiiiiXXxxxhvwhwhhxxxxwwwxwwxxwxwwhyxyxxxxxxiiwxxwiyyyxxxxxhxhxxxxxxxxxwwhvyxxxxxhxhxhvwxwxxhyyxxxxyxxxxxxxxvxyxxiyiixxxxxXyxyxuvgvxwwvxwxhxxwxwxxwxhxhxyghfwgvwwhvwxwxwyggwxvvxwgwxxxxyxwxxxwiyiyxxxxxxxxvvxwfyxxyxxxxxwwxwxxwxxxxyxxxxwwwxwwxwxxxxxxvwgwxwxfxwwhGhvwGxxxxwwwwxwwhyxyXwXXxXXhgfhgvgxvxgwwWgvhWhwuggyXWgWghvhhgxvwvwwxxhxxxxxxxwvhxxxhwwwwwxwxxxxxvxfxXhvVXXuXXwxwuwxxwwvwyxygHhhHighfggwwvwfgwhwwhxxhwvXgwyWhxxwwxxxxxxfxgyvXhwwWwxwvxwwvyyxiyyxxxxxwwxxhyxxxxwwwxxxxxxyyyyxyyyyyyxxwwxvwwvwxwxwyyywxwywwwwyxxxxxxxyyhgvggYiyiYiYxxhhxxxhhxxxggxxhvXxxxhxxxYiyYYYiwxhxwwwvgwgxxwxxhXxxhxxxxxxwgggxvYYyiYiYvgxgxxvvggwxwvxXxxxxggvxxXXhxxvwxgwxxxxxXXxxxJjjjJjjYYyiiyivvWxgvxxwwWXxxxWwxvxxwvwwwwxwxvwWxxxvvxwwwiYxyiiYwwvxfwvxxxvHHhihgfwgxgwwgxwgvwghwwwxvWwWvwhxwhYyhXxhwgxhhvgxxfxvvvvwwwgwwxxxvwvgvwxxxhxwwwyvgwwvwXXxxxiIiiiiiXXxhXhhvgxwxwxwWvXwxxvwfxvwwwxhxxxWwwxwwwYiiiYYiwhwwxvxwfwwvxxwHHxhhWgxxxxyXhxxXhXxwwwwxxwXvWvxxxvwwgwwwhwwxXXhxxwgxgxwvwgwwwIiyiIiihhthXwwwXxxyxxxxxxhxfxvhfghvghxxvgXXxxxwgxxwwwwxwvhXtyhvggXWXwwwxxxyxxxxwwhgwgwxxxxxxxYhyyhwvvXHHxhhXhvxxgwxgxwgwxxgwXXhhxhxwwwwwWxxgvwxxwvwxwywwwwxxxwwxxihtxiwwH)IHHXxxgwvwxwxwxwwxxxwyXyhgywXXxfhwivwwWgivhywvHXhvxxgwX)JYIIwhwhhWxvgxwxxxxxwxxgvwxxwwiIiyhiIxxwwxxwxwgxxwxww)IXIXvxfxuixwwvXyYxxwyvXIhvihwxGwywxxXywXiYyhhiYYxuyxxwwXhgvggxhgvgg:Y9Y9XIXXxfxgxgxxXHhvXyYxxhiXfwwwhfwhhthXwwwXxwgxxwgwxIY8XYihuyXIhvXwhwhvWxgxvXwWxgxwihhXhHxxgxwwxxxwhwxhXhwWHhwIgHtxYexhwXwgvXiixyhyXxwhwhwihuyiXgvHxixxhxWwhwxWxwxgwxhxwvxgXwwwugIYIXYxwwwgvxyhyhiYIYiixxwyxxWfwwwxxhyggwwuwxhgwuxwwywhxxiIyYiiYuxvxxxivwwxwxxwwvixxxhyYYiiXwwvwxwhgwvwyxxxxxxxxwxgvhxvwwxhxxwhfhxxyXxYyXhhhwwwwffxxhxywwwxxwxwxwwygyXxhxiihyhyigwwvxgxywwxywhxvxgvghyxyhvxwygxxjYiYijYhhwwwyyxyhxhxxwwxvxwyxjHhhhiiWwxwwxxxwwxwjYiiijihyxyywwvvhxwwywyWxwhxfwhvwwhxwgywXyxvxwwyxhyyyvxvxxwyixXixhxxhgvwvhwwiXIYhiwgwxgyxhxhyxxhhyiwwxwwgwwxhyYYhyXyxxhxiYYYyhixyxyxhwhxwgxvxvWwxvxxwvyixyyXxxhxxwhygjjjxxyhixxyyyyyhxhyXxyvhygxxvwxhvyxyxxxyyiyyxyyyhwwxxhyYxxxyXgxwxhyiiyywwxvhyhzzZzzixyyygvxxhXyhyxyHvwhxvwwwgwyyyxxxhxhyixxxxxxxyhxwwxvwxxwxxvguwxggvxxxxxxvxxwhxhxwwxwvvxywwxwwxxxxxxxxhxyyxyxxxgWywwxwxwxwwwwvguwhwwhxhwhhxHXhXxxuvguWghWwwgxgfvwwfgwvvvgvvxgwwxxxxfggwgxwgvwwwxXhXhhhuvwvxxwvxwgwxwwvwvfhxwfhwwwggvWvWWgwxwvgwgwwxvWvhgwwxxxvgfwfwwghhwvhwgvwwgxxxwwwvgvgwhvwvxwwwgwvhXxXhXhxwxwvfwxhihyhxxxxwxyiyiyyyyyyyzyxxhxxyyxyyxxwxxxxwxxxyyxyyyxxhxxzzzzyxhxxjzzzzxyxxxywxyiyyyxxyhxxwwwwxwwxxxxxxxxxxyyxxxhxhxxwwxwwxyiyyxxxxxhxxxxxxxxxwxxxxyyxxxxxwwxwxxwxxxxxxhhxxxxyxxxxxxxuxwghghhhhyyxxxxxxxxyxwxxwxvgfggwggvxxxxwxwxwwxvxvxhhyxxyhyyxxxxxxxxyxxihyyyiiixxxxvxvxXWvuywwxwxhxxxhhxxxxyyhyywxxxxyyiyxxxxyhhxyyyyyiyyxxxwxxxxxgxxwyyyiyyyxxxxwwvwwxxxxxxxxyyhxixxhhxhxxWxxwwxxxwyiyyxyxxxyxxxxxxxxxxxxxxxxxxxxxxxxxyiiiyihhhhhhxxhxhxhZjjjjxhxxxxxxxxxhxxxxxhhwxxxxxxxjZjjZxxxxyiiiiyyiiyyiwwwwxiyyiiiiywwwxxxxwxwwwxxwxwwgwhwwhxvxhwvhhhhhwYYihYYwwxwxwwhxxwwxxwghwxgxxhwxwwwxwwxWhwxwwvhhgxXhhXhwvyhwvxxxwYYyZiiIvuyhuhwxwugwwughhwhwgxhwxwvgwhXwwIIyiiYYvwwgwwwwvwwwfxgvYXxiXiXwwxxxxxxwgxwgwwwwfhxXYXwwwfwwxyxyiiyzxyxyyxxyyxyyyyxxxxxxxxxxxyYyiyyyyxxxxyxhxyiyyxxxxxxyxyxxxhhwwwhhxyxxyijiyiyxxxxxxxxxxxyxyyyyhixxxxxyyyxxxxxxxxxiyxxwgxxxxwwwxxxyyyyxxxxxxwxhhxwwwwwxxxxhxhvyyXxyvxxxxyxyyiwfxwvgwwyxyyxwwwwwihhyxhWXxxxyyyiyiyvwgwvxwxhhxxhxxxxyxxxxhxxwxwxwwggghwggwxgwvxxxxxxixxyixxhXihxxxxyyyyyyyxxxxxxxwgxxxvxxxxxxxxxxxxyxhxhxxxxyiiyyxxxxxiiiyyhhhhhhxhxxxxwwxwxwwhhhhxxxwxxxxhhxxhxyxxxxxxxxxxxwwxwwxxxyijiyxxwxwwxxxjZZjjyyyiyiixyxxxhhxyxxxxxxxxxyyyyyhhxhxxxxxxxwwwxxihixyxxyyxxyxxxxyxyyyyyyyjjjjjxxxyyyyyhxxhhhxhhxhyyxyywxxxwxwxyyyxxxzzzzziyiiyyyxxxyxgxgwhxxvYwWxghvhvvxhhxxxxxxyxxxxvxwwwXhxXXYhwwvgxfhgwwxwwhwxYYyIYIYhXhhXhvXvhxWwxxxwywihhgggwwxhhxgxwvxhYiyYYYixxxxxxwvhwvwhwfIhhXHYhwxwwxwwxxwwwwhwuhhhwvhgwhwwggfwvXhwwWiwwfxvwwwxxxxxxxhxxhhhxwwxwxxwwwxhxxhvWvWxxwuwxwwxwwxxvwhvwhvgxgxxxxxxxxhxhxwwwwxwwhxxhxxxxxxggggwwggvxwwxwwxvwgggwhgvvxxxxxxxxxxxxxwxwxwxYhvyyhxWyxxixhhhxhxwyyxxxgwgxxxxvxxyxxixwixwuWyxwwwwhxwihhhhyxxyyxyxvwhgxxhhXhhxxhxwWwxwwwwxxwwwvywwxxhxhxvxvwxwwgwuxgxxwyyxyyxxxxxwwwXWhwvxuwuvFxhwvwgvxyxxvivhvhhxxxxxxxxxxxxxxxhhxixxwxwwwwwiyyiiyyXXxhhxwxxxwxxxxhwgwxhgihxggwyyyyxxxxiyixxyxhhixwwxxxwxyxxxwxxxxhhgwwWXwxwxwwvfwxgwwhxxxwyvxgxxxxxxxhxhhxxxxxxvxvwxxwyyiiyiyyxxxxxxihixxxxxxxwiwwwyyyyyyyiyhxixiyhihxxWxxwwwxxxxxwgxxxwhhwxxwxxwwxxwxxhyyxyyxxwwwxwxwwwxfwvfwwgwgxxhxywxwxwvxxxxwvwwvwghwxxwwwxwxxxxhhhhxxwxwwwwxwxxhhxhgvwxwvgwxXwvyyyyxxxxyyxhvgwwwhgxvxxyxxxxxxxxxxxxxxggxxxwwhwuhhvwVxyxhxxxxwwwwxwgwwwhxwgxixxxxxgxWggwuwwxwxvixxvXhvvwfhhhhhxhhxvhgwwwhxxyxwwhwgxwxxxxxxgwvghgwvfvwvwYxxvhXugVxhhhxvxwgxiwxxwwwxxxwwhwXXwwxwxwfxxxxhxhxwwwwwwxgxwxxwhvwfvghvfhiwfvUhxhwxyxyyyyyyyyyxxyyyyywwwxgxvxxxxxyxhxxyxxxyywwxwwxhxxxxxxywwwxyyzzyxyhxxwwxxggxxwxxyhxxwwwwxxvWhhwxxxhxxxhhhwwxxxwxwwwwwxwwwwxxuxhgxwhxxxxxxvwwwwxwghxwhxxyyxxyyxxxxwwwwxwwwwvwhhgfgwwwxvwvxxxwxxyyhhxxxxxxxxwxwwwxxxyixhxxxhyyixxxwxxxwxxghwwgWwvxxxhxvyxwywyyyyyywwwxhwxvxxxyxxyhxxxxxxxxhihxxxhxgyxwiyhihxxyyyxxiwYwwwxyyyxxyhwxwvyiyyyyyhxxwwwwxwwxwxxxxxxxxxxxxxxxwwgwhxvxxxyxxwwhvwhwXvvXxwwxyhhyxxxxyyxyyxxwwwxxxwxxwwwvxwxhwgwvgxxxxxxfwxxggwgxwxxxiiiyxxxwyxxwxxhxxxwgwwyhxhxyxyxyyyxxxxxxwwxxwxxhxxxxwxwxwxxxxxxhwxhxwxwwwwxxxyxwwxwxxzzzxyxxhwxxwwxwxwxwwwwhwxwwgxIhxXHXhhhxhuXvwggWgwwXxhXhXhhXwxwxwgxwhwwxgwxxhYiiYYYiwwxwxxwwyxyxxxhwhhhhwYYyIYIYvxwxwxvhxhxxwhwvgghxxxxxxyhhhhhxhvxxhwxxxxxihXXhxhwxxXhxXXYhwhwhvgwxxwwxhhxxxxywhhgxxxxxxxxwxxwwwwhhhxyhxgwwwggxxxyyyhwhwwwwwwxxwxxhhxxxxxviwwwwxhhhhxyxxxxxxyyxxxyyyxyyxxyxxxxxxxxvwxvwxxwxfvwwxxXWwxxxxxxyyxyyyhxxixwxxxxxxxxxxxiiiyixxxxxxxxxyyyyyyyyyxyxxxxxxxxxxxxxxxxxxhhhhhhxyyyiixxxxyyyyywxwwwwwwxxyxhhxxxyxxyxxxxxxxxxxxxxyhixyxyyyyyyzyzzzxxxxxxyyyiyiyxxxxxxxxxyyyxyyyxxxxxxxxxxxxyxyjjjjjxxxyyyyywwwwwxhhhxyixihxiyxxxxxxxwhvxwhhgxxxhxhxyxxyyyyyyyyyxxxxxyyxxhhxhhxxxxxxxxxxhhhxxxxyyiiyiyhxxhhhxyixvxvxxWXvxwgxvwwwxwvyvwxiYxXYxxyywyvxxwwuyxywvxyvhhvwwuxxhhwwfwxwyYXiyiyyhyyyhhxiYxIiiiwwvhxhxvwxhxxxxxyiwvxxvxhyiyhxxhxhxYihhvxfxxgvIiIiIwxfxwWhvxWiwfhgwfWyYxyYyXywxxwxwxgwxh9XIXHwxhxwxxehhvfwXfxwwhGhvwGhHxhXyXgxgxVhgwWxxfxYwXwevXIY9YIxwwxwxwwwiYyiIiYxhwgyxywxiXxYxHxxwxwxwwwhgwxWXwVxhVhwgwVuhIXHX9wwxwxgvyXiiihixxyyyywwwxwxhyhgwvyxwwwvwxgvhhyhvxvxxwiYXYiYhiXiihhyyhyygwgxhxyhyhxyxxfwwhxwxwyxxgyywxxvxxwyhyYhXixhixwvxwhxWwiviivwwwwgwyxx{Zzjj{zwxvxgwxyxxxhxiwxhwivgyxvxwvwvwwwxwjIiiijiwgxhxwxvhywyywxwwwwkZjZZkjxyXwhwhwwwwjIiiijigwgwxhxwhyxyxhgxhgyiyxyyYvhhxhwwyx{kkxxxyyyyyyyyXxxyXxxxwxgygxwwhxxjzzzZwwxwyvwxwwwgywwyixhiyhxxzzjzjyhyhyxzzzzZxxxwxywwwvwvhxwyYvxwxyXxhyxxxxxxhxxhhyiizZyzzxxxyyiyyxxxxxyxxxxxxxxxxxyiyyxwxwxxwwjiyiyxxxxxxyiyyywyxxwwwwxwxxxxxyyyyyyxxxxxwxwwwgwxxyxxxyyiyuhxwxwvwxgxxxxxxwxxxyxwwwwxwxxxxxxxxwwwwwvghwwxxxxxvyhxhhxvxyxxyxwyxyxyhxxyxxxyxxxxwhwgwxwxwxxhwxwgwwxxhggYYyiiYYixxxxxxwxxwxwwhxxwhxhhhwxiwhhxvwxwxwxwhgwwXhhXhwxxxwwwxwwxYiYYYIHhxhhXXxxxwwwxxxxwwWXxugwxgihxxvwxwwhwgwhwwvWXygwxxfwwwxgXhxXXHXxwgwgxxxwwxxxgghxxxyyxxyyyxxxyyyk{{xyyxzjzjzxyxyiyyxyyyyxxyxxxxyyyyxzzzzzxyxxxzzzzzxxxxxywxyxwxxyyyyxxyxxhhhxyxyxyzzzzzzxyyxxxyyyyiyyxxwhxhhhvhwvhwvgwhxxiyyiyixyyxxxiyyiyixwxxhhxhxyyyxxxxiiixxwwxwwwxxhxwwwwxwxxxxxyyyyyxxxxxhxhxxxxyxxxwwwxxxxxxyxxwxxxwwhxhxxxxyyxxxxxxxyxxxxxxxxxwgwxgyxxxxxxxxxhxxxxvxxwxxwxxxxxyxwwwxwwxxwxwhyxyxxhxxxxxyyxxyxyvgiwxwwxxxxywywxxxxxxxhixhhyyyyyxxxxhhyyxxxhwwxhwxxxyyyyyyyxxxxxxxxxxyxxxwwwxwwxxxxxyyyyyyxxxhxhxxxxiyyiyxhxhxhxxxxxxxxxxxxxxxxxxyyyyyyyyxxxxxwxxxxwxiiyiiwwxwxxwxgxwwgxwwwxxwwhhhwwxwxxwwxwwiYiXihxwwxvxxxwxxyhxhxvxhwxgxwwwxwgxxhvhhyvwwwxwwwxxwxvxwwxwxwiYiiiivhhvvxhhxwwxwwvwwgxgwxvwhxwwwxwxwwxxxiYYXiYxhhhhvhwwxwwhghwYIhhYYwxwhwhgxfxggfwwxwxghfwgvwwhvwwwWxxwwhyyyyxxxxxxivhhxxxxyyxxyyyyyxxhxxxxxxxxxxxxiywxYwwyxxxxxxxxxxxhhxwwhhxyyxyxxxxxxxxwiwxyixyixyxxxxxwwxxwxwyiwvvwxvwxgvxxxwxhxxxyyyxiyyywwwwwhhxxxxxwwxwwxxwwxxyxxxxwwxwxwxwgvxwgvwhxxyyxwwxxxxxyxxxxxxxxxyxxxxxhxwxwwhvvwgvxWwuigvhwwfVhxxhhvhxxwwvwwyxxyxxxxxxxxxxyYXwixwwWxxvxXvwxwxgwwXhhXhxxxxhwhhghxuxhwwvhwgwhhwxXxxvwgxxxwwvgxwhixhhxwwwxxxxigxxxxxwgwiwhggvfygwwwgwwffghhhwwWwxxxwwwwxxwgggwxxxxxxxxxxxxxwwxwxwwwvxwwxwxxwwvwxwiwxxxwxxxxxhhhxxxxxxgxwhwxxwyxyxxxxxxhxxxyyxxyxxwxwwxxxxhhxxxxxxvxxhwwgxxwixxyyyxyxwxwwgwxxxxwiwiwxxyyxyyyxxxhhwwxxxxhxxxyxxxyhxwwwxwxxwxywxyxxxxyxxhxwywxiiyyxhxxYxxyygvwwhhwuVwwxxwgwgwxxhhxxgyhxxxxxxxxxyxyyyxxwhxhhWyyxyyxxhhxhhxwwwxhhgxiyxyixwwxwwxwgwwwwhwhvghhwhxhXhwvWxxhyvgxhxxxxxxyxxhxiwxxhYwxxxhhxwwxxgvWwhwwwggWguxXxhhYvGwwggwvwxhxxxxvygvgxxwxxxwwwwxwxxyxyxhxxhhhyhxifxhvvgvvwwwxxxwwwwwwwxhgxxxxwwwwwwxwxwwwwhWXhxvxwvwvugwwxxxxxhxxxxxxyyyixxyixxxxxxwxwwxwxxxxxxxhhggwwwwwwwggwyyxwxxxxxxxyyxxzxxxhhxxhxxxxxxxxxwxxwwwyxxxxxxxwxxwwwyyyyyyyxwxxxwxxwwwwxxwxgwwvxwwwhxxhxxxxxxxxxxyyyxxxywxxwwwfvfvwxwxxxxyyxxxxxwxwggxxwwxxwxwxxwxxiyyywgwwughhwxxxxxxxxwwxxxxixhxwxxwxwxxxyyywwwvgfwxhhxvwwgwxxxixxyxyyxxyyyyyyyyxyxxwxhhxxxxyxxxyxxxxwhwixxxwxxwwxwwvhhxxxxhihxiyiihixiyYxxyyhyhhhxhxwxwywxxxxXwwhxwhxxxyxxxxxxxyyywWwwwvxhxiyixxxxxxyxihxxxxxyxxxxxhwvxwwwxyyyxyyyzzzzjyyywwywxwwxwxxyxhhhhwwwgxhxwvwgwwwgwuwhgfvwgxwgvhvxwYIyihIhvwvxvxwxxwxXwXxyxhhhhwxgwxWxwgvwwwghhwwwwxxxwwwxwwxxvhxgiXxiYXixxxyhwwwhxvgwwgxxwwvwhgwxvghwvghxiYihYhxxwhxwxhwgxxwiXxYhYXhhwwxggwxwhXwxxxwwwwxxxvghhxvwwxwwxxxhxhxxxxxxxxiiyyyyyyxZZzyywwwxwxhyxxxxxxxhhxxxxxxxxxxxxxxxxwxxxxyxxyyiyihiyiiiiyyyihxxhxxxiiiyixxxwxwxxxwfwhxxxxwwwwwwwxxxxuyvxwxiwxxxhxxhhxxxywgvxxxxxxwwxwwxwxxfxwxxxxyxxwxvxgwgwwwwxvxvwyxhxwwwwxxwwwxvxvwxxxhxhxhxhywxWxxvxxxxxxyiyyixhhxxxyyxyxyxxxxxxxxwwxwwwxxhhhyxxxxxxxyyyyxxxxxyyyyyxxxxxxxxxxxxxxyyhiyyxxwxxyixiyyyxxhhwyyiyjyyywwwwwwwxwwhhhhhxxxxxxhhwxwxwwwwihhxxxxxxxxxxyyxyxxwwxwxxxxxxxxyiyyxyxxxxxxxxxxxxyxhiyyiiyxxxwyyXyxvhxxixyixhhxxwxyyYYyYyyyxxxxxxhhxxxxxzzzzzxxhhxhxxxhhxhyyyyywwwwyyxxxxxxxhhxihhxxhhxhxyyyyywwwwywwwwwwwwwjjjjjxxxxxxxxxxxyxwyxwxxxxiiiiiixxxgxwggYhhHXIhvwwxwhixwxxxxvxvxvxwwxxvxggxxgwwwwvfxwwgxgwfvvhvwvvfwwhiihhHhxIIHixxxxxxYhxHXHhwwwhuhhxxXWwwvvihgwhhihxwxgwvgwggxuyhwwhvwxwwwxxxxuhwhwgwgwYYy9Y9YxwyuXXxxxgvgxgwuxwhgwvvxxxxxwwyxyxxxxxxxxxhhxxxxxxxxxxvxvwywxxhhxxxiyxiihxwgwwhhxwwxxxggwxxyxxyyywgxvwvvhvxyxyxwwwxwxwxxxxxxhxhxwxwxwxxxhxxhhyhhhxxxvhvgxwxxxxxyxxxxyyyyyyxxxxxxxxxxxxyyyxxyxhhxxhxxyiiyyxxxxxxxxhxhxyyyxxxxxxxwwwwxwwwxxxwxwxxxwwwxxwwxxwxxwwxwywwwyyyyyiiiiiixxvvxwxxhhxxxxxxxxxxxxxxxxxxxxxwwwwxwwxhxhxwxghwhhxyxxxxxxxxxxxhxxhhhxzhhhhxhxxhhhxxxxhxhxhhxhhxhxxxxyxwXxxywwwyihihxggwxjHhhhjywyxwxWwywwyxwwxhvhxghxvgwxwwxxxxwwxyyxyhjYiiijixwwywyghwxgxxwxhxxwhyxyyjXhhhiihwwxwhihhyZYYYYZixwywxivxwwxwyWwxxvgxxghxfvwwwxwhxgiYyIiiYhyxyhxxwxwwgwxivhhwxfxgvggvgvvhwgwxwhixihiIyHYihxxhiYHhhhvxuywyhwwwvxxhgwxghgxxyvxwwywXxxxuyvxhwxwyxwwwhwvhwxYYy9iYiwxyhyXxvwxwXxgwHX9XHxhfXhvgWhxxxxyhxyhyXgYvhiHiWwxgvwxxwwwghuxxHhXIY8XXhwxwxghgxhhvxXhwwWxiyhxXxwuwWgwwwvgwgxugyw8X8WWxgwwgywyXxhxhWixi8YwWgvvvvvhhxhXiXfhvwxGhwwGhxvHXgvWwxwwxvxwhxHI)HXwwwvwgxgwwvhxxvixhwvyyiYiXihixxiXyiXhygwxxxwvxhxvyhwvhxwhyivxgxhhxyyhwgwhxxxyxyxxxxxXhxYIhhvxvwxhiXyiYyiuxwwxwXyxhhyxfvhvhwwyXxxhhgwywxwywyxyyzjjxgyhyyyhhxixhhiyXyyxxxhxwwwwygwzzZzzxywhygxyxyxyihxxyyXiyiiiwwxXixxxhxyyYyywxyhyhxxghfixyyyhwxiyWixxxyyywxxyxxxyxxxyxxwxyiyyjzzzzyyyxxhxyyyyyywyxxyhxhixxxxwxyyxyyyizzzzyyyxxxxxxxxxxxwwyyyiiyxxxxyiyyywwwxxxxhyxhxxxxxxxxxxxxxxxxhhxhyxyiiyixyyyyxxiYyiyxxxxwxxxwwxwyxwxxxxxxyyyywxwxxwwxwwxxxxxyxxvwhwxgxhxxwwxyhxxwwhhwwxxwwxxxxyyyxwxwyxxyyxxxxhhfghwwfvwxvwxxwwwxwgxxwwhxxxyxxxgwgxwwWxwxxyiyxxxgxxxgwhxwhhXhhwwfgvxxwhwghiyxyyhhxhXXhwwwxxwwwxxhXxhXHhwwxhwwwhxxgxwwhhhxiwhwvhxxwxxwwwxwxhXXihvxhxxxvhwwwxwxwwxxxxxXhxXHXXfxxhhwxwwxxwwxWggWWvvgwwxxvgwxxxwwhgxxwhwwghwxxxxxyxxxxxxvxggxxxxxvvhwxhghxxyxwyyyiiixxxxwwwxixixhhxxxxyhxvhvxXWxwxyiyxxxwwgggvhfwvxxxxxxxxwiwwwxyyixhhxyyxxiyyxxyxwxwxwyxxhyyxxyhxxyxxywxwxxwwxxgvwhxxwwyxxxwxwyxyyxhyhhxxyxxxwyvxhXxhhgwgxgwxxxxxyxyxyxxyxxxxxxxxxwwgvwxwhxhxxhhhxvwhwhwwwwwwxwxwxwwxhhhhxxxxyxxyyyxhxhhxxwxwwxwwxgwxgxwxxxxxxxwxvxhvvxxhXwwwwvwgwwgvxwhxvhgvgvwxxxxihyhxxhhxxxxxxxxhhhXwvxwvvwWxxhxyyyhuxwxvgwgvxxxhixhwwywwxgyyxxxyHhvxhhwXyyyiwwhxywhvwwXXxiyhyxxWxxwhwhxvWWxvxwwwwxwgxgwxxhyxXxwhxwvXixxxxxxxxxxxxxxxxyxxvxvxvxwwxxxvwxxwgvggwxxwwwhxxxxxxxxxxxxxxxwwxxwxxwxwxxxxyxfhwvxgwgwwxxwxxxuggwwwhxviiiyxxxxwywxgXiihIvWwxWvXgxxyxxxxxwywwiwwwwxxgwxxxvwwxwgwgvvhvyxwhXvwfwwxwxxywxxwwxwxxhxwghxwxxxxwxxxhhxxxxxhhxghwxxhXwWxxixgywgvxxwWgwwwxxxxwwxwxwfxxgwvghwwvffwviXXhhxxwhxyXYwWxihhixxxxwYwwwxyxxxiiiiixwwwxxwwyvhyxviihxxxxxxxiwxwxwxxwxhwxgxxwhyhhxxxhwwvxxhhYyYYyyyhwgxxxxxxxxxhxxxxxyXxywvxvhxxxwwwYXhwvixhhyxxxxxxxxxxxxxwxyxwvwuxwhyxwwyxxwYyyYYyyuxXwXyxxxxxxxwXWywwhxhhxwxwfwxgwxgxxyxixxxwwxxxwxxyxxhixxxxhhxxhxixxxhHHihiiiivwwvgxxxxwvhvxxxxxxyxyyyxxwxxwxyxxyyxgxyyyyzyzhxhxxxyixxixhxwwhwgwyhxxyxxxxyyyyyxxhhxxxxxxxyyyxwxvxxgxxwxvxvghxwxxxxxxxxwwwxxwwwxxxxxxxvhxxvvwhwxxhhxwxwxxxxwxxxhxxxxxxxxxwwwwxxwxyxxxwgghiwxhxxwxxwxhgfxxhhxxxxgwhwwwxxhhhhhhxxxXXxwwhxxvxwxxxxxxyyyxxxxxxxxxxxwxwxyyxxxxxhxxyxxvgxxwwwxwyyyyxhyywxxwxxxyyyyxxxxxxwwxwywwxwyyhxggghvwxhxwghwgvxwixvvxwxhxxxwgwwxxXXxhXhhwhgwhxwxwxhxxwhxwwhXxhHXhwxwxxwwxxwwXvwvhXhwhhhhxxwwxxxxxwvxhxxwgiIyiYYiyyyXhwwxiYyYYiYxwgxwwvwwwxhhhhhxhyxxghxxgwwviiyiyxxxxxxyxxyhihhxxxxyhhhhhixxiyyyyxxZjzjzxxxxxyyyxyyyiyxxxyiyyiiiyxxyyyjyjzjxxxxwyyyyyxhywxwwwwwxiizzixxxxxxxxyxyyxxxxxxxxyyyhyhxhhxiyyiyxxxyyyyyxxxxxxxwwwhxxhxxyxyyyyyxxxxxxxyiyjiyyyxwhhwvhxwxxxxyyyxyxwxyxwwvvwfxwxhxfwgwxxwwwxxxwwwxwxwxxxxxwwwwxxxyxxxxxxhxxvwwxwwxwgwyxxyyyxxwwwxwwxwwxxxxxxhxxvvWxgvxxwwxxhyhhhyxyyxyyxxxxWvWvxwxuyxyyyxxxhhxxyxxxyhhyhhiyyyyyyxxxxxxhhxhhziyyiyhhhhxxxxyiyiyiyiyiyxxxwyYyYyYxxxxxxxxxxhwwxwwjjzzjxxxxyiyyixhxhxhwxxwyxwwwwxxxhxhxxxxxxxxxxxxxxxhxhxhxhiywwyyyyyxxxxxxxyyiiywwwwxxxxxhhhhhwwwvwgxgvwhwxgxhxhXhhxiIyIYiYxvxwgxgvYwwhXwvxwwxvwwgggxwwvwhxvwvxhvvwghhihiuvgvxwwvxwxY9yYYYihxwxxwuhwhwuhgxwhxwggvwiwghhxiIyYHihwxxxwgxxvxwwhwwxhiHXXiYwxwxwwxxwxwgxwwwhxwXhxWxwwgxxwwXxwwxxxxxxxxxxxyiyiyiyyiyyyxxxxxxxhxxyhxxxxxxxxwxxwwxxwxwxwwyyiiyyywxxxxxxxxyyyiyxxxxxxxxyxxhhxyxhxxhyhxxxxyxxxxxwwwwgwyhxhxyxxxxhhxxvxwxxwwwxxihxhxixwwwwxxwwwvxxxxXhxhxxxyxhxwxwxwwwwggxxxxxxxxxxhyyyxhxxxxhhxxxxvixwxxxxxxxxyxxxyhgxxxxxxxxwwxwwxxwwxhxwwxwyyxxhxhxhxiywyXwxxxyxxxxxxxxxxxyhhhhhxhxxxyxxhxxxxxihhixiyyiywxxxxYYYYYYyjjjzzxxxxxwxxxxxxxxxxwxwwiiiiiiywxyxwwwxxwwwwiyyiyjjjjjhxhhxxxhhhhhhxyyyxyxxxxxxxxxxxxxxxxxyyzyixxxhhhihixxxxxxyyyyiiy[[[{[yiyiyiyyyxxyyyxxyxxxyxwxxyyiiiiyxxxxxxxjjjjjxxxyxxxxxxxxxxjjjjjxxxxiiyiiiiyyyyxyxxxyyxxxxxxxxxxxxyyxyyyyxxxjjjjjxyxxyxxhhXhhxvxvghxwxhhhhxxxxxxJJjJJJJYXXxhIYyYIYYwwxxwvhxhwhhhhxhyhhhwxwxwvxixwxxxxxxhhXhgwxvggwvvgwxgwwhwhwggyxxxxx9YyY9YYwhwhwwhxxwxxxxxIYyYIYYhhhhxhhhxhxgxhvgxxhXhhxiyiiiiixxxxxxxwwxxwwhhhwxxxvgxxwgggwwhhxhhxxxhxxxxyxxyhxhyyiiiiiiywxxwwwhhvhhxvwwwxxxxxxxvvxgwXXxvhxxwxxwxwxvwghvxghxxhhhixxxxxxxvWgvwXwwxxxxxxxxxxyyyyyyyhxhhhyyyxxvxwxgghxxxxxyxhxxhhhxxxxxxxxxxxhxxhhhxxxxxxxxhvxvXXwwxxxxxhhhhxhihixiiiiiiywxxwxwgvxwwxxwgyxwwvgwxxxiihhiYYyiiyihyhxhwwfwfwhiYhXhhwxwwwvhvxvxwwxwygvxwwgvwgwxxvxwviIyihyixxyxXyxwxiYyYYiYxwwxxwwwuhvxwxxhxgwwvxxywgwxwxxwuiviivwgwxgyxhyhxxkJjJjkjvwxhwxxhyXxyhyhhgxhwxhgxvxwhvwhwZ9YYYZihhxvywxxywyywwwxgvkJjZZkjhhwwwxwxhjIiYijYwywyxXxXyxhxhwxhggxwwgxwxvwwgwixvwhvxxiIyIYiYXxXyhiYYYiigxwxwxxvvghyhXwyvhyxwxwyxyxxwwxywwwxwwuxxywhfxwwgxwxwxwvvhuyhxxwxxxXYyXHhhhyhyyxiXYYyYgwvwhxhwwhxvgvggxg9Z9YYhxvxggyvwgxxgwxwgwyiyYXyYiivxXYgvHwxwwxWxfgXihfghggwX8YIXIxhwxxXhvwghgvwhhwwgxxwxwwwxxXxihxwXxxwxwgxwxxwwxwww9ZIYYwxvxxXxvvXyixihyhXxvhhxwwWgyhiHiuvXxYigxXhxuxhhwvwXwwwxxvxgwwwxwvxwwv)IHHXyYxyYyXxxxyxxjjiwgvywxxywvhivwwwgwwxxhIhhyXvgwxywwxiyyyYxyyiYyyiyYXyhwhjzjzjgvwxhxwvhxhxwwYyyyivgxhyxyxxxxxxyiYxyhHvwxvxwwwgwxyixhxxxwwwxwwwxxxxhxgXxxxxxxxywhwxxvvhwwwwgxxxxxxxxxxhxwxxxwwxxxxwwwxwwwwwvwgxwgvxvvvvwhxwggwxwwwxxxxxxwwxwhwxxxhxxxxwwwxxxxxxxxwwgvwwwuhyxyhxxhhxxwwwxwxhyiiiiiixwwxxiyyiiiyYhxyhxxxxxhxxxwxwwxwwxxxxYwxxxyxwxvhyhgxxxvxwhhhxxiihyxxxgxxxhwxxxxyxyxxxxxxxwivxxyXwvwwxwhixwixhhyxxxxxxxxwxxwxwwhxxwxxwxwxwhhhhhhxxxxhxxxxhxhyxyyxyihxxxyiyyyyyyxxxyxvwghhxxwyxxxwywhxwXhxwxwxxhyxxxvwwwwwxgwwxxhhhxxxxwxwWYxwiwfhgwfWxxyyxxxxxwwwgxhvhwhxvhgwgvwwXWvhghwhvxhxhvwwwhgvxwvwwWxhhxhhxxwxwwwxxxwxxxxXxhhxxwwxwwhvexvwwVwxhvhvxWWvvwwxwygfwwwwwiwgfvfihhhhwhwwxhhwxgwwwxxwwwwhxxhxxxxxxXgfxugwvGgYvhiHiWxxwxxwxxxxxxhygxwwXYhXYwxvxhfxfwwwghhhhhgIvyiYYvWvgwxwugxvxwwxxwxxxhxyxhxwxhhxxxxxxhxxhxwXeyxwXhwVwwgwxwwvxwgwwgwywwwhhXYhxgxwvgxxwXwixyhwvvhhvghhxxxxxxxxxhXvxxXiGhhhhyxxxxxxxwyxxyxxYyyyyyyvgxwxwxwixxxyxhguwwywgxwwgvwxxxxxxxxxwxwxxxywxxxxwghwxghXxwwhxxxxxxxhyhhgwwwwgxxxxxhxxxxiixxxxxxWWxxxwwvhxxxwwxyiyiiiiiXxXyhxxxxxhhxxxxwxxxxiwwxxwwxxYyyYYYyhxxIhhiiyxxxhxxiiixwxvxxxwxxxxXywhyxxwxxxxxxxwXxgxiwxxxihiiiiywhwwxhwwfgvxxxxxxxyyyxyxxxxxYXXxhyyxxxxhhwgwwwgwwxxwwwwwxwxxxxxxxxxhxhhhhxwwwxxxxxxxxhxxxhxvhgwwhhxxxxxxxhhhhxwxxwxxxxyyywxwwwxwxxhxvxggyvwgxwwwwxyxxxxwwxwwwxhvxxxxxyyyyxxiyyxwwwxwwwxyhxihxxxxxxxxyxwwxxxxyyyxxyyyyyyxxgwvwxwxwwxgvwxxwwwxyyxxxxxxxxxhhxxwWwxwwxhxxxyhyyyyyyyyyxiwgxxxiiyxxiyxywxxwxxxxxxxxyxyxxxxyyzzyfhgxxIiIiIyyxxxwvxhfXgfWiYyiiIYwxxxxhgxwwgVvWhxwwhXX8YIigvghgggXggxxvwXgwvXxwxxxwwxiihhXHxxxxhvgwxhgHwvGYYIY:hXyxwxWgugXYiyyxYYwhxxhXhxxfggWhhxhhYXxwxwxwwwwwxwhhwwgxxwXfuXXYIYIwxgwxhxxxwwwgwXhxHhhXxxywhvYwhxWwxwwxghwhXXhhwwwxgxwwgwxxhxxiYyYyiYwvwxgxgwwghxhvxhhwiiYiYIwwxXxxxXxxxwxwwwxyxhhxhxwwwwwwwvvyhgwhwwwwxgvhhxXxXXxwhvwxhxwxwhxgwxxvxvvxxwwxhvhhwiXiyYXwwuhwhwgvgvxhfwwfgwwhixggwxwwwwhwwwxxwwwxwxwhwwxgvguhuxghihYhiXxghxwwwxvwxxxwxxxwwwhgwxwwwwvwwwvYXiyYhhhxxxwwwxwwwwwiiiiihxvxwxwwxhxhhvvhwwgghwwwwwxWwxwxwxwxwwwwvwwWvWghvxhhghvxxxxxxxxgwvhhxXhYhxxvvxhxwwwxxwwggwihxHhHiwwhhwwxXhhYxxxhhhXhvxwxwwwvxxxxvwwgiYyYiYYxxhxxwhhxXxYiiYYYiyyxxxxwwhvwggxhhhhwhxyhxwwhxhvvvgxguxhvwWxxxxxxxwwwwxwwwgwvxxwhxhxxyxxwwWvWwxhhvyyyyxxywwxhhXhhxxhwwwwvwxhvxhxxhyxwihxxuyyyxyxxxxwhwghwxwxxxXvWvhhgggvixxixxyxhhhhxyyhyxxxxxxwwwxvxxxgWvxvxxxiGxxxwwggvwxxxxwwYhxXXXhxxhhihugwxxhxvxXxwWfvwgvvgxxwwhxwxgggvyhuwwhwihhXhYhuwwwhggvwwxxwwwvfwhwgwwhyyHhHiwwwxXXwhwhxggxxxxxvwwhxyixhhhhxxxxvwvxgihvgxwwvvviiyYiYYwwxxggXXIY8gxwiihIuXXwwwwvwgwwgyXxxhhxghvhxwwvxxxwwvxxwhxHXIY8hwxhxvxxffgXfwwxhgHvvGhHxhxYXWxxhhHvXhxwxhxgvwXWW8X8wuywwghyXyxhiXwxxwxvxgwwxvxghhXywhXwwywwghghwyYX9WhhvhxWwvXXHHI)xhhhXhxxhxXhwxxxwwwwyxxygwgxgwvvxwxxhhwwxxwvvxwwwwxhywiwghhwxwhfxhwWgvWvgWgxwXhxhxXhxwxvhxhwxwvgwgyhhYYxyywwxxxwxwwxxyhhixxxwxwwhhxXhHXwxhgwwwxwxgxvhxhvwwwxwhxgvvxxxxxwwyxxxxyXiiihwxvxvxhhwwxwxwwwwwwwfxwfwghxwhwwxwhWvvhfxwfwwgwwuxwgvvgxxwgwhhwiHyhxiXxhxhhxwxgwxwwwxxgvwvwxwxwxvvhyXyYiiixuyuxXXwxwxxwwwwxiYyhxXixwxvhvghgwhhyxxwvxhxxxxvhhxxfwxvihiiWwxwxwxxwhhxxhhvhhxhwxxxwxxxxwwwfhgxxvyhvwuhxyxxxgvhwyXWggfhggwvwvgwgxwxxwgvwgxwwuxhvxxwhwxggwwxwxhhhvuXhxhhxvwwywwxvxxxxxwwxwwywxxxxwxxxwwwxxgvhwXwxhhXXwxwyxxYuXxvxwwwwxgwwwvxxhwiXyiiIiwwxwxwxhxgXXhxffwwwwwhxxgxwhxwvhhhXhvwhwwxvvxxwwxxwwihhiYXvvwwxgwwxwuwxvxvvgwwwxwhxhwuhugggwYYyiiYYvwxhwhWxuxihhhiiyYYYivwvhwxhhvxvwwvwvxxwwgwgxwwwxgwxxhhhXjjjJjJJhXxhhxxxxwgggwxxhhhxhhhhxwxxwwgvhhxhhwxhxwgwYYyIYIYxxxxxxYiyIiIYyhvwwwwvxwxwxvhxhvvgvghxgwxxxxxXXXxhhxhxxxxxwihggwYiy9Y9YxhhhhwxxgggYY9Y:iixihWvvHxwxxxxwhxihyyxihgXiihIvWwwhxxvxwxxxhvxxhXvvgXY8YIxwxxxgwhxhgwwhiwwgXhxhxgwwWxgyxhXixhwgffWxwxwxwxwIY9YIxxxxwxwxwyXyyyYXwgxxWXwgVhxwxgwivxgxhyxxhWghxxhXwwWhxwXxhwwWwvxxwxxwgwXH)HIxxxgxwggwvxvhxxxhhhhhxxyYYyiiYYhxxhxXhxhhHhxxwvgwhwxwwxxuuihhwxwxwwwwvgwwwwwwvhhhwxwXvXxgvwxwvgxxxwxwwwxxHhxXXXhwxxxwwwwwYiyiiYivwxXhxxhhhhwghvgvxgxwiihIuXxYXXhxxxxvygwywwwxxwgwgwxxxyxxvwgxwwhwgwgyvyiiYtWxxxxwwwxvhvhvghhywxXhxvhhhihxxxxyxWxgxxvyXewXhhwxwhxhwgxwxxwhvwfvgxxwwxxxwxwxhxxfwwxwwwvgwwvyXhhXxxxxhwxhhYuHwxwxwxwwwwuvxwvgugXhufwhwwvwvfwxuwwwggwhhxhhhhvvwwxxwggwhwxggwwhhhxhXXXvxwwxwhggvvvgvxvvxhhvxwxffxwwvwhwvuwxvwvwwwvxwwxxwggguggWvuhxxvvwghwvfwvXxXhhhxwxwwgxwwWhwvwxgwhfwhggvvwgxgvxwwwxvxvwxxvwwxwxgvxwxwwwgwwuxwhgwiYyIiiYfxvwvyXhxXgwxwgvwhgwxwxWxvhhhhvxvhvhxxxxwwxwxwxiHyXhYYwwgxgwwxxvxvwhwwwxxwhguuxwhwwhwhvyXYYiYwwgxxgwxXYhhiYzYiiIwxxWwwggwvwgxvwwwxhxwwgxfwwvxhxgwhgxwwxxhwxxhggwwvxwwwxwgwhhxxxxYhhHXIhwwwYXhwvYiyYYYYwwxwwxhhvhgwwhvwvxXXwxwhuwggvwxwxwwxwwwwgvfwxwwvhXhuvxxgwwuxhwwhhwxxxxxxxHhxXHYhxhiXhxxxYyyYYYhwwhxgvxvwgwwgvfwhggvgxxxwhhxxwHX9XHxxwvhvxwxxxgxwyhyixiXYhyhiWvvHhxwwwuxWwwgYixhiHvvXHYIX9whxhhHvXhvxghwxwgwXhXwxyxhXxwwxgwhwxvxwWxhGhwIhHtwxwxxxXvvXyhxyxiXHxhhWvwWwwxvgXvvgWyXhyXHXxxywxWevgXwwgixxgx8YHYHwxfxwWhvxWxxxxxxxyxxwxywxxhvwhWvygXwxvxhfxfwwwghhhhhvhfxywhXwvgxxwwxwwwwwgwxxihxxxxgxwxwxwhwwwxhyxwxexywhhwVggfhgwwvwfgwvxyhxgwwWgvhWhwxxwhxvhgwvxxwwwhyhxwhhyhhwxxwwwwxwwxxwwgxVfhivhvWIXYYHwwwffhwwhxXhhtXyhxxyiYvvvwhhxhxwvuWwxhYXHYIxwuwWgwwwvgwXihiiwtXuwwwwxgxghyxYxwwxhvgwxgxhwtGwXXvXX8xhxhxwwvWiXxxxhwgxvwwhhhxvwfVxhxhhyXwwuxwxgvwxxwxwgwwhvyhyYvXYIYIIYZYZ9wxvihiiWigvhwwfVyiyxyyYxgvwhxywvgxwwvxxwwvwwxwwgvIYYY8wwwwwvyhyihguGwxwxhhhuWxXvxxyxYhhwxxxhvugxxvxXxwvWYYIZ9wwwxxwwyhyhiyivxwxgwwxxvxgwvvgxXwyxXwwxwxwwwwwgxwxXuVxxvhxxwvWXIXI)XXIY8yixXiguGwwwxxgvyXyxxyXgvwwhhwuVwhxwhwxxxhhWXYHYHwwwwgwggvvgxxvhXyXwxwweVyixxxIyixYxhtWvwxwwxhwHhIhGtwxvxwwxXhyxyyXxxvwhWwwwugvwfwhxhyhxxuYwhxxhxwuWhhvHxguWxwxxgYX9YHIiIiIyyxwwxxxyXyYyyYhxvXxvfVwgxwxxgeWixgxgvfVIYYY9vwvxhweVyxxxwxwwxwwwxHxhhiYxxxxxxwwxwwwIZYZIvwvxwxhvtGyYyiyiYXggwxwwVewgvhxvweWyXixhIhxxhwywweVxgxxwwg9YXYHjjjjJK*xxXxhhwwhxgvjijXxhxXxwhhwgghwhxgviZzjZZ)hwwhgvXxxxXhxhxhiiihwwwhhvhxhxhZjzZZZ*hxhxhiijwgwxghhhxXxxihihxhxhxwhhwggwgwxghhYiyYYZhhghxvwVxxxwgxgWguixXxwhxxxxvhgvhhvxvfwwxwwwywWwufVvxwhxfhgvwvwwwhwhXwhxxxggxvwwwxwwwXWXxxhvwhwfwvGvwwgxvggfgvvxiwwxgxwxxxxxxwxXxuXXuwwxxwgxvxhxxxxxxxhhHhxyvhwxvwuVyixXiguGxYXXhvxwhxvhgvgvwgwywxwywxwwwxxxxxxxyxxiYwXxgGyxyyxwwxwwxxwhgvwhXXhWXxihxhwxXXihxgwxwhghhwwGxfwvGhxxxhwxxgxxxxxxwxxyxwwxhhxxxhxhxhxxyHHhhwxwgwxgWgvyixXxWu8iixihWvvHxgwxghwxxxxiwxxxhwxWvXgxxxxxxhhXhhxhxgvWxxxxxxwwxxvwwgwfhgfwvvxxwhwhxvwxvgxwwxwuyxxxyXhwxhxgwWyxyxhvixxhwxhhhhhxwywwwxxxxwxwxxhihxwwwWxxghgvxxxxxhywXwxfgvWxhfXhvgWxxxxxyxvhvxxywwwxxgwxgwgwhhhhhvxxwvwWgwwyYvhxgwHvxxWwwWhhvhxxxxxixhixhYxxxihvyxyxxxyxxxxhuxhxwwWghwhXXhywhyxgxhvghfvvgxhhhhihihxvwxwwwwgwwvxyyiiyxyyyiivgwwwxvwWxxXxhxxxxxzxxyxxhxhxxxxhxxwxwxgxxvxxxxyhwwwwwxxwxyxxxxxxxxxhxhxhwwxxwwwwzxyxxxxxyyyxhxxhxxxxhxxhxhhgvwxxxxxxxxxxyxyxyyyyxxxxxxwwwwxwhwxyyxyyxyyyyyyhxxyyxxxwxwgvxxxyxyyyxyxxxxxxxxhxxxhxgwwXXhhhyxyyxxxxyyyiyiixxxxyyyzzwhuggggxxxxxxxxiiiihihxxxxxxxxxyhXXhhxyyxyyyiyyiiyyihxixxhihixxxxxxxxihhXXiyhixxxyxxxxyyxyxxxxxyyihxwyhXxxvxxxxxxxxxxxxxxxxhhhxhxwwwwwwwxixgiwxxxxxyyyxwxwxwxxyyxxyxxxxxxxyyhxyhXhhhxxyyyyyyyyxxyyxxxxxwhgugxixxxxxxxxxhxxxhxxxxxxhhhhxxxxiyiiyyyxhyxxhxxhhhxxxyxwwxxxWvXwxxviYyyiyYwhwwxxjjjxxihwxyxyyihyxhXwxywwwwxhwwxhyxxyyiyyyyxxxiwwwwwyyiyyxyYwxxwxhvzzjzjxyyxwhxiyyYyyxyxyyxxvhxwxixxyHvhvfgwvvxxwwwwxwxxxyxxxxxwwwxxwwwyyyyyuwhugwghhxxhhxhxxixhxwwwwwwxxxhxhxxhxxxxhxhixhvgwvvfgxxwxwwwwxwwwwwwywwwwwwxxxhxhxxwxwwwwwxxxxxxvxvwwggvwxxxxxyxxxxxxxxyxxwxwwxwwwwwwxwwwwxwxhxxxwwwwwxhxyyyyxyxzxxhhxxxxxwxwxxwwxwgwhhxxyxxxxxxyxxxxxxxxyxxhxuhgugxiwwxxxxxxxhhihhixvwvvfvwhwxyyyyxhxxxyyyyyyiyxxwwxxWvgxYwixvwhvxxxxxxxxxyyyxxihwyYwxxxxxxyxiyxixxxhxxxxxxxhxyxyxyvxwwghwxxxwywxyxxwxxxxiywwwxwwxwwwwxwwxxhxhxyhxvhgyXyxxyXxvygwywihyhzjjxxyxyxyyyyyyxiHxhhXxxyYxhxgxviwwwxwyiyyyYwyxhwixihxhxXhxyhyxhyiiixixyizzzzZyxxhhxxhhhwxxhXyXwyxwyXviwwwyvwyxxwwxxxxyywxwwwwxwxwxwwwxwyhhyyuxxxxyxyxxyxxxxxxiiwvyxhivxxyxxxxxyxwxwxxxxxxxxxxxxxxgxxhxfhhhhhxxxxxxxxyyyyyyyxxyxxugvhgyhxxxxxxxihhhxxhhhxxxxxxxxxxxhXhhXyiiiiyyhxxhhhxyxxxyxxxxxxwxwxxvxWvXxhwxwxxxgxwyxyyyyxxxxxxxyxxywxwxhvyyxyxyyyxyhhhxxxzxwhxxyhxhxyyyyxxyyyxxxxxxxxhxWwwxhhhhyyyxyzzzzzzxyyixhiixyyxyxxyiyyyiixxhhxhhxxxyyyxyyyiyyywxxxxxyyyyiyyyiixyyzvvhvwvghxwihyyxihiwxxxhyyyy{kkxwywwiwyyywwxyihxxyXyyxyxxygxizzZzzwivwwwxxxYXyyyyXxjzjzjgxxxhxwxxxzzZzzxvxwhxixxyxwxyhxyigxyxyWgxvfgvwxwvxxxxxxxxxxxyxxwxyxyxwgwhgyhxyyyyyiwxwxxxwxwwhxhhyyxxyyyxxxxhxxxixhihxxxxxxvgwXxyxuvixhwvxxxxxxxyxxyxxxxxhyxyxyxYhwxhwxxhxhxxwwxwwwxwxxwxwxxwhyxxxxxyhyhhyxxyxyxxyxxxxxxxxxxxxyyyxxxxxiyxyhwhwghiyxxxxxxxxxxxxxxxxxxixhhhxxhhxxxxxhxxhhhxhxxhwwhgiyxxxxxxwwwwwwxxxxxxyxxxxxxhxxxhxxxxxxxxxxxYhXYixxgwxwgwyyxxxxxxxxyxxxxwxxxwxwxxyyyyyyyyyywwwwwvxxxxxxhxxhxiwwwxxxyxxwwxxxwyhxyhyXxyxyyyyyyyjjjywxhxxihxxxxhwiyXxxyXwyxhwiyixxyjzzzZyyxhxxxyhyyxXxwgwiiiixwxXhywhwhxyYyyyiwhxhwxwyyyxxyxyhXyiyHhxxwxyyyxxxxyyyyxxxyxywxwxxxxxwwwwwxwhxyxxxyyxwwwwwxxxxwwwwwwwxxgvxxxxxxxyxyywgxwxwxgxyxxxxxxyxxyxyyxxxxyyxyyywxwhyxxyyyyyyxhyyyxhxhxxxxxxhxxhwhwxwWxwxxxxwhxxxxxyyyyxyxxxxxxyxxxxwxxwwwyywxwwxxyyyyxwhwxxgxxyxyyhxxxhxhyxxxxxxxxxxwxwxwxxhxxxxyyyyyyxxxxxyxxwhywgxxxhxyzyiyyyywgwwwwyxxyyyxxhxxhxyyyxyxxxxxixxxxxxXwhwxwghwwhxgvxxxyyxxyxxxhhxhxyyxxhxhxhxxxxyyxyxyxhxxxxxwghwhvxxxwxxxwwxxxxxyyxxxxxxxxyxwxxwwwhxihhyXhxxhxxhhxijzzxxxhxfxvxyxyhhYhiYhxuxywhgxxyzzzzzyyxxhyXwxyhxixyYwhwvwywwiyihhyxwwwvgygyyiyyyxyxxyyywvxhhxygxixyuXyXyYyyYwxywxxhvwwwgxhjjixyxxyyxyxxHXhiXxyxvxwwwwhygwhyxyXYyyyiwwvwxxwhwxvxhxhiYyIiiYjzzzjyxxxxiyyyYxxhxgggwgxhxwyXyXyhHyhyixiXvhvxxywyyyyjjjhygxwwxyyxhvxywyhhxyXyxyxyxhyhvxgyhyyYyyhxwxywyyiXyhxyXxyxyyiiyWwxxihxxzzjzzgwxxhyihhxyyiixYhhHyiyYXyYxyyk{{hwxvwyxxxyxwwwxwyyXhhyYxwwvxgwxxxxZzzzjyxyyxxyhyihyiwwhxxjzjzzwgvhxwxhxyhZzzzzvxwwwywvyyyxiyyyXyhgywXjijzxxyx||nj||xyxiiixxzxxxzx{{kyxxxxzxjiixzx{k{{{{ywxxy{kxzyihiXxghxvwVxxxxxvxWgwhXgwixwxxYxxxxhfghvghxxvgyyxxxxxixwXigGxWvxgvwxxwwhhhhhyxxxxihxihyxxhXwXgXhxwxhxgwWvwgwxwwwxwgwxyxxwxhxiiyxxgwxwwxghwwxwihyhuixyxxxhiyyixhhihhivgwywvvwWxwwwxwwwwxhxxxxwvxvggWwxxxxxxxxxxxixiivgxwvxvwvvvwxxxxxwwwwxxgvwxxxxxxxxxxxwwwxxhgwxxvgwwgwwgxxxxxyyxyyyxxyywwxwxxxyxxxxggxwfgxxwwwwvyvxxwxxxxxxxxxgxvxxxxxxwwxxxwxwwwxyxwxxxwgxgwwxwxxwwxxxxxxhxxwxxgxiuxwwwxwxwwwxxhxvxuxxyhvxxxhxfwwxxvxwxxxxxxxxwgyvxhxxxwxwwxxxwxwwwfwgxxvxxxxhhwwwyyyyyyyggwwgwyxyyyywxfwvwwxvwxvXvxxXwxxxxxxxxxxxxyyyxxxxwgwhhvxhxhhwwxxxiyiixiyvxhyxhxxwxwwwxxxhhhixxyixyhhwWxxxgwwwyyyxxxxxyyyyxxwwwwvgxixxxxxxxxyxxxwwxxwwwvxxxyhyyzzyyyyxhyyyyyzxxwwvggxxhhyhhxxxvgxwgwwxwxwwwxxxiiiiiiwwwwwwvxvxxhhwyyxiyhwxvgwwvfwxxxxywwwxwxXxwWwwwuhggvxxxiyhxxxxxxhhyyyYyYyxxxxxxhgwxggvxxxXXhxvXxvfVwhWvygXvhwhxvhgwgvwwgvywxxywxxxxxxxxxwwwxwwWggXyugWwwwxwwwXwXxuXXwuxwXXxXXvhxxwxhwwhvWwhgWwvhggwfggwwfwhxwwGhfvwGxxhxxxXywxyhxwxwxxxxxxwhxhxhwwxxxxiHhhHggxhvghxvfghxwXwyfvgWfxvwvwxwxwwwwxxxxxwwxxxxxxxxxwgxwwwxxyxxywhvvhwgwgfwxyixyivgvwgxxwxxxvvxvwwxuxwgyxxxxhxxhxyxxxxxxxyxxxxxxhwwxxxxwwywxwxwwwvxgxvwxhwxxxxxxyxxxxxxxxxxxxxxxxyxxyyyiwxxxwwwxwwwxxhyyxxxxxwhxwvxwxwxxxxxxvwhhwxhxhxxywxyhiyiihxxhxvyxxhxxxhxxxxiixyxyXxwwvxxwwvxxxxxxxyyyxxwwxxwxwwxwxxxxxxyxhyxxxxxvwxwwwvyyyyxiyyyyyyyyyxyyxwywwwwwyxxwwggghvhihiiyyyyYyyxxxxwuywwxwyxxxxhxxhhhwwxwxxgxxwxhxxxxxxyyiyyxxxyxxxhxxxxyyhyyyiyyvywwxwxwxyxxwyyyYyyyihhhixhhhhxxwwxxWxxwwxvxvxhhwyXhxXyiiiiiixxxxxxxxyyxxyxwwxwxwxvvxguxxxvxxxyYYYYyyxWxhXxwwwwwwwxxvXwvwwWvxhhihxxxwwvxwxwxxxxwwxwxxxxhxxxxxhhxxxxhHhhHihiiiiywvwgfhwxgYhyhiWvvHwwxxgwxgwgwyyxywxhxxXYhXYxxxxXhhXhYxhigwGyxyxxxxxxywwxwxxwxwgxxhhwxgxgxxvhwhxfhgwwvwxxxxHwvxghfvwGxxhxxxvywwwxxwiHhhIhxxwwxivxhhyuWhwXXhxgwwWwxhhgwxxxxYxxXYWv8xvxwgxxxxyxxyxxyhxyyyyvxxxvgwvwwwwvwxxxxxhyxxxxxxxxwxxxyxxxxwxwwwxxyixxxxvwghwwxXgvhxxxxywxxxvxxwxhxhxxhiiyyywwwvwwhgwwwvxxxwwvxxyyyxxxxxxxxwxwwwgxyyyyxxxxyixxxxxxxxgzzzxyxyhxxyhyyxhyyxyywxwwwwwyyzzwgxxwfxwwgvgwwxyxyxxxyxyxhxxxxxwwwwxwxvxxxxwwxwwxhwxwwwxyyxxyxwwwwwxwwwhwvwwxwwxxxxwwwwwxggwyyiyxxxyyhhxxxwxvxgwxxxxyhxhxyxxxhyXxxxxxxxxyxxyhxxhyxgyvxxhwxwwwxwwwwxxhyixxxxxvwxhvxwxxxxwxxxxxxwwwwxhyxxxhyyxyyxxxixhwxxyxhvxyyxxhhxxxxxxhxxxwwxvxxxwyxyyxxxxxxxxxgvYwwhXwxxhhwwxhwwxxhvxxxhhwxwwxxxwxyyhxixxxhhxxyhhihxxwwwxwwwwhhgwxyxxxhxxhxvxhwhhhwxxyyxyyyxvwxxwhfxwggyyyyyyxxxwwwwhxxhxwiivxXYgvHwwwwxxxxxhwxvwyxwhwgwxxhghhihhvvxxwvwxgWwhhvihgwXhXhhXxywxwxxwxyxxxxwxxwxxxxxxxxyyxhxxhhxuxhhwwWhxhxhhxwxwhxwwhxgwxhWgwWwhvyXgvxggxxhwvgghwvggwgfwwxwxwxxxxxXxfhwivwwWxwxgyxxyxxxxxxxxxxxxwxxxxxwxxxxxzzzxyyyygwxwxwxwxxxxyxxxhhxxxxwwxxwwwwwxxwxxhwxyzyyyyyxyyxxhxyixxxxwyxwwyhxxwxxwwwhxxxyyxxhxxxyyyyxxxxwvwwwwvxgvwhxywvgwxxxwxxyxxxxxyyyyxgwxgwyyxxyxwwwxyxxxyxyyyxxxxxhhxxyxwwxxwwxxxxyyyyyyyyyixxwwwxxxxxxxxwvxxxwgwxghvhxwxwwwxxxxxyxyxxxxxxxxxyyyyxgwhwyyyyyhxxxyyyyxxxwXwgwxxxyyxiyiyyyyyhxxihihxxxxyyyxxhwwhywxxwxxxxxxyxxxxwxxxxhwxwxxwyxyyyyyxwxwwwwxhhxxxxxwwwwxwxxxyxxyyxxxzzzxhwxwxXxhxXxhxhxxxyxxxxxxxxxxhxxxwgxwwhwxhxxxxyyxxxxwwwwwxxwhxhxhyyxyzxxhxxxxxhixyhyxwwwxxwwwwxxxhxxhxxxxhwhxxhhhwgixxYyvuXxxxwxgwwwvwwxvhhxxxxxxXXxxxxxxvyxhxefWwhWvxwxwgvwgvwwxuxxxxwwxxxwxxxhvghvgvvxfwxxhhvvWhXxhhxxhhwxwwxxhHhhxwwhgvxxwxwwwwwxwwxgxwgwvwxiyvvGwgxwxxgeWwxvxhfxfwwwgwXWvhghvhivwwxyxxxxxxxxxxxfXvxixgfXxxxxHHxhhhgfhgvgxvxgwwghwhwwwvwgfyfgwwfvxWWvwxhhvwhguhxVwVhxxwwwxxwgxhgxwwxxxyxxhwwxxxwhYwxwhwwxxwwxxuxXuxWwwWXXyXXvwhxuxhgvfXhxwwwuxWwwghhhhhxxihxxwxvxhfxfwwwgxxxxgxgwxxxvgxyhvvXxxxxxhxyigWwggwuxhYgxwwXWwxwxxyWhvxhhwvXxyxxxXhxwhxxgxwgwwxgwyxyhwhiwgxxxgwwWwggxvhhhxhxyxxhgxxuhhfwgXwxwwxWxfgXyxxxxxxxxxyxwwhhihhgwgwxxxvwgwhwhggvwihhwwXwyfwgfwfwwggwwxxxxxwxiwxgxxxxhxxxxvxhxwvWxxgwwWwxghvxhwvvwhXXXxuwxWwvgvxwxvxgwxwwXXhhxwywxwwwwxxxwwxxgivhywvHxwhhwggxyxxxxxxxxxxxxiixxxwxwwwxxxxhxxxxxywwwwwwxxwhhwggxxxxhiiyxxxxhxxxxxhxXXxxxxxgwxwyyxxyxxyyyyyxxxwxxxwxwxxxxxxxxxxxxwxwxgvyxyyyxxxxyyyyxxxxxhwxwwuwwxxhwvxwxxxwwhhxxxxxxxxxxxxhxxxxxxhhhhyyyiiiywwwxwwvwxxxxyhxyxxxxxvxwwwxwwwvwhvhgxxyyxyxxxyxwxyxxxixxxyhxxxyyxxxxxxggxwxwXwuhhwxiyyhxxvxwxwxyxxxwxwwwwxxxxxyyyyyyxhhhxiyiyiyywwwxyxxxhxxxxixxxixxxxyxxxwxxyyhihxxyxxxxwxvwxwxwxwwyyyxhxxxxxwwxwxxwwxhxxxxxxwwwxwgwxhhxhxxyxxxxxxxxxwwxwwwxwxvwvwhxwwwxxxxxxxxxwhwwwhxvhxhxxxxxxxxxwgwwwvxfxwhxhvyyyzxxxyxxyxyyyyyxxyxwwwwxxhvxxxxxxxyyyyyxxyyhwwxxxwxXyhhxxxhyyyywwxxxxwxyxyixyixwxwxxghhxXXhXwwxwvwxwxwwgxhwgwhgyhxwxhiyyIIiixxxhxwxghwvhhhwvvxwxhXhhXxxwhhwwwwwxhxhxXXhhwwxwwxxugvgxixwwxhXXxhyyxwwxwxxxvwwwxwwWiiiYYYifwwfwwvxvvvxxyxxxvxwhgxxxxxxhxxwxxxwxxxxxxwxwwwxhwwvgvwxWxvxxxyxgwfxgwwwxwxwwwxxwwxhhyyxxxxwxyyxwwwwgvwxwwxvfwihxixxyxxyiyiyxxxxxwYyYiYiyxwxyxyyzZzZzyyhixiyxxxyiiiyxxxxhzjjjjxxiiiiyixxxxxxxxxxxhywwwwwwhxhxxzyyiixxxyxyyyzyyiyyyxxxxwxwwxwxwiyxhhxxxxyiiYyxxxiiiywxxxwhhxxxxyxxxyxyuvguhwvwXXvyxxxyiihhhhxyyyyyiixxhhhXXxhyxywxyxxxyxYYYYiiyxxhxxxxxihYYxxxhhhihixyxyxyiiiYYYyyyyxyxiixxhhxHHYYiiYiwwwgwwguxgvwwwwgxwxxvxxivxhhhhxfwfvwwwxxhhhxxiiYYiYggxghwwwwwwwxwxwwwwwxvxxvxwvhxxwxgvhxxwwxwxwhXiiihwwwxwywxuwxwhvxwhxwxvwwwghhwxgxvwwWxwguwxxxxwgwwxvhixiiihxxxxxxxxxxxiiyiixxxxxxxwwwxwxxxihwwwxwxxxjjjZZxxxxxxiiiiyyywwwyyyiixxxxxxhhxxhxhhxxxxxxxixhhxxxxxxxxxxyyyiiwxxwwvixhhwxwxwwwwwxxxxywxwwwxhxyyxyxxxxxxxwxwwwxxyyyyyxyhhhyxxhxxxxxxixxxxxvyxxxyxxyyxhxwxwwxxyyxxxxyxxhxxxxxwgxxxxxxxxxxxxxyxyyyxhxyxyxxxyiyyyyyyyyyxxxxxxxihhhxyyxxxxxxyYiiyxyiyyixxxyyyxxxxxxxxxwwwxwyxwhxYxxxxxhwwwxwxxhyhhxxyxwwxwxyyyyxwyhyhxxxxxxxxxxxxxxyyhxxxhxyxxxyxhxixxxwwyxxwwyxyyxxiixxxxwxxxxxxxxyyyxyxhxhxiiYiiYiyYYYYxxxxhhhxhvwgvggxgwhwxwwxhxvgxxxxhhxhjjJJJjhhhxvgwvwwxxxxxXXhxXhwxwwgxviYyYYYYxxxxwwxxxhhhyhxhxxxhxxvwwxhXXxhvwwhwwxwxhhxxxYiyYYYixxxxxxxjjjzjxxxxxxxyyyxxhyxxhxxhhxxxxxiyyiiiyZZjjjxywxwxxxxxiiiyyxyyyyyywxwwwxwwxyxxxhxhxhxxxxxxxxxxiiyyyxyxyxxxyxyxxxjjjjjyyyyyyxxxyyyxiyyhiiyyyyxxyyyyyyyyyyyyy[[{[[xxxyxxxyxxyyyyyyjjjjjxxxxxyxyxyxjjjjjxyxxyxxxxxxiiiyiiwgxhhxyyxxiyyiiiywxwwwwwxxxxwxwwhWxxxywvgwwwxhhhxxyyyyyyyyyxxxxxhhhhhxyvwvvvxwxhvXXxhhxxxxxxwgwguwhxvxxxxxxxxhyyxhyxggxxxwvXwXvxxgxxxyxhxxhhhxxxxhyyyXXhxXxxxxxxxiyyiiiywwwxwxxvXvXxwhvxxxhxxhhhxyyxyxwwwwwxxYiiYYYixhxhxxxHHxhhwxxxhhWyyxyywywwwxhwxwhxxwyxxxyyyyWXwwwxwxxiiuwWhhhxixxwwxwwwwwwvxxxyxvghwxxxyxxwwvxgvwwxuxhyhyYvWhhhhiywxxhxxxxhXhhxxxgxwxxyhxxxxxwxggvwvwuxhuvFghxhhvxxxxxxvxhwgvwwwwxyyyyxwwxxwwxxxxhhhhxvwxwxwxxxxhxwxwXvwxgwvwwwwxwxxwwxxxxxxhxyxwwgvhwgvwhhwxxxxyxyyyxxxxxxwwxwwwwxxyxxwwwxxxxxxwxxyyxhwwwgvwffgxxxggwywwwwiwwwxiyiyiyyixhyixxxxxxxxxxvvxxwxxwyyyyyyxxxxxihixxxxhyihiwhgwxyxwxvxgxyxxxxxxWxxxxxxhhhxxxxwgxxggxhiwxxxywwxyyyiiiyxxxwxxxxwxwXWwghwxwwwwwwxhvhvvhiyyyyxxxxxxxxihxixhhyxvgwwhxvhhxXXxxxxxxxxxxxhwghwxghwxxwxxxyxxiiyxxhxxxxwfwwvxxwXYgxhuxwvVhxxhxhhhhhixgwxwyhxxxvxvxhfxgwwwgxxxxxxhiwxXvxvvvfwxwwxwwxgwwwxhhhxvxxxxxxwgwhwwwxwwxwwXwXhwhhwhvwuwVghhhwxxwvwwixgxhwwwwwxwxvwwgwvhgfgvvxwxwwfxxxxyhxxxxxwxwwxwgxgWguihvhfwfvUIXHXYwwgxvwxYXyuvWyhxxiXwwhgwxxihvwXxwxxxwxwZY9YZyxvXYwuWvixhuhxfwvgwgwhwiiiiiIxxxxxwwwwyhhhvWYXHXIxivxhwhvfugihxxyXwwwwhyhhwvWiyyiiiXxwgwvwwwwxwhixvXZIIIZwxgxxgxwxwxviiYYiYxxyhwhwxxgyhuwxiXxxvxxvwxhwxyxXiyiYyijiIxgxgxxxwxwwwihhiYXwwwwxhwwxhhhxxxwygxxwwhxxvyxxwgxwxxwxhvyiyhiiXxxgvywhxvyxxyxvxwwwwjYiiiZYyhhhyhxgxywwxwxwwxxwywyYyywvwwxxwxhhhxyhhhykjjjjkJxwwxwwxxwxhxxxwhyvxhhhxZYiiijYhxwxxvxxhx[jZZZ[ZyxxyxxwxhvyxgxhwyyiyyvxwwwwwhwwwxgxyiXxyxxxxggiiyihyXxwwwxwxxvxwhwxiiYYiYxhhhxhwhyxxxwxxXixvxxwhwxvxwwxxggxiYyjiiIxhxwxxvYhihiXxyxwxvxwgywhygxxugxxvyhxxxIyxxxvwxwhhxyyYyyyyyiXwgwxyiiiiiIxvwhwhxxxxwwhwhxwyyyzzZzzyxxgxwhxvxhxxyIxwhwxwhxwyyYyyxhgxwxxvjjJjjxyxxwwgXiyyyyyy9hhxghvxyxxxxywxxgxvvggwxyxxxwwwxxwxxxxxxxhhhhxxxxxxwgwggiiiiyiixxwxxwwyyiiyiyxwxgggwhXxhhxhxxxxxxxwwwxxxxxxhhxxixhhygvhwXWwvwwgxWwuihxXhXhwhwhwwwhhwxgwxwhgugxixxyxxuwwhwxxxvxxxxXyYYXixxhvhgwxwxxwwxgwvvxwXvwwWvfgwvvwgxwxwvgvvvhwvxxwwwgviiyIYIYhhhhxwhvgvxxixxxwXwwxxuwxwhhxwxxxxwggvfwhwxxxwvxxwgihXhYhxxxxyiyyiwwwxhxhxhxxxhxxxxxwwwxwxxxxyxxxxxjZjjZyiiyiiyiiyiixxxxxxyxhhwwwxwxxxxxxxxxxxxxxhyhhxxxyiyyixxxwxxwwyihyhxwwwxxwwwxwxyyyyyhhxxxhxxxixxxxxxxxxyyyiyiyxxxxxzzzzzxxxxxxxxxxyxxwxyiiiiyyyjjjjjxxxxxxxxxxyyyyywxxwxxxxyhxhxyyxxyuXvvXwvwghvhhxhxxhxhxhxxhhhxyyywxwwwxwwxvfhvhgwwwwxxxwwxwwxyxxyxyxxwxwxxwxxxxxwwwxwxxxxxxxxvgvgvhwhwxxwxxwwxhxxhhhxxxxxxhwwwwwxwwyyxxwxxwwwxxxxhvvhwwgwwxfgfxxxxhxwxvxhvvvgwwxyxxxyyyixxxxwxwxwwxxxxvwwwwwwwxxxxxxxxxwgwgggwxxhwxxxyxxxxxxxxxwwxwxvwxwvwffxxwwwxhyyyyxxyxxyxxyyyygxywhxyyxxxyxiyyxxxxxxxxxxwxxxwgxyyyyxxyhyxxxxxxxxwhxhxxwWxxvvxhxvxwwxwhggvxxxxyyxyyyxxxxxxxxxxxvwwxywxhxxxxxwwwxwxwwwxwwvgvwhWxwxxxwwgwwvwhwwxxxxxxhhwhhhwwwwxxwxyyyyxxyxhxxwxxwwwxxwwxwwwwwxggvgwhhghxyyxhxwhwxxhwxxhxwxwwwvyxyyyyyyyyxxwiwxhxxxwxwwwgwxhwxxxwxxhhxxxyvxxxywiyyhhhxyywhxxwxyxxxxxxxxyyxxYyxxxwxxihxxxwxxzzzvhwxxyyyyxxxxxxxxhxxxyyywwwxwxwhhxwwwxxwwwxyxxyxxxxwxxwwwxwxxxxhxxxxxxxyyxxxxxxwwwxwxxxxxxwwwxwxxxxiyiyxxxyxxxxxyiixhxhxwwxwwxxxyyxxxwwxyyxyxxhxxxxxhhxhXXXwwwxxwwggwxwvwwvwghwvwhvwhvgxgwhwxxvvhwwxxvwxwwwggxwXxhXhhxxwxxwhvwwWvwxwxxwwhgwwfwgwvvwhhwxxxxxwwwvhvwxwuwwhhhxXHhXxywhwhuugghgwhwgfgwwwwwvwffgxwvwhxhwwWxwwxxwhxhvxwgwvfvvhwghXvWWvvhhixggwxxwwxxwwyxxyyxyxxxxxxvwhwvxuhwwxxxxxxxwwxwxwwhxxwxhxhyyvwwwwwwhgwyyhyxxxxxyyyxxxxyxxywwxxxxxxxwxwwxhxgxxwxxxwxwhxvgxxwxxxyxyyyyxxxjzzzzxxyyyxxhyyxxxxxxxxxwyxxxyyyyyxxhyixhxhxxwwxyiyiyyxxxyxxzzzzzyxxyyiyyxyywhvwvxXXxyyyiiiihxxxyxyxyxwwvfwvwfwhhwxxxxxxxxxxxxxxxxxxxvhwvghiihihhhxxxxxxxxxxyxxyixxxyxxwxwxxwwxhwhhiwxxxxxwxwyzyiyxxxyxxyyxxxxyxxxxxxxhxyyiyixxiiyyyyxwxwxyyxxxxxyxxyiyxyhxxiiyzyxxxxxiYhXhhwgwxxwwwxhhxxhgvwvhwwxwwwxwxfwvwwxvvwxwwvwgxviYiYYYgwhhyvWWvgxwwvxWgvgxwwxhxhghwwghhhhhiYYIiiwwwhghwhwxuhxwwwxwggxxwwvwxxgvxxwwhwxwvwxwxhxwvxxhhvvxxxwiIyiXhhxxiyyiywwxwwwxyyyyyyxxxxyiyyyiyyxxxxxxxxxwxyxxxZjjZjxxxxxjzjjjxxhxxhxxxyxyxxxxxxxhxyhhhxxxxxxxxxhxhxhxiyyiyxxyyxxyxgxywwxxxxxxxxyyxyhxyxwxxxyyiyxxhxXixxiyyyyiyywxxyxxhxxxwxxxyXwiyyyiiyxxxwgwywwyxhhxhiyhyhxxxhxxxxxxwxxxhxxxwxiyiixxxXyxyyXwyvhyxhxhyyyyyxyixxxxwwwwxxwxwwhxxxxhxxwyyxxxxxxxxxxxxwwxwxxyyyyxyxyxxxxxihgghxhxxxxxxxxwxxwxxxyxiyiyxxhwxwyiwvvvggvxxwwvwwwwxxxgwwwxwwhxxxxxxxxxxxxxvwwwvwxhxhxxxhxvggwhwhxxxxxxwwxxxwxxxxywxwxwwxhxwwvwgxvwwxxxwxwwwwwxxxxwwwxwwwwwxxxxhxyixxxxxxxxxxXgwwvwwgwuvwvxhweVxxwwxwwwwwgwxhhxhhvgwxywwwxwxxwxxxxxhxhxxvgwwxhwvWxxxxxvxWWvwxhhvghvhhgxvwvwwwXxxxxhhwxxwhwvvwhhhhiwwghiffWwxxxwhxwgwxhxhxxwwwwhwhwxwhxyyxwwvwifwfgwwfvhgwhWXggvxXwufGhvhgwxwwwwvgwwwhxxxxxxyxwxyyxyxxxxyyyyyiyxhhhhxxxxxwxywxxwxwwhxxwxhxxiywwhwhxxxwxxwvxwiwhxwwhxxxhxyxxxhxhhxxxyxxxyxxhyxhhixxwhwXxhxxxwYWxwwvghyhxxxyxxyxxxvhxwhwxwwxxxwxxxxxxhyxhYxxxxxiiiiiyiwYxxxxwiyyiiiyxxxhyxyhhxxxwhxwwxwxxxxwxxyxghxxwhxhxhxxiihywxxxwwXvyxxiwhXyXwxwweVvhvhvghhuxwxvgwgvwwwwygwyhxxxxxxxxxxxxxYIvyYigvWxxxxxxvwgwwwxwxwgwYXhYXhxwxhhhhhhhvxxxxgwgwiYhHigvWxwxxxwwxwxgyhwxxxxxxxhxhhwyxiXwxwxwxxhYXhhfxwxxwhwwfvgiXxXxhvGwxwxxghwxwvwvXiiixiygxhxyxyxyxwxihyyuxxvvxxhwxxwgviXxiyxixxgxxwwwwwxxwihYhiXhwwwhwxvxyxxxxyyxyxyxyiyxwhiiyixiXwwxxxxYXHYIwwxhhXixwixwuWyhxhyXxhxwwwwvgxwyxwhvIhHhHwwxwwhwwyxvixwuHgxiXiwGyYyiyifxwxghvwWiyvyYigtWYX8YIxwhwwwxvihhYhYwxwxwWwxwwxxixhxXxxwwgwvwxxyhXWxyfhxveWXWwGX8txwwwwhwwihhiYXxwxwxwxxihixwgxxxihyxxvwxxxhxxwyyhhyuwwwfiYyiZYIyxxyYiiiYYgxxwxwwwxWgxyxwhxixwxyWxhvwxgwxvxyhywviiyXiIXxygxhwwxhxhwywhxvgxxwywgvjYiiijiwgxgyxxxywgyvxxxxywwgyxhhyxwwfxxgxxwjIiiiihxyXiyxxvxvxghxvyxwxxvjYiiYjYwyxWxhvxwxviYyyiyhxxfxwyyXyywixgxxuxxxxgyixxxIywxXhxvxxxhixzzZzzyyyyiyhxXyyxYyhhhhhhxgxgxxjjjwxxhwhxxxwyXhxvxihyxXyyyyyyYyyxxxyyxyyxxziixiyxxwxxyhwwwxxgYhhxxYiyxwxwxwwwwxxxxhyxwywgxxxxxxxxxxxxwxwxwwxxwxxyxyxxhxxxhxxixxhixixxxixxxxvhixxxxxxwxwwxxxxxxWxxixhxixhxxxxxxxxxvxwxxhxxxxyiiiwwwwxxxxxxxxxxwwwxwxhhxxxyxiiyyyyxxxxxyyxxyxxhhxwwwxwxxxwwxxxxxyxhxxxxyxxxxxxiYxihXywwwhxwxwhvhxxwhfxgxwwwwxwxxwvhxywwxwwwwwxxxiiiXixxxxwwgwhwxwvgwwwxxxvxwhwxxgvggwvxxwxXvWwywhYhhIhvwwwwvhwhwxwxwhvxfwvfvvwwwvxhvvwxhwwwwxvwhwvxwwvwhwuhvwxhwxhhxxiixYYXihhxhyxhxwwwxwxxxwwwyyyyxxxxxyyyyyxxxyyyxxxxyyxxxxxxwwwwxwyxwiiiiyyywxwwwwwiyyiyxxxxxxxxyhxhhyyiiixxxxxxxxxxxxvyhxyxxyyxyhxxxxhxxxxxxxxxxwixhxyyyyxxyyyyxhyxyxxxgxhhxwwxxwxxyixwxxwwwwxxxxxhxxxxxxwxxwwwxxyxwwxxywvxwixwxxhhxixxhhxhwwwyyyyyxxxxxxiyYYiYyxxxxxxxxxxxxxzzzzzwwwxxhhxhyxhhxhyyyyyxxyxjjjjjxxxxxxxxxxxxxiiihiiffwwwwwhxguhuxghxxxxxxyyxxyxxxxxxxyxyvvxwxwxxxhhxhhxwwxxxwxxxvxvvwxwwwgxxxxhhxuuxwvhhywxxxhxhyxwwwwhxxiihyxyxyxwwxxxhyihixhhxxxxxvvxwvhwxxhihxHhHihwxggwwhwwgxxxhhxxywxwxwvxxxxxggwxxYYyIYIyxxyxxvxxvwxhhxgxgxwfxXXhhhxxxxxwwwxwxwwwyXhxHXIhxhhxwggugghwhxwhwxhxhxhXhhhxvxvggywxxxwggxguhxxwYiy9Y9ixxxxxyyxxyxhyhxhhxwxxwwwwyyyyxyyyyyyxyxwxxxxxxxxxxxxxxxxxxxwxwxwwyiyxixhhxxxxxxwhhxxhxyiyyixxxiiyyyhxxhihxxxxxxxxxxyxuuihhwxwwxwxwwxxxxhxhyhxxhhhxxyxyxXXhhhxxxxxxxxxxxxiyyiiiyxihxxwxxxuhiwgxghxxhhhxxxyxYiiYYYixxxxxxxxxxxxxhXXxhxwxwwwhxwxwyixxyyxhxxixhhxyxwwwxwxyxxyyyyxxyxwhhwwyyxxywxxwyxxxihhxxxxhywxwxxwwxxxxvxwgxvvwwxxwggwwwhhwwxxhxywxwwxwwxxxxxxxxxuwwwwxhxgxxxxhxhhxxvxhwgwghxxxxwxwwxwxvhwhxxwwwwxfwwfwwhvhxvwxxxxhwxxwwwxxhxxxyxhxxhxxwwxwxxxwwxwxwXXxhhxxxxxvxvvhxwWxwwxwwhwwxwwyxyywwxwxxxxxwwxwxwxxxxxxyhxxxyhxxxxzxyyxhxxhxyyywxwwwwxhxhxxxxwxxwxxwwvgxfhgwwxxxyxxwxwxxwwxxwwxxxxxxxxxxwwwxwhgxyyyyyxxxxxxxyyxfwwwwvghwyxxwwwxxwwwghwwxwxxxxxxwwxxwxxwyiiixxvwxvhwvXXwwhvxghhxxxxxzyixwwxxwxxyyyyyyyxxxxxxyyyyixxwuhwgwyhxyxxxxyzzyxxyyxxhxxxxxyyxvwxxxwxgxwyxxwxyxxzzzzjyyyyyyiyyhiiyxyy{{{{{xyxxwxyyyzzzzjxyxiyyjjjjziyxxxxiiihiiwxyxwwiyyiyxxxyyyxxxxxxxxyxxxxxxxihhyyyiiyiyyzwxwwxhxhyyyxyxiiyxyyyxiyyizxxxxxxxyxhXxhHXhgxwwgvwxwhgugxixwwhwxxwwhwgxhwhiiyiIIixxhxyywwwwwwxXXhxXwhhwwxhxhhxhHXXwxwxwwgvwhhxhxxgxwvXwxxwxwwxxhXXhhhgxgwwgxgwvwxywYiiY9YigxxhwxwwyxxyyihxxxxvhxgxxxhxxwwxwwwwxxxyyyyyyxxxxxyhwvwwxxvwgwxhxxwxxwwwhxvXhxxwwyxxxwgwwuhhwvixxxxwxxxhyhhhxxxxiyyyiixxxxyXxhXXxxyyjzzjjjyyyxyyvgvxvhggwiyyyiiyxxwxYiiiYYywxxxxyhxXXhwxhgvxxxyxywwxyyxxyxxxyyxxxxwxwxwxyyxhyxwxwywxwwwixhixxyyxyhxhhyxwwwxxwyyxyhihxyxxxxwxvyxwwxxwxwhuwggvxxxhxxyxxxxxxxxxxxxxwwxwxxxxxxxxxwxxxvwvvwxxgwgwgvvxxwwxxxxxxxixxxyxxyiiiwwxxxxxxxxxxwwwggvfxhwxxwxwywhxhhHvXvxxWwwWhhvxxhxywyxhwivgwxwugxvxxxyhwgwyxwwhvwwwxXvvWxxxxyyyxhhxxxxihxxhhhxxyyhigwwwwwXwvwgyhyhyhiwxgwxxwgwwwxyxxyyxxWxxgxvhhgxvvvwwwxwXvXwhxxxxxwxxhXvwXhhhhxwwwxwxxhhyyxyxxywhwvhxxxxxxwwxwwwwwxvwxwwgwxxxxxxxyxxxxxxxhhhhxXhhhhxxyxyxygxxxwgxwxwwwxwxgwggxwxxhxxxxxxvwhvvxxxhxXhxhxgwwWvwwgwfhgfwvvwxwwxygxiwxxhxwghxwxxxxhhxXhyhwxvvwvfxyxxxxxxxwwxwgxwxxxxwxxgwwwxvgwvxxwwxxIXvihigWxxxwywwxwiwxwywhhXXihxhxxxwxxwwfxxvxgwXWxwvwgxwWxgwxxYhxXywwWxghxvwxxhxwvxwvwxwjYiiijixhhwxwxwwwywyYyyxwvwxwxyhxkjjjjkjxwwwxwywwhxyvxghxvyxjYiiijihwyxwhwyv[jZZZ[ZwxwhxxvwhwhywyiyyvxgxwhxwvihYhiXxxvxvwxxwxhxyiyyxwgvvwxxxhxwwxxXhyvxywxxvXXxYiiiyyyyhiYyhiwwfxwxwwwhWwxhywhyxyyyXyyyxixyxyxxhyiiyIhYXwixwxwhwXX8YIwywWwufVyxywxwihyxhXvixxvXhvvwfxxwwxxwxvxvwXxvvWYY9YYyxywxwxxxxhiwxXvxvvvfiiiiiIxxvXwvvvWwgxIY8XXxxxxhhxyiXfyhHhugVxgwYyyiiYYuywWwfwVhygHhfuVxxwxwxwxYI)IYwxwwxWhwyhxxwyhXxxvyiXxiYXiiwhiyYhixvwxxhxwxvvxxwxxwxwyhyhxhyyyywgxvyxixywgwxxhxvxxwyxvxYiyhIiXxwfwwyxihhYiXyyXyyyyiywwwxhxxgyxhXxxwhwhxvxzzZzzxxxxwxxxxxwxxhhyihiiiIxyyyyxxxxwxx{{[{{yhwhxxyyixhgxyxXyyyyzzZzzxxwwxwhyiyyxjjJjjhxwhwxxvxwyxxhwwxxxixxiiiXvxxwxwwxwxwxxyyyyxxxfxwfwwgwgwxwwwwwxvwxwwwwwxxxxxxxxxxxvxwhwgvwxwwwwxwwyxyyxxyxxxxwwwwvgwwxxyxhxxxxxxxxxxwwvgwwwuhxhxhyxxxxyiiiywxwxyyxxxxxxxxyxxxyxxxxxwxxyyyyyyxyyyxxxyxxyyxxjzzzzxyxyyzzzzzxxxyyyxyxyxxxxxyxyhxxxyiyYyyyyiyxxxxxxxxyyyyyyxxxxxxxxxxxxxyyxxxxxhxyyyxxxyyyiixxxxyxxyxwwwxhhxXHhhyyxwxwwwxwwyihxivxwgwxxvwxhxwwwwxwwwwxwxiiXhxhhhxwwwxwgwxhxvwhxwggwwwxXxhXXhvxxwxwgviihyhwxwvhwxxwgxwgxwwwxwxxixvwwxwwwwhwxxvxwwwvghuhuWggvwvxhihwwwxwwxhhhihixhyyxxxxxxwxwihwyyxxyyyyxyxxxxygvwxxXXvyyyiiiwxxxyxwxxxxxyxxxxihxxxvwfvwgwwxhgfxhxxxxxiyyywwwxxwxhxhxhwxxyyyiiwxxxxyiyyyyyyxxxxxxxxxxxxxxxxxixxxxyxyxxxxxxyyyxxwwwwwxxiyyiyxxxxxxxxhyhxxxxywwxhvhwwxwxxxxvxwygxxwwxwxxhxxhxxwhwhwxxxxxwwxwwwwxwxxwwxghxvwxxxxxxxwxwxwhwwhxwxwxwwwwxxwyxxhwwwgwvxhwxxxxwhxhxhxxxxvhwyxxYwxhhhyiyywxwwyYyiyxxxyiyzyhyxyyyxxxxxxxxxxywxyxxxxxxxxxxxxhxxxwwxwwyjyyiwxxxiiyyyxxyxhxxxyxyxyxiXIYhivwgwvxwxxxwwwxwxwwwfwfwhwxvXvxxXwwwxwwxhwxwhwwxhxYYihihxxxhwxvvwhwvgwxgwgvxwwxgfwxgvwvxvxwwxxxYxYXixxxxhvhwwxguwhxwwxhxxhgvwwgwggvxvxwxhggwwwguxguhwywvgvxvwvwvxvhIyYhYhxvyhwxxxhxxwwxywwwxxxhyxxxxhhxxxixxxixxyhxxyyxxxxxxxxxxyxxxxywxxxwxxhyhyxxxxyyxyxhxxxxxhhxhxxyyyxxxxxxxxwxwwwwwwxviywxhwywxwxwwwwxwwxwwwwxiiiiiiyiiyyyyyyxxyxxxxyyyyyxxxxxxxwxwwxxhhxxxyyywxwxwwwxxxxxxyiyyihxihxxxxxxxxxxxxxxxxxyxxwxyxxxxxxxxxxxxjjjjjiiiiiiyxxxiyyiiiyxxxxxyxxxhxxxxxxzzzzzwwwxxwwwwxxxhhyixxhxxyyyyyhxxhihwwwxyyyyyxxxxxxyhyxhhhxxxxyxyyxhhhhxwwwxxwxxxxxxxwvyhwvxxxwhihxxxvhivvhhwwwwwhhxyyxxxxxxxxxxxxxxxxxwxxwxxxxwwwxhgxyxyyyyxyxghxwxfvgwwxxxyxxyxxxxhwwxhwwxxxxxxxxxxxvxwWXywYYyIYIYvwhwXvvXxwwxxxxwgwhgyhwxhxxwhxwwhguwwywwhxwwxxhXiYXXihvhvvhixxxwxwhwwhwwxwihwfwxggwgxxwxxxxXhxXXYhwXWxwywguwhgxxxWxxwwgwxhhxhhwvvwvvvhxvwgwxxwwgwwwwhgwggwwxxxxIhXHYhhhhxixxxhxhxxhhhxxxxxxxhxhxxxihwwxwxxxxxxxxxxxxhxxyyYYhhyxxxyyxyhxxhhhxxxxxxxhxiywwwwwwxwxxxxxxxxvhiwhhxwhXhhhxxxhxxyyyhxxxwxvvwxwxxxvgwvwwxwxwwwwxwyxxxwwxwxxhhxhxvgxxxxyyxxxxxxxvvwvwwxhxwwxxxxxxxxvgwgxxwhyhxhxxxyyyiyiywgwxgyxxxxxxxxxxiixxYxiiiiiiixxxxwXxxxxwxxhxxxyxxyvhxxxixxxwxwxxxhvwxxxxxhghxxxwwwyxxwwhxxyixxvYwxxxhwwhgwhxwxixxxyxxyxyxxxxxxhXhhXxyhhghxggwwxwwwwwxxxxxyyyyxxxxyyyyyiyywyvhhxxhhwxyxwxxxxxvXgwwXhwwxyxxwxggwwxhhhxhhxxhyyxghwwhxxwxxwgxxwgwxyyyyxyxyyyxxxxxxxxxxxxwgxwxwxgyyyyyhwxwxxyxxyxxyyyhxxxhxhxxxxyyyixyyyxyxxwXxhxxwghgvwhhwwgyyyyyyyyyxxywxwxxwxwwxxxyxxwwgxwxhwxxyyyyyxwwxwwwxxxxyxxxxxxxxwwxxyyyhhhxxyyyyxvgxwxxxxxwvgxvghxwwxxxyxxxxxwwxxyxxwhwwxvxxwxwhwwhwxxhxyyxyyyxxyxxvwwgxwxvvvwxxwwxwwwxxxxhxwxwwwxxwxxxxxxxxxwxxxxyyyivwvWxgwuxhwxwyxxwxwyxyxxxxxyyhxixxhwiwiwxyxywxwwwxxxhxwwxhxxxxiyyxyyywwwwgxxixxyxxxyxhxxyxyyxxxxyyxxYwhxxgxwwwxwxxxxwxxxxxxwxwxwvxixwxxxxxxhhhwwxwwwwxvxxxxxxyyxxxxxxxxxxxxyywwxxwwwxxwxwxwwwxxxxxhhxxxxxyxxwgggxxwxxxhwxwxxvghxwxhwxxXhvwgxxxxxxxxwwvxgwhXhhXwyfwgfwfwwggxhghhwXwxiYwWwxwvxhvxxyxxxxhxxxwxxxxywxwwwgfwhivVwxwvxgvxwXwwxywgwgwwhigvvxgwwwuhhwgixxxhhxxhxixhhhxxxxwhwhhWhhvxXhwwWhxhxxxxyxyyyxhvxgyhwxwgxxhhwgWwggwuwwwxxwwxgwwwhhhxwWxhhxxxxxxxxxiyxyixxyyyyxhyxxxxhguhwwwvVhhxhhhygxvhxwxwWgwwvwhhwghhYwhxxiwwgwwwgxxwxxxxxxxxxYXvxhhxGhxwwwhwvxyiyxwgxvxxxxgxxwiiyxiiXxwxwwwwxxvxwvhxxxiiiXiyxyxhxgwyyhixuyxyxxwwxhgwxxXxyiiiyhwihhYiXwwvxvyyxxxyxyxxwxxwxxghxvxxfxwyhhxyjYiYijYxxgxxwwxxgxiuyiXyxyxwxxwxgwgyvxxwxyvwxggiIiiijhywgvxwxvxwhyvwwxfjYiiijiyyXyyxxvxvyYyiyihxxgwwhxWxyvyxxxyxxxxgwxgwxWxwwyvhyxvwyhhyyuxYYyZiiIhxgyxwYiiiYYxvxxxxhxwxwxwxwwixhxyxihixxxyyxyhixxwwgxwwwwwxhwwwwfxIiyiXiXxxgwYhihiXwhxWyxvxwxgxhxwhwIY8XYwwwxgxvwwwwxwhwhhYhiYixwXigGvyxhxefWhxwgxfvwWHhHhIwxxiiuwWwwwwxxhvxhxyYiyyiwywhxvwxwxIYHXYwxxiyuvHyhhxyXXxhywxWgyyiYitvWxihxxXhhxwwXwwwwWxxvwxwgww8wXGWXtxiyhxXyixxyhyyYyyxgxgxxxhYgxwwxxxwhhxxXyyxYxxihxxyyyyyyyjjjyhxyxxixxyIhhhhhzzZzzwwxwxxhyxwhXyxviizxwhXxyvxxxyyxyyixhxYwxfhxwvVwxwwwxhvxhxgvwwwwxwgxhwwwxwwWwXvhhgxxxxvxvwXxvvWhhghxxwwxxwwwwwwvxyxxwxxhhwxxxhygxvhhwxvvfwwwhvwhifVhihhhwwxxgwxhxxvhxhwwWXwvxxWxxwwwxxxxxgwgywwgvwffgwxuvhxvuFXhxhhXXgxwvgwgxwxwxwxxughugggxvfvxxwvwvvvxxhxXhXhwwwhwvwwwvwxwxxgwwxwvwxwwwggWwvfwhvwwfwvwwhwwwwgwwwxxgxwwgwhhxhXHXwgwxxuhwwvhwwwgggxxvgxwwgwuvvxhvvvvwvxvwwwvfvvfwxxxggghgWuugIXiiXiwxxwwwwhhxxxwwhhwwvxxwvxxxxxvhhwwvhivvhhYiiiYYhxhhxwwxwgwxwwwxwwwwxvwxxhxwwwghwvwwwwvvxxwwwWhhwYYiiIixhhhhxxwxhhwgwgxfvgwwvvxwwvvXXhwxgxwwhwwxhvwwxwxxgwvhxwYhyiYXiIhxhHhihyhxxwgvxwwgwvhwyvghwvwXxvxXxwWwwxwwwghxggXiYXXiwgxhwhwwwxwhgxxxxxhvwxhwxxxxvgwwxWwuYYyiYYYwgxwxxwvvhyughguhxvwgxwwgxxgxwwwwvvwhffwwwhhhhhxxxwvwxwvwfvYhhXih9YYYIwxhvgwhWhwvWiIhxXXvhxwhXtyhvggXwgxwxwxgHhHhIyXuhYwwwXwhxhhxXwhwxgwxXyihYwhyxgxwXwhhYGIYYX9iIuyiigwvYiXxxiYwwXwxwxwgiXxhwwwHyYyyihhwwgwxwgwxwvxxXhvxhhwXwHXwwYXHsYhxhXhhxxvwwwxwxwxwxxuughuughhxxyxxxxvvxhhwxyyxxIYyYIYyvhxwwhxwwgxgvgwwixwgXhhXhwwxxvhhxwhvwwgggXhxXXYhvwyxwwhyhiyxhwwwhhXXhxyxxvwxxhxvwwxwwxhYiyYYYiwxxxhhWvwgxwwhwgwxxhhhhhxixxxyyyyxxxxxxxxxvhvwhxwuWxhxhxwhwhvwxWWvghvhhwxvwfwwvxxxxXwwwywxhwxhxxhhwwvwgwWxwugxxiwwyxxhhhyxhhyyxyyxxxgixxhiwwwxxwvgwhwwxwwWXhxhhuWXhxhhHhwwxwwxhwxwxwhhvxwxgghxxwwwxxxhIyyiiIivgxvwhwvwwvxwfgghhhXXwwxgxhwwwxvwxwXhxhhHXxxuhyvghgxwvxxhxyhxXXhwxxwxxxwxxwwgwXwvxyuhxwwYiiYY9iiXyiXhywwxxwwxvgxxwgggwwgxwxwxxvvxxxvgwvxxxhhhxxxXYyihixxwggvwhhvwxxggwxvvxwwgxxwwxgwwxwwxwwwvwwxwwxgxhXiiihwwyxXWwvvgvggxyvwwgwwgwxwwhhgxxvwwhvgxwxwuwxhffwwgfgwwwuvxxvxgxviIyihXhIYYY9vhfxywhXwvghgvxwvwwWhIhhyXxxxhwxxxxxwywxwxw9YYY9wxwwxwwgeyxuwgXuggyXWgWY9yYiiYfhwxgXwwWxhfxiwhvvuwhHXIX9wvxxhiHhXxXxxwxxxwhxxiIihiIhxxxvXgihHvVxXfixfgvXIIYI*iYhhXhxxvwWxuwwfxwvgwwwxwwwhhwuwwwwvvhxhfwfwxfvvwwwxhxxhiyYhiwwxwwwwwwwxwvwhwwwwwwhhxxvxxxxhxwwxxxgwwwiwgxxXXyyhYxwwxwwxxvhghwxvvxxxwwvvwxgwvwgwwxxvwhwwwggwxxxhxwyvwhgwhhyiiihYiyYYYYxxwvgwhwvwxxwgvggwvvhwxhghhhhhxxxxxxivhgXxYYXixxxxxwwvgWWwwxwxxgwwhwwffhhvvwwwwhxwgxwgwwwggHhxXHYhhxixuuixgghvwywhhwwxxxxvvyhxxxvwywWXxwxwwxxwXwgvwwxvwwffxYhHXIhxhvxxhXvvgxhhXhxxyxxwwxyvwwxwgwgvxxxxxwhwxwwvwyuxiiuWxxxxhhxwxxhhywhhxhhxxyxgxfwhifWwxwxwwxvwwigwwwywgvgfvfxxxxxxgxxwwwxxxvwgwuwigwwhggvxxxyhwxvxXhvXhXxhXHhvhxxvvwhwixhhhwwxxwvhxhwgwwxxwwhhhhhyhXxwwxwwwwwxxywwxwwwwxvihwwxwwwwxwwxwwyyxXhxxhXhvvwwwhhxxxyxhhwgxwgxxwwwwwwwhxvxhhxwwgxwwwxxvwxxxggwxxWguhWWvvhHYIX9yYvhxgwHwhywgxyXxxyXgIvyiYYvWwWwxwwxhwYuxYivWHiHhHwgxxwxwgwxhxxxhwhhhxwWxXyyxYxhuhwvwvWxvxh8YIXHxhxxxhHhxiXfXvyHhgVwhwxwvyYyiyhgYxXiwGxivXhwWvwhwxwwWwGX9WHuhhxhXXXgwwghvhwyuxhgwwxwwwwgwvxxxwxxxxiiyiIIiwhxwwxxhwwxwwwwwyXxhXXwgxwvvwhXxxXXhvwxxwwxxxuvixgghvwxxwhgwgwgwhhhXhwwxxwvhxvwwxwYiiiYYiiYYYiihhxhhhxxwwhhgwxxxwvwwxhwwxxhvwwwwvwvhwhhxiYiYYYvwwhwwgwwwwwWwwvwhxvvWwwvwXxvwhxhhxhhhwgwxwwxwwhYhHihwxwxwgwwvxwvfvxgwggwwwwxvwxwwhxxvxwwhvwyvwxxgxxgxwgwxXIyiXihIYyYIYYhhwgwwwixhiiwwxhwwxxhhxhhhJjjJJjxxhhhxxxvwxwwgwXxhXXhxxhhxxxIiyiIYYwghhwwwvvhwwwvghhwhxwhxwwxwvxgwhxXXhhxwwwwhxxhxxx9iyY9YighuxxHhXxyxxyyxyxxyhvxywXhhXhgxgwxxxvhyhhhwYuxYivWwgwyxwwhyyyxxxywxxxhwxxxxyhitxxYyWwvWxxxvxgwwgwyhyxvwgxwXXxxwgxxwwwwwwwgwxvxhhhihhhhxhxxxxxxxghevXxwwG8YIXIwwwxhvxwxxxwxwyXhhyYhhvihgwXwihhwwXiYvxyWwwX9ZZY:wXwxiYwWwwgxwxhwxgwxgwiYyiiiYxxwxxwwwxwxggx8YYYIwhvyhhvXyXxxyXXhxxgxWvhwxyvXhvggiIihiIhhuxywxfvvghxwwxwxxxxwwwxx)JYIIXwwwwvwgwwgyxxhxxhxihyhixxxwgxxwwwwxwvxxxxhxwgxfvwWhwwwwwxgxxhhxyyyxyxxiwxxxxxwwggWguhhxhxWvXuhwwvgwwvywwxxhhxxhxvxwhxvhgvgvwxxwxxyyxxxxxxwwxvxXghxxgwWixgxgvfVhhhhhwhvxhxhvwwwwgwwxxxwxxxxxxxxxxxXhwgxfwwWxhxxxvhwhxvhgwgvwwwWgvhWhwvXxxxxwhhhhhwwwxxwwxwwgwhxwVxgggWwwwwxwxwhvxwwxwxhhxxxyyhwxwxghwxwwwxwhWvXgXfwwwywgwgfvfhhgxxWwufGYixhiHvvXvxxwvwWgwwxxyxxxxhwihhhhhhhxxhyhhhYyxyWuwWxxxyxxxwwwxxwwxgwwwwxxxwhhxwxywwwhxwyyyyHxxhhWvXyxxyxiwwhxyWxwvgXxyxxxwxxvhiXXxwxgxhxhwxxhxXxwgxhWfvwHihfghggwXwwxxyxxxwxwyvvxxwvwxgWwwgwhwhggvvxwhwgwiYvxyWwwXxhghhxyxxxxxxwhxxxwxxxxhhuxxxhvwghixXXwxxvwwywfwgywwgwwffghxxhhixwxixuwhxwvxwgvxxxxxhyxxXhvxxgwXhwhxgvxxxhxxxhxxxxxxxxxxhhxhxyyxxxxxyyxyyxxxwhwhwhvhhxxxxywwxwwwxxxxyyxxxxxyxxxxxwwwwwwhxihhIYHYXxvwxvwwhghvuWihhiXYwhxhxxxvefWwwxwxwYY9YYhwughvvwWfhwyxvxhfwgxhwihiiiIxwxwwwuxwwwWfVXYHYIhhyxwxffvwgXhihiYwxwwWxwwufwViyyYYiYxvwxwxwwvxfxxheWYJIJYXYHYHgyvyiiYtWXwvxwvvwWxhhiyXxgwhwwxwwwgxwwxwwwhwHhHiHwxxhwvixyxwuvHgxwihYGyYyyiiWywyxYuWhvhxwXXX8YIxxxxyhxhyXvxxxwWwwxgwvhixxxXxgxfxghhHuVhxvygvXwWXGX8tXY8YIhxhxgvWxxwxxwwwihxxyXvhvyxwhXvwfxxxxwxwxwyuxiiuWYZ9ZYxxwxxwwwwxhwwxxvXhyhwxvvwvfihiiiIiyixwuuWxxwwgxvIY8YXxxwwwxhvyhxxiXwxyXhvWwxwxgxviyyiiiXgxxhhvWhxvXywWxxxwxxwxYI)IYIY8XXxgxwxwxhvyhhxyXYxhigwGgxyhvvXYyxyWuwWHiHhHvwwwxXvvWxxxxxwhgwiYyyyiwwwxwhwwwxgwvHYHYXwxvxyiuHyhihxXHxhhfugVwxhhvXxixxhXYyyiigtvWxwwvWxxwxxwgww8XwGXWtiZzjZZ)wxwxgxxvhhxhiiiwgxwwhwiixxhhxhjKkkj*hxhhwwhxxwxhwwhwwxgwjzZzjhxhhxxwwgxxvZZzZji)whxxwwxhwiiihhhxxxwxgwxvZzizZxxxwgxwvxhhhxxiiZZzZZZiwfghwvVxxyxxhhhhhwvxwwwwhxxwvwvwifwggwwfxxxyxvXYwuWgxwwhxwxhhxxxxxxygxyxxxyxxxXXhixhvxhhxvwgwwxwwvggvxwxyxxxxwvxgvwWxwwxxwxvxxxxxixhwgwgwhghvxxuhhWhxxxxyywxxwgvwwgwyyyyxxyxxxxwhwvwvhwwxxwwxwwvxxxxyhxyywwxxxwwwhvhwxhhwxxxxxyxyywxwxxxxxxwxxxxxwwvvwwwwgwvixyxxxxxxxxxwywxxxxxxxiyxhxxwvwxwxxxxyyyyxhhhxhxxxywwwwxxxwwxwvhwxxhxyyxywwyxgwhxxxxyxxhxxwxwxwxxxxhxxhxwxvxhvvxxxwwwwxwwxxxyxxyyxyyyfwwfwwwwxxyxxywwgwhwxggxghxxxxxxxxxwxwxxwwxhxhhwwwxgxwxxxxxhhhxxywwwhgxhxxhxxxxxyxxyxxxxxvxWwxxuywxxxwxwxxwxxxwwwwwwxxxxxyxxxxxyyyzxhxxxxxxxwwihxxxxxxxhxxxxxyyyywwwwxgwwxxxvvxgxwxvxhxvwxxwhhxwxwxwwxxxxxxxxxxiyhxxhxxxxwywxwwyyxxwvwwwwwwxwwxhhwwxggwgvfxgwwyyxxyxxxxxxxyyixhxwxyxxxxxxxhxwxvwxggxwuwWgwwwvghhxxhyxwwwwhxwxyvhygyixxixxxhxxxxhgvWhvwwWxxxxxvhwhxfhgwwvwxgwXvhgWwwxxxxXxhxxhxgwwwwvxgvhxxHXgvXxxyxxixhhxxxxxyyxyhwxyhyyxyxXwvgwXvxxwwwwwwgvxhXhwwwXwxxwwwxwvwhwwxvvyxxwwxwyxxiyxxxxxxwwwwxxxxwxwXvwhgwwxxxwxhwhwxxxvvxggvxfhwwwxxxxhxxxxwxxwyyxwxwhwgwwxwgwgxxgxxgvgxxxwxxxxxxxwwxwwxwxxwwxxxxxxxxwhwxhxxxxxwwwxwxwwwxwxxxxhhwwwhxxxwwxxgwgxxwwwxvywxxhxhxhwxxwgxwxgwwwwxwxxhxxhxxwhvxxyXwggvvgxxvwwwxyyhxhxyyyyyyyyyyyxxxxhxxxxxxxhxxxxyxyxxyyxhhhxxxwwywggxyyxyyzyyyyyxxxxxxyxxxxvwxxxxgwhxhxiyxxhyxxxxxxwvxxhxxxxxhxxxxwvwwxxwxxxxyxxyxxxxywwwwxwwhhyxxwywxxvxyxhxyxxxwxxxwwxxwxxxxxxxxxxxwxvgxhhhXhxwhwwxgvyyiiyiyxxxxhxxxhhhhxxiiiiiiivvxwhxghgxwxxxwwxwwwgwvxfwxxyxxxxhhvhhhwwwxxwxwxyxxxxxxxxxhixwwwxhvXwwhWwxyhxhhxvvxvWwvXhxwigvghgggXvxwhxfhgvwvwxxxxxwxywwwwxhhhhhxhxxhhghxhwughvvwWxxxxxyxxwxwwxwwxgwwwxvwhwhxxghwxxwhxvvwwwxwwwXvffhwgxWwwwxxxxwwxxwhWwhvXXgwxwxxwxxgxWggwuvyfwgfwgwwgghxhxhwvWwXgfwxHxwwvhhgxxxxxxxyxyxwwxxxwwwxwwxxxwwxwwwwwwwxwgwxwxxxxxwwxxwhxxxxxxyyxyyxghwwhfwwgwgxxxhyxxxxvwwwwwxwwvxxxxxvxwvwxwWhxwhgwwhiwwgxxxwwxxyyxxxywxxwwxyyxxwxhwwxxvxxyyyywxxwxxxwxxwxwxxxyxxyyyyxyxyixxyyhxxxxxyyyyxxxvxwxgwxwwwvwgxwgwxxyxyxxhxxxxywxxxxxggxxxxwwwwwwwxxxxxyyxyxxxyxxxvxwxwwxxxxgxxvgwwguhxxvxwxxxxxyywwxgwxwwxxxxwwxyyyyiyyhyxyhxhxxxxxxiyyyiiyXyxiixxxxhxhxhxxxxxxwxxxxXwhxxxxxxgwwyxxwxxwxyyxyhiyiixxxxxxhwxxxxxxxhxyyiyXyxyygvwwwghhwwiihxxxxxxxxxxxXhhXhxxxhxhhxwwxwvwhwxyyyyyyyyyxxxxiyyyiyyxxyxxvwhxhhwwxxxxwxwwwxwwxvhxXXxxuggughwwiyyhhhxxxxxxwhxwxhxwihuyXIhvXxxxxhxuxywxWvxgvwxxwwwhWvxwxhwwwwwxgyXuhYwwwXhhhxixxxxyyyxxxxxhwxxxxxyxxxhhtxhXwXXXxhigwyhxwhxwhgwwhhhhhgwhvxxhwxgwxwwxwwwwxhhxxxxxxhgegvXwwwGxghgxyzyzyyxhyxxywwxwxxxyiyxxxwxhxxxhwyyyyyyyyyyywXwxvwxxxxxxyxyixxyxxxihxyyhhzzzxhwxxxxhwxxxxxxyyxxxxxyxywxwxxxxyxxxwxwwwwxxwxhyyyywwwwwyyyxxxwwwwwwwwgwxxxxxxhxyyyxxygywwhxyyxxyxyiyyxxyxxxyyyxyxxxxxhzyyyyyyxxxixxhxhxxxgwwwxxhXxwxxxgwhxxxxyyxywwxwxxxwxxwwwxyxxxxxxxyxxyxwhxxwxxxyyyyyyxxxxyyyyxxxxxxxxhxhhxxwwxxwxxhwxwyyyyxyxyyxyxxxxxxxxxhxxxwgxxwxwgxxxxyyyyyywgxwxwvxxyxxxyyxyhxhxxyyyyxxyxhxxxxWwwwxxhhhwwhgvxxxxyyxxxxhxxxxwxwwwxyyxxhxhhyyxxxxyyxxxxwgwxhhvhhxxxyxxxxxxxxxhxyyxxxxxwwwxxxxyxhhixhgYvhxiiwXwxxxwxvgwwxgwwvxwhwwwywxwwyxxwhXxhhxxxxvixhuhxfwvgxhhxxwwwxxwwxxwxwwxgwvggwxvffwvwhxxxhwvWwgwgwvxxgixxxwxWvhgxwwvwxxxxhxxxxwwxwxxwgguwhxxyywWwXihiiwtXwwwwvwxhvihhhhxxvwxhvxxwyxwwxxxxxxgIvyiiiwuYxxxXXxXXwwgwwwxvxwgwhxxhgvwwwwughvwhhgggwYxXvhxgweXhxhyxwwvywwhwxxxxxwxwxwhwhxxXwxxwxvxhfxfwwwghhxXhxXxhxixuHggxxvwXgwvXwwhwhXwhwwxhxhhxvhgwwwxxwxwxwxxwwxxwwwwwwvfhwyxvxhfwgyxxxxxxxhhhxvxxwwhwhxwhhhihxxWXgyxuxhgwXxhxixhxwwxxvgxwxxwhvwfvgxyxxhxwxvwwgwvgggxvfvwvwwwXxvWhhvwwwwxwxxghxhfhiWhvWwhwhvWxgxvXxxyxhxyyxyyxyhgxxhhhhhwgvwgvwwxuxxhhxwhxhhxXxxwwxwwwwwwvxxxxixxyhyxyyyxyxxhxxwhvxxhxwWxwwwxhgxhxwxgwhwhxvWWxvwxhxxwwwvXwxxhhwvggghhxxxxxxxhXvxxhyxHXxxxXxyhxhxhxzxxxxxxhxwwhxxwxhwxxxxxyxyyxhxhxwwxxwwwwhxhxhxzxxxxxxxxhyyyxwwwwwwxxwxxxxxxxxhhwgxhgvxwwxwwwwxxxxxxxxwgwhwxxxxxyywwxxxxxygxwxxhwvgxwyxxwwxxxyixhyhhhyyyyyyyyxxxvwxwxwwvvuihwwhxxxxxxxxihxhixxxxvfxgwwvgwxyyxwwxxxxxxxxxxxxxvviwXhwXhxyyyyyyyixyxyhxxxxxxwwxxyvxhxghvyxhxhxxxxxxxxxxxxwwwxwxxxyxyxyyxxxxyxhxgxyxxxxxxxxxwwwxwxhxxhhxhywxwXhxyyxwwxwxxxxxxxxxxxyyxyyhhyhhXihXxyyxhxhxxxhxxxxyxxxhxvwhxwxxxxxxxxxxxxxhxxxhxxihxxxxxxxxhxhxxxxxxwwwwwxwwxxxxxxwghxhxvhHxxhiYxxxxwXxxxxYyyyiyyywwhgwgwyyyYiyyixxxxhwixxyhyyyjzjiyyYwhhxhwxXwxyxxYhxxhgjzzzZxyxhiwhxyXviiiyxhyxyhwhwwhyyXxyyxXvgvxwihxwxxyxxxxxhxhxxxXhhXhxyyxxxxxxxxxiyyiiiyxxxxxxxwwxxwwwvhwuxhxvxxxhxhxxxiiiYyYixxxxhxxXhuwwwwxgxhxxhyyxxyyxyyxyxxxvwxhyyyyxxhxhxxxxxyyyxxxixwwwwxffwwhwwyyyxxxyyyyyyixyyyyyxyxxxxxvwxwxxwgwxXhhYxwxxxxxxhyhhyhhxxxxixxyhhXhhXyxxxywwxwiYYiYYyxxugvWwggXwyyyxhixhixyiyxyyyiiiiiYyxyyxxxxxyyxxyyhHXhHhxhyxxxxwwwwxxxxxxxyxxyxxxixxyhxhyxixxxxxyxxxxxxxhxxvxywxxhyyhxwwxxwxwwxxhxxxxxxxxxxhxxhxxwwwwwxwxxxxiwwxhwxHxhhiYgxwxwxwhwxxxxXiyyyYyxyxyi9yiYYYvhwxxgxwvhxxxhwZzyzZvxxxxXgxxwxwgyHxXhhXyyyiyyyYxxyxxyxjjjjJxxxwwiwhxgxwhwwhgwyIiihiIxwxhxxyyhxyxxxwxwwxwxwwwyyyxhwhyxxxxxxhxxyxxxxwywxxxxxxwwxwwwxxxhxxxyxwwvyywvvvgvxvvxhhvxxxwwwxwxxxxhxhxxwxxxwwwxwxxxwwwffvwvwhwwxxxwwxxwxxxxyyxxxxxxxyxxxhxxhvWuhugWgwyyyhxxxhxxxxxwwwwwwxywwwwwwxwhxxhxhhhxhwwwwwwwwgvwgfhgggxwxxxwwxhxxyxxhxxyxxyxxxhwxxxxxyyywwwwxwxxxxwxxwwwxxxxxxxxxhxwxxxxxyyyxwgxwhhvXvhxWwyxxxxyyyyyixywyxhvwxhwxxxxxyyyyxywwwwxxuxhwxxgvxxhyixxyhhyhhxxxxxyxyxxxxxxxwvgwwgghggghXwxyxhXYxxxihviyyjzzzZhxwxhhyyxiwxxxhwiYyyyiyyyyyiyxyijjjvXxxxxxxxYHxxhhXyxyYyyyiwwgwxihxyyiiiihxxhiXwwwiigxxxyxihXxiyyXvhvwhvvxwhvyxyyyyyiyyyxXXhxXxzzzzjjxxxihxxhyyyyiyxxxxwxiiiiYiywxxyxhXxxhhvxvxxxyxxxxyxxxxwywxwxwhwxgwwxxwwxxwxxxwxxxwxxxxxxxxyyyyxxxxWxxywyxxxwxyxxyixyxyhxwygwXvwvhXhwxxwxwxxhxxxhxxxxxyyxyyxxxxXxhXXyyyxxxiyyiiiyxyxyxwWvwxhYhhxxxhxxhxhxYiiiYyiwwwxwxwxxhxxHhXHhwWxgxwyyyyyyxxxxxxyyyxwhwxgwxxxyyyyyyyzyyvhvwvxyxwxxxwyxxyiyxyixxxxyxxyxxzzzwhxxxwxXxihxwXxxiyZzzzjwxxwxxxxwxiwxgwhxxxwiYyiiiYxhxxxwyyyyyy[{{{[yyxhxXxyxxvYwwxxwxZzzzjwxwxgiiwggxwxxxJjjjjggwwxxxxyyxyiIiyhiIwxhwwwxxyxiyxxxxxxhxyyyxxyxxxxhxxxwhxxywxwwyyyyyxhxxyyzyyyxxwvwwwwvxwwxwwwxxxwwwxxxyyyyxhxxxxhxhxxxxxyxywxxxxyxxwxyxwxzzzyyxwwwxxwwxxxxyxxxwwxhwxwgwXixhixhyxxyxhxyxyyyxxxyxwhgwxxxxxyyyyxxyyxyyyyyygxvxhhwyyyyxyxxxxxxxhxxwxxwwyixyixwxhwhxxwxwwwxyyxxxyxxxxxxxxxxxxgwxgwyxxxyyyyyyyyyyyygvwxhxwvgxxywwxxwyxxxxxwxwxwxhxhxyxyixxwxxwxyyyyxxgvwxxwwhxhxhwwwwwxxwhxxxxxzxxyyxxxxxxxxwhwwxgwxxyxyyxxxxxhxxxyxihXxhxXyxxxxxxhxhwwxxwwwwyxwxxhhxxxxxhhxxxxxhwxhhhhwhixyxYxxyxgyzzzzzywwxxwwxxiiiiiIygxyxwxwwxy{{{{{whgvxwxiyxhYxwwxwzzzzzxxxxvghwwjjjjjxxxxwxwxwxwxixxiiiYxghyxYxwihxxuxvwhgxyyiyyyxxyyhhXiyxYyhxgxgxxhixhijzjwixxyywhhxxuhhXhiHyyyzzzzzyixyyjxxXwgwhxwxwxxxwxhhxhYiihhXHxggxvwyyiyywwhwgxwwxxhhwihiiiIyyyxwgwhwwzzZzzwxhhxwxXihhiHyyyyyiyygxwgXxxjjjjjvxggxwwxXgxgYyyYYY9ihhXhHxyhzzzzzihxihxxwwxxxwyxxiwxXyihYxvghwxyyyyjzjyhxxgyhxYxgxgxxyyiyyhwwgXxxwxhhyujyyxwxhixuyixxyhhxhxYiiixyxxyy{{kxyyyjzZzjyylȌȌlyyywxxiii{{kxxxyxywx{{{{{[xyxxxxxyxyZzizZxwgxwxvyyyyxxxyxyyyxxxxxhxxxxxwwwxxyxxyxxxxxxwgwxxxxyyyyxxxxxyyxxwxwwwxvxwwxxxxhxhhxxxxxxxxyxxxxxxxwwwgxwwxxhxvwwxhwwxwxwxwwwxxxxxxxxwhwwwhvwxwxwwwxxxxxxwwwxwxhxhxyyyxxxxxxhxwwwgwvxhxxyyyxixxxiyyyyyyxxxyyiiyiywwwwxxwxxxxxxxxhhhxyxxwxhhxxxxvywxwxxxixhhywwwxxxwxxxyhyixxxxwxvvxgwhhxyxyxiyyiiyywxxyxxxxxwxggxxxxxxxxhhhhxxxwhhwxyyxyxxxxxxxhxyyxixxxyxuwhwxxwvwwwxwwvxxxxxxxwwwwvwwvxxyxhxxxxwxxxxxhwXwwxxuxwXxwwxxxxxxhxyyxiyyxwhwwwxvxxyxxhxhyxyyyyyywwxxxxwhfhwxxxvxxxyyxxyyxyxhyxyxizyyyyyyxyxxxwgwxxxvxxxxvwwgwxxghhxHXhhyxyxXhiXxwxwwwwwwvhwhhvxwxwxhxhwwgwwxggvWggvuhvxgvwxxwwxwxwwwxxxxXhhhxhhhXwwhwvxvvyywxvgxyixxxwxwwxhhxhwxwvwwxhxXhXXvxxxggfvxvxwvvhgwxxyyyyxhhxxxyuwixgghxxyixyxxxxwwxxxxiihhxxxxxxxyxxvyvighhxxxxxxxxxywxyxxwyyyiiiyxvxxwWXvyyxxxyxwxxhxxyyzzzzixxyxzzyyxxwxxxyyyxxhiyhyxxixxyiiiyxxwxyyyyjzzzzxxxxxxyyxxywxyyyyyywxyxwwwxiyyiyxxxxxxhxxxxxxxxxxxyxyxwxxwwxxxxxxxxwxwiiyyyyxxyyyiyxxxxxxyiiyyxxxhxixxuvwvwwvxwgxxwhvwxhvwxhxxyxxxxyxxxwwwwxxxvxwxxhxxyxgwfggwwfgwxyyxyyixxxwwxxwxwwxfhxxwxgxwxwxxxxxxxxxxxxxyxxxxxwxxxxxxwxxxwwwvvwwgwwwvwxxwhvwxvxwwwvxvxxhxiYiyihvxwwwxgwwwhxxhxwwxwxwwwwwwwxhwwhvhwxhhwhhwwxggxwxgggwihYhiXxhhgwwvwxwwwwxvwxhvxwuxwvhggvYYiyYYgwwxfwvgvvxvxwxwwiiiiihwwwwwwwwwwxgwvvvxhhhhxwwwgxwxhhxxxxxxxxxxxxxxyiyyixxxxyyyyyxxxxxxxxxxxxyyyyyyxxxxyxxyyyxyyxxxxxxxxxxxxxxwxxxxiyiiiwxwwwwwyyyyyxxyxxxhxxyxyxxiwwyhvwwxwxwxhxxxxyyxxxxxyxwyyhixuxxxyxxxxxxxxxxxxxxxxyyxyyihxixyyxyyyxxxxxxyyxxyxxwxwxxxxxxxxyhyyxyyyyywwwxxxxxxxxxxxxixxyyxxxiiyyyxxxjyziixwxwwxxxhyxxxxxxxxxxxxxxxxxxxxyyxyyxyiiiixyyyyxuxvxhxiwxxxxwwwwxwxxwwxxgvhwwhxxhhxwxxxxxwxwxwwwwwxfxwxxwxhxhxhxxxhwyxWxhvxxwyxxxxvyvxywhxxxfxwhxwwxxwxwxwwxxxxwgxvxxxxyxxwxxxwxxwxxwwvxgxgwxwvgxvxvXXwhvvxxgwvgwhgxxxxxxxwwghgxihxXhXhwhvhgxwwwwxhiiyIYIYxwgwgggwvviwXhwXwwxxwwwvyvighhvxvxvxxwxwwxgwxhihhXhYhxxxvxwhwhXwuYyyYYYhxxxxXYhhgwxgvhwvhggvvxgwwwgxhxgwxvxvxwvhhxxhxxiiiyyxxxxxxxxxxxxxxxxxxxxwwwwxxwwxxxxxxxyyyyyxhxxhxyyyyyyyxxxxxxxxxyyxxxxxxwxxxxyxxyyyyyyyiiyiixwwxxxwwxhhxhhxxxhxyyyyyxxwwwxxyxyyyxxxyxxxxyxyxjjjjjyyyyyyxxxhhxhxyyyyyxxxxxwxxxwxwxxxxhhixyxxxyyxyyiyiiyyyzzzzzxxxyxhvhwhwxxxxhxwwwwwwxxxxxxxxxxxiihyhxxxxxxxxxhxhxxxxvwhwhxhxxxxxxxxxxxxxxxxhxxhhhxxxxxyxxxxxXXhihxwgwwhhxwwxxxxwxxxhhhyxihhxxxxyxxxwgxhhvxxxwxwxxxhxxhwwwhghwiyyhhhxxxhxxxxxxxxxyxyxyvwwxxwxwghwwXWwxxxxxxxxhxvwwwvxhggyxyyyxxxwxwwwyyyyyyhhxxxwHwgIhHtwwxwWxhhhyIXivuXyixhyiXwwxgxWwwuxXwgxwvgxxwxxxwgxYX8YIhxxHXgvXwYxXvhxgweXffwwhwwhhXhiHwwwxxgxgxghyXiivuHXXIX9xhvWxhwgvwXiYxhxyXxhwxghhxXhwwwWxixhxxWxxxgfwwwxhhwhwXhhwtXYXIYIhxwwgxyxyxhXYIiiyxxxyhxhgvwxxviyhhwvvwhgwvwxwhyxyYhYyXvxvxxwxhxxyYYYihwxwvhwhwwxywgxgyyyxwhhwwxwwixwyXygxhxixiXyhwwvxxxWvxhxxwyyxyhggvxiHhhhjivxwxgyxWwywwyxwhwwhxwhyvgwwyxwxvywxxiyhyhjYiiYjYxxwwygxwwxwyxwhxwxwhyxyhiXxxhyihwvvwhyxyyjYiiijixxwxwxwwxwxWxwwvgxwhxfgvwwwhxwwfwhxuxwwxwhyxxxxxuivxxxxvhYyhXxhvhxxxiguwhxwwiYYIiivxxxywWxxywwwxxwxwwggyhwvxvwhwgwwwxviIyiYiYxxXyxxhiYiYyXxxhhyhyxgwxxfxwwxwwfwwwfyYxxxyXigvyhyxiiyxyxxyxXhvxxgxyyyyhhxyXgwyhxhxwxgxxyyyiyyyyyywhvyhxwyixyyXhvxwxxvjjjxyyyhwxwxhzzZzzxhxxyyxxihhyyxyHwhwxxxhwWxxyxwwvvxxWgwwwhxxxwyhxyhihhhhhhxxxxwyhhhvWxXXhigwvggwxvffwvwwxxxxxwhgvxwxxxxwwhggxghyixYvGvxgwhWxhwxxixxxxxxxwhihxxwxwwxxxywxxxwxwwwxwwwhxgWgvvxwxvxhwvVuggwwwhviiiywxxwxyxxwxxxxwyyxxxfxhvwggwwxxyxwxwhwxwvxxxxxwxwxxxxhhxxxvxvxvxxwxwxxxxxyyyhxxxxxyyyyywxwwwwvxxwwfggyyxxixxxhyxiywXwwwxxxyyxxxyxyxxxhhhxxyxhxwxxvwwwxyyyyyyxwwywxxxxhwvxyiggwxxyhyyyyyhxwwwxxxxhxxxxxxxxhxxwgggxvwwxwxxwxwvhwxxhwxwwgxvxxxxxxxxxyyxyxxxxxxfvwwwgXxxXhxxxxxxxxhhxhxxxxhxxyyyxxwwxxwwxwwxwxHhvhhwwWxxxvXwwgXxXwxxhixxyxwxgxwgwxxgwhxxxhxhXxhywxWwhxwhgwwwhwhxvWWxviyxyihwwgXxxxxxhhhhhWwwxwxhwuwgfxwxxwhwwfvghhiyxxxxwhwgxxgWwvwgxwiyiyxixyxxhxhhxhhhXxxvxwvgVhhhXXxxxxxxxxxxiiiyyiyxxwhywghgxhxxhxxxhxxxhxxxxxxhhxhhxyxxxyyyyyyyxyxyxxxxhxhxwwxxxxxxxvvyxxWhuvxwwxxwgxwxwwgxwYiyYYYYxxxxvvhvvwwxhhvxYhxXhhhhhwwxwgxgwxhxhhiYyYiYYvxxxwxhhwxxxhhhXhjjjJjJJxhhhXxwhwwwhvxxxxxxhhxhwxhvvxhhvxxxxxyxhihxhxhhiiyYiYYxxgwwxhxxxwxxxxxxxxxyxxxjjjZZiiiyyiyZjjjjhhxxhxxhhxxxxxxxxxxhxxxxhxhxxxyxxxxxxxxxxxxxxxxxxxxxiyiiiyyyiyiiwxxwwxiyyiixxwxwxwwyxxwxwxwwwxxxxjjjjjxxxxxyyiyiyiiyxxxyywxxxxxxxiiiyiyywxxxyxxxjjjjjxxxxx[{[[[iyyyyyyyxxxxyxyxyyxiiyyyyyyxxyxyyyyxxxxxxxxxxxjjjjjxxxxxyxyxxvxxwxwwwhhhyxhxwvxvgWWwxxwxxxxwxxhxxxxxxuuywhgxwwwwxxwxxwxhhXXYYYyyYywxwwxwxwwxiiiiiiixxXXXvxhxwgwxxxxxxxxyxyyxxxxxxxhxxhxxiihiyiyhihHHvvwxxwxfwfxhxhhwwwxwwxwwwxyxyxxxxxxxxvxwwvwgxhxxxxvxgxxxhxxwwhwvxvvhhhXhyxyyyxxxxxwxwxwxxxxxxxxwxxwvvwvwwxxggxwwxhyyyxyxxxyyywgxxwxwgyyxxxxxyxxxyxyyxxxxxxxxwwwxxgxgxxxyyyyyyyyiyyyyxxxhxhhxxxwgxxwxxhXhxhvxhhwwhwhxggxxxxxyyyyhyyxxiyyyyyywwwwwwxwyyxxxxyxxwxXhhXhxxxxggxhgwyxxxwwxwhghxxxxxxxxxxxhhhyywxwyxxxixwhXvwgXwyhxhwwhxgxwhxvixxxhywwxxvwxhxxxxxxxiyhxhxxYxxiiiyyyiyyxxwxxwxxxxxxwxxxxXwxxhxhxhyhiiiiiiiwxywgxgwxwxxxxxyxyxgxxhwxxxxxxxxxvhwxxxYwwwwxxwwhxhhxxxxxyyyyyywhwxwxgwyyyyyyxxxxxxyxwwxxwxyyyyxxxwxxwgwwhhhwvgxyyyyyyyxxxxxxxwwxvxxxxwxxgwwxxxxxxxxxxxyixyyyxyijyiyxxhxxwwwwwwZzzZzhhxxxxxxxxxxwxwxxwwiyiyxxxxyyyxiyyiixxxxxyixxixxwwxxxwwwxXXiiYiYIihxggwyxxywwxwxwxwxxhhhxyxxxwwxxxwwggwhhhXhxxvwwwwxvvhiYyYYiYXhxXhhXxxxwwwgwwxxhggvgwvxxXXxxwhwxwhwwxwvghiwxxwwwwwwhhxHhXXwxwxwgwgxxxxggghhhXhxxxxxxiyyyyyyyyyyxxxxxxxxuuhuhughgyyyyyixyyxixxhihhhixxxxyyyyXhhXhiyyyiyixxxixhixhxxhyixxwxxxxiYXiXxxxxZjzjzhiyyyyxyyyxyhhxxxyxxiyyyyxxxxxxxxiiyiyxyxxxxhihxixyxxyyxxiyyyiyyywxxxxjzjyjyyyxwvwxwxwxvvhwwgxxgwxxxxxxxxyyxyxwxxyxxffwgwfgwwwxxyiyiwxxxxwwwxxhwgwxxxxwxvhwwwwWvhxwwwwxxwxwwxxxxxxxxxxxhyixxxxxwxwwyxxxyhgxwxfgxxxwwxxxwwwxxhxhxxxyxxyyiiixxxxhxiyyxwwwxxxxxxxxxxxwxwxxxxxxxxxiyyyyyyyyyiyxxwxxxiiyYyxxxxwwxxwyywwvhxhxviwwwwxwwxwvvxyYYiiXwwwuhggvwwwxxhgwxhhhgvxxgwxwgXvwxwhhhwxxwxwwwxxgwvyIxhhiXxuivwxgwxwxwwwgwwxwvhwhwfhxxwxgxiYyYYiYxxXXXwwxgwwXgwiZyiiYIxhiXhvxgwhwxwvgwxgwgwxwwwxhgxwwxxhxxxxxxxxyxhxhxhxxxxxxwxxxxyijiyhxxxhhxxxiyyiyxhhxhhxxwwwxxwxwxxxxxxxxxxxxxxxxxxyyyiyxxxxxxxxyjjjZjxxwxxxwwxxyxxhiyyyiyixxyxxxhhyixxxxxxxxxxyxxxyyyxxhxhxhxxYywihwxyhxxwxwxwxwwwwwwwxhxxxxxxvhvhyxvxxxyyyxxxxxxxxxyyyyxxxxxxxxxxxxxxixxyixwwwwxxxxxwxwxwwhhxhxhxyyxyywwwwwwxxxxhywxwhwihxxhixxxxxhyyxxxwhgwihxhxixxxvwwvxvxxxxxxxyXxXxxxyxyyxyyxxxhwxyixhwxxxxhxxxxxxxxhxwwvxwxxgvuxvxwxhhYXhihxxxyvvxhwwvyxxwwgywwxvwhffwwwvxgwwyIyhiiiihhiixhxhyhiYyYYiYwwwvwxxxgwwwwxvxxgxhgwwxvxwwxwxwwwxygxwxyXyYyiiYiwwwxxxguYYIZ9wxwxhhhvuXhhwxXxxvwgyixhiyhxwwxxwwxxvwxwwwvxwxxxgwwIXIY8xwwxgxgwxxvxXxwvvXgixYXivvHxXwxhixXghwhgigfXiyvhHiguXYY9Z9gwwhhhwvgyiyXYyYxwwxvxwgwwxwxwxwwwxYgixXyxwxgghvvgxxwhhXwvWxxgwWxwfwXXHHI)wxwwwxxgvyXYYiYvhyhgxxxwxywxyxxwwhhwwuyxxwxxwwxxgvhvwxivvxuxhyhwiIyYIiYxwwwxwywxiYYYiiyyhyhwxwgxgwxvywhyXxxgxvwhwwfxhxxgvwwwhYyHXXhhyXxXvxgvgggywyywxywywhxkJjZZkjvwhhwxhhhhgxhwxxhyhgwwxvhvwxwZ9YYYZihyhyxwhxwwxwiviivxvxgwkJjjJkjxyXxXxxvwyxjIiiYjYwxywgxghhXyhxxhwxhgyYyiyiYvxyhxgvwwxwygjzjzjxxxyxyyyIhhhXxxyxhwhyXxwwvwyxygYyyyiwxxwwgvwxhxhwyYxYyyXxijjyxxxiyyyYxxgxhwxvwvwvwihYxhyiHwwwvwwvghxxxxxwxwXwuxwxxwhyxyxxxxywxwxxywxwwxxxxwwvxyxwwwwxXxYyyyyyyxxixxxyxvxwhwhXwuwxwvxxxxxxxyhxxxhxxxixxxxiihhhHhvwwvvgwxgxhwtGxxwhwghxhhXhhwwxxhhxxxxxywXwhxiwHxxxyyxhwghXXxxwwwhxgwgwXwyxhivgxvhhgxvvvwwyXXXhghyXiivuHwwxxxxwgwvywgwxxxxxxhxxxxhhxxxhxwyxwwxxwwxWwgghvxhhHhwhyXxYu8vxwxwwwvvwghwvfwvwwwxwwwwwxxxxxxyyxhxwwxwwxhxxhhxxxhvxxwvwwwwwwxxxxwwvgxwwwvixyixyxvwgxwwguxxvhxxxhwxxxxxhxxxxwwxxwxwxwwxwxwwwxyiyxxyixxxxgwXwvggxvxxxhhxxwwwxwwixxyixxxxxXyxwxxxxwwxxxwxwwwwxxxxhwhxxxxxxYyyyYyyIhhhiiyiiiyiwxwxxvxwvxxxxXyxxhxxhxvYxwxhvxxxxiihyiiyxxwxgxgXggwxwwVewwWgvhWhwfwwwwwiwgfvfgvwxhxwxxwwwwxwxxxxhhhxxhHXvhivgVhxhxghhgvhhxvvgHhhHiwgwwxhixvXgwXWhfxwxxwhwwfvgXhwWxwwgVxxyxxxgxghxxxxxxxxwxxxxwwxwgxxhXhxwxxxwXXiXXwWxwxxXxwuuWXhhwxgvgVvyhyhvihxixxxxyxxyxxxxxwxwxxxxhhwxxXixvxyxyyxxyyxxxxxxxxywxxwigxwwwwxwwxyyxwxwwwwwxxxxxxxxxhxxxxgxhxxfiyyxxxxxxxhhxwwxwwxxxiiiiyxxxxyyYZzxxxxxxxiyiyhixxhxxxxxxxxxxxxhxyiiihyyiiyxxxxxxxxxxxxwxwywwwwyyywwxxhhwwvwvuwwwwwxvxwwggwiYyiiIYxuhwwwggvvyWvXgxvhXxhhhwwwhwxvwgvfxgwwwwxxxwwwgwfxgwihhiYXxwvxxvxvwhxxxwwwvxxhwhwxghwwiYxiyYihhwxXxwghggwYiyYiYixhhhhwwwvwhvghxwwwwxxwwwWxwxhhxxxxxhxhhxjjZjjxxxxxxyyyxyxxxhyxwxwxiiiiyyyxwxwiiiyyxxwwwwwxxxxxxjzjjzyYYyyyyxxxxxwxxxxhhxxxxxxxxxxxxxxxyyjyiihhyhxyxxxyxxxhxhxxhhxwwyvxwXxxiiyixxwxxxhhxhyxwxxvxxwwiyiixxhyyXyywxxwYyyyYYyihxhihxxwwyuxwXxxhxxhhhhxxxiiHhiYyyYyYywxxwwhhhhxxwxxuxxhhxhxhhyxhhxhwwwwyyyyywwwwwwywwwyyyyyxxhhxhxxhhxhxxyyxxxwwwwxxxxxxyxxyyyYYyYyxxxxxhhzzzzzxxxxxxxxxxjjjjjxxxxxxywyxwiiiiiffxwwvwhwvxxhxxhhhhxxwwwwxwwwxwwwzxxhxxhxuuggghgzzyyywwwwxwxxwxhhxhhxxhhhxxyxyxwwwxxxxvvgvxvgvwxxxxwwxwxwwwhxxhhhxwxwwwwwxxxxxxywxwxwxwwwxvvxvhvgxgwwwxXxxxXhyyHhHigvxwgvwhxxxhwgwxhgwxvxvxhhxwvwghwghwwgwwgvgwvxfwgxvwwxwhwuhxgvYhhHXIhwwwxwwxhhxHhIivxxxxvxwwwxwxhwghvhivhxwwxxhxyywxwxXXwxiugxgxxxxyhhhhYiy9Y9YwwgxxfggxwvxxhwhxhhhxxhxyxxxxxxxxxxxxxwwwxxiyxyyyyyxxxhhxxhxyyiiihxxhhhwxwwwwxhxhxxxxxxxxxxxxYYyyYyjzjjjwwwxxwxxxxyiyyyxxxxxxhxhxwxwwwwhhhhhuuxwhwwhwhvxuyuxXXwwwxwxxxxhhhxxiihyhhhxhhxyiiixgxxgwwwwxwwxwxxxxywxwfxfwggxxxyxwwvxvxhhxxxihihhxxxxxxwwwxxwwwiiiiiixxxxxxxxYyyYYYywvhvhghwhxXxxXwwhwhxwwwxxwyyxxxwyxwxxxxyxxwxwwwyyyxxyxhxyyxhxhiwhwwwxxyyyyxxixxyhxxxwxwxxxhxihxxxvxwgxvfwhwgwwxxxwxwwwxwxwxwxyyxxxxxxwwgwhxwwxxywxwwwxxwxxwxxxxxxxxwxwfwwvggwhxwyyyxiiiyxyyxxxxyxxxxwhwgwwxxxxxxvwwwXvvXhxwxxxxhwwxwwwyyxxxxxxxxxxxhyxwxwwwzwxwwxyxxxxyyyhwwxyxyyhxhxxwxwwwxxhxhxxxxwxwxxvwvfhxwfhwwwxxxxwwwwxwwxxxxxwwwwxxxwhwvgghxxxxxhwwxxvhhxwgwxxuhwwxxhxyxxhxxxxxxwxxwwxxxxxxxyxxwvwwxgvgxwxxhhhxwxwwwwxhxwXXxwwxwwxxxxhhwwwhhwxhxxxxwwvxxvvWhxwwuywwghhxxxyxhxxyyxxixxxxzxwxxxwwxyyyyyyyyzzyvhhgxiyxxxxyxxyxxxxxhxxxxyyyyxvxxwxxgxwwyyyiyyxixywyxyxixhhiyxyxxwxyyyjzzzzxxyyyxxxxhxyxxyywxxxxyyyyyxwxxxxzzzzzyiyyxxxxxxxxhxxxxxxwwxxyxxxxxwwwxwwyyyyyxxxhxxxiiyixxxxxxwwxwwxxhxyxxhxxxxwxxwwxyxxxxxyxvxwxwxvhxhvxwvwvugwwvgwvvfgxxwxxyggvWvWWgwwvwhhgfgwwhhxhXHXwhvwwgggwwvwgxvwwxvgvgvhwhwxwwgvhwgvxxvxggvvfwwgwvwwvWWhgvwxwxwxwwwwvwwvhwwgxxxxXhxXHXhwwXxwwggwxwxhxhXXhwxgwwwvvxhxwwvgwgvhggvgxwxgwhxxwwywihhgxxwwwxyyyxyyyxxxxxxvhyughgxxihxxyyyiiixxxxxyvfxwvxggvwxwxywxyxxxxxxxhxhyhixxxyxxvhxvXXwwwxwxwwxxxxxxhxxxwywxxwxxxwgxxvxxwxxxwxwxwxyvwwgwhxxxixxxxxxxxyyxxyvuxvxwwggxxxxxhyxxyxxxxwvhwwxxixxyyxwwxxwhvvxwgwyyyyxxxhxxhxxhxxwiwxwyxvxwwxwxgiXhhhjihyxyygxwvxxgwywwyxxghxvxxgwgyyxyhwxxwyjYiiijiwhhvwxyhhihyxwXxxywwwxxwwxjHhhhjyWwywwxxxwxgxhwZYYYYZihihiyxwwhwxwwywyWxghxfwxxwhgyXyYiiihxxxxxvxwhhxyhhvgxhxwwxxxgvvwhxivxyxyxiYXiihiyhXyXiiyvxvwxwgwvxwgwwvhyxyyuxwwywXxxhyyxhhxwvhwxhhxIYXhxxiwvvhhfwWW8X8hhwwGxfwvGwxwhxXhxyhwhxhXhwvWxxhwvxwwwxwwvwgwWxwugXX8YIxxxxhxwwywggiYhHigvWxihyxXhhxHxguXvvvvgvHX9XHxxhggyhxhyyXgxXHhvvWwwuyxggihxXhhXvhhXxgfWYiwx8iWWxxwvxwwwgwXH)IHgwxvwhxwwwwvhhxvxwwghwxxyiIyYHihXywhyxhYhHihvvgvgghyxyhgghxwwwwgxxxhxwfxgxhvuxyxwvgwxxwhwhixihxxYYyi9YivhuywyxwwxxwwywiYyiIiYvxwwxwXyxhvhigvwxwXxxwyhxyxiXhywhyxyyxxiiiwgwywwwiyxygwyhyxyhihxXyyxyyihygxzzZzzixhhxxhxhXxxyhxxhjjzfghxxxxyyxyyyYyyxwwwywygxiwXxwyyyyhwixyWhwywxyvxwxxxwywxhxwwhxihxxyhhhhhxyxxwhwxvwxwxxwwxxxhwxxxxyihhixxxwYwwwxxiiiiixxxxxxhwvYyYYyyyxxhxyxxxuwxvwvwwwwhhxXxwxwwwwxwxxhxxhxxxxxxiyyiywxxwwwxwwwfwfvvvvwwwxhiixhxxxxxwhxwxwxxxwxwwwwhxhxxvvgwwwghxyxyxywxwxwwwwhxxhhhxxyxwxwxwwwxyihxxxxxhvxhhvxxvwwvgwwwxhwvgwxhgHwvGXWXxwwwwwxiwwwwwygwvghgwvfvwvxxxxgxvhhwxvvfwwuxwwwWfVwxwwwwxhxxwwXwXhwxxgxwhxvwwwXxvWhhvxxxxxfhgxxXgWxxxxhxiwxhxyhvggxhfvvghhxxxxxvxgwvXxXXwxwuuwxIHhhwwxxwvxwhwhXgwWggwwxhhxxxxxxxxxhxXhwwxhyhhwgxwvvwuhxvwgxwixhhyxwwwxwxxxxxhxwxxxyxwxwxwxxxxhhhhxYyyYYyyhxxiyxhwwwwwhxhhxxxxwgxwwwvxxxxwiyxuXxwxXxHxhhWvwWgxhvghfvvghxxhxxwxXhyhhXYhwxxwxxxvwgxwXXxHxhhfugVhxhxxxxyxvhxwxwWgwwwwxwxxhyvwhxwxwgwwwxxxx9hyXYgwWxxxxhhhxxXxXYyxxxxxwwwghvhhHHywwwxgxxggwxwwxxywwwwIyhigvxGhhhhhxiyyiyiyxxyyxxxxxhhhyhxyyxxyyyyiyxyyxyxxhhhhyyxzzzzzzyxyyyyyiyyyxyxyyvvggwxwvxyyyxxyxxxxxxxxzzjzzxxzjZjzyyxxxyxyyyyxixyixxxxyxyxyyxxxxyyyyk{k{xhxzzjzzxxxwyxyxyyyyyyixhxyxxxxxxxxxxyxhxxxxxxxxxxyyyyiiYyxyxxxyziiyxxyxyyyxxyyyyxxxyyyxxxxxwwwiiiiyixxxvxxgwwwvvxhXhuvhxwgvxwxxwwwxxhhxhhhhxxhwvxxwwwgvxhxXXhhvxwwwxwwwvvhwuxhxvhhxhhwxwvwxwxwggyYyiiYYyxxhhxxxiiyYYiiwxwxwwwwwxxhhhhxxhwxxxgxhxwvvvwwwxxxwxxxxxywxxyxxxyiwgwWwhghwxxxywxwggxxxxxhvhwwxxxxxhyyhxxxxxxxyyyxxxxxxxwwgwxhixxyyyxxhXwxwxwyxwxhxxiiyiyyyxhxhvvwwwgwwxxxvxxxxxxxyyyxhhyhxhxwwwwxwwxxwwxhxhxhxxxyxyxxxxxxxxxyyiiyxxyyyyyxxxxyxxxxxxyyxxxxwwxxwwxwxwyyyyywwwxxwwwiiiiiwwxwygvyxxyyyxxhyxxwwwwwxxxxxxxhxwiXwxxxxxxxiiihyxxxxxxxxyxggyhwxxxxxxyywwwxwiyhxxxywwwxwxwwhvxhgxxxxxxhxxxxyxywwxwwxxxxxxxxxxxxxyyyiyxxwwwxxwwxxyxxhyiiyxwwwxwxxwxxxxxxxxwwwwxhxxxxxxxxyywwvwxwhgwvxxwhxhxhhhhiYxIiiixxvgwwgwwgxXxwWwgvwgvwvfwxxgwhwwXwxgwwvfwwxwhwhgxvwwwggwiIxXhYYxxhxxvxxwvxwwwwwvwxxxgvxhxwgwyYYYihxwwxxwxwwxwxvgwggxYyXhiiwwwxxwwwwxxwXhxvhxyhxhvhxxvhwwxgvxxxxxxwxwwxxxxyXwhxhyxxiyiiwxwwxxxxwwwxxyhyxxxxxxxxhiyxxwhvhxxxxxxxxxxxxvxgwxxxxxxxhxxxxxxhxxxxwxhxxhxxxxhxxiihxxyxxxXxxxxxxxxxxxyyyyyxiiixxxxxwxxxxhhxxxxwxwwwxwwxyyyxxxxxxxxxxxhhhhhhyyyiixxxxxxyyxyxyxxxwxxxxxxxiyhiwwwwwwwyxwwiyzyyhhhhhxxxxxxxyyyxyyyxxxxxxyyxxxyxxjjjjjxxxxxxxzzzyzxxxxxiyyiiiyxhihhiixxxxxxxxxxxxxxyyyyyxyyyyyxxyhhhixwwxwwiyhhhhyhhhhxxxxiyiiyyyxxxxxxxxxxxxuvixgghxxxxxxxhxxhhhxxxxhhXXhyxyyxyyyyyyyyxxxxxxyxxhxxxhxxhxhihxwwxxXyvgXwwwxwvgwgwxvwvxxxwhXXhhhxhixhYYyIYIYhWXhxXhxXXYhwwxxgxwwgwwhhwxxihYYwxwxwwxhxxxxxxxxhvhhhvvwwvhvugXhuwxwxwxwwwwxwhwhxxxxxxxxxxIhxXHXhwxxhvxgghxxxxyxYiiYYYivhhyxxxhhhhxfhwgvwvwiwghhxxxxxyxxyxywxxxxhhhhiyiihixwwyxXWwfvxgwggwwyyxyyyxxxyyxyxxxxxxwwwxxxxhxhhvxxvhhxxyyyyyywgwxwwxhhxhhhxyhxwwwwwxwwxxyhhhhhihixuxxwXXxwhxxwwxwxxxxxxyxwxxwxfxvfvwwwxxxxxxwwxwwxxwvgvvvhwxxxxxxxxxxhxxxxwwvwwwxyxxxxwggwggxwxwxxxxiyyywwxhhxxyxxxxxxxvwyxxxwwwxwxxwhwxixyxxxyxyyyyghxwwxxyyyyhxxwwwwxvxxxxwxwxxhwxhyyhhixyyYxxyyhwhhhhwxwxwwwwxhxxxxxyyxyyywwxvWvhgwwxxyyhhvwwhwwwwgwvwyxwwxxxxywwwxwxxxxxxxxxxwxxwxwwvxvhxxxwwwwxwxxwwxxxyyyyghxvhgwwgwgxxxxxxxwgwgwvhxxvhxxxxxxxwhxwxhxwxxgxwwxxxyyyxxyxxxxxxxxxxwhyxgxxxyxxyyiyyhxwxyxyyyyyxxxxxxxyhxyyxyyywWxxwxxhhxwwxwxwwwyyyyxxhxxxxxwwwxxwwwwwxwxwvxxhwxxxyyywxxyxxxxxxxxxxyxxhhxyhxixxzzzwhxxxxxwhxvhwhyiyhwwfwxxxxyyhyyhhxiYxhxhhhwxuhxwwxYxYXixxhvwxxvxywyvhvhyxvxvxwvwwxwxvwgyYiXyiyyhxxiYxiIiixvxvwyiyxxwwuyxywgxxfxvvywyywwwggxyvgikZjZZkjxwwwwxywxyhhxgwhwxiwxxywwwxwwwvxgxxjIiiijixhxwwwwhwiviivvwwvxv{Zzjj{zxhxhwvxxjIiiijiwgwwwwhwXyxxxyhgxhghxwggwxvxxxwhyhhxyxxiYYXiYihxhXiiihgwwvxwvxxihyhyxwhxwwxwhwwvxygxwxyxwwgxxwvvxvxxwyyyyXhyhYyiyyhyyyyiXiiyhfxwwhwghyWwwxvhxxwIY9YIxxwxxwwwwwxhxiYyIiiYhxwwGhfvwGwhguhxVwVhhxwVxgggWHXIX9wwghiffWxwwwxxwwwwxyxwyHxXhhXhxwwyyxxIiIiIvxwhhxfeXyYxYyyXXhwWxwwgVwxxXvYxewfXxXYxiHhxWxxwvwfWwxghwxgx9XHXIyixihyhxxxxxxjzjzzxwxwhxxhwvvwwxxvwwywyXxxyXwxywxxxxxZzzzjyyyyxyiyyxyYgygxwkk{wwwwyxwwwygwwZzzzzvhxhhyhhyyyyyyYxxwyvXvwhvhxxhvxyxxxwwwwxwxxxxvwvfxwwxwwxhxxxggwwwxxxxxhxxxxxxxxxxxxxxxhwwwvwxwwwwxxwwvwxwxyxxxxhhhhhhxXxxxxwwgvxxxxwxwxwwhxiyiixiyxxxwwxhgyyyyxyxxxyyxxywihwxxxvxvwhwxyxyxyhxxyyyhyxhxxYxxyyyxxxwxxhwxxxxXwxwwxxxxxwxwxwxxxwvhwvwhwfxxxxvgwwxWwuvwxxyxxxxxxyxxxxhyyxyxxxxxwxxxxxxwwwwxwwwxxxxwwwwwhhviyyyxwvvxvwgvxxxxxwxxxxxxhhxwhwxhXhwWxxxyyxxyyxhyXwxhXwXgXhvghvgvvxfwwggWguwXwhhYGwwvxgvwwxuxxyyhxxxxhYwhhxhwxxyyyxxxvhfxhhwVxxwwxwwwghvwhvyhxwhhhhhwwwwwwvgwwvhiihxxhhhhiyiyxyyyyywgwwvgixwvWXxvhhxwwWxxxxhxxhxiwgvhxwwwhxgwxhWgwhXXXxufwgywwgwwffgXhxxgxWgwgwwhigvxxxxxxxwxwxwwxwxgiixxxxxxxxxxXwuxxwwgVhhihhwwwwyxwhxxhgwwXhhYxhxwwxxwyyvwXxwxwhgwwwxxxxxwxwywwwwyIhvihwxGxxxxzxhxxxxxxxxxxwywhxvxxxxxyxyyyxyyyyhxxyyyxxwwwvxxxyyxyyyyyxxxwwwwxghxwghhxvxvvxwgxwwwvxyyyyxyxxwwwxhxxxxxxxgvwwgwgiyxxwxwwwwxxxxxxxxxxxxxwxwwwgwxxhxxyyxyxyxxxxxxxxixxxwxwvvwxxxxvxggwxwvwhxyxyxxwxiyyiyiyyxhxixxxxxxhxxyxxiyyyiiyxyXiyhxxxxxxxwxwxxwxvxxhxxxxhxxwwyuxwhxxxwxwyxxxyiyiixxwxxyxwxxuxhxxxxxxhiiyiyyXyyghhhxvwwxwwxyiiyyyyxxwwwywwxWhgxuxxhhhhhfwxgvwvxvxxxyxxyxxhxxxxxxiyiiiyihhhXxwwgxwhvxxyxxxxwggvwgxxwwwxwxhxxxhhhxyhxvWwWvwhxwhxgxhuywuVixxxhhhhhwvyxxxhvxxxvxvxhfxgwwwgxxxiyvyYigtWxgwwwwvxgvwhhgggxwwwwxywhhxxuxxxxyXXXhiyvhixgWxwxwwwxhvwwywxwxvxyxxvwwwwwwgwwvwxhxxfxywwwwyxxxxxhhXXyvxhxxGvxhwfhwwwyxxyyywhxwwhxwwwxwxyxxxxxxxxhhxhxxvxwwwxwwhhgwxxyiyixwxxyyvxxwvxwwxuivwxgwxhxxxxxxxwwwxwxxxxxxxxyhxhxxxxhhxvvxwgwxxxxxxwwwxhhxxxyyyyyyxyxwwwwwwwxxwwwwxwxxxxxxxxxxhxwyyxxzxhxhxxxxxxxwwxxwwwwgxgwwxxwxghxwyxxxxyxwxxxxxxwwwvwwxxyyxxyhxyxxxwhwwgwvhxhwxxxxxxhyyywxgwvgvwxwxixxxxxxxyyxxxxxxhwhxXyixwxwxhhxxyxxhxxxxxwxvhxwxxxxwxxxxxxxxxxwxvvxxxxxwxhxxxxwwwxwxwwxyhxhxyxvxxxxXxxxyxxhyhyxihxhxixwwwwhwxxxxyyyxxixxxhxxxxxhxhxxhvwxxvxXxwvWxxwhwxggwuxhwwvhwgwwwwgywwxhhxxyxxxxxyxxhhgxXvyvvwgwwwvhggwvggwgfwgvXwyhWgxwxwxxghhxxhxxxwwwxxgiyvhHiguXwxxwxhyxhxxxxxxxxxxxwxyxxwxwxxxYhhXvxxwwvwxgWvyywxXxwwXwxfwwxyxxwxxxxvyvwxwwwxxxxxxxxywgvhxxwwxxxwxxvxvxxxhwxxwwwxwwwwvgxxxxxvxuxwxhxxxhxxwxwxvfwwxwwwwxwxxxxxhxxxvygxyuxhxhhxvxvwhwwxxxxxxyxxxyxxxyxyxxyyxwhwhwwxgxwwxwxwxhwxwwhwxhxxhhxwhvhhxxxxvwhxxhwwwxxxwwxxxxxxxxhhhixxxxxxyxxyyyyxyyvwwggfhwwxxxxwxvYvxxXwxwwxgwhwyxyxxxyyxxxxxxxxxwwwxwhwwyyyyyxxyyyyxyhxxxxxxxhwxyyyyyyyxhxhxxxxyxxxxhxhiwwwwxWhxhxwxxyxxxxxyxyxyxwwxwwvwwgxxwwxwwxwwwwgwxwwxwwwxxxwxxxxxxxxihxxxxxgwwxgvwxxyxyyxyygvwwghhgwgxxwwxxwwwxwxhxxxxxwxWvwwvxhxwhxwxhxgvwXxgwxwhgxyyxyyyxihxhwhwhvghhxxyxxxhxxhhhvhxwXxyyyxyxhhhxxvxxxxgwgwxwyXhxvwwwxwwxxwwgwxxxxxXwggvxwvvWhxixxwyxhwhvxWgwhXgwxxyyhxyhhhhxxwwvgxwhxWwxxxxiwxXhhuHvfggvvwwwwxxxxxxxwwwwxxxwghwwwxxxhxwwxxghwwgxwxyyxxxxxxxxwxxwwwwxwwgxvvxxxwxwxwgXxwwgwwxxxyxyiixxxvwwvxwvwgxhxyyxxyhxhxxvywxxxwxwxxxxxxxxxvxwwhxhxxxxwwwxwxxwwyxxxxiyxxxxxyyxxxhxxxxxxxwhxwwxwxxyyyyyhixhhxxxyyxxxhxxxixhwwxhwvhhvvxhhxxwxxwwxxxxxhxxxxywuhwhwuhgxwhxxiiixhxhhhvwwxwwxgxiyyiiiyxyxyxxxxyyyfhwwgfwwxwxxhhihywwwxwwwxxXxwhXxyyyyyyyxxxhhYXxxxxxxxxxxwxxwhhxwxxwxwgxwyyyxyyxxxxxxxxhxxxwxxwwwxxxxyyyyyyyywgwwwxvxxxyyyyxxxxxxxyxxxwwwxxwwxxwxxfxYwXwevXyxxxxxwwwwxvxhxhvhggwfggwwfwvxWWvwxhhvwwwxxwwxwwgwxhfxiwhvvuwhhhhhihhxxyxxgxxwxwgxxxxxxxxxxxwehwgvvWvhgwyWXvwxhxhwfxwxxwhwwfvghhyhhwwxwgwyhxwgxvhhwxxvwxxxxxwwxxxwxxwixVhfhvfxWWhvxxhhXyxyxwgwwxwwhwhxxwyyyyxvwgXxxwxxxxxfxwxghvwWxhxxhvwwwwughvxxxiwixxyxxxxgxvhhgxvvvwwgwwwwwXwvwgxhhxxhyhixxxxgWwggwuxxwxxxxyxxxhhwwwxwxxwwgvgxwxhWhhwxxxhvugvwgxwwuxhvhhghxwwxwyvwxxxxxxhyxxWYwyxiwvXxyxxxXXxihwvWxvgvxwxwwxxxhwgwwvhxwhhxxhghwhgigfXyxxxwywxxxxxxxxxxwixxiwxwwwfygfwfwwgggwgwwhhgvghxxXwvXWxxhhHvXxXXihxxxwyxhwixwwxwwxwgwwwhxxxwwwywxhwxWywyxYuWxxyxxxxyyxhhhhhwxxhwhxxhhhyhxxyHivxihYvXxxxyiwxhxxhxxhgwwyyyyxxwxvwwxvgvWwxwvxwXgxWxhhxWxwhvgXfxwHgxgxVhgwWwxxwwwxhxxxwwvwxxwhwhvWwhgWwwwvwgfyfgwwfwhhhhhfhwxgXwwWhhwxxwhwvvwwwwxwxwwxxvxxxxXxxxxxxyyxgxfxgivVghvhhgxvwvwwwxxwwgvXgwXWhxwgxwwxwwwwwwhwgxxhhhhhhhxhxxxxxxWhfxughwxGhwwwhhvxxxxxyxyxyxxxwwwwwwxyyxhxhhxhxhxxhxxxyyxxxxxxgwxhhvxxxxxyxxxyyxxxhxxxwwwwwxxxxxxhhixhwwhwwwxyxyyxxxxyyywxwxyxxxxxhxxyzyyxxxxhxvxfhwxxwwxwyxyxxxhxxyyyyyyxxxwwwxwwvwwxwwwxhyxwwxwwyyyxxhzhhxxxxxxyxxxxyyxxxxxxwyyxxxxyyyyyxxwxxwxwxxxxwwxwwxgxhxvxwWxhyxxxyyhxxxhxxhxxxywxgwvyyyyhyxxxxxyxyyxyyvhxgxyyzyixxxyyxwywxxxwyiyizzzxxwgxxxwwxwwwyyxxyyxhxxhxxxxxxwxggxwxwwyyyyyxhxvxwgxvvgxxwxxwxxxxxxxyyxxwwwwyyyyyyyyxwgxxwxwwhxhxhxxxhxxxxxxxxzxwwwwwxxwxxxxxwwgxxvxxxxwwxxwwwwyxihywxxxxxxxxxxXxhxxhxxyxxxxxyyyxxxhhxxxxhxxwhhghvJYYYJxxxwwwwwhgivfVyYxyyYYxwwxwwwxhwxwwggWxwxwxgvYXHXIxhvxhhxvwgwhxxxhwvWygxwxxhwvgxiyxhYxxxwgwghyixYvGZYYY:iYhixgwvXiixyxiixgwwwwhhxxxwwwWxixxxhuYyxwxwhvvgxxwvwwwgwxxwxxhwuWYIYIIwxXwwxxwwwxwwwhhxXXhXxxxvhivwxgwxwvxwhvXXhhhwxwxwgxwxwvwghhxviiiiiIwwwxwwwwwhxxxxyYyiiYYwxgwxhwwwxwwvyyhhxxhwvvwwwwgvhvXgwxwwxhwvxhxhhhXxwgwxhwhxwhwgguwxgvvxwvxgxviIyiiYYwwxvWvxgwvwwvxwwvghxwvxwhwgvxwwxhgwxvxwxwwwwwxgxwXXxhhiYyjiiIhgxhhvggxxwwxxwhvxwwxwwvYYyxiXxwgwxvxwwwxwwiXxyhiXvghwvwhXxxXvwvxvwghxgxxwxxxwfxxvgxwxvwxxhvvhvvgwxvxXhhhxxxhhvgwvYYyiYiYhhxhxvxxwxwgviYyYYYYvwhxwwwihxxhxxxxxxhhhhxhwwwvhhxhhjJjjjjJxxxXxxXhYYyiYiYxxxxwgxxgwvhxxhhhhxhxwhxxgwvxvwwhxvvGhhxghvhhwxvwfwwxwwvxxhwihxhxxxHHxhhxyxxyxwxxiyuvHXXxhixwwwxhgxxyxwxxxwyxgxgxxxyxyxxwwxwwwghvgixhyivGXXxXXxwxhyxxxxxXXwhghhwiXxxvwwxwxxxxxxxxwgxwhwxWgvwxxxyy7xwxwwXxxgwhgwXhxhXihhhxxxuhwvwhiwxwwhvvfwvvgvwhfvxxwwxhhxvgwwwhxhvfwwhhxiihihhyhhxxxxuwhwxxwvihhXhYhwxwxwggwwvwwwxxxxwhvwyyhwwuwggvwwwwwxwughhwxXxwwiYyYiYYvxxxggwXXvXX8wxwxxxXvWhxxhxwWyYxxxyXwxxwwwhxwwxxwwwvxxxxIYYY9xwxxxxxxvwhwvvvGvxwxhXgViHxhxhYgwwwwwXwvwgiyvhixgWXXIX9hfhwxxxvxXxhyhxvxwgwwwwxwwwhxYywxXxxhwhwhwhhHvWyiuxYxgvXYHXI)vxxxxvwwggguggWvuhvwgxwgvxvvvxxwxwvgwxXwvggggwwggvwxgwxvvwgwgwwxgwvgvvxvwxfvghwvwvxwwuxwghhhXXhwxyXhxhhXXgwwwxggvwxwxwxwwwwvuhvwgvwXXvxxxghwwggwgfwvwwxvvghhvxwvwhwxwwgghXxXhHhwxwxhwvgwwwwxxhxgwgwgwwxhwggwxgwvhxxiIyihyiwgwhhvwhwvwwxwwwwfvhhgxwxwhwwwxwgvvwwhvvgvwwuxwwhhyhhY9yYiiihhhXxwwgxvvwwxwxvwgxxwwgwiIyiYiYghwwXWwwxxwwxwiIhhiXwwwwhhXXwhhxwwgxwxwvwhwwwxWvwvxwxhvtGggfhgwwvwfgwwxhvhvxWWvXyhwhxhhxxxxwxwxwwxwwxuggxywweXwwwwwxwXXXXXXuXXwxwuwxvgxxwhxghvhhgxvwvwwvhgwyWXvxwhhxfeXxxxxxxvgwwywhwxxxxxxxyhhxvhxhxvxwxxxxhhhhvghvgxvhghhxHHvxwxvyhwveXwwwxxxwhvwwwvwwvgxxxxhiYyxYixggwwgxxhgxxvwvvvxwxhvxwwxxggxxhxhhxxxxgwxwwwwxwwxXxyiiivwvfvwfxwwvvvgwguwxhwgwwxwwxwwvwwwiIyixiiwwxXxguhuxghyXxihiXwwwhxvwwwwwwxhvwxXhvhxxvxvxwwxxwgiYyYiYYhhxhgvxxxxxxvwhxwgghhxhhvwxxhhwxwxwxwxgwvhhhXXxwxwxwwwYiiYYYixxyxyyhhxXhYhhhwwwwwxwxwxwwwwvvXuwXuwhgvxihxxxhwhXXiYxihxxxxxxggwihxHhHixxghxghxwgvvYYIY:xhvwhwfwvGxwhyiyyxyYwYxxvhXugVxhwxhwhvwhifVXYHYIxxwxhxxxxxwwhhwhvwuwVxhxxyIxxvhwwfVxwxwIiIiIxxxywyYyiyiYwhxvWhvWexxxwxwwwihxxxhXvhxhhwgVxxgwXwwwVwwywgXY9XIxgxwvxhxwxxwwwhhhhxyyxiIyiYYiXxwwhxhXxxXXhwgxwxxwvvgwwhxvvXvXxwhvwxxwwxwwwxxhhhugxwwwxgxgwxvgwwxwxxXXxhHhhvwgxwwxwwwiYyyYiYxxihxhhxhhhvhvwgwwxwxxxXvvXghwhXXyxxyxwgwiwwgwxwwvxwgwiiyxxwvWxxxvxgwwwxvxyiuHxxyxxxxxxxyxhhxhhhhhhhwwWvWwxhhvxxxxhhfxgxxhfvXxxxxxxgxhxYhgfhhxgxvvghyxhyhxvxXhivxwgxxhwwwwvhhihhiiyxxwwwviivwvWxgxwvxwwihxYiwxwxxwwwwxywwxwwhhxxhhXwxwxvwxxxxwwxxxxXxhXXhvgxxxhxxihvwhwhxhxfvwwwghhxhhxhxxhhiyyxwxwwwwggguWgvvhxxvxvvgwyvyvwhxgxvwwwvgxgxxwgwxxvxwvvwwxwwxwgwggghyYYhyXwwxwwxhxhhxhhgwvwgxwwxwghwhxwxwwwvxxxwwxwxwwwwwiYiiiixwxxwwwwxwwgxwhvgwwwxvvwwxxwxwyYiXyixhixxwgwhhwiHhhiXgugvxwgvwgggffwgwwwwfwvvgxwwXwwwxgvxhxxwgwghwxghwxwwhxhhxxxYiyYYYivxwxhwgwvgYYyiYYYvwxxwwxxxvwwgxwxvvvgvwxxXXvhhxXXxxxghggwwvxgXhwhxxgwwxxxxwwwxxxxxxIhxhHhiuwgwxggvwxwwwYhhhXihXWvwghwgfggvwggvghwxhwxxwHhwIgHtwwxwwxhxxwxwgvyhxixyYhxwxhxgwWwxxhhvvWhhxhxWvXIYYX9xhyhyYvWwwxxxwxXxxxwhxXwxyxxYxxwwwvhxvxfhwHYYXIgixhyivGyixyyXWwwxwxhwuwgwxxyuhhugVxXhyiIhxxwgvugWwgxwwwg9YXXIwxvxxXxvvXxyhxihxxxwwhxxhxhxhhxxgwwWwxghvhixXXwhvyhhvXwxwvxgvxwXwxxxxyxxxywwxxwywwxxwxxxxxxwxxwghuyhiyGxwgwxhghgygxwhhihhghfgggwvwvgwxwvxxhhwWwXvyhgxxxxxxywxwxwvxfxuixwwvX8vXwXXXwgxxuwwwwvwgwWxwugxXxxihugwxwwwYhyyhwvvXhwxwxIYHXYhhtxhXwXwhvxxhxwWvhvwvxgyhxYhxwvhfxhhwVHYYXIiXtiihwwXihxyxyYxvgxwxwwwhgtxxgvwwGyhxhhxXhwfwfwwwwxvgwwxuxhhvWIIYIYIZYZIwxexywhhwVhvexvwwViYyyiyYxwxwwwwgwxwxxxxxx9YYYIxwxxhwtxxwvvvGvxfxXhvViHxhhxYgxfxgivVxwehwgvvWIiIiIwxxyxyXyyYyYxxgwwxwwwhXxiyIwyyxwgVxwgXwexgexxwwgWHYXY9GhwIhHtxhuxhxwwWwgwwwwyhyyxXwXeyxwXhwVwgxxxhitxxYyWHYHYXwgxwxwvwXwxvwxxhguhwwwvVxixxyIhxxhxwWvhfww8YIXXgxvgvxgvyXyxxyXghuxHhvWvhwxwxwxhyxhxuYgiuxiXyGwxuwWwhxwvgwhxwhHY9XY9ZIYYxwwwxwwwwwwwwvyhyihyihxuxhhwwWxxvxhxwvWhhuxxxhvwg8YYYIwgfwhivVxwwxwwwygvwxhxwvgxXxyxxvYwgwwwxvxvxwgxvvg9ZYZYghuyhiyGyiyyxyYXwuxxwwgVwxvxxXxvWxXywxXixiihwvWxvwxwgwxxwwxvwwv)IXIXZjzZZZ*hxhxhwghwhvjiihxhxhxwhhwggwhwhwhvZZzZji)wgwxhhvhxhxhXxhxXiiigwxhhvxxXxhKjjJjj*XxxxXjijwgwxghhhxhxhihihxXxxxwhhwggwgwxghhZiyYYYhhvxxxwwWhxxxxxxhhxigxxxgxxgwwwxwuxivxhwhvfugwwxwwvggvwgwgwvxwyxxwwxwwxwxxxxvxgwhWxiYhixgwvXxwwxwwxwwwywxwhwxxxvwwgxfggfwvvxwvwwxxxxwwxxxhhxXhyhxyxwwWxhxhxwwvWvhhgggwxwwwwxxwwwvgxwxhxxxxxxyyyyyhhhxwxXxyxyyyywxwgxxhwhhhhhhyxxixhhxxxwxwwwxhvxhvWxhwgvwXxxxxxghxxxxxxhxxhwhxxXwxyhxxxvxxWwwWhhvvxvwwwwgguyXxhxhxvHhXyxwxWgugXvwwgxvggfgvvxyxxwxxwxhvxhhhxvxwxwwwwxhihhhhhyxwxffvwgihxxxghhhwxxwvwxwhwxwhxwwwwxwwxxwwwvhyxxxxXgvwwxggvxXxxxhxwwhvhxhwwWXwvxxwwvxwwwXwhhwvxvxhfxgwwwgxxwwxxwxihvhhhgWfxWxYexhwXwgvXxxxxxwhwvwywwvwgwxwwwxwgwhXxhhuhwwvgwwviIuyiigwvYhhhhiyhhxxxxywxwwhxxhgxxxxxwwxwiXtiihwwXXXxXXhvxwxxvfxwxxwhwwfvgwggghhXwxxhhwvwhxwwwwvxxxxxxxiXuxxhxxHhxhxhwwxxwwwwxxzxyyxyxxxxhhhxxxwhxxwwxhwhhxxxxxxxhXxxxXxxxxxzxxxxxwwwwwxxwyyyxwyxhxxxxxxxxhgwhxghvYYxyyyYxywvhwwwwxjzzzjxhgxhxxwyxyyyihxxyXxwxyxxgixxxzzzzzyyyyhwxxiiixyxiiwwywxwhw{{kyyyxwywxxhzzjzzxxiiywxxwxyihwyxyuXxywgvxvgggyyyiyyxyyxxyiyyyiiyxxxyxyxxhhxxhxxxxxyyyxhhxhyyzzzzzzxxxyyyiyyxyyyxxxxxhhyyyxxxxxwxyxxwxixxxxxwxxwxwxxwxxxxxxxxxhhyyxxwygxyxyyyxxxxxxxxxxxxwhiyyywxyhxyuxxxxxxxyyxxxxxyixxxxxxhxxxhxxxxgvvXxxxuxyxxxxxxugvgxixxxxhxhxyyyyyyyxxxxxxhhxxhxyyhhhhxxxxyiiyyyyhyxywxxxwghxhxxxxzzzxxxxyxhwxwxwWwxxxxxxxxxyyyyyixxxxxxvxwgwwxxxxyyyxyyiiyxyyhyyzzzwxxywxwwwwxgwfxxxxxxxixhiyyxxxhxhxhhwwwwwwxxxvvhwyyxxxxxxxxwxvgxyixxxxxxxxxxxxxxxxxxxhxhxhhxxxhhxxxiXxxxhvixxiywwxxhyiixxyyhyyxxxXIxhiXyxyxxwivwxhxwYwxxxiiyyyYhyhiwwywxwxviYxhxyXyyxxyzzjyyyxyzzzzZyyxihxwXxhxxhiYwxxwiXxyvwwhxyixwwxiyixxxxxxxxywxyxxxxxxxxxwfgwgwvghhwwwvhgyhxxxxxxxxxihhhihxxxxyyyyyixxxxyywvvXhxXwxxxxxxxxxxxxxxyyxxxyixxxxhhwwwxwhxwwwwwxhxxhxxyhxyixwxYwxyxyxxxxxxxxxxxxxwhhxxxxxxxyyxixxxxyiyyiiyxiyywxxxvxwxgwwxxxxhixhhxyhyhyyyyyyywxxwxxwxxxxxxyxwwxwxyyxxxxxxxxxxwwxvxwgwwyyyyyxxxxxyyyyxxwxxxwyxxwxwwwwxggghxvxxxxxxxyxyxyixxxxiyyyxwwxxxxyxyxxxxxxxxxxyyxwwwwwwxxxxxxxxxxxxixixxxyxxyxxvyxhyxuwxxhhhyhxwxxxxxxxxhhxhxxxxxxxyyiiyiyxxyxxxxyyyyyyyxxxxhhhhhvgwuhxyhxxxxxxxxyhxxhhhxyxxxyxxxhxhxxvWvhxXwxiixwwxxxYiyyxYYxiwwxgxwxyyxzzjzjxwgxiwxxywwxxgwxXhihiYyyyyxwixgxhyyYyywwhxgxIYyiiiYjjjvhxghxxyyiyywxXxihxhvxwyxyxYhyihhHxxxxxxxxiyyiiyyyhhhhhyyyixhyhiyxxxyxyyyhhhihixxxxyyyxyxixixhhxxxxvWvxvvXXxwxxxxhhhhxiiyiyyyiiyyiyxxxwwxxwxvxgwwxxxxxixixyxxxxxyyzhhyxhhvxxxwWwxxxxxxxxyyxyxxhhxyyyywiwgyyyxxxxxxxyyyyyxyhiyiyxywxwxxxyygxxghxhyhhhywwwxxyyxxxhhvWvxxxuxxxyxwwhvgvxxixxxyyyyyixxxxxyxxxyyxwhvwyyxxxvwggwgvghhxvhyixxxxxxxxxxxxxxxxwwxwxgxxxxxxyyxyyxxhxxyyyxyxxxhywyXwxxyyyxxxxgxhxyxyyxyixixwhwxhxxxxxxwxwwwxxyixxxxxxyxxxxxxwwwwwwvgfwfwwghhwxxxwxwwwxxvhwwwgggwxwwwwwhxxhhhxxxxxxwwwxwhxxxhxxxxxxxxxhxhxvXvvwvXXxwxxxxxwwggfgwvhhxvwwxwxwxxxxyyyiixyhyXxxyxyyiyixyxxwxhxxhhwxywwxxhiXxxiYywxxhxhyyjzzzZyyyxyxxihxyxyYxwxhyjjjhhiyvhxwxxyvYyyyiwvhxhxxxxxyyyyYYxxixHxhwgyyyyyxxxwxwxxxxyxxhxhhxxxwxxxwxhxhxzzzxxyxxgxxxxxxyyxxxxxxxxxxxwxwxxwwxxwwxxxxxxwyhxxiyYyxxyxwuyxxhiyiyxhvhxwyyxxihhYhYixhhwwvywwhwxxxzzzzzxxyygwvywgwxxXxhyhxxghzzjyyyxwXyhyyiyyxxhhyvfxxhygxxiyuXyhyhiyivwwywwxvxwwvgxwzzjzjxxxxiyyyyxyyXhhyYyyxwxhwxvywwxhjzzzZwywxxhyxhyiyXYyYx{{kyyyxxzzzzZxxhgvwwxwxwyxyXwyghyXyXyxhiXhwxxgyxxyyyiihyvgxhyxywwyxxhyhxhyXyyyyxyyxywxgyhwyyYyywvyxhxxihyxiyXxhyjjjhhiyyyzzjzzvwyvxxhhiwxxWxyyxhixhYiHiYyiIiYxyxjzzzjXywxyhgxhgxwwwhvxwwxwiHhXxXwhxwgwxiyyyYyyxxxxyXyyYyYvgwwywhwxijjxgxghxwhxvhxxYyyyiwhwxxyxvyxxyxxyhXyyXyHiijzxyxx{k{{{{zxxxyiiizxxyxx{{kxxyjijxzx||||zxxxx{kyxxzxwyihiwxgvwxwwwhxxxiiiyyyyywwxxwwwwxxxxxxxyxxxxxxxxxxgwwwwxxxyyywwxwxxxyyyyywwwywwwvgwgxvwwxxyxxhxyyyzzvwXwxxxwgxxxxxiiyyxyyxhxxxxxyxxxhwxgyyyyyyizzxyxhxxhwwwxwwwhhhwxwgwhxxhxxxxxxxyxxwwwxxxhxxwxwwwwwwwxwxxxxxwwhxhwyyyyxyyxxxxzzyxxxxxxxxyxxhhxxxxxxxxwhwhwhhyxiiyxwwxxhxxhxwwXwxwxwgxxxxyyyyyyyxyxhxvgxwxwwwxxxxxxyyyxxxxxxxxxyxyxxxxzzzzghxhxvwgwxghhxxxxxwxxxwwxywhxxxxxhiiywwxwwwxhhhxyxxxxxxxxxxxxxhxhxxxyxxxxyxxxxxxwgwxghhxxxxxxyhxxxhxxxxxxhhiiiiyXxXYyYhvyxigGxxxxyxwwihXXxiwxxhxwxxxwxgwxWwxghwvxxxhyhhwvWwvxgvwWxwwwxWvhgxixhyhhxvghwwxxxxxwhihxhhxxxwwwWvwwgxfggfwvvxwywxxhwwxwxwgwxghxwwwxxyxxxxxxxxxhhhhhhxxvxvwvwVwgwfwvxxhxxwxgwwxhvxxxxxxxwxwxwyyyxxxwxxhxwwvxxxhhXxxXxxhxxxwxwxwxhxhhxxxwxwwxxxxxxxxxyyyxxxxxxxxxxxxgwggvxxwwwwxywwxwyxxxxxwxvhxyyyyywwwxxyxyyyixhxxxxxxwxhvxxxyiixxyyxhxhhyxwxwwwXhyyyyyyggwxxxyyxhxxvwvvxxxwxwyxxxxxxxxxxwwwxwwxxxxxwggvfwhwxwwxxxxwwxxxyxyxyhxxhwwuwggvwwxhwvyxyyyyyxxxhhxxxyiiiyxyxxxwwxgxwfvwxghwwxxuwWwwgxyiiwwgwhxhwyihhyxyiihhhxhxxxxwxxyhXWxXwvgwXwxvxhfxfwwwgxyxxxXwgwhxxxhxhhxwwxWwgghvwhwhhHvWvxxWwwWhhvxihxwXxyxhxxhhhhhhwyiwxgxxxxxxxxxxwgwwxggwwxgxvxXvVvxvvwvghhvyyyyyiyyyyxxyxxxhxXXhyxyxxxwwiiiYiiyyyyyxhihxyyyiyyzzzjjjyxxxyxxhXXvhuxwvwggiywxwwxwyxyxxxxwyxxwxywxxvwyxxhwxwxxxxvxvwhxwgwwwxhxxyyxyyxghxwwwwxxvxwxwwyxxyxxxxxxxxyxxyyvxxwwwgwxxxhxjzzzzxxxxxyyxxywxxyxxhzjjjjxyxiiyiiixxhxxjzzzzyxxxywxyyyyiyyhhiyyxxyxyy{{{{{yyyyyxxxxxxhxyyxxxxxxxzijzyxxyyxxyyyxxxxxiyyiiwxwxwwyxyyyhxhxxxyxxiyxxxxwwxxwxwyyyyyhXxHhXhxxxwxwxwwxxgxWwvXgyXwxxvwxwxhxYii9YYixwhwhxXxwhxxgwhwxxwwxwxwhHXhHwhwgwwvxxhwhxhhhxHhXXwwhxgxwhxxvWvhxXwwwxwwhwxXhxXxxxhhxxwxwxwhwgiiyIiIixgxhxwxxwwxwwwxwwwyyxyhxxxxxyyxwgxwxxwxwxxxxyxyxyxwxwhxxhyyyyyxxxxxxxxxxxwxxvhxxviyyiixxxxxxxxxxxixhhxxyyxxxwwxwwwwwyiyyiyyyiyiiwyxwwwywxxwwxhyxhxxyyyyyxxxwwxwxwwxxxwwxwwxyyxxxxxxxxxxyxxyyyyvixwwwxyixxxxxwwwwwwyhhxxyyywxwwxxxxyxwhwyvyxhxyxhxxhxxxxyxgxhwixhxixxyhhxxxwywxxwxxyixhixXxXxxxxxxxvxggxxxxxxyxxxxxyxyyyyyyyyxxxxwwxxxwyxxhxxxxxxxxxxxwxxwwwxwwxwxwiyyyxxxyxhyxxxxxxhxhxxwwxwwxxxxxyyyxxXYyXhHhvhwWwghwvwwwfgwgwhhgxxwxwhwXwyXvWwxwwxggvwwxhhxhhxxiiyIhYXhvXwwhWwxwgwgxxgxwxwhxvgxxwwxhxhwxvhwXxhxxwwwwxxxhixXyYixwhwxxhwxwxhghgxhhxxwxwhwwhhgxwwwwggvwwhwhwwvxhhxxwxwxxwwwxhhxYiXhhvXvhxwuyxyxxxhxhxwwxwxwwxxhxyyxxhXXxhxxxiiiYyYivhvXgwxwwwwwxxxhxhxxhxxxxxiyyiiiyxxxyxyyyyxXHhhxiiyyyhxxihhxyxxyxxxxxxxxxhxhhxxxyiiyyxxxxwxxyxxhwwxwwxxwxxyyyxxxxxxxxxxxxxyyyyyxxxxxyxxwxwxwwwxwxxyxyxxxxxxyxxyyhyxyyyyyyyyxwwxwxwxwxxxhxhhhixyxxxyjjjjjyyxxxxxxxxiiiiyihxxhhhwwwxwxxxwyyyyyihixyxYyYYyyyxxxyxxxxyxzzzzzwwvxwwwwxxxxwwxxxxxxyyxyxxgghhxwihhxxxhhxxwwwghhwxxxxwwxwwwyyxyyxxxxxxxxguhuxghvwvxvwghxgxxxxxyyyyyvvxgXWyvhhxxxhxxiiixxxwwxwwxxxxxhhxhxxxvXhxHXIhxxhixXvhxXvxvvXvXxWwhwhxhhxwxxwxxxwwxwXXxhYiy9Y9ixxwhxhxwhwxxhwhxhhHXhHxxxxxyxxhvxhhvihxHhHiwxxhxgwgwiYXiXxhhxxwwxxxgxghwwxHHhXxwhwhxxwyyyxhxxhwiyyIiIYwhxwwwxxxxxxyxyhyxxwwgwvyyxyxxyyyyyxyyyyxwyxwwxxxhwhxyhxxxyyzzyxxxyyyxxyxwxxwxwwwxxxwyiiivwwvxwvXXhwxxxxxxyxywxwxxwwwxwhwxxxxxxvwwwxvghxgxxxxyyxyyyxxxxwwgxxfggxwwxxwwwwwwyhxhxxxxxxxxxxxxxxxxxxwxwhgwvxxxhxixxyyyixxxywxwwwYxixhhxhhyihixxhywwwxxxxygxhwxyxyxxyxwywxxxxxwvhyyyyyxxyxwwhvyyyyyyyyxxvxxvwxwxwxxxxxxwwxxxxxhxxxxxxxhxwwwWghgvwwxwxxxwwxwxguhxxwvwhxhwwWxwwhxyyxhhxxhxhhyyxxyywxwwwwwxxyihxxxxxggwwxwxhwvgwwwxxxxxgwwhgwwfhvwihyyxxxhyxxwxxwwwxxxxwwxxwxwxwwxhxxxvxxhwhzzzxhxxxxyyxxxhxxwxwxwxhxhxwwwwxwxxyyywwxxwwwywgxxwwxxwxyxyxxxxxxxxxxxxxwwhixxxxuYyyxwxxvzzjzzhwwihgxxxiyyiiiXxxwxvwwvwxhjjjjjxxwxwwxxixxxhuYxwvwwzzjzzxxxxwwwxx{{[{{yyxxxwxxwghiyyhiiyIiXxhiyXyyXyyxgxyyhyxxvwxfxxXixYYiixywxxuwxwxxxxfxxwgyvhhyhhyhxxxwwwWxwiiiiihxwxvvyxhyxuyiwxhvwyyhywvyyxhwwwggvhhxiihijYiiijihgwxxwxxxwhxfxwgxxxyxxWxx[jZZZ[ZxxwxxxwxvxwgxxyyiyyvxxWxxxhwwvjYiiijixwxvxwhxfhxwxwhvwyYyughwxhyxkjjjjkjiiiiihyyxxwyxuvxyhxyuwygvwgwwgvxxhyiixYYXixgxxwxvxhhyhhxxxhwvyXxihiXxxwxxxwfxxxyhyyhxwxwwxWwwwyhyyvyyXyyyivxwfhhxiihiIX9YXwwxgxgwxXwWhfwvHhhyhiYHwwxhxghxhwhwfwgXxxxwxxwxxYI)IYhwvWwXgfwxHghxhfhiWhvWxwgxwhYyyYYY9xxxxwxwxxvxwhwhXgwWXY9XIihvhhhgWfxWYhyihhHxxxxxxxXxhwhvgwwWiyhiiiHxwgxwxxxxxxxwxghwhhfwXYY9YYxxggwxxxxvywWXxwwxwxxxxxxhhhhiihiiiyyyxyywxxvwwwffxyyyyxyxxghxxxxxxxwwwwwwwxxhhhhwghggwhxihxxxhyhxyyyyyyxxxxyxxxxhhwwwhgwvxxxWWiYxhixxxyxyxxxxhxxhhhxyhhwxiwxxxvyxxxxxxxxxxwwwwwwxwxxxxxxxxhhxhhxhxxxxhxhxyxxxxxxxxxyhwghvyyyyyxxyhxxxxxwxwwxxxxxxxwxwwwwxiyyiiiiyyyiiwxwwwwxxxwwxwxxwwxxxxxxxiiyyihyhhxxxxyxyxxxxxxxxxyyxxxxxxxyyyyyyyyyyxxxhyhxhxxxhxihxyxwwwxwxwxxxwwwwxxxxxxzzzzzhxyyyYyYyxxxxxyyyiyiixxxjjjjjxxxxyyxxywxxxyxyxxxyxyyhxyhhhhhhyixxwxwwwwxyyyzzhhxHhIivwyXvxxXwxxvwxxXwgvwvXXxhwxhhvwhgwhxwgxxxxxYhHXIhwwvhgghwwwhwhgvvhHhhHvgwggwwhgggwhXvwgXwxxxgggYiy9Y9YvwwwXvvXhxwwvvXhxXwwwxxxwhwwhwwvxwhghhwxxxxwXuxxXwwwwwhwgiyIiIiwwwhxvxxxwwggwxxxhhhhhxxxxxxhxwwwwxxwxwwwwwxxxxwwwxwxwxwvwwwxhvvxhhvxxxxxxxxhhxxxxxyxxyxxxxxvwvfxxxXxhhhxvwfVhhhhxvxvwxwwgwuwwxvhyhxxhxxyyyyyxyyxYXhhwwGyxyxxwxhwgxxwwwvXwgXXhhwxhhYwgWwggwuvwwwwwwgwwvhhxXhwwwWyxyxhxwXyhxyyiiyxxxxhiihyxxxyhhhhhgxgvhhvvvfigvgwwwxvwWxwwwwwwwvgxwwvvvxyxxxxxhxxxxxxxwxvxwxwxwxxxxxxvwvhhwwwfyyxyxvwWwxwguyyyixxxxxwxwwyxxxxwxxxxxxxxxxxxxxwhwwhwwvxxxxxhhxxvhxvwwyyyyxyyxxhyxxyyhwhwxgwwwxxxxwyyxxyxwhiwxxxxyhxhxgwwxvxxxxhwxxxxxxxxyyxxYxxyyyiyixiiywXxxxxwwwgxwxXuVwwwxxgvhwXwwgwiwhggvwxywwwwwwxxxxxwywwwwwyxxxxxghxxxXWxxhxhihhihhxwgxwWwhghwwiiwgxxwwfygfwfwwggxYhhXxxwhhXwvWxxxxxxhgvwwxxwxxxxxxxxxyxxywwwhxxxxwxgwhxhwxXXXhuwhxhiIvGiyyiixxxwwwwxwywxwwwxxxxyyyyyxxyxhxyyhixxwwxxxxxxxxxxxxxxxxyiyyyxyxxxxxxyyxxyxxxxwxiixxyyyyvwvxgihwxyxxxwyyyiiixxxxxxxvwfwvfhwwxxxihxyxxxxxxxxyygvwxWYxxxhhiixwxxxwwxxxxxxxxxxxxxxxxwhghhwwwwxwwwwwvxxwwgwgxxwxwxxxxxxyxyxxxxvwwfwwfvxfwixxixyxyxwwhwgxxxwxwxwxwvhwhxvWwxwgwvwhwwxwgxyxxyhxxxxxxxxxxxxxxxxwxxgxxxgfxhwxwxxwwwxjzzzzxxyyixyxwyxwyyyyywwxyyyyxyxxyyxxxxxxxxxwxyyxxyyyyyhxxyxxhiiyyiyxyyywxxxxhxyyyxzhhxXhHXwxxgggxgwxgxwxxxhhxhvxxhwwgxxwhxxgwwxxWgWvhWvuhxxwxgxxgxhgvxxxxghgvxwhhihwxwwhxhxxxhvxwgwXhxHXXXxyxiYXhYwxxxxwwwxxxxhwghhwxgxhwfxhxXxXwxxxwwwwxhxXhXiiyyyxyxxxxxxhxxxwwxxwwxxxwxwwyyziyxxxxxxxxxxxxyxxxhyyiiyxxxxwxxwwxxxyyxywxxyyyyxixyyyyyhyiyhxxyxxxyyxxhxxxwwxwxwxxwwwixwhyhxxxyxxxxxhxxxxhxxxxxxxxxxxxxxixxwyXygxxxxxxwwxwxwwxxxxxxxxxxxxyxyyyyyiyxyihhXyyyyyxxxxxxxxxxhxxhxxxxxwxwwwxxwwyxyxyyyiyxxhxhhxxwxwwxwwhxxxhyxxyiiyxxxyxxxixhxiyyiyxxxxxxxxxyxxxxyyxxyxxwxyyyxxixxxyxxzyxwwxwxwwwwxxwwxxvgxxxxxxxwwxxxwwwwwwwwhwxwhwxxxxwxxxxxxwhwhxxxwxxxxhxxxwxgxhwhxxxxwwvgwxxwxxwxxyxhxvhygxXwhxhxhxxxxwxwwxxwxwxwwxxwwghyhyYhXiwxxhwxwgwxhxxhxvwxwXxgwwwxxxxwwwvwgfhwxgvwwhgghgwgiYxYiIYwvxXvXgxvwhwhwwxxgxwwgwXvxhgvwwhxwwhgxxxhwhxXwxvYvxxXwhhxIYXhwvhvhghwvxgvgggwwxxxwwwxxwhwhxxwxwxhxhxwxgxghxxwxhxxhxhxxhwhYyXhXihwgwxhgxxxxhgxwwxvwgxxxxxxxxxxxwwxxxxxxxuywwghwwxxxxwxhwxXyyyyyYyxywyxxxixwxwxwgwgxyhhhhxxxxxxxxxxyyxiixxxxxxxyhhhxxxvwwgwxxxWWwwxwxwwwxxxxxxxxxxyyyyhxwwwvixyxhhwxwwwxxiwxwxyxxwxwxxyxwxgghvvgyyyyxyyyyyyyxxxxxyxxxxxwxvxwwgwxxxwxwwxhhhhwwxwwxxxhxhxxxxxyyyxhhhwwxwgxwyyxyyxxxxhxXXYhxhxwwwghhwxvgxwxfwxxxxxxxxxxxxwxwxxxxxxxxxxwxwhvhghxxyxxyxwxxxwwwwxwxxvxxwwxwxwxxwxyhyXxxhihiiiiyxxxywixxxxwiyiiiiixxxxxxxiihhIxxxxxxxxxwvhwxYyyYYYyhyXxXxxxixxiihxwixgxXwwyxxwxxxxwhxxhwxwwhhxwxxgxxxxxxhyxixyyyyyyzzwwhwxxwWxiyixxxxxyxyixhhxxxxxxxwvxwwwgwyyyyxyyxyyyxxyxwxwxxxxxxxgxxhfiXxhyiXywxgyxuwwwvxwhwgxxhxfxxxWxxwxiixiihhwfwwxvhhxxvhihihvwyyvxxwxxxwwwgxwYiyYiYivxwgxwxyhxyuwxxggwwxxvhxxvxxxxxyxwwwggviiiiiiixhxhhyXyyhyxxgxxwzzZzzxxhyyiYyyyhxxwxXihvhwyhixuiiixxwxxwxhxxfxixhxxWyxyxiyyiyyxyyhyzjjyywyiwxgwghwvyiyxxhXiiiiihwwwxgwxyxyywyyXyxvxwgxxyixxWxxwihyiihhxwgxvwwwfwwiiYiixgxxyxyxYXxhYiXxxxxyxhyywxwgxgyywxwxhxxvxwghxwwwwggvxxhhxYiXhjYiiijiyxxxywwxvxvxghxfwgyvxxWxxwwvfwjYiiiihxxWxxwwxgvihhhiyxwxxxywwWyxwxxuxvygxyuZYYYYZiiiHhixwhxfwvxgxgyyXyyxxxxgxwxWxyvxxwxxuwwwfiIiiiixYX9YHhwxhhYuHXxwhxwvXyhwxiyWxxhwwhwgxxwfxxxwhwWwwwHW9XGuwxxwxWhxiviwwwvvwWWxxYXYv8yXxyihXWxwhvgXfxwHiwxXhhuHXH)IHxvxxwxxgxwwhixhYiHgxxghxxgwxhhxhxXxxxxxvxgwwgyxihIvGhxghwxgfuXXX8X8xxvhxxxyixxhxxxwxwwwwxwwyxwhxYxxiiiixwxwwxxhxxxxyxxxxxxxxxxxxwhxxxxyhxhxxxiwhxxxxxxhxyxixxxxxxxwxwhvxxhyhhxxxxxxyXxyyyiiyxxxxxxxyxxxxxhhxyyxyixhxxxyxxxxxxwxxxxxxxxxwwwxxxiiiyixxxywxwwwwwyyyxwxxxxyxxxiiyyyyyixyxhyxxxxyyxxxxwwwwxwxxxhxxhxxhhxyiyxxyxxxxxxwyxwwwwxxxixhxwyxvxhxxxxhhhxwxwwwwyxxxxxxxxxxxxxyxxwyyhywviyyiyxwwxwxwxwxxhxhhxxxhxxxxxxxxxxwwxyiyyixxhxxixhhxxxxxxxxxxxxxxxyyYyYYyzjjzjxxxxhhxwwxwwxxywxxxxwwxwwxxxhhyhhihxhhhhhyyyyyXhxYiHhxvhxxhhvxXvXxhxxwxwXwhwxxwxvwxwgxxwxhxgxxwxiiyXiIXwhwgwwvvxvWwvXhxwvvxwvhwxxhxwxwhwvwxfgwgxhwhHHhiiYyYY9iwxwxhvvWwxwhxxxhhwwwwwgvvwxhwgxxxgfxhwwwwggvxwvwxgwxuXwxxXxXXxxiiiIiIijjjjjxxxxxyxxyywxwxxxxxiiiiiixxxxxjjjjjxxxxxxxxxxxxxxiiiihiyyxxxxxjjjjjxxxxxxxyxywxwiiiiixyyxxxxiyyhhiyxyyxxxxiiii{[[[[xihhhvvhwwgghwwiyhihxxxhxhxxxhhxwwwxxwxvwhhxxwwwwwwwwxYyyYYYyywxwXXxxxxxxxwxwgiwhyhhhxhuhwugwgwxxxwxxxwwwwxwhxxxxxxxxyxwhwwhhgxiiiiixXXxxvvyhgwhxxxxxxyxxhxxhhhxwwxxxxxxhxhxhXhhhxxxxxwwwwwxxxxYiiYYYixyhhxxivwxgvhxxhhhxxxxiyyiiiyxxxxxxxxxxXhxXiiyyixxwxwwwwwwwyxxwwwwxwwxwxxxiiiiiixxxxyiiyyhxxhhhxxxxxxxxxxxwxxwxxxxxxzzjjjYyyYYYyhhxxxhyxhhhyxxxxxxhxhxxhhhhhhzzzzzYiy9Y9YwxgxvhxhxhhxxxhhxhwxvxhvvxxhxxxxxhxxhYiy9Y9ixxxxxyxhvwhhgwwwhwgwhhXXxhwwxxxggxvwhwgwxYYy9Y9YxxxxxvxvhvvgwhwxXxxXxxxxXhxXwxwhvhghxxXxXxXXxxJjj*J*jihhiyyyYyYYyxwwwxxwxwxwwwYxxxxhxxwwhxxvywxwxxxxxixhhywhyhxhhxxxxxywxwyhvxwxxhwxxxwxhvxxwxiiiiihhxxxyxxhhhhwwwwxgvyxhhixyxxihxxxhxyixxxwwvxguwxhwxxxxyyyYYYyxwwhXxxyxwwxvwwvwxgxxhhhwhwhxggxwxxwwwxxhxxxxxwxxxxxxxxxxwwxwwhwyhhhxwXuxxXXhxxfggWwxXxuXXuwwwwwwwxyxwhxiwwhwXXwxwwxwvhxhwwWXwvWxwwufwVwwwwwxxxhxxvwwgwvhgfgvvxhgxwxxvvxwhxfhgvwvwxhxxhxHgvxghvwwGxhxxywwwxwwihhHIxxxxxxwvgxxvxXWXvghvghfxvgxxxxXxhwhvgwwWvhwgvwwgxyixhxxihxixwxwwwwwxhwxxxxxhwwwvwwwvfvvfwxwwxwwwwxxxyxyxyxxxxxxxxwxxwwwxxxxwwwwwwwyxxxvwxwvuwwwxxhxxxxhhvhhxxhxvxxhxwxwwwwxXwxhhhxxhhhiyyiywhwwxvvwgwwghwyYX9WyHHhhxhxhxhxxhhwwxxgvWwhwwwywxwwxwwwwxxwvgwhwfxghhHuVxxhxhxxxxhYXhhxwxxyhwwwwxXvXxgxxxxWxwhhHvWyxxxxyhXwxxwwxgxwggwxxxxxwwhwgxvhvhgvgfvxgyYXxXxwxwxxxgyxihIvGyyyyyxxxyyhxhhxxxxxxxxzjjjjxyyxxyiiihiixyyiyyxxxxixhixwxyyYyYYyxwxyyyyyxxxzzyzzyiyyyxxyxhhyxhwwwwxxxxxxxhxyjjyzwwxwwwwxyxhxxxxxxxxxxxxxxxyyxxyyyiyxxxxxxxwxxwwxwxxyxyxxyyyhxyxxyyxxyyyyyyihXXhxxxxxxhihixxxxwwxhyyixhhXXhxyixyyyxxiiiYYYyxxxxhhyyyvhwvgWWwvxyxyxxyyyhhhhxxxxxiyYiYYywxxyyhyyxXhHHxwwwfxgvxxywxwxwxxxxxxwxxxwwwwxxxxxxvwxgwvwgvhxwxxxxxxwxxxxyyxxxvwxvwvugxwxxhxxxxwxxwxwwxxwwwxxxiyiywvwwghgffxwxxxxyxxxxwxwvgxxXhxXXHXwxxwxwxxxvxWvXxhwxxgvgxgvwwvgxxxwwxxwXwgYiiYY9ixwhwXxhyxxwxwyhXXxhwwxhwwwhxxxXhxXXHhwwwwwvhxxxwvvXXxhwwhxwwwgxgwgwwghxxwxHHhXxxxhxwghxwxhxxhIyyIIIixwxgxhwxxxxxxixhixwwvhxxxxxxxxwxwvxyhywvxxyhxhhxxxxwiwxwxxwwyyYyYYyihhixxxxywxwwwYxxhxwxxxwghxxxxhhiiiiiyxXyxwihggwwxhgwwwxxwxwwxxxxwxxxxxxhxhxwwwwxwxhhxxxxxxxhxwwwxxwwxwxxxxvvhxvwxhwxhvxhvgxxwxxhxxhhhhxyxxxxxxxxxxxxgxhwfxhxxxxxxXXxxwwywwghxhxhxxyyyyxxhxxxhhxyyyxxhixgxxwxwxxxiyxyyxxxyyyyhwxvxvzyzyyyxyxyxxxxyyxxxxxxxxxxxxxxxvxgwwgwxxfwwwxgxxixhxyxxwwxwxwxxxwyuXXxiiiiwywWXxwwvxyuhxwwyxhhixxxyixxxxxxxxxxxxywwxixhxvxxxvwhxyyyYYYyxxxxxxhiHHhxxhhhxhxhxwwhwXYwvxywxxxxxxxvxwvgwxwvxxwxxwgwxxxxxyhxyxxyyxxxyhxxxwxxwxyyyyxxxxxxxxxxyyyxwxxvxwwhxyyyyywwyxxwwwwyxxxxxxwxwxxxhggghvxZYYYYZihwxvxxhxxghxfvxwxyxXyxxxyy[jZZZ[ZxhxxwxvgxvxwxywyiyyvyyxxgvgxxZYYYYZiwxvgxxghxfyxxxxvxggxwyYyuxwhvxxxxyxyXxyKjJJJKjiiyYYYiwwwxWwxxxWxxvyyXxyvwyvxxwxvxwvxvXhyYiYixxiiHihhvgxhvxvxwwixwwwxvxwhwxvyWxxviXxXiYXxxxxgxhxxfxxwxxuxxwyyhwyvxwwhvwwwwggvyxXyxiiiIiIihhxhhYXxxwgxvyyYyywxwxwfxxxxxxWxxiyyYYiYxxxyxwxwwfxxjjJjjxxWxxyyxYhxhhhXxxxyyyYyywwwwgivyyxzzZzzwxgxxvwiwwgwvxxiyhiiiHYXxiXiXhwxwvxxgxxhxfxvghhxvxyXxywwxxvwhwYhyiYXixxWxxxxxxwxvywvxwixwwxvxvvxxYiyYYiihiHiivyxXyyvwgwwwgvxvxWyxvwywhyyvwxwwwWxxxwxxuxwxIiiiIiiXH)HIhywXwxfgvWxxwxwxwxxigxyxyWwhxyXYwWhxggghvwxvxXhvXYI)IYxxwwxxwxxxxxvxwxgwxwYhxXywwWixxiiiXhxXxwvvXxwwxvxgxxwIH)HXxxxvwwxxgxwygxxyiWgxiHivwGxxwvxxxgwwixiiiiHfyxvXhgwwWixwHigvGhggghvxY99YwxvxxvhxihxxxxxxxxxxxxxxxwWwwgghvxyxxwgwwxvvxhvvwxhwxxxxxxxxxwwyyxxyyixwwwxwwxhvwxXxxhxhxxhxxxyyyixyyyygwvgvwwwwyyiyyxxxyywxxxyyhxihxyxxxyyyywxwxxxyxhyxxxxxixxixxjzzzzxxywyxwyyyxxxxwyxyxyyyyyyyxxhzzyyiyxwwwwwxxxyxxxihxxxxxyxxhxxxxxxxwxxwwxxyxyyyyyxhhxwwxwwxxwwxxwwxxxxyyyyxxxxxhvwvXXxvxxxxyyhhhhxxxxxwwxwwxwhhxwyyxxxyhxxxxxxxxixxxxxwughhwyyyiiixxxyxyyyxxxyxwwwwgwwfvggwfXhxHXXhxxwwvggghgwgxvvXvvXwXwwhwWwwxghvxxwxxxwwwwxggvgwhhgghXvWWvvhwxxxwggvxvvhxwWxwwxxwwgvwgfhgggxxwxgwXwvggxvhXxXhHhghxwgvvvvxvhvgxgwvwwvgwwwxhwgxwhvwfvwwggvwghgfwvxxwhvxwWwxxxwvwwwgvhwwwhhXhXxzjjzjxxxxxxwxxxxxyyyYyYyxxxxxxxhxhyyyiyxxxxxxxxxxxxwxwwwwwxxxxiyyiixxwwwxwywwwwiiiiixxxxxxyxxxxxyhxhhhhhhxhzzzzzhihhyxhhhxhxwwywyWyyyYyyywxxxwxxxxhxxxwhyxxxwyxwxxYyyYyYyhxxiihiHxwxwxiiyihyxyyxxxxxwwywyWhhhhxxxxyyxyXyiyyxxxxxwhxxhhhwXxxxxwiiiyixxxxxxxxywwwxyxxxyyyziyxxixxiyyyhyyyyyxxyhxhxxxxyxyxxxxxxxxwwwxxxwxxxyyyyyxwhfxxxxyxxxxxxxxxxxhyxxgyxyyxwxxwxxwxxyxyxxxxxxwxyghxxhxxixyxxwwwwxyyyxxyxxwwwxxwxxxwwwxwwgwYYy9iYixxvhvgxwwhwgwxwxxwvxwhxWwhHhhHwwwvxgxxwXhxXiXyIiYYwwxwhxxgxvxwwwxhxxxhwhvhhxwwwgwxwhgxvwwggfhwwxwxwxhYyHXXhhgxwxfgwvvhhfwxXxxXxxvvhwwxwWwxxxwwgwvXvwgWwxwXuXxxwwvwgwhwwwiIiIiIizzjjjYyYYyyyxxxxxxxxxxxxxxwwxwwxyyyiiwwxxxxxxxhyhhxxxxxxhxhhxxxwwwxwxxxwiiyyyxxxxxxxxxxxxxxxxwxwwxxxwxhhhhhhhhihixyyyyyjjjjjxxxiyyiiiiyxxxywxxxxxxxyxxyxxxzzzzzxxxxYyyYYYyxxxxxxxxhxxhihxyyyyywwwxxxwwiyhhxxwwxwxwwxyxhxhyyxyxywxxwxwxihhhihxyyyyywxhwgxxwYyYYyyyxxxxxhxXYXhvvxwwvvXXhwwyvwhgwxwwwxxwxxxxhhhhxxxhxhxiyiiiiixwxwxxxwwxvxwxxwwxxxxxxxxxxihHHhxxxxxwxwwwwxhXXgiyiihixyyyxxwhxvxgwgwhwvgvgwhvxxxwxxxwxxxhxhxxxxxxxxwxwwxwxyxxvvxhvvvvwvwwwxxxxxxwyyxxxxhwwwwwxwwwxwwxwyyvhwuXvuggxuhxxxhxhhxxhhhxhxxixxxxwxwxxxxxxxyxxyxxxxwxwwwgwvhgvggwfYYy9Y9YhHHihxxxxxxWvgxYwwwxxxgghwwwvgfwxhhxwxxwwgwXYhHXIhwwwggvfxhwxxxxxxwYWxwwwxhwhhiwwxwXwXhwvxhxiYhxHXHhwhwhwwxwhxxvWvXxhwwgwxxwgwhxwWvwgWwwwwvgwfgghfgwxhvvgxwXwXxxwwxxxIiIIIiwxwvxixxxxwyxxwxxxyyyyyYyhHhhhyxxxixwwxwxxxvwXwwxxuxxyxyhxxxwxyxxwyhxxwvvwwwwgxXxwwwwxxxiivwwXwhhxuxhxxxxxxhxxxwxyxxwwwvvwvxxvxxxxxxhxhxxyXyyyYyYyxxyyiiiiiwhxxxxwxxxxxxxxxxihhhIwwwxwxwwxwwxxxxwxyXiihiyiyxxwwvhxwxYvxxxiyixxxhxxwxwxxwggxhvxxhwxyixxxxwwwwwwxxxxwvxwwwgwvxxvgxwwgwuvwxxhxvwwwxwwwwwxxxxxhxxyyxhyxyxiixxxxhhhxwwxxwwxwwvxwxwxxxxxxxxvxwgwgXgvxxxiyywvwhfwvgvvwwxxxwxwwwxxwwwwxxxhhxwihuyiXgvHxxywwwxyxyxxxxwwwvgygxgwxwwxghwwhHhhxvxwhxvhgvgvwiXxhwwwHhXhhxwwxxxxwxhxiwhxyXvxyxhxxhgtxxgvwwGXXwhghhwxwxhwhwgxxgWwvhXXXyxhhxxxhhxgwxwhxxxxxxxYhuyxXw8whgwxWXwVxwxxxwxhhxxxhxggiHhhHxxuxXuxWwwWwhWvXgXvXgihHvVwwvwifwfgwwfxxyxxxwwwxxwwxwwiwhxgxxhxhxxwxxwxwxwgVxwgXwehhvghvgxvhggxhwxvwXXiXXwwxvxhfxfwwwgxwhXhxgwhvWwhgWwxxxxxxxxhxhghgxvhXwVuwwvwvvgwxxxxxwxxwwwxwwwxxxxxxxxgghhxwxwwxwwwvxwgwvfvvhwxvxvggyhxxxxxxyyxxxwwwwwwxhyixyixxxxvwhwxwwggxxghxwxwxwxwwwxxxxhXWhwxxxxwwwxxxxyiyyxhxxhhhgwwgwwwwwhwvhwxhyhhhxxxxxxhixxxxywxwxxxwxwxwwxhxxhhxxxxxyxyywiwhxyyyxyyyixgvwwwyxxxyxxihxyyxxYxxxiyihiixyyyywXxxxxwuhwhwgwgwhxixxxyxxxyxxwgwgxxxyyywxxwxxvwwxvwwffxxxxxxxxxxwxwxxwxxxywwvwwxwwwxxxxxxxxxwxxwxwxyyyixxxhxxhwxxxwxxyyyxfhwxvwwgwhxxwxwxwwxxxxwwxxwwwxwwwxhxxxxyyxxxxzwyyxxxxxhhxxxwxxxwxxxxyxyyyxxxxxyyyygxxwxwxwwxvxwhxyyyxyyxxxxxyxxhxxhxvwhwxwwWxxxxxyyxyxizzzwhxwhiiyxxyyywwxxywwwwxxxyxxjxxyxxxzyywhghwwhYiyiYYixxwwfwwyxhyxuhihihwgwwgvxxwxxhixiiihwwwxvwhwvxwgxxvyywvxggwiXxyhiXhvhxxvxgxhxxfxyxxxwxwwxgwvwxxhxxvxwygxyuxxwxxWxxwiiiiiiiZYYYYZiywxWxxvxxWxxwxwhxfihhhiwwwfxxwxyuiYiiijhxxwwvvihHiiwygvyxwxxxywwWvfwwyyXyyjYiiijiwgxvxghxfxxwxxuyvxgyxuxxxxgyxxxyvxxwggxxWxxwiIiiiixiXxYhYXhwgxxxyyhxywwwfwwxxxgxhhyiiihyyxyxxxxxwgxxiiYiixxWxxwyyiiiiihwxgvwxyXyyvwgwwwgvxyxyxwxxwhxxvwxwwwgxwwxxggyiXhxiYhhxixxhxWyyxyyiyyxwihyhuwwhgvxxwxxyYyyihxxgxwxyxyixiiiyyyyhxhhxXhwiXxxvzzZzzwgxwiywxxhxfjjzxyhyyyxyhxhhiyxxyXHI)HXxwxvxxgxxwxxxhxWwwiixYhhHYxxXYWv8gxxuhhfwgXXxwgxhWfvwHwGX9WHuwxxhXvwXxvwxxxwxgxwxwxhwhhXxiyyXwwwwxWhxxxwgxHY9XYwwwviivwvWyhwixyWIyhigvxGhxhXiuwHxhhxhXYxhhhuwHgghxxwgxxxwf8X8XXwwxxwxwwwwxwxwwwyyyxgwwxwxyxxhxxhhxxxxxxxwxwwwxxxzzxxxxxyyxxxxxxxxwxwxhwXvgxwyxhxxxixhhyhxxxwwwvwxvhvvwvvxyxyxxxxxxyyywwxiugxgxxxxyyyyyixxxxxxxxxxxxxxxyxiwhgvyxwXwixxxyxxxhxxxyiiyxxyxxywwwxgwxyyxxhixwwxxxxyxxxwwwxxxwxwxxxxwwwxhhxyxxxhixxxxxxxxxyyxxxwyyhwyvwgvhvWWwvyyywxwwwwxxxhxhxxxxxhhxxhxwxxwwwwwvwffgxwxhxhxhxxhxxyywwwwwwxwxwxwwwxvwwxvvghhvxxxxhxxhhhxwxwxwwwyxxxxxxxxxxwwxwwxxwxxxwwwwfwvgwwggwfiXyhxIyyyyyhwvxxhgiyyyYxywwiXxxgyhxixhxXyhwxyhhwhxxXwyyixyyjyyyixhhxxxhxYywxXhwhxxXwzzzzZixhiihzjjyyyxxywxwwwhxhxYwuxghhwxxxxxxxhxhxxxxxhhXXhxxxxxxxxwwwwxxyiiYiYixyyxxxxwxwvghixwxxxhxhxxxxxiyyiiiyxxxxxhXXvwfwhxxwwxxxwxiyhyxxhxyyyyyyyhvxxzhxxhxxxxxxxxxyyyyxxwwuyxggyyyyyyyyyxxxxxxyxwxxvxwwgwxhhxhyyxiyyiyiwxyxyhXXxhxxxxxwxwxxYiiYiYyyxyvwwggxgvyyiyyiyiyxjzzjzjxxxxxxXhxXxuyvxhxyyxxxxxxyxxxxyyyhvyhxihxxhxxxxyxyxyxwwwxwwxxxxxxwfxhhyixxxhxxxxxyyyxxwwxxxwxwwwxwwwyxxxxwxvwiwxXwyxXwxxxxwxxxxigzzzzZyixxxxiIhiiIwhhxxxvwvhgxxgxwjjjjJxwixxixxxxxxwxYgixXyyyzzzzZxxxxxyy{{{{[yyyxyxxywwwhwwwxxgiYyhhiYyxwixixxxxwxxwxxxhxxwxwxxwwwxyxyxyxixyxxwxxxxxxhxyxxxyxixixiwwxxwwxwhxxxxxxxxyxxxxxxxxwxwxhxxvxyhhixxxxxhhxxhxxhhhxxyxxvwxhhxwxxxxhhxxxxxwwwwwxwwxxxxxxyxxhiXXhyyxxxhxhxxxxxxxxxxyxxxxxxxxxxxhwghhwhxwxgwivxgxwywwwxyxxxwxxxxwyyyxxxxxwxwxgxvyyyyyyyyhxhxxxiyyxxxyxxwxwxxwwxxxxwxxxyyxxxyyxxxxxxwvxxxgwwuyhwwhvhixxxyyyyyixxxyvvyhxxxvwwxxxxxyxxhxxxxxyxxxvhwXhwxuxxxxxyhxihxixxxyyyyywyxxxwwfhwwgvwggwfhXywhXxhhxxxhxhzzzzZiwxxhYwjxxxgihixxxXxxxiyyyhwyxiXwziihwvhxxgyyyXXyhyHyyiyyyYwhwwhXhyyyzjjxhihiwywyxxwxgyxxyhhxhxXuwhvvXvghwuyyxxxxxhxihxixxyyxxxxxyxhXhhhxyiiiiiYyxxyxiYxihxwixhixhxyiyxwxxYyYYiiyxxxyixXHhhxxwyxxgyxxxyxxxhxhxwxwyxwwwxxxhhxxxxixxwhxwwwwxhxxxhxhxxxyxxxxyyxxyxxyhyyxhxxxxxxxxwxwwxxxxxyxxxxyxyxixyyxyyyxyihhXhwwvWXyhxxhhhxwxwwwxxxxxhhxxxxxxhxXXhxxyxxxxYiiYYYiyxyygwvxXXxvwxxwxxwxxxhxxhhhxxhxixxxiyyiiiyxxxyxyyyXhHHxgvvvvvyyyyyxxxxwwxyxyhyxxwhwxwvxyxxyyyzzyyyivhwxwxwhyxhyhxxyyxyxxxxxxxxxyyyyxxxxxyyyygwxxwiXxYxHyyyxiyyyYwhxhxhwwwhYwxwhhwxwxghiIihiIhwhwxwhxyyyjjjjJyyyyyhXxiyIvhxhxvxwiyyyYwgxxhXhwxwwhygxwZzzzZwxwhxyhwwYYyyYy9xhvhfxwyyxyxxxxyyxyyzyxxxwwxyyxxwxwxwxyyyhxxxwwxwwwhxxhxxxyyyyxxxyxxxwwxxwwwvxxvxgwvvgxwwxwwywwwxxyyyyyyyyygxxgwxyyxxwwxxxyxxhyhxyhxxxxxwxwxwwwxxyyyyxxxxxxxwwxxxxwgwxvxghxwxxyxwwyyyyixyxxhxzzzyyxyywxgwvyyyzyyxxhxhyxxyxxvhxxWwxxxhxyiyiyyxxyxxxxxxgwxyxywxzxxxxxxxwwxxxxxyyhxxxwwwwxxyxwwxwwwhhxxwxxxxwwxxxxxxyyyyyyxhxyyyxhxwxgwhxXxxxxxxxxyixyhxxxxhxxxxxwxgwxvxxxxhxxxhwwxxwwwwxywxxxyyyhxhxhwwwwwxxwzxxxxhxxxhxxxxxxxxxxxxhxgwhhxvhhxxxiXyxxwxxyyiyyxxgwgvYyyiiYYxxwxxwxvwwxjjjjjxvxgwvihxxxhXwwvxwyyiyyyxxwvgxxvzzZzzyyxxwggxvixiyyiIxhyhxxuYwxhxxfxxWxxyyYyyhxhxyYiyyhyyivhXxxvyvhhxiuiiixxwxvyyhxyihxXhhXyxxyzzjzzyxyhyyzjjyyxwwhwgxvwxwxgihxiyhxyXxhyxxhWxxxwxwxzzZzzwxwxwfxxyxxgxxwiyyiiiXxxyxyiwxxwwfxxjjJjjxxgxwyyhhyxxxWyxyxizzZzzwhwwiyyy{{[{{xwxwxxwyiwwhyxixiiiiHhhxhXiXyyxyyzzjzzivxhhyuwhiwgxxxwxxvyYyiyhxxWxxxxyyhiiixyyxhyxhxuYxvxXhivyyYyyxwwwghvyxhyyjjzwxxhxfxyyhxhyiyxhxXihiyyx{kyxwxyyxZzizZyyxyyyxwyxw{{{{{[yyxihiyyyxw{kxxxȌȌlxxxxjzYzjxxwxwwxxyxyxxwxwxyyyyxwgwvxxxxxxhxyyyyxyyxxywxxxwyxwxwhvvgxxxxwwxxyyyyxxxyyxxwxvxwwwvwwvvwwwgxwgwwwgwuxxxxxyhyxxxxxhiivxwfwwvvfwxxxxwwgxvxyxyywwxwxwxwwwwvwhvwwwwwwwwxxxwxxxxyyxxxxwxxxxxxxxxxxvwfxwwwwwxwxxywxixxyxhxyxhxxxYxxyyxhxxixhxixwxwhxxvxwwxxwxxxxyxxhxxwxhvwxwwwxwxwxhyixxxxwxhvwwxyiyyyyyxxxwhvxxxxxyxyxxxxxxhwvwxxwwxxxwwwxiyiiyiixxxxxxhHhhhwxwxxwwwuhvwxhwvwwWxwguhihxxyxxhxxxxxxxYyYYyyywwwhxvhXxxXhxwXxhhwxwxwwwxxxyyyiyiihyyfwvgwxwghhWWvxwvexxxxxwwxxgvXwXhWxvxhghxxwxxxwwxwxuxXuxXwwWxhxhxhygHhfuVvyfwgfwgwwggwwwXxvWhhvxwxxxxxwxXgxgxxhxhxIHhhxxgwXwwwVvxvxhfxgwwwghxhvxwxxyxxhhvghvghfxvgwiwwgwvxyxxxxxxxxXXXhuxxfXwxwvVguxwwggvxyhxhxxwhwwwxwxwwwwxxhxwxwwwxwwxhxvxwxwwxXxwwyyyYyYyxxxyhyiwwxgwvvvxhhhhxxxxxxxxhhxxxxxxxxiiiiiwwhggvxxxXxwwuxwxgxyyxyyiyyyyyzhxwhhxxxxxxxxxxxxyxywwwwyxxxgfzyyyxxyyyyxxxxxxxxwvwxwgwxvxwxwwxvwwvwxhxxixxxxxxhxxvwwvxxxvyxwxwwxxxwwwwvwgwviyxixyxwxxwywguhwwwgxyxyxyxyxwxxxxxxxxxxxwvwxgwyyxhhxxhyxyyyiyywxxxxwwxwyWxhxhhhhxywxxwhxxxxwhxxhxhxxxxxyyyYyyyhihiHxhxxxxxhihiyYyyYyYyxwwxwxWyxxwxxxiiyiyyxyXxxhhxxhhhxxxxxwwXxxxxwhhvHxguWyXhhXxwwwwxwgxgwxxghfxxxxywxwwwwwyxhhxhXgHyfvVxxhhgvhgvhhxxfghIhhHwhiwwxgxvxwXgxWxwwvgxwhxWwYiwx8iWWxxxxhiwxxWwxwxxxxxxwywyxxwxgxxxxyYXxXwxxwgwxxggwiiwIxgvGhwxyvxxixxxxxxxixxxxxxxxxxxyxxywxwxwxxxxxxhxxxxwhwwxxwwwwwxyixxxxywxxvxwxxxYiixghwxxxxxxxhyhhxxxxyvwvhwxhhvxhxhhwwwxhyhhxxyyixyyyyxyvwwfggxgwyxxxxxxxxhwxxwwxwwxxwxvxWwxxuxxxxvhwxxhwxxxxxhxwwxxyhiiiiyyxxxyyyyyywwhwhwwvhhxuXwxxXxwxwxwwwxhxxxxxhxhzzzwwwxxvwxyyyxxyhxxxyxwxwwwxxyyxxxxwxxwxxyxxxxyxxxxwgxwwwxxxxxxwyiyyxxyxwxwhXxxhwwggwwwxwxxgwxxxxxxxyxxwxxyxwwxxxxixxxxwwwvxxxxxxxxwwhwvgWhvxxxxxxxxhhyyyyiiyyvhwvxwwwgwwhxwXxhwwWwwwWxxghgvxxxxxxyxwxiXXhhwwxwywwxwwigwwhggvhxvXywWxxxhxhhxxxxxwvwgxwWxgwxwyxxhwwvwvwgfyggwwfxxxxwxXggxWxwwVxxyxxxgxhxxwXXiXXwxxxxwyiwwhhhhhhwwgxhxhwxwxwxxxixwHigvGuwwvwvwwwxxyxxxxwwwwxwyywxxxvxwwvwhxxxxxxyxwxwxxxxyvghwvwwwwwwwhxxxxwwvgxgvfwvyhyywwxwxxxxxxxxwvwvxwywxivhxhxhwxxxwwwvvhxxxwxwxxywxxxgvxgwxxwwwxwwwhxxxxxxxxwhiwxwwwwxwxxxxhxxwxwxxxxxwwhwwxxwwxxhxxwhxwyXvxxwwxxxwxwwwxxxywwwxvhghhwwxggxxxxxxxxxxxxgxwgwwwwfyyyyywwhwwxhvxxxhxhihxyxxwxxwwxyyxyxxwxxxxxwvwvxvxxxxwxxyyxyhxxhxhhvxhxvyxxiyhxxhxxwwxWvhhxuxxhxwwwwwxxxhhxwwhwxWxwyxyxxixyxxxhxxyyxxhwwgwxxxyyyzyyxhyyyyhwfwfwwwwxwxxxhxxiyxixxixyyyyyxxxxxyyyxhwxxgwhxvHXgvWxxxxxxxxxyihhxgwwWwxhhgwhhhxhwxgxhxhwxivXhwWwxwXvXwhxxxxyixyiwwiigxxxxhxhiyiyiwxuwWwhxwvghhihhxiwXxwwwwxgxxggwxxgwXvhgWwwhXwhwhvxvxhfxgwwwgxxxxxxxxyhhhhfXwhwwVfhvwwhxwvGhxxxgxvhhwxvvfwwxwwxxgwixhxhHhhxwxwwwwuywWwfwVgxWggwugwvgggxvfvwvxxxxhvxggxwwxwwwXxXXwxwuuwvhxhhwgVwwXwhhwwxXxixxxxxXWXwxgxxvxxxxxxxxxhvhhxgvvvfvyxuhxwwvVwhxxhxwuWwwxwwwvgwwvwhwhxvWWxvwxyhyhxxihihyyxyxxxyyxgYxhywvHxywXXhhgxwgxwwwggxwhxixxYvwwxvgvWwxwhhhhxvhhXxgfWxxxxxhvwyvxxhiyiyxyxxyxxhihixxxxxhvhgvgfvxghhhhhwiwwvgixwvWghxxhXwwWxxhihxxxxxvxwhxigwvghwwvffwvxxxxxwwxxxvwgwugxxhhvWxxxxxxyyhvxgwXWxhxwhwxxvhXhhxwwyxwwxWivxhiivHxxwxxwxxhwxxixgwxhwgWwvxxxyyxwxwxxxwxwhgghhhhhxxxxfyxvXhgwwWfhvwxGhwwGxhhxxxxxyyygwxxhWhwXXhxgwwWwggxvhiXXxgYxXiwGgxvhhgxvvvwwxxhxxxwxxwwhxxhiXwxxyxxxwywxxxwgiuxiXyGxwgxxhwwwwvxwwwywyghhHHyxgxwhwgxhhxxxhhXXYxxxxxxxxWiuxxXy8hxhxhyyyxxxxzywwxxwwwwxxxxhxxxxxxxwgxwvxxwwwwwxxwxxhhxyxxxxhxxxhxXxxyxhyxxzxxxxhhxxxxxxxxxxxxxgxhhhxvwxwwgwyyyxxxxyyyywywwwwwwwwwxxixhxxxyyyyxxxxwwwxxwvwwwgwxxxiiyyyxxxxxxxxxxxwwgvvwxxwxwgwxxxxxxxxxyyyyyyyzwgwwwwxxXxxxxxyiixxxyxhxxxhhxxxxwwwxhhyyyhhyzzzyxxyxxxxxxwwvhgxxhwwxwhhxxxxyxyyxwwwwwwxxxxxwxwwyyyxxxwxwwxxhxzzwhxxhxyhxyxxxhyxxxxxxxxxxxxxxxxxxxxgwxhzzyyyiyyixwxwwwwwxxxxwgwxwvxxXhxxyyxyhyyywwxvgwxxxxxyyxyxxhxhxxyxixyxxzzwhghwxhxwhhwggxhxxhxxxxyxxxxhxxhyxxxxxxhhhxxwwwxxxxxxxxxxxhhxxxywwwwwxxxxxhhxwhhwggxxxxwyiiiiyxxxxxxxxxxxxxxxyiiyyYXxXwhgwwxxgWxxxwwgwwwwwivgfvfgxhxhxwxxxxxXXyXXvxxxxxhxwhixvXwgwgwhghvwwxwxxwgguxxxwxwxwxwxxxxwwwhxgWgvxxwxxhwuWhhxXhwxxwxywwwywwwhhhhhwxxwghixxxxwwxxxxxggvyvxyivGhhxhxhXwxxxwxggwxxxghihXXywxwwwwxxxghWhguugxxwvvwwwxgxhhgxvggwxhxhgvwxxwvvwxxgwwxhxhxXhXXwwwgwvxxxhhvwvfyhwghvxyxxwwwwxxxXxxhxhhYhyxyhhwxwwwwxxxggvxxwhfxxxggwxxxhxvgvhwXWwiiyixiXxxxhxwwwgwvwxwwxvfwxxgvwwxgwwffgwhwggWwvhYyhxXhxxvwWxuxwwxxwXvwwwxvgfgwwwhgwvwwwggvwwhggvxwwwwwxxxxhxhhxiihiXhxhXihxxhvwwhhXwuvxvxxWhugwwggwgwxwwgvwxwvwffxihXhYhwwwxwwWxwxwXwuxxvxhxghvxxxxhhhHhiYyYiYYxwgwxhvxxwWXvvxxwwfggwxvxvgvhvwwgwwgfgfvxwhvwWWwxwxxxxWwiiiiihIXXY9wxwxgxhwgXwghwveGxYxixYHwwxxxhxhhwxwgvfXxwhxhxxwWXWwGX8txhXhwwwXxXxhxixuHvwxwxxwgwxhhxhYwgxxwxxhXwhyXxYu8YHXI)yXxhxhxvHiYwxxwiXhhhwxwgigvgwwwxvwWyiyxxhXxxwvwxwgwvhgxxhhwixiwtHXXXY9iYyYiYYxxxvwgwxwwwwxhvwxvwggvxxxxxXXxxxxxxYiyYYYixxxhhxxxvggxhxggvhxxXhxxxhxvxxxggiiyYiYYvwwxxggxxxhhxxxxgwggvxxhXXxxxxxXxxxXjjjJjJjwhvyhyYvXwwwxvxxxgWvxwwwXWgvxxhXxxxxxwwxxxxvXghyhgtXxxxxxxhhxHHhhvggxhxvfgwgwwghwwwwxwxxwwgvxhhXXwhwXhhwtXxyxxvfxxhwxxywxwwwwxxxxwxwwwhxxyxxxwgwwxggwxxxXXhwixiwtHhhxXxXXwwxxggwxwwhvvxvxxWXvxwxwwvfwxxxgWYiiYiYiwwxxxwwwwxwwvfwhhxHHxwwwwwWxwhXxXhXhxxxvwXWvwwvwgwxyxxhXXxxxvwwgwwwwwwhwgxxxhxiiyIiIixYyXhhhywvwxvwxxwxfvvxfxxgvggxwfgxxxXXwwwwhgxiYxiyiYxxxXWhhxgwvxwxwwwwvwgwxwgvwxwvvwxvvxwgwyYyiiYihihHHwwvxxxWvvvwwgwxvhwvwWWwwwxxhvwxvxvxgWwwvxwwxwvxgwvxxxWwiIiiiiiXIXI)wxwyxxYuXhhhwwWyYvxwxyXxwvxxxwgwggghvxwxxxwwIIYJ)wxxxxwwxxviwxvwufXvxwiwhXwfWiIihyiIghxxXwvXyywxXxwwXXHHI)xvxxxxwxxgwyXwyghyXggghxvwwxxxxwgwiYyhhiYxxwxvxwwgwwhxhiIvGyivhgwvHY9Y:iYyYyiihhhHhwwwwwwffxxxvhxhvwvwwwgwuvwwwvwggwwwwwgvyiyhiiXxxwwvvwwxvwxggvwwgxWwuwwxxxxxxxWhxhhggwhhxiyXhxwwxvwxxwhuvwwvvxxwwwgwwwwggvxvwfxxxXxxxxWWiiiiiiiiiyYiYYxwhvwxhhgwwWXwxvxvxXWvvwgvxWwuxwwvxwxxwvxfvihXhYhxxxxihhHHhvgwxgwxwwgvwhwvxgffxwwvxwxwgwxwxWXwYhxXXXhxxxhvxywxXguwwvxxwxgvfxxxiwhgvwxwhgwvwxwxwhwgxxxWWiyIiIiwwgxxwXfuXxhhHhxxxxxvhxwgxwxxwhvwfvgxyxxhgwgywwgvwffgvxfxxheWxxxwwwwwgxgWguxwwgXigvhwhXWwxxwwwggWwvxhVwhxwwwxwwwxxxwhiXxwxxXwwuuWxxxxxwggxvhvhhxgvvvfxXXXhuxxxxwxghwhhfwXhXxXhXhghwwgWwvxxxvxvwwggvwhwhvgwxwwwwwwggwwwxwwxhgghgWuugwwwgvwffgxwwvwwgwuvvhwwgwwxfgfwvxwwhxwxfvfxhhxhhhhwwghvhWgwwvxvxWWuxxwxxxwwxxvwwwxgWwwwwwgvggffwvhvxwvhvwxvwxwwxgwvxxxwXhhXhxXHHI)yixXxWu8xxhwhwxwWyXwyxwyXxXxhhYvGhhhwwwghxhhuWwWXGX8txgwwwxxhXxxxvwxxxxgwiXxXxhvGhxxYxhXwgwveGxwxwgHYHY8xxwxxxhyXyihHwhhwXhwfVxwxxvxwwgwxiyhxyXwiwwvgixwvWiiwIxgvGgxxhfXX8X8hhxhhhhxwwwwghxxvxvxXguvxwxwwwvwgxwwgxxxggiiiYYYixxxwvxxwgxwwyhxxXhwxwwwwxhxhhhXvxxxggvvyxxWhuvwwvxwxwxvvvxhhHXwxxxvvvxxxhhiyyiiiixhxYihhwwxxXWwxxxgWwwwwffgwxggvxxwwwwwxgwhWxuyXyiiiYwwxvxhwwxfvfwhwgwhWgwgwwggwwwgxwgvxxxhhxxxxvxggwxixiXyhxwxxxwwwwwwxxxguvvwxxwxfwfwwwxvvvxxgvxxxgwvxxxhhwxxxhhhYyhhhiXhxXXYhxhhggwxxxxxxihhXXxwxwvfwxxxhxvxxxgYiyYYYixxxXgxxxhxxxggwhhxHHxxxWXxxhYhxhXhhhhxgwvxvvwxWWuxxwxxxwwxxxgwvxhhHXxxxwxvvvxxxhhwxIyyiIiYxwvxgXwwwugyxyhxxxxhwvxhhxhhihhxwwxgxwgwvwwxvxXghvxhhwXxxxwxggvxyiyxwhwwhyxxxxxwxuxhhvWxwgxwhwxWgvxxihhxhhhgxwxxwhvwfvgwgxwxXiwhwhvwxWWvxxxyxxhxxwhfxvhxgwXIXHX9xxwxgwxwxxwwyXyXyhHhxwXwyfvgWwhxuxhgvfXhhgxxWwufGIIYI*ggvxXwufGxwxxxxhxxwwxhyIiihiIxwwxxwwxwwxgxhHYXY9vxwxvyhwveXYxhyiHXhhwxgvgVxxhfhivfVWyYyYyY9ixvhhgvfVWxxxxxwxxww9YYY9hxvhxwvWxxwxvwxWhxwxhhxxxwwwxgxxgwvxxxxyfhxveWvxxwwwwwwgvhhxXhxxxxwxwxxxwxxxxhhHhyiuxYxgvXvxvwwwwgguxhxxhwwwxwwwgxgvhhvvvfwghwvxxxxxwwxxxXXyxviwvGxxvhxxwvWxhhXXfygwwwgwwffgvwvhxwxxxxxwwxxxxhhiwhwwXxxxwxhwgwxxWgvhhihhwgxwixgwgwwhhgvvxxwwvwxgWvxxgwWxwfwXxxwwxwxwyxwyxxwxwwwwxxxwwwxxgxyxxxxXXXhuwxxwxggvyivhgwvHhhvhxWwvXwxwgwxgWgvxxxxxhhwxxhXwwggWguxxyxhwxwwWXhxvygvXxxxxyxfxwxxwhwwfvgwxxgYhwxxxxggvyxyhWxwwxwhwuwgyxixxhihxhhhxxywxwxgihhhhhhwxxwgwxxggwxxxxhxghwxgfuXxhVhwgwVuhxxwwwwxxxxgwgxhxwggxhvghxvfgXXyXXvfwwwywgwgfvfxXfixfgvXvhgwhWXxxwxxwwwxxxyxwhwwhgwxxxxxxxxxwwxgexxwwgWhhxHHvwvwihWxwxxXxwuuWwxhvhvxWWvwhwwxYhfxwxxwhwwfvgxxxxyxhxxhhfxvxwguXwgwxghhxxxxhwxxwwwxxxxxwwwwwwxxiixxyxxxxxhxxxxxyxxxxxxxxhwgwxghhxxxxhxxxiiyxxxxXXIIYIYxwxwvwwvxhhxuWyhwxyiuXxvwxwwwviyyxvvGwxwwZIIIZxxuhhWwhxxyywWvwxwxwwvixxiiiYwxwwvxwxvxhwvVYIYIIyhxyxwwWihwyxyuXvghxxvxvwvwVyyhiiyIwxvxwwwvgvyvxyivGZ:Z:ZYIYIIxvxxxiGhwvxuwuvFyhyxyHxwvwwwwvvggxxxxwhwgwwwwHwXYXHswxxwxghxyxxyxw7wwyvgivwvWxXxyyyXgxwxhWyvxhxxGYXIYIxwgwxxxygxxiyuXgwfwwxxwwwvxhxYxwxxwxwxgxvxXvVyxviwvGXXXY9XYIYIxyvhwxvwuVwwwwxixxyHhvfhiwfvUwxxwwxuvhxvuFYJIJYwwwwxgwwxxxihvhfwfvUyyyyyy9xxuhvwvuFxxwwxxIYIYXxxwxwxgyixxxHwxxvXxwfVxxwxwxixiyyiIvyxuhxwwvVxxfXwxwvVxxwwYY9YYIYIXYxxwwxxxxxhxgwwygxixyuXivgwywvvwWwxiyvvGhxxgwWwHXwwYXHswvwuxhuvFxwxwxxgxwvwwwwvyXxyyxXwwwwxghxxwwwxwwvIIYIYwxxxyy7hyyxyHXxxvxwvgVxxxhyvGhxxYixxxxvGgfwgxgxv9YXXXYiyYYZxxhxhhgvhxihhihihwhxxhhhwXXxxxhxihhZZzZZZhhixhhwgxhgvxhwxhhhhwZzizZhhixhxxwhhghvZiyYYYgwhxghvihiXxXYyhxgwhhxvjzYzjxgxhhhxvyYXxXxxxXXJjjJJJ ================================================ FILE: examples/games/.Tables/FlipChce.ptb ================================================ EETDUEUUECDDEUUUDTUED4CDEU423D3DDC4CD4DDCCDDEUUEETUECDCEDD3DDD#3DDED4C4BT$C42C42CDUUUUSDTDUUDDTU5CDDCDDDUUDDTUETETUUEDDUU3D#UUUU5TESU%C43TE33SSDEDUUDDTU5D4DTDDD3TD2D#EDDD$C4CD2##C4C4CUUUDDUU3D#UUUU5TESU%C43TE33SETUUDD3TECD44D43DUU3DDDUD33CDCD333pvwwwwwgvfwwwwwwvvgwvwwwvvgvvwwwfwwwwgfgwvwwvwwwvvwvgvvgfwvVegwwfwvfgwwvfwvfgfwvwwwwwwwwwffvwefwggvwwwwfwwwwwwxwwwwwfgvvwwwwvwxgwefwuwwewwwwwwvwffwwufvwwwwgvwggvwfffwefwfffUvufvfwwvwwwxggvvvwwwuwwwwufvwwVwwwwwgwvwwwwwfgwgvwXfvwwwWvWgfgvgugxgwwvxhgwvvfwwvggwggufgwwvgfgVvggfuvvvfVwvvfxvvgwwwwvfwggfgVvffFfwgwfffugggVufeeffwxhgwwvwwwgfggwfgwwgfwwgvvwugxxgwggvvfVwxwwwwfvgwgUfvfvWgwvvvwvwgfgwwegfggwVgvwfUggfgvfUfffgFfvVvfgvxgwggwwVVfhgwwwfvgwwVvvfvgWwgvvVgvgwgfuggvfvvvgvvXwuvWvfvfvuvvvgwggggewwvffwgvefvgfvVfwfgVvfffwfgggvwwfwwgvvvvvVwVfgVfFuffwfffewfVVefeefvvwfgfvgwwegvwfegwwgvxwwfwwwwvwwgxfwwgfVvwwwgwvwwVffgvvgvgxgvwwwfgvwgvgvffgegvgeUvegfwVfffgEfVVefgfwghfvwfVVvwwwgvvvwVefgvvWuhwvwfWffwfvgfgggfgwgVvvgwwfwfwvfvUgxxxfwxxgwvgfxwvgvwwgvvggwfgfvVvffVvfwfvgvvgewwvffvggfuvwffvVgeEfVwgvgfeefffUVfeffvvxxvvwfwgwgfwwwwfvwwfwwgvwwwwvxgwffwvVVfxvwwwvfwvgfUvvfWwufffwgwgewvggevgvgegffVeegfgvgfUfeWfFefVfgxwwvgwvVffxwwwwvfwvgfVvvggwgvwvfgwgvfwffVgfggwwgfwgwuWvVfvfvgvwvwgggwfvwwgwgggvvwvwvffWfgggevvvWfvgwfvwwvggwgfvuvgfgWvffFfvggvffeewgvUfvevfggggwvvwvwfggwggewggvxwwfvwwhwwwggwwfVVgwwwwfvggwVfwfvgWhwwvwvvfgwwggvwgwVfwvfWevfgfvwVffgfFffVegfggggwwfWfgwwwwfvwwfVewfvWghwwvvfgwgwefgfWgvvvvvVvWxvuvfwfvufwgwwwgxwwffwwwwwwwvgfugwwwwfwfwwfvwwgwwwwffwwvwwwwwfvugfvfwffgUfwwwgvgfuwwgvvfvugvxxwwvwwwwvfwvwwvvvwfwwwwgvwwwwwwwwwwwvwfVxwxwwxwfwggvvwwuguvwwvvwgwvwgwfvwgfwwwwfgwfwgfgvfwvVeggvvgvwwvwwwwgfWxvwwwwwuggvvwvWvwwwwfVwwvwwgfWwfwwwggwwwwVwvgwfwewwwxwxwwwxwggwwwxwxwwwwwxwxwxxwwwxwvvwwxwwwgwwwwwggwwwwwwwvvwxwwwwwwgvxxwwwwwxwwxwvvxwwwwwwwxwgvxwxwxwwwgvwwwxwwwwwwwwwwgvwwxwggvwxwxwwwggwwwxwwgvwwwwxwxwvvwwwwxggxxwfxfwgwwwwxwwwwvwwwwwfgvvggwwgffevwfVefVVvevvwvwwgwwggguvwwwgfeeuVgwwggVwfvfUgVffveUVfwwwwwwvxgwgvwgWvvwwvvwwgvwggvvwwwvfvvfggwwxgwwwgfgfvgvfVfvgwvwvwgvgfWvvwwwfeVffUfwfvgfffvgeVeeVfUFexwvfvvfgxwwxgwwwwfgfvgwfVfwwwvvfwwevefvfVgefgwvwwffgffeVvdfdfvvfwfwwwwggvvwgwwgfgvvevvwwVVeewgfUVUVUfeggvfgwwwgegvvvwgffEuTWVwwfeWfffeGuudefVVVvwwwgvgvwvwfwegevuggvvxwwfgfgfvvwwggVvUggwwvgvwvfWuvufvfVggwwvgwwfwvgewvfwwVVEeEfVvfvffefvUVdedUefEVvwwggVvUggwwwvgvwwfWuvufvfVfwwVvfwgWvUVWVeffefvVgWgfffeVVVVtfcfggfvwgwwwvwfwwvfvgguegegwwgeeUvfwVVUVeeVuvwfwwggwgwvvgewffUVeUFeFvwgfvffUVdefdVVUFuwwwwvvwwgwggfgfewvvvfwwggfgvfgvxwwfgufWvWwhwvvwVgefwefgfWfvvwwwgggfgufxfgvgeftVFuWgwWgeffFWtUvUffUVfwwwfgufWvWwwgwvwwVgufwefgfVvvwvfWvWuVVuVVeVvTvVgwgffffeffUfefcvwwxwgwfwvwwgwwvwvwwwghwwwvwwxfwvwgwxvwwwwggwfwwwwgwvwgvegvgwxxvwvwwggwwwgvwghwvxwwwxxgwfvfgvwxvggfwfvfwvwxxwwwgvgwwwwwwwwwvfwvwVuwwxwwwwwwwwwfwwgxwwwgvvfgvwwwfgvxvvgfvfvwfuwwwvvgvvfwwwwvwwvwvvgwgVufguwwgwfgwgwwfgfexwvwgvvgfxwhwwwfwfwgwwxgwwwwfwwvwvwvwwfegwwgffUvfwfefefveuwwfwwgvvwfvwfuvgfeVfefVUgwgfvgfffvgVeeeeVtwxwwwwwwwwvwfwwfvwwfwwwvvvwwfvwwfggfwffxwxvwwwwvfwffvfffuvwwwvwwvwvvwVvwvgVfWefefwwwefgfweuwVVvefewwfggvwffxxwvwwwwvvxffvvvfuwwwvwwggVgfVgVVfFggwwfvffffvVffVfFvwwwwwwwvgvwxwwwfgvwwwvvwvhvgxwwfggwvfxugfggvwfgwwwgwvwgVvfgvwvwfgfvvfvwffvWuvggxgxvgwwwgwfgVwgvxuWvhfwvvfwwgxwvwffffvwwwwgwwvfevgvvGtwggfgvwwgwwgfwgfxwwwwgfwvfvwfgVwguWffVuvWufVgwffgfvvwfgvvwgwwvgfwgfWuwgwxwfgwwwvvwffxfxwgVvweWxexxgwfgfvwwwwwxfwxgfwxwwvvWfwvvgwwwwfwwwhfgggfwwfwwwwwfvffgvvgvwwwfuWVfwwWfwuvwffvfwuuVfvxwwwwwwwwxfvggvwwggwhfxUugvfwwwwgvwVfgggwgwwvwgfvgfvttfwgwghggevggvwwwwwvfwgfffwvvggvfgfgugvvuufwvvvffgfvfgwfvgwwvwggvvvwufwwwxVfgWwvvfgwgggffgvwwghWXwxhghwwwwwwwggwwfvxwwwfgwvvwgwwgvxwwxvgwwgwwwwwwwwwfwvwwxwwwwxvvffwwwfwvvvffvvwvfWfgfwxvwwwwhwwwgwwgxfvgvhfwfgwvwxwwwgvvgwwwwwwwwwfwwgwuehwwvgwwgwwwfwwwwgvggwwwggwwgwwggugwfwvvhvwwwvgwvfwgwwwwgwvwvfwvvfueWvwwgvwxhwwffgwwwvfgwvgwghwxgXvgfggwfvwwwggvfvwggfwggvvffwwVWfVefVgeefffffgwfvwggVwwgevfgfwVdffVfvfUvgVefgVgfVTevfEuwwwwfffwwggVvgWuvfgwgvwggfvvwvfgwwwfegffffgewvVvgwggvfUfeWUufvgwfgWevwWfvVwgvUUvVeufWTffFefffffVEefVTfwwwfewgffggewwWvvgfgvfUfvWUffvxwfgwgvffVfgffUVvfgfffweffgfcUUevvfwvwwwwvvgvwwgfWwvvfevvvfueVvffVeefefffvvfvwwffgwvvvfwffVfdvffVgfWwfufeeVVfFefueEwwwwfwfwwwwUffvuffvvgwgwgffwvgvvwwvffuwggfvfgwwufvegfvVuvvUVfgfvwwvfVwvuvewgeUUugVvevffffdfeTVVfVdfeTVwvfffuwgffvwgvveevegfvVewvUUfwvxgfgfvfffegggVUvffgfgfWeefgfSeefgwffgwgwgwgewwwgguvwevvwwvgfWvffffffefffvwgVwwwgwvvwewfwfvfVfffgVggefvfvUfUfFfevUVdwgwfwWfwwwgfvvfdfuwfwwvwwwfvwUwvwwwvfwwffghxvwwfVwffVvewVfuwffwwwWguvgUwuffgefwwWWfWgeffUvFfUgVfdfUfuwwwvfwwgffgwvvwfwVwffVvewfVuvfwwgvWvffVfgvgfVvfffeWvgfeffffSvevwxwwwwxwfgvwwwwwvwxwfwwgvwwwwwwvgwwgvwwwwvwxwwvwwwwwggwwwvvgwgvwgvwguxwwwwwgvwVuwvwfgefwwwgvgvvwvwwvwwxwwwwwwgwwwvgvwvwgvgvxguxwwwgvvvwfgvfwwwwgwgvvvwwgwwgegvwgfvgfgVdwwwxwfwxvwvwgvwwgVuwVuxfuwwwxwwwgffxgvwggwwfxwwwfhexwxfwwwgwgwwvwwvewvwwfwwwwVfvgvffugfeffffffffvgvVwvwwVvwwgVvgfffevffvVgUfffgVuVVdfvgfeEewwfwwffwvwwUvwgwUuwfwwfwwgwvwwUvwwwgfwwgffwegwwwVvfgefvwffVugufwvvgfvwgfFevwwVffgguegTffffFuUVevfgUfUvwwwgfwwvffxewwwwVfgefvxffUvgfwwwgfgffefwgVfegffffwgegVVfff5fVvwwfwwwwxvxwwwwfwgwxwxxwwwwwwfgwwwxhwwwgwwfwgwwgwwxwwwwvwwwwgvvvwgvggwvWxwwwxxxwwgvggwfggfwwwwvvggwwfwgwwwwwwwfxwvgwWugwvWuwgvfWwwgvwgvwgvUgVfwwfwwvwwggwgwwwwffwvgfvwVfeFwwwwxwwggwwggvwwwgwgvvWwgvwgvwwgfxwwwwvvgxVxwwgwvfxgvxxwwwwxgwwwwwwwxwwxwwwgwwfwwfwwwwwwvxwwvwwwgwwgfwwgvvgfwvvgvvWwxxwxwxwwwwwwwwxvfwwgwwwggwxwgwwwwwwwwwwwvvfwuvvvgxwxvwxwxwvvgfwwwwwwxvwwwvwggwwvvwwvgguwxwwwxwwwwwwwwwwwwgxvfvxvgwfvwhgfgwvwwghhwwwghhxwwwxwxwxxhvwwwxwwfwwvwwxxwxwwxwwwvwxxxxwxgwwwwwwwxvwwwwgwfgwwvvvfgwvvvvvWvwxxwxgggxwwgfwwwwxwwgwgfwggwwwwwwxwwwwwwwwwvwwwhvxwxxxxwwwwwwwwwwwwhwwwvwwvwwvvvggwgewgwwwxwwwvgwwwvvwwwewvghvgvvhgggvvgxfgwwvwhhwwwwwwhhwgwggfvwgvvgfVvvfwgwwgwgvgWvvVTEeUUffefUUVugfVfvvwgggfwgvvwfffeeeeefvfgfffffVdeUfVUDtxgwwfeVwvfwwfwfffvgeVvffwwvwffgvwwwvvvfvvfwwwwgwgwwgufVffVTugfVwffgwfvffgfgfvefeVeeVfffvffffvVeVFUVECugwvvvvfvvfwwwwgwwwggufVfWVTuwwvgvwfvfVVVUfUUUgvfwfefefeUVfUUTEuvffwgvwwwvwgvffffvwggWwewvgfvhgfgfevvWwvgwfggewefvgggvevgfwwwffgfvwgwwgffvgVvfgwgwvhwwvwwgVwfeevgwvgvwgvffvfvwgwwfvfffwwwgwgwvgwvwvvwfVVwwfgvgwwfffffgVfwfwfWvfwfVgVffvwvgfefVEvUfwwwfvgfvwwwfgfwwwwfwgvwfVvffgvgfwwggegfhVfgvgfvgvWfeXvFggfvgvfwgfvvvvgvgggwwwgWgVvfwwfuvugWggfgffgevffwgggvgwggWfvgwwwwgvfffggefgggwwwgvfeueVuVWfvfwvgwgvwggWgVfvwvwgvvgwwggffgwvwwwfvffwgvfWgWwgwfgwfufUvfVgWvWgwfVgVfeggvfwfvfVvfwfUgVfffwvgfVvfFueWgwwuuUugvvVgWgwwwggfffVvfggfvvvgwwufVVWfegfeffffgffhwvGvgvevfffgwvwwwwguegvfwfWfVvvgggwwvfgwfwfffgfggwvvgwggvWfWvwgggvfvffvvfgfWfWvgwvgVveUvTgvvfwwgvfWvVwefeVwfVwgwvwwvvgvgvfwxwwgwfwvvgwvgvggwwvgVvfVegvwvfgwgwvgvfwwggwvVfVvvvffefugwffvgEfVEvUfewvwgwUveugwvgvggvvvWVufVeVewwfwvwwgvgfhfuWvfgwfvhgfgvfwGwwfwfwvvvwvfgwwWvVfvggVfVfwffefvfWuVfffwfffffgvVvVeegfEVEfvfvvwfgefefuffUvUwgfffWteeeEefevvgvWgVfvgvUfUfgfeffevffwVgVfvfvwwggvVvgvewewewvWveguefvDUetFfGVvVvUUUuggevvVVfUvgufvTvTfgfefVeUVf5dfuwfgguVegfewewewvgvVguffvEevugvgvwwfgvfXVfgfffgvfgeeWVvVf7ffVefvvfvvvgwvgfgwwxwWgWgwgwvVvuwfgvfgfVfVgWefgvggggfVWVWwgwwwfvuvufwwgffgggvUgveffUfVWefvfgfgfwggGVGVffffffvggwggggffvwwwguuuuwwwVgWgwgvVguffvVegWfeVwvggWVVVgvgwwwffevuvvfVVfVgwefVfVfeFffFwwwvudutwfggVfVwgvVWvfVvUfgWfvfvvwggvgWffWfuvfvfgfggUvvef6fffffwwfwwwwvxwwwwwwffffwwvffwgfxgfwwffffggwgfwwwwwWfVfgwvwxwfvfwwwwffgvwwggvfewVewgvwwwwwwwwwwvgVevwwvwwgwwgfVefvvwxwfgfwwwwgvgvwwvgvvwgfvgfgfwfwgffffegwvwvgwfgfwvvvWeVuvgfgvfvwVUwguwwgwUfUwwwwgffvwwwXffwffvgvwfgfxwffgfghfvgfvvhvvwfgwfwwGwvwgxxxwwxxxwwvvxxxwxxxxxwwxgwgfxwwxwwwwwxxggxwxxgwwgwvwwxxwwxxwvxwwwwwxxwwwxwxxwwvxxwwgewwwxxwxwxxwwxwwxwgwwwxwwwwxxwwvfwgvwwwxwwwwwwwwxxvgwgggwwwwwwwvfvwVvvgwvgvgfwgfeUevUeVUvgVeVvvfvwfvwgwwfuvfWDgfewvUVwgEgUWffugVtufffVVfwwwwvwvwgvgvwvWvgwvfvfvgfwwgvfwgUggfwwegwgVwfgvfvwWuvgwwWffvwfwVvgvgwWufgVTfVUwwTffWUffVfUfvFdeVffGUvgUwgfwegghVwfgvfvwWuvgvwWfwVuVvefewvUWffwweffvUVffffcfUgwTvefvvvwwwwwgwwvwvvwwwvvvuvwwfffegfeUfwfeufwwwvhwvwwwwvvvvVWgfuwggWweWfWfuVwgfVfwffVVvwwwvwwvgvvfwgwuvvwwvvxwvfwwwvvvggxfvwhhgwvgwgfvgwxvfvwwwVgwwwvwwfwvwuvvvffgUvgWgVgefffUeffweeevfvEfggwfvxgggvfgwgfvfwxvfvwwwVfguvvfWfvwWffgwggefwWVfggffdfwwgdfffggwwwgwwwwwfvvfgwwgwfwugwgffUvefVffvgVguwfwvwgwwwvfweffuVewfVeVgffffVVuvwevufvfFuxwwwvwwwvvgwwvwewvwwfvwggwwwfwvgwfvwgfghggwgggwwfvwwgWvwwwvggwwwwfwfWguefvwfVfWWVgVVgvwwewffvWVvggvfvwgfghggwgfgvgfwvwwgVvvewggeVwwgfVwwgfdvvfegffgfdgwgfeffvwvxgwwwuxgfffgwggwwwwwxwvgvggwwfhwgggvwgvgfwwwxwvwwgVvwgvwfgvwfgfvVuwgwgfgfgvgvgvfwffggvwwwwgvguxWevfwgxfwwgffvwfvgvfwgvfwvVuxgggvggwwwvvxwfgWvwfwwgvwwfgxwwwwfgvufveVuwwfVevWvwfevffxgwggfwfVwvFtwwwfvwgwwwvgggwffwwfwfwwwwgfefwWVxwxVwgfwwggwwwgwwwvwfwgvwvwgwvgefgvgeVUvVUfUevgeVuvwfvgegvwwvvVegUeUevffVDfEeffeeuwgfVtffeUtwwwwfgwwgewfvgwfvvgfgfwfvwwvfvweffvwwwgUwUvfgvfvwwwfuwwffuvgwwgfwffwgwVfwTfVffwvWTwDuUVffuvwgUefffeuxevfvwwwgUwUvfgvfvhwfuwgvfuWegffVUgwfWUwgUgEgeVfVffff6wwffVfVvgwwgwfvxwggvwvwwwwwwwwwwwhwwwvfwwvwvwwgwvwwwvwwgugwgvwfvgwvvgwwgvwwwvwwvhgwgwxwwwgvwwwwwwgvxgfwfwffwgwvfvgwwwwwfwgggwfWewwwwfwgwvWwxwgxfvwfxwwgvwfvxxwwwvfvggwfvgvwwgfvgvfWwfwxwwxgwwwgfwwvWuwwgwwwwwhwvwfgVwwwvffwvgwwgfwwgfhvggwvwvwvhwwwwwwfwxwwwgwwwwwwwfxwvwwwwgwgwfwfvxwwwxvvwggwxwwgfvwffvwvvvwgvfwvWgvvhvgwwgvwfxwwwwwwgfwvfvhvgwwvgggwwgwwfwwwfvgguevwwvvwwvWwfwwvwvwwwwwwvwvvfwxxwwwfwugwvvgwwvgvwwfxvgfwwwwgwwgvwwuuvwwwvwwgxwwvfwwwgwwfgvgxxvggvWhghhggwggwgxxvwvggxfwwggvvfvwwvvvwwwwgvgwvvfwvgvvgvgguvwwwwvvwfWxwgvwVVvvfVgwuewwfvvwvuVfwwwvxgWvffwvvwwwvhwWffUwfvwwffggfgggggggfgwuefwwvvwwvgwwwwgwfvfwwwwgwvfgvwgggfggegfwuevwwfgggfgvvefxvwwwggvffgwwtdwgfgwwvgwwvVfvggvwhggwWggffwhgXgwwwwvwwwxxwwfxwwxwwwwwwwwwwgwwgwfhffvvgffvfwwwwxwwwwwwwwwvwwwwwwfwwgfvgwwgfefuvwwwffVeVxwwxwwwwwwwwwxvwwxwwxwwwxwwwgvwwwwwwwwwgvgvwwwwgvgffvxwwwwxwwwwwwgwwwvfwwvvwwwwgvWfVvwwffWefVevwwwvgwwwwwwwwwgvgvwwwwgvgffvwwffggfwwvwggvfUffffgvgwvfffvvfUffwwxxxxwwxwgvwxwfwwwfwwgwwgVufwfUvvwgwwwgvwwfwgwgVfgvgffwgvgUwfwffUwvwwfffwxxwwwwwgvwwfwwwgwxwgvwwwfwwwggfwwgvwwwwfwfwwvfwwvwgwwwwxwgvwwfwwwggUgwwWegwwwfwUwfefwvfwfVfwgfwwxgvwwwwffwwvfwgwwwgwwVuWugVfWugwwgfegvgvgffHwwgugffxwWvxwwwwwgvwwgvvwwggvgwwwgffvVeefgVVvvgwwwgvvwwggwwwgfggwvvvfgweWWffefVgwevgfvVgvwwwwwwgvvwxggwwwwwwvgvvgwggwwwwegwwvgggfgWgwvvggwfwwvvggwvwwgvvwggwvgheWgvwuvWfwfggVffvfgwfwfeffVwfgwwvvggwehgWwfwgggfwwfwgggeuevVfgueWwwUfguvveVfWGfwvuVfgvuuvvvffwwwwgvvggwugwvWwgvvvgvVffffwfffvggvvgwwwfwuwwvWwwvfuWffVweggVuFuWeuUeFwvwfuUWfwwwwfwgwWwfwvugggwgwwwgvwwhwwwgugwfWwvvwfvWvgffvWvwvffgvgwwwVwvwwuggwwVdWffFfugwguWuWUuVuWfvgUuffugugwfWwvvggvWvgffvWgwvffgvfwVwVUhVwugxWUgvvgweVXe6hfUfVWuggfhggwvwwwwvwwgguwwwVwvwgggffefffgvffvfwvfgvvwwgufwwVwfwgvUgffWufggeEvUgueuEvwvWueUgvwwwwvwwgWvwwwewwgwvwwwhwwfxwwwvewvgWvgwvvVwfgfvVwvggffwvfwgvWvwwvewgggeTfffFuwgwvUwUWvUvUgwfVvUevuvewvgWvwwfvVwfgfvVgvwgffwfWuWveWegvwhweXevwguVWVf8fffVXVwgeVwwwwwwwwwvvvwwggwwwwwwffvfeeegfVVgwvgvwwvvwwgghwvfggvwvvfggWWgVfvffgWwfuffeWfwwwgwwgvvvwwhggwwwwvvvvgwggwwwgggwwvvggWgggWwgvhgvgvwgvggwwwwvvvxwggwwwVWgvvwvugVgggfVffeggwgfvfffWWghwwvvggfggWgwvvggwgvwvvggveeuVgVfuuwWggVvuvfegVvgFwufgVuvuvuxwwxwwwwwwwfwwxgfwwwwgffwgvUwwwVewwvwwwwfwwgfwwwwgvwwwfwfgfWuWVfvVuwwfevgxwwwwfwwgfvwwwwwwwfwxgfwwwwgvwfgwwvgvggwwgvwwwvwwwwwxwwfwwxgfwggvWefwwUwwgegvgffvfvgvffvgvhvwxwfwwvvgvggwwgvwwwvwwgwUwfhffwUwwghffwwwUgefwwGwegVfwfwVxxwwwwvwwfvwwwvwwwxwwwwwwwwwwxwwvxwvvwwwfwwwhfwxgvwwwxwwffvwvwwxwfwwwwwwwwwwgvgvwwgxwwwgvwvwwfxxwwfwwwwfwvxwwfVewwgvwvwwxwwwwvggwxwfxwwxwwxxwwwhwfffgwgwfxwwwwfwwvgwwgvwgwvgeVwwwfgxwwxwxwwwwwwxwwxxwwxwwwxweVwwwwxwwwggewwgfgwfeggfvwvvfvwvggfVvETffeeVVUUeUewfewwwvwvffvwffeuffwvUVfffvfVefefWVFeffFEtwxvgwfewfvwfgffvffwVewwvvggffvfvwfvgggvfggwwvwWufvwgfWfwwGUevVewgvwgwffffvgUfVfffeVVffgfGeUefVeVfff6TtwfvggwwfggwwwwWffvwgfWfvwGUugfgvUfUwwfeUfwgUUvgeeeUffETfwfUUfVuWgwVgwxgvwwffevVwggvvgfvxfvwgfffefvxgvgWwwgwgfvffwfvwgefggvwvwwfwvfggevfvffvwvwfvgwwgvwfvgfvffgwfvVvwgvwfvffwfvwgvffgvwwwwwwfwfwfevfvwgvwwwffgxgggfuewwwugffgVvfwwwffgveffTuevfVfvgvUfvffgfxgwwwgwvwVevwvgwvvwewwVfvffegvgfvxxwgvgfFvvVVfhfwgvgvgeggewvevwwfvwgveuVVwfvgwgfwvfwgffevWfvfvfUfvggwuvWgwwgwggWwfuxwwgvWegfgVefgffuvfgWVWfvfVffWfeeWWvwvwfffffwvvggwvfffgWFwutwwgvwVVgVfVufWffvufwgWgvgfvteFWvwffffgVwfewwwvffVfVVFfVVfVfvugfFvWWweuwwwwwWfWggUvVfWfvvfwgWgfwfvfVWfvfVggwwvvfv6ffVegffffwffvuffVfvwfgwewVfVeTeFVvfvfggwvuvUvfffvffffgfuwVvffefVgvfvgffVgguggveffguWFeUeVeuTgfgfefgwfdgFgUUeuUgeggWfffugfevWfffvfveVgwewvefvvWugFuVugfvegwffuugWfVfeuVgvffWeUgVffgwveffftV5eFtVUeeffWfeveggwvwwufvugugFtVugfueWwfUdgwfwffgfwfVhuvwfffwf6gVVgeefegfVvVfvvvvwwwgwvwvfuvVwwfwwfvvwfwvgwfvfffwfggVvuggfefVgwfwvfffvfvvggvvvfgVWtVeVguVfgwgwffwwgwvgwgfvfwwvwwvwgvwgvwfwgggvwgUwgugwfwuwVwfgUvfgvUvvfWfevvggVeeefwufvefewVfwggvfvfweWuFeeVfFufvffuwfgvwwgwvwfwfgVvfgvVvwggwvfwgvVwewvfhfwwwvggvwGwfgfvgfxvvgvgwWfvuggwfvggwgefggvwwgwgvfvvWggVfvfgfvgfvvggwgfugWwwwgvvffwfvwwegffvggvUfggveUwwwWVfggvuvVgfUvWfwffggwgwvgffwgvwvggwUWvuewxvfggfWgvVfWgffwwwggvwgwgfegWwvvwffegwfvfgvgVwfVfvEVWfvVfvgfgWwffgvvwwfwggggWvVegWwefwggfWvevvfgefvfWVuwggfefvwFfhfvffgfvfuwfwffvxwwggwfwwfVwguwgwvvvwvhwfgffggfvgvvwxwwwffggvwgwwvwfvwfwwwwwfvfvVeggvVfwwwwgvwwwggfwffeffvggwvvwwvwUfgfvgggggVuwUwwwwwgefvffvgffwwwwgvwwwvUfwgvwwwwfggvwfvwggwvffVuUewWugfwvgvWvhgvwfwwwwgvgvfvvgggwwwvgvffvfhfvwfwffwxvfggwwGwfgwvhgvwgwfxxwwwxxxxggvvwwxxxxxxxxxxwvvwwxxwxxxxwwwxwwwwxggwxxxfguwwxxwwwwwwvxxxwwwwwxxxgfwwwgvwxxwxwwwwvgxwxxxxwwwxwgwxwwxwwwxxwwwwwxwwwxwwwwwwxwxwxxxwwvgwxwvxxfvgvwgwvwgvvfgvwwwwVewWfewVfeefeUffgvwvgwvvvvvwfwgfffwvffggwgUgUWdufUgeffevgwgvwwwwwvwwvfwwwgwvwgwvvgvfwwwvvffwwgwwwwgfhehefgUhvvvvvgwgfwwvwffvevvvggefVvgfffwwfeWdWufVTWfffvfffwvggwwwgwwwwfhegevgehvggvwwwxfUvUWffvfgwegvwwwvfggVWfeefgfefefXegwhvwwwwhfwwvvwgwgvhfwfeuWUfefefVfgfwvvgvwwgfggwwgfffvwffvggweWeWvfueWffeuedgwhvwfvwggfgfuwfgwvwvvgfwvwfwgwwgfwvwwwwvwwwehegvwvvhfwvvfuwxwwxgwvwvwgwwwUffvfgffwggTWTgfvfegeffevefgfvwwwggvwwweXehwvvfhvvfffugwgvVuVfggfggWVWvwwwffgfVWfefggfefeexfvgwgwggwwwgwwuvwwwgfvwWVvfffVfeffeveegxwwwgvvwwvwwgfffwwffgwgggUgdVgfgeewvUgegvwwxhfwwvwgwvgwvvvfgwwwwggvgwfwvvfgwwwvvwwwhgVgefgfgvegvewvwwfwwgwffvwgfwvffWvgvfefvfWVEWdUfVfuTfeTgvgwggwgwvvgwwggVhufwVgvewfewvgwfuUVvgfgvwVugwvvwfugfuVfegvgvvfegvgxgwxxwwffwwvxvwxxwwgxgwwwxxwwwvwwwgvwxvvwwwxwxvwxxwvfgvwwvwwwvwwwwwgwvxwewwxfwwwvwwvwwxwxwfwwgwxwxwwvfvgwxwwwgvvwvfwwwvghwwwxwwwwwwxwfvwffvwgwvvwfewwwfvgwhwwhwwvwwwwwvwwfvwxvgwvwwghwvwxxfxXwwgvwvfwfwvwwwxgxfvwwfwxggwvwvgwwgwwwwfvwVVgfffeVffVfVgegwwwwwWggwwvwgfffwwffwwfwVvEvvUuVfwVfvevfvwgvwwfwfgvwgfgwfgwwwgvgvwgggwvwvvvwggwwvweUfwVvfvwVvwfvwffwwwgvfwwgwggvffevggVfgfgUvDevEfUufEefUvwvvvvwwggwwwxfvUvwVvfvvVfvfvwwhfWUvWehfwgvvgewggwwgffWVfVvWfggfVggwvwxwwxwvvggxwxwwfwvxwxwwvwwxxwxwwhwvvgggwxwvxwwwwwgvgwgwgfwxwwhwwwwvwgwvfwhwgwxwvwwwvwwwxwggvwwwhwwgwvgvwwvwwwxwgvwwevwhgwwxwwwwwwwxwwvwwfvVvfgvgwvgvwwgwwvwwwwwfggwgxwvxwfwwwfwfwwxvxuwwgwfgwvgvwgwvvvwwwwwwwwxgwvgwgwwwwvwxwwgwwvwxwwwvwxwwfxwvxwgxwwgxwwxvvggvvgwwvhwwwgwvhVwvvgwhwwwvwwgwghwhwwwwvWgvwxgggvwffwwvwwvggwgVwfvggWwwwwwgxwwwwwwwfWfuvfVvvwvwvvwwvhwvxxwwgWwgwwvxwwvwhgwvwghwxxwvtwwwgfgwgvvwwwvhwwvwwwwwwwgvwfxwwxxwgwwwgvwwwxwwwvwwwwhvwvgwgxwwxwvvxxhgwgfxvwvwwwwvwwwvvgguvewgwfwwwwwvwvgwvwwwgxgwxxxgwgVwfwwwxwwvfhwfwgwgwwgwwwwvvwwwVvVewvgvgxwfgvfwwfxguwuwggwgfwwggxggvgwwvwvwxwwwghggxvdwvwgfwvwwwwwgwwwwvgwfwwVuwwggfvwWuuvfggffffffVfweffffvwffwggfvuwWdffgEvfeVuvfUvwgfVdffgfUggeufUvgwgwwgvwwgguvwguvwwgwwwfwgvgguuwwVwfvgvffewwwwfuvwwgffgvvWevwVvwwgVvvwgevwgUfVfVvffTgfffVevfvVfgVfvWTvxVwfvgffewwwwguvwwgfvfvgUvfvfvffffvfefffeSfwwfgwVgwevegwVfefvwfgfwvvgwgffwwwfuvvefdwwwvfffffffgufefffwWvuwwwffwvuueweWffUfdevegfffveewwfWuefdeVwvwgwWvfwwwVvwvvfuwgwwwwvwfwfvuuvhgvfweefvwwwwvvwwvffvvueVwgwvwwwevwvvvuvegWfVfedfufvffufvffegfufeTVwvggvfweefvwwwvvvvwwffvvvuUfgvfvfeffvffefffVcvwWggggWgefggWffufggvvwwwwwvfUvwwwfwfffveggvvWVVeffeefefffvvefvvwgfvvgewugfVUUeEefegegffefdvgveeefTVtwwwwgufvwwfvwvgevvgffvwgvvwvwfgwggfefvVevfwvwwwfvuwgfvvfwUVugvfvvwffwvgfwvVgfdVeVdfegffvgevegvefvefEeugwgefvVevfgvvvvVfuwgffvvgUUevgvVfvfvfefffvfUcwxfvfgfgeUgvgUffexxwxwwvwwvxwxwwfvxwwwwwxwxwxwgwwxwxwwwwwgwwwwvwfwxwxwwvwxwwxgwgvVvwxxwwwwwfwfwvwwfwwwwwxwwfwgvwwwwwwwwfxxwxwwxwwwwwwwgwwgwwxwwwwwvfxgggvfwwwwwgvgwwgwwgvgguwvgwwvwgUxwwwgvwxwwwwvvwgggvxwfhgfgxgfwwwfwvwwwwwgwvgwvgggfwwwwwvVfwvwffvvgwVefgwWweeeefUffffffvvfUwvffwvwggfUgEuUUffUffgvgfffVTvfVgefVdEuwwwgwgfvvwfvvvgwffwffvvwfwwgwvfgwVvVfgwegfwwggwvgefgffvfeUUewWfvvwfvwwggVffUvFeWfTffwffvwfVefvfVfgVUTfwVvVfgfegfwwwwwwfewggfvgfeUegfgefgfgvefffgfU6wwgfwfffVfgfUfVUwwwwxxwwwwxwwwwwxwwxwgvwwxwvvgfwwvwwwgwwxfwwwgvwwwgwgwegwxxwwwxxwwwwwvwvwwgvwwwgvwwwwwgwfgUwwwvgwwwwwwgvvhwwwwgwfwwgwxgfwwvfvwfwwwwwgfwwwwvwgfvWwwwwwwwwfxwwwwwwwwwxwvhwfwgfwffvwfxxxwvvwwgwwfvwvwwgvwwwwwvvxfwxgvgvfwxwxwwxwwxgwwgwwvwwfwgvWuffewwgwvwgwgfvgvwwgfvwwwfwgfuGfuxwwwxwwxwggvwwvwgwvgwvwwgvwwvwwvwwwwvWWgxxgwuvxvvwvvWgvgwwwwwxgwwvwwwvwgggggwxwwwvvwwwwwwfWwvvgwwwwhgwwgwwvwwwwxvvWwvfwwvXghwwhhhhhxwxwfwwwwvgwwwvwgwxwwxwwwwvwWewfwfwfevwfwwwgvwwwgwwwwvgvwfwfvvwvwwvwwvffwwwwwvevfwwgvvfvFewwwvwwgvxvwwwvwvwwvfvwwwwgwvwgwwwwwggwwgwwvvwwwvvWvwwwgvgwwvwwvvwgwgwggwwwgvwwwwwwvvWvwwgwwgwwWWxwwgwvvwxvvueWfwwwwhhgvhhhWwwxwwwwwfwgvwvwfwgwgfvxwwvvvwwfgVfewffffwggUfefgUUEUTfVUVuwvgwffVffgffgfffvfVvfVfUgffgfffVfUVfUUVT4twggfwgwwfgVfvwgvwfwvwwffVfewgfgvwwwggwwfgewwwwwvwfvffwfffUEewgwgggVffvfvwvfgfffffeVTfwgvffffeeUfUefEDuwwwgggwfgegwvwwwwfvffwfegUEuwwgvfwffgeVefVUUUvgfwgVfVVfUfUUUTEuwggwwwwwfvwwwwwwfUvwwfgfwgfwvgffffgvgvffffwgwfefvvggUwfvgvvgfwwvUffwvfvgvwWUvewwwvwgfwwwwwwffvwgwgfvwwvwfUwgfwfwgvgvwwffwvwwfvwwwffwfwwguwwwgwfVfvvgwfvgvgvvfewwfgwwwfgwwwgUvfwwfwVugwffxwwffwwwUfwwwffvfwgvwvvfghffgfGwwwvgfwggvgvwffhfgwwggvvfVfvffetwgwfvVFgfffguuvgfegfgfvfWfVVwfeufgwueVVfggwVVfefeffVfwwWffugWgfwfgfdEfvgvvwvvuwwxvvfWwwvwvvvvggfffgwffvgWvueveffWwwgWwvvWWwwwgeuVggfuewfgvvWWvwvwgfgufvUfegwggvvfWgwgggVeVWvVfgtuueefgwwWfvvvGWvvvgVuVggvfvfgfgwffeg6ffffvfgwwVVguveegvvfffgfgwvfwwegfuveggveVefwgghwvgfvwfggvvfvgfvgwvwvggvfgvwwgfVffewVfFegwvWffwvVfgvUvTVfwwwwfWgvvfWguefvvgwgwvgwwvgvgwfgxvggwfwffWvwwvgwwvvggwvVegvvVwvwvgwvufvwgguffgfwfeWfgvufwggffggvEvUgvwvgWwVwfVWvwgvggvvuVgweVeVegwgwvvhvgffhvGwwfgwvwwgfgvfguWvfwfwvvfwwffvggVugvgUfgUVfvfefgfwfvfffUvefffgffUuWegDgVUUfwgfEWfeffVVUfggEWfvvVeVgGceUffvwwfwVfgvgUvfefvvfvWvvfffefefvfvwVggvgufWewwwVgugwVfegWtdFVUfFegvVUvfTevfvfUfVvgfeWTfwwUgfvgefVgVdUVfvwVgWvWvfgewfwVgvggUfefWteVgvgvgvVgfgveXff7fefgvfwweWVegfgffffVvvgvfgfvgvwuvgwgvwVfvwffWuvwvfvfgfvufegfvwfvefvWugeVfvgWfWfvfvgWffvgfVvvfgefwfuTfWgggfwwwuvwwgvvVfwvvvwvwwgwgvffvvggWgwfvvfgewwwWgvvwffggwveeWfvwvvwggvvfVwvwgggfvfgVgUvwwggwwwffVgvvUfVWfgWwuevfhfvvgWwwwWUgvvvefggvffffgffvUgUfgGguvvvwgghfvvgWffefvfggfwwvvwfwexwwgwgefgguveuggvfggxfvgeVgwvwffwwgfvffVvfffWfvgvgfefvgVvggfufggwVTfVuwvwwffwfwgwgffwwvwffwfwfvgvfwwvwggvfwgwvgwxgwwvffvwweevWvgwVgggvvgfewvvfgVwfvwgffvwfvwvwffwwwfeggvggfwfwfwvvwwwgvwwgfvwwwfeffvwfffwfweghfgfvGwfgfwwhVVvVgefwfvfxxggwxgwwvxgwwwxxwxxxwwVvwwwwxxwwwwwxxxxvwwwwwxxwwggxwxwxgwwxxwwwwwxwwwwgwfvxwwxxxwwxxwxwwwwxgvvwwwwwwxwvvwxwwwwwgvgwxxwxxwxxxvghhUvwgfvwgvwgvwvgggvfhXfUVwfueVevgUvvgwwvgwgvgwgggvvgvwfwfwefVgwfffgwvfgeVdwvffvwgffgvwvwwfwvggvfgwwvgvwwfwwwwffwewfwxwwwxwgvguWfeggwvwgwvvggvvgwvwfgvTfewgfffgwvgVffewvffwffwewfwxwwwxwgvgugUvgwwfwvgvVwefwvfUwwgwfwwwVegwfUfeVgxwwwwwhvwfwwxgvwgfvwxvfwxvwwWwwwwxwffwgvfwvgfvwgvwfgwwwgfvgfwwgffwwwghvwwwwwWwgvwwgvffwfxwgwwgwwwgvgwwwwwwwwwgwwwwgvwwwvxwwfwwWwfwgffvwfffxwwgffwfgvgfwwwwwvwhvgwwwxwwwwwwwwwwwvggvgvwgfhvWxxfvhhvwggxwwgwwvvhxvxgvvwwwvvwxxffvwWgxwfffvvggfgvvvwWwwvwvhxgwwwhhgggfgvvgfwgwwwvwggfvuvvfffwwwgwvwxxwggwwvvgggggwvvxggfggvvvugfhfgwwwwwgXwwvgvwwgwvfwhhggwwWggfggfwvfugggwgfgggwfvwvwggfVghvvvvvvxVgwwwgvgggfwwwwwwuvvvfvhvuGwxgfhvvvvffxgwxvvfghvvvvwwwwwvhvfvfvWfVXvfgwwwxwvwwvwgwwgvwgwwfwfvgvghwgwvvWfvfveeWfvWgvfwvfVevTwgwgwvwxvUffwghvfgwgfwfwwvwgwggvfwfgvgwwgwfuhfvggvgvvgfegxvwwvfwvwghvghwgwfugfgVfVdguuggvgwfufVvewgwwvwuggwfwfehvvWwwVevgfegxvffgffehfwvGxgfgvfgxffXfwwvfgfgvfwwxwwwgggwgvvhvfgxwgwwwwwgwwwfvgwwwwwgwggfvugfVfxgggggVgfvguVgefVfwvgwwVWtfevggwgwwfggvvhwfwvgwgwgwfvgwgwwgvgvwfwgvWvfhewfwwwvhwVgffWffVgVfvvXvfvvfwffefgfWvegTwefwvgwweguVvvgvwvvfwwwgvfxevfgwvvhwfggvgwwwgvgfgfhwHwfhevghvfgfvwgwwVhfvgvgvvwwwwvwwxhgwgxvvffvfggggfvvWwwwwvfghxfgWwwvggffwvvgfwgfwgvfgwvufwwvfgwwwvfvwxxggWwwwwvvfgwggvvgwxfggvvvfxvgggwwwwwWgfvwfwwwvwwvwhxwghwvwgfgfvfwevggwwwvggwfvfgvgffgWvvvvvhffhWwwwfwggvgwwwwwwvuvvhfvuvxGgxfvvvvfhgvxgwvfhfwvvvvxxhxxwwwfwvwXwwwxxxwwfwvxgfvvXwwwwwwgwgXwwwxhvffxfxfwwgvhvvwgvffgggwgvwwfwwfwwwhwwwffwfwwgfvgwwxwwwwgwwxwvxwwwwwwwvgvwwwfwfwwwwwghwxgggffwgfhfvwgvhwwwgvgvgwwgfvwwwwvwwhwwwwwwxwwxwvgvwwgwvwfwfhvwwfxWxgvfwfhfwwwwwgxfvfwvxwxxxwwxxwxxxwwwxwwwwwwwxwwwxxwvwwwxwwxxxwwwwwwwwwwwxwgxfwwxwwvwxwwvwwwwwxwwwwxwwxwwwwxxwwwxwwwwxxwvhwvgwwgwxwwgwwwwxxwxwwwwvgwxxwxwwxwxxxghfvgwfwwggffvhvgwVuggegVwWfffUewvfvfdggfggwfvwgwgfeVgfffwVuVuVfwfwffvwgfEVtufUVvffgfvggwggwxwgwfefgfgggfvgfggVugfewwwfuVufwvwgwgwwxgVguvfffffggfggvgvgfetfWffwfVvFuegvvgfgvfgfUgevVffuewgwwgvUvegvgwwfvwgfVguvVeVvfwfvfvfgwgVgwgVvVffvfgwfwfwwgfVfUfuUgwfwwgwggvwgfvffwggfvxffWfvvfvevuVgWvwgvvggffffgvgwgfVvevefVwgvvfgvgUGvfuffufvwUgwwfWgwgxvgvefwgfwggvgggvffgwgwwvgffvgwwwwwwwxfWvwvfwvwwwvggvwwvffegggvwwVvVuffggvfvgwwweVfffvvfffwwwgwVuewgwwgwgwwwVGvveffuvwgfggggwgggwgWffffgggggwggwgewevXxugWwuggwvgwhwvufufwgfxvxffVgfvvfuvuVwVfwfggwwvvgefwfgfvfvVeVfffwwgwvwwgWufgffwfffhvwgfgfgwwwvgffwvgfgvfgwwvgffwgwwwwfufgwgwvwwwxwghvvgvvgvwwgfffgwgvgffggwwfguVtUWfggfgvfggWgvefvefvfvgwwvgteVvgwwgwwwwWWuvwvefvwvffgvgwggvgwvggefgvggvgwVvwfffuwwwxxxggwxwwwwwwxwxwwwwwxwwhwxxwhvvxfwfvgvgwggwvwwxwgwwxwxxwwwxwwwgwwwwwxxwwwwwxwwgwxxgvwxxfwwwgvfgxwwwwwwvwwwwwwwwgvxwwwwwxwwwwwwwWwxwwwwwgxwwwxxwxxxwwxwxwghvgfgvgvwgwfwfwWfgfgfgvwUffvUwVffFfgfwvgfwfvgfgFVfeggfvggeWevfefwfvffgwEvvfUffuVwgvwfggwggffWeWfwggggfvgfgWeVfvgwvwWfWfvgewwwvwwxwUvvgfffvffwwgfwgvgWffVgffwvWeFevWTvffffvwwUvgVfUVffwwwvgvWfvgewwffgvwwVuvfeeVufwgfgfwgfhvwgeefvUfgfwgffwfwwgVvfeWfvwwxwwgwxxgwxwxwwvwwwwwxxwwxwhwhgvxwxggwgwxwgwxhgvwwvwxwwwxvfvwwwhwwvxvxwwwxxwxxxwwwxxwgwxwxxwgxwwwwgwgwwwhxxwwvxxwwhwvwwhwgwgwwwwwwgvgwwfwwwxxxwwwgwwgwvwxwvwwwwgxwxgwwwwwwwwvwwwugwwwwwwwwvxwxwwxwwwwwwwwxwxxwwxwxwwwxxxxwwwwwwwxxwwwwhxgxfwxwgwgwwgwxwfwwwwgwwwwxwxvwvvwwvwwwfxwwxxwxxwgwwwxwwxxxwwwwwwwxxgwhhxxxxwwvwwwwfwvwwxxwggwwxwwfgfgwwgxwwxxwwwvwvwvwxxwvwvxwxxxxxwwwwwgwvwxwxwuwwgwwwwvwwwwxwwwwwwvwwwwwwhwxxwwxwwwwxxxxwwwwwhxvxxwxwfhwwwwwwwghhfwvvvwwxxgxwwxxxgwxwxxwxxwxxxwwwwvwxxwxwwwxwwwgxwxxxxgxxxfhgfwgwxfhhfwwvwwwxggwwwwwwwxxhwwwwwwwwwwxwuwwwwwwwwxxwxxxwvwgwwVvwxgwwgvvgfgefffvffwgffVVfeVfWDUUUeUuvgwvgvgUffgffvvfffeffVfUgUvfVeUdfVfeeffFEswwfvgvwffvgefggwgvggwvgwgUfffvfvgwwvvwwVvfgfwwgvVufgwfvwwVUtgvwvwwgeffgwgfffvffgfEeVVVffWfVuvgfUeffFTtwwwvvwwVvfgfwwgffuwgwfvwgVUtfvvgVeVwwUeffwfUUgvUfUffUETvwfUUefufgxfwwwwvffffefwfgwvgggwxvwgvfffvxfwfwgfvgvwgVuwwwwvwwffvgvWuwfvwfgUfgUuwgwgvfwvVwwwgwwWvgWfvwfwwvggwgfvgVugwwgvgveWugvwffxUfffffvwwwwwwwwfwgvvgfvwwwwvwgwfvgvgvvVfwfvfvgUvwwwwwwwfwwfwgvgvwfwfgfwvfvxwwwvwwfwgffgGwwgvgfvwvfhwgvvffhgvwvwxxgvfvwguvuvfvfgwfueVevegvgwffvwffwvfffVwvufvffwguvvefwvwvgvwfevwfvfufVgfgeVVVtvfgvgfvvVgwvfvwgvvvfewvvwvwvwgvwwffgwvwfwvvffguuvuffhWWeWgfuwvvfwwwggwwuvvefwvvwwvvgvfvfvvvUeggffggVuvwgfWwwwWVwfgwvfuvfewgfVggeuvwwgggwvWgffuffFgwvfUegffgevvvfVgffhfvgwwefvwffVgfgffwfVuEUUuGfVvugvgggwwfvVfffVufffgfvVvUVfuVggvuffeffffUvdUVevUeGdeSggfWvuffVfvgwvfEfUFVuVvgefvfgVwfWffeffffvfvugWwfweegveVvWeudvgffufwvWfwVfVVfvVvgvvvffvfWvVfUTgeefuWUedgwfWfvfvVfvvWgwfweUgvvVvWetdwwfgufwuFUgwfwf6gfwVVhffWfefwffgVVgeVfwggffegvvfxgfwwwggvvfvgwfwgwwwffwwgffvgfgwfwffwvVfefVegwVwVgfgvfwfefeEfVvVvVWtVewgfgggfWfvwwwggWvvWfwwfwgwwvwgvwgvwfwvwgvvwewWvgvVWfwUvfgUvgwugvvfWfufWfeVfgwewfwvfvfwgfWfVgeffveVuFewvfgwgwfwvwfgvgvVgfwfwfgVvwwvgwvwgwvwfgvwGwgwfhfgxfvggvVwefgfvgwwwvgvgwVvuvfefvfguUfeeufvwfgwfvvvvgfevfufvfvVVvffudgutfvvwffffVfgefeeVfvWfVffdVwwfvwfwuFfgvvwfveeweuvwfvwvwgwvfwvfffvvgfffWVwteuVgfvGVVfvUfwwwvvwvvWggwvewvuvvwwvwvgUwefvfgevWggffUfwggwgvvWVwgVweufegfuWWgWveewwwwwwvvWgvgvfff6vffgevgfffvfVgefWVffvwgwvvufwuVvwvgwwwffvffgfwgWfgffgvhggffefgvgwXwvfvwVwefxvwwgvvevfggvgVfVfVfgfuEevwhvvwvvfVuvgwhwweffegwggggwvwffvfvgvgvgwwfwgvwfgfggwgfvgvVfvwwwwwwwgfvwffwffwvgvgwwVvvwwfgfgfffgfgvVfgwhwwwgwwffwgwgfwgwgggfvwVVvxwwvgwvguVvffvgFwfxffwfwwfvfgVfheVgfwwxwfgexxwggwxwwVvxxwwwxxxxxxxxwxvgwvxwwwxxxwwwxvwxwwwwwwwgvwxgwxxwfvwxwwwwwwggwxxwwwggxxxwwxwxwwwxxxxwwxwwxwwxwwwxwxwxwwwwgvgxwxxwwxwhwhvwwwwxhvwfffwwwgvggwfvfwgffVeVfefgeVVgvfwgvgvvwwvgfwwgUfvgUeEVvVfVDgteVfgvffeefwgvwgwwgvgwvwvwwwwwwfvgvvwwvggwvgVwwgfvVgwgggUhuvfgwvwgvvgwwwgWvwwvwwwvwgggegwwVvVggfffTWuegffvwgveffwhfwwwfvVgvfggUguvggwwwgvfvwwfwvfgwfggwfWgvvUuVWgeWfefVggvweffggwwwxxfwgggwgwwvgvgvfhwwffVVVfVfgefeWfgvgvfvgwwfwvggvUVwfWfUVFgVgTGfeeVffvffudgwvgwwgWgwggwwwwgwwwwgfgwgwwvgvggfgwwgvffWgggeWfvfggwwwvvuwwwvgggwgwvwwwwvegvwWvfgWfffdWfufffvwveuufgwfgwggvegWwggeXvvvggwwvvvegwgvwfWgfvgggggwvVuegWVVgfefWWvvgevXvggwgfWfvgfvwgvwvggxWfVfVeVuWVffvfvwgwwvgxgwwwwWVWdgvvVffVeffWdfgffvvwfegegfwwgwgggwghgwwvvgwfwgvgvggwgwwgghuwwggwfvvgguvwfwwwwwevvxgwfvgwwvggggwwgWgevwuVVffffVguevffvfwgTvuggWhuwwffvgvwfhufwgvvwwwefvgwvfvwfvffgvgfvgfevUgvVVuffeVuVwweefwwwgwvwwvfwgUgggwfwwwwwgxwwxwvwwwwwwwvwvfwwewhhvvwvwwwgegxgwfvwxwwVevvwwwwwfvvwwwwwwvwxfwwwwwxwgxfwxwgwwwwwwvgxwwwhvevfwxvxwvgwfwwxwvwwgwvgxwwvgxfvwvwxxwwxfwvWxhgwxhvfvvwwuwwxxvvvxwwgGgwwvvwwfxwwwwwwgwwxhfvgwxfwxvhxgvxwwvwwgwxwfwwwWuwfVefUVfvgeUffgffufvfwvwggvvggvVVvgWTffVefvFevVefvwgfvfvffvwwgfgfggwwvwgwwwgfwfgwwwvfgwwwffwwXevgfffVvfVvgwwwwwfwwvgvvggwxvgwgggwUfgwWeffeffvUfgEefvwfwgVvwvfgwwhegwfvvwVvgVfwwwwwwgwwhfgwvgfgfwgffgffVgUfWUfWeVVggVwwfVfgwwwvwwvvvguvwggxvwwwwwvwwvwwwwwwwgwvvvgevgvwWgwwwwgvvggewgxhweVfgvwwwwwvgwwwwwwwwvvxvvwwgwwxwwxfwwhwgxwwwggwwfwhWwfgfgwgxwvwwwvwvwxwwgwwgwvvwwvvxhwfgwhwxxwwgwwwxwvwhgxVgwxgxxwvwwwtvwwwwvfwgwvwwwvwfhgfgwwwxvvwwwwvwxwfgvwvwgwvwxfwwxwwwvwwwxxwwwxVwfwwxgwwwwwvwwvfwggwwgvwfuwxwwvvvwwwwhvgwvwwxwwwxxwfwwwwwwxvwgvwwwwggwgwvvvhwwxwgwhxvgwvwwgwwxhgwwxfvwxwwwhwvwvwxxvwxwwgvvwxxxvwggvwwwxvwxgvwugwwgvxxwwfwwwwghwgvvwxhxvggwfvwwvwwwvuwfwxwfwwwgvwwwwgwwwwvvwfvwvgwwwgfwwwgwgwvxfwwvfwwwwwefwwxwwwxvvwvvwgwxwxwvxgwwxwxwvgwwvwxxgwwgfwvwwvvxwvwwwwgwwwfgvwvwwxwxgvxwwxwwvwwfwwwvwwwwfxgwgwwgxwwvfggwvwugvgwwxwwgwwwhxwvfwfwghvwxfxvhfxwwgwffffgfvwvwfvUhwgfgVfgWvfegggWuvwgffffvvwwgwfgVwVuvfVfvWEwffefgwfevwwffvvUgwgwwggfVvfvwwggvfwgffffwvwvwgvWUwgvwwfwwWFwggefwgguvvwwwvgwgWwgVvfwfwgfWegVvwwfgvfUvfgvvvffffvwwgfvgfxfwgfwvgVwwgvgwwgvwwxwwwwgwfWggffgwfgwfffvgwfgwuffgwegwwfvWwfwgwvfwwfVfgwgwfWfffwfeffeGVvfVwfggvggffWewggggWgeWVvevfgVgeFffVVegvuudgwgvffvfwvffgVFvwfgvWgfvfggfVegggvgfWwUggwvvWfgwfWvfUfegwvvegwgvgvvgwfWvwgwfgffdWVvvfWfggeWgfefVwfvfeggfugweWfvuwgvgwfWwgfffwgvvewxwfggfvvVfgvfgWgggWffvvffevgfvegggVuwggfwWgfwgfwfwfFVvfvfgvVgfxgfVfgVFgefvWfwfvwvwfVgvvwgvffVgevVfwVfgVgdfWffufwfgevfgwufwgwgwvfVfvwvggvefgvvfUfvvvfWgfwWgvvgwvVvggWevfeVugwfgewggwfgvwfUggvfWwfwFfeuVgvFuWVgeffeUfgvevfwggvvWgfufvwVvgWgewgffvwwvgvwggvgvfefvvfWvggvgUfvfgevfwfufgvgfVwwvwwxgxwxwfwhgwwvwxwxwgwwwwwwwxwwwxxwfgwhxwxxwwxwwwfvxgxwgfwxwwwvwwxwwgwxgghwghwwwxwwvwwhxwwwwxwwwwgwwxwgvwwwwwwxwwxwwxxxwxxxwwwgwgvwwfwwwwwwvwwwvwxxgwwwwwgwhvwwwwwwwvxwwwVwwgwwwwxgwwwwwgwxgwwwwwwxwwwxwxwhvgWuwwvgfvfefgwwwgfwWuxwffevfuvVfwvVewvggvvevWggxgvwffUfgefvfffwVufgwfvwwvfvwwgfffxwgwffgfffvgwgvvgfvggfffwgwgvwwwdugvgwvgewUuvwfVvwwwgvwwwggfvfgffgwwwggwgwTuWevgwfeweffwfVfvvfVfvvggvwevhfwwwwffvwwvgfwwvgvwwwwwvhfwgghfwgfwgfvVxfvguwgffWwgfffxwwwwwxggxwgxwwwwxwxwxxxwwgwwwwwxxgwffgxwvgvwhwhvxxwgwgxgwxwwxwwwwwwwwwgwwhxwgwwwgwwxwxxwgwfvwxxfgwwhghwwwxwwwwwvxwxwwwwwxwwwwwxwwwwwwwwwvwwwwxwxwwxwwwxhvwwwxxxwxwwxxxwwxxwwxwwxvwgwwwwwfvgwhxvxwgvvvxxxxxwwxwwvwwwwvxwwwwgxwxxxxvwwwwhwxxvwffgxxgfvhwhxwvwxwwwwvwxxxwwxwxwxxuwwxwwwwwwwxxwwwwwwxxxwwwxxwxwwvxvfxwxwwgxgwwwwwwwwwwwwfwwwxwwwwwwwgvxwgwwvwxwwvwwwwvvvwxwfwwfwwvwwvwvwwxxwwwwwxgwgwwxwwwwxwxwwxwwfxxwxwwwwxxfvgfwwwwvwwwwwxwwwxxvwwwwwwwwwxvwwhwxgwwfwxwwvwuvwwwwwwwxwwwvwwwwwwwwwwwvxxxwxwhvgwfggwgvgwwwwxWVUfUeVeVeUfffvfvwgwgvgfgwwxwgvwfffwvwwwwVefffvgwffgfffvwwhvfwfvvwgwvwwgffwfvgvgvfwwwxwgvwwwwxwgfvwwxwwwwwwwwwffwgvwvwvvvwxwgwwffgwgfvwgfVeffvgvwwfffvgxvgwwwwwxgfvwwwwwwwwwwwwwgwvgwvgwvwwwgwvVfegvgwvwwvgxwwxwwwwwwwxxwwwwwwxgwwwgxwxwwwwwwxwwxgxwxwwhfxwwwwwfwwwwxwwwxxvwwwxxwwwwwxwwwxhvwgxwxvxwwwwwwgxwwxxgwwvxxwwwwxhvwxgxxxxwwxwwwxxxxwwwwxwwxxwwxxwvwxvwxwwggwwwwwwvwxwwwwwgwwwwwvxhxwwwwhwxhvxvhxxwwwxgwxxwxxwwvxxxhwwxwxxwwxxxghxxwwwhxwvwxxxwxwhwwxwwwvwhfwgvxwwhxwwwxwwwwxwxxhwxxwwhhxwwxvwwwwvxwwfxgwwwhwxwwwwgxvfvgwgwwwwwwxvwfxwvwwxwwgwxwwgwgvwwxxgwwwwwwgvxwwggwfwvgwgvgwgwvwvWwgxwgwwwgwxxvxgwwwwfwgwxwwwwvgwwwxxxgwwxxhxhwwwwwwwwwwgwgvxgvggwVwvxvwvwvwwvwvgwvwwgwwxggwwWxvwwhvhvgxvXxwwgwvxwwwwvgxwwwxwfxwwgwwgxwgxwxghwwwxwwxvwwgwvgwwwwwhfwfwwwgvggwwwwxwxwwxwfwxvgvwwwfwgvwvwgwvVwgwgwwfwhwwwvwwvwwxwwwxvghwwwwwwxgvxwwxwwwewwwhvwwvVxfwvgwfwwwwxvxwfwwwwvwwgxvewgvgvwvxwfwvwgwwvwwvwwvwwvxxwgfxwwwwwxxwvwhvwwwxwwhwwwgwghwwhwxwhwwwxwgxwwgxxxxxvwxwgwwxwwwwwgwwwvwwxxwwvwwwvwwwvhxwwhwgxwwxhwwwxwgwxxwwxvgwwwwwxwwxwwhxhxhhwwwxxwwxxwvwwwxfhxvwvxwxxwxxwwxhwwwxwxxwwwxxwwxhxwvxwwwxgwwhvwxvwwwhwwwwxgxwxwwwwhwwxxwwwwwwgwwwgwwwwgwwwwxwgwfgxwwwwxwwxxwwwwxwwxwxwwxwwxxwvwvxxwxxwxwwxwwxwvhvfxfxwwxwwwwwwwwwwwxxvwvxxwxxxxwwxwwxwwxwwwwwxxwwwwxwwxxxwwwwfxvhwxxwxxghxwxxwwwgvwwxvwwwgwwwwwwgxgwxxwxwwwwwgwgwwwggvwffxfwxfxwxhxxwwgwgvgxxwwwwwwgwfwwwggfwffxgwxuwwwwwwwwwxwwwxwwwwwwwxwwwwwxwwxhgwvwwwxwwwvgvwggWfwffewvfWfegVffwveuwvvfffggfufwggfewvVgwvggggvvvgWevgvWfvgwvwvwvxwgvwwhwwwfuwvgfvggfvvwwwwfwggfgwvwwwwwgwgfvwwwgfvvVuwfvgevfWfewwwgUfwwfefgvgvgfvgvWeeffvGfvxfwfevvfWVwgwggvfffWfUfwfFfvxwwwfgwwweWfVgweewwegwfgwefegwTfevvvfwgwveggwwvxwwwwwvwvvveWVffefgfeUvfeuegGudWvuTVeWUffvfgVeevVWVgwffguvfwgdfeuvvVfwfggvgvwwwfvwwuvuwWvuhwvffvgfffwwvwgfwgffvgwwwvwvvwefvvwwVfgWvtgvuUVfWeeevwgVeuwVWGvfwfguvufwdeduvuEgvfgWeUvVffuegfgfvfvgUeffvf6fwgvwggWvwWeVfghgeuwWfWgfgguVvgWdeefggfwwxggvvgfwwwfvwwwewegWgeeUVffgVffvfUguveUwufGgUgfUfewgfeUwfFeFgwggvewewgTwueweGewgguvwwwwgwwwwvwvwffvgWgewfffvwgwfwwggfVwvwwwvwvwfffvwwfVfveEwuVGWTgefVefvgeUvwVfFggfgffwegvUvufweVfggueUvgfeUggfgffgfgUffefgf6vfwwwWvVwwVfUgwVeTwwVvggvfveggeefevxwwvwvgwxgwwwwwvvwwgvwwwgvwwwxwgwgvfvvewfvwfgfgVwwwwwvwgvgwwwwfvwwwwgvfgvwgwwwwfxwxwwwwwgxwgwwwwwfvwfxwwwwgwwwxfwwwwwgvxwvwxvvvffgvvvvvvwwwwwgvvwwwwfwfwvwwwgfvgwggvgvwvggvwfwgvfvfVuwwffvwVufgwwgfwwvwwvwwwwfxgwfwwgwwgxwwfVwVwwxwgwwgvwfwxwwvwwwwfgwfuveVwfgfefvvffuvfewgfwUvfwfeuwgffUwffVUwwwgvgfvwgVfvgffftxxvvvvwwwwwwxwwgvwffgwwevvggfvwgwfwwgwffwwwwwwwgwggfwwwgfvfffwggweuvfgefvvgVfgwwfUwvwvfwfvvwwVvxfffuwvwVfgfVVVxfwvgvfvvVvefvvfftwwwwgVwwfWVwgVfEwwwgfwgffVwgeVVgVvxwvggvwxgxxwwwwfvwwggggwwgvwwfwwvfwgffUvfefffvfggwwfwhvgfgvwwvwUffwvfggfwgvwwwgfewhwwxwwwfvvwWvwfvvvwvgVwgWwgxgggfgwwfwwvwwwguwwvwwffgfVfWfgfvgvwwwvgfwwgfvwfwvvgvwwfVuwgfffwfgwvfvfwUggVvfvGtgfvWuWuwxwxwwgwwwhwggvwwgwwvwfwwwvwvwfffuwvxwwwfevwfwwwxwvvvvuwvfgwgwwwvwgvgvfvvggfugVfvfffwvvvgvgfwwwWVfwwwvwvvvwffvgvvgfvgvfwwwwxxvgvwwwvwevgvwfgfwvuxwwwhwwWgwxgwvwwvvfgvvwwgfgfVffegegvvwvwfxfgfgvgvWuwgffvwgvvvvwwwVfwvvfvWWgggfvvttfgvuuvuvxwwxvggwgxfvwfgwefwwwwgvwwvwwwwvgvwwwwwwwfwwwwxxwwvwgwgwwwxwwwfwwvfvvvwvffvfvvggwwgfwgvxwwffwwwfwwvwwvwwwvwvgvwvvgxxwwxwgwwwwvgxgvwwwwwgwgxfwxwwxwwhgwfwwwwwwwgwvwxwggfvgfguvfwewwwgwxwgfgwwwfwwwgwwgwfwvvwvgfgvvgvwggfwgfgwuewfwvvfuehvwwxvwggwgxwvgwwwefvwwwvgwvwwwfwegwvwxwwwwwvggvvwwwwgfvwwhvVgeVVvfwffgvvwvwffvwwVfffwwgvVwvgfvggfwgffvwgwwfvfUEuwxwwwvfxvgwwwwwwwwvvwwwwwvwggwvgwfeVfffffgwvwwwxgfffffvgffvfwwwffwvgeWffgvfegwwvwgwwwwfffvvwffWvfVTuxwgvggefgVxwwwgvgfeWvffvfVfuvgwwwwwwwfvfffVUTwwwwwvvgffeffEUeVfgwwwgffwwwwwwwwffwwveUfWfffggVffUfvvggDdfVUeffegeUvvwwffFdfwwgvfUfgvwUfvwgUfufwvgUwgfgvwwwwwUgwwwwVevhvwfwfwvfvxxwggVUufwwwwfwxwffwwgfffwWVevgffDgUwVfuwwweffffwwvwwfwwwgDgvwwfUvewfffVeVvVeVgUgfwffUwfUvcfvffvwgfvwwXefgwVVegvWuwwwggfgvgeVWvgfvfWfffgVFfeffwggfeUFfffVVFEVTUVfffeUEEffffUdcgeuVVFVVUteffVUVdcVffgfVWwvvVVffvVUuTgvgVWwvffvggffVWwvwvfuuwuuFVVWVevuwvfffeugggwvVWwwgGVffffUufwgeeefde5FfVFUuUfeUVUeeffgffFVfff6FfefVEueggVFfTddeUUGVWWWfUufVVEuURuUUeffedfffTdfffUEWufuugwgUfWvwTUWvvUUwvgvwwvWgwwwwhwvvWwwwvvffVfffwfgffvgwwgFwdWffeVugUevwwffFwtggwgwugvwgeVgvvVVgwwwuggvvwwxwwugwwwwWwvhvvWvgffxxwfWffwwvxhxxfVvwggvwwfVfugfetGvWVUvwvffVfufgwwwvWvwgtGgvweewvwvWgwVwfUhuugvggvvWeeffVewfgwuwwgfvgxWUXvvWwvwwgfhvwgUXuggUvVVVUUVeDVTUUfeVUUeDffeFEUDECDETTEDETDUeUUD5RUESU3UTEdDSUUEDE5RUEUUUU4UUUU3UeUEcDTfUVeDfTUUeeVUUeDffefUESfFdUCeDFeTdVfUTEESUUUVfeDfVfVCUUUUdDefVT5SU5TT2UE5dDTUUETD5SUVUUUUCUUUU2UUTEd4TfeeDVETEU4FDeDfDVdDUEEd4DdADDdUUFdfVfETUVUDF4eVFdfVfTFEffCFDeVDDfufffvgWWfffvggwffWWvwveeFEFUUVffVeUFEfffVedcfedVVVfuUEeffUUfdcfVfeeVFfffVVvffuTUggvfFVWVVfgggffFVfffgfetwueWWVWufUwvvfffedffvvvWWgwwWVvgvvUewgWfeeveU6FVFuEUvffUVeeegffffWWvgv6FffetUUfWfWWfTdeVGUeFVVWvUeVFtUUuURUUffvuewggTdffVWUtvfdeffVgVuwVWTevUUuvhvwwgvWuvwwwwwfvfWuwwWgfVeUffwfgfffVegwvevDwfffVuWueVvwwWffvDwwgwwwgfwwgffwwvVevguwffvwwwwwwwgfwwwwwfwffVugvfvwwwfgffvwwwwxgvXUuggffvgffffgUUdFdguVeefvffffUvwgwwgVugggFtwwveVugffWefUwUgUfffvgfffgueVuffcffwwwUwwwfUvvgWfewVffxwwgfgwfgUVwfffwwxvgwwxvwxwxxwwgwxwwwwwwgwxwwgwwwwwvgewfvwgvvgwvvgwwggewwwgwwwxgvwhwvwvwxwfwwwwwgxwwvxwvvwwhwvffxxxwgvwwwxxxxwfwwwwwwfgvgvgevggvwwwwwvwfwvgxwwvwwgexgwgwggwwwgwfwggwvffwwvggwgfwfgvwwwwwxwwxwggwwwwwwxxfwwxwfwghvfwgwwwffvwgwwwwgwgVvffvvTEueVVfffUUfefeefvfgffgWVfuwfvvvvfUVefwggfwgvwgeVdwgFEewgwvveVvggwwwfffvwvvwwwxwwxWvffwvfwvvffwfwwgffwgwwwwffwwWeuveUvffgfffFUVegvvfVegeUVgffvgfffwVffeffFCuwwvfvvefUwfwwWfWvggfUUvfFUtwwwwvwfwfeVvwfeUwvvgwwvUVvffeUUUewfwfwvfgwwxwwxwfwwwwwwgfffvgWffgvfwwvfeVVfffffVfVUffUvwwvgvwwvggvfvwfvggUwffvvvwVgvgUfhvwwwxgUwwwfvfwfvvgvwfgfwffwfgfwwvwwvfwwfvggffgwvvwgfwffgeVeefvfffUevwwgwwgvfgeUwwwevgfwgffwfVdfvfvfvVegffgfgfveVvVwtffffvfggvwxgwwWuwgfxwwgvfvfffgwvWvgffhvgffvvwwvvgWwwwwggggWwwgvvfeVVgfWgVWVVVfvfgggfvegffVfVFgFdfwvgfugwwfvfffffgvVGgfveVvfgwvfVvgwwfwgfWwwgvwvvfvguvgggVfVvvvwwvwwwwwVgwvvvgfWwfggvgfhgUfVdevgVVVFvfeffuffgvffEWfffffUWfVvfffVfvVVWefUtfVWfWVVfVvVGgcvfeuUffeufgwgwutfVgggwfveuefhwwwvvfUWfeeegggwvvwfWwwvwvwwvWwwwvwfWVfvvfgefgvfgewwgvVgvVveegdWUvewgvVwvwgwfgeWgfwwvtWVfgvwwvvfuWwvggvgwvWwvgvgwgwvgwuvgugffwwwgwvwwwvgvWgvgwguggfvgwgvfeeeVfdvWeUEvUgwvgwuVwwvguGfvwvguVfvUfgggvwvgfwffefgvvWvgfevWfsfVfffgwvwvvwgefhvvwvfgwffXuvwfVWfgfUvfgffeffffUwgvfVffvUgfvwvgeUUVVeVEeUeUVeeffffVdVFdeeV4VuUdfffVdfffffeDVeevff4VtUefefwffvEgwvgVffvEgffvvvwWufFevUgEVveugwvWuvffvvfTVfefffEfuUfffVveVFeU6dfVfDFuEefffFeeVfefeCVVefefDVuEeffffewUgVuVuVVefUfUVuEeEVuRUtUUUuWuffwgvWueWVvgvfgVeTWUfgfvWUWEUUvgfwgwvwgggwwxwvwwggwfwgvUEVVvgWgeWfWVftWfffffuvuffwVFvUVgvfvvegffvfggfVwVgWGefvVffgfVVVwfgwvgwWgvufgUggvvwuvgggWvVfwwvvfwwwfgggvgwWvgWwfvvgvggfffffdefVeUf5VgwvwfvgffvfGVvfgfVgeefeggVfVfVVVvfueVUfVWWVuVdgWffcvUeVVfuuwwgvwueXfvgvgvueeWevgvVvdhfeeewevwvwwwfvwwxwwwwgvwvwvffufvwfxgfgvgfuggwvwvgggffgfVuVfwxwwfwwvwgvwwwgwwwWuevvwvvWuggVxvwwwwWvwvwgvwvfvwfwhffvfvxxxwfwwvwwgfvwwwvwgvfvggwgfufffeUUfwffuUdvgwwwfvwvwvgWufwggvfvfffwgwgfggfvfgfgfffffffffgvgwtfvfgvwfwwwgfWffwwggewfgfgwvfwvgvfvefxwxwwxxxwxxwwwxwwxwwwwwhwvfwwfvwgwwwxwwwwxxgwwxxxgxwwxgwwwwwxxxwxwwgvwvxxxxxxwwwxxwxwwwwwwvgwwwgexwgwxxxwxwvwwxxwwwxwwxwwwwvwwfwvfwxwfwwwwwwfgfggfvgxvwwxwwwxxxxxwxwxxwxuWvwgeffvfvvewwffvfvwwFddUeEffTgveeeUefwgVVefeVV4fEVfeffwgfuVeVfgUfvfgfwfVVffffeffWvffvVwwfgwffgfvfwfggfwfvxVheWvefffwvfUgvWffvvgggwggvugfefgVEeffUufVFCVeeVfwgffeFffgWUffVffgeVfeVUUfevgffUtfeUffgVgfXefvfWtdfeTFUefvgfwwffuVggUfeffVVggegwgwVWfdUTfffwwfwwfhvwwwhwwwwwxxgUUfdgegVfvfvffeWfVffeeffeUGeGeUfvwwfvfeeggvgfffgvWeWuufeeffgvwgvXewvwxfgffvgwgwwvwwwfgfXvvvfwwfgggvvwvwvwwwxwvggvvvvgwwfeVVffveWDGUUffwwvffVffvfffwgfwgfgffveefUfwwgWvevefffhfgvvvfgvuuuetVfwwwgwwwVudgggfffwgfwggwfwffWWwefefuhewfvgwvgwvfwwwggwfwfFeeeuFuVevgefffeVgvWufvfvFWEgeVfuwwvvfefgfVffgwwwwVguVwfVgvgfffgfwwfwwwffvwwwwfwwvwWwVhfewvwwwwwVwvwvwvgwwwgwfgwgefvwWefeffeFf5FdEfeewfvfVefeffVfgvvwVfegvfEfeWggwweufVfgghfhvVwfgfewfegeEvggvwwwfUgwgVfgwgfgvgfuwwwfugfuedvgxwwwVvwgvwxwgwxvwwgwwwwwwwwvwwwwfvggwwgfwwffgvfvwwwfgwwwwgwwvwwwwfVveuvxwvwwwgwggvwvwwxwwwggxxwvwwgwxwwwxxwwwwgwvvxwggvWWxwfewfVvxwwwwwwgfwfvwvwwwwwfwwwVvwwvfwxfgvwgfwvfvvvvxdfvvgvvfwvvxxxhgvwhfxwwwwwxxvwxfgxfwegufVfvegVfefvwggfewff6DUEe6VfEffeVFEefVeVFUeVfvEeTVfTeffefUFUVUEVfeefVfuEvffUfTeVFUeUuFffVwwvgWUuvfffVfwWvwfwTVvTefwgfeVfVfVgfvegfwvegvvffTegVUTEVUUUTU2TUUdufFgfUEffUeffUugfVUewfVUUdfevefWVVfeVTwuvUffEveVvTVfUUTsgfWffffWUwgVeVTfegfffeuVdgfeWTfVT6vwwwwwfgwwxggwhxxwwvvvvggvwwgvfwwgggWwvgvvwfevfvWvwwwuwwvwwwgwwgwwwxfevwwvWvwfgvwxwxwhgwhwwxwgvwxwvvgwhwwwwvvwvxwwwxxgxwgfwwwwhvxwgvvgvuwefgfuWvwwvffvvvwvfwwWgwxwfVvhvvWuwfwwgfvgwwfgfwfgwgvGvffvfwffgvwwwwwwfvwwggfwxwwvwvhwvwxwgvvgvvwvwvwgugwwwvwxxgwwgwvfvwwgwwvwwwwwgwgwvvvfwvgefgvfuvwwhwwfwxwvgxgwwwguvvvuvwgvWwxfwwxwwWwwgxwwwgfgwvvvxxwwwvwwgxhwvvwwvvvwwfgvfwvWffvuuvvwvgwvgvwgwvgwgwwgfuvwvvuwwhwfvwwggvwvwgvwwGgfvvvwfgwwvwfwxhwggvwwgvxwxxwgxwffgwfxvxwwwfgwwvvwwgxwxgwvwgwwwwgwwwwgwgvvhvwfvwvefgvweexwwwwvxwgwwwgwwwvvfwffxwewfwwwgwggwwwgxwwwwwwwxwvwwfwvfxwvxxwhxxgwxwvxwgwggwwgvwvffguwvVxwwvwgvvfgWwwwWwwwfexvgwvVwvgwwgvwwwgggwwwfwwwfFvvffvwgvwxwhvwxxwfgwxfxxwgxfwwwgxwwwwxwwwwvwwwgfgwvwwggvwgxvVvvgWvVfefgvvwvwvfwwgfffgewwvgewggfvwwgwgvgegfwwfffVEuxwwwwgfwwwxvgwvwwwwgwwwwgwwgwvfgfvVegvfffgfvwgvgvfgffvwwgfvvwwwfgwvgfVfgfwwwVvfgvwggwwwVvgfwwffgffVTuxfvgvwwfwVhfwwgffvwWvgfvgVfwwwwfgVwwfgfwwwUEwwegfvvgVewwwTUffvvwwwWwfwvxwwhvwwxwvwwVvewfgfggvwvvwvuvgeffWffvUfffeVfvfgfvvwgwwwUvfwffvxxuwwvwgfwgwfwwwxxgvvwwvvwwvhvgWvwfwwwfwvwffwwvxgwwvffwwvwgxvwgwwgvweWufVfvfwffffvvUfwvwWwwwfwfwffvwwvfgvwgewUffgvgvgffgVfVwtfwfvffvvwewgugvWVfvwWwvfwwgvgvgffgvggugwwguwvwggwwgvWWgvggwuewvgvvWeFVVeVfvdeffvvgffgveevtuGGWfVVtfWVfffwwvVgGGWgWUvuvffvvgwfVvvWgwvggwuvwwwggwfwuuwevgWgggffWWvwgxwwvWgVfggfvgwvgwwvggudtfvuVVVVWVvUGGffVggffgVVVWWVvvfWvVwvgfWVgwedvufUXVGgWfcvVVWeuefvFVvedvueVWwwgffvggvfuufTWffhedgvgefvwwvvfffvuWVgffWweffgvwvweeeVEUUVVfUVUVefvfVFfTFfecFdVTuUedFfUefffWfcFdVEuUfffeffffgffvuWVfffWwuffgvwvwfWfdWwudVuWeuVveFgUvfgffudVuWVuegveffvggwwUFfcVfddFeFUuEed6VUfffVffdFeFUuTffVvfffffvfefWfUwUUGefVuWUrUuWEuUVueUUWfUwUUWdfffgvgwvfVwEUWUVgUDegwgfwfwgggfffwUguffvWufffwvwvVVfUVTeUeVeUeUfevffeFdeVff4fEVuUTfDfUVffVgff4fEVtUefffefffegffwUgeffvWugffwfwvgvFevWugEvUWveegTveVvgfffgEvUguUfwffffgwfwVe6dffefDfTFuUUfCfeUfffVffDfTVuEeffvVVfffvffTvVeWuUWTfEvUWuRuUWtUeuUFUtVeWuTWUfffgfwgwvfWuUWEeWVUUwgwfgwwwvvwwgwgWgwwwwvuvvwvvgVeVFVffVgedfewvgffVfeevuvGFWVueVeVVVffggWvvFGWWUVvvvffwgWgfgvWWggggguuvvwgfwwufwfuWWggffvVfgwwxxwvvVWggvffwuvwvwggwfwtdwutVVfVvEVvGGfffgggfvVVgWueUwwvVgvvwVfeGWgdueUgUegWVgvfcWgUfvffVFgduuUGevwgffggggfuuVgeehffdewvfvvwvwgwwwvwgvwwwwvfwvwwfewgevggvwfwfvvggwevwfefVgWefvfffwgvvvwwvfggVugvffvwxwwewwvguuwgvwwxwfxwwwxwwfwwfvwVxgvwwvgvgfvvwvvwggfvwwwvgwwfwwwwVvfUeffvfffffeewVevfwwWggvgvffvwwwwfwwvgVfVvwfgfgffefvWvgvtgvffwwvguwewfgffwwvgWwwgwewffeVgwfwewwgwfwvwwxwwhvvwwwwgwwwwvwxxxwwwwwxwwwwwwxxvfvwvfwgggvwwvxfwwwwwwwwwggwxvwvwwwxxgwwwgwwwgwvwwwgwwwwhfUvxwxxwvgwwwwvwvvgxwwvwwwxxwgggvfgwfgvgwwxvvwwwwwxwwfwgwgwwwwwvxxxwwvgwwwwfvwwvgeVuwWvwwwfwxwwwxwgxvvwwxxwwwgvwgxxwwwxwvwhgwwgxwwwvwwwwwWVvvVhvwfggewvvvfwfwvggVtggfEgvfefwgwvwwwwfggfgvvggwwwgvvvgwwwgwwwwwwvwxgwxxwwvwwgwgxwgfwgfvvvwwwfggvhwgwwwwgvwwwfwvwfvgfgegvvfvggfwwfwvwwgfeXfwgfwgwWffwwwgVwwvVuVWggVxfwuegfhuvfuegffvvVuVgwwvwwwVgfwwVVggfhwfvfWwvwfgfwxwwwwwwxwwwwwwwxxffwuvwgwxgwvvhwgfwvvgvuggfWffVvwwwwwvwwwfgwfhvvwwgwvgfvfwvwvwwwwwwwwwwxwxwwwwwvwwwiwwfgwvvwvvwwggwfxvwgwxvwxxvggvgwevfvXffgwwgwwwwvwwwfhvvwwggwwvvvwwwehwwgfggvvhwwwvfhvvvwvvgfvwVvuggwfvwwggWvwWvfggggggfgfWwvgffwwwwwxwvwxwwwwwwwwxwhfvughgwvwxvwwgwgxgfgvuggvVxfgfvwwwwwvwwwvgwghvgwvwwxgxfwvwwwwwwxwwwwwwxxwxwwwwwwwgywwxgvggwvwvxxxvgwhvgxfgwwwwwxvxxvvvvufggWgVfffvgwwwvwvvwwwghvgwvggwwgfgvvwgxvwwfgvgghuwfwghffwvfwgfgvwvVgvgfvwwwWvfwvuVgvwgvggfVvgwwfffvfwwWgvvgwwwfwwwvvwxwVfuwVfffewgffuwwwfdUvWVVVuwevfvgFuwffVwwwwGvweUfvwtwwwgeuwwwgwugwvwfxwwvwxweWggfvfvvwgxWvwvfgvwwwWvvfwewvxwvxxdFwWVeUtwffUuwVuwffVwwwgWvwfffvwtvwwweuwwweUUVwWvWfwgffSeefgffVxfvwfewgevvxWwwwwgfggevgxgffwwhewwwggwwwwvwwwwgwwwwvwxXVfggXvgevvvwfggggwvgfwgfvvwVfwffgvgwfgfwvwvvVvggevwgwwffuwggwwwhwwvwwwwwxxwwgwhwwvvwwgvvfgfwgwwwvwgvwvvvwwwvvwwwfgfGegwvTVvffvvfhwggwwwvwvfvwfvwvwwgwfvvwevgwhfvgewevfwvUwUfwUvvUfffgghevgegwwwwwWfwgWewgewhfgffgewwvfvwgwgwwxvxwwgwwVfWwfvwwvvhgwgwwwweuugfefXwfvhvVgvvwvwwhWxfvvhgwwhvgwwwghxwwxwwxwhwvvvwwwwwxgwxgwwwwwwwwggwwxgvwxxvuvgfffWwWfgvWgwwfwvwwwWWwgfvhwWwxwgvwxfWvvvhffwwggwFfuwvVwhvwvwxugffvwuwwgxghvwfhwfwwvwwwwwwvhxwwgwhwxgevWwfwvfxvvwwgwwwggwufffuggVwvvuWwgvwuwxxuggfwvvgwwwwvvxwvgwwwwgwhwxwwwvwwvgwgwgwwwvxwgvwwwwwwwhfwefeuWwfvfvXgwvwvxhwgwfvvgwwvvwgvggxvwehhxvVgFvvwefvwwvvwvxWvwfhhwwuwxwwhwwffwhggggwgwhwhvfwwgwxWgwwwxvwvgwxwVfwWVfffuwfffwWfwweuwDVVewGffwuUVwgffvvtwwWwWffwvfwWgwwwuVwwWggggwvwvwvwwxgwxwfwVfgvgWwgvWxgvfwguwVwgfgwwfwwwxgeuwEfeUwVgVvvfFwgffvwdwwGwWUVwvfwWwwwwuVwweffvwefvXXfUUV5vfVwVwvVwvfxfuwfVvgxwwuwwwgWvwgVvwhwffwwfgvxvvvxwWfffWvwwgffwvwxwwwGUeeEufvVVUeeewgUfffeUfEcfFffVffVVVvwvwwfgwffffWeffffvfvvgfvgwvgfvgwvwvvwvwfwwwwvwgwfxggvefffvggwwvvfwfxfgvuvgfvfvwxfwWefegVuUTffWfeefVeffvwefvWeffFfeefEefgfwffvWEwfuwvUggwfgVgtdfVguefuvGVvfugvUggwvfwwwwwfwgVggVfgdVVgfewwwfggwfgvwvxwwvfgwwwwhwEVfeegufffVffgwfvfeVeuGudfGVfteeffUvvvwggfffWwgfefVgvffvwgVgfgfwfxvwvfgwvwwvgwvwwgvfXwwuvvgvefwwvxwfwgwwgffwvwvgwgwfwdfffVueUGffdefvVevfvwhwfffWfweffffuuvfwwffwUWgvevWggvwwvhfuufgvuevvfUVfvuwWfgfvggWvwwfWeggggwgUfggfeuwWvfxwWffgVgfgffvvwwwwwGVeUEvffVVUevfgfffffUefcEUfUfVEfUVVvwfwvggVVfUgfEfefwgwvwvvgVffgVuwffffvwvxwwwgfvwtVgwfwgVwfffgfgxggfgwfwWVfvvwfwvvwfgVUTfcUEVeVVUfUVFUgfwvgfVFVeWVVeefvVwegvfgvWWffvwVuWgwfheewfgfVgfewVFvVvwVuWvwgvgwwgwffVvgVvxVtWvgfegwvvwggWuwwwwwgwwwvwwwxxfwfwxwwgwwwvwgwwvvfwwwufgfgvwvuwwwwwxwwxWgfvwfwvxvvwxxfwvwwwwvWwvwwgwwvvwxfgwwwwwvwxxxxwgwwwgwwxvwwxwwfgwvvfvwgfweugvvwgwwvwwxgffwwgvvfwevwwwwwwWggfwghwxXdwffgwvvvwwvvwfuvwxwwghwxwxwfvgwwgwwggwgwgwvfwwgwvfgwvfwgvvvwgwwvWUdFUufVVeTTVvvfgfVfVfgGTvevefwUfVefgfwggfWwVvfffUdefweuffugffuVfwwffeefvwgwwwwWwwXfewvgefWuwgvwwfwgfwfWgfvvwwevvwvvfffUf6eeCUfUeeeVVegfwgwgfeUvfVfVefefVuwgfwvwdeWfgwvWdwfwefveuefvUfwVfetgfgweWTgwvgewwwwvhfvgevgefVvgeeFgvvggvhvgxwwvwhxwwwwwwvwwwvxwvwvwwwvwxwgwvxfggffghvvwwwwgxwgvvgwvgvwxwhwxxwhvxwwgwwfwgxvwwwfxhvvwgwxwxwggwwwxwwwwgxwgvhxwwvwwxgwxvwegfffgwvgvgwwxvwwwwgwfggvWvwwvgvxwwwgwwvfwwxfgWwfgvfgvwvfwvwvgvfwwwwfwwxwwwxxwwwwwwhwxwxwwwvfwwwxwwxvwgxgwwwfvwwwwwwwwwwwvvwvwvfggvfvgwvvxgwwvxwwxfvvgwvvvhwwfghgwgvwvgwwwwgvwfwewwwgwwwWwuvxwwggwgvwhxvwwwwwvwVfWfvuWwvvfwgwwvwwxwwwffggvvvgwvwvwwxwwwvvfwhwwwGfWvfvvwwggvvwvxwwwvwggxwhgxwwwwgxxxwxxwwwxvWvvgwxgwwwvgvhwwwxfVwfwxgwwwwgwwwwwwxvfgggwwWvfwvxwwxgvvwxvfxWxvwxwgxGfggvvggwwfwggwwfvwxwvfvwwxwwwwgvwwwwfwgggWgwwxwgvwweVwfffgvvfvwwwwvwwwwgfewxwfwgfwwwxwfwffwwxvgwvwFwfgfWwgwvfwvfxwfgxgxwgxvxwwxgwgwvxxwwgvgwwxxgwgwvwwwgwwwwgEewvvwfvgUfuwwVfgvwgwgvgevvfvguvwvwgwwxwwwwvwwwwwfgvguvwvvwgwvwwwwvvwwxxhgwwwxwwwwgfwfwfgvwwwxwwgvvwwwwwwwwgwwgefwwfvWUffWvgvfwgfgfwwvvwvwwgvwgfVfgfwfwghwfwgwwwgwxwvwwxvgwwgwgwffwwwwwwwgwwwxwgwwvfvgwwwvgfgwvhvwxwwwwxwwwwwxffvwvfhVvwwffwgvvgwgUvgewevwwwfvwgvgwwhfwewwfwvwvuwwgxxwwwwwwvwwwwwxhgwwvvwvwwwxwwxwwwwwxwxwxxfvwXVvgewewvwvevwwwwwwwhgxfwvwfwvwwuwwwwfewfvhvhwxwgfvvvfwvgwvgvfgvgxwwxxhwwwxwvgwhwgxxwwwhxwwwxxghwvxwwwvwwwwwgvfwVguvgffgvfggfwwwVuvfgXhxfwgfgwwvvfwxfgGgvvgxwgxgfwwwwwxhfwwwxwxwwwgvwhgwxvxxwgwxxwwwwhwxXvgwwxwvxgwvvVuvfXWgvuwgfWwvgvgVvxegGfgvVgwfwguwwggfgwvgwxvwgVwffgwgvewwghvfhwvwgwwwwvwwxWvWwwwhvXwghgwwwwvwxwwwxxgufgfvevvwfgvwfwwvfwffwuuWWwuggwgwwgwvgxgvwugwwvgwvxwvwwwfwvwfvwgwwwwwwwxxxwwxhxxwwwwxgvwxwxvwxxwwwwxffvgevvuftWwugggwvwfwgxWfgugwwvgwvwwuwvvggfvgxwvgvWgvwggwgvgfgxwxguxwwvwwwwwvgxwVxvfhgxwxfwvxwwwwwxxwwwwwwxwgvgffgXuggvgffffffwgvgXvvewUwwuwvfwwwgvghgvgwfwuwewwvwwuwwwwwgwwwxwxwwwwwwwwwgvfxwuwwwwwwwfwfvxfgvfwwwwuwwgggffWvvfwUwwtwwfwgggffhfvfwegvwfwwvwwtvwwvfhghwhwvvwUgvewfgfgffwexXuwxwhvxwwhwwwgwwxwvWfhwhvxugxgvxxxxxwwwwwwxwwfgggvvvfvvuvvgwvgwfvvegghgwgugwfwwwvvxggghWWwvwWvwwwgvgwvwhwwwwwwwwvhwwwwwwwwxxwxwwvxxwwxgwxggwwxgxwxwwxvwwguvfggWgwwuVhVwwwvwxwWghWWwvgWwwwuxwghgwvxgwvwgfvfggwwwgvghvwfvxhvvhwgwgwwxwghfwwfwvwxwwwgwxgxwwxwxxxWfffUWxVgfffvfggffgwgVvFvhvWggfvgvxwxfxwfvwvgwwvgvgwwwvwwwwffgwwwwwwxxwwwwggVwwgwwwvwwwxwwxwwxwwxwwhwwwvhgffEgEvguWvwgfvWvvwgexvVvgwgvvvWvgwvvwuggvgewwfgvgvVvffugvwwwwugfwwexhwwxwgwwgxwwhfWwhvwwxvxgwvfWewwvvffuvWvgwwvvgfwwwfgvwgwwwwwwwfwwxfVfVfVVwwwgvgvwwwwvvvffVUwwwVfwwwwxxwwgfwvugWgfffwvwvgwgUfggfVvffgfwwwVvwuwvgvgwgwwfewwfgxwwwwfvwwVFfeegfgwgffgvwwwwvvvvveTwwweVxwxgwgwwwvfffgfvFvVeVfvVvfffwVgVwfgwfgvxgfwxvwwwgfvwwwUfwgfghggwhgvggwvvwgvgWfewgffvVffVffVweVGUTfVVVevffwffWeefVUVdgfvefvgefVggvgffffgUVeeffV4tgwwfwwwwvwgfvwgvwvwwwwwwvvgvfewwggwwwfgwgggfvvwfvfvgvwwVVevffffgfeuvVVfuvwvggwwTfegfgvfvwfvfeUevwVTtwffggwUVfgwwwgeguvVefevfEUtwwxwvvgwxeefffgUVwwfwggwweUfwgUVUUewgvvwVfguwwwgvwfwwfVfvwfvwfgvfwevvgefwvVUeffeffEuwUggvgfgffwwggvfvwwggwggwgfwwwfvwgvwwwwwvwvgwvgwgvwfgffufvxffgvgvwgfxxwwwgwwwwwgwvgefwfvvffwvgUfgevgwwgvWuggVwwwwwgwwvwgvgwUwffffvfvFgwwfgfffffvffvvfvfggvgvggfghfVgfgguwgwwgfwwvgwwgeggvwvvgfUVvwvuggwvvvuVufVUTVfgeuVVgwuvdffVgfeffedffVeUVcvVFwfvVvVfVvvgvVffgvggfVvfWfvwfgwwvvgwwwgvwvvwvvvwvuggVggfuvfggvvuvgfwwgwvvuwwvvvwvvfgwfwffvuVfFVVVuvfgguvtufehfvVffgugvfgfffufgfVWfvVuv6ffVVVVgduUWfUefUuVVfueeufUguufehefheewwwfwvfwtVwfwufugfgggwvfuWvWwvvvggwgwvvvgVfevfvfuffgvVvvwwfVwfFfUeeUVUvTgtWWwVvUegfgwgfvvwWvwgwvgfgvwvufwWwvvwwwvwwwvwwgwvWwvvgvWffguggwfwefhwwwgvvwvwwwgwwgggvwfgeVgefWuFVvUguVfwUwdfXvgvfvgwwwwgggwvvgwwugfwVwf6gvvgvgVfeffvffeffgwfwVehVxffhffgeUfwwwggwgwefwgwfwfgffefffvTggGuVffgwfffwffeeUUVVeEUVUfUVeffVfVfVFceEfDVtUde4fVdFdEWUffVeefeVfeVffffVfffvUfgWuWfffvffvwvggWugVdwUgTVveufEvWuFeVWegwVfefffvvfgfffVgeVfeVFdfTfCEuUeeDfFe6dUWTffVVevffffffffefwffUfWeFeU'UwUgUVtUuUfeUVuEUUuWuVeUWEWueWVTWUUUffggwfgfuggggvfvgfgwvwggVfvvuvfwgwwwwvwfVfWVffeeUVgvuvfgvgvfvgeedfUVVvdVVVGfveueWfVffffeffvfffgffffVgwWgwwuvfgwwwwwvgfgwvvvvugfVfvefggWvvuvhfgwwvvfwvwwwwwwfghfgffefffVgGVfDffffvevtUgfvwvffvfgwvgfwvefgggVgefuteg6fWVVVvefGUuVfuVefVveueehfutegeVWefefgvwvwwwwvvwfwffeufwfvwgfVufwUxwxvwwwgfgfvfffwwfffgguvvWVfffgffeUVvfffUefvWuwgwfffvwwwwgggevWfgWfvgfdwggvwwfwwxwwwwwwwwvfwwffgvgefvwgvgfffgwvghvgwvfwgwwgwwvgfUefffffffVuVevwfvwfwUgffwvgvgwvfwgfwwgwfWffgfvfweffGwfvfvfeuVuffvfffgvwfvfgffwUhfwhffwfwxwwgwggwVwwwvfffwhwwwvvxxwwxxwwxwxwxwwwwwwvvwwwVvvwwgwxwwwwxxwwwxwwwwwwwwxwwxxxwwfwwxxgwxwxxxxxxwwxwwvvwwggwxwgfwgwwxwxwgwxwwwxxwxxvwffwfgfwfvwwwwwwwgvwvvvfgwwxxxwxwwwwxxxxwegefWEUUffgwWwwdfVUevfG4UTUVVfFffcVVTTeffUUTUUUEUD#EUUeefFfvUUfggefWUffvGUUefFUUUffVvVgvfgfwgeevVfffwvgvvgufVfEWudegffVfguvgfvwvVgggfVVfVVedfvVfEuffeUEfEVedeVfeUfFuefvVffVVVfVEFUUVedeefgWgeufuVGVfVgUgdefVVdeUee5EufvfvVffUuegwEWVeffufffFVWfvEVVVfcEVWvgfffgfgwvgwwffwwwVTeeeefvfwFeWeffufVVfTfefVfD6edefVffvVfegvVvgfgvwvVefefedeWggvvgvwvwvwggwvgfggwgwuwwvwffXvvewwvwwgwvgwvwwwgwxwwegwgffewwvVutwfVfWeGeefggfgvVveWgwvwwgvwwfVefvfuffwvfhgfvfgWvwgfhvuvfWvfeeveFegggeggWewggWgvevwfvwwWgvwggVfwgdefxvwwgwfwuvfxxewffvwvVUedVffggvfevfeVfVWvuVfffeeFGdVUeffffvvfgffvwgwgwgfefgffVfeVufgvwvwwxgxvwwwgwxvvfwwwgwWhvfwfwvgggvggvvvwwwwwgvfwgggwvwgftUfefVVFgeVeegfgvfuVfuWwwgfVggWVffwfVfegvhhvuVvfWuggwggvfwVgfffvTveVvwwfgwgtUgvgWugfugwvwwgggfvfffwgfevxvwwugfwvvwwwvwwwvwwwwvwvwwwwwvwwwvgvvfgfvfwwwwWvevwXwwvwgefgwxwwuwwwwvfgvvevwgwvgvwvwxwwwvvvwwwwvwwwwfwfvwhxgwvgwwvwvxxwvwxxfgffwgvwgvVewhwwwxwvfvwvwwwwvwwwxffwgwwwgFfffwfwwfwwwwwwgvwwvfgvvhfwwxgvwgggwwxhvwxhfgwxvUwvwwVffffgfgwvuwgffgggDTUFUeeVgvdfVUvggfeVfeWUdfe4dfUUgUefffefVVvwffvffEfegffUUeVfeffVfffgwwvvffgwwwXvvgfffwVfveefffgwgwwWffxvgwfwVeVgggfefvff6TfeVeUfTffeeefeWfVfffVvwvfgggfUfgVffevfvwefGUgvfGTgffffVeeffVeeTVUdgfhevgeWfvgefWeUFfvfwwwgVwvVfUfffEvgwwvvgWwwwxwwwfWwwxxggwfwwwwwwvwvwwgwgfgfuvvggvufvguggwvvWfvvwwvgwwxwgvwgwugvwwvWgwwxwwgwgwgwwwwfwgwvgvgwhwggwwwxgxwwwvwvgwwfgVvvvwggfgvVvghwvgWvfwxwgwwwwfwwxwvWwwwvwfvtggffggwwwwwggvvwvggwwfwxwxgvvhfvgwwgwwxxvfwwgvwwwwgvfwgwvxwwgxwgwwvvgfgvwwgvvwgwfgvfVgwuvggfwvuuvwgffefghgwvgWwwgggwvwuuvgwghwvwwwgxwxvggwwwgwvwxhwvfvwwwwwwhxgwwwwvwwhuVfgwvwggvvvuvvwWwwVfwwgwwwgwxwwgwwwwvuvgvgvffgtgffvwggvvvwvwvvgvgfgfwwvwxgwfvwwwvfwwwwwwwggwxgfgwxvfwhwwwvwxhvvwvwvwwwhgwwgwwwwwwgwwwwwwvvfegevwuwffwvegwgwwgvwwwwwwgwwwwwvvfwvegwvWxgwvxwxwwwfwgwvwvwvwwwwwvxwxwgwxxwwxwwwxxvgwfgfvvwvwwgvwvfgwwvxVfwxvxwwgwwwwgwwwguVxvgffvffdgwfwgggwwvvffvggwwwwxgvxxgfgxxxwgxghvwxfweWgwgeffvfgfuwfffggvwVdeeUVgftuveeUvwVgfeVdfeVV4VfefVVfffffvvfwvVffwgfgVffevffgvfwvvVfwwffvwvVfwwggwwfgwvgVwVfvfvvgvfvwwfgvvggwvwxwWfvvvggvfgfUfVfegVgVfffeffufvffTffeVWfffgfVVVffVgvvwfVwfUufVegVgffuvVEgffVduVUffvvgVgfgvUwgfgvUffvVggwvwwwEWVefgwfvvgggvfwfwwwggwgwwwwgUVvtfvgWgvWvfgwgggfVfeffeeGVffVfggffvugVfgggfgwgfWVgvefgvgwgwgffwwgwwwgwfwgggwgvwxvfXwgfwvgwwgvwggvwgwfwwxwxwgwvfwwwwfUveffueGeeffgwvvfwvfVfwggWfwgwggfvvfWggvwgfhwvgffgwfXggvvueXvwvfevfffvuwgfggfgggggWevvfgWvgwfwgWgfVfwgfhgwvwffvgfwwwwwvvgwfgUutVVfgvwfvvwggwfgvtVfefUgeeegfvVggvgfvfvgwvvgfwggfwggewVwwvvfvvgvwwgwvwvwgwwwwfwvxghfwwvgvfvwwfvwfvwvwwwwxwxvwwgvwxwwgftVfefVfeVffevffgufvefegffwgWgfgvwfgegggwwWhvwvVgwgfhfgwewfXvfgvVffffufvvVvgggvgfugVfwwgvfvvwwggvgfUwgvwwvwwhxxwxwxwxvfvggwwvwwvvgwwwwvefVgwhVfvxgvxuefVwhgwwwwxxxfwxxwvwxxwxvxxwvggxxwwvwvwvwgwwxwvxxwwwwxvevVWgffuwffwvvvwVxhfwxuwwwfffwxwwwgvwGfgffwgffvfvvwfwwfwwwvvgwvxvvwwwwvxfxgxvwxxhwxgwxUgwwvvfeggVvfwggvwwvfwgTUVFVeeugWefwgeVggvWfVVffVeeVfffuevgfVffeVVfffefgffffVdVgvggeffVfffwwxffwvfwgvwWfggwffegvfvvvwgfVwvgffvgwvwxwwwvfffwwfge6TfeVfTVfeefVffefffVvfeffvwffgvvvvgffgvfwwevhfGUfffvefffwVvUeeefgEeUegfgfvgegvvwUeWTfVvgfgewvwwwggffUwvvwwwvhhxxwgwwwxwffgwwwwgwwwwwvvgwhveffwvgeeWwWvvgeWvhuxgwwwxWwvgwfwxwwvxxgwxxvwxwvvwhwvgwgwxvgxxfwwwwxwxwxgvwwwvfVfwvWfvVwvWvgguWuvfgxxxgwgwwWfxwgxwvvvwtfvfwvffwgwhfgfgvvwvvhvgvxwvgwvvgfwwvhwvwxhxghxwxwghwxwxwwxxxhfvggwwwwwwwwwvfxggWgfvwvfevWwufxhWVwwvfWwggwxwvhWxgwwxwhwhxvwvxwhxwxwxggwvgwgwwwwggwwggxxxwxwxxhxvwwxwhgVVvwvefvWwvggWWgwuwgggwwwgevxgvwgvgvvtvfggfwvhvggfwvvvwfxfgwvxggvgfwvhwhgxwgwxxwxhwwxwwvwgwxxxxvfhggwvvvwwwgwvwwwufffwxUvfwWwffvxWfwgvgfvxgwwxwxXxvfwwwxvwwgxwxwxxxvwwwfwxgwvgvwxxwwwwxgwwxufVfwVffgvvuwXefvvghvxhwwxxxWvgxhgffwftwvwgfwgxgvfffwgwfwwvgxvwgwgwwwwwxvwvfwhgwhwvwgfeVvfwwgxvwgVvfwVVSfugvggwwfwVfeEVfffVffVfUVTUeVdvffwwfefwfvvffuwwgfevgVeVdegfeevfwwgxvwgefggwwwgwwxwgffwwffwwwvgwgwvwvwwwxgwvwvgwwfwffVefefVfVEEeVefggwweffwfffWfvwwgefvgFeVuVvwgxwwffegvwfwwwwwgeffvfffvvgwwwvwxwwwffeffwwwvwwwwgvVffffffuvvwwwwwwxwwxxwwwwwvfwvvvgggfwxvfwfWfwWVvwggWUwfwgwwwgwfgvgwwgwwwfwwewvwvfwvfwwwxhxxwxxgwgvwxgwxxxvwgwwwvwwwwxvwwwwxxgWvggwhevvwwwwwwwfvgvhgxwvwwwwvgwwwwvgwfvvgvwvgfwxfwwwvwgfffvvvwwwwwwxxwwgwwhgfxxwgwwxxwhVfwxvwgxgxxwxvwxwgwwwvxwggwwwwffwfgvwgvwvWgwevvwwwfWwgwfggfwgvuwwvwwwhxwggffwwwwgvwxwwxwwwwwxwwwwwwwvxwxvxxwvwvwwwwwxxwwxxwvwwxfuvwwwgfwgwvwwwwguvuvgwgwggvwvwgwwwwwwwggwwxwvvgfgugwwxxvxgwfvgfvvggwwvfxxvwgwhgvgwxwhwgfwwwgwxwwxxwxwwwxwwwgwgvvwwgwwwwxvggggvwxwvXvgwvwwwwfwfwwvxwxwwwxgwxwfwwwwwwwwwwwxxwxxxwxwwgwwxhwxwgWxvwwfgvgwvwwwfwfgxwwwwxwwgwvxwwfwwgwvwwghwwxxxwwgwwwwwvgxwxwwgywfxggxxwwxghwvxwwvxfxwwgwwwwxwwxwgwwwvhwfwfgfgvggfwfgvfgvwwvwVwvvguwwwwggvwhwwwwgwwwVgwugwvwvwwwvwxwxwwxwwvwwvhxgwwvxxwxhvgwxwwwxwfxwwvxwwvWvwgwvfggwguwwwwhvWvwWgwwwvwwwfwvwwvvgwwxgvwvwhfwfxvgvgvgfwvhxwwwgvwhwfhwvxwwwwwwwhfgvgwvxhwxwwxwwxwwwwwwwwfvvwgfwvvfwvfWgwfvwwggWgwwwvwgwvvuwvwwwwwwfwwvgWvwvwwwggwwvgwxwvwwwwvgxgxwhxwxvwwwwwhwxwwgwwxwvxWvuvwwggggwgvvvxwvevvggfwggwwWwvwwwwwfwxwwvvvwgfwwxwxwfvvuvvffgwvwwxwxwfxgwgfgvvxwghggwwwgxxvxwwxvxwwwggwfwvfwfgfxgwvfvwgVgfgVwxgwguwvwwwwwfwfvgwwwwwwwwgvgxfgwgvwwwwwwwwwxxwwwgwwwwgxwhwwxwxhwwgwwxxxxwwwxxwxUwUwggvgugvwgwxggfwVgwgwgwwwwgvgvwwvvgvgfwgvwffvgffxvwwwxvgggvgwvwwvwwxwgwwxwggefvxwxxwxhfgvwvwwwfxfvwwvgvgwwvxvwxwwwxwwxwxwvwefvwwWfggwxwfwwgeffwxwgwxwwxwVfwwwxxwwfxgfwfxghwwwwgxgvwfgvwwgvwwwwfwwwfggwgwwwwwwfgwwxvgVgvwwfuvvwxwfwgVfVvwwgwwxwwxwgfwwxxwwwgfeffwgvwvfvwwvgwgvwfwwwwwwwggwwwwfgwfwwggvvxxxhxggwvwwfvwwgfeegVfffVfxwwwwwwVUTdfEVVUEVWffggfvfVEcfVcVeVfUfUeeUffvefUffVeefWefewgvvgvwgwvgvfwgwvvgvgvvvwwvwwgwfwWwggufwfxgvwvfWwwWufgfvuwgwgfwgggwffueEtfVfVguufgegfvfeeWgfVefGeefwWgfWffgvwwfgfufuVWfWFgVWvevggtufuvFVvfvfVggwvVggVggdVwvEWVVggefwwwgwgvffwwfefgVfwWffvfwwwwweTUefegFUUvfffgffffUedVeSEUVfeeUeUFefgfVWggEVVgeUVgwefvvfgfgfefggvgWfffvwwwwwwgwvWvdgfwgvufvvgfgvggggggfwgfeVxfgvwhwgvfUfeFecVUfVedUeeVgvwffgwgVVfWedegwegvvgwfwwvgffvfVgvVWehvvewguuevveFVWefgWvwfggggWgevwVWWvhWvTfwwgvwggfvxgwfvgvfgwfgvxgwwwwvfTeefVffeffgWvggfgfftUduUfffffVfdVgffvffguWgUvgfffwgvvvwgffvfvwvgwwfgvxwwwvwfvfgwwwwfwufwgwggwvvwfuvwgffggwwwvwgvftfutEVVeVfUvdVgfvvveffgVefwgVfvwgfvfwwfWvwwwufvfVugWWexvUgvgffwefwVVeufVgvgwfVvgfvgeewwfvVwvgVewwgvwwuwVggFgvvvvggwggwvvfwwfVfwgwwwwwwxhwwwwggfvuefwwvffvgfVfgwgwgvwwwwfwwwwwwwwwwgwvgxfvwwwwwwwwwgffwwxwwwfwhhxwxvwvwugvxwwwxwvgwvvvvxuwfvxggggXwxgwwxwxfvwxwwvwxvdwvwfwgfwgfwfwufvvxvvwfvwwvvvvggwgwhgxhvwxvwxgxxwwwxxwwwvvxwwgfvgfvwvgwwgwxwggWEUVfUeeTUewfvwfVVvUVTeWefevfVfeegVeffefgfEVeffVfetwvffeggfffVvfvvwveffwwwwwwwwhvwXvwvwvgveffwvvfwfgfffvfgwevwgfwfwxwwffFff6TVeeffffUffvgwfffgffeufffVuwwwffvgwgvwfwWfWffWewTuefvDvvgwVuwVfetWfhvvgegwwwffgewVgvvgUvfeeFwwwwfwwvggfwhvwvhwvgvwwwwwfgwwwwwwwwwwwvvwgwfVgvUgvxwWwvgvvfvwvwvgwgwgwggvgfwwwwwwwwfxwwvwwvxwgwwxwfwwgfuwwgwwxwwgwwwxgwWwgwhfgwwwwwfffwfgwxgwvggvfwvwwvgwgwvgvwxxwxwFwgvvwgfwwvwVgvfvwwwvwvwxwwwwgwwwhvwwxwwgwvwwxwvvgwwxxxvvgvwvwvxwwgwwwwwwwgvwvwvwwwgffWfgxgwgwvvvfvwvwwgggvwggwvuvwwwwxwwghwxwwvwxwwwwgvwvfwvxwxwwwwgwwvgwhwvvwwwwxxwgwfffgggggwgvvvwwwwhwwwgwvvvwwwxxxwvWggvwgwfgvwggfgvwwvwwfwfgvwwwwwwwwxxwxwwwggwxxxfxxwxxwwvvvgvwgwxwvwwuvwvwwwgvwfvwwwwwwwwvgvwggwgffwvgwfvuVfffwwvgvgguwgwwgvvwvwwwwwwwUwwwvwvwwwwwwwxwwwwgvvfxwxwwfwwxwxwwwvwwhwvwwwxwwgfgfufwwwwgwugVfvwwwxgxwxwgwfwxwwwvxWwFvwwvwwVvvffgwvgxgwvghfuggfwgwxxwvgwwwwwwhxwwwxvxwhwwgwgwvxwwxxwGeewfVeVgvgwwwwVfwuVUvgfvgvffvguwggvffffvVvwvwwwgvgvfwwvvvvgwwvgwgwwwwxwwwwwwwwwwxwwgxwgfwwwwwwfwfvwwgwfwwwwvwwwwvfevgvgwggWvgvgwwvwgvewffwwwwwwwwwwwhwgwgwwfxgwvxwvxwwgwggwwwvwgvwxxwwvwwvwwgwwfvffwwwgfgwvwwwwwvfwxwxwvwgwwgwwgvwxwfeefwfgVffVefgffuVvgDegffVwfwwfgwwwfuggwgVwewvgVvevuwvgwwwwxxhgwwwvwxwwwwxVfwwwfwwwwwwxwwgwwvwwwwwwwwwxvfgEvfvwUwfvfvwwwhvwgwgfwewvwffwvwwwffwvgvwwghewVvefvfwvuwwfwvhwwwwxxwwggxhugxxXgfxhwwxwvgvwxxgwgxwgwwwwwxgxwxffggwggfuvfgwgggggvvVvvwwgWwuwgehwwwuvhwwUfXWwvwgwwwuvwxxxwxwwwwwxywwxwwwwwxxwvwxvxwvwwggwwwwwxwwxggvvguvgxhgxuvwfhwwwuwwwgfvWWwvggwvwvvwgwwwvvvvwwwfghfgfggxvxvghgwwgwwxvgwggwfvgxffhgwwvWwghgvwggwwgwwfwwwwvefvwvfgfwWhfwwwfgveegfwfuGvuwWvfwggwvgwgvhvWwwgvwwwuwggwwwxxwwwgxwxvxxvwwxhxxwwxwwwwwgxfwwwwwxvWweVwfvguXvuwgwgwwgwvhwgvwvWwwvgwwwvwwwvvggxfwwghwvhuggvhwwgvhvvfwwgxWxvwwgxwhvwxhWhfwwgwwwfvgwwwwwwvwvwwwwwfgfvwfffgvvUhffffggvfguffwUwwtwvfwvvgvwgwwfwVwvffgffwtwwwwwwwwwwwwvwwwwwxwhvxwfxwuwgxxwhwwwwwfwvvwgvgvwuwwwggufgwfwUwwuwvvwwwguwgwvfwfwuwfgfwwuwwwvgghvgvghgfwUwvefxvgfVwfhwvwxwgwxxghwxWwxwfWgxwhwwwvWxwxxwwwxxgxxgwwgxhwxwgfvgwggVfffgWggffvvfuvuggfWwwuVgggwvvugggWggFgfvgvewwegwxhwxwggwwwxgwwwwwwwwwxwxgxvwxxwxwwxxgwwVxgwwwwvwvvvuvuhwhXwvvfggwwvgxgggfGwvggwfvfwwfwwvvfhwgggWfvvghwvwvuhwwvwxwwwxgxwhvvwhXgWwxgwwvgxwwxgwwwwwxwxwgfvwfwfwfwVhvgggWfwVfwVwwgwwfvhwwwwfwwgwfugwwvwwwwwwuwwxwwwwwxxwxhwxgwwgwwwxwwwwwwxwwwwwxxxvggwVVwVwwguwwvvgvwwfgwgwfvgwvgwwvwwgggwgxfwfwggvgufgwgxxwvwfgvwxvwvxxwwwwwfwhhwgwxwgxfwgwfgfggwvvvWffvWggwvwvfgwwvwgvwwgvwwwwwgfeefdewwfvvwvvggvwWfuxwhvfEVwwwwwvgvvwvwwUgwwvewfuggfvwwggVgfVfefggfvwwwfwwewggvxXwgVfwwfwwvwwwwxwgfVffevxweewwwwffvwgVvwwgvgUewwwwwvgvxwwwGegvffvvgfvfgeVevfffxwegefwgwffvwwwfxgfghvvxgVVwwxwgxwwvwwheffVgwgvffwgxvwGDgfVwfguffggvwgVevWVfgEVffffUfVufvvwfvVvwfgfvfVfVegvvguvwwffefffwgwufffwxwgxwwhffwwwwgwvvvwwgwvwwfgwwgwwvgwwwvxwwwgffgeTeVVfVefugfvfwfgewvfgffWefUvfvwvwggfxwwwwffwwwgwfeVfvwwgfwwffxwfvfwwwwwvwwgwxwfvfwwwVewwgwvgvvgwxwwxxwwwwwwwvgvggfwwwhgwwvgwVgvWgwwewwwwwvfwgwxvhwxwwwxwwwgxvxvwwwwxwwwwwwwwxxwvfwwxxxxwxxwwfgvgfwwewwxwwwwwxggwxxwgwwxwwwvwxwwwwwwvghwwhwwfwwwwvvwwwwwxgwxhwwxwgvwwvxxxxxwwxgxxwggwwwxwgwwgvgwwggwgggxhwvvvwwggwwvwggwgvwwgwxggwwwwwhwhwwgwxxwxwwwwwxxxwwwwwxxxwxhhvwwxwxhxwxwxxwxxvvwwwvhgwxwvvfgwxuvvwwxhhwwwwwwwvvwvwxwwwxwwvfwwwwwwwwwwxxfwwxhxwwwvwwwwfwhxxwwwgwxxxxXwxggwgwwxwwwxwgwwgvfgvwvvwwwgwvxwwgWwufwfvWwgvvgvvwgvwgfxggwwwwwwwwvwwwwggvwwwwwwxwvxvwwxhwhxxxwwwxghxxwxwvwxwwgVwvfwvuWvwvvgfvxgxvwwgwwwgwwwwwwwwfxwwwgwwhwfxffxgwwwwvgvhwfwwwwwwgggxwwggxvgwhgxxvgxxxwgwvwwwwwwxxxvwgvwwwwwwwwwwwwgvggvgfwfxwwvgvvhvwewwwwuwgfwVvwwwWwwVggwwwgwgwvwwwwwwwxwwgwgwwwwwwhgvgvgwvxewwwxwgVwfwvgwxwvwwxwhvguwgwfwwwwuwwewgewgwggwfvvvwwwwwwuwwwwwgwfvgvhwhwgfwhvfxvwhvgvxvhwhwhwwwwhxwhgxxwwwwwxhwxxxxxwwwwwwwxxxwvfwwwvvvggwwxhwggxvvwvwwgwxvgvghwvuxwwfwxgwwwwwgxwwxwvwwxhgxwvgwwxwwwwwwwwxwhxwxxhhxwxxwwwxwwxxfwvvwwghwwwvvggvwvxwvwgwwxwwwwwvwwgwwwwvwhfwwxwwwwwhhwwfwwhxwwwwwxgwwgxgwwwwwxwwwvxwwxxxwwxxxwwwgfwvfwwwgxvwxvggvwVfwgwgvxwwwwwgwgwgwxwxwwxwvxwwwwwxwwwxwwwwwwxfwxvxxxwwwxxxxwXuwVvwgwgvwwvwwwwwxgvxxgxgvxwwwgvwwvwwvwwwvgxwgwwwgvwwxwwxxwwwfxgwvxwgxwxxvwwxwxxxwgwwVuxUwwgwwgwwgwwwwwwwwxwwwwgufvuvfVfgwwxwgfgeevwxxWfwwxgwwgwxwUvVvwWwwwwwwvwxvvgfffffwwwxggfffvwgfvxwwwwgfVvegWfvwvwxwWwfeVvgwvgvfwwwxwxwdgggffvfwgfvvffwwwvffwgxwwwwgvwwwgfvfgxgwgvwwwxwxxvxxwwghwwwgvwxxgxwwhvvVgveVeVfgVhvvwwwggfvgggfgfwwwwfwwvfvwwwheWvwfwgwwgvwwwwwwwwwwvvwxwwxwwxxwxxwxwwwwxwwwwxxxwwwwwwwwfvvwgwfwvvxwwwwgwgwvwgfguvwwvfghffgwwwwxwxwwwfxfhvvwwhgvwxxxxwwxxwxwwxfggwvwxwvxwxxxwxxwwwwfVwgwggfvgxghwxwwwwvgwggwvxwxwwwwwfwwwwfgvvvwwwwwwvwvxwgxhwwwwwxwxwxwwwxxwwxwxxxwwxwxwwfwwwwwhwwwxwwwwxwhwxffwvvwhwwvwwwwxwxxwxwgwvvxgxwxxxwxxxwwxvxxxgwwwwhhwwxxwhgxwwwxxxwwgfewgwvggwhfhwgwwwwgwgxwgxwwvvxwwwwxwwwhfvfwwxwwwwvwwwxwxwxxxxxwyxxxwwxwxwxwxwwvxvwwwhgwfxwwwwwwwxwwwxggvfwvwwggwvwwvwxxxhxxgwwfwwwvwhwwxxxxgxwwxwvwwwxwxxwhwvxxwwwwwwwwwwhxwwwwwxwwgwwwxgwVfXvwgvwwxvwfwwfhwxxgwwwwwwwvwwwwwwwwwwxwwwgwwwwwwwvwxhvwhwwxgwwwxxhwxwwxxwwwxwwfgwhwvhvwwxxfwwfhwxwhfwgwgwwvwwwwwwwwgvwgvwvwfxvwgwgwgwgwwwgwwwvwwwvwxvwhvvvxwwwhfxxwwwwwgwwxwxgxwwxwwfvegfgVVhVfevwffwgwgggwwwfwfwvwwwwvwhvvwwxfvwVvgwgwffvwvwvwwxxfxgwwvwwxxwwxxxwwxwwwxxwgwxxwwxwwwwwggggfgwwffggwwwfwgwwgwwwVfwguvwggvwgvwwfwxwxgwfwwfwxwwfvxhwxwwxwwgxwxxvgfxwxxwxxgwgvhwwwwwwwwwgwwwwwhwwvwwggvgWvvfvvvhvfvuWgfgWvgwgwxfgwvuwvwwwWgggfgfgWvwwwgwgwwgwwvwwgwfWwvvwvwxwvvvWffggwwwhxxfgxvwwvwwxWwgffgvggwwwxwgwwevWvfggwwwhwUwwvvvxwwgwwgvggggwwxwwhwwxffggvgwwfwfvfvwgwgvvgwwxwvgvvxwxvvxwxwvxxhffxwhgvwwhfxwgvgxvwvwwgggWgwvwvwwwwxwvwfgwVggvvvvvVfwvegvvgwwvWvwgwvwvwxwuwwfgwfgxwwwvwxwwwwwwwwwgwwwwwwWgwvfgfvgwwwghewgwwwvwwvhgffggwgwwxgwwxwWfguvgfvWwgwxggeggwuguwwwvggfggfwgwwwgwgwwgwfvwfgvxggfgvfvwvwwvwwwwwvffxwhvvxwxgfxvfxwxwfgwxgwxxwgvwhwwwwwwwwwvwwwwwwwwwwwwwwwvwwvwfvwfgwxgwxfwfxvwvwwgwwwvwwvxgwwwwwxwwxwwwwwwwwvwgwwxxwxgwwwhwwwwwxxxwwUvwfvwggwxwgfwwxvwwfwwwwwwwxgwxwwxxwwwgwgvgxggwgwvxwvwvvwwxwwfgxggwxxghxhwwxxwwwwxwgwfVffwwwgefvgwwwgvwgvvwwwfwwVdvfeVUeVfffeefffgffguwfvffggffVwfVfvgfvwffffwVVgffvfVewgegeVegVvWTfegvfvvwfwgggfvwgfvwwwffVwgUfvwwvwVvggvFefVvvWfvwfuwwvgfffgvffgfgVVfuffEgVfffvfUeffVevf5VuwgwffwwUfgwgwvWfewwGefVfvWUvgfwwfggwgfffVfgVTwwUggggvUUefgEeUefwwvgwwwVfffvgggevffvffefgwWfdgfeUUfVffVVfvvvwwwfwwvvvvwffVvfffVwgvwvvffffeWfffffUvwegwgvugvvffwgfvfgwgvwwwffvvvfvwwwgfvwVgVvwwvwufvwgdfeeevUVVVfuVvvTVegfvfvfWVVfvfeftUffffvVfVVfVfvV6UvwvgVvgWfVwfvwvuvvwvdfeewvVfwgwwggVfgffffggVVtwWgfvfgWeUgWFeUUegwggvgwwgvgfvwwgfwwwfwugggvvfVwvfWffgffevvffwwwwwwwwfwfvVvWvgVfgVvefvgfvffvuevffffuxggvvvVwgWgewffVvvffwwwgfvvwewvwwwffwwgfWwwgwwfvwgUvvfwfVvveVwugGfUwfffvgguffvgefdgfvwffVVgUgVffVf6ewvwVfgwVfWwvfvwewvvgdfuewfWvfvvwWfggwfffWvgeEvgFfVWugeVVuWeVfUvwwwwxxwwwwwwwwwwwwfxvwwwxwvwwfwwwwfwwfwxxgwgwwwwfwwxwwxwggwgvwvgwvwvwvvvwwwgvwgwwwwvgwwwvwwwwxxfgvgvggwgUwfgvwwfgeggvwgwwvwgwwvwwgVvwwwwwwwwfwwwvvwgvvvgfvVuwwwwxwxwfwwwfvwgvxwfgfgVuxgvwwwwgwwgvwgwgwwVwwwVfvgwwVwfgfEfVwwgwfvgwwwvffwwwwwwwwwffwwfvvfewgfgevffVfvfvfwwwfvvwwwfufWfugvVfvVfffvwffVgvVWfgffVvwxfvvVewWvgTvegffvvffwvwgfvwwwVvgwgefvwvfUgwgvwwVfggfFuwVvfuvgewgvwUfgefvwfwffgeEffwUvggefffVevfeffVswwwffwwwfVwwwvwwfvwggUvxfffuvwgwwgefgfffwfeVTgvvWUwWefUffTVeVevwwwfwxwxxwwfwwfwwwwwgwwwwwwgwxhxxwwwwwwwwxgxxwhwwwwwwwgwfwvvxwwwgwggwwgwwwgwgwgwgwwwwvvwwwwgwwwwwwwwwwfwwfgwWuwfwffgvvgwfgwvvwwvwwhwwwwwwwwwfwgggwvWuwggfvwgwxwwfxhvhvvvwwfwfwgvvUwVfwgvvhwgvwwwvwxwvwwwvgwuwwvfvwvgvufeVfdwuwgfxwwxwxxwhwvwwgfwwvwxgwwwwwwvwwxwxwgvvxwxfwgwwxwwwwwgwxwwwgwwwwwxwfvgwwvwvwwwwwxwwwwwwwwwxfwfgwxgvwwvvwggwwwwxvwfvwgvwwvwwgwwwwwggwwwwgwuvxwvwxwwwxwxfgwwwwvvwvvwvwwwwxxwwwwxvwwgwugwxwwwwvvgwfvvVgxwwfgxxwwwwwvvvxwfgwwvwwwwwvwwgxwwwwvvwfwxwxxwgwwwwwwvxwwwwgwwwwxwgvvwwwwvvgvwxwwwwwwwwwwwwxwxwhggvvwwwwvwwvvwwwgvfvwwwvwwfxwwwwwvwggwxwwgvwwvvwexwxfwxwxwhggwfwwwwwggwwvgxvxwwxgwwwhwwxwwwewwxfvwvvfwwwwVfwfwwwwwwwggfwgggvvwfwgvvxxwfvvvwvffegfVfugvfwvfWvfggwgvffVTEeeUVeVfeggvgVVUVeUfVUVewwwhevwwwwffvfggwvgvfxffgvwwwwgwwwfeVvfvwfgwvwgwggffffVfWVeuvwwwwgwvgggffwwwefffVfEgwwwwwfffVffefUUVwwgfVvvvwfwwvxgwwgffffVvfVUufgvwvwfffUeVeeVTTvgfffegfUVTeU4TTEuwffwwwwgvghfwwfvvwwwgUwwevggfgvwfgwfwvwfvwfwfUvwwwwwgWffvggfwwfgwwgvVgvVffvfgwffggffwgvgUwfgffvgvgvwgfwwfvvgwwwfgfffwvvwfwvggUVevgeVvewwUuggfffwVwffffwfvgfeffwUwfggwvfvgfftfffwvwwvgWefgwgwwfwvwgffwfVffvffvgfvvwwgffVfeVeguVeffgffVhvgVUFffvffgWVwVfvvfgwwwwffVVwwvggUGwffugvWgVfffuvfgwvwwfvVEwvvwwwgWgvewfvwwgfwwwWefgfffuefgVVVwvffvuvFWfWVffefffggefVVvwwgvvVWVffvfgvwVgwvgFVfffeVvfgwfutvvuVWVGgVuugWgeeefffWgWggwfwgfVvfcvfVvwwgfgetfegvwgVfgvWVffffeuUVfwgvufggeuvvvfDfvvfefwgfegfedgefefwwwvgwvwggvfwwwgwvvggwwvgvXwWwvgwfvWvgffgvwgwwWgufVgwgggwvfWgfwfgwvvgwgwVVwgwfvfgvfvvggWvegweuGvWfUVvffwfgfvvggwgvwwffWvuwgwwvvWgwgeFwvgfefugFwuWwfuVvWevfwvWggVvfehfvWvggfvWfvUfsfVevwwuVFvufwgwvugvgweUfggVfgvvggvugwgevwwVeWvgWwufwffhvfWdWufgffggvUgggfveffvvgffvUwwfggvUwfVdwWufTfUWveeeffwvfUfeUgwfgfgfeVVdffffwvUgfggTfVffeUfvVVfUfeFdfFeeCfUFuUUTUVeeVUVeUfvffffVeUFdfgffffTffffCffeVuEeweUFcfVdfDfEVuUdvUgVeVfEWUvEwUguUfVVuEUuRUUUffVUVEcfVffffEffffDfffVtUewfffVuwgwUefffUWEvgWtfggeWVeWTWTfVUUfwgVWvfwwgfgvwxgwvVVwfwfgWWwvvuvvfgfegefwfgfgwgwfVWwfwwweWgfefvfvvfgwgvffffgfUefWffWVgwvvwvfGVVWvUfVffegwfvfWVwfgwwweWvuvgufwvWgwWvFVgfVuVdeGgvutwvegegWfVwggueevgXffWgggwfvfVefeffcVVfwfdFgedgeVvugWvgveUggVvUevWvgwvvwfgeueffWeevfeevVegevvfVcefeeewxvgxwwxwwxxgwggvwwvwhvwwfxwfvgfgvefvwwwwwwfwwfvwwvwgfxvgvwgghgfwwgffwgwffvVfwvgvwwwgffeWefvfvvfwwwwwvfgfvggvwwgfggfvwwwwwgvwvWUuggffvgwfwUwwfvffgvfgvwgfwfvfWfgvWvhvfvgwvffvgwdWfwwVVwfUwggwwfffgwgfewgwfvvhfgxgfwgggfvvggevwUfewwfgfWfVWEfwfvfvgwwxwxwwwwwxhwxwxvgwxwxwxwgvxxxwxwwwwgwwwwwvwxwxwwvfwwwwwgwwgwwwwxwxvvwxvxwxxwvxxwwwwwvvwwwwwfgwxwxwwwwxwwgvwwxwwfggxxxxwgfwxhwwwvwgexwwfvgwwxxwxwwvwwwwwwvwggwwwwgfwfVwwwwwgfvwwfwwwwffwwgwwwgWffufewffwwwwwwwfgfefffewwwffVUefffffvgffffffwwwwffgwwwwwwWffvwUUvffvwffffvwwwwgfffffwwggvwwwwgvgewwWTuwffgwwwwwwWffwwwwwwfwfxwgvgvguwwfffvgUUugfvwvwwfffwwwffwwwwgvguwwGUuwwffwwgwwefVwwgffwwefffffEUeffUUTUvwwfvxwwwhwxwfwwwwwwwfggwwgwwgwwwwgfwxvxwfwwwwwvwwxvwfwfwwgwfwwwwgwwggwwgwgfgvvvvwwfVvwwgvwwvwwwvwfgwwwwxwwwffgwgvwwwwvfvwwgewgwgvwwgggfvfevwfwwwgvwwwxvvwwvfvgguwwffwwwwwwwxwwwfwwwvwwgfvffwvwwVwgfxwwwgvvffxwwwwwwgfewgvVvgVfwwgugwvgfwvwwhwwggggwwwwwfgWwwwwwvvgvggwWuwxxwwggVwvwvvwwwxxxwwffvvwwgfwfvvgwwggefgvwfvguuggggfVvwhgfgVggwwvwggvvfvvwgwwwUWwfugwffvfvgwfgwwfvwffgWWWwGuvgggfwfugfgfgggwffWwtwgevfgvwwvvxxwvwfgvwvgwVWgevvgvfVwfvwxwwwvuwUwgwgwvvffehwwvvvwTgvffuwwwfggwwwwwwvwgvggvwwwwwfWgwfgwuvgugffwvgvgwvWwwwwwwxwgwvwvwfWgvwgweggvfwgwgvggffgfveVvtvWuVVvVvvfgefgvggfwwwgwwgwugwwvgeGfvwvwuWfvewwwwvWvvVwevgtWUvfwvggwfwufgvvWvgfvevgfsfVvffVwgvWwvwwwvguVgfwwwtWVvfwfwwvgvvwwwwgvefhvwwwfgffeguwwwgXegffugwwwgVwwvwwwwgwwvVwwvwwwwgfwxgvwWvvfwVgfvwwfvgwfwwwwwwgxwgvwwwgegwvgwgVwvfvgwgwvvffvgVvfGuwfwUWvVfgvgVvfvfgvvwwwwwwWvvgwvwvTggvgvwUfvVvwwwwfvfugWevVgEgvVuwVwgvgvggfwfwfgvVvVgvcfuffVvvwvguwwwvwvUgvvwwgEgufvwvwvfuwwwwwfvfhfwwwvgffegewwwwgfgUfewhwwfgWwgwxwxxwxxfWwvwwfwgfgwwwwwvvfwggwUwwhxwwxwggvvwwwwwwgxwwgfgvwgwfgwffwwwwgfVgfwgvvwuugWffwEgwghwvggggvegwwwwvvxwwvgWWwvwfggfvfewggfWwgvvvfvggWWVfvfWgvwvvgffgWggvfeggwwtffgffwvvvfgwwwWffvewggWWffwggggwvuwxwgfvvWuwwwwwvfvWtvvwgvehevfvvvwxgwwxwwgwwwwxwwwwwwgwwwgffwwwxwvwwwxwwwwwvhxwwgwwgwwgvvvwwwgfffwwvwfevwwvvwvwwvwwwwwwwgwwwfffwwwwgfewxxhvwvgwvvggfVfvxgwwwwgxwwwwvwfewgwxVfwgwwwvwxvwxvwvvwxhfVfwwgvwvwwwwwghffwwwwfwwhVfwwwfhefwfxfwxxxywwwwxxxxwxxwwwwwvwxxxwwwwwgxwxxwwvwxwwxwxwwwxwwwxwwxwwwwxwwxwvwwwxxxxwwxwwwVuefgvwwfvwuwwvvfvvgggfvfggffgvfgEgVWvvfvwUvwffgfwfgffwwwvwVwvgewfwvgwgVgfvfgvfwWueffVfVwffwVVTGefvVvwegwvvffvgwfwgvgvVwuvgfvwfgwgVWvvgffgffVgffvfgEgVWvuvvgvfufffwvwfgUguvggueeveWefvwgwvffgvfffffvwwgegvugwfgwWvvwgwwVeVggfffgwEuefwfgwvffWveeUfffgvggwwhvvgwgwgvfwwgefvfvwfvvwwfWeGvvvhugvwwvwffggwfwwvgvfvvfwuwwxxwfgfgwwfgwweffuvvffwwvvWUGfefgewgvwgvfffggfgxvgwfvvwwwfwgwwwUguvwvuvfffvvfvgveWeWuffgwggffeggwvgUgvvvwwvvffueVfgwwvggffvvwguwgwggfgufvuffgwvhwgwwWfewwgwgwwWvfffggggffgggeWefevvvhuwgxwfxwvvwfvxvgvfwvgvwwwwXhVhufwgxvfwwwvgwfwwfvgwwwVwhwwvwvgwfggfgwfffvwWeufefvvwvvWwFWuVwVvfewwvfffegwgvwwwwVvwfggfwwwwwVgvfvVvugggfffgvGgEgffgvwwwVufWvggwfXufwwxwfvgfgfVevwwwwffvggffgwwwwWgufwffwvgwgwwwwvufWvgVvfwgVguggvwwvgvweefuwgwxxxwxxwwgwxwxwwwxgwgwxwwwwwgwxxwxwwxxwxwwxwxgxwhgxwvwwgwxxwwwwxxwxxwxwwxxwwwxgwxwxvxxwwwwwvxwwwwwxwwwwwwwuwwxwwwxwxxwwwgwvxxwwwwwgxgwxxvwxwwwwvxgVfvfvhwVwgfwggwgfvgwWfgfgwfgvfgwVvTfweuVwffwwfwffwgwgvwfvvfgfvgVwfvvVxgefvfffevvGUeVffeVffffefCefUuEgfVwwvgVVvwgfvwWvvfVwvffvwffggfTuwfefeuwVgVVfggwUvTfwevgvvgegfvfegfwEvwUvfgeefvffUduffffVVgfVfwfvvgwvUvwffgevgfwgggwwwXewgevgewfWUgfTvWewfvWeVVUFfwwwxxhwwwwxfwwwwwwvwvwwgwxwxxwwxgwxwxwwwxxxxwwwwwwwwfwxvwwvgvwwwvVvxwwwxwwwwwwwxvwwwggxhwxwwggwgwgvwgwwwwxwvvggwgwxwwwwwwhwwgwwgvWwwwwvwggvgwwgwxxwxwxwfxwvgwwwxwwwxvxwwxxwwgewxvhwgwgvgwvwgwxwxxwxxgxwuwwxwwwwwwxxwwwxwwxxxwwxxxxwwwwwwwvvwwwwgvvgwwwvvwwxwvgwwxwwwwwwwwxvgxwwxwwwvwvxggwwvWfvwwxxwwwwwxgwwwwwwwWwvvgwfghwwwvwwxwxhfwwvvxwwwwxhhxxwwwwxgxxxwxgvwwfwwvwwxwxxwxwxwxwwxxwwwwfwwhxxwxxxvxxxxxwwwwwxwwxxxxxwgwwvgwxxxwwxxxwwwxhwxxhwvwxwgxwvvvwfvvwxwxxxwxwgwwWwwwwwwhwxxwwxwwxvgwwwwxwxwwwxxwwwxwwwxwwxwwwwwgwgfwgggewffvwvgvwgvggvgffVvwffeewvfwwvgfgggvwVfeuETffUeefUuvVefeUVVeevgfUewwwvwwwgwfwwgfvfwgfwwwhvgfvvwgwvfewwfwggfwWfgvggfffwwWUeegwvvggfvwgwvvgffVfwwVfEgfvwgUfuvWffufwfUewfvVewvfwggfvwWufvfgfffvwWUvffgweVVfveVUfwgEEgvTVUevfETfffCEUeugwUwwwxwvwggVufwfwvwwwgvfwugvggfggwfggffwwfgvwwfvwwwffwfwwvvfgefvffvwwggVwwgfvgvfvuWugWvgfwfffffwgfgvvwwwfvvwvUfvwvwgwvgfffwffvwwgfWvwgfffgvfgfwUwfwffvffefvgvgffwfgfvdfgUwgffgwvfwvffwfwggwvUefweevxwugfvvgVwffffgVewgffeuwwWfWefUefefhfgvffdfvgfvVWgfwwgwgfveuvgvvwgvwvWVgwvufVvggfggffvgfveewwwwgvWgVvgWxwvffffffgUevvfgfvfwgVgfVWfvutvvuggeWgfeefevuevfvfwgvFVFffGwffegeUeWgUuvvufgefwwVwvvvveuGWfggVuVgvwuevvfVhfVfggcfVgWefvfvWVVWgwgVwwwegFVVgWTvvwvffuVwgEgeevvfUWwggfegvwfveefSVfegeeVvVfevvvfvuWvvffVffVWvuVegffvwfvuWfWfdWvudVuWeuVVgffWweffgvgvwfeFfUvfffffdVuWVeegvfVffgvfveeeVUFfcVfddFeFUuEEUUVVfUVUVefvfeT6UUfffVffdFeFUuTffffffffgvVFfTVfecFdVTuUfefVfUwUUGefVuWUrUuGEuUVueUUedFfUefffgfcFdVEuUfffeffffguVeUvUUWdffffvgwwfWwDTWUVgUUeggfVfUggvwVxgwggvwwufefwuwwwgvwwfwwWvvgvwVwfgffvvgvgvwwvwwwggvevvgvwfvwVVvfgvfvwvgwwgwgwfgvfgvGuvguwUveWvffevfvgvfvfwvwgVgTgvVwwwgvfUuegVvwfggfgwgwvvVuvguvEwVgfugewgfgufhevVwfgvcvVgufufVfegUgfgwwgwwgEvVgevwvwvvwgfveeffuUgewgwwgwgwwgWuUgTfhfffwgfvgvgfVvWGgefvfgwgWudfvwwwvvvvVWfgvufevWfghveffgwgguuffwwwvwvgVWgwwwfvwUffgveVwwffgwwwfgfeVWfwudwudWVgWvUVVffVfeeffvvwwwvVGgfwwggefVVfVveUwwfffvfwVVggffwfeGVWgffvVfgeuvegfuwfggvfcgWvVffvfVeffVWfgggvfFVWgvVfwvffVgwfggfuuveFdvggvvgggvvffUgdfgefefwgfefvwvhwxwwwwvvfwvwwwwwvvxgvwwfvgfxgvgvfVvwwwgfxvwwwfwfwfwvwggfvfvffvhvwgwwggevwgfvwUvgfggvgvvffvwwvffgwvwwvvVgVeewwvwvggVffvgfvggvwgwvgvwwweffwVefvgffwfvwfwfwfevfgvwvtguffvgfwfeggvfvwwvwwWUugffvwwvvvgwwwfvfvfgVvvvggwvgwUfVgTewfVgfgwgwffevgwxwwxgwvwxwgwwxxwfxwxwxwxxwxwwwxwvxwwwwwgwwgfwwwwwxxwwwgwwgwwwwwfgxxwxxhvVwgvgfwwxwwxwwwgvwwgxwxwwwxwwwxxwwvgvvfwwxwwxxwvvxwxwwgwwwwgxwxwwxwxwgwxxxwwwwxwxxwwggwwghwvwwvwwwwwwgwwffwwvfvgfVxvvfhvwfwwfwxgwgwVffVfwffgwwUfVegvfWfvfwgvefwggwwffwwvfwwvfhvwfwwwwwwvwwxgvvgwwgwwxgwffhwvgwvwwgwfwwwvwvwfvgvVhwwffVgwfVvghwVUwggvvfUguvgvgwgvwgwwvwwgggehwvwwwwwhwfgwWefEuUVvffvvwfWgvwEvUgfUWvefffffgeVvwvwvxxvvgvwfgxwwwggvvwwfvwggewffXwvfvhwwgwwwwxwweffevgfvwgWVfUgfufVfwgvfvvgwvvwvgwwfguwffXvwgwvwgwxwwwwxxwfwgvwwwwwwwehfvwggwwvvwgwfvwwgfwvfhvwffegvgfvughgeWwgvvUWvvuvvfgwfvwvwgwwwwgvfhfvwgvwwwvvwwwefFueWgfefwvWVVwvGufffVVWgUVfWffgefwwwvwxgxwvgwvwwwwwwgwwwvwvvvfvfghvfwvxwwvwgvwwvvwwgffVveffgggeVfWeVweVfffvfgugggwwuwgvgvggxfgwfwwwvwwvwxwwwwWfwfwvvwgwxwfghfgwfgwvwwfwfgwfwvwgvwWxfgwgghffwvVgvgVgtwwfwVWuUwvfgvVvgxgwvvvhwwfgghvfxggwwwgggvwWufuVVugeffvgFuWwutEVefgugfeFefwvefvghvwgwgwwvxggwxwxWgwvfxxwgwvwvwgxxwuxwvvxxxhxwwwwxhwwfgvgwxgxwgguVwhfvfxvwfgwwwfwwgvwwWvwvgfwwwhwfwvwuwwwvxwufwgeffvvvwgvwvffgwgwfvwffdvvvwwgVvxvwvWwwggwwgwWwffgvxuvxvxfvwxvfxwfwfxggwgwvWwxwfffwffwvwgUgwwgfwgwwwwxwwvvvvwwgwwwwwgwwvwgvhffwvfvwffwwvwwvwgwwwWfffgVffwvfefuVuvfefefffweuwfggwhvwgvXvwwegwvwgwwvwwvwwwwwgwvvwghwxwvvvffvvvvvwwwfwwwuwvvhvvwfgwvfwVffwhfwgfvUuwwvfvEvwUvwffgevvWwggvwvwvfvwffwvwggwvvvVVfWevWTWfvgfvWewWGTfVdwWfVffVewgfVvgWhwgwxwwxwuwwgxwghgxvwwvwgwwgxgwxgvwxvxwwwgwwxwwhgvwfxvxwxwxwgghxvuvguvgggffwgvgwwwvwwvgwwxWgwwwvwwvWWgffvgvhwgwgvgvugvvgXfvhwgvvvgffgwwvFgvhwffguvgwgxVgwwgvvwwxhWwfwhXwwxwwwvvfwvwuvwwvvfxggfvUgwfffwfvwwwwwvhwgxxwwfwvwwxwxwvxxwwgwvhhfwwvwgwvwwwgwhvgwwxxwxxvwggwvvwwxwwwwxfvghguvwvuXgfvvewvfvwgvgwxWvWgvgwvgwxvffWwvvgwwwwwwwggfwvugggwwggwggvhhxwffGvvwVfwvvvfwwuWgfgvvwxwtgffvvvvgwvwfevwhvvvghgwwwwwwgweWggfVfwgxggwwwvxgwxxwvxgwwvwvwwwggwxgwfgvvxhvwvwwwxgwwwgxgxvwxwvxxgwxggvwwwwwwwvvxgfwhvVvvfwgwgwwVwwvvwfwfxgwwVgggfwwuwxGwgffvfuwfwwfwvfxvwUgffxWwgvfvvgvvhhwVfgFwvfvfxfwwfgwfwgufwwuxggwggWxwwvfwwwwfwwvvfwgwwvvwwgghUgwfgVwwvfgvwgVfvfvxwWwgffvvwwwgggvvfwgvfgVtgVwwgvvgvwfgfvgwxwwwffgfwfwwvfffwwwgvvweggwxwwWffvefvvgVufUwgVfvVvgwfffvfvwwfgfffvwgwwvvvgfwgWfvfwUfvwgwfwggvfwUtvVwggfevfVvgwvfgwwwWeguevfgvvfvvWfffgvwgxwwvWewggvuwgVwvwwwgffVewffwwxgvwwxwwwwVvfgwfgwUfffvegfffffvghvwwfxvgevVfggwggfUWffvffvfvueGgfuvvfwvggfWvvwwggwgwevwvvwwvVfWgvvfggvvffwgwgwUWffefgvfveeGgfuufewvgffVvvvwwggfffvwvwwvffegfffvwffvuvwwwgwefVvGuuvVffdfegffgvugfvgwgeWfuvvgfuUvvuUfvgevfwxvuwfWwvffvffuvvvgwffUfuggffvvfgWvvgwGueVggggWeVgfgeuffVgfvvfxhWvwfffgvfwwwwvWffgvgfvwtVfgefgVwUwvgffvvwgwwvgffgggwvvgfVfffgVfvegfgvegwGUefeWeegtVVgeggVwFuvfVVVvgvwwvwfUVfffvfgfVVgefgVvvfwfwvwvvgffVefcEVffffUfuggvvVfvVfggwVgdfgfvfVVvUwVFUfVfggwwgggFVegfVfevwfwevvvggVvvVvgwvWvgwwwwfuUVugVugUdGfVeewfgwwwxxwwhwwwxwxxwgwxwwxwvwgwxwvgxwwxxwwxxwwwwwwwxwwwwxxgvwxgwwwwfwwgwvvxwwwwwwwwxwwwgwxwwgwfwfvwvxwwwxvxwgvwwgwvfewhwwwwwxwwhuwvwwgwwwwwgvwvvwwxwxxgvvwgvwvgvxwwwhvwwxwwwxxwgwwwwvwgwfwVvgvxvevvfexwggggvfwwwgwwfvfggwgwxXeevwwwfewfvffwwxwgwVvgwwwgwxwffwgfffwgwvffwwwWeeWfgffgGfvTfwfvfVgfffeegvwgwvwfffwwwwvvgvUvvgwffvvwfvwwwwffggwGUwewvvwevwevhewwwgewVevfvfwgfwwfgVuVvfwwwwwfgwevwwgeevvxfvwwvwvWfwwfgevwwgegwxwvXewgvwgvfWwWfVVwghwxxxxwxgwwwgwwwwwgwwvwwxxwxxxxwwxxwwxwwwxwwxxwhwxwxxvwwwwxxgwxwwwxwxwwwxxwvxwvhwxwxxwwgwghwxvwwxwwxwwwWwwwwwxwxwxxwxwxxxwwwwxxwxwxwwwwxwvxwxvwxwwwwxvwghxxwwwxxwvwxwxgwwwwfwwxwxxwxwxwwhwwxxwxxwxxxwwxxgwfwvhxvwxwwwxwwwwfwwxwwxxwwggwxwxwwwxxxwWwgwwwwwwwgxgwwxxvwvhwwvwwwwxwwxxwwwwxwwwwxxxxwxXwwxhwxwxxwxwwwwhwgwxwwgwwwxxvxwxwwxwxxwxxxwwxwwgwwvwggwwvwfevvwwxvwwwxxwwwgvwwwwwgfexxwvfwwwwxxwwxwwvgwgwggvvwwwwwwwxvwWwwwggwwwfvwggwwxwxxwhwvwxvgwfxvwwxwwwwxwhxvxxwwwfwxwwhwwgvxwWvwxxfwwvwwwwxwxVwwgfwwwwhvwwwxfwwvwwwwwhefffffffffhwgfvffwvwwwvffwwwVfvgfwwwvhfwwgwvwwvwxffvwgvxvwwwwwwwwwxvwwwwwwwgwwvwwwxhfwwwwhvvwfwxggwfgfwwwxwgvgxwwhvgwwwvwwwwwwwwwxwwwwwwgwgwwvwwvwffgfvgwwwgfvwwfvwefffwvgvwwfwwwywwwxwwxxxwvxwwxwxwxxxwwwxwwwwhfxffwxgxwgxwwvwxwwwxxwgwvwwwwvwwwwxfhffwvwxxwwwwwwwwwwwwwxwwxvwwxwvwvwwvwwxwwxwwwxxxxwxwwwwwxgvhvxwwxhwwwwwxxwxwwwwxxxxwxwwwxwxwxwhgwwxwxxxxwxwxgwxwxhxwwxwwwwwgvwgghhvwgwvxwwwwwhwwwvhwwgvxvhWgwvwgxxwxxvwgxgvwgxhxvwwwgwwwxwwwgvgwwwxwwvwgxvwvwxwvwxvhWgvvwgxvxwvwwxwwwxwwxwwwwwwwwwwgugwvgfxwvgwwwxwwxvvwwwwvwwwwvwwvwwwgwvhvWvwwvvgwwwvxxxwwwwwwxwwwwwwwxwwwwwwvwgwwwwwfwwhwvwvfvwwwwvwwwwhvfwwgwvxfvwvgwvwxxwxwwwwwfwgwvugufwehwvwxxfwwwwwffgvvwwgwvVegvhwvwwwfwwxwvwvfwuwvgwgwgvggxgwwwgwwwwwwwvggwfewvVgfhwfwfwfwwwwwwhwxhwgxwwwwwxwwwxwwwgufxfwwggxxwwwwvwwxwwwwwwwwwwwwwwwwwwxvxwgwgwwwvgwWfwewfwhufghwwwwwvwwwwfwwwwgwxwwfwfvwfvvwgwwwuwwwwhXvwfwwvwfwxvgwxwwwwgffVwwvgwvfgwvvwwgfwxfwxfwvwvxwwwvwvgvgvxwwhwwxwwwwvwfhvvgevgvggvgvWwwxxwxxwvwxvwxwwxxwxwxwxwwwwwxxxxxxwxwxggxwxwxxxwwwwwwhxgwxwvwvwwwwwwwwgwgwwxgwwghwWfwvxgxxvwwvwxwwvvghgwxwvwwwwwwxwwwfwvwwwwxfwwhhxwwgvxfghxWgwvxgwxwwvwhvwwwwwwxwwwwwwhfwwevwvwwwwvwxxwwwxwxxwwxwgxgxhwwwxwxxwwxwwwwxwxwxwhwwgvxwwVwVxWwggwfwwwwwwwwwwwgwwvxghwfwwhxwxxxwwWWhwWwxwwxvwxvxwwgfwwvwwwwwxwwwvxwgxxghfgwxxxwwwwfxxwxxxwfwxwwxfgwxwwwwwgfwxwwvwhgvwgxwwxgfxfvwwwgwwwwgwwfwgxwwxwfwxwxwwwwfwwxwwgxxfVvvvvfwxwwwxfwwwwwgvffewwvgxwxxfwvfvggfVxwwwwwwwwWwgffwwfwvwwgwgwwgwxwwwggvfVxwgfxwwxxwwwxxxwxwwwwffwwwwxwxwVvfwxxgvvgwxggheeffwgvVfwvvfwvwvfvwwfeVtvvwxffXVfggvwVffVwffffwfWVVUefffeugvgffffgwwwwfggwwgfvwgffegwffgWUefgfffwwggwwwevfhgggvwwgffffvwwWUtwfvgwwgfvwgffuhgvwfgffUfwggvgfguwfvgfvfUUewwgvwwwegfhfvfvwwwvfffvwwWEugvwweffvgTfeeffUUfwfwgfffTUvwfffEUvwwfgxxwwgvwggwwwwwwfvvvwwvgvwwwfvUwgvwwvfwwwwwvwgvwvwwgwfxwgvxwWxwgffggffwfwwvvwvwfffewgvwgwwfwfwgwwgwfvfWfwfgwwgwwwWvwwfvvwvwffvgwvwvVwwgwwwgWwwwfwfwwgwfwwwwvwwwgfvwfwwgfuwxwxvvwwfwwWwwgfgfvgvwffgvwVewffgvhvwfvgvvuwfwfvWwwffefvwvvwwfwhwvwuwgggvfWwwfwwvvwwgffgtvwfuxhwwwvgvgwfggwwfvgfgwwvgfwvwggwgwggfegwwwvgvfggVWggvgvvggwvvevgggefVffuugfxvwfvugvvwuwgfgvvgwwvuwuugggffWtfVggwfvwGwwWgfggevfhffvwfgggVWgvvfvVfgwvwfWuvvgfggvgVguvvvvTgffvdgvehvvwggwfwgvufwgvvwvwwwfufgwwwvWwfvfwhvgvwgfgvvgwgwvWwfvffWfegfwvvvwgwvwgwvugfvfvefgwggvwgwhvwXwwWwfvggufwfweVwuvWuGfUvVwfuffgvfvwwwguWfwUvdfXfgvfvwwwwvwgwgvvgvvgwvFgeufeWUvewuggwfwf6hvvWvWVfvggvffvUffftWWgVgUegvgvgfgvvgwwWwwgwgvgvevUehfwfehfeWefvwgvvwwwwfwwvwfvfwwgvfwwvwgvgvgwggfwwgwwfwevwgvvfuwfvegfvgWvgvgfxfwvfwfgVgfvWvfgvgxfwvWwgvWxwgwgvvvvevggvfVuwevTVuVfgWvVfgfwfgvwwwvUfWfGuegegwggvgwgwvWwwvfgwfwgugWtvVwUgfuwfwgvWvf8fwfwVgufuVwvffVffffEwguWuVhfvwfvvvfgwvgwwwwgwvgvfuVgUfufheeheffwwwvwwwwvgvvvvfvggfggWgwvwwgvugwwwfwvVfffwgvwgfvwwggvdgwgWwwwwggwffgwwwvvgfvwvfwwwgwwgfwwgVfggwwvugfvggWWvTgvwvvVgvvvwggwffgvvvuegVvwwvvfwwgfwvUgfWwwwvvuugfgfegfgwvgvuvwGwhfggfvWfvfvvfeggUWWffffvhfgwufuvfgwvgwgwfgwgffvvfhuvufgtfWtvvvgwfwwfwwvwvgvvwevvwwgvgxwwffhxwhvvwwwgvwwwwvggvwfwVewwwfwxwhhggwwwvwwwvxwwhxXwwwXwwXwwwgvvvgvfvwwwwwvwfvffgfwfwvxgvwvhgvwvgwfwffwgwgvhvgwwwwhwwxwwvWgvgwwvfgwwwwffwwwvwwwvwwWxgvgvVvvgvwwwgevgvffvfwwgwvwwgvwwwfgwwhwwwwuvfffxefgfxUghVgwwwwwwwfwgfwwwffvfwwxwxwxxwxxxwxxxwvwwwxxwwxxwwwwgvvwwwxwwxxwwfwwgwwwxxwxxwwwvfwwwwwwwwwwwxwwxwxxwwwwwgwwxgvwxxxwxwxxwwxwxwwwxxwwwxVEfefwvvwfggWwwdfgeuwwfVfefffeeffVfU4feeVfffWvfUvgeffvVffUfVfevfvewgfvfwVfeWgfVevvWEfefwVuvvfVVfFWfuffgvVggdefeefgfgwefWVuffwfwggggwWVUffffuvvgffeefeVVU4VedewVwfvgfWfgVgewuvgffefffvFVvvgVffFefWvufgVvwwWVefgWedfvgwfVvVfwFuefwVVfUffegwwWgggwVfggfdVfgevvgwwffgvfWwwfVwgWVfewfWvdwfwgfeGfufeggwvwgvwefgfgfgfvfgvffvfvgwfwgggdghgfVfwvVeefvWvdwfffVvGfufefgwfgWfgeVwfVfgfvgVvfWfwwwwgwwwfUvggvvffvggwewffgfUGuuewvggvfwgggvwgfhwvvfWgvevvfVfwgfvfWufgwgwvwfvwgVdfVgeUufvfgVvfggWufwfggWgefwvvwfgfwwWfWVggeffgvugvwfufvxhwuwffgwvwffvgvvVvwwvvWgeffevvwhwvvwfevwfgguvWvvfvfefggvvwfweVwVWfvfwfVvufvuVvvwfgWxfgvfvgghgwuwgvfvfgwvggfvfgvWvwwwgwwgffgwfgwuwgwugvfwffGWuffvgwevVwvgvVwwfhufvWgvfvvUvfVugvgffuVfugvwgwfwfgefwvwVfvgvwwuVVvftUgvvgvgvffgvvvWfgwwgffvgeevvfxwwwwxwgwwwxvwvxwwfwvwwwVvwvxwhhvwvxwxgwwwvwxwvwhwgxwvgwwwvfgwfwfvwxwwwwxwwwwwwxwwxwgwwwhwfwvvwxwwgWwwwwwvwwwwgwwwwwwhgxwvwwwvfwxwwvwwxwwxwwgwwgwwxwwwwwxxxwgxwvwxwvfVfvfwvwfvfwhgvwevfggwfewwvWfvwwewvVegVdffwgvfvgVfeVwWVvgfgVfvggugeffVgGvfgwWffvffUefwwFewvgUfwefgfUffvgwwuwffggggfvfgwWfvgffxvvwgxWeVWgfwfvfvvWvfgfefvEuvfegVgWewvfWefgwfvffffvffffeVEevffwvWfvWfvwvwwgwVfffggfevgfvvWefgeGefVTfVfEUfvfvgvffwfVfefffVuvWgwgwwwxxwwwwwvWgwwggwvxvuvwgwwvwwwfvvgwwwxwwwxwwvwwwxwwhvgwwgWgwwvgwvwfgxvfvgwwwwwvvfwwxwwxwwhfgvxxxwxgxwxwhwgwwwgvfgwwwwgwugwwwwwgwwwwfgwfgwvwwgvgwwxwwxwgxwwgwhwwvwwwwvwvgfwggwuwwwWwwwxwwvwgwvvhgwvwwwvwwwxxxgwvghwvfwwfxgwwhvwvuhwwgxwvwggwwxwxwwwfgwwxwwxwhxxxvvwxwwwwvgwxwwwwwvgvwwwwwgxwvhwxwwwwfxgggwwhwxwxwxwwxxvvwvvggvvwgfwvvvwfwgugwwxhfwwwvgwvWwwuwWwvvgxxwxwggwwxgwxwwvwhwwvwggwfgwgwggwvwxwgxvxggxwxvggwwxwwxvxxwwgwhgwwwwwxwwxvvwxxxwgwwwwwwwwwwwwwwwxwgwwwwwwxgwwwwgwvwwwwxxwxwhxwfgxwwxxxxxxxfxfwvwfgwgvvvwwwwwwwuxwwxwwwwwwwwwwwgwgwwwwwwwwwwwwwvwwwwwxwgwwxvwwwwwwwxwwgwwwfuvfvhwwxgwwuwvfvwxwvvwuvguwvggEwgvwgwwwwvxvgwxwwwffwffvvwwgwfwvwxggugvwxvwguvvuwVvgvvgVxgvfwfgwwevgvvfgxwvwvfwwewwfggwvwwwggfvwgwvwhvfuwffgEgVfwfvgfxwwfvwgfwfxwwvvgVwwwguvgfgwgwfvwwvxwggwwwhgVgvvwwxwwgVvvwfgwVfggfgwfgvgfgwwwvwVggvgwwfggwuwwxwwwgwgwgxwwgfWvfggwuwgveGgvgwwvwwgwXvfxwxxwfgwfvvfwgwggewxxggvwfwxxwwwfWvugfvugfueGfffvgvvwgvvXvvgvxhwwwwfvvwfwxwfWwwxwggvvvgxwwwwWvvvgvfXggwgfwfgwwgvfwvfWwwvvuvhwwwwvvfggwwgvgWwggwggvwggggvfvwwwwxVvvgggWvfggfgggfwfggWvwwwgggwfwvgvgfegxxwwgvwwxwfwxvwwvfwwgwfwfhuvfwwwgwwwvvxvgffgfwvwvgvfvgwwgwefgwvwgwwgfuuvwfgvgggffggffWggvgvvvwgwvxfwwvvvwfgvwvggwvwvwvguwwwxwvtVgfvVgvfvggwWhewwVwwwgguwwevfgufgwfvfgvgggufwvgvgvwwvwwwwwggvgwxgVvwVvguVgvgWvwfvfwWfgwwwxvWffvfxvwwwxwxwxxvvwwwwxwgwxxhxxwwwxxwxwwwxwxxxwwwvvwghxggvwvxgxxwwwxxwvwvwfxwgxwvwwwvwwxxwgvwfhwxgwwwwwwWwwwvwwgwwwgwwwwwwgwvwvwfxwvwvxxwwvwwvwwxwgwwvwwwfxwgxwxfwxxgxwwvvgwfxxwgwwwgwwwgxwfWvvwXvvvvVfvgwwgwgwwxgwvwggvwfhffgwggVgvwvvwggfwvvvwwwgeVgwvGefvfwefvvvvWgvvvwgfwgwvgxhwwvWfggwgfvwgwwvxwwwvvvwxwwwXfgfgwfvfgfvfVvwwXewwwwVvwwgfvVvvfwgVvfvvvvhggwwfgfwwwvwwwgwvgegwwgWegwwguXewgfvgefgfwgfewwwgwfegfgvvxwhwwxwxxwxxwwxwwwwwxvwxxwxwxxxxxxxwwxwxxwwwxfwgwxgvwgxwhhwwwxwxwxxxvhwvgvwgwwxxgxwgwxwxwvvwwxhvvggwwwvwuwwwwwgwwwwxwwwwwwwwxvhwvgvwvwgwxgwwwxwwvgwwfwwwwwwvwvwvxwfxxxwxwxyxwxxwwwwxxwxwxxxwxxwxxxxwxxwwxhgggvwwhxwwgwxxwwxxvwggvvxwwvhwwxxwwvwxxgwgvwvhwwwwwuvwwwwgwhxwwwwwwwWwwWgwvggwwhxwwwhwvwwxxgvhxxgvggvwxxxwwhxwxwwwxxxxwxxwwwwwxxxwxwxwxwxxxxxxxxwwxxvwgwxfvwxxwxwvwwxwwugewwwwggwxgwwwxwxhwvxwwvfggfwwhvwxgwwwuwwwwwwwhwgwwwwwwwfggwvwwwgwwxxxwxgwwxxvfxxwfxwfwxwwwxxhxwwggdfvwwgwwwxuwvfvwwwWufgwwgVwfwfWvfvgugwwwwwvwgfwwwgffvffwfwwvufefvwwgffvgfvguwWVdefwfvgvvgwWVVvgvfwwfxuvgevVfgwgwwwvwwwwwwgwwxwgffwwVvgvggwwgVgfwffeevguwwxvwwwwfxggVvvxxxfvwvgwgvwwwwgvffvvvvfvgwwfvwwfffuvvffwwwvwwwvfwewvggwfwwggwwwwffgwwvgvwvwwxwxwwxwxwhwwxggwxxxwxxxwwxwwwxwwxwvwwwwxwwwwhgwwhfgwxwwwwwwwwhwwxvxwwwxxwwwhgwxhfwxxwwxwwwwwwxwwxwwwwwxfxvwwwxwvwwwwwgwxwwgwwwxgvwhxxwxgvxxwwvxwxxwwxwwvvwwxxxwgwwwwxwxxwwwwwxwwwwwwxwwwwwwxxxwgxwwwwwwwxwvxwwvxwwwwxwgxwxwvxwxwwwxxwwvxwwvwxvfxwwwhvxwfwwwvxwwxwwwvwvwwwxwwxgvvvhxxwxwwgxwwxvwwwhvvwxggwvxwvwxwxwwwgxwwxgxwwxwxwhwwxxwxwxwwwxwxxhwgwwxwwwwgwwxwwwgwwxwwxxgwwwgxxwxgxxvxwxwxwxwhwxwwwgwgwwxwxxhwxwwwxfxwxvhvxwvxwxwwwgwvhwwxxwwxwvgwvxwwwwwxfwwxwxwwvwwwwwgxwwvxvvxggvxxwxxwwgwvwgwwwxwwxxwwgxwgwgvwwwwVwgwwwgwwxvxwwvgvxwwwwwwwwwgxwwxwwwwgxwgwvWvwvgwfwvwwvgwwxwwwwxwvwwwwvhwgwwgwgwwxwwwwwwwvhxwwwfwwwwvwwgwwwfhvwgwwwwwxwguffvwvgwwwwxwwwwhwwwwwxwgwvwwvwwgvhwwwwwfxvvxvwhgwwgxgvwgwvwwwxwwwwxxxwxwxxvwxxwwxwwyxwhwvxwwwwwvvwxwwwxwxxwwxxgwwwwwwwhwvxxxwxgwxxwwwwwvwgxvvvwxgwwwxwwgwxwwwwxvwxxwhvwvwvwxxwwgwxwwwxwwxwwvwggwxwxwvvwxxwwwxhwwwwwvxgwghfvwvwvwxwwwxwwwwwvwwxwxwxxwxwwwwwwxwwwxxxvxwxxwwwwxxxxwwxwxwwwwwwwffxwxwxwxxwwxwwxwwwwwgxxhxwxfxwxxwxxwwwxwfxfxxxxvwvxxghwwfwxwwxxxwwxgwwvvxwwgwvxxwwwwxwwwwxfwfgwwxvvwvwvwxxwxwwvwxgwfxxhvwwxxxwxwxxgwwwwwwxwwwwwgxgwxxwwxwwwxwxxwwfxfgfwvhfvwwvxgvxwxwxwxxvwgfwgvwwgwwwgvxxwwfgvfvwfwvgvwwwwevwwxwwwwgvwwwxwwwwwwwwfwwgvvwwwwgwwxfgvwwwwwwfwxwwwwwwvxxwwwwxwwxxxwwwxffeuwvxwwVggfVfwvwwwgfvVvvvfVtwVtfgfwfveffggefexwgwvgweffgvgvfvfffgtgfVfvfwghvgwvwfVeevvguvUtfgfgVuufVggeVegfwvvfveWewvgvfvgwVftgVUewwfWffwwfvvgVtvgtfVfgfvevwvwfvgvfgggVgfhvvvgwufvvvWfffegwfvffVwgVuggvvvwggwvwwgvfUvVvVgwgffvwfgwefgvUgfffwefwwfWgwwffeeffwvwfefVUfvVwgfvffeTeffffeFeSVefffeefggGUVvfgwwwwgefVeVfVffvWVefffUfgwfWgwgfvweTeffffeFeSVUfVedUffwFUVfefvvfgfedVgfvgfVgWVUfVedevgfgvwwwfwwVvegvdVVgfuefwvhfvfweVgvffegvfffWffewvuFVveWfVwVggfgVUggvefgweffvgwvwFvUvfVVvgVgfggVWeffegVvgWfTvwgggfwgvevvgvwggffwfVewgvffwegVffwvufuvUvfwwgevtffwffvxWggvvgVfVfvVwvvgedgfVffvWfwvgveggfUevvvugeuEfffgvfgeVfgefgwgwwgvvgVgfwgvffugfevwgVfvggvfwwvvgvwdVuufguvfgfvewwfuVfWVuffffgfVfvvvffvffVUdVgfvwfvfvgVefwgfwfWvuvvggftVuVfefggFeVVvfTUfgVfeffgfevgfffwfuVwvwwgwwvgwhgwwggwvwwVwvwwwvvwugvwvwwxxwwxwwwwwwwwwgxwhwwvvwxxgxwhwWgvwgwgggfgxvfwvwxxgwgwvwwvgwgxgxwwvwvvwwxwvwxwxwvwwfvfvvwvvvwwuwwwvgwwwwwwvvvvwxvvvgwgwwfgwwwhgvxwxwwwwhwwwvgwwwwggWwwfvwuwwggwwwfwwwxvxvvffvgwgwfgwfefxgwwvfwgfWwwfgevWefwwwgffuefgufgxggxggwwwffugevVfgVgffWgfvvVewwfwwfgVVgwgWvvGUfvfvwffvfvvefvxwgwgfggwUvfffwvWfVfvfwfevwggwgfwwgvfWevXvvvvvggvfwwvgeguggVweVvgUvgwgfvgfgVewffvfvwwgVffvwgwvuwgwvfwwwwwGUWewgfwwggvfgegffvgffwfeVVfgwgvwwvvwgxwwwhwvwxwfvhxwgwvVvvwwxxwgwwwwxwwwwwvwxhgwgwxxxvxwxxxwfwwxgwwggvwxwvgxxxxxwwwxgvwvwwwfwgvwwxxwwxwwgggfvwggwWwwwvxwwwwwwgwwwwxwwvwxwxwwwwxwwxxxwwxxwwwvwwwwxwwwvwwwgxvhxxxgwwxwwwvxwxwwxvxwwwwwwwwxwxvvgvwvwxwxwwwwwwwwwwxwwwwxwhwxxwwwxfvwvwvhwghvvwwwwwwwvgwwxwwwwwvwwwwxxvwwgvwxxhvwwWwwwwwwwxwwwwwwwxxwwwgwgvvvxwxwxxxvxxxwgwwwwwwwxgxxwwwwwwxwwwwwgwxfwvgxwwwwwwvvwvvwwwvvwgvxfvwxwxwuvwxwxwgwwwwxxxgggwxxwvvvxwwwwwwwgwfgfvvwwgvfwwwwvwvwvwwxUgvwwvwwxwgghvvwwwwxxwwggwwwgwwxwfghvWgvwwwwggwwfgvvwxvvvWwvvvwhwgwxwvwwwxwwwxwwwffwvwggwwwgwwggwvwhgwhwwfxxwxvxXvvwwXgwggwgwxwwwvWvvwwvffwwugvwwvgfWwvgwwwwgwgwWhvVUwfvfwfUfUevfVfUfvgvefffVvfvvfwggwvxgvwfgffwwwxwwgvhxwvfwwwfwgfwfvwvwwvwwvwwwwxgfxwufwggwgvxxwfxxwwgguwwwvwVvvgwgwwgvxwgfwwvvwffwgvwwwwfwgwwwgwwvwvfwgwgwvvfwwwUUffvfUfvfffvfwgfvwvvwxxwxhwwgwwwxwwvgwwwwwewwwfgwwwwgwwgwxwwxxwwwxwwwxwfwwwgxwfwvwwvfwvxUwwwVwwwwgwwgfwwwwwwvxwxxhvwfwvxxvxvwwwxgxUvwwwWwxwwwwwwwxvwfwvwgwvwwwwxwxxhgfwxgwvwwwwwxwwwwxwxxwwxhvwxggvwxxwwwxvwwwwxwxwwwwwxhwwwwgwwwvgvwhwxwxxvwxxgwxxgwwxhwwxwwwgwwwvxwwwwwwwwvwhvwxwgvxxwvvgxgwwwvhxxwxwwgwgWvwgwfwwwwwxwgwxxgxvwwwgwwwwgwwggvwvwxxwgxwvxxxvwwfwgWwwwvwwfwgwwwwwxvwvgwxwwwwwwffxwwvwxwhwwwvwgxgxvvvwWvgvwwwvwwvvvgwugwvgwvWvxxgwwwwvwwwgwgxwwwwwgwwwwvgvwwvwvwxwvwvwgvgwvwwvhwuxwwgvwWgwwwwvwwxwwwwwhvwvgwwfwwwwwwwgwvfwvgvuWfwwwggxvgvWvwgvggvfvgwwvgugwggwwgvggwwvgxwgvwvvvwxfxwwfgwVwvwwgfgvgwvwxgfgfwwgwwgvwwvvvwwgwgwwwxwwwwvgguwgugwwfwwvvvegwwfwwwvwwwwwwhxvwwwgwvwgvwgwwxwwvxwxgwwvwgvgWugwvfggwwwewwfwwwvwwvfxwwxvfwfwvfgvvwwwwvwwxwhwgwwwfwwuxwxhvwvVwfwfwfwfwgwvwwvffwwxwwwwfvwfwwwvwwwuwgWvwvfgvhwwwwvggwgvgwwfgfgwxwwwgwwwgwwwwxxxwwfxxxxwwgwwwwwvwvxgwxwxwwvwxwxwwwwwwhxvwwxwwgwwwvwxxwwxwwwwvvwwhwwvwxgwwfwhhxwwggxwwxwhwvgWgvgwwwwwwwwvwvxwghwwwwvwwvgwxwfwvwwgwvhwghxwxwwwgwgWwwgwgvxwvwwvwwwxgvwwwxwwwwwvwghfwwwwwwxwwgwwwxxwwxwwwwwxwwxxgwwwwwwwwwwwxxxxwxgxwwwwwwwwgfgfhwxwwgxhwwwxwwwwxxwwwwvgwwxhwfgfxhwxwwwwwxwwwxvwwwgxwwwwwxwxwwwwwvgvwwxwxggwxwwxvxxwwwwwwwwwxwwvwwwwgxeWwwvwwuvwuwhvwwwwxUgwxggvgffgwwfgwwwvuwhuwwgwwxxwvgvvhwhwxffwwwwxwwwvwwWgfVUfgwwUvwwwhwwgfwwwwxfffuwggWwwUfwxwwwwwxWgffUuVwwVgxGvwwgvvwwwvgfffwwgvvwvwwegfvwgfWwwUfxwwwwwwxgwfvwwwwfwxwwwxgvwxffwwxxxwUgwvxwhwwwvfgwwwwwwwgdgfvgwvWVvfwvgfvgewwwuvfwgxxwwwvgfffffgwweffffvgeWfvgvwwwwWTVfvgwvWeefgfgfvgevwweeffwxxfewgwvwxwwffvfgfgfffegwwwvwvggwgfggVVwvwvVvgwwwgwvgwggfuvgwwvgfwgwgvwvgwwwgwwwgfvvWvgvwgwwvwwwvwwwwewvffvfwwgwvvwfvffwwvgvwwgwwwwvxwwwwxwwxxwxxggxwgwvwwxwxwwxxwxwxwxwwwwxgwwwwwxgxhwwfxxxxwwwwwwxwwxwvwwxxwwgwxwxwxwwwgxvhgwfxxxwwwwwxwwxwwwwwxwwxvxwxwwwxwxxxwwwvxgvwvxwwxwwxxgvxwxwxxwwwwwxxxwggwwxxwwwwwwgxgwwxwwxgwxxwxxwxxxwwxwwgwwxxwwwwwgwwgwxgwwxwxwgwwwxwwvhgxvwxxxhxxwwwwxxwwwwvwvwxwvwwfwwwwwxwwwwwggwwxwwxxwhwwvxgwxwgwxwwwwwwxwggwwwvwffhxwvwvwwwxwwwwxwvxwgxwgvwwxwvwxwgfwvxwvwhwgxhwvwwvvWwwwwwwwwxgfwwxxwwwwwwwxwwxwwwwghwwwwwgvggwwwvgwwwvwwvwxwgxxwwwwwwwwwwxwwwgxwwgwwvwwwwwwxwgXwvgwwvggvwvwxxwwwwffhwwwwwvwfwgfvewwwgwvwgxwgxgwwwwwwgwwwwxwwwgxgvxgwfvhwwwxghwgwwhwxwwgwxwxwwwwwxxwwxvwwwxxvxxwxvwwvgxxwwwxxwvwwxwwvwwwxxwgwwwgwxwwxwwghvgxfxwxvwwxxwxvwwxxwwfwxvwwxwxwwwwwwwwxxwhvwxvxvwwwvwwxgxvwwwxvgwwxwwxwxwxgxxgwgxxwwwwwwxwwwhwxfxwxfxxggwwwxwxwxgxxxwvxwxxwwxwwwwxxwwwxgxwwwwwgwwxxxwxxwxwwwxwwwwwxxxwwhwwwxwwwwwwwggwwvhxxwwwwxxwxwxwxvggvwghwxwwwvwxxwwxwwxwvxxwhwwvgwxvwwwxwwwwxwwfxwhxvvwwwxwxxvwwxxxwxfgwvvwvwxvwwwhwwwwwwwxxwwwwwvxxwxxwwxxxwwxxxxwwwwxxwxxwwwwwwwwgvfvwvhwxxwwxwwwwxwvwxwwwvxwwwxwwwwxwwhfwwxhwwxgvgwwfxwwxxwggxwwvxgxhwxxxxwxwwwxwwwwwwfwgwxfhgwxhgxwwgwwwxwxvwfwxgxgxxwwgwwwwwwwwwxwfxwwxxwwxxwxwwwwxwxxwwgvxgffwvfgfwxvwfwwwwxwxwgwwffwwwwwgfvwwwwvxwwgfvfvwwfgwwuwxgvwwwwwwwgwwwwwvwwwwwwwwffvwwwwgwvxwxwxwxwwwwwvwgvgwwwxwwwwwwwxxwwxfwgxxwgwxgwwvwwxwxwgwwwwwwhwwxwxxwxwwwxwxwwxxwwwxwhwwvwgxxwwxxwxwwwvgvwgwwgxwwxwxxxwwxxwvfwxwxxwgwxxwwxwxwwwwgwwwxwwwwxxwxwwxxwwxxvfgwwwwwwwgvwwgwvxxwxwgwwwxwwwxwgxwwwgwxwwwxvwxxxwwwfwhwwwwxwvwxwwvvxxwwwwxwwxwwwvhxgwwwxxxxwwgwhxwwwxwwwwxwwvvgwgwwwwxxwxxwwwxvvgwgxwwwvgwxxxwwxwxwwwwxxxxwwvxxxwwxvxxxwwwxwwvgwwxxxwgvwwfwwhwxwxxhxxwwvhwwwwwwwxxxwwwwxwxwwwgwxxwwwwwwxgwwxggxxwxwwhxwxwwwgwwwwwwvwvgxgxwxwxwwwxwwfwwxwxxxxwxwvhwwgwgwxwwwxwwwxgwwwwwxvwwwwxwxwwwwgwwxwxxxwwwwxwxxwwwxwwwgxwxwvwxwwwfwwwvwgwwhxhgwvwwwxwwwwwwwxxvwxgwhwwwwwwwwxxwxwwwxwgwhwgwwxxwwwwxxwgxwwxwwgwxwwgvxxxwxwwwwffxfhfwgxwwxwwxwwgwwgwwfxwwwgfxgwwwwwwwwwffhvhgfxgwwwwwwwfxwwgxwwwwwwwxgwvxwwwxwwgwwwwwwwxwwwfwfwgwwxfxvwwwxwwxwwwxxwwwwwwwxxgxwxwxwwwwwgwgwxwhwxxwwxwhwwwvwxwhwwwwwvgwwwwxwxwgvxwxvvxxxxwwxwwwxwwxggwgxwvwwwwwhvwxgwwfvxwwwwxwwxxxxxxwxxwxvwxgwxwwxwwwwwxwwwwxwxwwxvwgwwxwwwwwhXvwxvgwxgwhwhgwwwwwwxwwwgwwxwwwwwxwxwwgwwxwgwghwwhwwhwxwwxwxwwxwwxwwgxwwxwwxhvxwwwwfvhfvhvvxwwxwxgwwwwfwwwwwwwwvwwwwwwwxfvhfwxfwfwxgwwwwwwwfxwwvxwwwwwwfwwwxwwwgwxvwwwxfwwwwwwwfwvfwwwwxfhwwwxwwxwwwwwwvwxgvxhwwggwwwxxwwgwwxwxxxxgwggggwwvwxwwxxwwxxxxxwxxvwWgwvfwwvhxwwwwxxfwwwwwguwhwvwvxgxgfvgwvxxxxwggXfwwVwwvwxxwxgwwgvvxxxwxwgvwwwwwwhvggwvwxwgxgfvggwhwxxwgwwgvVwwwvgxgghggwgxxxwwwwwwxwwxhwxwwvgxvwgwvxwvvwwxxwwwwxwxwvgwgwwwgxxxwwwwwwwwxxwxxxwgwfuwgwgwxwwwwwwxwwwfwwfwxvwvwwwfxgffhwgwwxxggwvuwfxgxhwwxwggwgwwxxwwwwfwxwwwwxVwgvwvwfxxffggwwwxxwggwfwVggvggwvwwxgwwxwwwwwxxwwwgwwgwgwvwwgwwwgffwfwgfwggvvffvvvWffggeeeeeefvfVfegVeVugfuTEfVeeeWfUfeggffUVfeggVUegwfgefggwwgfvwgvgvfvfwwwgvvwWfVvggvUUvvfffhgfffwggfffffwwgVvvffwwwgvvgWeefwggfVwvEVVwwvwfuffwVeVfufVUuwwwfVvfefUgwvwVfffvFUVUfWFUtfffgvwfegUeUvwfEDvwffffvfEUfvf4TEUuwvfwvvfvwwhxwwwwwwxefvVwgvggvvvgfwvfgffwfffvefffevvwgwgvgwwwvwgwfvwwvfgvgwwwfwvvffggvvwvwVgfgwfwgffwwvwVffweVwwfvhggwwvwwwwfvgwvwfvwwwweggvwfgwwvgfwtvfvffgvVvgffwVwffvvwfffefgvwfwfffeVVfvfegfevffVffVEvfVvfgwhvhgwwvWfgwewvfvvgWfwfwwfugvfUefffvwffwgggwwwwwwwfwvwvwggWgvwvfwfvggVWgeuefffvffeeWUgVvvwvvWgggggevwvfwwfgwevgvfggVfVffvgvvfvuWgVggfvvvvvwvuVfVggfvvwgfggwwwwvwvvwgwvgffwvwwwgwvfgwvvvgfgvdwfgWgfvvvVVWgWwgwfuVgfVvfffWffVVVfeffUgfVfffUvVfeFueVvfgvfgwfgvwgWgfvwvwuevgfwgvvgfuvvfvuvvvwwgvvvgwwfwwwwwvvwwwwvvfwvgvfgwvefvWffefffgwfegeWVwevWvwfwvwvfggvvggwvgvggfVwvgvvvvgffvUgwfefvgfvvgvegwvugvgfvfvgvvfwggwvwguwggwwwvwffgvvgvwfwvgwvvgvWwtwwfWgffweeWfefvgVvfvgEfVVufgvvfVfvfvUeGeeVvgVevfEvUVegvvgwwggwvghvvfwwvfwwwgfegvwfwwwfVfUvwgwfggwfwvwggwwwvvfwwgfVvfwggeggvfevVgeUUfeeVvTegUfvfvggeuVvVfufvfeVvfWfvtVgvfVfffgwfgVVefWvvTvegvVffWuvWvuTveWveefwVffegwfffwffvvWfgegfuvgfgugfvvWvffvVgvcvfVfgfVdEWVwUvVguevUUeUfufffegVfffUdVVTfUfVfvDUUUf5dvEUffwgvwvgffgfvffgffVwfvfVfgfUFwvVfVfWfwwfgwwfgwwxwvwgwwwwwwvvffwvfvefuefVWGveffvvevuUfWVGveVfvvfgvgwfwWvfffwwwfugggwgvggwffgwvffguvVVgVvfvggvvwuffVfVvVewwggfgvvfgwvvvwgvwvgwewgvgWgVufguffVVWffcvWgfefueWffGVgguffWVfVfvfVfffWgeufueVefGVggvVeVVeFfvUfffggwgwwvgWwUfvwvguegffffffwvufwfftvewwwgvxwfvwwwxvvwwwwwgffwwfwwfwgvWufvvfvfwgfvffVffwwwwfxfwwwwwwwwvwwgvwggwwwwfvgggwwgfwwfvWugfgwvvfwwffVefvgvvwwgfwwwwwwwwwwxwwvwvvgvwwwgvwvfvwffgvXvwwtwffgfwegVvwgffvvgfvfvffwgggfffffegUvWeVevgfffuVUwffvwvvxwgvwgfxvvvvvgwfwwwwgfgwwfvvgwVwfwxwxxxxxwwwxwwxxwxwwwxxwxxxxxxxxxxwwwwxwwxwwxxgxwwwxwxxwhxvxxxxxwwwwwwwwwvfgwfxwwxvwwxxwgxxwwwxwwwxxwvvxxfvwgwvwvxwxgexwggvwwvwxxwwxxwxwxwwwwwwxfVgfgfwfvfvwgvhewgfvwgfffVgefuvwvefVEguvfTVeefUTfdVVeVvfgGffVeVfguwwfvfwUfffvVefffVvgeXdefvffVUfVguvfegvvgwffffXvvwuwGgveVfvgvvgfgggWUWffWefvvgefewvfevfgueVfffVVEceffgfwVhvugVVfeVtdFVevfFVUVdfVffffegfeFCVUUfeTFeVwwffwwgVUfvweVffvffgvgeWfvfUVfVfTUvfvwwgvwvxvwwwgwwwgwwgfvUGffvVfgggfeWvvvVfeUggVfefWfffgwwegfeeggfvgwggwgfeffgfffvwwfhWvfvwgWfffhvwvgffvwwgwgfgvgvhvevffufwuxwwwxwfffwgvvvgfgVvugwvfgfgvuuvwwegVuTWgvfgfggvveWffvvuuWfvwweVVvTVfvfffXvvgDGeefuetVfvwwgwfFvefUVefvvfgwvgggwwWUeVefefwgvvvWgwwwwgxwwewfwwwgvgWXuvvfvwwegfXvvwfTefvVwfUVgfevvvgGuVufgfVvwgvgwggVfVffevvwfgWhfefvvgwfVfhvfwfvvwvvwfgfhfVwvwWvgfvwwgvxgwwwgVvvwvVwvwweuVwvgVfegfVwfwggfftUgugvwVwfgwGfegvfewfVWgwVfVtVfufffVhfef6FdEfeegUFVvgvgvgfVVfuffeVwfvfwwwVvgwwVdVvuVdfgwhwwwxxwwwxxvgvffwwgwwvfwwgwwwwwwwwfwwfwwwwwwwwwwwwwwfwfvgfvgxwvvwwwvwgvxWvwfvwxfwwwxwvwvvgwwvwwvwfwwwwwwvwwwwwvxvgfewwvwfdfgvfhwxwwgffwxhvwwvwfewwwvvgxWvwwwwfWVgwvwwvvwfVvwvvfgvwwgwxwxwgfwffwwhxxwwfxwgewgwgwgfvffVvefffVgvwufveffffFvUeffUffeufveuwfUSFUdVfUUdeVfEeeV6VfFUVUEdffefefEUdfVUfEeVfWwffUeVvffffvuffVfdVfuWveUuUVgEvfwGffVffeVuwwegfwVUugfffEvfveWdvWvUUueVvEefgFfeWTgfVugwfgvvVTewfVvTffUfeWTTFeeFUUUuTffTU2TUUTfUEeSgfWvgffUTffUeFUfeVUggfeGUvfUUEfVE5fwgwwwgwwgwwwwwwwvwwwwxevgfxuwwvvgffffwwwwwvvvhggwvvfvwwwggvvwwwwwwwwgwwggwgvwvfwgxvwwgwwfwwgxvvwgWgfgvgwwwwwwvwwxhxwWwwxwwgvwfgVfwfvfVGvwfgggwfgfVfwwggwvvwwwefvhvffvwxghwwggfweghwgwwhvgfvWufwffgwwwvwggwvvfwewxwfwwgvwWwewxgvvwwwwxwhwwwwvhwxwhggvwgwxvggfvwwwfgwwvfwwwvfwwgwgwvvwxwgvwwgwwfwwvwvfwwggwfwgwwwvgwvwgwvwvvgwgwwfwwhvwwvwwwwwxwgwwvwhwVgwgggfuGwgfvxxwwVfghwwgfwwwXfvvgfvvxvuggwwvfhWgvWgwvvfvuvvuvwvgvgwwvwwvfwvwvgVgwxwuxwhggwwWggwwvvhxxgwwwwwwwwwxwvfwvwwfwwfwwwvwvwxvfgwwgvfvggvwwwvxwwwwwwwwwgvvwvvxfegfwvwgwgwwwwwwvwvwfwWwfxwfwwwgwwwvwwwwvwwxwgwwwwwwxvgggwgwfefFgvghxwwwWfvxhVwwvwxwgffxvgvvfxwgxgwvwfwgffwgwfwgguwvVfvwwvwwxxwvwfgwWVxgwwwggvxggugwfevfgggvwvvwvxvgvwwgxwvfUfgwvfvgfVwgguvffwVUvVeffffffVhwgffvwwvgefewwWgwffvgwfgvvWwVTWWvgWffvfgfVfvwVvggwgfUgffvvWwwgvfvwwvwefvvggwggfuvwwwggfgfugfuggegvewvvfVtfvffgwVvvVvvgEgueevuWVVfvffufvvfgUTgffffgVgvegwfWefffwwwvvgvegwgvfvwffTffwvgffeWgUfvwfvwvffwfhxwgwgwgwwxwwfgeVvvgvvggvhwvvwwvuffufffVffvwvgwufvwvVgfvwgwwggvvvfgwwwvwegvvWgvgfvgguffvfvwwvwfUgwgvvvxwvwwwwgwgwwwwwwfvvvwggffvgvvVuvwwfgvvvwwgfvewgvvgvWvfuvweWvvfufvVvfvfVvdfvgvfUGffvuveWfueuffUffwvwwwwfgfggwvvwwgVgVfvvfffVgffevvggvvvgvvwwvwwvwwwwxgwwWgvwwwfwwghuwwewffVwVVvVgfffegfwgvwxvhwegggvgvffvewfwvvwvwVheggwWfvfwffwVwfggwgwwfXewwfwgwgwwwwvgvegwwwwwvfwfwwwwwggxvfgufwxWgufwwvvwfgwvvgVwvfvfFgufvwfwVVfuffVvgfffEWefuVvEgffgffwfVWggwwgwvggvWvwgwwgVgugvvwwvfvffUwvvwwxwwwwxxxxxwwwwvwwwxxwwwvxxxxwwwwwwwwwwxxwwwwhxxwwgwxwxwhwwwwwxwxwxxwxwwwwwwuwwgxwwwvwwxwvwxwwwxwgvwwvvwvwwwhwwwwgwwwwvwxxxwwxwwxvxwwxwgwwfvvwfvuvvwgvwwevvfvwwguUfgvvVvvwVffvwVVWfgFfVvffeewVVwwVfgwffvgTfufvggfeegVvffugfvvUefugffwffgwvfFegfgVgfvEfvfwUfxwffgwwgwefvwgggvvvwUvgwvgvgVffFUwfwUfwUffwggevgfgfeevgvwfuUfeevwffeeffvGefvfVfeCUVffeuTfvffgeVedgfxgwvwfvvWVwvwgwfefVUwwfwgvWfVEwffxwxwxxxxxwxghwwxxxwgwwwxgwwhxwwwwvwwwwwwxwwwwwwxxxwwwwxxgfwwxwwxwwwwwxwVvxhvwgwxwgwxwxxwgxwxwwwwgvxwxvwwgwvvWwwfwvwvwfwwwwwgvwwwwgwvwwxwfwwwfwwvwwwhwwwwwgvvgwvwvgvgxwxxxwwwwwvwxwxxwhgewwwghxvwvvwxwxwxxxxxxxxxxwvwwwwwxvwxwwvwwwwwxxwwwwwwwxxxwxwxvvwwxwwwfwwwwwwvwvwwxwwvxwwfggwvwxwwxwwxxwwwwwgwWgfufwwxxwwgxwgwwwwvwvwvwwgfxgWwgxwwwgvwxwvVfvgwvvvvwwxvxxxwhhxwwxwwggxwwwxwgxvvwwxwxhxwwxvwwwwxwvwwwwwwxwwxwwxxxxxwxgwxwwwwwxwwwwfwgwxxwwxwxwwhwwwvxwwgwwWvgwwwxwwwxwwgwwvvwwwwxwwwgwwwxwwvwxxwgwfwwwwwwwwxxxwxhxwwxxwxxxhgvwfwevvWwfgwwxfwfwwgggugvvWvffvfgggvgwwfUUfdffgefeeffewxgvfUfvvfUfevwVfgffffeffvvWwgfvFeVfgwgfWUVffvffwvgwgfwvfffwWvfffgevwvwvwxxhvfvwWffvggwffwfgxwxwwgvwewvvvVfffVgfgfgvwwwhwvfvggfVgwwfwVVfffWUvvVffvwgvgGeVfUefggfwvvfgvwgffVgwffeffffvwvwfwffVUvwgwxwywxxxwwxwwwfvwwwwvwxgvxewwxwwxgwxwfwwwwwwwwwvxwgwxwfwgvwvxwwgvwwwwgvwwvgvwxgvwevwgxxwxxfxfwwwwwwxwxwfwwwxvxxgvwwvggggwwgfwwvvwwfgvwwwxvwfxxwgwvvvvwwvwVvwwwfwgefwgvwfwvvvvffwxwxwwgwwwwwwwwgwgwwvwwwgwggwwgvxwgwvwvwxwwwwxwwwgwhgxxwwwwwxhgvwxxwwxwwwwwwwwwwwwwwwwwxgwvggggwwgvwwvwgVxwvgxxgwwgxvfxwwwxwgxghwwxwwwwwwwvvxwvxxwxwvxwfxvwwvvwwwwugwVwwwgwwxwwvwgxwvxwwuwwfvvwwvwvfwwfwwfxfhwfxvgwfvvVwggwvgwwwvxwwwwwgwwgwwwwguwwwvvwxxwfgwwwwwwwxwwgwxxxxvwwxwwwwwvwwwgwxwwwwxxwwwwxvfwwwvwwwwwgxwxwwxhwwxwxxxhwwgxxxxwwwwwxwxwwvgwwggvwxwwvwwwvgxggxwwwwxxxwwvvwfwxgwwgwgwgwwwhhwvgwwfwVwgwvwwwwxwxvxxwwxxwxwxwxxwgwgxgwwwvfvwwhxwwwxwwwwxwwfxwwxwwwgfvgwgwvgwfvwwwwwwwwwwgggwvgwfgvvvwwwwvwwwxwvwxgwxxxvfwwwxwvgwwxgwewwvwvxwwvgfxfxwwxwgwwvwwvwwwggxwvwwvfwwfwwwwgfwwwwvgwwvwwfwfvfvwwwwhvwwwgwfwewwvwfgvffWVguggwwwwhvxhwwwwwwgwwwwgwwwwgfxuVwwxwwwwwvxwwwwwvwxfgVgwxwwwggfwwwxgwwwwwwwxwgwwxxgwwghwwvvwwvgwgwwwgwwwwfxWggwwwxwxgggwvwwwxwgggWgwvvwxxwwwwhwvwwwwggxwxwvwvwwwvvvvvwgfvvfxwwvwvwwxwgwxggxwvwwwvfvwxwwvvfvwwvgggWgxwvgfvfvWvgfwwwgwxwfuwxwwvwwwuvgwggwggggvwfvwgwwwwwxxwgwwwvgvwwwxwgvxwwgwwgxvgvwvwvvxwwgwxwgwwvggwwwwwwwvwvwwfwvwvwxvvxwgugwvxgwvgwWgwvwwgxxvvgwxxxwgvwvgwwwfwwfwfWvwfwfvxwwwfwwwwxwgwwVvgwwWfxwwgwfwgwgwvguWvgwwfwWfvgvvgwvxwxxvwwfwxwgggwvgwvgxvgwwgfgwwvwwxxwwxwwxxxwwgwvwxwxvxvwwgxhxwvwwgxwxwhwxwwwwwwgwVvvfxvwugvwvfwwhwwWwgvfgwgxwwxvxwwwWwxwfwwfgxwwwwwwwfgvFfwwwgefwwxgwgwwxhvwfgfwvwfefwwxxwwvwxvfwgxwwwwfefgwVwwwxxgwwxwxxggvwxwwwwwVfvwxwwfgfvgwvwgwwvfwxgwxwgggVgvvvvfufgvvguvVefUdUuVfufUvfVVUvevwwffgffvgWvvfwgfwvwxfwfgfUheevvfvffvwfvvvfwvvgfvwwgwvWVfvwwxvwgffvwgvvvwgwgwgwwwwvfuwwgVwggvvggFgffwwffgWEgVhuuvwVvuwwvVVFVDgffvgfVfVUgfhuegwVffvffVfefVgwTVgvwfgfwwevfwdVfegwUevvwfffwuwvwgvfvgvwwgwwvgwwwwwwuffWVvwVgveffvvvwvFeeUWudfUffuveTVUgvvwggggfVwguvevwefvfggfwvwvhVgfVgvefewffveVfvfgvuffvgvfeeffxvwwvgffgwgvvuwvgfwxgwwfgfvgwfUfvhvveefFWVfwgfgvTVvhfuewvdfufvfVweT6VVefVfVveWvXftdwgdeVvufFeVVfvVffvwgfUvwwgvwgVVfeVgfduwfgfvvggfgwgggwgwwvvvwxgwwwwwggfgfuvfvuffgfwfewVeUfvtefUUuWTgUVfvfegfwfVfVUwgTwvwwfwfwgvwvWghfdefuufeVfwgewfuvfvuffgfwfewFVgvvvwggfVeUfwgewvwwvwvwgfwvvvVvvgVfexfewVWgfVVvwfuW6VTxfUgfffefuVwfEVGWdVEvgVeF6fUhfVgefUefUfvfVffEvgVugwwffgwvwwfvVeeUfgedvwwgvvvfgwgfwwgwxwwwwwwvwvgvxwwfwvwwwxwwwvwgwwvwgvwvxwxwwxvwwgwwgxwwxwxxfvwwvwwhwvwwwwwfgwWffwvvvwwvxvwvwwwvwxvwgwxwwxwwvvVwwwfwwwwwfffwwgxxgxgffvwvfwvxfvwgwwwgggvggwgfwggfvwvfgvgfuwgvwfwwgxfwvwxwwwwwxgfwwwxwfwwwwwgwwVvvggvvgwgegwwwvwwwVWUffwfvhfegffwwffTVVvWVeUdvfwUEUeuffvfgvVUUdvfwUugvffufgvgfgfVefgugffffwwwVfeWfvhevfuvgxVWfegfwwwvgffuvgwVvhgvvgxgwgvVevgvfTufgwVVfUffvvwwggfTufgvevgwweuwfffefCeeUfffFUfSuTfwVffVVeUfeVvdeUgfeFUwwfffwwwwfgfeVUvWfVFwwwgfvgVggXwxwwwvxvwwwvfvwvwwgwvwgwwwwgfgwgwwwwwvwwvwwwwwggvwxvxwvwxwxwxwUfvfvwvxwfwwvgwuwvgffvwwhwhwwgwgwwwwwwfwwxvgwwvwwwxwggfgvgtwffwwwgwWfvwvwgvxwvwwvwwgwugvvwwgxVvgwwwwgfgvfgggwvWwggvwwwgvwwgwuggwvvwxxwxxvWwevvhvwwwxwvvxhvxwwxwvxvvwwxwfwvvvgwwghvvwxwgwfvwwgvgggxwwwwxwwwwwwvvwvwwwxwwggwwfwuwwvvghvwfgxwewfwwxgwWwWWwhwwxwgffwxwvvfgwwwxwwwvggwwdffugvwvfgwwwvxgwffvwwvvwwwwwfvvvwwwfhggdvegvgfugwvvgguxwwfvgghggwwwwxvvfggxxxwgwgwxxwwxxwxgwwxwxgwwgwvwwvwwfvfvwgWwgwwwvvggwgWwvgxwwwxwwxxwxwxwvwvxwwxxwvwwwvwfwwwwgxhxwvwwVvfugggwwvwgfgwwvxwWwgwwfwwwwwwwwvgfgvgdvfwgwwgfvfwwwhxgfuwwggggwwfwvwwfvvvwwxvggffuwVwffwgvvfvvxwwwwxgwvxxgwwwxxxvggvwxwwwxwwwvvwwxwwwxhXxvvgwwwwfgvwwwwVgwvugwuwwvwwwfgvxwwxwxfwvwwwwvwwfwwwwvwhhxwggwwwvwwwxxxwwwxwvwwwgwxxwwwwxwwwwwwwwwwwwxwxxwxwwxhvxwwgwwWvgwvwvwwxxwwgfgvwwwwwghggfwgwwwwgvhwwgffgwgwvwwgvwfwwwwfwwvwwwvxwwwwvwggvvwggvwwvwwwwwwwxwxwxwwggvgggfhwwfwwxffwgVugvwfwvwwuffVxwggwxfwfgwfwwwwwgwgwgwvgfwwvfvxwwwxgvwwwvxvwwfvxwwwwwwwwwwxuuwhfvgffwvwVewvgguwwXffwvwVwvwwvwwxVTwfvgugwxhevUfufvewfwevwwffWvgwwhwgvvhwwxwhvgwwgwwwXxwwxwxgwxxwxwxxxxwwghwvgwwwgvwvwvfvvgwfhwvwgfggvvfwwfgWWvvwwggvgexwvwwwwxewwfggvgwxxwwvwwwxwxwwWvxgvwvwxxwffgwxxwwvxhfevffgwVgwguwxgwvvhxdgggvvggwvwwvwwXVgguvvvWwxUffWvfVgwevegwxvvuugxwgfwxgvxgwdvfwxWfgwwVwwvgvwwggwwwwgwxwxwwwgwWwwwwvgwvgwwxVfwffxfvvggwwfwgefwvwxgvwWxwvvwwwwxxxxgwwwwwwwxwwwgwwwgwwwxwwfwhevwwwgfwvgwwvwwwwggxfwwfvgwgwgvgvfWwugwhvfvgwwegwuwvwxgugfvVwuWwWvgvWfugtVwuwfugwvwfgWxwfvgxwggwWgvWxgVxwwWwwxgxhwwwwwwwxvxvxwxwwwfwwwwgxwgwfxxvgfgvvhvvffwwfgvfgWugvwhwvfwfwwwfgfvwfwvgxvwwvhwwvxwwwwwwhwvfxxvgwwwgwwwxwwwfwwwvwwwvxwxwhfwvvfwfvwvfwfggWwuewfwvvfwvwvvwgvVwgvXuwXwvewUgevUwtgffwVgvgfwXwgvfhfwWwwwWvvhwfXfwvHwwwvgwxxwwxgxxwwwhwgggwfwwwwhgwwgwwgvvvgwhgwwefvwvhgggggWxvwfwfxwvwgwxggwwgwwvgwxwwxxwwxwhxvwwwwwwwwwxggxvxwxwxwvwfvvVvwfXggwwwwVwgvfvvxhghgggwvggxwvwwvxxVgWvfxgWggVVwgvWgxufexhwfvvtxgwfvxfxgwwweugwgVvvxWvwvwgwxgwxwvxxxwfvgwvwwwvwwxwgewffvUfVvgvggevwVxfwvwwfvgvgfgwgvwvgvwgwuwwvfgggvfwwwwfwgxxwVvxggwvxxwgfwgwxwwwwhWwgdvfugfVwwfgfgwfxwugegwvWvwwvgwvxugeffwVxwgtVdVvffuWvwgwvvvWwfwVhgVxwfxwWxwfVxwgxvVwwvWxwxgWgWwwWgwwgwwguwgfwwwwweeffvevWffWwwffwwuvwWffVwwffwwwWwwgffvwwwWwwffxxwwwgwwwwwwTefUfdgVegWfgeewwdvwVfeUvwggwwFfgVfewgfgVvgUfwwwfgfvfwwgvfVeecVfeEfffeefeefwVeuwwgffUfvfgTUwwweefxfeUfwgeuwwgUEfffeVffwvwfffwwfvVVuwxwwfvgvwwwwHUuwwgUfwxwwwwwwwfwwwvwvvwwggwwxwwwhwvvfwwwwfvuwwwwwwFvffWVVeeffWffegfvwwwfUfvvfgWffevwwvvwwgvfvwWufwhfeefgvfwvVwggxfwvwwwgwwggvvwwwwwwvwvwgwvgfgwwgvxwwwvvwwxgggvwWffwwwwwvgxwWfffvvwwgwwffvVVffgvvefVxwgvWffffUfffgwgfvvvvvefVwwwwgwwfvwwvfwvwwffvvgffwwwxwwywwwgvxwwhgwwvxxwwvwwwxxwwxwwwwvgxwxwwwwwwwwgwwxwxggxvwwxwxxhvwwxxwwwwwwwxwxgxwwgwwwwwwwwxxwxwwwwfgwwxwvvwwvwwwwwwwwfwwfgwfwwwgxvwxwxxxwxgwwxwwxhxxwxwxxwwwvwwvxwwxxwhhwxxwwxwwwwwwxxwgwwxwwwwwwwwwwwhwwwwvwwwwwwxxwvvhhxwwvgxwwwwxxwwwvvxxwxwwwxwxwxxxxwvwwwxwxwxwgwgwwgghffxgwxxxvwfxggwfwxwwwxxwvwwvvwwwwwwwgwvWwwwwfwvggvwgxwwwwwwxwwvwfxwwwwvwwwwvhwfggvwxwwwwxwwwwvgwwwgwvwhxwvwvwwfwwvggvwwwwwwvwwxxwvwwvwwwgvwwwwwwwwvhwwvwgvwwgwwvwwwwwgwvvxwwxxxvgwwwxvgwwwvwwvxxwwwwxwwggwwvgfgwgvwwwwwwvwfvgugvwgxfwgvgvggwuvwwwwgfvfVvfegeVwvfgvxwvgwwwvwwxwwgwvfwgwVgfxfwwghwgwwwwfxxvwwwwxwwxgwxwwwgufxxwwwwwwwgvwwfwwwvwgwwxwwwwwwwwwgwwwwwhvwwwwfwwvgxVvwewwfvhwwgwgfwvwwxvwfwfwxwwxfwwwvvfwgvwxwwwgwwvfwgwwfwwfwwwwwwwwvXfuwgwwwgwvvvgvwwwwwwfvfgvVvfhwfvwvgwugvvgwwwwxgwwwwgvhfhwvgwgwvgwxwxwxgxwvwwwwxxwwxhgwwwxvxwwwwwwxwwwgwwxxwxwwxgxwhwwwwwwwxwwwwwhgwwwxwwgxwwwggwfhwxwwwxwwwwxxghxxwvwwxwwxwwwxwwwwwwvxxfwwwwwwxxwxwwxwgvhwwwxxwwxgwwvwwwwwgwvggwWwgxvggwwvwgvvgwwwwwwxwwxhgvfhfxwwwwwgwwxwwxwwwxwxvgwxvwfxwwwwxvwwwxwwwxxwhwxwwwxwwxwwvvxwwwwwfxvxwvwvgfhwxwwwwxwxwxxwwwwwxwwxwxvwwfvwvvxwwwwwwxgwxgvhgvhgwxvwfwwwwxvvggfgvwggvwwwxwgxxwxwxwvxwwxwwxwxwxggwxwhwxwxxwwgwwwxxwwgwwwwwxvwwxwwxxwxhwwwwxxwwvwgggxxgfwwwwvxwwfwggxwxwxwxwfvxwwwxwwwWwwwfwfgwfwwwwwwxfwvvwwgwwvfwwwwwwvwxxwwvgwfgfgwwgxwwwwxxwggwgvwwxwxwwwggwwxwwwwwxwwxxwgwwxwwvwxwwggggfvxxgfwffvVfxvfggxwgvgfwwwggwgwwwwxwxwgfwvwwvwwvwgwgwwwwwwwwxxfwwvwwwxwwwwvwwgxwwwxwxwxgwwwxwvwwxwgwwwxwwvgwwwwwwwvwwwVfwwffgwwwwhfgvvvwwgwgvuwgwxwfgfvwwxwvgfwxwwfwgwwvwwwwvgwwxwxxwwxwxxvwwwxvvvfvwxwvwgwwgvhwwwgxwxfgwvwwwgwvvvwxxwvwwxwwwwxwwwwwwxwwxwwxwwwwwwwxxwwwwwwxwwxwwxxvwwwxwhxxwwhxgefxwfgggwwwegvvgwxwuvvgvwgfvfwxwwwwvwwwwxgxxggvwwxxxwxvvwwxfwxwwxwwxwvwwhwhxwgxwwWgvvvvfwwggvfwvexvvvxwgvgWuvfwwvgUwvxwxwggxwxwxwwgwwwwwxwxffxvwwvxwwwhvwxwxwwxfwwwhxgwvxxwfvxwwwwwwxgwVwwxwvxvxggVwvfVugfwFfeVffxwfwewfVwxffggwwgvgxwwwhwwgefwwwwwfuxwxxwxxxwwwwxwwwgfwwfwgwvxxxxwgvwwwwwxwxxxwwvwhwxwwxwxwxwxwxwgfvxwwwwvwgwxwvwggvwwwwwxwxhwwwgwwxwwwxwxwwxxgvwxffvggvfgxgwxvwxwwwwwvfvfxggwfwwwwxfwwwwwwggggefvwwwgvwwvwvfwwwwwwxxxwwxgvgwvwwwhgxwwgwvwxwwwwvxwxfwgxwwwwgwwgwwwggXeggfwfwvvwfvvfuxgXegwwwwfvgfwgwgggvfvwvwwwhfhwxwvgwwwwgwgwxvxhvxwwwwgvvwvxghvwwwfvwfvwxgwwgvgwgwxhvxvwwgvwwvwgfgvwegwwwwxwfwwvvfvgwgffgffwefvVufwwfvwTvfvxwgfwgghvxwwwhfghwxwfgUwhwvfxwgfxwwwwgwwgwxfwvvgwgwwgUgxgwfewVwxgwwwwxwgvwgwwgfxwgwvwxgwvwwhvgwfwwwwwvwxwgxgUgwvgwfewVwxgwwvwwwwgvwgwxgfwwgwvfwxgwvwwhwwwfwwwwxwwwwgxgwwwffefvfwvguvvgvvwwwvxvwwefxgfwhwugvwwfwwvvwwwwvfeffVffwgfgvvgugwfwvwwvwvvwwxwwvfffeghfvwwgxfwwgvwgwwvvvwwfwwgggxwwwvwwevgwgvgVwvvxwgwwwgwvgVwvvwwfwwfvfwvwwggxwwvwwfwwwwgwhwwffxfefwvguVWfgfwvwvgxWwvVVffvhgwwvUguvfvVgwxvwgffggvwwwwgwvxgvwvfeFvvfVvvvfvwfwwvfwfgwGeuvvfvvwwwvvvwgfggfgvwvvfWUVtfvfgefuvvuggfvvgvgfwwwwvvweegggWffwggfWwxgewwxwwgwgwwvwxwgwwgWxgwvfgwwxwwwwxxvwfgvwfxwggwhggwvwwwfwwhwggwwhxwwxwggxwgWwvwwfvuwwwwfgwwwuwWgvffwvxgwwgXvfghwVwgxgwwffwwgwvwwgwgxwvggggevwfehfVfwwxwgwwwwwwfUxgvfxwfgvgwfvwwwvwvvgfeVdwvfgfwvfwwggvggwvwwwvwwvwXfwwvVfvxvwgvhWfVvvfVvfvfggxvhWvgwgggfffEwfVufwvfgvvWdeVUffVfUfgdfeeVVufevgffffvWwgwgVwevwgwvfgffvffUwwWfVvfvgefgufvgfvfwvffvwgfvfewfwwfvffvgwwwgxgvvVgfgwgvwwgwgfufVfVgfeffEvfuguVWfvgvffvvvgfwvfvuVEeeVWUvEufVffgvffvvVfeffefeVffvfgfefgwgTfgegvEUvwgvggvgfvwuffvfwugvwwgfvfffwxwggwwgvgfgUGfWvVffgguffgvvffvUefffufeffvVggvgwffgfvwwwvvgvwWgWwggvgwweWfVwfvggvewffvewWvvwgvfvgvfugwgvwwgvgfwwwvwwggwggwgggwwwwvwgvvfgeWvvvfeWWvfwUfgggfvvuvvwgVfgvuffgfvXVvUudWVggfvfuvgfevfVfevVVvWgWggvvgVfffffWefwwwvvvfvwwvvgwfvgvfgvvgfwffvwxwwgwvvgwgwffWufvfffwvfwfwvvfgufUUffdgTfegUUfffvfvVvvwwggfwvvwffggevvufggevvgVfvefgfwfwvwffvwfvgvwfvfefWgvfvgvwxfwvvwwwwgwvgwwvwwwwgfvVggfWuewvFgetVugfvgwvvvvVvvvfgfvgwfVfFwftVtUfvgVfVfefwffefevUeeVfggfVfufwVfufVuWfewwugwefwgfvfvgwgfvwwwwwxxwxxxwgwgwvvwhwxwvwwvwwwxxwwwwwwwwxxgxwwwxxxxgwwwwwgggwwwvwxxwwwvwwwxwwwxwwxxhxwwxwxxwxwWwgwvvwwvwwwwwwwwwwgwwvwwwwwwwvwvvwgwwwwwvwwfvwwwwgwwwwxwwwgxfwfwxfwvgxwwwxwwwxfVgvwVeefUWfgwgwwvfwwgwVuEvfgffufVfffvgfefffDUVUfUeegVFdeUeVUVffewffVfffugeVwvfgffwgvVffWvgugUffvwgVvfgeUggeffefwVWevfffVfwguwwggwgwfvfggwwwwgwfhvfWefefEffUVuUfVfVffWffgwfwgfffvfvvvefVevdf6T6TvffVVVVfgefVfVeffTUfdfefevVVfefVeeFUVFwvvwwfvfwvvffwvwffwxwwvxxwxwwwxhWvfvvgvgwwgwwgwwvwwxwwxwgwgvwwwwxwwxfwvwxxwvxhwwxwvWwgwwwgwwwwwgvgvfwxxhggwwwxwwxfxvwxwxvxwwxwgwwewgggwwvgwgvwwvvhfwvwgxwwwwwxwgfwxwgwvwvgvfvwvvgwgxwhgwwgvgvvgggwwghvwfwwegxfwwuwvgwwwgwwxxwwwgwwwwxwwxxwhwwwwvvwggwxxwwxgxwufgwwwxvvwgwwfwwhwgxgwgfwwxxwxvfxxwwgxxwgwwwxwwwwhwfvgwvwxwwwhwwfwwvvhwwvwgwwxwhwwxxwwxwvhwwufgfvwwwvwwgwvgggvwwwgxxxxvhvwwwwUevVgWvfwgfwgvwgwwvwwfwvwvwvwggwvwgwhwhwgwwxwwwwhwwwhwxwxwxxxwxxxwwwgwwvvxgwhwwvvwgwgwgwfxwvvwwwwwwgwxwxxxwhxwwwwgwwwwwxwxxxwvwfwwvwxxgxwwgwxwxwwwwxwwxwwwuwwgwwwvwwwfvvvfwwwwwxwwwwgvwxwfwfwVvgvwwwwwxwwwwgvwwgxvwhgvxxxgwwxwxwwxwwfwvwffffuxwwhxvwgfuwwgfffUgwwhwwewVVvfwVeVeVfeSfUTVUUtfffvgfVfgfvwgVvfwVfeEVVUUdevfgwVufvgvgefVffggfwgvwweevfgwwvfwfwwwwvwfvwwwgvgefggggwvvvxwwVfvwgfefwffwwxwxwvwgwgvwfUfvfffeeffgfeVVwweVfVfvfggwfEEUUegvfffvwvgfvgefvvvfVfffefwwwvwgvvTUUfeffuwvwwwvwwwwxwwhvvvgwvWegwegwwvwvewvwwwgwwwwwffwwfwwwgvwwvwwwwvxwwwvwvWfwwgwvvgfgwewwwfwfewgwwwfxwwwgwvvxwwgwxgxwwwvwgvwvgwwvwwvwwwvggfvfvgvxvwwvvgwxwwgwwwfvwwwfevgwvgwgvfWwxwfwwwvwfgwvfwfwwhwwxwfvhwwggvwwwwwwgxwwgwwVvvgwwwwwwgwvxwxxgxwgwwwhwfgwgwvwwwwvgggvwwgwgwwvwvvgfvvgvvvfwfvwvwgxhgggwvWwwvggefwgwwgwwwwgwwvhwwgwwxxwwgxwwwwvwgvxwxwxxxwxwwwgvwxwgvggwgwgfvVuxWwwwfxwxwwghxwwxwwwwgfvwgwfgfugwfgvgwwxgwfwxwwgwwfvfgwwxuwwwuwgwwgugfwwwxwvvwwgwfwwvvxwwgvwwxxwwwxwwwvwwhgvwxwwwvgvxwxwwwwwvvgwwwwwwwgwwwwgxwwgwvgwwwgwwggwwwwwwwgwwwwxxvwxwwhxxwwwwwgxxwwwxwwwwwxwwwgwwfwxxffwwwxwwwvxwwxwwwvfxwvwgwvwgfxvwxwwwvgwwwfwfhwwggwwwgxwxvghwxwxwwxwwwgwgxwfxwwgwwwxxxvwwwwwwwVvghwwggvVwwvwwggvvggvvwwwwgwwwfgwwwxvvghwfvgfgfgvgvwwwxwgwgvwwxwwwfxwwwwggxgwvfwwugxxwwxgwwwwxxwwxgwfvgvwuwwwfwwxwvwwwfwvvvwfwhwwvhgxhgwwwggwwgvvffwWvgvvgfwwwfwwuwwwgvWuWewvwwhwwwwVvwgwvgvgwwwxwwWwwwwwwwwvgwxvwwwfwwwwwxhxwwwugwWwvwggwwwfvWwwvwwwwwwwwvwwxwvwvwwgwwvwwwwhwvwvvwWwvwwfufwWwvwhwxvvfgwwwvwgggwgvwwvwwwwwwwwwgwvgxvvwwfgvwwggffwvuvgwwvvgvxwxwxwwvwwvwvvvhxwgxvvffvgfvgwhwxwfwgwvvfvgwwhwwvvwwvvwgvXfwvwvwwwwwwwwwffVvvfwwwwxwwwvwwxxwxwwwwgggvwwwwwxwwwwvwwfwgfvwgwvwwvxwfgvwgwvgwwwxvwgggwgVwwffegwwxwggwvwgwwfwwwwvxxwwgvxvhwxvwwwwwwwxwxwwgwwwwwwWuvvggwgggvgvvvwffvwxvwwwxvxwwwvwwWwvhwvgUwVfvgefwvvgggwwgvwvwgvvgwwwvfwwvvVwwggfgvwwwvvgwwwfwggwffgwwxwxxwxwwxwgwfgvgvvwwfwwvwvvxwwxxxgxwgwwxxxwwwwxwhwwwxvgfvfVgvwwvwgefwwxfgvwxgwwwwwwhwwvxWvvxxwwwxwwxwwwxwvtgfgguwgwwvvfgwwwgfvwgwgufwxvvwxfvvgvfVwgvwwfgvxwwwxwwwwwvwxvwWfvxwggwxgfwgwwwwwwwwwhwwxegwveWgfvgwxwgvxwwwwufefwgfvwgegvwvfvfWgftffeeggfffugvwwgwwvwgggvwwwwggwgfwxwwegVggvfwwewwvgwgvhvvfwwvVfvgwggwwwwwwxvwvvwxwwgwgwwvgwwwwxwwgvfwhfvvwwvvwvwwvgvvwgvvwwvgvvfvvwgvwvvwwwvvewvuVVffgwfgfgvfffvwgvwvfwwwwwvgfgfvfwefvvgwwvwwvvgffwvxvxxwxwxwxwwwwwwwxwwwwgvxwxwfwwwwwgwxwwwwxgwvvwwwwwwxwwwwwwwgxwwxwxwxwwwxwwwwxhwgwwwxwxxwvvwgggwwwwwxwvgvggxwvwfgwwwwvfwffVvggvwewgvwfwvgwwwwwgwwxwwgxfvgwwgvwwhxxwwxhwwwwwxxwxxxxxwxvwxxwwgwwwwwxgwwwfwwwgwgwwwvvvvggwwwgwxxgwwwvwwwxwxxwwwwhwwwwxwwwxwwwggxxwwwwwwwxxvwxxxwwxxhwwvwvwvgwwxwwWgxXggwwfxwwwgxfvvwxxgfwggvvvgewfxgxwvwfgwfwvwwuvwwgwwuffxgwwvwwgwwxwwvwwwwxwwhwwxxxwxwwgxgxwwwwxxwwwxwfwwvgwwvgwwgwgwvgwfgwwgwwxgwwxwxwwxwxwwxwgxxwwgwwwxvhwxwgwxwwxhwxxxwwwwwwwwwwwwwwwxxwwvgvwgwgvwwvxxwxvgwvwwvvhvwVwfewwugwwwvgfgfffwwwwgxwwgwgxwfxgwwgxwwhhwwgggwwxwwwwwwwwwxwxxwwwxxwxwgvwwwVgwvwwxgwwwwwwfvvgwwwwwggwgwfwwfxwwgwwwwwgwwxwwwWvwvgwfgwwwxwhwwxwwwxwgwgwwwxwwwwvwxxxwvxwxwgwgwwvwwwgwvggxfggvwvvhfhgxwwvgfxvfuwvwgwwfwgvgvvgewfwwxuwfwvfwwuvwggvxwwgwhwvgfWgwwwwwWwwxwxxwhwfwxxxwwwvgxwhxxwgvwxfwwwwgwwwxwvwgwwwxwfvggwgwwwvgwwvgwwwhxwwwvwwwgwwwwwwwwwwwxxwxxhuwwwhhwfxwwxwvwwxvwwwxxwwwxwxwwgvwwvgwwgwwwvvwwvvvwwvvwxxwwwwvgwwgvgweVvuvhevggxwwwvggwVvwwfwgvwwxwvuxfwgwwxhwwwwwwwxwxxxxxxxwwwxwwxxxxxgwfggvwgvfwxvvvvwxwgwxgwvwgwvwxwwwwwwxwwhwwwwxxvxvwxwwwvwxgwxwwvxwwxxWggvxwugwgwwggwfvwxfxgwhwxwwvgwwWwWUVfwewgfhvwvwwwguwuvwvwfwgwgwfwfxggxwgwwggwhxgwwhxxwgxwwxxwxggwwvvwgxwgwwwwwvvwgxxgwwwwwvwxwwwxxwwxxwVVwfefggwwWvvwwwwvuvVwgfggwfxwuwfevvgvwwwwwvgwwwwwwwgxFwggffuwvfVwffwfggvWffgvfefxvxfffvwvwwffVwwgfvgguvfwwwwwfVvfgwwwwxVfvwwfwWfffvwfwwwwgwwwxwggwwwwxwwvxWvwxfwwwwgwxwwwxwwgwfwxwvwwvggfwwwvfgwvwgwwvfgfgwxwwfvvVfgwxwwwwffwwfwvwxwgvgxgwwwxvwwVgxwwwxwwwfwxwhwwwhxwxwwxxwwfwwgxvwwwwwvwwwwgwwwwwxwwxwfwwgvvwgwvwgwwvvgwfgwgwwwwwwwgwwvwwwwgwwwxwwwwwwwxvgwwwwggvvwwvwwwvwwxggxxwxvxwxwwxwwwgwwwwwwwgggvwwvwvhgwwwxwwgwwwwwxwxwxxwwvwgwxwwgwwwwwwxwxwxwxwwxwwwwwxxwxhwwwwwxwgwwgwwxwgwwwwwwwvwwwwvwwwxxxwxwwggwwwxwhwgggwwvwwwwwwwgwvwwwwwvxwxwwwwwgwxwwwwvwwxxwxvgwxwwxwxfxvwwwwxwxwxxwwwwwwwxwwvwwwhwwwvvwvvhwvgvxwfgwgvwwxfxwwxwwwwwgwwwwwwwwhxwxwwwhwwwwxxxxwwwxwxwxwwxxwxxwwxwwwxwvwwxwwfxwwwgvwxxxwwwwgxwwxwxwxwuguggvwwgvwwfgwwfwwwwwgxwwwwxwxvgwvwgvwwwwwvwwxwwwwwwwwxxwxxwwwxxxxvvwxgvgwxwhwxwwwxxwwxwxwwwxwxwwxxxxwwvvggwwwggwxxxhwwwwxwwxwwxwwwwwwwxxxxwgwgwwfwwxvwvwgfwgwwgwwwxfwvwwxwvxwfwgwwwxwwwxgwvvwwwwfxwwwwgwgwfxxgwwwxxwxxwwwxwuxvwxwwgvwxgwwfgxxwwxfgwwwvggwvwwvhvgvgwwgwffvxwvwwvvvwwwggggfwvwwwwwgxvwwwwgwwvfWhvwwxwwwggvxwwwvwwwwwxxxwwfwvwgwvwwgwxwwwxfgwwwhwggxwxwwxwgwvwwwwwwgvwwwwgvWvwWvgwwwwgwwvwwfvwwwgwwgwwwwwwvwxfwwvwwwwwvfwwxwwgwwwwwwxwvwwwwxxwxwwuewwWvwwgwVwxwwwwhwgvwxwxxwxhwvgwwwwwwwvwvwxwwxwvwxheewwWvwwfwVwwwwgvgggfxxgwxwwxhwvgvwwwwwfwwwwwwwwwgwwwgvfwwfgwwwwvwwxgvfwgwgvxgxwwfgvwwwwwxfwwgvvwvwghgwwwwxwvgwwwwwxwvwwwwwwwwfwwgwwxwgvwwwwwwwgwwwwwwwwwvwxwwwwxwwxhggwfwxwxvgwwwwwwfhwwwwwwxxgwwvwwwwwwwvwwwwwgwgwwhwggwwwfwwxvgwwwwgggwfwwvwgwgxxxgwwvwwvwwvwgwvwwwwgwwxwhxwwgwvVvvgwuwvwvgvwwegugxwwvwwgwwwgwvwwwwwwgvgwfVvWgwgwhhwxxwgvvvvvvwgwvvvwwvfhggwwgxvvwwwwwxwggwxxwxwwwxwwxwxwwwgxwxxxwxwwvwwxwxwhxwwwwwvwxxxwwhxxxvwxvgwwwwwxxxwwwgvwgghxwwwxxvwvwgwwwwxwwwxwgxwvwgvgwwfwwwwgwwggvggxfhwxwwwwwwfwwwVwVwgwfgwwwxwgvwwwwwvfwwgwgwwwwwgwwwwwwxwwwwxgvggfvvffgwfwffxwwwwWffvgvfdffgfvwvgvuDVfTEfgffVffeUffvfffeffVgfvfffeuxgvgvVfgfwgwgwfvfdefVfvwfffufwwuffgvvvwwwfwgwgwgwwwwVfvwfffxfewxwggwwxwwwfffwgfvvwgfvfvvfgffuwwwvfvWffvwwggwwwgfffevvwfVdfVVeefVVfVfffVvffvwffgfvufweffvvfgeefvwwefwwvfvvvwwwxwwwwwxwwwwwwVwvwfgwgwwwwwwwvwwwwvggwwwwwvwwwxwwwxxwvwwwgwwxwgwwwwgwfwvgxhwwvwwxhgvwwwxwwxxxxxwwwwwwwwxwxxwwwgwwwvwwxwwwwvxwxwxgvxvwgxwfwgwwwgwgxwvxwwfwwfwwxwwwwxwxxwxwwxwwxwwwwxwxwxxwwxwvgwvxwwggwwwxxxwgwwhxwwwwvwwwxwwvvwwwwwwwwwwhgwwwwwwvvvwwxwwwxxgwwvghhxwwwvxwwwxwwvwxwxxxxxxwvwwvwxxwvxwxwggwwwhgwxxggvvwwwwxggwxxvvwvwgxvwwgvwvwfvxwwgwwgwwwwwwvgwwwfxwwwwxwgvxwwwxwvwwwgwwwvwwwUggwwwwvwvhwwwgwvWvgxwgwvwfwwvvwggwvfwvgvgvvwwwvwwvxfgwwwwgxwwvwxwwwwhwxwgwxxwgvfwxwvxxgvwfwgwwwxwvwwgwgwgwwwwwwwvwxvwwvwwxxwwwwfwvwwvhvvfwvwWwfwVvgvvwwwfvfxvwwvwfggwgWwVwUfwvvwvgfvfwgvwgvvvggwfwvgwwgvgwwgfwfwxwgwhxwfwxxwwwwgvwwwwwvxggwwwxwwfwwguguwxfwwwvwwwvgwvwvwwwwgwwwgfwwfwwvewvvgwwfxxwwwvwxvwfwgvWugwfwwgfgwwwfgvvwwwvwfwwwwxxfwewvwwwfvwxwwwwvwvwvwgwwgwgwwvwxwwwwfwVwfwwhvvuwwwwvwvgwfwfwgvhvfgfwfwvgvfvvwwvwwvgxvWvgwvgfwwwgggwgggwwgwxxgwxwwhxxwxwwxwwwxwxwwxxxxxwgwggwgvxvvvwwwvwwgwwwwwvvwwwvwwwgwxwxgxvwgwvxxwwwgxwgxhhwxwwwvwwwwwwvwwvvgwhwwwwghwwwwxwxwvwhxgxxvwwwwxvwwwwwvwwwhgfvwwwfvwwxwwwvwhvwwvwxwfwwwvvwxvwwwggfwwwwvxvwwwvvhfwwwvwwwwwxwgwwwwwwxwgwwxwwwwxvxwxwwwwwgxwvwwvwwxwxwwwvgwwgwwwxwwwgwwwwxwwvxwwwxwwwgwvwwxxwwwfwwwxxxwxgwwfwwxxwwwwwxwwwwwxxvwwwhwwfvwfwwwwxwwggwwxvvxfwxwxgwwxxwwWvvwwvxfwfwwwvgvgvwwwgwwxwwvwfxwwwwwwwggwwwwwxwwwwwwwxgfxgxgwxxvwwwwxxwxwggvvvfwvvvxwxwwwvwwvvwxxxxwgwwwxxwxwxxxggggggwgfwvxxwwfvffwfvxwwxfvgwwwwxxwwwxxxwxewgvvwfwggvwfwwfwfwvgwwwwwwfgwfwxxwvggwvvvfwgvgwgfgvwgxgxwwxfwvvvgvwwgwhwwwwxgwgwxwwwhxwxwwxwxwxwwgwwguxwgwxwwwxvwvfvvfVwfvvvgwwwewwfugUvhfWfvgVhvvwwvggwwwgwxgewwffwwwgwxwwwvwwxwwxxwxwxwwfwwwxwwfxwwwwxvwvwwxgwvxwxwwxwwwwuwgggwwvwfwgvuwwwwwxwwwwwwVvgVgvvgfwvvgvugwwxxwxgwwwwwwvwvfgfwwfgwvwvgvwfwwwxxwxxxwxxwwxxvwwxgwwwxgvhvxwwwwfwVvgvgwvwwwwgwwgwgvhggvgghvwwxwxxwxgwwwwgwxwwwxwwgwwxxwwwvgwhfwwgfxwvvvxwhgvwxwxwxwwxxfwfWwvwgwwvvhwxvxxwwxxhwwfgvvfgvwwvvwwwxwwwwxxxwxwwfgwhgWvgwvwvwvxxgwwxvxwwwxwxxwxwwwvwwxwxxvwwgwfewggwwwfvwwwvwwwvxfgvfxghwgwwvwwwwxvwwgxwxwxwxxvxwwwwvwhfxwxwwxwhwvwwwwwwxwxwwwwxwwgwvxvgwwwwwgvwxgxwwgvwgvxgwWwvfwggvfwgwwgwwwwxxwwhxgwvfwwgvgwvwwwgwwxxwwwwwwwgwwgwwwvwwVWvwuvguvwggfwwwwwuwwgvwwwWwwwwxxggggwwwwgvwxwxWWvwgwwwuwxffvwwxwvwwxevggvwwxvwwwwwxxgggfwwxfvwwwwxfwwwWwggwVvvvwffwfhvwwhgxUevwfwwvwuvxwfwwggvgfwwgwVfvwwwwwvwwfwhgfwgwwwggwwvwgwgfwgwwwwwwwgwxvwgxwwwxwxwxwwwwwwvwuwwgvhxwgwgwfggvegfwwvgvwhgVwvguvfugvgVevwfvwvvgvfwwvwuwwwwwgwgwwwwvxwvwwwwwwwxxxwwwwvwvgwxwvwvwwwwwvxwwvwwwvwwxwwwvvvwwwvwgwvvwwwfwgvgvvgfvfvfvwevffwfwwevvvxwxvwwwvwwwwwwwvgWgfvgfwgwgwwwwwgwfwwgwwwwgwffwfgwwwwxwFgggvevfdfgeVfwwvwvvvwvwvvgwwwwfwwggvwwvwfeVvwgfgvwgwwwwwFVgfvfwvtfgeVfvwvwuvwguvfvgwxwwwVwwwwwwwwxgeVfwgvgvwvwwwwwwwgfwfWuffgVgvgffwvgvfwghvwUVuwfgvwvvgwwweffvgvvfxfgUVvwvwwwwvvwwxuvgfvgxvwvwfxvxggvfvgVwfgwgwwwwwvwxfwwwwwwwwwvgvwxxwwvgWggvfwvgwvWwwwggwwgggwwwwwwwvwvfgwvvwvguvvvwvwwwvwgxfuvgwgwwVvfgwvgwgwggwvgwvvwvwxwwvwwwwvwvwfvvgwwwgwvwwwwwwfvVfvfwwgfuWggfwwufwxwewVfvwwwgwgwvwWfgfwuffgWgvffguwwvwwwgvvvxWvwvfxwgwuwwgwWgxwfvvvvggwwvvwwvgwwwwwwwwxwgwwwwvgxhwwwfgxhvwvwwwwgxwxvwwvwwwwwwwgxwwwwwwwwxgwwwvwwwwxfggvwwvwwwwwwxxwvxwvgfwvxwxxgwwwxwwgwvwvwwwfwwwxgwfgfffwggfxvfvwgvwhxgwwffxgwwwwwwxvgfvvvfghfwwguxvwwwgwxwwxwuwfvgxvvwfxwxwwwwfwvgwwvwwwfhwwxwxwwwxxwwwgwxwwvwxwwwwfwwgwwwgggvwwgwwvwwwwwgwxgwgwhwwwwwwwwwxwwwxwwwwwgwwxxxxwwwxxwxwwxxwwwxwxwwwwwxwxwwwxwwwxxwxwggxwhwwgwxvwvwxwwwxvwgvvwwgwwgwwwwxgwwwwwwgwxxvwwwgwxwwvwxwwwwxwwxwvwwwggxhgxwxwxwwxwwwwwwwxwwgwxwwgvgwwggwwwwggwwwwwwwwwwwwwwwgwhwxwwwwwwxwxwxwwwwwwwxwgwwwwwxwwwwwxxwwxwwxgwggwwxwwxxxwwwxwwwwxwwxwwwhxxwwwwwwwxwvwgwgwgxwwwgwwwwxxwgwwwwvhxwwgxxwwxgwwwxwwxxwwwwwwwwxwwhwuwgwxwwwxwhvwwwwwwwwwxwgwxxwwgwwggwwgwhvwvwwvgwfvwwxwwwwgwgxxwfwwxwwxwxwwxxxxxwwwwvxxwwwwxwwxwwwwxwxwxgwwwhwwxxwwvwxwwxxxwwwhwvxwwxxwwwgxwxwwWwugwfgvwhwwgwwwxvwfwgwwwwvwwgvwgvwwxxxwwwxwwwwwwvwwxxxwxwxwwwwwwxwwwvvwxfxwgxwwwwxxwgwxgwwwwwxwxwwwxwxwwwxwwwxwwxxwwfvgfwwwwxgwwwxwfwwgxvwwwwxwwwwgwwxwxwfwwwwwwxxxwwwvvwwwwfwgwwwwwffwhwgfvwwwgvwwwxgwvvfgwwgwggvgwwgvwgwwxxwvwwwgfhhfwwwwwvxwwwwwwwxxwwwwvwvwhwwxwwwwxwxgwxwvwvxvxwwwwgvwgvwggfwwwwwwgwvhgwwwwwwvgwfvwgwwwwxwxwwwxvwwgwwxwwwgwwwwxwwwwxxwxxxgvwwwwfwxwwwfxwwwwwgwvvgwxwxwwxwgwwxwwwwevguwwwWfwvxfwwwvwwewwgvwwwghvwwvxgwwfwwfwxxxwgwwwwwxwwwxxwxgwxgvvwvvwgwwxwxfuwxVwgwwwvgxxwvwwwwwwwxwhwwwwwwwxvxxwgwxvgwwxxwwfuwwVwwgwwwwvgxwxevgwvwwwwxwguxfwwwwxgvwwwxwvvgxwwwwvvvvvwwfvwxxvgwwffvwwgvwwxwwxvgwwxffVffvvwwfWfggfwwgxvhvwvwwuvvfvwwvgwvwwgwwwwxwwxxwxwwwwwwwwvwfwwhwwxwwwwhghwvvwwxxwwxfxwgxwwgxfgwwwxwggwgvwwwwvwwxvwwwvvxgfwxgvwwwwwwxgxvxwhfwvvwvxxwxvwwgwwgwwgwwgwxwwwwvwvwwwgfWgwgwfxwvwfwfegxwxgwfwwwwxwwwwxwwgffefVwvwWWfhvgvvvvWwwvvwwvwgvvwfxgvwuhWgwwgxwwwxwgwwgwwxvwxwwxwgggvvvfwgwwxwwwvvwfxwwxwxxwwwwwwwwhwwwwwwfwwvwxhvwwxwxwxwvvxwfwwvwvwxxwwwVvwVwwvwwwvwxwvwwvwwwwgvwwwwxfwwxwxwxwwfvvwgwvxgxwggwvggvwghvwwxwwwwxwwwxxWWeuVvwwwgfgfwgwwxgwwwxfwwfgvwggvwgwvgxwwwxwwwwwwwxgwxxxxxwxwwxwwxwwwwwhwgwwwwwgvfvWefgfgUffvvvwwwwgwwwwwgwvgfvwwwwgwfffwwwwgvgxwwfwwwwvwxxwxwwxwxxwwwwwxxwwwxxwxwwwxwxwwggxwxwfwwwwwwwwwgvwwwgffUwvwwfwgfffwwwxxwxwwwwwwwxwxxfffgwwwwwwvgwwwwxwwwxwxwwwwwwgxwwwwwwwxwwwwvhvwwwgwwwwwwwwwxwwfxwwxwwwfwwwwvggxwxwxwxwgwwwwwxwwxwxwwxxwwwvxwwwxwwwwwwvwvvwvwgwwxwxxhwwvwwwwfwwwwxfwwgvwxwwhvwwfwwwgwwxwwwwwvwwwwwxwxxxxwwvxwxwwwwwxxxwwwwwxwwgwwvwxxwxwwwxwwwggxwwwxwwggggwwvxvvwvxwwwwxwwwvvxwwwxwwwwwwwgwwxwggwwwwvxwwwgwgwwvwwwwwxxxxwwvvxwxwwwxwgwwwgwwwxwwgfxhwwwwvxvvgwxwwxwwhfwwwwvwwwvwwvwgwwwxwxxwgwwwvwwwxwwwwwwwwvvxwwxwwgwwxwwvwxwwxwwxwwwwwxgvwwwwfwfwxwgvwwgwvwwwxwxwxwgvwwwwwwwxwwxwwwwwwwfvwwwwwwxvgwwwgvxwwxwxwxwxwwgvwwwwwxwwwwwwwxwwgwgxwwwxwxwwwxwwwhgwwwwggwgwwwwwwwhwwwwxwwwwwwxwxwwwxxgwxwvvwwwwhwwwfwwwgwwwwwxwwwxgwvgweWgwfgvwgwggwvVwwvwvhwwwvwgwgwvggfguvwwwvwvwhwgwvwgvgguVgwfgvwxgwwggvVwxvwvwwvwwgwwwwwghfgevwwxwwvwwggfwwwwvgwwxwwgwvxwwwwwwwwwhwfwgwxwhwwwxvfwwwwwwwvwgvwggwwwwwgwwwxwgvwwgwwwwwwwwxwgwxwvvvgwxwxxwwwwgxxgvhwfwxwwwxxhwwfwwwwwxwwwvwvwwggwfgwWwwvvvgxwwwwgggwwvwvvvuxvwwwwwwgxwvwwwwwwwwvwwwwwhvwfvvVvwvvvwwgwwwgwvvwxxvvfevwwwxxwwwvvwwwvwwxxwwxwwxxwwwvwxxxvvwwxxwxwxUwgvvwvwwwgwwfwggfxxwwvwgwwwwwvwgvwwwgwwwwwwwxwgvvgwxwwxwwhwwwwggwxwgwfwwgwwfgvwgwgwwgwwxxwxwgvgwvWwfwvwvwwvggwvwxgwvwguwwwwwwwvwwwwwwwwwhvwwwgvwxwwwfwgfwwwwvwwwwwwwfxwxwwgfwwwwwwvwwwwfgwwwwvvgxfwgwgxwgvgvvwwwwwwwxgeffwewewwvvgfggwfvfwwwgfwwwfwgggxwgwvxwwwwvwfvxwgffwwxwxgwwwwxxxwwxxxvvgwhxxxxxxxwxxxxxxwwxxxwwxxxxxxxxwvvwwggwxxxwwhvgwxwwgwwxwwwwwwvwwxwwwxwwxwxwwwxxwxwxxwwxwgggUwggewvEtwVuVTfUWfVffwggefefgffUufVuevvwvwwwwwxgvwggfgUefvUVwvggfWvvwgFefVvvVfvwhfwvVtwfuWUfVWeevwVugvgfvfgffvgegUefvefVwfgfgvffeWfUfvf6ffvwfwwwgvvwWuvgwggUewvEWggvgfWuvgvGdeVuvGewwvwwfwgfffwvwwgwwgwWffgvwWfvwwwwfhwwfUfeVggeewwewvfgvefUgvTeevvvvVggggguewvvffggvefwwwfgfuwfvVegfefvgwwwwwxwvwvwvvwgffuwfgWgwgggvvwgufuvvfVfwvvwgWvugwveffgeevwhvuxwvffwgvffgggfewfVgufgwgfvgwgUeffvfFfgwwvwfwwxvwwvwwWevwgfevfwfwvfvfweeevfvFfwwvwgvwwgfvgwwwwwwvwvfvwwwffwwwwggWwxWVgfgggeuwWgggggguVggWdfefgggWfwwwvvfVwvgWgegvVfuxwwwvVevfvWfffwffuwfwwgwwxwwwfwgvfUwfVeVwwwgvfvvwgfevfvfFvxhggvffwvvWWfggVvvwffvwXgfwgfvvggvefvwfeUhggwgggfwVVgffgfFvvgwwxwwwwwvwffwgefvwWfWgwggwffwwewffwfVvwgwfwwggfgwvwwwwwwwgfvwwwgfvwwwwgvWwxfuVgvWfTwwWvggvgvegvgeefevggvvfwvgefegefgfgfffvwxwwwgfwfvwwwvgvgxwwvxgwwxwvwwwwfgvgfgvwgfwUgvwwggvfvfvwwgwfVvgvffgfuffVfvwvgfwvgwvewveuwfvgggfgUwgvfgfVuxveVuwFtwwxwvwxvvwfwwguwvgwwgvwwfvvwwwggvgwfVevfvwffggvwgvfwwxfgwwwwWvwgwwxwwvwwwwwwvvfwwwfwhwfwvwwvgwfwgVvgwggwUvwxfvvVUwWfwTveffUefwvgeUeffvfeffgvUuvvfvwwgvwwwwVewgfVUwffVDwvwfvwVuvgwEuwVuVdwwVvfVTwWewDuUfefuwffgvwUvfgffvwfgVUgeVVVwVvffvfvfVffevfffsvwwwwwwvwxwgfvvgVUfwffEwfvfvwfufvgUewfefuwgwfwwggfVwgwwwwwfwgffvwgffuwwwwgwVfwVfUggUVEwwwhfggffVvgeVVgVvgwgwvwgvvVwvffwfvfwvhuwwwwwgvgwwwwwggfxwwxwwwwvgwwwwwhwwgvgwwwwfwgvwwggfvwwvwwwwfvfgwvvfgggfvwwwwvwwvwfwwvhffwwwvvwwfgwfgffWegfvgvvWuvhwxxxxwwwwwxvwvwwhvwwwwwwwfwwfwfgfvwgwvgwwwxwxgwwwwfwgwxwgvwwwxgxwgvwwwxwgwgwwgvwvwwvwvgwuwfgvuwvwgwwgvwgvvfvvvvffwwwwxwwwwxwwggvwwgvfwwwwwwwxwxwwfxfwgfvwwfvgvwwwwwwwwvgwvgwfwwgffgffwugvvvfwwwvwgwwvffvwvwfvgggvgffguevgwvvwuufxwwwwgwwwwvvwwwgxwwfgvwwgvwvvwwwvgvwwvwvxwwwxwggxxwgwwvwwwwvwwwwwhvwvwwwxwvwggwuffwwwwwgwugwwggwxgggggwefvfvefvvvfefwvfxwvwwwgfwfwgwvvvwgvhgwwvwwwuvvwwgvgvwVVvwvvwvvvwwvfvwvfffgvvgffgVuffgeffvfwgufvvwgfgwuVgfgwvfuvWWvgffvuegfwuewtdxwwxwhvwvwwwwgwfvgvhwgfgwfwUwwvvfwwfggfgwwwwwgxwwgWvvfwwvwggfwwvwgwxgggwwhwfwgggevwwwwgwwwvwwwvfwvwhfwwwwxwwvwgwffwwwffvfuwwwwhgewVefewfgvfwwgwgvgvvwwwwwwggvVwvgfvwfvvgffvwgwwfvgUUtwxwwvwwwffgwgfWvfvwvwwwwwvwggwvxwwvgvffwVxwwwgvgfvVvgffffUvwvfxgvgwwwwwwwgfgegwwvwgwvwggffvvwffWvgFUugwfeVfffffgwvwwwwgfffffvgffwwwwwwwwwfvffvVUTwwwwwvggffevfEUeVvvVVwwWfwfevvffVUfffeefvwwwgfvvwwfggfwuggxvwwxxwxwfwvwwvwwffgfgwwwfwvwgUguwwffvfwwgfwgUewffffwVfffvxfvwwwgfwVwfwvWfwevgffffgfgewvwefffvtfwVwwwwwwwfvvwwwwfgWeVwwwwwfwvwgfwvfgffvVwwxwwggffwwvvwwwwgffvwgvwgwwwgvgwwWvWgwVfefvgvgwwgvggwgffWvWvwgVUFvwfWgeeegueFGVgWfuegwwgeffvwgefUFvffvvwwwxwwvfWgwvfvvVVfeevVgwvVWwgwEFgfvfVegvgVWwfttwfeVVVGgFuuwuvwvvVWgWffvVWVdetuUeWVgWfgfvfWWVfcvVFvvggwxxvvVVwfwfwvfffttffgwwgWgwvWVfWvVeuUfvggwefwvgwgggwwVVWwvgfvfwwwwuufgwdeffveEgfeuvvvgffhwveeWfvdeweeeVvfuWVFfdVfTd6efUuEvvffEeUUfUVUeeVfvfWfffwfgffuWwvgfffUUFfdfWfffeFffVd6fefUuTgfvfuWV5fdFfedFfVTuUgFfuWweeFuWeuVguWVfEfUTWeuWuWVueeFUuTUrUETVffvwfgffuWvvwfffeU5fdVffffdVeffdFVvfEuUfvwgvfUFfeffvgvuWvggeFfffVuegvgfVwugwWfefgFUWufVwugwWVguwWUWdfWUuWVfUfgvUgeFdfFeeCfTFuUeggfVTUVeeVUVeUfvfveffvvgffvUwwvgffVeUFdVgffffTffffCffeVuEegfgvUgUFcfVdfDfEVuUtfVdwWufTvUWveuvUgVeVfEWUvUwUguUfVVuEUuRUUeeffwvgffvUwwvgffVUVFcfVffffEffffDfvVVtUevvgwfeVVdffVgwvUggwfTVfffuUvwwffWuwggVefgfUWEvfWuvgweWVvgTWUfgTEweVFVvgWWgfeugefGGGWuTfvvwwVUffgwgffFVffvgfgwwxxvvWVvvvvwwfffeeWvvvvWgwggGGvffuVUfVwgWgWftdfueVVgWuVVwvuuwvvgWVgffggWeetufXeeVWgVvffWGueUvfcFVgggwwwxwwWgvggvvveVvddgffvvWWuvwVVvVgUffgwwvgweuwvuggvwgfVvvwvffwgwwwvegwfetffVWfufvuuwffhfvvgWdeefetgguWvwvgvfwfgffuVeVvffvgwwwfvvwvwfgvgfwvuwwwwvwxxfvwwvwwgggwfvfgwwgfwwfVuwwuffvWvwugvVfUfffegfffVfugwfxwwvgvWvvgvfgVwffVgffugvgwwffvffvgvtWvwwwxvwwgvwwfggfvUwwWwwwgfwwvfvwwvffvgvwvgwffvwgwwxwgwwgffwwwwvgwwwwfwwgwVvvWgffwVwfwwggwfwgfVVwfwVxxwwwwgvfvwfwvvvvggwwwwxwwwxwwwwwwxwvwwwwvwwwgxwwwwxwgvwwwwwwwwhvvwxfwwwxwwvhwwvffwfwfvgwwvvwvgweVxwwvwwwfgwgwgwVewwgvgwguwWwwwwwwgwgwwvwwxxwwwxwwvvxwwwxwwwfwwwwwfwwwvwwwfwwvgwxwxgvvxxwxwxxfwwwwwwwgwwxfxxxxwxvwwwwWvfffwwvgfVVgggffvfVfeuhgfwvETvfeeefUVfUuwffwwwvwwggvwvwfvggvfUeevwwffvwvvgeVdvwVTdwwfwvVUwffffffFeUuwggxxwwwwwWfgwvvgfwvUfVwwvwWfgfwfUfUufVDuvVewvwvwfgffvgegfefveUVwfgvgffffVffeff6TdwffwgvvfwfwwgffwwwwwfwfvwWUvxwwwfwgwwfVVfwgVUwxffggwwUUvggVUUeegfffwvfvVffVVeffefffUvgvwfwvfuvwffwgffVVwwwwwwfwxwwwwwwvgvwwvvvvUwwfvgwfgffvvvgevfwUffvVfffffgUeVUfvgfwgvwfvfwVfvUgffgvfffgewfgffvfvdfgeevfvfxwgwwwUwxwfgfwwfvvwwwvfefwwwgfWUwgffugfFfwwvgvhvwwvffwfvwgfwgwvvvgfwWuwwwwgvwfvhwwgfgfgffhgwgffffgvgugVTUVvvgggffefedgvWggVuuvwwvggWVfGVWvfufVvwxwgwfggwwwfwgvfvvugfvffVGgVfVvfggfvWvffgeVVfffffVUfVFVf6euvfvwvuggWggVvfVVgVveeVUffWWWfUuVVgcfVTvVVfwggggWWgwwfeguvgvvfwgvfffgufvfgEWVefvffeVfwvwvvxwgvwfWwfgfwggwfvwVwggguuwwwfweufVhwfwfuueffXwfggufUgeeVtfVVUVffeWfVfTEecefdFUuEVfffeeUVTUVeVVUfffvwffeffuWffwvwfffVfdffffVd6UefefdFUuTfvfgvffuGeFfeEfTfVcFDuUwWweVfduWdVeuVveWVvUweUVfeFeVUuTeVUrUEuUUUwvfgeffuGffvvffVeFfefffeVdFVUfffcFEuUfeffewgfWwufgvfgeFVefffdVVuefffVuWwefffwWwUVgufwgfWfUUWdfgvfGUWUUuVgfuVffwgVggWffFugegUWuVvvvwfgvgVvVvffvvwwvwvwgwwwVwwwwvgwwwWvvgfvwvTggvwfgUgVvvwwwffwUWfeefVUvVgEVuFuwgvwWvwfwVgffgVvgvgvfgfwVwfgVvVgvcfefffwwggwgvVwwvwfvfwuguwgwvwvUfvfggvEgufuwvfwvwwwgvwwwvwvegwfgwwVwfvwgfwvgwvwwfgvfhfwwvvggvegfwwfvgVhVeVfWffVVWwggWfvfefutVffffDfwgwvfVggefgVVuefgwwwwwvwwgWvvvvfvvwfvewwfvgWGffvVfffvfVvfgggggfVvVefeeewfFVuFfggvvffuggWgvVfeUGgefueWfeWGVVveUgVvfcvVfVfvwwgvwggWwvvwfVfvveffffvVWVfffffGVvVfffVVfgwwwvwwwwggWvvvfwWgfvgwffhvudfwgggueWfvgwgvfueWeuwwgeUhfffuvvfefgvwggvwgvffUwffgvfewvgwxwffewwgffgwvvwwwwvwgvwwgwvxwwwfwvwgvWuwwgwvwwgVfwwwWuggfevffffeufWUuFUvwgfwffgvgvgfeggfgfgfgffvfffvgfffvwvffvfvgwwvwguwwvwvwvwwfgwfwwggfwfvwwVuffvvvvgvxwwfxxvwwwgvwgwvgfvgfwgwgVvfwxwwgwfgfewwgvVwfggfgggxfwffgVwgwwwxxwwwwggvfwwvvwvwwxwxxxxwwxxwxxxwwxwvwwwwwxwxhwwwwwwfguwwwgxwgwxwwvvgwxwvvgvfwwwhwfvwwvgffwvvfwwwgxwvwwwwgxxwwxwxwwwwxwwwgxwwxwwwxxxxxwwwxxwxxwwwwxxxwwwxxwxxxwwxxVedfevvvgVUevefgFWDGeuvhfwwVevevwfffffvfgwwfwxwwgwvgxgvwgvvfUffgVfwggwwfVgfvffeVfgvfvgFfffffVEWUGfevgwvwwwhVhfXvvwgvwfuUuegggfwfhvvvwguufueWUfvwfwwwwfwfgwgwgvfeVfvgfffvgwggVWvuWffffffwgwgVwgvwvwwgwwgwwvvfffvgfwwwwwfuVggegfvgVfggvgwwwfgweeeVeTUeeeffgffUeffffFT6effgwwWdvVuvgeeeUfVeguwwwwvwffwwwgwwuwfeegggfffggwffffvfefefwfwwfVefUfvvTVeWeeVwwwvwwvvhvXfufwwggvUuTgWvfWfWvvuvgfueftdFVgfwgwwhwvwgwgvfgwfffVUffwfeffvgfUfdfudeVffgwwfggffvvvwfvgwxgvhfvfvufgwwwfwvwwgvewgWgWfvgffWfgVvwggWfugTfVTeVdvgwfVeffufWgFWdUwvgvwwUfeTvvfeeUdfvvggfvwggwgwvgwgvggvfUfwfVWffgvffegeVweUftgfefgeffUeVe6V4fUVVuwuwwvwWxVhfVxfgwwufteFugWgVgfewfwfUgfVgUFfwwewwffffewwgvggvfVUgvgeVfgvvwVfeefUefufwwwgvgUwvwfgwgwvwgfxvVwVfvfgwvwvwwwwvfVvgEuVwgfVvgVvgvgVvgVdfevwvwwxfvgggfwffgggxggxgvwwvwvwwwvwwxwwwwvwwwwwwhvwwwwxgwvwxwggwwfvwxwxfwxgwgewwffgffvwhvxvgvwvwwwfwxgwvwwfxggwfvvwuwvfwvfggvvwvwxvvxvgwwwhwwgwwwwwgwwvvwxwffvwfuwwwhwwgxhwwwvwwwwgwwgvwxvvwxwwwxhwvwwfwwwwwxwwxwwwwhvxFUVVUfvfffUVeVffUfCUfTuhvwwFffUgfffWVeffVvffwwgwgfvwwwvwVwfVVgvVfvvevgwfUvwvffTugVfvfVfUEefVfTeSUfUewfgwgwwfwTfwefwvwhfWVvWUwfVfwVvfgvefwVfetUwffwvggfvwwWvwVvfVEgfVffvfegvfTuweUVeuffvgfvfggvfgwwvwgxwfwwfVfefwvgwgwwwgXewgfvWUwfhfwgeguvwvgefVeGvvgfwwUwwgvwguvwfvvgvWwvwvvwxwwgwggwwwggwwwwwwwggxwwwxwvwwwwWggwwgxvfvhvhvvggwgvfwfvwwvvfuWfvvwvwwwgghVgwvgggwXgxffvgwFwvwwgwvfhwwgwgwgwWwwxwwvwvvwvwwgfwwwwwwffugvggvwwxwvxwwgwhwxwwwvwwwwuxwhwgxwxwwxggfwvwvwxvwvwwwwgevgvwvhwwxvfwugwwvvvfuwvvxxwwwhvgwwwwwwxwwgwwhxgvxwwwxwwxwvXwwwvvwvvvvwfdggvwwWfvgffvevvvgxwgwwwggggggwwfwggwgwgvvvvGvvvvgfuxggwgvvvwwgwvwvwwgwvwwwwwvgwwxwwgfuvvvxwxwvwwhwgxwgwwgggvwxxggxhgxhwwxwghwgwxxwwwggwgwxgfwwxfwggvwfvfvvxvgggwwwwggwwwwwwvwwwxwwwvwhgwwwwwvwvwxhxgwgfvwwvfwfhgwguwefufuwvfgxwvwfwwwVwwwwwfvgwgwwwgVwwfwFgggwffxwvvgwwwggwgxwwwwwvwvwwwwwgggwwwvfwwfvvfwwgxuxwwxhgwwwwwgwvvvwwwxxwwgxvgwxwwxxxxwwvwwgfvwwxwwwvwgvvVwwgffffwfgxgefgvgegUfvfvwwwwwgfwfwwwgwwgewwgfvwwwvgfguffwwfffVUtxwwgvwwweggwgfVffvvgwwwwgwwgwvfhgugvwwfvVXvvwgfgvwWfgfvgfUvwgfwwwxwwfwwwgwwVvfvvwggwwgWfgvwwffgffFUegfvVegvfffgfvwgvgvfgffvwgfvwwwwffVgvfgfwwwUEwweffvggVewwwTUffffuUfgwffdGdffegffUUeUvfwwVgfVWefffgfvggwwwwgfvwwwwwvDfffvwgwwgUfUfUfugfvwgwgvfwfwUwVWefWuwDvffVfuvWevhvwfwfwffwfVvVeffVeVgUwfwcfvUvfUvfffffwfvWewwwwwwwwuffgfvwgwwvDvfwfUvwwvwwwwgVwwUUxfvxwwfwfffwffwwwwgxxfwVeffVVewwgwvvwwhvWugeVgfvgfvwwgugvwVVFFevWWWedcfefVVVFVUuTfgfVdUVedTeUeffffffffwuugfvvfvwWF6VUVffVffVVVFVUteeefvffffggfGVfueeeed6FVWVEuevedveuWWWWWeveVffdTuuUEWVFVVWRuEVFUueUuVUeuVVvdeffvvfffVWVfVUffffg6FVWGUueffefffwgVgWFvffggfffWWVWgUuvvffwwwgwggdTuuUUGffffffwwvvdeUTWUfWUUffffuwvgTTTEUedFD5UREUUS5T5Dd4eeUU4DDEEUDEDETUeUEUUUFfdUUVefefTS%EDUUUEUUS5T5DdCUUUeUUUUVeUedFE5UCUUTR5SECdDUFUSFfdSEdFTdEUTUFUDfDD6TUEdFDaDdF4dDEdTDDEVUUFfTUUVefefTS5UDTUUUVUR5SE4dDUUUTUUUUVeeT5VDeUVUUeSEdFEdTVeUUUfVfffFUDfDDFSUUUVeVffUFf4DFDEVDDdVffUfffgggfvwwVgvGtvWvfUfeVUfghwfeffvgvfffwvvwvwwvguwwvwwwgwDgffwwggwgUvegUewwvfgwwfwwwwegfVevguwDgVfUuwWvgvwVfhfvwewgvgufXUwVwfgcveWevfWfevvwwWvwwwwwwggUfffwgggvwDwVWevwwwfgwwvwvgevgxvwggVfxfwgwwvxwwwffguUXevgwhwwwwvwWvVXUfhfeVwwwwgwwgeeEFfvVFUfdcfduVVVWuTUfuffEUUVVddeUfffffVfffgeteevvfffeF6VUffffVvVVWWuUEffvffwvfWfgvWWVfeUffe6FFVtUUfwueweuFVWWufUfFVVddeTWUdfVWVuURWWuEUvUeUUggffwueffvvwwfeVVUVUVfgff6FFVuEUffffefffggvVWgffgwggvFVWWvUevvfffgwwgwVddeTGUefffffffvevuEWUUgVUUuwgvvvvwVfgVufwWeugDvwUgVefveVvfxwWeffvfUgfffgwvvvwwvgUgfwwwwwWwFtffwwwwggfvgvVevwgwwfwwwWvvgfffffdgegFTUuVeuwwfwfgVugvgffvWefUgUgUfvVvgvffcfveVffffvwwwwffwwwwwgfVefffvvwggFdVueVuwwwwvvvwgvgffvwwvwwWUugffvwvvwxxxgffUwUWfewwvggwwwweffgUVwffffxwwwfwfwwwwfwwwwVvvvfwvgfwggwwxwwwvxwwvwwwwwvxwgwwwwxxxwgegwwvxxwvgvwfwwwwwwwwwgvwwwgwvvfgvVwfwgvgwggfvwgxxxggvwwgwgvwggvfffwfwgwwfwxwvgwwwgwwwxwwvggwwwwgxgvVwgwwfwwwwxxwxfwxwwxwwwfxwxwwwxxxwwwwwvvwxxwwxwxwwwfwhwwwwffvwuwwwwfvvwfugggVgffuwwghwwvxgvwwwgvxwwwwwwwwgwgwwwwwwgvggfhvffwwwvfwvwwvxwvwggfvgwfvVggfvwwwwwwwwgxwwgfxwwVfgggfxwwvvwfhvvwvvhgvwwwwxwwwwxwwwwwwwwvwvwggfhvvwwwwggwvwwgfggvwvwwwwfwgvhwgwwwhvwxhvfVuVggwvwwwggwwwVvVgvfgwfffgwvwfgfeevvvvwwwvfwVvtgfeGfvVhhwxuvWfgggvvvwgfgwwwwwwwxwfgwvvvwwwgggfgvvfggwwwvvvwgwwwgfwwvWvvfgfgvvfwwwvxvwgwhwwweWwwfveWWvfhvgfuufXvveguuffwwwwwwvwwgxxfwffvwwvwvwfgehefvwfwgwugvwwfggfvvvwwwggwfxvwggwwwvwwwvwVvefWvvvwwggWwwWfWggghgfggWvvgvfVVvvvwgwwvvfvvVgwggffwvxWhgvfggugwvfvvwwwwvwwwgwwhggfwffwwgwfvghuffewwwvwvvuwggwwwwfvgtVvfGgUfgvwvwwgwgxwwxwghvvwfVvgWgewvUgVgfUwvUggffxwwwwwvxxwwgfggwvvwwwvgggffwvgwwwwfwfwgvggvfvvwwwfgwhvgxvgwwwwwxvwgvwVgugvvwwwVvgwvuVVvfgggfWvgwwvfvfVuwwgvxeUwgfvfweffxwxxfvwgfwwvwvxwwwwxfxwwwwwVvwfwgwwxhvwfgvvuwvwwgwufwgVgfuwfffvxvfwwgwwwwwwffffWwfwwgewdffwwvwgewwwwwwfxwwxWvwgwfwwwwWuwvffvxuwwxvwwgwwwwwwwwgvwwwvxvwwxUwgffvgwxwxggxhvwgxgfwwwxfxxwxwffVwwxwggwfvwXvffwegfvwwwghvwvvvwwwhvwxwwwwwwwwwwxwvwwwwwgwwwwfvwfvvwvxwvvwwwwwwvggwWfvvveVffvwwwwiwwwvwwwfvwwhvwgffvwwwfVfwfwfgvvxwwwxwwxwwxvvgwwwgvgwwwffvfvwgwwwwvfwgvwfwgwgwvvgvwvwvwwwvgfggeggegwwwwwgfwgWevgewgfffwgvwwvfffVWwgWggeduWfuVWwVVvgffvwwVfffuugffgwgwggwwwvwwggwwwFWwffvuwwwGGwVUuWvgwwwgvgvwwwgWxfttWffVGwUeuWuguufvvggxfvhvfVwuuWUUwfgff5VvgvffXuufffxggwwvxwwgwwVWwffvuwvwWGgffuWvgwwwwvgvwwVfwgwvvwwwWVwgfvhgxvwxuuWffvfwvwwwwgwxXffwVgffwvvwwwffuWwwvXWVwtffftGgUuuuefwwgeffVwuffvggwgwvwwgvwwhwwxgeGgffwvwwwuWgfvvuuWwwgwvvvwwvegWVwuevetWVVfvvffvgwveWwfvgffVwuffWXhvWV6uvvVUuvvefvuhvvvwgvwwwgwwxgtGgffwvvwwtWWUvvuuWwwwwvvvwguWvvgvwgugffvvgwwwWwufVWggwvwwwwhwwwfVggfgffvgxwxxwxfVwWgwxhvvwUfvewgffvfwfwwfvwfwwgwwwwwwvwxxxxwWwWgwvwuxxWwgfgvfwgwwwwgxwwggfvUfgVwWfVfwwgwwfwgwwwfwVvxvwhhgfffFwwfvWwwgwwVxwwwwwxvwwwfwgvwwgxWwgvfxvggxwxgwwggwwwxwwfwwwwwwwwwxuwugvgxwvwxghwgfvxgvggwwgxwVUefdwvgffeefVtVEgVVVevfxwWvgfffVufffwfVewwwwwwwwwxfWVffvwwfgggUgfVfefgVvuvwfefgwgwVffVgDteUgfVVUvvwvwfgfwwgvvwgVwVuwvfffhfgfWdugfhuugvvWfVgvwffgfwggwgffevfwwvffffwgWfefffffgwgVefvffggwwwwfwfwwgwvvwvvfwwxwwwUtwgfffwwfgwwwggwfVWwfvweffwwufvfVDFeUfVffeVfeVfdT6VeeefguwwTffVUVEeevgvgvfwvffgVffwwwwgfeVfvuvggVVfVvgfefVfeffvgffgegffTeef6ddfVUWeeevfgWvvvXfgeufvfVWudfVfVvvgfhVdefWetdefeEUewwgffffgvwwgffVdefvvggfvefffUUeUVeefefvefffUvwvfxwfewgvwfefffvuvfgwgffvegVeVfvfgWvvwffVfVWVggWdfgWfTewg5ETUTfVwVfdUfdVUWTfVEfeegg6fefEEEefeffefUffVgegvfvvwfffFVefUfeVUEVgTfVEfeUvffefeefEUUVUUETUR4FUUUUUUdfefwtVgwVwVEgeVffueufEeVWgVgUUfUgWEgfTfF5EvffVUUvwvwwfgFUEevfvfVfVUUUVUUUdfffwvfvfVfVfffVgwffUWwVwfEfeffggfwfvfvuUufEeVvfgvWffffVvfEuVEegEcVfffevfvwvgggvvxWgwwvfffVvwfuwwwwwwvffwwwgfwwwvfwwghvwwxwuvwwwwwwwwgfVvwfuwwwvwwwwxwhvgfgwwfgfVfuweuwfwwgwwggvxgwgffvwwfwgtgfvfwffwffvgvwfvxwghxwvwxwwvvvgfvwvgwffeuvVuwwwfwwwxwvvxgwwwwwwwvfvgwwwwwwfgvwgfvwwwwwwxwwwgwgvfgwgfwgwxwwwEeUVfwvfWwWfvGevTevffeuexfGvWeefeefvfgvefwwgggvvwvwgfwvgevgfwvgfVvUvvgvefvvwevwwvgffvffUfVf6DfTffefTuwfwwXfwewvgwVvwefhVgwvfewfffvVffwVvweVfdwwgffvgwwwwgUfegfgvfVffUvfffTefegvvwgvvuWvwwwwwfwwwfwvgfVfwgwvwwxwwwXUgwvfevvwwfgwgwvXfvWfvWvVFwgffWwwvwgwwWvgxgwwwfwfffgwvgvwhwwwwwwwwwwwvvgfwgvgxvwwwwxvgwwvxwwwgfegweWvwwvxwwwxwvhxggvwwgVfVXwguwwwwwwgwghxwhvfwwvfvwhwfvFfggfggfgvggxwwgwwwgwfgwwgwwwwwwwwgwffwfgwvgugwwwwwwwwgwwwxxxwvxwvgxwxxxwvfgfwwxxxwwwvfvwggwvwxxgwgwwfhgwvgvgfevgweufwwwxwwwvwwwwvwvfwwvvvvwxwwwxgwwwwxvvvgwfvvwwvwwwxVwgvvwwgvWffvgwvvuwwwwwfwvwwvvvvwwfwwwggwfFvgfwfwwgvvvwwgwvwwwvwvvwwwwwggfwwwwggvefuWwvvuwwvvwwwwvgxxwvwvhwwwwwvxhfwxwggfwxxxxvfwgfhwgwgxxxwxggfwWvwggwvvvffefwgwefwgvwwgwwwwwwwgwfwwwwwfxwvxwxgwwvwfwvwwxgevwgxufwhwvwwwwgvwWfgwvfVgVfwgwvevxxwwfwfgxwxvfgwwgvxvfgwwGwgwwfvwvffxwvgggvwwwuwxwxvvgwwfwwgwgfewgwvVwgwwwwwwwwwwwvwvvxgxvfwhwwxwwgvxvfgwgxwwxwgwvfvwwvgxwgwgEufwgwwvfwvwvvWffwfvgxxvxwewwfUvfwfewwwwvwvwwwwvwwwvwvxwwgwvwwwgvggvguwwgwwggwgefwwfgWeevVvgfgwxwxwwwwwxhwfwgwwwgxwwxvwwwvgwwgwgvxvwgwwwwhfvwfvgwggwgfvwgfwgwWvffwgwwffwfwfgvwwwxwwgvvwwwwwwwwgwwwwffwwwxwwwgwwwwxgwwffwvwwwvvfvwvffgwxwwwvvgegVwVwvwwxfwvfxfvgwfVwwgwwwxwwwwxwfwwwhvfwwhfwVwuwwfwfwwvwvxwxfvgfuWVwVwvwwwwggxgwffxfgugwxfwfgvvwvvvwvggxwwwwwwgwwwwwwvwguvwwhfwfwuwwvvwwvwwwwwwwxwwwwwwwxwxwwxfwhvgwwxvxhxwwgwwwgvwhxwvxxxgvfgwxxwfvfggWwewwgvxhgvvgvwvvfWwwvwwwwwwwxfgwwwwfgwxvWWWwfwgghwwwvgwgwgxwgwwVuvfgggwuwwwwwwxwvwxfhwvvhwxggggvfwvwwwwvfgxwwwxwwvwwwewgwwewwxeWWWguggxvwxvwxwwwwxgxxvhggwwwwxwwwwhvvfhwwwgwgxxwgwgvwffhvwwxgvgffwwwwwfwfVwuuggwuwxwxvVxuffvffvgffwwvwwwwwwwgvgwwgwvghfugvgwuwwgwvwwwwwwxwwvfgfVwevgugwtwxwwwgvxvhwuwfhgfvgxgvguWffvwfwfuvguwvwwwwwwwwwvfgggwffhfvgugwtgvgwvwvwwwwwwwwwgvgvhvgwuwxxwwvwwwfxVxugxwvwwwxwwgwwfxgVwvewwxwgUfggvwvwgggvgXuvUwVwwuvvfXghfwfgwvgwvgwxxxwxwwwxvvfwwwwvwhwvfwewwvwvwxvwuwwgwvvgffwWGuveffwwuxxwxhvwvxfhghvwhwwgwVwewfwfwegffwwwwwwwvwwwfwvvwhvwhwufwewwugfwwvwvxvwgwxwwwxwwxvwwwxxwxwgghvwwvhwwxxxwwwwvvhwwXfvgwhwxvhxfggvxwhwwffghWgwgvxwwxvuuvvvvfvfffvwvwwwvwwwwwwgggwwvfxgghwGfgvggwhwwvwwwwxxwvvfuefhWWgwwuxwwvwxggxwxghgwvvxggggfWwguwwgggfwhfwwwwwwwggvvfwvexVWWgFgvwuggwgvvfwgwwwwxxwvxwvwxVwxvxxxwwwvvfvxgwwgwwwwvxwvwVuvxwwVffVvwwxggwvVwUgvFvvwxWWefgfgfgffvvgvxxwhwxwwvhfwwfhwgvgvWwwvgwwvwwvwwwgggffFwVuWfGuvwvwwwgwfwxgWwwgvgfxwwexxhvgfguwwugwgwffugffvwxwwwwwxwfgegwwVhgWvguWvwguwvwvggvwvvwwwwwxwwwvgwxwxwwhwwVxwgwwxxxgxwwvxgvxfVgxwwwwxgfwwgUwwgvgVVveffVwwwwggffwfvwgwwwwwwwvfgVuwggvvwfxwfwwwwwfwggvefeUwffwwwwwwwwgfwgfvwgfgvVVVFwwfVuvvfgffffVwwwvffgvvfvxxFgfVefvUgevfvfgVwfwuvevwfwgffwwffwwvwgfwggvVeVEwwfggwwwwwwwUwfvgwvwwvgfvfVwwwwwxxwxwwxgvvfwgwfwxxxwwgffvfvfUvvvwwxxwVffvgwfwfffwffWUffVeUdxwffVfewVfWDeUVeeuvwvgwgUvfgffvwfgVfffefVwVvgfffvfVVeeffFEsgwgwffffvvVVffWfewwwwwggwwgfggwwfvvgeeeggwwgfguvWfVevVUDugwwwwwgfvvgwgvvwwvvwvTfegfgfgwgfvfUVewgFEewwgvwwwvvvgfgfvwwvvfvgvwgfUuwwvffwweVfvggUewwvwfwwvUUvwfUeVUeVffgvweffufgfevffUUVTvgwxgvgvwvguxfgfvggWvwwvvwwvwvwfggvWegffwwvvgwwfwvwwfvgvfwwwfgvgfwVevgvfggVvwfvxgfvfvfwefwffvffgfFwvwfgffffwfvffvfffvwgvwwvwxwwwvvwgUwgvwwgevwwwwvvwxwvwgwwgUwwfwhvgfvfvwwwwwggwwgwvwVfghvgvfgvgefgfvWfwxgwwgwfgvhwwWvfwgffUWvvVffgfwVeefVUFfftuwvvgfeeVgfvveuuwffguvfwwwwwvgvwfUVgfuetfVgufffffffffgfVfffVvwVggvfefteVfgffFdvvvvgefggfWgfuVFWwfeev6fgFWUVVUvVWVVvffufVvwuvgwwwwwvffwfFWgufffefgwwffffuvwvgfggvfgwVgwvvugfxvwwvvgvvwwwwgvgghftuueeUguefegffXefgfgvwwwweewvwvfvvgVVeUfftWfUfVEfdeFd6UuDVfffeUfUdUUVeUefffvFwueffgvfffvgVdFVfDfSUGeVeUeffffffVffefVfffuVeffe5VddVdFTuUvVwuFfuuWeFeuVfdVVgUfU%WuuVeVEuUuWVeeUuTUUvVweefvfvffwvwVcFFfEfTTWeffVUfefffffffvfgvgdVWwUfdUWvfvVefffgvggffffWeWwUfEUWUwUVgUUWTUefvggffgvfwggwfvegveffefwUgfWveUefeeTVtVuvfwggfvVegfwfgfwwwgWvfvwgwgwgvvwfUwWvGuegeVwfgffwfwwgwgwvgwvgwefwgefWdfVwUfuVuwgvwguwfwegffwewgvWvf7fgevfgfvfgvffUffvwWvgwwwwvwwwvgvEwguWeVhfwwgvvvvgwvggvwggwwvVwgvWvfhvwwgwvgwvwwgwgvwgwvXvgvfgVgvfhfeheeVgwfwwfwwvggwwvguffEUVVVfVVffefVUfffVFeSfgwvwvfuuEgfuvevVfvwwveVgwvvvwevegeggvfudfVefwfvevvvwffgefvVfgwggfwgffdeVfgWuUfgwvvwuvgfgWveffWgvVveef6fWVVWvUeVVfUeveTVVwwvvfvwwwwwvvfGWwuvvfheffvVfveffvffgvewgffWgwvvvvgfwwvgvwvfwwvvwuvggvueuUhfveehefWefeuwwgvggvwewgvwevTffvffvfgVefvfffffegUeVUfvgvwgwfgvwVfgfWfefvwUvwwxwwwhvfvvgfwvwUffvgvwwWgfwwWvfgvveFfwwfVeVfffUffffvVevwgfvwfwfvgfVfvgegfgfvfFgWegvfffgvffvVfufvwwfwwwwwxwxwwwwWuwfvfgffwvgvwwvfwgwfggwvfugfvvfwfgwvwvgvgwwfhwwggwvgvwUgfhffwfxfvgffwfwwwwwvgffwwggfwewwwgxwxwwwwVvvwwvwvwxwxwwwvwxvxxxwwwhwwwwxwwwwwxwxwwwwxwxvvwwggvwggwvwwgwvgwwxwxvgfvfwgffwvvgwwfggwwgwwwwvxwxwxwwgxwxwxwwwwwxxxxwwwxwwxxxxwxwwxwwwwwxwxxxxwVEVeeVffWfUdeefFUU5VeeexvwWfgfWfvdfVeefffegwgwevgfvwwWffVfgUdeWwfwWfggvFUVffWVeefgVffWfVeffeVVU4VeduwgvvwvggfEgvufgfwfgvfWfwggehuvVVWuufuvFVfvwghwwevffvwwwfgVfwVevgwfwgVggwWVVfgWedfvgwwfgfgvfgwvwgwgxggffggfeewvwvfVgwVfgwVggefwvvwwWghwgUWgfwtVfEUTfVfegeFecfUfUfe6UeVvgwwTVVvuvVVfTevffeffvwgwwefwwgVVffvVfUfVfgwfgvwvUevvvefUgvgvvgfgvefvUfVTGvuewguwwvwWfXvfvfWgvewfVWvwgfWvveVGvudeufFVvwwvgwgfvvgwvwvfVfvVvVWgfgwfgefvfUefwdeefwwwgfwffWgwwwvgfwwwUfwgvfVggwwffgWfvfgWfgWfTvwvwwggWfwVVGewgefVEeeufgvWueEfvfUfVgUVfuxvwWeVVWwvdgVeeeeffgwwxwvwfwwvvggeffffUWfFvggffvvVevffUVfdffVfgffdffffVU6VdffuwgwvwgwWxfVgvWgvufvgVufgwWgvewFWeeweDgVFvvwggwuwgfvwwwffVvwfffvfvwggfvgWVvfwfefugvgvggggfvfvwgwfwgffwffVwvgwvwgVvfufgwgVvgwevgwwwVfgwwVvWwfVdvfgwwvgxfvevUwwwWffvwggxxwwwwwvvwwwwwvwwfgwwggwvwwwwvwfwgvfvwwwwvvwwwvwwwfvgwvhwxffvvfwwggvvgvwwfwgwewwwwwwgfGvgwfwwevfwwgwgwffwwwgxwgwwwxvxwwgvgwwfvgwxvwxvwxwfvwxwWhwwvwvwvwwwuxwxggxwwwwwwxxwggxgwwwwgwxxwhgwxwfUTfvfvgffGUfffdfvUefedxvwVfffgwgufeffvffvvwhwwvwfwvgwfffffgWfwWVwxwgvvwVfeggfffefvfvggvGfvfVeUuDegUtXfwwwvvfvwfuwfvWfwwvWewgfgwfvUewfuvUfUewwwhwvwgwvgxgvfeggWfvffvwwvgwwVefgfffevfefwwwvgwvgwvxvwwgwWfgwxgffwgfwfXevgfWfvgewgfVVwwwwxwggwwfgVvgeVuVffwfGggggffufvwwufvgfWvvvvvwgxwwwwwwwvvwhwvfvwgwvwvggwvvWffgwwwxwwwwwwwwwvhvwxwggxvwwvvuwgvvgvwwwwvgwfgxvgwvggtgwfggfwvgvfwvgwefwwxxvwwwwfwwxgWxhgwwvwwvwwwxwvgxxghvwxwxxgwwgwwwxevwvgwgwghggvhwvgwwxwwwwwvxxwwgvgvgvgwvgwgwfvfgvfvuugwvvgwvwwgxwwwwwfwwvwgwwvwWwwwvgfwvffggWwwvwwwwwgwwwvfwwWwuwgvgfWwvvwgwvwuvwwwfwvxggguhwwvwdwwghgfvwvvvwvvgghvgvwwwwwwwwwwggwwfgxhgxwxgwxvwwxwwvwgwwwwwgxwgwwwwxwvwXvfgwggwgxwhwgwvwwhxvxwwwwwwwvwwwvhwxvgfuwvwgfvwvfggvwwwgfwwwgwwwwxvggvwvgwwwhwwwwfvwggfwwggwwwwwwufwwvhgfgfvvxvgvvvgvwvgwwgwwfwvgwvwugvfwgfxwgwwwvvfggvvwwwwwgwwwgxwvwggwgxwwwgwxwwwwvfwxxhvwwwggwwxgwwxwgwwvvgwwwxwgwvxwwwwwwwwxxxwxggwgvVeuvtvvfffVefeffEgVfVffgxfgfwguvwuffvwggfwgwvwwwgwwvwwfvgvfuvfegvVfgwwwffgffuvgfugwvgfVfVugVVfEgVfgfvwfwwvgVggvgwVfxvwffgvgUhggfegVhvwguvgfvwwgvwhwgvwwggfggvgvggugvfgfvwgWfWgvvvwgvvwvwvfwwwvwvvgwwwwwgvvvxwwwggwwfgwfufgwfgvUfvvfWgwgggwVggfVgwVUFeefVffVVfdfUfT6VeVffvugweegVguGeeWggWffggfwvVffxwvwffggeffffvggVfgwfgfVfvfefgfvgggvVfVevefefWfVffVwgvfgufWwgfvfgUWgfveUfvUGffuedfWfffvveUVwvgfvvgvVgwggwgfffvfVFfVVfVVffWffWeVffgfvwgwwgvvgffggwVgvgggwgvvfwxwvgfwvfgfggvVwWffWVefvVVGuwvgwggWfevwgeUdeuvVvvfufVeffVUfVffVgwgWFVVuweevfWgveggeggwvfvwgwwfwUffvfuffVVfffVfvefefefdvfvwffeffecEfVeFfeUffVvwufgegghfwgfgvGWufuffffVWeffTvUgfVVfewVVeVffvvvgvvwhvwffVVfffeVfgfgwggvfffvvgfvffwvVvwvfvwfvgvwwfgwfgvwfgvwgwfvgvfEuVvfVwWVvgfegvgvfwgwwgVvffUwwvffvwwvufffWwgVVvwguxwxwwwwwwvfwwwwwfghxwwwvwwwuxvvegWhxuwwwwvvxvvwwwvvffUWvgfgvwvuvgwghwwwgwvwfvFgwvfgwffvvfwwfwfvvwggwxxxwxuvvgegwfvwxxwgvgugxvwwwwvwxfwwwwxwwwgvxxwwvfggwwwvvgvgwwghhvxxggwxvfUEgwvgfvfGeeeevUfeffvfgxfWVfvvwgfwwgffwgwfwwwgwwwgfwgfvvgvWgvgfgvvgfewggwvvevwwgwvffgfGeffVfUfefVfvwXfwgwfvvxvgvUvwgXfwwffuvvfefvvfvwVfffwgwvwwwggwgwwgvfuWffgvVffvwwfvvgvvvfUfvwvwvvwwffwvgvfwwwwwwwwvwvwxwghvggvWfWfwgfvgeefwwwgfvgwwvggffUwvvfvghvwwufffwvXefgxgvwwgwvwfwwggwwwwwhwxwhwxwwuWxefgxvwhwwxxXwvhvxhvgwuffgwuWffWvfvvwwxwgwwhxxgffgtvvgxwggwgxvhvffvwvgwwxwxwwgxvXxvgwgwfxfxwwxwwWxvfvwxxwvgvwwxwwwwgwfwvxgfwwwwwgvwhwwwgwvgfghgxwggWffuwuvfWwfvvwxvvvgwgwgwwwwwwwvxxwwhwhfgwugfgwXxwwwwxhvvwwwhgxwgWfVuxvffvhwvwgwwvvwwhwvgwvdffgwgffvhwvvgwwvvwvwxwxxxwxxWgXffwghgwXwwwwhxwvxghxgwwxvxwxgwxwwhwgvwxgwgwwwgwwwvxfxwfxwwxffwgvxxufgfwgeefwgxugwwwvwwggwwwwwfwxhwgxwxwwgVvwfWgwgXxvwggvwvwxvwhvVVVwweffwguvvgwgxwvwgxvwggfvvtgvfgvgfgwwfvvvvgxwhvgwwvwwhwxwuwWVgwxvgwvhwwgwhghgxxwwvxwgwwwwhghxwwxwxwvvwxxwvfxxgfwgvggwgwvxxvxxgwvwxGGdfffefVwefffegfFUVefuxxWfvwwwuffffVefWwvwvwffvwgwvVvwffvfwgwffgvwggfvvgUefegffeffwffeVfgfeUTfVuwwgwwxwgffwxxgwwwxvwvhvwfgwwvxwvwfeVffvgvwvuvgfvvwwgfwfwffewvfegvvvwwffwgVfVevvfwwwvvvwwvwvwwxwvvwwfwwvwwwwxvwwxwwwfgfvwwwwgwwwvgfgfwgeVvfwgvxwwWfvwwwWVwgwgwwgwfwvgwxwwxggwwxxwwwwwwxvxwgvgwxvwvwwwwvwwwwwwxgfvwvwhVwgwwwwxwxfxvxwggwwwgwwhgfwwwvwwwwwxxxwwxwwwwwgxwvxwxxwwwwvwxwxwwwxwxxxxxwwxgxwwhwwxwvxwhvwwgwxxvggvwvvvwwwggwgfwwwxxwvvfwwwwfwvwwwxwxwwwgvuvgvwgwxwvwwhwwwwwwwgwfvvxwxggxwwvwwxwwwwwxwxxvwwwgfxghxwwwwxvwvwwgxxwxgxwwvwgwhgvvvwwhwwwwwwgwvwwwgwvxxxxwghxwxwxwxxwwwwxwwfwhgwxwxxwwgwxwwwwxwxxggwvwwguggwuwwxvwfgfvgvgvwwwvwvwwwgwxwwwwwWvfvvWwwgwggwwwvWvvwwwwwwwxgfwuwwwvgvhwuwxfwggvgxwhfwfgvgxwhxxfgwwvghwwwvxwwvwvwwwwvggUwvgwvwwvvwwwvfwuwwwwwwwxwWvgwxwvgwxwWxvwgwvxgvwgwvgxggxwgxwxwwxxwgxvwwefgwvvvgwvWufwvwVwfgwvvxwhwvwvxwwvwwwwwxwxvwxwwwwwvwwgggwvhvvwwwwwgwwvwwwwwwvvvgvWvggwwUwfgwvhxxgwxfwgvwwvhvvfxwwvwwwvfwvwwxwxwgxxwwgwwwvwghvgwgwwwwwwwgwvvwwwwwxxhgxxwxgwwwxwwwwgwgwwvhgvhwghxvxgwxxwhgvwwhvwwfhxghvvwxgggwwwwvxwxxvwwwwggvwwgxxxwvwwwvwwuvvwxgwgxwwwggwwwwgwxxwgwvwwggwgwvfxwwwxxwwwwhhwwwgwgwxxwwwwwfvwwwxhwwwwwwxwxgvuvwxwwwwwwhgwvvwwwwwwwvwxwxwxhxwxxwwwwxxwgxgfwwwwwwxxxxgwfwfwxxfwegxwvgvgwwwwxxgvwwvvwggwvgwxxwwwwwwxwxvwgxxhwhwwxwwxwwwwwwwUwewwwvgvgwwgwfxxwxxhwwgwwxwghwgwwwwvwwxwwwwxwwxwwwvvwwxgxxwwwwvgxxvwwwwwxwwwxxwxxwxgwfxxwxwgxvwwxxgwxwwxwwwwvUeggfewwefvvwwgwwwwwxxwwwxxwwWuwggwgwwwwwxewWfffwWvwwwwfwwvxuVxfgfUuwvfgggwwvvgfvwgfwffxgfvdffggvwfgfffxggvwfwwwwwVvwwwwVwwwwwUwggfuggwgxwwwwgfxwfwwgffggwwxwxwfggffvwwwvfwwwwxvgvxxxxwwgweEeeefffgeVdfDcUfVfVedfuxfWVffdVfgUwfgvevfgwfffxwwwxwwgfUffvefvfgUfefWedvfgfefvwWgwgvfggUtuVtgVggVfevwguwfwgvgguvvgfgefVgggVgfXufvggevfvuGfugvwfgvgwwwgggvfUwfvvffWwgVvggvevvWffgwwgvwwfwwwwgwggwguggefvwwwgvwxwwwUffWgggfwwfgwufwvVfggWgdevwvgwwwVTCTUUTUVUVUT5TRETUUTUUVvfgeUf6DEefVffefeffwGUUuffwwfvvTUUfvfffggVEUUVTUUfgefevfvVffevWfEuUVfdUFfVedUggwfWvdfVvWetUvfWfuuveFWefVeWeeUfWeeTfed5EgffWfgeefwvffvfdWVefUVffgUFfVedUVfTUeeVfefvvWVfffffwffVvWedewvUfffggfvWuevVVGevVgggfVfefvUVFeWFeCeffVffvfeDTeuVfffeefdd4eVVWeUfUvwwWEVVTUVfffwvvvffvfeffwwwwfvvggfUffeUfeVfTfffUUuggfvvffefefefffcEedVVfeUfVfwgvvVfvfgfVgegwvtUufFtVWffhfEVfffefeefUEeVffffgggwwgwwgUffuffeffVVfewfVfvggevfvvfgffwgvwffgugVevwfVffWvvwwfffgufVVufvfVvgVvgUdfgVfUgvWfTvwvffwgvggwffwuwgfVfvevvgvwVvwwgwgwwwwwwwwgwvwwfwwWwwwfxwfVfgwgwwgxwvgvwevwwgwvwwwwwVwvwgffuffwvvvwfewwggfwfwxwfvwtwggvwffvfwwvwfwwvgvvgwvvvwxhwwvwwwwvfgVgxgxwfxwfwvwfuwwwwwwxwwggwxhxwwwwwvfvwgwwwwgfwfgfwxwgxxwxvhxfggwwhvxwwwVUEfvggwvVWeeGDVffffUeevxwgVfveefgfwfVefwugfuffxfwwgwfvfffgffgffVfvvgfeuwgfvfvwfVugfvgfGUfGefeeefVeuvgfwXfwvwwwwfvxfvWehfwWewevfvgEuvgffvwfffuvwwvwwxwgwhwxhwUfgffgvWVgeefffeuwgwfVvvwffwfgvvvwggvffwwgwvvwgvwwwxwwwGUhfwWewwwgfwwffWvwfffwvffVvwwwvfgvwvwgewfwgffvVwvwwgwugvxvwwwwwwwvwwwvggvvvwwwvwwwvwwwVefxwwwgwvxgfWwugvwwggvwwwvwfwggfVffwgwgwvVuwwgwgvwwwwvgvgFfwgvwgwffwwfwgggwwwgvwwwvgvwwwwggwwgvvwwwgggwgwvfvwxwwwwwxgvwvwhwwggxwwxwwxvgfvfvvxwwwxwwhvfgwghwxxxwwvwgwwhxVefwfwwgvWxuwvwwxwwwwwwwwvgvvfgwvwvwwgwwwwfvwwwwvwwwxwwgwuvvwgvvvwwgwguwhwfffgvgwwwgwvvvgvwwwwwwwhxvggFffvvfvggvwgggwfwgvvvfwgwxwwvwgvwgfevxvwwxxgwgwgwveuxwwwwwwwwwvxwxxxwwwwvxwxxgfvwwfgvxxxxxwxghggwwvgxwxwvwvvfvggfVffvvwgwWwuVwwwwvgfwwwgfvwwfvwvwwxvwxwwfVfgfvwwghvgggWwuevwvvwwwwfwgWVfvffwwgwgwufggggwwvwxhggvGffvgvfffvwgffwfwwwvvwvvgfxwvxvwwwweefwwwwwwwvwgwgwufwwwwwwwxwvfgwwwwwwgxgwvwwwwwwwxfvvvggvwwwwwgwwwwwgfvgwvfvwwwxwxGeufgwwwvueUvvfvgfgfvguXfVegwwwwxfwfegwwgwxwxxwwggfvgfwgfgVvgvwwggvgwwfwvwfwgwgwwvfVwggvvgwVvgwwxwvxwwwwxxwfxgwvxwwwwgwggwwwvwgvwgvwxwwxwwwwxgwvgwgwewfvwwwgvwwvwwwxwwwwfxwgfwwwwwwfwfvwwgwfwwwwvwwwwwwwvwvwwgwwfgffwwwwffwgwwwwxwgffeVfxwgwveugTvgffEgvwvwxwvwfVffWVxffvfgwwgwwhgwwwgewvggwgwvgegVwewwewugfvvwwwwxvfvhUuggwFvvgwwwfvwwwVgwwffwvwhvwvwhfweguwwVwxefvfwxwvwwhgxwwxgfwvwvwwvgfxVwvwfwvwvwwwwvwwxgwwgwvwxwwwwwvxvwvvxxwwwwxXvgwwXfvhgxwxwfvfwwwxhguWfufggWwuwwwxwwgffvveWgfvfvxwvwvhxwwwxeWggvvvggwvfgGvuwVgwufffwxgxggvWgxgWwvvwwvhvwxwhwwfggwwvgxfgXgvuvggwvgvgxwwgwwwvhwwwwwwvghwvvwhwfggFwvfgwvvvwwwwxwxxwwwwWvgwgwwwvhvvwvwxxxwwwxfvhwxUgwvgxwwwhwfffxwwwvfwfVwefgvWwtwwxhwgfffffuXvgffxwwwwwgwwxwwgvgwvfwvgwwfgvWvtwvgffwgwwwwwwvgwuVwevgvXwuwwwgvwwgwuwfvggxvwvghfhuWffgwwgufWvwxwwwxwxwwwwgvWwwgwwgwgvgvgwuwvgfwwwwwwhwxwvwwxwwvgwuwwwfwfwgwwfvwvghgwxxwwxwXugxgWgvVwwxwwveVgvvgvgwffuVWtvgvffwuwvfhwvgefwfxvwvwvwwvwwwwgwwufwwggfwgwfwvVwwuwfxvwvgxwvwwgWufWvfwegwuxxxhwwwxwvghvgvghwfxewewfxvwegxwwvwwxwhwxxvfwwwwvwgxvfwVwwvwvwvwuwwwwwxxwxgvwgwwwwwwwwgXvgwwhgxwwwhwxggwwfXwvgwxwwgxgfggwvwhvvvvuvewwggwwuvgxxwfggvwfggWggwwgwwwvxwwwwWWgvwvwgWwgWWweVhwwwvwxxxxvvvvvvhxWgwvuwwwwxwwxwwggvvgwwwgghfgvvghwgvhgwwxwwwxywwwgWwwwvvwwfggWWwvvfwwvwvwghgxxwwxxwwggwvxxwwxwvvgwggwwhwxwgvvwghhfvwgwwgfvgwwgVwefwevxwWwwfxwgfwfwfhvWvvwvwwwwwwwwvgfwwxgwwgwwwgvwweWwwwwvwwxggweWevgwWvwwvgvwvwxxggwgffgwwvgvhfggwvWwvvhwwwwxwwwxxvgvxwwfwwfwgvWvwwegwwxwvxvwwxxxwwxxwwwwwxfwxwwwhxggwwwwxvxwxgwwwfxwgxwffwhxwwfgwwfgvwfWVffvfwwdefwwwgfvvwwvwgvgwwwwwvfwwfwWuvfffwwvVevwggwwhwwTefwwgffvwwwwwweWwwfgfufeewefwwwWffffvVvvefwwwFfvggfewfvvffVeUvffvvxegffwuvfguwgfgwgwxfvfVwwgfvwwgwwUVwxgvfvwwwwwwegfvvwwwXfwefwwwwvwgwwxwwggfffvfvfxwwwhfwvwheeggwxwwwVSfUfeffeffefTUVfeVVeVxwgwgvfVewfwwgeTfvwwffVwwwxwffffewwvffwffVfVVeVdggvgvwwWvfeVfffeVfUEfefeFeVxwwhffwwwwgwwwwwxwfVffwwgwffgfvgfVvwwgffvwwfefwwwhvvgfefwwggfwfVffeFeVevfvgvwwggvfgwwgwwvwvfwwgwwvgwgwwwwfwxwwVffgvwwwwgwffwwffewwwffwgwffvguvgggwwwwVguWgvwUwggwwvwgwvvvvgfgfgxwfuwwwwwwwwxxwgvfwgvhwgwwVwwwfwvvwfwwvwvfwwwxggugwvgVggxwwwwxwhxgwxwxwwvwfvwhwfxvfwwvgwfwffvvxwwwvxwvwxwgvvfxgvwwgvwgvxwwgggwwwwwwwfwwwwwwgwxwwwhwxxxwwwgfvhwhwwxgxwgfewwhwgwwhxxwwgvvwxxwvvfvvwgWwwwvwwgxhxgwfwwgvfvgxgwwwwxwwwxwgwgwvuvwwwwgWwgvwwwwgvwwvwggwxwwfuuvvvwggwwwvfwgwxgwwgwwvvwgfwgvvwhfvvwhvuvhwwxgwwwwvxwwvfgfgvwgggvWhwwwwgwwvwwgvxxwwvwxgwwgwvwwwwwxgwvwgfwwwfwxxwfvfgwhwwwwgggvwwwgfgwvggwvWwgwewwhwffwvfggfvgffwwwwwvxwwwwwvggvwwgxwvWwgvvwwwvuwwwvwwwvwgWwfwvvvgvwwewghwxhxxvwwggwvwfxvvwhfwfxvvgvwwgwwwwwxwwwuggxvwwWwvvgvwwvgwwwwwwwggxwgvhwwxvwvwwwwgwvxgghgvgxwwvxwfxvwwwfwxwgxvwfwvwwxxvgfwgvwVwwwvwwwxgwwwxvwwhwwwxwwwxwgwvwgvwwwxvfwwwxxwvxwgvwwwvXvwgvgfwwxwvwxxwxxwwwgvxwghwwwwxwwwxfwxwwwxwxwwxxwgwfxgvwxxhwwgwwwwxwwwwwgvvxwwgwwwxwhwwhvwhvxwiwxggghwxwwwxxvxwwwvfwvwVwvfwwvgWwwggvvhxwffwgwgfwhwfwwgwwwwvxwvgwfWwuvvwwvwgfgwwwwxvgvxwfwwwxfwuvwwvfgwwwwvwvwxvxwxwvfwvwwwevwgxwvffwxwfvwwgwwwwwxwwwwvWgwuvwwwgvgwfwwwwwgwwwwwvggwgwwvwxxwwxxwwwwvxxxxvvwfvwfvwwxgxvwgfwgxwxwwwgfgwwxxgfvewwvwWvhwwwgwhwgfvgfwfgwhwevwxgxwgxxxwvvgwfwwfwvwwwwhvwhwvwwwvwwgvwwwwWuwUvwfwWfgwvwwwwvgxhxxwwgvfwfwfgffwwvwwwvhvvvwvwwwwwwwwwwxxwvgxWvxfwgwwfwgvwwvgvwvwwvvwvgfxgwxwwwhwxwxwwxwxwwwwwgVfxgxwgxwggwxffwwwgxxgxwxfxwVgvfggufwwwwwwwwwxxxwwwwfvwgxwwgvwfwgfgVfvwwwgefwxxwwwwwwwwfxwfvuvvffWwwwwwfwvvwgvgwwwwugwgffgfwgvwvwwwwwfgfwgvgwwfwfgxwgwwwhwfgfVffwwwwgvfwwwwwwwwwggffwvwwgfvwwwwwwwxwxwxwwwfvwfwwwvfwwwffwvvwhwwwhwgevgwxxxwwvvgwwgwvwxwfgvfwxfxwwwwxwwwwwwgvwwgfwvwwwwwwhvvwwwgwwwwgwwwwvgwxwxxxxxxwxwxgwxwxxvvgwxxwwvwwxwwwxwwwwvghffwwwwxwwxvvwwxxxxxwwwxxwxxxwwwxxxxwghxwgwwwxwwwfgvWwwwhwwgwfvvggfgvgfxgffeeVgVhvvvwvwwvvxxgxwwwwghvwwgwfwgwegvwvwxvwwuwfwwwwwwwwwwfwfwgggwvxxxxxwxxwxwwxwxwxvhvvvhwvvvxwwwxwgxwgxwwwvwwwwxwwghwvfgffvwwggvvugwwwxxwxwwwwwwwwxxwxgwwxxwwwxxwxxwwfxwgggvvxxxxwwxfVwvwwwwgvwgvgwwggfwxhfveWffXfXvfwvgwwwxwhwwwvvwwwwwhgvwwfgvffvvwwewvgwwgxwwvvgvfwvggfvvvxwxwwwxwwxgwhwgxvfxvxwwfwvwxwgwvwwhwwwwgwfwwwggwgguvwvwwvvfvwuwwwwxwxxwwwwxwxwhwwwwxwwwhxwxxxwxxwfvgxvxwwwgwwwwwfVwggwWugfgwvwfxwwfvwvvgfgVfwwwwwwwwwwwgwxfvwVwgwwwwWugvfwwfvvwwwwffwwwgwgfexgvWvwvgwwvfwgvwWvwfgvggwfvgfwfwvgfgwwfgvvwvwxwwwvvwvgggWwwVxewwwwwwgvwvgwwwwwwwvfwfvwvwgwxwWvwffxwgwvwxwwgfwwgggfwgwhwwwxwgfvfggvwwhwxwxgevvwwvwwwhhwwwwgwxwwgxgghggfwvwhwwwxwwxwwvwwwxwxwwwgfvwwxwwwfwwwwwwgwggxwvwfxxxwxxwxxxwxvxvgwwwwfwvxwwxxwwwwwwxwwwwwfvwgwwvvwwffwxxxxwwwxxwxxhwhvxxxxwwxxwwwwgwxwxxwwhwwwwxwwwVvhvwXgwwwvwwvhxwwwwhwwwgxwxxwgxwwwwxfgxvxwwxggwwwwwxwwvwwwwwxwwwwgvgwwhgwvxxwgvwhwxwxxxgvwgvwvwfxvwvwwgwwwwxxwwwwwwwwwgwfgxvxwwxwhgwvwwwwfwwwwwwvwxgxxwhwwwwxwwwxxwwgwgwwgwvwwxwhfgfxwwwwxgxxvwwwwwwwgfwvwxwvhwxxhwgxwwwxgxwwgwwwwxwwwwgwwgvggvwfwwwvhwwvwwwwwwvwwxwwwgUwvfxwhwwwwfgwgxwvxxxwxwwvwfwvhwxvwvwwwgvwwxxwwxhwwwhvggvwwwgvhwwwxwwwwxwwwwxwvwwxwxxwwwwxwxxwxxgwgfhhgwvxxxhwxxgwgwwwwwwwxxxxwwvwgvwfuwfvxWwhvgwwvghwgfwggwfvevwfwggwfwwvwuvwwfwguwvwwwxWhvgwwwwwwwfvwxwwwwwfewewwfwWvfgwxvuwfvwgwgvfgwvgvgfggwfwvvfxwwgfvwvwxwwwwwwwwwvwwVvWvwuvvwwgwgfgfwwwgwwwffwwwVwgvwwvwwgwgffvwxgwxwfgwwwwvffvhfwwxwxwxfgwwgvwxwwxwwwwwwwwgfvvwwwwwwwvwwvfvwwwwfgvhvgwfwwvvwwwwwwgwwwfgvxwwffwwgfvxwwwwwwwwgwwwwwWevwgfvvvwwwwwwwwgvfwwwfwwgvwwwvgwxwwvgwVfVxwwgvgvWfVfvgffvvgwwwwwwwwgfgwxwwffwwwwgxwwwwwwwwwffwwwgVuwwgvwwffUxwwhvgvwWeffvgffgvwwwwvvgwwwgwwfUwwgwwffwwvUffffvwUwefUwwgvvgvwUgfwfevvwUwgwgvwwwwwvwwwgfwgvwUvfwfVvwwwwwgvxwwwwwwvwwwwwfwvwfwgWuwgvwfwfffggvwgvwUwfwtwwwfwWufvgffxfwfwwvfwfewvVwgWuwgxfwfwffxwwgvxgwwwwwwwvwvfwgwwwwwfwWegvgffxfwfwwgfwfVwgewxwgvxhwwvvwfvwwwwwvwwvwwwwfvwwfgWVgUVfgvvvwvvgWgggevfgWWfvwvwwfwwwxuwwvvvwvWgggWevvwwwfvwfgwwwwgwvvvwwevwvvWgWfeWvvvuwvvggghgeveeeffuvfVfWwdvwggweevvVffggggwvvghgfvvfwgWwvuvwvvfggggevvwwwvfwwWfwwxgwwfwwwwfwffwgWwggxeevvffgggggwvvgggefvfwWgxwwxhwvwxgwvwwwufxwwwwwwwvvgwfuvvgvvvgfeuggWweWwvdWugUfvvuWVfffvfgffgvwwfWwuWwvdVugUufvgwffvwgggvwvwwgwgwwwvwgwvgwefvWfWgtgwuuWvWfUgVwugwfuWvgffwvWgwfwUVWuughffugUuVffVegWfdgwuuWvWfuUvgwffvwwgwwwvwwvwvwwfvggwvwvwvWgwfweVWuughffugUufffffhfvwwwfwfwfgwwgwevwwvvwwwwfwvwgVwffgwUgVvewfWuwWvgTveWvUfgwfgefffvgfffwvvwvWuwWvfTweWUfwwgffvwfggwwwwwvgwwvwvwwgfwWfvVwvVdwguvUwVgueevWuvgvwUwfgcvwVwgvguVWVwefhfveWvUffffvfWdwguwUwVgeewwgffvwwgwwwwwwvgwwfwffvwwwvwVwgvguUWVwefhfveWvUefVfvgwwgwwffggvgvwufwwwwvwwwvgwvvfWvghvvWVfUVggwvvwvvWgghufevvVWgvwfwwgwxwwwugvvvwvvgWggvfewwxgvvwgggwwwwgwvvwwwfuwvfWgUfgVgwufwvvggggvfeVfefvvefVWgwftwgggeufgfvggggwgvggffewvvWggwvuvvggggvfUwwwwfvwwgVwwwgwvgvxwwgfwgvgWwgggeuvffVvhgggwgvggvffwvvgWxwxwxwwwxwvgvgwevxwvgxwwwvvwwgvuvvvgwWugwgvvwfwwfwWhffvgwWuvwwwwgvwwwwvvwfwfwWugffvxxfwwwfgxwxwwvwwwwwvwgwwgVvWuwvUwwfggvgvVfvvwUwwfwgvgvwwtwgvvUwfhefwgvggwwgffgwwWvwgUwwfwfvgvfevxwxwwwxwwgxwxwwwwxgvwwwwgvwgvgUwfhVfwgvgwvwgffwvwgwwvwwxxvwgvwwwffwwvwwwwvwvwfwwxxxwwvwwwvgvwgvwwwvgwwxxwwxwwwwwwwxwfvwwfwwwfwwxwwxwwwwxwwwxwwfwgwwwxwwxvwwvwwwwwgwgvwfvgwwvffffUfffeVWfuxfwxwwvgwgwwfxwwwvgwgwwwwwwwwwfgwfwfwxwwwwwwwwwwxwwfwvwxxwwgxwwxvwxwgvgvwwwgxwwwfwwfwxwwwwwwwwwwwwxwwxwwwwwwwwwwxffgggfgUgevwwvwwggVguvgfwgxwwfvfvwgwwwwvvwwvvvgfUgufvxXvwvgwwwwwwgwwwwgwgwguuvwgvgexvvvwvvwgfVhuvvffvfgexfgvgwwgggVtfgwwgwghwgfWfwwuegfguvvwvwgfgfhvuvwWvgvfwwwwxgwwwgfwgwguvfwgwwgggVtfggwgwghvgeWffguegvfwwwwxgggvgfgVwvwvxwxwwwfggwwffffwwggweWgvwwwvgwgehwvvgwgfvwwwvwwwwwwwwgwvwwvvwwfhvvewwvwwvvwwvwwwwwwwvfhwxvvfwwfweggwvwwvwwwvhvvvwgvgwfhwwvvvwwwvxgvegwwwwwhvwvWvvwwvfvgwwvwvgwgfhfvuxwwvgwvvgwvwwwxvfgwwvvvgwwwxvhgvefgwwivwvXvvvwvvffvwwwwWvwfffuggwwwwxgfvvwwffvfgwwfgguvwwwwvwggxvfwvvgfwxwwxwvvwwwwwwwfvwwwvgwghvegwggwfgwwvwwwwggggwwfwvgwvWgufvwwwvvwghufwwwfwfghvwwfwvwwgwxugwvgwwgxwgxVgvgwfwwfvvwwwvvwgghfewvwwgwwfgwwxwwwwgggwwgfwvwwxggxggvgwxgywwxVgffgvfwgffwwwgwWwvwvffwwwwwweffgwfvVvVvwTeVfgTwwewGuwUUgwffuwVfffvfgffuwwwwgUwwgvguwewfvvvwwffVvwwwwgwuvwwwtwwwvevwxxTeVfgewwfwXvwffwwVVVefgfffSeffvWvwewWVffwgvfgwUVfvwefgwgEwwVvWtvffVvwvwvffVwwwwvwwvvxwtwwwwVxwwfvVwWfWVwwvvwvffeuwfvwvvwggwwWwwwgffwvwWwxwwfWUwwwgvffwvvfVvvfwwggwvefwVffwvwhwfxgfvwvwwwwugfvwgwvfvwexWvggfwvwvwwvwwwgvvwwgwVvwffwUvugwvwgvwvevwVvvhexfvfvfwffwvgvvgfwvVwwvwwvTvwfvvUwfvffwwggwwvUfvVwwWwggwwvwwvwwwgwvwwgwUvwgwvgvvgegfVwwvwvvTfwfvvUfgfxwgwxvvvvvvgfwwwwwwxwwwegfgwffVvggxeeffguvxvwggwWvvhwvgWwgvvwwwwgvgwxwguvwvwWgwffwvwvwwuwwxwgwxwgwwwwvwwfefwwvwwvhWwgwwhfffgwwggfFfvgvgwuvhefvxxxwwxffvhwuwvwxgvvwwhWwVwwhwwwwvvuwvxxwwxvwWwxwhwxxgvvgfgwvhhgwxWfgvvwvwxwxxvxxwuwwwgfwwwwxxwwhxfwwugvhWfvgvgwuwxvvXwgvwgvWwvgvwwwvggwwwfwuwvvgwWvvwwwhwvwuwxxwwwxwwvWvwxWVffvfwvgwwgwVwvfffvvwwvffFvvvvwxXxvffwhgxwwgVvvvwuxwVwvgwwuggfvvvwgwwwvwwwwgwwWwwwwhhwvfugghhwgwfwvvvwvxwxxxwwuwwwgghwxvwwxxxxghhwwwXvVwgUdfeguwvwVwgffwwffwWVfffvfgffwWwwwguvtvgUwGffwvevwwffvwtwwwgwxgwxgwWvwwewwUdfegtwuuwFwWUUwvVffffvfUVV5gffgguwVVuggVwgvfwVVwvfvfVxwgvwuwgVwWwVgvfvwvffvwtvwwwwgWwwwwVwwwwvVvgvwefvWgexgwgxggVwuVwvfhgvwwuwwwevwwWWuwwvvwwhhwxhggvwgUfVfffVTgffffgwgVwwWeeWffffwvwwvgvwhgwgfffvgwgewggvufxxwwvwgwwvwwwwwwgwvwwxgwWgWdgfefvvgWUggWufvgUvwfwggeXuewwwwfwwfgvgfxwgwvgVhvvfwvWfffefgvgfUwwgfffxwgwfvgvwvwvwwwwgfuvwwwhvvwwwfwvfWfwfwgwfwVhvgwfWfuwwxxwwwggggwvgvwwgfwgxwwwvwgvwvwVefffffTWfffvwwfegvwvufefVfhhvgwgwfwwvgwfffvvwgfWvweeugwvwwxwggwgwwwxwwwwvxwgwuvTgffefvwweWgvfffvWuvWvwgfheuuwwgguwgVgvvXwfvwvhvvfvwVeffevwvfUWgvevegxvgvwwwfgwfwwwwvvvuwwwfvwwwguwgfgwfXwwvvwfhvvfvvwVfwgxxwvvwwggwwwvwggwwwwvgwgvvwwgeeWgfvWguwffgvgghfxgUwVfVfvveuwvfvwggfwfwffwvwfgeggTwuwwwvwwgggvwvwwvwgwfwvwwWWgFWdffefgvWgdggUfvwvUwfwwghvVwvwvwvfwgfuWgxvwggwVxvfwvfxgVfffefvvVWeggTfvxwggvwwfffvgwwxvwwwwUwvwwwgwwwwfgggvVgxvwwfwVxvfgfggVfvgwxxwwwwgvgwwwwvgxvvgwwwvvvvwgewwfxvwVWgvgxWgwWffwgwgwvvvwwwvgvvwwvwvggwwggwgvgvwwuwwxwgxxxxuwwwxvwfxwvwwfWgfwwxgWxgffwfvgvugffvWdvfffvgvwugwxvhfgvxvwffvvwgvxwwvgwfWwgwguvVuvxggwwgwwwxwgwwvvVvxxvxwwfwfwgwxvgvwvvvwvwfvwfgwxxwgxwvxgxhfxxwwwfwgwgUffefwvUvgffvggwVvvgwEeguevgVvwgevwwfwfvwffghwfvfgwUvxwwwgwwvfvwvwwgwgwwfvxgwwUfwDeffVfggvUuvffEvwgUwhfwwfvwevggwhfwwggVewwgvvfwvfvwffefffVgggvEfwffUfxwwvgwwfffvwwwwwwwvwUvwgwwvwgwgfvwvWVewwwffwwffwvffuwwxwwwvwwgfxwwwgvvgwwwwwwvggvVggfwgggVWvggwwgwvggvgwwWwxvhwwvwwvwvgwwfwgghwXvWffgwwhvwwwxxgwwwwgwWxxvwwVgvfwvfgwufwvWwfWuuvgVfffFgfwvgffgxvvwwgggwgxvgvgwvhwhfhwwgvgffXwvgfwwgxvgwwwggwvgwXguwxwwwuxvwwwghffggvfvvgwwwwvwxxwwgxwxwwfwwwxffxwxfegggvewvwwvvwufwwWvvwfvgxgwxWvgwhhvvwwwwxfwvvfggwwvwwwxwwxxwXwgwvwhwwwhvTvewwwfgfvfvgvvffgvvgvufGfffevwwgwgwwvggwvgwhwvvgwvwvvvvxvvwuwvUfvgwvvvwwwwwwwvXwgvwwwgwvvwvwgxgfvwvxgxffvgwwggwvvfevwgwvxghxxwhghwwwwwwxvwhgfwhVggvwwgvvfvgwgwvwvVggvwwxefwxhgvwwwwwwfwwegwwWxvvwwxvwxxwxhwgwwxWvwvxFgVugwWwwVVfwgxvgvvvfffvgFgWvfuvwgfvxhwgggwgvfuffwvfxwwwgwvwgvgfvfvfgvfgwwvwwwwgwgwfwwfxWxfwwwwwwwggwwwvgggwgxgwvfwgwwfwfxvwxwvhhwxvxwwxhgvvwwgfwgwhvwWvfvwwxwggwwwwWfvwxwxfwfvwgwfwwvwwxgwvwwghwwwvxwxvwwxwwwwwhwwwwgwwwVvgvwwxwgvvgwwxwwwwxxvfwvwwwgwwwgxwxgwwwxwwgwwgwVwwvxhfgfvvfXvfwwgvwvwwwxwhvfvwggwwwwwwwgwwwgxwxgwxwxwgwvgwgwhwwggwwgwwgwwwwwwwwwwwwgeffvwUewwffvwwWewTwvwffvwhVhgvxwvfwfgwvwwwwWVwVwvwwwggwggwxgwwwwxwwvwwefwgfvgwwgfevvwwgfvhwhfwUfvwwwwfXughfxfwwfwvwufvwgvvwwhVwewuxwwwwgwgvwxwvwwxfvwwfwwwfvgvgxwwfwfwvwwevwwwxwwgxxgwwwwwvgwgwwxhwxwxwgeeggVVWwwvvwwvwXgwvgvvwfvuvvvWggvwwvvwvfgggwfwwxxwvfwwwwwgwghvwuwvgGEfwgvvvgfegWffvwfuevvvfgfWvevvxvvgwwwxxwxhgvvwfvwwwwvwfgWgguxwvxxwwvgfwxggvxwggwvwwevgwxxxwvvVwwgwxxvxVvvwewfxxwvhxgwwgwwwxwwxvwwvgfwwgffvfwvwvwvvgugxwUfgfwefffgvfgwwwfwvwwwuWuWwvvwxwwgwvwxwwwwwwfgwvwuwxwfVufwfwwgxgvfvgwwgVxugwvvgvWfWxxvgxwxwxvxwwwgwwfugxwffgwgwgegtVwuwgwxwgggwgxwwwwwwwvgwuwwuwxwxgxfxvwxxxwvwfugwxwxvvwwgxuwwvwgwwwwwxwwxfxwxgevvfggvfvggvwwwwfwVwugwwfwgWuvggvvfgfvggvwwwVUwwuwwxwwgvwhwxwwwwwVxxuwuwwgWvegggvvwwvewegvwvgvwhvvfwUgexxhvwxwvvwwwgwvfevxwggvwgwvfwUgtgvxwvgvfhfxwvwwwfwvwtwwwxwxghvwgvvfwvxfwvfffwwwxwwxwhvgwwgvgwxwwwgwwxhwwwvgwefgfvUgGwgfwwwgwggWwvvfgfhewfgfgfgfwwvwghghhwvxxxvwwhgwwwwwwwggvwvwwvVWVgvvfwWhgggwxvgvvewvfggVVwfexwwwvggxxhxxvwgwvwgvwhvwgvwgggWgwewxxwwwvwxgvwvxwxwXgxwvxuwwwvvwgwgwhxxwvgwwwvfehwxwxwwvvwxwwgxwwxxhxxwwweewgffugugwggwgvgxVfvfVxfugwvgfwgvgwvwwvhvgwwuxwwwfwwfvwxwwwwxwwwgWdfegwfvfvtguVwwvgwfwwvfgfVgguhwvUxhhvgggwvffxwfvfwwuWvWvgwexgwwfexwfggvgwwgvwwvwgwxgwwfwxggxwwgVwgwwvwvxxxwvxxwvVhwwvwxhwgxwggwggffgEfeUguwgdvfeeeUwwgfwgvgffVfevgvwfwfWfvGfwgUVVVwwwwwwevwwwwwGvfwgfvfUVwwwwwwwUfTUVuwWewfffUEwwweffVVe6UfffVefVwxffgfWvvVVwwwfevfgfeVxWuwWevfTUffwwwwgfuwwwwwvWfgvwfvfeEwwwwvwwwewwffffvwwgeeggwwffeeffffxwuwwwwwwgfvwwxwwwwgVuwxwwxwfgVVwxwwvwfgvwfUwvvwwfwwggguvfwvggwwwwwwwgwwwwgvwwvVwggwwvvgggwwwwwwgwfvwgvvvwxgwwwwwgwfewvwvvfwggwgufwwfwwwgfhvhvvggVwxgwfgfxVxgyvvwgvvgwgfvvvwwgwwgwgvvgggwgwwwggwfvwgvvwwwgwwhwggVwxwwwvgwwVwgxvvxwgwvgvgvfwWwwffVwwxwfxwggwvffwxwvfwwwwfvfwgvfeWgwvgWvuwfggfvevfggxfwwvfwfgwwwVvvwgvuwggwvvuegvxvwwwwwgwgvuewwwgwwwwwwvgehWvvvgvfggwvuvfgvvhwvehfxvvveGfgwwgggvegwhfuuwgefvvwfvgwvvguwfggvveegfxfwwwwwwfgwgvvewwgwwwwgwveGfgwwgggwfgwhguuwgugvvwfgfgwwgfguwwfvwwwvwfggvwxgfwxwwwgfgfwwgfhuuvfwffgwgwVwfgfggxwfwvwhxggvwwwvfwwfgggggewVgggvwwgwffgwgewvwwwwwwwwgggVgevfwwuVwggggegvvVvgggvhvfxfggeggvwgfVGgexwUgvwgfwvgxvfvuvwvufvgwgwewVgwwvwwwgwvfgwgUwvxxwwwwwwwgggfggvwggWGgexwUgwwwfwvwxfgfggvwfvgwfgwxxwwwwevfwwffwxxvwwwVfwuweeffegwWffvvwwwfwxfwvfgwwgwvgwwwweggVwvvwwwvwvuwwwxwxxvwvwvwwxwwwwwxfefwfgwgWvwuwvwwffvfGffvfwwfvwvfghwghgwhufvwfwwfvxwwvWwhgwwuwvxgvwgwwwwgxxuwwgwwxvwweefgwhgxxffwwewwvwwwWwggfwwwwxwwgxhfwwxwxwxwxvwfvvgvVfvgwwhfwvwwvvVvgvvwxwwvwwxwwwvwwwvwwwhvwwvwvwffgfvwwgwwwvvwwwfvwgwvxxwwvwvUvvwwwhfwwvvfwVvwhfwwwfgvwffewvwwgfwevwwfwgvfvwfffvgwvhewwwwvwfggfwwwwwgwwvvwgwfvhwwwwwwwgwewwwwwggwevwfwwwwvvvfgfuwwvffgwwfwwwwwwweffwxwfgvwxxVffWwdUefewugguwWwfwfgvVvgwVfffvugffvgwwwdwuGUUuWwgwwxvvVwffvwwwwwGwWgugvvwgwwwwwdUefewtWffvGgVwvguVfUeVceffgfffvfVgvuwWwewffgwvgvguWvvhghewvWffvgwgxwhwvWwffvwvwwvGwgxXuwwwwwvwwwUVVwvwvgwfgUefvuffgvgvxwxvuwvfwfvwwvwvwxwwwWwUwfgwwxwwwxefvWWFefUvvteffwGwWvuvfewggefffwufffwvwwWvwveffwgwhwvgwGgffwwwwwwWwhwfwgwwwwxvwWFefevwuuwewWwgvvffefffeSVUffwfffgffwuvgWWfWvgwvvvhwvuvfhGvwuTUUwWwgwwgwGgffwgwwvwWfWwvvuwwwwwwwWfUuwvvgggUVvfffvugwvvwxgwuuWWWwwvwvwwwwvvfggghxfwwwwxxXgvwWefwffwwewguwggwwgvxgggwfwxvwgwwwwvwwewwvxWgxvvwWwwvwxxwwXxwvwwxwxwgxweeffewwVffvwgwwwfffvfgfdvfwwwvfffWxwvhgvvfwgwwfgxvgwxwfwwVfwugwwwgvwgwwwwxwwwwWwgwwgxwwuffwxwgxffVwwwwVwxgwxwwwvhgvxxwwwwwxvhhxxwwxwwwfwvwgfvxwwvwwwgwwgwvfxwwxwwwwwxwwgwwwwvwwvxwwwwwwwxwwxwwwwwgfvxwwwwgwxwvgwwwwwwwxwwggwgwwgwwwwwxxgwwxxxwwxwwwwvwxgwwvwwwwwxwwwxwxwwwggwgwwgwwxwwwxxgwwxxwgvgffwvwgvwwwwgwwwffwvwwwwwwwgwwwwwxvvwwhgfwxwwwewxwwevvvvwwghxxgwwxwwwwxwweuvwwgxvxwwfxwwxxwxwwwwxwggwgwvwwfwwuwgfvgwwfwwwgvwxguvxhgxfwfwwxvwwgwwxfvwvvwvwwvwwwwxxwwwwxwxwwgevwwwhfwfwvwvxwwwgvgwxxwwwwhwxxhxwxwwxhwxxggwwveWvgwxwxwvggwgxwwwwfxwwwwwwwgvvwwwxxvfxhwwwwxwwggwwxwwvwxxuVfwwwwhwwgggvggvvfwvfggwwvwvxxwwvvhxxuxxgwxwxwwwxxvwgwxxxxgwxgwwwwwxwwggwwwwvxxxuxwwwgxfggwwwwxxvwxxxwxvegxxwwwxgwhevfwxgwxgxxwwwgwgwwwfwvwhwwvvwwwvxwwxwwffwwfwvxhwgwxvxxxwxgwwxwwwxwwwgvwwwwfwvxxwwvxfgwfvxwwwwxvgwwgwvWxwvgvgwwvgwwwwxwwwfwvhvwwwfwwwxwxvxwwxwwwhhwwgvggxwwwwhwwwxxwwwvWxwwgvhvgxvwgwwWxwwxwhgxwwwhgwwwvwgwwghwxfwvvxxwwxxwwvxwggvwxgxwwfwugxxxxxxwgwvwwxwwuwwwvwvwwxghxfgvghxvvwwvvxfwwwfwwxhwfxwwwvxwwwwwwghwxfwugwxhxwwxwxvxwwxuwwwwfwwgvwXwwfwfwwwfwuwwwwwwvwhgwwfxfwXwwwgwvhwwxwxwXwwwxxvvwWggVxwwwwwwggwfvvwvfwwwhwwwwwgwwwxwxxxvvwwvwyxxwxggxvwwwwvxxgWVggwwxwxvvvvfvvgggwgwvWxxwwwwggxxgwwggxwwxxwwwwvvwwxxwvvwwvwwxwwxggxwwxwvxxgggwwxhWwxwgwwxxvwxxwxwfuxgvwxxwwgguvxhwxggxgggwwwvxvwgvwxwgwfgwwgiwwwxhvwwwwwgwfwwxwfxgwwwywwwwwwwwxwxwvgvwwwXxgwwwfwxfhwwewfuwwgwwwvhwwxwfxwwvgxgWxwwxwwwwWvexwwhwfwxgfxwwxxwwwxwwxxwvgvwxgxxvfugwwvhxwwwwxwhwwxwwwgwwfxgxwwwxxgwwYUUffSTUDUcfFUVFffTTfwfUUffEUUUefVUUffUwUSefFUTDffVVfwf5ffUUeffffFffDUfwfffffffwfffTSDUTdfVee5ffEEfwfUETURUUUDUUVUeUeeefVTdvgVVVUUvfgTTfwfeUVwwTdf6EEUffeefwfEffUUeffff6ffUDfwfffffffwfffUTTeffeevgVEEUUeUVeefwfvfgwwefVEdvgffVuWevgffFTevgfUUvwgvgffvwgvVgvgxgvgwwxvwvwvwwvwfwvwvfwwfxxwvWwgfxggvwwwwwwgwwwwwwvwwwxwwwwwwwwxgwwwWwwxfffvvwfgwxwwwwwfgfwwwwwwwgxxwfgwwwwxwwwvWgvxfvvwwwwwvWxwgfwgvffwwgwvwwgwgwxwfwwwwwwwwgxxwfwwwwwwwwwwvgvvwwwwgwwwgxwxwwwwwwxxwwwxxwwxgffgwWuVwvwwWWvwewwwvweffgfhxgvgwgfxvvvgfVWtwVwwwvwwgwwvxhwvxwxwxvxvwxwwwxgufwfgwgguwewwfggWeffwwvwwfwgvgwwfwwugfxvwwxwfgvgguffxwwvwwwgwwwwhwgxfwxvwwgvwwwwwvUwgxhhfwfwefwfvwwwhwwwwxwwwwgwgwgwwwgwwgfggfUgGwwvghwxvWffgfvvffgvgxfvwfgvvuwgwwwvxwwxggxggwvwwwwwwwwgeWWvgwfvuvggwxwufvvuveefgggwevvhhwvwhwwgwgxxefwwvwvwgxgvvvuvvfhwwxvxwgwwwwgwhWhwxwuwwvwwwwwgggwwhxvggxxfwwxxvwvwgvvwgwxwxwxwxwxvwwwhxxwxwXvwvgfvvfvgwvXxuvXwwwuwfgvgvWwugwffvvhffvgwvgwuvgwwwwwvgwwwwgxXwwwwwwwuxwwwwfuugvgwfWwuvgvwvwggwfWwuvggffggvwfwwvghffxwgxvgvvfwfWwfugwwvwwvgvwfgfhvgwwwwwwwwwwwwgxvxwxwwgwfgxwgwwxwhxvxwfwwwwgwwxgwwgxwgwfwwwwwwwVfegffvffwgvwWuwUwwwvvgwvgWwhffvfwfxvgwwvwWvwfwguwwfwwwxwxwfwwwwuwwwwvxvwvxgeveffggvGegewvwwugvXuwguwfwfgeufhvwwxwwwhwewhvwxfwgwvgvwfvwuwvvvwgwwhwwfwwwwuwwwwuwwwgfxxxxwwgwvhwewxvwwwxhuvvwwvwxwwwwwhwhvwxwwhwwwxwxxfgwvfeWWwvfwvfggwggvVVggfxfwuVvwghwvwwvfwuvwxxwxvwwggwgwhhwgwuwwxvwvwVtFgwwwfwuvggxxvxufweewfegfggwfehgwwgVwvVxxguwgwvwvgvwvVgefggvfwvggvwwgxgwggxwhegfwwvxwwgwggwxwgwgfwxgfxxwvwwvvwwgwggwwwvwwwwxxxUffWfevWfwwguwehvwwwegugVfwffewhvwfwwvfwewhwvwgvwwgwgvgxwwvwwwxwxgTgVfvgfuwVwgwwwvewwfvfVwfvwvvewgxwwwggvxgwvhvwvvxwwhggwftvTvWfvwwfffewwwhwgwgvwvvwvfvwwwwxgwVuwhvfvgvffhxwxwwgggWxxwxwwgxwgxwhvwgxxggfwveFVUVgvgVVFUegwwwwgffvwfffvvggvVefwfewwgdUeVVfvwxwuwwgvwwwwwGUewvwwwgfwwwfgfwxeVEUUwwgefVEUfvwwwfef6ffVUfUffVefffefvwwwwgffvvfffVVeVfwxwwUvwgUEUffgvwwwuwwwwggvgwWVTgwwgwfvwwwfgfwwVfffvvwxWfVeefVVggvfgwwwxefvwwwwwwwwwxwwwwgVeeevwwwwwwgwvvVfwggwwwwwwwgwwgwgvwwwfxwxwwwwwxxwvgwxwwxwxgwxxxwxxfwvgvwwwfvwwxwwwxxwxwxwxxxxwwwxxxxxxwxwwxwvwxhgwhwwwxxwwwxwxwxwxwxxxxwxxxxwxwxxxxwwwwwgwxxwxwxwwxwwxxxhxvwhxvgwxwwwwxxwwggegxxxwgvhwwwwwwwvwwxxwwwxwwxxgxwxxwwwxxwfvwwwxwwwvwxxwwwxwwwwxxwxxwwxwgvhwwfwwxxwvwxvwwxxwwxwwwwwwxxwxxwxxxxwwwxwwvxxxxxxwwxxwggxwvvwvwwwxwvwwVvhwwwfxvxgwwwvwwgwwwvxwxvxxwwxwwwwwwxwxxgwhwvxwwwxwxwfwxwxgxwxwgxwwxwxwxghwgwwxwxfwvvwgwwxwwfxgwvxwgwwxfwwwwwxxvwxxxxgwgwwxxxwwwxxxwwxwwwxxgwwwwwhfffvFTvwffwgewgvwvwwweVWeeuwgvffWegfwvffFdwWvgvwfgfffvwwgwvwhvwvwwwwgvfgwwwwxVEfvvgvVewgfvvgvvwVewWUffeveffvwVvwewgvvwggefeffvwfwgvxvvwwxgefgdfgwwuwfwwgvwwfffuwhfvvggvwvwfwwwvwxevwfwgwwwwweveffvwvwwvvxwewggvwxfgwwwxwfvwggggwhfwwxwwxwwxvVwvvvgwwxwwxvwwxwgvwvxwfvxvwwxwwxwgwwwxvxwwwwwwxwwwwwgwfvxwwxwvvwvxwwxxwxxwwfwvvxxxxwxvwwwxvwvhwxwwwwfgwvxwhwxxwwwwwwwvxwfwwwwxvxwwwxvwwwwwwxwxwxxwwxywwvwwxxwxhUfuVVDgwvffVtvGgvgwfvffffgeuwgfgfuVvfwxfvvguvggwgwwxwggvvwgvvwhvggwwwwgwvvvwwwxFUfgegvftugwwfgvwvUvvgeeVVgVfvgvfgwuvwvwwwwgwVfgwVgxvgvwxwffgufWfggwvgwgfeggvvwxwhgwgvwgwfgvwvwgvxUfvvvwvwvwgfwVfvgwVfgvvgvwuvvfvfwvvwwwxwvwwvvxwhwfwgwvwwwEVUfUTeffWveVwvegffvvwVeffFWwwVUVfwffvwWffeEffvgwgwwvfeWfwvgeggguggfvvvvggvgvvvffSdVffUU5feeffVfffVVfeffTefWFueefuggwvfeggwvgWFuvvfgfuuxggffFfevgwgwwwVVVewwgfwwwfffVfffvwwwwwwwvgeVfvvwvfgwvVVEeevvgwvwwwvvwgvfegwgwfwwwwgfwwfuxxxgfVwwwgwwwwWeVffUEfffefetwVwgffwvgTeVeutwgeffgvUewwuvfUeffgfwgwwfVvVvwvfuggVwgffwvfwgfwfwvfgF5fVvffftwfwgfVwwgeefUfUdfgfEgeeVwgvvffegggwgUEwvgvVwwvvfewwfVUUcfUfffVffffvfuwgUuwwgwwfVwwgffwwwfffxVfVvwvwvgggvfVEveVwgwwfxwvgffufwwvwwwwgvwgvuwwvffuwxxwwwweVfVfVWDgfUufvvVffggdefgeVgVwfxvwWfgwgvvvfFufvvVffwfeefvwwvgvwVWwxwwxwwwwwgffvvwgwwgfUgwVvwvvffvgWtuvwwwwfWegfhvuwwVxfgfgvwvvwgwfvwWvfgvvgVvwfgwgfvfguuvfwwvwgwfgwxwwwwvwxgfwwvWwwwVxfvgfgwwvwwwvwwVvufwvVfvwwxgwggwgfgwvggegxwwwwwwwwwwvwvvVVvfWveTGfGvevfgVfggfeefefVevgvwvVggwvvffVuevvfVfggfedggwvfwwgWWwwxwwwvwwfffwwwgwgveWwgvfwvffwhvuewwwwgvUgfhvuvwvhgvfeggwwvwwvvgvwuufwvVfwVvfwwvffgguudgvwwvwvgggwwwwvwwvgvwwWwwvhgfefgwwwwwvvvvvevvfvgfVwgwhggwvwgggwgwfewxwwxwwwvvwwwvwwgeVfffWgWdvuVfwwfVvfgfffVfVfffwxwxgvwwwvvfuUvvvfVvfgegefvgfwgwWvgxhwwwwwwvvwwwwfffVWtfvVvvwffvwfVwvwvwvVgWehvUguWxvfggggwwwggvwgVgvggfUvfuffwwffvwvUfufwgwwwwgwxgwwwwxwvwwwgwWhvfffvgwwwwwgwvwwfgvgwfVvgwgwvwgwwfvwfwgwvxvgwwxwvwwwvwwffgwGfWeeeVvgwwwvwvvvVvvwgxhufvxwgvwwwvfvvfvgwwfgfvvgvwgxXwhvxhwwfwfwwwwwwwwwwwwWfgvvfwvfgwxvwwvwvGfgfffvvuvWfgfvvfgffffwwvwvwWfgwwvwwvwvvgwWwwvwuwgvwgXwxfxwvwwwwwxgwxgvwwwfwgvwwvwvfvwvwgvwfwgwxhxwwgwxfgfxgwxwxxxxxxweVffeWwFevWUvvgffuvfvVeVfffffwxwwxgwwgwvfWefvgffuwgffffwgfwfwwgexwwxwwwwvggwwggffvEevWffwvffvwwfUuwgwwhfvVVvvUufvXfXfvgfwwwwwwvvwwvfvwvffevgevwvffvvgwefvwwwwgwwhvxwwwxxwwvwgwwxwwvfwXfXvwhfwwwwxvvvvgvevvvVfuwwvwvwfvwvgvvwgwgwwwwwvvwwgwgfVvgggFuVvffgffwwwfwfgvfghwwwewfwvfwwweefuwvwxwgwvggWxwvgghwwfwwwwwwwwwvwvwwgVvgvvwvwuwgwWwwgwftfvufggffwfeggwwgwvgwgwgwgxvhvgwwgvvgvvxvvfwvvwxggwgwwWxwfxxwgwwvxwxwwxwxfffvfvvfwfwwgwwwgwgwfegwwvgxfwfwxwwwxxwwvwfgwefvfggwwvuvfwWwuefwgxwwvgvwvwgvgwvggffwwwwxWhvvvggwvxWghgwwvwwxvxwwwwweewffgvwwvwwwgwwuWgvdefffvwgfvvfvggwvwvwhgvhwhwvvvxwfhVVffxwwxgwvwwgwugxhwxwwwvwwxwXfffvwgfwggxgwvwwwvwwwggwvhxxhhhvwwwwvxwwwwxhvxwhgVfvvffvwuwxwhvvfgwggwwwffvwwwgwvvwvfwgwwuvggWguexXwwvvvhWvvxvwwwgwwvwwWVgveefvwwxwhwvvufdvgVfwffvvffvfuvgfvgwvwxgwgxvvvwwffwvwwvwwwgwuwwxWvwvxhvwwwxxwwwvwwfwgvwvwvgxfxwxggxgvwvfhfwhhvxhwggwvwxwxwwwxwxxvfvwvgwwgwwxwwewfgvgwWwvgvgvgxwxgvgwggfxxuwgfvvfvwWfgvfwwfxwwxwwggwgwvwwgxgfwwwwwevvvvwwxwwwwxxvfwwwwwwwvwwvwwwwggwwwwwvwfgwxwwvwwgwvwvwgwwwwgwxxwwxvwxwxwwwwxwwwwxwvwxvwwwggwwwwvvwfwwwwxvvvwwwwwwwwwwxxvwwxwwwWVvfwuFefvTvgwfffwTvvwfeevewggXffffwgeuwwgfgVwuvwvfgvwgvgwwgwgwVffwfwwwfVewwfvxvgvwewwfvvwvgfwVfevgfvhvfxwxfwUgxefvwwexwvggwewuwgwwwhwwwxxwwwxfwfwwvwwxfvwefgwwwwwwfwvxwvgvwxvgwwvwxxhwwwxhwWfwwgxgwgVffggUVgVvwwfgggwwggffgffvxwVhhfgvwgvvvwgvgWguwwvwwwvgwwxxwxwggvwwwWgEgwgvwwwwwfVgwvgfvvwvvVgWVfevvxhwvwgwxwxhxggwxvvgxwgvwgwhhxvxwwxvvgxxxxwwwwwwfwvxwwwgwvwvgwwxxhxvwhgxvwhewgxvwvvwwwwwwwwhwxhwwxwhgvvwfVfWwfvvwfwgvgwwVefvvvfwfVhvfwwgfgewwfggeGwuwwwwwvgwvWwgwwwwwggwwwuwxfffgwgwvgxgvwvWwggwvgwfuXugufxxvgwwgxwxgwwvhwvufwwWwuwwgvguWgvwwwwwggwwxwwfwwvgwwwuwwxgvwgxwxxvhwwvufhwwwvwwWvxwwghwhgwwwwwxwwwgwxvufvfWgvVggguvwwvfwVwvvgwfgwvfwhvvUwfgfvggvwwvvfwUwtfxwwgwgvwhwgxgxwwfgfvtwwggffwwgvwwwvfwewuwfgvwgwfwUgegxhgwvhwxxgxwwfxwguvwwXvwwvfwUxwuwxwwwwXwWxwxwwwwfwvwuwwwgxhvgvvhwwfwvxfxvvgffwwwhwwwgwgxwhwwwwxwwgxxwggwwvvgwVVggtVgFvuvvgfgggfVwfgfvwevgvfhggWwfwvvvwgwgWwewfgwwwvvwggxxwxvgwfugwefWWwwwwwgggWvffvvwvfVWVgvfuwxxgvvxgwxwwggwwvvvwwvvvvwvwghggvvwwwvxhxxxgwxwgwwwfwuwvwgwwvgewxgxxxxwvghwevugvxwxwvxhxgwwwxxwwwwgwgwvfVvfVwvgffxfwwwvgvfuwwffvwfvgwxxfhugwfvfwewwvgwgwuwvwwwfwwgxwwwwwgwgvwWwuguWwVwwwffvWwwffwfwwgfVuwwvvhffwfxwgxwgxwWvfvxwWwewwwvwwWwwvwgwgxwwxwwxwwwgwwxwwgfwfwfwwgxxwgvwggxwxwwvggwxwgxxwwgxxwwgwwwwhfgvfVeUEUfffewVwwTUwwwfgvwvfwfVfuffwgfwfUVUtegVwwffwwwWvfuwGeuwwwfvwgfvfwwwgwwvwwwFeUVffeudgVwwUVwwecVUfVefffffeeVggvffefgvVweewwwffxeefxTVVuvwfwfeewwwGfgugVVuwwwwwvwfvfwwwwwwwwxweVVfffffVfewwvvwwffwwwfffwuwWevwxgfwwgUfwxwwwwwwxwfwwwwwwwwUWWfuVUexegvwvfgwwwVfVWgUfwxxgvgffvhVvvwwvvvwvfefwggwwwgwwwxwxwwwwwvgvwwwgvVUehggvgwgguwgVfxwwxwgffwwxwwwwvwwwxwwwwwvwwwxgffhvvwwwvVfwgfegxwgwwwwfwvwvxwwgwwwwwwwgvwwxwwgwwwwwwwwwwwgwwwgffwwwwwwwwwxwwwwwwwwwwxxwwwwwxggwfvuwwggwwwwwfwwwgxwggwfwwwgxwhwfwxxwgwvwwwwfwwwwvwgvxxgwwwxvwwwwwgfwwxxwwwwgwwwwwvvwggvgwwfwwwwgxwwwxwwxgxwfwwwwxxwwwxvwwwwwxwhxxxxxwwwwwwwwwwgwxwwxfwwvwwwxxwxxwwxxxxxxwwvvfgwgwvwwwxgxgwwwvwvvwwgwwwwvwwwxvgxvghxwwwwxwxwxwwwxwwwxwgggwwvgwwxhhwwwwwwwwvvwwggwwwgxxhwwgwxhhxxvxxxvxxwwxxwhwwwwwwvwwwwxwwwxxwxxwwgxxhwwgvxxxxxxxvvwxvvxgwvvwfxxwxwxwgwygwwwggwwggwvwwfvWwwwvwVfgvvvgggfgwxwwwWwvvwfvWwggwvwwguwwfxxwgwhwwvwwwvwwxxggwwgVwvgwwvgwwwvwgfgvgffgvggvgwwwxwfxvhxwwwxwvxwwwVwvfwwvWvwgwvwvwWxvwwgwwxwwgwwwwxvwwgwfwffxwxxxvgwfwwwwxwwwgwwwwvhwgwxgxwwgwwxwgwvwwgfewvvvwwwWvfwvwVwgwvgwwvwggwgvxfwfxwwvgvvwwwVwgwwvwwwwgwxwhwwwgwgwwvwvwwxxvvwgwWvggwwVwvwvggvgfvgvgffxgwxfwgvxwvhvxfwxvwwxvwxwgvWvwwwwfwvwwvwwwwXvgwwgwwwvwwxxvwwgwwwwwhvwhvxwwvxfxvwvwwwwwwwgxgxvwgwwhwwxgwwwwwwgwwxxwgvvvvwggwvwwhhgwwwgwvvwwgwwwwvwwwwxxxwwwxwhwwvwwwwxwxwwxxwwwwwwvvgwwvwwgwwwwgwwwwwvvwwggwwwhhvwwxfxxxwvxxwvxxgvvxxhwwwwwxwwvwxwwxxxwxwxxvwwxgxxxhhvvwxxxvvxwvvhvwhxxhxwxxxvfvgvvwwwwvxwxwxwwwwvfvggfwxwwwwxwwxwwgxwxwwwwwwxfxxwxxwwwxxwwXgwwwvwfwwwwwvwwgggwwvwfvwwgvwwwwhwwwwfxwwxhxxwwxwvwfwwwwgwwwvxwwgwwfwgxwwxwxxwxwwgvwwxgxwwxxwwwxwwxwxwwxwwxxwhffwwFFfUdUVVvwGeewwwwwffwwfvwgeffwwffffedeEvwWVVwwwwwdwwTevwwxgwwffwwwwwwwwwwwwwFFUfedeEvwWVVwwwww5efVVUUffUUgfvfVUffVVfgvfUewwwwVVvfgwwxdUVVvwGeewwwwwdwwdVuwwwwgwwffwwwwwwwwwwwwfVVffVVegvfeewwwwUVvfgwwxVUuwwxWUuffwxwwwwwxghvwwxwwwwwUXVfhgVfghwvwwvwwgfgfwggfVwfwwgwxVgvvxwwwwwwhggvwwwgwwwwvvvwwxwxgwvxvvggwWfvwwxwvgwwWfgfwwwxwfwfwvvwxxxxxwxwwgvwwwxwgwwwwxfgwvwwwwwwwwwwvwxxxwwfwgvvgwwxwwwxxgwwvgxxxxxwxwwwwxxgwxwvvhvgvhwgfgwwwxggwfvVghwhvhwgwxwwgxggwwwwxxxwwwxxxxxxwwwwwwwvxwvgwgwwxgwwwwvxwwxwvhvgwufxxwwxxxwwwwvvwwwwxwwggvwwwwwwwxwwwwwgwwvwgwxxwxxwwwvhxxxxxxxxwhxwwwvgfxvgfwwhwwwwwwgxfgehhgwxgwgxwwwwvwxggwwwvwwxwwwwvxxwwwwvgwwfgwvwggggfxwwgwwgwfVwwwwxxxxwwfwxwwvxwhgwwwwxwwwxwwwxwxwxwwxwvwwwxxwwhxxwwwwvhxxxwxxwxwxxxhgvggeTfwWvwxvwWfwwwwwwVfgvfwfWfwwgfhvwGewggfVfwwwwwwwwwfwgwwwwgfvwwwvwwwwwxxeegwWewggvffwwwwvxfVfWfwgeffgevfvwWffggvXvwwwwwwewewwfwVfwwgwhfwwwwxvvgewgwxwwfgwwvvwwwwwwwfvwVfgwgggwvxfwvwwxfwgwwxwgwgwwxwwwwxwxxgwUXfUwvgfgwwwvwwxfuggfgevwxgxwgvewwfvwxwxwwgwfwwvvwgwwwwwvvwwwwwwwwfvwfgvfuxwwvgwvvwfvggvwgvxwwfwwfwxxwxwxwxwxxwgwwxxwxxwwwwvvwgvwwwxgwwvwvwwxwwfwvwfwvwxxxgwxvxxwwwwfwxxwwwvgwxxwwwxghVfuVtTfvFuvwgfFfvwvfvffvvgeggfwhuVvggWvvwwwgfwwwwwwgfgfvvvwwwwgwwwxwgwvvvwwwwxeevfVvvgfvffwvfwwvffeVfugVffgvgvfgwfuffwwXgwVgwwwVgvgwvgwxVvugwvWVggwwwwvgwvuwuwvwfffwwvgvfgwgvwwwwwfgwgefvgwfgVvgxxxwfwugvwwxvvwxwwgvgwwhwfwxxevwwwwgwfwwwfeVvUVfvfewffvfvggvvvwgfgwffeWuvgvfwvfUvevwvvWwgwwwgfffwuvfggwwgwwwvvvWgwgwwwwwGGufvDgfvffugwvgfgVffefwefVfgvvvfuggvevewggvggWvwwwfwwvvwewfwwwvgwwwwwwwggvfwvgvgfgvwwwgwwwwwwwxgvVvfewfggWvgwhwwxgvvvwvxgwvfuwwwwfxwggggxwwwxwwgggxxwwgfwvveewvVvgvggVwgwwvwVfgvegfgvwvgvgwWvgfwfwgwwwvvfuwvwvgxwvgwwgxgwwwwwwdUwfWugvvwgxwwwwwweffevwfgVvfxvVVwggfuguwgewgwwwwwggfwfxxFugvgfVwgwwwwwggfvwvwvwwwwwwwwwgwwwxxwxfxwvfugwwfwgxgwgvgwxvwvwwxwwwwhxwxwvwxxxxxwxxVvwgvgwwfvfuffxwwwfggwggwgvwwfxwvfwwugfxfwwwwvWvffvwwgwgxwwwwwvxvvxwxwwhwgfvwvwgxwwwwwgxwwwwwfgwwwwwwvwfwwgwvgwwwxwwggwwuvvgfwwwwwgvwwwwwwxvgwwwwwywxxwxwwwwwwwvwfwwwwvwgwwwwwwggggwwwwwhwvwwxwwwwwvwwxwwwxwWfeVgEvVfeWvgWvwfvwugwvVfwguwVgffxgvwtfugWtffwvfvwvfwvwgfgwwgefvwvwvwvwwxwxVfVwughguwvwvwuwvgfgWfvfwvwugvufxwhgwvwfwwvvwvwwwxgxvggfuwgwwxggwwxwwwxfwwvwwvwvwwxffvwhhwxUvfwefvxwgwgwgwwxwhwxXwfgxwxwvxxxwfvvGegGfwvvwvugwwxxwfeeggVwgvvuhhghwvVgvvvfegggvvvvggwwwfvgwwvfwwhwxxvvhwWfVWggvvwvvgghwwvgffvvevWVgggevwWvvvwvwgwxhgxxxuwxxvvgwfwwwvuggwwxwghxwwgxgwgwwuwxxvwvwwwvgfwgwxggwxgvwvwwwvwwgxgxxwwxgwwwwvwgWwvvgevvWvgwfWwuvgwgwggfvgwvffgwvuWgffvfwegwevgwwwgvgfwwwwgxwvgwhwwhffwwwwfvfgwWxfXuvgwwwuwfgwvWwuvgvhffwvggxvfgxvhhffwwvvxvgvwgwfWwvvgwwwwhwwwwwXwwvgwwwwxwwwwwwwvwhwfgxwvhwhvfxwwwwwhfwgxxwwhwwwwwwwwggwhwwfwwxwwvxwfVevfefVgvgevVtfgwgwwuwgvvggvgegfffxvgwfvvgvwgwgxuwwfwvwwwwWwfgwwwwuwwvwwwgfffwwWuvWuwfwwwwfwvgvvWvwUxfWuvxwgxwhgxfwhvuwwwgxwwgvvguwvvwuxxfxwwwwxgwwfwwwwuwxwgwgwgwvxxwhwwfggvuwxwxwwWxghwwwwxwwwxgggwwwxwwwwwxxwxfvfgVvVWvwvvwvefwwxwufefgffvfgvXhhwvvevfwvvggxwwvwgXwwgwwwgxwgwxuxxwvwwwUvGgvwvvgxwxwfvvfgeuWgggvfuwwgwvwvwgghxhfuwwwwwwhvwvwwuvvfwwwvxggvxwwgwwwwxxgvwwwwwfgwxwxgwggxhwvvwvhwxvvwwwwxwwxwwggwxwxxwwffvgWvwgfvwVvwewwxweVfgvfvwvwfXvhfwfffvvewgvwwwwvhvwwvwwwgwgwxvwxvwwxwwWuwWVwwVvwVwwwwwwffwfvfUwhxwwwfwgvwffwwgxgxvvuxxxwxWwwevwTgfvwwwvwxwxvwgxxxwgwxwxwvvwwxgvgvfxfxwgwWugvgfxxwvwgwxgwwxwxhxwwgwxhwwwwwwhfggwfUUTVUEUefvwwgfwwwfggfvvfwvggffVefwfVefVUTewwgvwwwUEewwwfvwwwwwwvwgwfgwvwfgfwwfEUeVdUefeuwfwvwwwceVeffVfffUVVffffefVVffeeffggfffwwwwwwxwwxfVVVTUvwwgfwxwEVUwgffwwwwwwgwwwwwwwwwfgfwVeffgfgggvVffVVeVfxwwwwxefVeffUvwwwwwwwwwwwwwwwwwwwwgwvVvfwhwgwxfwvvwwwxgwwhwghwgxwxxgxwxvwwwgxwxgwwwwvxwfwxwxwwxgxwxxxxvvvwgvwwxwwxwxwxwwwwxfxvxxwxwgwxwxxxxwhwwxwwwxxwwxxwwfxwxwxwxxwwwxxxxwxxxwxggwxxwxwxxxywwxxwwwwgwwwwxxwwwhvxwhvwgxgwwwwhwxveggxwfwwwxvfwwvwwfwxwxwwwgvwxxwhwhwxgxwwwxxggvwwgxwwwwxxxwgvwxwxwwxwxxxxxghwxwwxwvwvwwwwxxwwxwwxxwhwxwxwwwgwxxxxxhxwgwxwxxwwxxxxwxxwwxwwgwwwwwwwfgxgwvwvwwgwxwwwWvvhwggxwxwwggvwfwwxwxwgwxgwwwxwxwxxxxwhwwwxhwgwwwwxwwhwxwxwwxwwgxxxwxxwwxxwwwxwwwwvwwxxxwgwwxwwxwwwwhwwwxxxxwwwwxwxwxxwxxwxxwwwwxxxvxwwxwXfUffE6efvfwgdwgffefvwwUdVevvfWefFwwVUwweeffSffUUefffffwwuwgfvwwgfgefvwwUewwwfffxUEfffewgdwWefffvvwefgVFUVefTfVevfvwfgWvvvwWvwTUvvwefgvgVfgwwuffWeffevvwfwwVvwfwgwgvgVegfffvwevfvwfvwhvffgfwgwwwXefTeeegvwgvwfwxwfvWgfwwgwxwwwwxwWffggWffwwgvwwwwwxVvwfvwgwfwfvxwxwwxxgvgwhvxwwwwvwwwvwxwwwwgwwgxwxwwwwxxwwwwgwwvwwwwxwvwxxxwwwwwwvxwwwwwxwwwwxwwxwhwwwxxgwwwxwwxwwxxxxwwxwwwxxwwwwxwxwwvwwwwxwxwXeTeV5FVfeeffcefUUVffffVeffvfwFUVUwwffwxwvvvgdefffgwvwweffvwwwwwwgUVVfffffvwwwvwwxEUffvevfuvWVgffvwvfufVVdVVfEVfVufgwvvgfwwXgwEVwvVfwgvuVfwxevvWdffVfgwvgwVgwvvwvgvgVVgffvgvVvvgvvgvgfVvvvvvwwgWVfEUvfegwwgfvgwwwvwevwhvwwwgwwwwgefwgWffwgvvwwwwwfUVvUdegffwwEwuggfgvvwfffgffeWefguwgvwgWvfWgvvfvgwwvvvgwfgvfgwgfevfwwvwgwwvvwGetgWGgvFwvffvggfgfUveUfevggVvvvfwgWwvvexxxvggVvwvgwwwwvvvxgfwvVwvvgwgwwwfwfwwwvgvgvfwgwwwggwwwwWvgfwvfeggxuffVvwvvgwwgwvvwWvvvvxwxwvxwwxggxfvvvvgggwvxwwwwgffgfUFgfuvffuwvvfvgwvgfUVuffUWffWwwfvxwfvwwtfVgfwWwwfggfgfwwvwgfwgvgwvvefwwwvwxDVwgfvwfuwfwgwgwwUvfeefUwgfVwvfffVuwvgvhgWwgfVwvfvfgwwwvgwtewftwfffwgfgffwgwwwfwwffgfwgwwwvgwwwwxugVvwvwxxgwgfVwvfwgwwwvgxwuwvvgwvvwwxwwgvfwxwggvgvvwwwwfeggxvgfwwvvgwxxxwgvwfxxwwvxfxxvxhxxvvxwxwxvwwwwwwxwwwxxvwwxxwwwxxgvwgwwwwvvxwghwwwxgvwfxwxvuxxxwxxwwvxxhxxwwwwwwhvwwxwxwwwhwwxwwwgwhwwwwwxwwwvvwxwxxxxwwhxxxxwxXfvfXfvVgxwwwvvwxwxvwveVhwhwgwugxwvvvvwvgvvwwwgvgvwwwwwwfvvwwgwxwvvwxwgggufwwgwwhwvwxwxvvwwxwhwvvgxwvvxwxxwwwgxwvxvgwwxggufwvwvgvxwwwwwwwwxwwxxvvvvwwgvgwxxxwxvwvwwxwwxxxxwxwwwxwxgxwwwefWhVvwgvwwvgwwvxwgwVVhXvwvwugxhxwfwfgwxwvewwwvvvwwwwwwgggwwwwxxfwvxwwwwggfgWvxwwvvxwwxwvwvwvgvgxxwwfwwhwxgxxwxfxwwxgwxwwvvffwgwwvvvgwwwwhwxwwwxwfwgwwwfwhgxwxwxwwxvwvxwwxwgwxxwxvwxxvwxwwhvfgvTtfgVgwgwwwfwwwwwwfVWeguffwfgWevfvEfwGwwvfgfffgffvwgfgfwwwwvwwwwwwvwfgwwxweegfVVwWgwgevvwwwwfVffffWefewfvwgfwVffwgfwgfwvvwegevwxwwVfwgvfffwfvgwwvuwVwgwwwgffvwwwwwffgvwfvwwwffgVfgwwwXevevvvwvwvvwwwwxfvwgfwgwgwwxwwWgffwxxwwwwwwxxwwfevvfwvwwwwggwxvwwvffghvgwwvgxwwwwwwvwwwxwwgwwwxwwxxxwwwvvwfvwxgwggwxwwwhvgvwwgwexwwxxvxxxgwwxwwggvwgfwwwwxxxwwwwwwgwwxwxwwxwxwwxwfwwxxxhwwxwxxwxxxhfVvgUdfwEwvWwwgfwffwwwwfvvgfwvfxVvfgwxVwWvwwfwwwwwwvgwwvwwwwwggwwwwfgwwwxxeevwVvvgwwwfwgxxwffufffWVfgwugfgwfuvvgxvgfwgxxwxvwxxUwvgwwgfwfvgwugxvvwfwxwwgwwwwxwfvwhwxwwgggfevvggXVwwwwgwuwvwwwxxvvwvwwwvgwwxwxxwwvxxxxxwwffewVVvwfuwfvwwvgwhwgwvvvVfggvhfwvggewfuwwwgwfvwWwggwvgfwhwwhwwwwwfwwvwGUvgVdwfuwwwggfvwwgVfefgffWvgvvevgfvewxwgvgwhwgwwxWuwffwwwxwwwwwgvgwwvvfwwwwgwwwxwwwwwwwuWffewvgwWfgwwvvgvwwwxhwvwwxhxwvxwgwwxwvwxxxxxxwwxxhvfgveefvUvfewwfwWwgwwwfVVuffUwwfWfvgvfVvgfffgwggfwwvfgfvwefvggwwWwwwwwwgfwwwvfwwTtvfVwgfwwwwgwwwwwfefevfffVwVwvfgwfffeguggewfxgwgwgwvfwxwDggVgwgwgfffgfvwgwfvwvwffwgwwwwwgfwwwwxwVgVvfuwvgwfvfgVwvgwgwwwwxvgfvuggvwwwvwwwwggvwxwwwwwxxwwxxwwwwwwxgxwwxxwxwwywwwwxwxxxxvxwxxwwwxwxwwwwwwwxgwwxwwxwxwxxwxxxxxwwxwvxwwwxxxxwxxxxxxxxhggvxgfwwwwwgfwgwwgwvwgggwgxfwwfwgwwwwgfwgwwgwwwxwwwwxwxwwwwwwwwwVVwwgghevwvwwwvvggvgeugUwewvwwvghxwhfwewvwwexwwxwgwxuwggwfwvgwwgxxxxwwwwvgwwwfvvwwgwxxwhVVwwxfwxvwwwxxxxwxxxxwhvwxxhwwxxwwfefwwvvgwwvwggvwwwgwgfugwwvvgvwggwgwwwwvgfvwgwWvvvwwwwwxwxwwxxfvvwwxwwwwvfwwwvwgewgwggfvwwgvwhhhwvwwxxxwxhgvxxxwvwxwwwwgfwwggwvwxwxwwwxwgvvwwwwxvwwwwxxxxxghhgwvxxvxwvxxxxxxvxgwvwwwhfVhfVfWwvwvfwvwgfVwwUEvgwfvffhvgxgwwfeguwgfVwvfgwwwwvwwwwwwfVwwwgwwvfwwfVufwgwwfwfvwefwwwwxvvwwvxvgxxwwxxxwwwwwwxwvwxfgwwUvvvweffvwwwwgwgwwwhwwefwwwwwwfvwwwxwhxwxxwwvgwvwxwwvwxxwxvxxwwwwwwwwgxwgvwwwwwwwwwVTufgefVwvwvWfevgwVvvvfefhwhfgvffxgwwvgfewgwfwvwvwwwvwwxwwwggVvvvvwwvwwgevevfgwWVfwvgegwfwwxvggvwvxwvwxwxxxwxfwwvvwwxwvwwwgwfVfwvwfwvwwvwgwwwxvwgefwfwwwwwxvwwgwwxvxwwwvwwxvwxxvwwwxwwwxwwgwwwwfwwwxxwwwwhVfwgggwgwwwvvguwgfgwffVgwwwvvvwvgggwvwwvwvgvwwvgwwwwwwwwxwxwxvfwwxxwvwwgggwwwwwvfwwgfwwwwvvxhghwvwxxxxwxxggwhhwwxwwvwvfvgwVwwvwxxwwwxxwwfvwvwwwwwwwhhxxxxggwvxxxwxwwxxxxxwwwxvgwwxvvvxfeuwgvwgWwfxvwgwvvgwwwfgwghvgvfwvWwwhwgwvvwwwfwwxfwxwwwvxxgwxgvvwggwwgwgwwwgxwffwUWwewgvgwwvvgvgVwxvguwwxxxwxwggwwgwgwwwgwvwxwwxwwwwwwwwwwwwxwWvvwfxxxhwWvxhwwwvxwwfxxwwxxwwxxxxwgwxwwwwgfwwwgxhwwwwwwwwwxwwwwwwxwwxhwwgxxwwxxxhwwxxwfgwwvwxwwwwwwwxwwwwwwwwwwwwwxwwwwwwvxxwwwxwgxxxwwxxxwwwwwwwwxwwwwwwwxwxxwgwwffwwfgeVVfgffUvfVeVugwwwvffwggfevvfVVuwwvwgvgfvwgvwvgVvETfeUVfgVfUfvvfUVfeevvVUeggwvvffwwggfwwWVVfvgfwwwgfwwWefvwfvfewwUfVgfwgWufvfGeUUffVDeefvgwwgfvwgvgfwwffewgeeTwfwggfWvgWeVffWVUuwvvUUgffffhffffwwwfffffvwgfuVvfvfwgffUVUfwgTDgwfgffgfTUfffCETUuefgevvfgfgvfffvgVfffVvwvfwwgvwgvggvfvffwwvwwxwwwwwwgvgvgwwwvgfwfwwwwvwgfvwwfwvvfffwgwgvggvgwdggfgvvgvwefvweeeVfffefvVfgffgffevfVfTuVefvggfwgfwevvwwfwwVwffgffffwffffwgvewfVfvgwfwvggwvgvgwwgwwfwwwwwvgvvvwVvwgwfgwgfwvewwffwwffgewwffVwfVeVvgffgvwwgfgfvueetfVWWgfuuwgfggfufutfVVVgfuvwxwfwwwwwwwvwgvwfgfggwgvevefvfwwfvggvwwggwfgfgvUvveufVVfgcfvvfvvfegVVggUvVVVgevuvfUfVVfggVuFWVFffUvfffwvfwveVVVfgfvgWVgefuvfVgVWfggfvEWfVfVfvffvwfvgfxwgvvvwvvvfwwwvugvfwgWwgWwgwvwgggVewvweugfwgfffvvuffffdvuvfevgvvvgUefEVfUUgegfvfwvvgvggefwuefvgfVgwgwfwvvvwwgwgvgewUvVfvefftfVWffvegWfWgfffvvvgvgvfgweffugfsffVwUWwftVugeuVvUFffffeTVeUUfVFuVeV5eFFtVVfeVfeVwftVugVvffeFggffUVGuuUvWfveuVUeefuefeeVvffvfwfvfgeffgwfgvffWWwfgeffwvgfgvggvfffwfVvgvvvefgfVgfveVVEfgggvggwfgVffvVufewfguWvwxgwgfvwgufevfgfvwvgwgwwwvwwwwwgwgvguggvvfwvfgvWgwvfgvvggwfgwfgwgvwguwfwfwwtwgfuwgvvewfgvffgVgfvfeEgUvfvfgUfUVuFeVfwfffuvgveevfggwwVwfffuVgevfwfgvUfeVfFevVfwfwwfvgvgvvwwwvgwvfgwufvvwggwfwhwwvwgwgvvfvggvgwwwwgvfweVgfWfVvggvvWfwvggfffVWueegffvVfgwfgwwfvwuugffgveUwwwggwxgvwwwwvwvvWgggwegfguvgggvwvfwfgvwfVfeffggfgwfvwfggwgdgwvfwuvVfgWffeVfVfffeWefVeffvVffVvEVvVegfvwvvvufWfgWvffvggfvvveWVuWfwgffgWvVfwefgVfvwgfwwwwwgwfvwwwwwvvgfwggwggWwgvwvgfwffwwfweufgvvfwvvvfwgvvevewfgfvwhgfvgfvfUggfgffwwwgvwfwwUwgvgvgfvwwvwwgwwxwwgvwfwwwwwgvwgwwwwwwvvwwwggvgwvvwgfvxVvfvgvwwtvgfvffgVugvgvfgfeffffgUvgVVevffVevUewfvvgwwvfvwfwWugvfgwguvfvfgevgfffffwgvgfggwwfwwwfwwwwwwwgwwwwwwwvgvwwvgvfwvvgggfgwvwgwfwwvggvvvwfwwgwewfwxxwwxxxxwxwxwwwxxxwxwwwxxxxxxxxxxxwwwwwwwwfvwwwwgwfwgwwwwwxxwvfwvvxwgvVwgwgvwgxwgwwwgwxxwxwxvwxwwwxwwwxxwvxwwwwwwxxhxxxgxxwxwxwxwxxwwwxwwwwxWfgVgfwfWdeevffeVUEWuvvgwggewvvggeffVgvwwgwwwwwfwwgwwwwuwGfveUfgwvvwggggfVVffWuvfvgwwfxfffvgWevfguvfefvwgvfffVgevfffVVUEcUffwgwVhvufUGfeetdFfueffvwfefeVgufvvvWVVfdfgfwwvfhvfVTFefgueVvvxWvwffgwfvwgwwxffgfwfuvwwgwwfvwwwVVVefefffwwfgvwfWfvweVVffdefvvfWfwwwVeVefWFVeUWevffvfwgvvfgwggffWvvexvwwvhwfwwwxgwweuVeegffgwwgwxgffvgfuvfgvfveXggvuxwffWwwvvvfwwfwwgfwvhvvwfgvdfFudVffgvfhgffUWefffuuVeVfufwggfffgvvfvwwfffvdgfvwvfXwvgUGuuvvueVVhwuvgefwwfwwwwwgwfffwwvvfwwvvgwwvgVffgFWVfufvgwvWgggvGVfffVeUWVWhefgwWdeeufvVFUWfUwuVfwgfwfufgvffhvfwgwvgxuggwwwwvufFffUeggVugffwvfVEuffeUwugfgghvfeVvvgFVewfewfeufvvwfWfheegfffVUcEVdVffFgUVf6VUVeeewfEgUfvvgweffgvewfvvWfgeVwvgvwfwvfwFVuVweVgfVvwWvfefwggvhwwvgVfgvfewvvgwwvfwwwVUfffUdVwfvfwwwfuggvUeVvfedVfvgwxWvxwvgvwggwwwgvwvwwwhvwvwvwwwxwvxgwvxvwwvwwwwwxgwgwwwvgwwvweVgffwfvwwwffdwwvwwewwfxgwwffwxWwwvwwfgfxguwvvgwgfgvvgwvwwwfwwfwvvvwWvgwgvfgxxvwwwvwwwgevwvwwvwwwwvgwwhwwwgwxwfwwwwvvwxvwvvwwgvwgggWwgwwwxwgxWVwvwgfxgfwffgwvgUUfvUwVVudUvEegvvwegfvgvvfvefwVvgwgxwwvwvvwwwwfgVfVVfgfWvwwugvwfVuwffwEvgwWfvvgevhvfUvfgwVvegfvgvvfvefwVfwfWeTGTfVEfVeVgffSVfVeveefedVfugwefuefwVfwvWeeWfvWVffewwefCefVevUVftvgGggWfgfVuwwvwvwVfuwgfwVvfgwwgvwgwfTvffvWewfgevwwvXfggUVVvgVFfvwgvgfwwwwwhvvwwwwwwgvhwxxvwwgwgvwwgwgxxwwwwwxwwxwvxwwvwwwgwxwwwhvvfwwwggwvwwwfWwwwwgvvwvWggfgxfgwwwfggwfggvgwwgvvfvWvvfgfxwvwgwwvwwghxvwgfvvgggwwwvffvgvvfwwxvwwwgwvwwxvxwwxgwxwvwxwhwxwwwwwwwfwxwwwwwwwxfwfwwgwvwgwwwwhwwwvfxuwgwwvwvvwwxgwvguvgggvvvwxwvvwwxxwwwwwxwwxwxwwwwvwhwwwwgfgfwvvfvGvwwvgwvgvweggWgggwwgggggvgwWfvgvevvvfvvxwgvwvgwwwwvghwwgfxhxgwwwvgvuvwvggvwgwggggwvwwwgwwwwWwwwwvwxxxxwwxwwwwgwxggxxxwwwxwwxgggwwhwfvvxgwwwxgvwvwwwfxwgxgvfwgvwxgwwxgwgwwgxvwwvxwxvwxwwvwwwxwwwwwwvgwvvwvggggwgvfewFwvgvvxwvwVwxwfwgwfvwggggFwggfggWfuwfgfWxwwwexvwgwgxwfwhvwvvgwgwwwwwfffwvfwvuwwugxwwwfggxwxwfgwwwwvfwwggwvwgvwwwhgwxvvwgxxxhggwwfvfUffvgVgvfVfffVfgfvwgwwfgwffwgwfxwfwwwwvwwvgwwwWxwhvfvwvfegwvgggggfvvwwgwwgwgewgfvgfvwwWegvvgfwwfwvWewggvvgfffVtgfwfgfUgfVfvVEguefvuWefgwWfvWvfwgfffgwvwfuwvvvvfUwfVfvwVgvvVwvWvfxwgwwwxwvgvwwgwvggvvwwwgffgfwwwvvgvfgwwwgwwfWefggvfvwfVfefffVggeVfvwvfvWVefVffgeffffgggvvwfvwffWgvvvehwvgwwgwfxwhwgwefvvwwvVvfgwggffefwvgWwvwewTWvfvuVvvgfWfuvewfgffveWwvvvvffgevefggvVfWfffvwTWfuvffvUfuufgefvvgffufvffgWvdgggfveGvvvuvvVfuUuvvVVvgwufvwwwvWgfvwwwwffvvuvgwgffwvwwvfffVggwvvwvgfVWgvwvvvGfVVeffffvUheufgWWfvFeefgfVfewfvvgggggWfffguvvewvwvuvfffwwwwwWwgVfvwvvgfTVfgvffeUfevvvvvgfvVWewefguVfwFVeUwfgfvVfvVgdgfUwvfvftVfffefEgeeeVv6VdfgfVfUEffWvfgvfvfvwdfevfgvVgwfvfUgugvfwVffVVvfwUVfxwgfvwvwXvegwwwwvffvUwfvvvgffgvwgwvffuWwgwvwfVfuggwgwfVeVeTwvfghwwwwwxxvgwwwwwwwxxhxwxwwwwwvxwwxxxwxwwxxwwwwwwxwwwwwwxgfwwvwwwgfuwvvwgwxxxwxgvwwwvxvwvvwwwwwhgvwwfvwwwgwgvwgvwxwwwxwwvgewvwvvwxwwgwgwwvxgwwwgvfwxxwxxxwwxwwwvgvwxwwgxwwwwgwxwwggwxwwgVvggwvwwwefvvwgfewVffveVvfvVfvfwwwwwgwwVvwwwVwgwwvwwwwvgxxfgwwwxefvffgwvvvwVvgvvgwvUvhgfgWewwevwfggvwfgwVuwwwfgufgXevffffudfVfwfvTevfvgeevegvwVfgwfgvvwevfwwXfvwvggvTfgvwfvewgfwxffeexwgwwwfvwewvwwwwwvvwfwwwvwVgvwwvwgvvwgVwvxwwvefgfvgwwgwWffUwgvwwwwwwwwxxxwxwwgwxxxxxwwwgxxwwwxwwwwwwwwxwwwxwwxwwgwWwwwxwwwhwwwwxxvvwfwwwwwwhwwwwvhwwwwxxwhwxxhwxwwwwgwwxwwxxwgwxxwvxxwxxxxwhxxwxwxxwwxxxxvwwwxxgwxvwwxxwwwwxwwwwxwwwxwxwxxxwxxxwxwvxgwxwwgvwWwwvwwwwwwgwhwwwwxwwfxwwxwwgvwxwwwwvwwwwvwwwwwwwwxhwwwwxwvgwwwwwxwhwxxxwxxwxhxxggxxxxwxhwxxgwwwxwwgxwwwwwwxwwwxxwwwwwgxxxxwxwwxxxxxwxxwwwgwwggwwwwwwgVvwWwvwgvxggwwwxwwvgwwvwwfVfwwvfwvwggxvgwwwxxwwwwwwwfvwxwwwwhwvwwwwwgwwfxvwwfgwwwxhwxgvxxggvwwxwwwxxxwxhhxxxwwhwwwwxwhgwvvxgvggwwfgwFffUfgWfVVVffugvwwgwwuwwwwgvvwwwwwwwwggwwwxxgwwfffUffvwvvwwggwgwVffefgxwwwggwgxwggvwWvvvwwxwgvgwwgvvvfvVVefVhVfvgwvwwWffVffffvUfwefvhvffegwfwwwwwVfwgghfwwgwwxwwWffffvxgwwfvwwwfvvwgvxggwwfgwwwwwwggwwggwwgefVfgwwvggvwwwwvfwfffffgxxxwwxxwwvwwwwxwxhggwywwwxwwwwxvgxwxwwxwwwwwvwwhwwhwwwwwwwwwxxwfwxwwwfwwvwwwwvfwwwwwwwfwfvxxwxgggwfxwwwxvwwwwwwwfwxwwxxwwxwwwxxxwhwxwwwvwwxwxwwxxxhghwvwvwwxxwwwgwwwxwwwxwwxwwxggwwwwwwwwwwxxwxwwhxwwwwwgwxwwwwwhghwwwwwwvwwgwhwgxxfxgwvwwvwwwwwwwwfwhgwvwwwfgwvWwwgwwwxwgwxwwxxxwwwwwwgxwxwxwwwwwfwwxwwwwwxxwwxxxggwwxvwwwwwgwvwwxwwwggvxwxxxffhwvwwgwhwvwwwwgwvwvgxwwvwgwwwwwwhvWxwwxvxwwwgwxwfxwwwwwxwgwwwggwwwwwwwwwwwwvgxgwwwxvwgfgvwwvgwwwwvwvfxvxhwwgwfwwwwwvhvgwvwvffvgVvfguwwfwwgugegxfxwwfwvwwwwwvxxxwwvwgeVgvfxwwfwxgwwwwwvgxfwwvfwwwwxfwxgwvhxwwwwgvgwgwwhfxvfwfgwwwfgvfwfwwwgvgwfwvwwwgxwxwwwwwgxfwxwxwxxwwwxgxwwwwwwgwvwvxwvwwwwwwwwwxwfwwwxgvwwwfffvwwwwwwwvxfvwfwwgugvwwwgewfvvvfgVfevVfwvwvwwvwwwwfxwvwxwwhxwwwwwewvgvwgwwfwffwvwwgvwfwwvwwxgwwwvwvwwgxwwvxwwxwwwwgvhfgwwwwgvvgvWwhgwgwvwxvwwwwwwwwwwwwwxxwwwwhwwwxwwwwwxxxwwwhxvwwwvwxwwwwwwvvghgxwvvvwwwvffwwwxwggwgwwwvvwwwwwwwgvwvwwgvwWwghxwwxwwhwgxxwwwwwhgxhwxwwvwwvggxwwxxxxwwxwwxwxxxxxwwwvxxwgwxwvvxwwwwvvxxwwwwwhvwwwfwwvxvwwwwwwwwwwxwwwxxxwxwgxwwwxwxwxxwwhwxxwwwwxwwgxvwwvwwfwfwwvwwwwxxxxfgwwwwgwfxvwwvgvfvwwgwgvggvxwwwwhwgvwxwwwxxxhxwvgvgvxvxwxwxwwxwwwxwwwwwwxxwxvxxwwgwwwhwwwxwwvwwgwwwwxwxwwwwwgwxwhwwwwwwwxwxwwxxwxxhwwxwwwwvwvvwwwwgfWfwwwwfwxxwxvvvgxwvwwwwwxfvgvxwwwwwgwfgwhwxwxwwfgxwwwwwxwwggfwvfwwwgwwvwwxwwwfgxwxwxxxwxxwwvvxwwwxgvwwxwggVEwgvwfeeeufuefufffffgvwgffvfVuegvvfvvgwwvwvxwwwwwwVVVvgfwwfggffuggffvfggfvwgvvwhgfhvVuwfvgfwfguugvffvfvwgwwgfwWgEgfVwweVfGDgVXdugfVfefwvVffuvfufgfvwfvwWWEggfwweWggUgfguugfgffwvfWgVfVfvxgwgVgfvwgvvwgwgvwxggffFwfeUfwwgfUxgfvvgeUefgwefvvwUfwwffffWvfvfEVfEffUVdfUUfevefgVfvUWudffwgvvefwvWffvgwggwgdeVgfvvfgVVVfvfefewwvffwgVffugehVffehwfefwgfueVfwfgfffvwuvvdeFVVegfVffCFegVdeffUUefefEfFeefgveUVffvvefT6UVffVffvfVvXetdfgeefvuvFUTVegwvwgwffUWfgefevwefvfgwvwUVefVVfvwgwfwwwfvffVVVVVgVTuwfVfvffgFVWeVVgVSdUeefTEUfVTfeffgfffUeuefgffufweffeeufggvvgff6EVeeffVVUETDUfVTfeffefefVefeWggfuuFuufVUUwVTgedefuuVUVUwVTvVFfUEEegUdV%ECgUUfUUUUUdEfU4VeVevuvfffffefFVWdfVgfgfVEUewVEgvwffwfggfVFVfvffgwfVVUUUwfTfvwwfvfwffgVUEugUdVvfVfVgfffVeUUUEUtVTSgvffegffufvfgwwwwgwgvwvvvxffwgwwwuxwgffvffvwwwwgwwwwwwwgwwwwwvwwfvwwwwvwwxgvwwxwvgwwwxwfvwvgffuGwffevfwfgvhwggfuvvvvwggfwwggVwgvfvwfwfwVuwgwfvvxwggvwwwwvffVwffwgwwgVfggffvvwfwwwwwwvwwwxwxwuwgvwxwwwxwwvfgVwwwwggwxwgwVVwgggfwwxwwxwwgUuWwvWdVfvWfVfUvggVvfggwvgfuhVvfvwwwgvwwvugwxfwwwvwFvevWewggfVffevggVvwgfefvwwgggefuWevgfgUvfgwevfgwvhfvfvvgweWwTVfegvfWffCefvVefffTefVfedefgvhfffewwwffwTeffwgwWffTvegwVvgggvfwvgvUfvgvwwwwgffuvwwewwwgvwxwwWeegvfVVgvfWffvgwfgffFUvgeeFwwwgWwwffwgfgxxxwwvwwwwwwwvhvgxxwvhwfvwwxxwwwwwxwwwwwwwgvwwwwfwwwvgfwwvgfwwvvwwwfVvgdfwfwvggfvxvwwvvgwxwwwvWvgwwwvWvewwfwwfggghvguvgvgvwwWfvfgwxwwxgffxwwwhwhfVwgvgggwwwwxvgwvgwwwwwwXwhxxwwgwwwxxwwwgwfwwgwfvwxgxVwfwwvxwwwvxwvggvvwgwwvwwwgfgwvfxhxwvfwwwgxwwwwwwwxwhwggwwvvwwxwwwwwvvwwwvfwxgVfgvgggwfdffuwvwffwwvvwfwWwhvwvfwvvwvgfgfwugfwfwgwvvuwvwfwwwvwwvwwwfewwwgxhefvvgvvvwwvwwvxwwgwgwwwwwwwgwwwwwwvwwwxwxvwvWVgwwggvxxwfggWgggvgxwwwgxxvvfwgwgwwgfvwwvgwwgvvwwwxvwfgvwgxxxwwwwxvvwxwwwgggwwwvwxwvgwgvvfwwvwwgwwwvvvgwVfwwwtfevvgfgvxwfwwvwgxgxwgVgfwwwwWgffugvwwfwWwvVxvfwfvwfgwwwgwhwwgefwwwghgVffgvffwwwwwxvvwgvvwwwwwwgxwxwvxwwxgvwwvWffwgvwwvwwwxwugWggvvvwwwwwfXhgwvwgWwguvwuwgwwwwwghwwwwwvfvwwwwxxwxwxvwgfwwvwwwwwwvfwwfwwwvghxwwwhfwxwwwwwwgwwwwvghwgfwggwwwgfvhgwgfgwvgwwwwggwwwxvwwwWwwfgvwwgxwgvwwxwwgwgwwwwwwwwwwwxwxwwwwwwwwxwwgfwfwgwwgwwgwwwwwwwgvvgvvgwwgwwwgwwgggwxfvvgfvggwUwvwwwwwxgwvhfvgwwfwxwxwwwxwwvwwehffwvxvwfxvwxfwvwwwwgvwuugfvgffwvxwwwwwxwxfwxwVewfvWtgwhVwUfugVgvwefwwwggwwfgwgfxwVewvwfuwwXewfwvwwfxvwwvwxvwwfwwwxwwwwxwwwxxvvgugwwhvfgghwwxgvWxxhwwwhwwwwwwfgxwxwvwwgvfwggwvwxwwvxgvvwwxwwwxvwwxxwgvhWfgggxvgfWvwggwvvwwwvhgfvvfvwUhwgwwwwxwwwxgxhehhvfvuhwxUgWVvefgwuwfwwhxvwwgvwvwvxxgehgvfwvgxxfgggwvwghvwwvwxxwxgwwwwwwwxggvwwwxwwvwwvfvthwxvfgvhgwxwwueWwhWfgwgwwwwwwgwwffwfgxfvgggvwwwwwwwwfvwghwvxwwwwgxwwfvgVwewvgxgvgvggvwvgffwwvwxxhwgefwfvgwgxwxwwwgvwwwvxgWfwfwuWxguWuWffugwwfggvgwwwggwwxwwwgvXgfgwvWWvgvgwgugwwwgwwwwwfvwwwxwvwgxvwwwwwwwxewfgvWwgwffhvWxwwWwfGxgVhvfggxwwwwxwVwhgggegvfhvvvfwwgwxxwwwwfhvwwwxxwwwxvwwwwxwwWvfghwvwxwvvUwwwvwvwwxxvxvhvvxwvfwgwfwvwwwxwwwvxwgvUwfvWvwWwuTvVgwevfwwugwevvvwwwxwwwxwwgvUwvggvwgfewfgvwfvwuwvwWvwghwgwgvvwfwvwwwwwgvfgfggwwvwhwxXwwWfwWwvXVwhwXwxwwwhgvxgwwvvfgvggwwvwwgwvwvwwxxxvwwxxxxfhgvvvfwggwgWVvhuggwvwwvvwwwwxfffgUgggfxgwwwwvwxwwxxwwfgguuvuvxWWWggVguVfhegfgxVwwwvwfgfxxwWggfwwgGgggfwvggwwvwvwxfwguwwxxwxxggwvfxwxwgwuuxfwvfxgwggwgtfWwgVfwfxgwwvwwwfvwvgxhewffwfffuVuvvuhwwvwvxwwwxwwxwwwxwWvwffwvgwgvfvgvwxvgvwxfxgwvwVgwvefWtgvfwwvgwwwwwvgwfuWvffwexwgtgefgwfGuvwvffewwuwwwfvfhvxxfhfvwfxxwugufvwvvWvwwxwhvwVvxwxwwwwvxwgvwXvewexwWwfhwgxhwfewgWhgWvxwgwwWeeffgWwwvuwWffVwwffwwwWgwwufvWffVwwfgwwgwwwuwgvfwwwwWfwgfvwwwwWwwffwwwwwwvwxwwdUfUfVUfcffVTfVVVfftgWfgWgweewxwfeevvgUuwwgfffffffUTwgwfVVwwdvfVeeUfvggwxwfUevfgeuwwgEUUfeVfffwwwvfgxFgwfUffgvfVfvUfwxwgvfgfwwwvgvggUuwwgfgvgvwwWTuwwgfUvxwwwwwwwfwefwWggVeUfgeeTffffffeugfWwgfgfwvvvffwwfxwvgwwfxxvvgWefgfxwfggeffvgfffUfffufegwWwgfvgffxwwwgfwgvgvfwwvvfvfwgffwWVVfwgwfffwwggGeVVeevgWffVVEvVegUVfvfwWffvUfvgggvffVwgvfvggvfgwfwggfVgfvgfgVvgfgwWfffwgwgwxwffvvfffVfvvwgggwvwffwfwffveUeffffwgvgvgwxwxxwwwwwgfwxwwwwgwxwwwggguwgxwxwwyxwwxwxxwwxwwgwxwvxgwwgvwfwwwgvwwgwgwgwvxgvgwvgggwwxwhvwfxwwwvwwfuwwwfgfwfwvfVxfgwwgvfxvwgfgwgwxwvwgvfwwvwwwwxwvffgwgwwgxxwwwxwwxwfwgxwgvxwxxxwgwvwwwwwwwwwwwvwvvwwwggwwvwwwvwfhWvwwwwwgwwwwwwwgwwwwwxgwvfxgwwwwwwwgwwxxxwwwvgwxgxwgwwwgwwvvwwwvwwfwXwwwvgvfwvgggvvvxwwuvggwwwvvgwwxvfwgwvwfgVgwVgggfvvwggvxggwvvwwxwvggwwwvwwwwxvvgggfvwwxwvwxwwwwwwwghggwwvwwvwwwvvewgwvwwwwxwwxwwufggggwvfgwvwwgwwwgvgwwxvgwwwwvfgvwwwwxvvxwwgxwhwwxwxxwwwwwwwwgwvwwwxwhvvvgvwvwvwwwwffwwwvwwhgwgwwvwggvgwwfwWwvgwwvwwwwgxvwwgwwvgugVfgfvfwvwWegwgxvwxwwwvfxvwwwwwwvgfvfvwvgwvwxggvwwwhvhwgwwvwxwvwwwwwgxvwwwwgggxwxwwgwwfwvgwwUvwwwxwwwggvvwwwwwgwvwwwwwxwxwwgwvwxwwwwwwvwwwwwwfwgwwwwwwwwxwxwxgwwgfwwwwwwwwvvxxwwhvwwwvvwgwwwvwwwwfhwWfhfwwvvwwwhwxwwxvhxxwwwwwvhfwhwxwxvwwxxxwwwwvvwxwxxxxvwwwwwxxxwwwvwggwxwwgxwhwwwhwgwwwxwwwwwwwwwwwwwxgvwwwfvxxwwwxxwwwxwwwxgwwwwwwwgxwggwvwvgvxwwgwvwgvXwwxvvwwvwuxwwWvwwwxvvhwxwwxwgwwwfvwhwggwghgwWvhvwffwhfggxwfwfwwvwhvvwwwwwwgwuhwwffwwwwwxvwwxwwwwwgxvwxwxwwhfvwxvxxwxvwwwwwwfwwxxvgwuwwewwwvvfwwwwwvwgvwwxwvwvwvwgfwxgwvwvxwxwwfxwwxwwxwwwxwvwgwwxwwhwwwgwgwwvwwwvvgwwvwfgwwgvgfuwgvgfvxvxwVwwwwvfwgwwfwwvwfwvgugvvWvfuvwvwwvwgwvwewwwwvvxgwwwwwguwwvfuwwvwwxwgwxwxhgwwgwwwvwwwwwwwfwwvggwxxgwvwgvwffxggwgwggwwwwwggwxwwxwgggwwxxwxxvgwgwwwxxxwxwwxxwhwvwwwwwwwxwvVgfwwgGwwgfwfvgVfgxwwwgWfvwfxwwwwvwgwxxwwwvgwVgffVfxwwwwvxwhufvgwwwxwwgwwvwwxhfwfvfVfgwvxwxwxwxwxwwWfvwfxwwwxwhwwwwvwwxxxxxwwfvfewwwwwwwwwwxxwwhgvggwwxgvwwgwxhxwxwwxwwwwwxwfwxvgwhwwgfgvvwxgwwwvwxxxxwxwxwxwwxxwwwwwwwfwvwVffgwwwheWvvwwwgwvfwfwxxwwwxwwgwxwwwwwxxgxxwwxhxxgwxwwwxxwwwwwxxxxwwwxffwvwxwwwwgvwwwxwxgggvvwhwxwwwwxwwwvffvvxwfggffxvgwvwwwvwwwwxwwwwwxgfhwgvhgwwwfwvwwwvgwvgvwxwwwwwvwwwvxwwwwwwxhffwwgevwgwwwfgvuvwxwgwvvfwgfvwvwwwwvwgxgwgvwxxwwwxwwvwwvwwwwwvwwgwhwvwvwwxwwwwwwxhwwwvwwwhfgfwvxwgwfwwgwwgwgvfwwwxwwwwxgxwgxggVgvvgwfgvfwgwhhwwwwgwvwwwwwxwwwxwwwxVhuvvexvxwwfgffgvwwvvwfvwgwwwwgvwxwxhxvvwvggxwwxwgxvvvfgvvwvffvfgwVgvEwfxvfwfegegffwwwwxvwwvwvwggvxwwvgvxwwWwvfwwxxwvwgwfxvvwvxwxwghvvxvwxwvwfwvwxgvfggwxwwwvgxvwgggVvVvfxxwwxWevwgwvxwwgfgfwwwwxwgwwwwwfWewgwgvwhwwwxvgwgvgvwwwgvwwvwwhwxwfxwggvwgwwwwxWevwgwwgfvwfgfeVvwwwwgfgfwwwwwgfwwfwwwwgwfvffeVvwVffvxvfvvwwvfWewgwgvwgwvwwfwwfwgvvfVfevwwwwwfwwwgvwwfvwwhwwfwwgwwwhwwwwxfwwwwgwvfwwwwgvfhVffggfgvgvxxwwwwwwwgwgWggwgfvwwfvwfwwgxxwhhwxxwwwwwxwwwwvvxghvxwgvvwVewUvwxgxwgwwwxhxxhxwxwvfwghwxxwwwxwfwffxwfUvWevgTvwVvfwfgfefvewhvxxwxwwwwvwwxwwwwwxvwgwwewwvwxwhvxwwgvwfxxwwxwwwwxffwgfxxxxwhfwwwwhwgVffWxwvwhwwxgfhxxxwxwvwgwxwwwwwxwxxgvvxwgwwwwwxwwxwvxxwwwhwwwwwwwxwwwxgfgfwwvfvvvffhvwvwvvwgwxwwwwvwwwvwxwwgwwvVgvvwgvvgvwgwwwgvwwwwxfwxwwwwwwvvfgvwvwgxhvxwggxxwwwwxwxwwwxxxwxvwwwwvwwwwgfvwwgwwwvwxxwuvhwwfvgvgfvvvxwgwgxvwwgwvgWwwvxwxwxxwwhvhwxwwwwwfwvwwwgxwvxggwgwxwwxxxwvxwuvwfggvfVvvwVffuWwWfvvwfgvwwffwgwgwwvvfgVftwwffuvvvvvfwvwvfWfvwwwwwwwwvwfwwwwwwwffVuwfvwvwwwwewhggfwhwvwffvwgvwwwwwwvxgwvgwwvgwwxwvxVfgwggVfgVxwgwxvxgVwgwgwvwvfgewfwwwggvgvwvvvwfguwfxwwgwwwwvvgwwwvvwwgvvwwwfwwgwvggvgwwfxwwwghvfVgvgvwfffevvVdwvfwuVfuxfxfffxwgfvggvvvvvggfVTwvVgUhfUwffwgvwUfugwgvfvwhwfwgwwggvgvfvEewvfgwwwwwvfwwWgewfvUvxggwwffxggwwwwwfggxwgvvvvvfvwwwwfwgeugfufVfguggvwxgwgvVEwfvffffuVfVeveffffwgvwwfVvfffewevvvfgfgwwwhgwwwwffegfwgvvffwxvwwwgwvvwgWewvvfwwgUwwvwwVugfgfgvvwwVfgvwfvwgevgVEgVugVVwffufffeggffvUwvVVffWvfwfvfuwfufvvVgVvVuegvvgwvfvufgfgVVvvgfgvgvwwwvgfwgwwwvggvvggwwwvwgwfgWffvwWeffvfgUfgwwvvgvffwwvggvwwfffeGfevfUeffeVfgdfUVfefevvfWvefwggfwgeedfggwwvVwgfggVffufgWfffwfwgwggfWwwggvWVffgfeWwgwgfvufVfWfefvgvfvwgffwgvffUTWVufveVffVevffefgfffVvvfVfwWgfevfwegffvegvWfvUfdVWfwfvfvufwfvvgvvfUEVfgvwwfgffwfvwwvgwggWfwhwfwvgggVfgwfFgVVgfFUuvwvuvwffvwwffvfvVvUVgtUVfffffEUedUVUfevfWfvgvvfffffevevfvUeufgvgwgwgwvwWTUFVeeeVffwWffuvffgfwefffevvfggevgfeFVfVgeUffvvVUefeffggewg6VdcEtfffgffeeeEfeeeVefVvfEffugefwgevewevfUfVefuVfuffffwvVgvvvgfvfvfVeUfVfffvWvwgfwvvwwwwgvvwwvvwffVfVUdVfVVeffeWedwgffgfgfwfvwwwgwgfXggfxvwwwhwwwwwgvxwxwwvvggwwwxgxwvwwxxwwxwwwwwwwwfwwggwwwxxgxwxwVwwvwWwfwfwwwgggvwfggvghxwwvxvvfwgvvwgwvvwvgvxvwgvwwgvwwwwwwgwgvwvgvgvwvvwwwwwxgvgvwxwvwvwxwwxfxxggwxwxxwwwwxvgwvwgfwvvVwggwWwwwvxwxvgxwvvfvVufwfggWfVdVEvVefvVugffgvgffvgfwfvwggffgwwvwxfwwgvwgevVfgVffguwgwffVvvwgfxggwfWwgvVvwwvggUvfvVvwVvwhfffwfvwvwgffvTeGeGvvgffVfUvVUeefVffwfffufgvUfgfvfvvwffvewGeGevgfggggwwvfggfvvgeffUevfvgfgwgvxwgggwwfwfgwwwwwwgwefevWUvvfWffWffVwwffwufvvfuvwvwvfvwgvwwwwxvwwwwwwxwxxwwwwxwvvwwxwgxvxwwxxwwxxgwwxxwwxxwwwwxvxwvggwwwwuwwvgwwvvwwwwvwwwwwxxwwvgwvwwwvwwwgwxwwwvgwwwwvhwwvwwwxwxwxwwgwwwwwxwwxwxgwwwwwxxhwxwwxwxxvwxwfvwwwfxvvwxwwwwxxwwxwwgwwwxxhgwwvwfvgwxvwwxxhwvwwgwxwxxxxwxgwwwgwwwvxxwwxxwhxxxvwwwwwuvwgwwwwwwwwfwvvwxxxvwvgfvVwfwwwwgwxwwwvwwwwwxvwwxwxxwvgvwgvgggwwwxxwwxwfwxwxwxxvxxwxwwxwxxxxxvwxggxxxhghwwxhxxwwxxwwxgwvwwwvvwgwwvwggvwwwgwvgwwwxwwugwxwwwvwwwvgwvfwvvvvgwwvxxwwvwwgwwvwevggwwvfwwwwvvwwwwxxwUgfeWgfwfwvwgfxwgwwvgxwgvwwxwxvwxwwfvvgwfggwwwwvxgxxwwxxwgwugxgwwvwgggwgwwxwwwwxxwwvxwwvwxgvwvgwwgwvgwwwwwwwwxwgxgxwVgffvfgFtefWfVdfFefVfewvffwgfgwvdfffvgvegwfxwgfwwwffUffffffVwggvfegffvgfVfevvgwwvwvgwgfvwggffvwwwvwefgfvwwfgfuffwwvgwffffVfffFUfeVVeefevgffwvdefefffegvvfgwvfgfvwwwwwgVVffvgwvvvgwgvwwgwwwxgwwgevVfgffuvvfggweffffufwvffggfvwwvwwggeVfgfVfvvWgwxwwxwvwgwwwxvvwwwwwwwxgvvxwwwwgwwwxwwxwwwwwwwwwwwwwxxwwwwwvwgxwwvwwwwgfwwwwwwxgwwvwwvxwgwwfwwwfwvwwwgwxwfwwwwwwwwfwwwvxwwfvwwxwxwwwvgvxvgwwxwfwvxxwxxwwwxwwxwgwwwxwwwxwxxwwwxwxwwwxxxwvwwgwxwwfgwwwwwgwwgwwwwwvwwwwxwfwwwvgggwwxxwxxwwwxwwwgwwgwwxxgwwwwxxvwxwfhxwwwhvwwwwwfwhwwwgwggwwwxfwhvvwwwvxwwggwvxwwvwgwwwwwwwwwwhwwwwwwfwwwwxwgwxwvwwwxwwwwwwvxwwxxgxxwwwfwwgwxvwwwwwvvwggfxwwxxwxwwwggwwwwwwwwvgwwxwwwvvwwvwwggwwwwfwwgwuxvgxvvWwvwwwvxvwxvwvwfgvwwwvwWhvwwwggvwwvwgwxwgvggwwvwwvwgvwwvwwvwgvwgwvgwxwgfwfwffgvvwvwwvwvgwvwfvfhvxgwvxvwgvuWgfwwxwvwgvguwwwxwvwvgwwgvvVgvwwwgxgvWwxwwwwggvwwgvgwwwgwgWwvgwffwgggwwxwxxwxxwwvgfwwwvVwUggwvgvgvggwvfgwwwgwwwghwwwwwgvfgwvwwwwgxwfxgwwwgwvvxgwvwwwxxwwwgwxwwvgxxwgwwwwggwwwfgvvxxwfwwvgwgwwwvUwWvwvugfwgwfgvvwvgwwfvffwxwwwgvwfxwxwfwWvgwewfwxvwwgvxvwvwgvffwwwvwggwwgwwxwgwwwwgwwwwvwxxwfgvgfwgvwgwwgwvgxxwhxwgwwxwvhwvwxhgvgxwvvwxwwvwwwwwgwwwwwwwwwwgwwxwxwwwwwwwwwvvwvhxwxwwvwwxwwwvwxhhwhgwggwwfwxwwwxwwgvgwwvwwgxfwwwgwwvwwwwwfwgwwwxxwwwgxwhwxwggwxwwxxxxwggxvwvfhvwwwhxxxwxwwgwvxwwwwwwwwhvgvvxxwxxwwwwgwwvxgxwwwwwwggwxwvwwwwxxwwwvxwwwwwvxxwwxwxwwwwxwwwgxxxwwvwgwwwwgwwxwgvgwgwvwwwwwwvwxwwwgwvhVwgvwwfwwwwgxwwgwwvwgvxwwxwxxwwhvwxfggwxfwwxwxwwxwvwxwwxxwwxwxxwxwwwgwxwwvwxwwfwwgwgwwxxwwvxwwwwwxwwwwwwwggwvgwgvwwwvxxxvwxvhvvfwvvwxxvvgwwvxxwxwwvxxwgwxxwwxxwxxxggvvgugffwvwvwvwfwffgvwwgvfxfvggggwwgvgvfvxxwvwxvwgxgwvwvwggvxvwgwfgvwwwwfvwwxwfwgxgwwvxwfwwwwwxxwxvhggxwfvwwgvwvxxxxwxwwuvUffWgfVgvfugfTvfffffeggWwgvfuwvvfvgwgfwvwxwwgxxwwwwwwwvfwvwgwvvwwwfvfvuwwwvfvxwwhffwwfvwggxggffwfguwgvwwvvvwwvwewvuffeffffgegvfwvvwgWvgevwvvwwgvwvwwwgvwfvwvgffwwgwwwfgvwwfvwwwhwwwwfwwvvxwvwwgwwvwwwwgwwgfgfvgwfvgwwwfwVfvgggwwwgvggffwwvwxwwwgwwwwfxxwwwwxgwwwwxwxwwxxwxxgwwwwxwxxgwwgwwwgwxwwwwwwxvvwgwwgwwgwwwxwwxwwwwxvVwfffvggvwfwwwwwVxvvwgvwwhwwxwwwxxwvfvwfxgwwvxxxwwfxwwwxwxhxwwwwxxwxgxgwwwvxgfwwwgvwwxxxxxhxxxxwwxwhwvwwfwwwwfgvxwwwggwwvgwxwwgwxxwgxwhwxxxwvwvvwwwvwvwvgxgwwwwwwwwgwxwwgwvvvwwwgxxvwwvwwfhhxwwwWWggfVvwgehggwxwvwfgwVvwvwwgwwwwwxwxwwxhgxgvwwwwvgwwwxwwxwvvxgwwgwwxxgwwwwwwwwwwwxguwggugvxwwxwxwxxgxxwwxwwwwwwwvwwwggwvfwwxgwwhwwxhwvwfwvWxwwwwwxxgwwxwwvggwwwwhgwvhgwgwwwwwwwwxwwwvwgwwwvwwwggwvwgxwxgwwwvxwvggwfwfewvvgwwwugvggvvxuxwwxWwvwfwvggvxwwgfwfwffxfhwwvwghgvVwvwwgwwwgwwvwwwxwwwwxwvxvxfxwxwWfwffwvgwwwwwwgxxwxwwxWwwgvxwwgwwgxgwgwgvwwwvwvgwwhwwwwxxwxwwxxwxxwvvvgvwgwwvwwwxwwwxgwwxwxwwwwxwwxwwwwwhwxwwfxwgwegwvgvgugfwwwvwegffvwvvwwwwxxgwwwhwvgwwhvvwvwfwxvxwwvwwwvwwxwxxxvwwxwwxwwwhwwwxgwhwwhfxgwwhwwhgwxwxwghxwhwxwwxwvwwwwvwwwfhwwxwxxvwwwwgwwwxxwxxwwgvwvvgwwgwwwxxvwgwwvgwwxwwwwvwfwwwggwwwwwwwwghxwwwwfggfwvvwgeggghwwvhwfvwwfwwwwvwwxwwxwuxwegwhvwwhwwxwffwxwgwwxwhwwxxwxxxvwwhwufhfwwgwwvwwwxwwwwxgxvwvxwwxwwwhwwfgvgwgfwvgwxwxwwxxwwxxxfwwwvwxvwfxwxwwwwwwxwwwwxgWvgwgvwvxwvwwgwwxwxWwgUefwUgvgwWvgwwxhvWwvwwwgwwgxwxxwwgwhfgwvxvwwhwxvwvwwxwvwxvwxxwxvxxxhwfwvxwgwvxvggwhwwvwhwxxwwxhwxhggwwwvvwgwgwwxwvvwgxwgwwwwxhxwwxwxwvwwwwwwxwwxwVVwfGvwvfVfwgfegfgufggwgVvvwfwxgffvwgVvvvufewwwwwgfvfgwwwwfuvVwwgggwwwwwVfgvgfggvfffxvwVfvgvwwxuwfefwgvwwwwwgvwxgwwwwwxwxfevwwwfgefgfwwfwwwwhwwwxwwgwwwwwvwwwwxfwhvwgvwwwwwwvggwxfwxwxwvwxwwwwwwwwxxxgwxwwwwwwwwwxwwwwwwwwwxgwwwxwxxwwwwwwxwxxwwwwwxwvwgwgwvwxwxwwwwwwggvxwwwvwwwwwwwwgwwxwwwwxwxxwxgxwwwwxxwxxwwwgwwwwwwxwwgwwwxwwhwgwxwhwwxwwwxwwxwxwwwwwwwwwxwwgvwvwwwvhggfgxxxgxwwwwwxxxwvghwwwwwwwwgxgxwwwwwvwwwgwwxxxwxxwwwwwxwwwxwwwwwwgwgwfwwgwwgwwwwwwwgwwxwwgwwwgwwwwwgwgwwwgxwwxxxwgwwwfwxxxxwwwwwxwwxwwwxxwwxxwwxwxggwwvwwwxwwxwwwwvwxwwxwwvxgxgwgwggwvvvwwwwxwhwxwgvwwvwwwwxwwwxxwhghwwgwwwwwghvhwwwwwvwwwvwwwxwwfwxxxwwvwwxwwwxwgwwwwwwwvWufgugwwgwvvwfVwwwwvwwwxvwwxwxwvwxxwvwvxxxxwwxwvwwwxwxxwwxhvwwxwxwxxwfwwxxvggwgwvgwggwwwxwwxwxxxwgwwwwxvewwgvvwwvwwwwwwgwxxxWvwxwfgwxwxwvvggvxwwwwwwwvwwwwxvgvwvxwwwxwwvewwvfgwvwxfgwwgxgexwwwhwwvwwwhfvwfffVvfwWvvfgwxfvfwwwwwWvwwwfgwwwwwfvgfvwwwgwwwwgwvvwwxwwwuwwhvvgvxwwwwwxwwhwwewggvvwggggwwwwwwwwxwxwxwwxwwwwwwwwwuwfwwwgxfwwfwwgwwwvwwwwxxxxgxwwxwxfwwwwxgwvwfvwwwwwwwwwwwwfgvwxxwwwgwxxwwwwwxxxwwxxwwwwgvWvWvwgvwwwwxfwvhggwwwwvwwxxwxxxgwwxxxgvhwxwwxxwwwvwxwwwwwwwwwxxwwhwwwwwwwwgvxwwgvwgwhwwwwxwwxwwwgwwvvwxwwgwwwxgwwwwxxxxwhvwwxxhwwwwxxwxwxwwwwwwwvwwwwxxwwxwwwwwvfvvgwwgwfwwwwwgvwwxwgwxvwxwwfgwgwvwvwvgwxvwwvgwwgvwwgvwwwwwvxwwwvwgvvwgwgvxwwfgvwwwxwxvvxwwwwwwwxxfxwwwwwwvxwwwwwgfgfxwgwxwwwwwxwwxxwggxwvfwfwwhwwwwwxxgxwwfwxwwwxhgvgvwxwwxwwgwvwwwwvwwxgxwxxwwwwhgwxwwvffvwwvwwwfewvwwguwwgwwxWuwwvVuVgwgvhwgwvxfgvwwwwwwfwvwwwwxhwwwxvgwgfwghhgwxwxxxwwwwwwwgwwgwwwwggwwwwwwwxwvxvwhwvwvgggfxgghggwwwwxwwxwwxwgwwvgwgwfwxvwvwxhvxxwwhxvwwgxxxwwvgxwxwwwwxwvvvxwwwfwwvwwvxgwwwwwwwxwvfxwvgVwxwvfwvwwfvwggxwwgwwwfwgfVfVvWwewWwfwwghfwvgwvfwwgvwwfwxwwwwwfwgewfgwgwwwwwwgwwwxwwvhvvwwwwwwvwvwwwxwxwxwgvwugvwwvvWgfwwxwwwwwxwwwwwvxhwfffVfffVfUeVSTVfUffUUUdvwggWwweVVxfwwwwfvxwwffexwwxwwgfVvgvfffvffUffUUUtwgeTvwfVfvgvfvxwwgevwgVffwvuvgVfvwgwwfwwgeefeeefVVdwfgvfeFUUewvffvUfgeVfgfvfgvvfwgwwvfwwVfuvgVfuwgfgfwgfffvwwwwgvfwgVfvwgwvwhvvwgvgggVfgvfefgwfgwvgfffVfTUUvwgffwwwfVgguVwVvwvwwwwvwgvwxfwwwfwwvwwugvxgugwgwvvwwwwgwvgwxwvvwwwwgwwwwwgwwwvwgwfuwgggffvwvgwggvgvwwffwvwvxhwwwwgwwfvwvwgwuxgwfxvfwwxvvvwwwfwuwvgguwwfvwwvfvvwwwvxwvxfgvwfVvwwwwwwxwvwgwwgwxwgwxxwggxxwgwxwwwgwwhgvwfwwwwfwxwgxwgxgwwwwgguwgWvwWwwxgvwwwwwwwwvwvwgwgwwwwguvgvvwvwwwwwwxhxxwwwwgwwggwwwwwvwwwvwgxwuwwgVfwWwffwvfwggfwhvugwvwggwxxwfggfvvvvgfggvgxgfvgwwvgvwhwgwwfvwvvwwgvfxvwwwwwwvwxgvvwwwvwwhxxwgxwwgwxwwgwvvwwvwwwwvvwvgVxxggwgwwvvwvwgvgwwwvvxwwfVwwvwwvVwvwwwggwwwgfvgvwwwfwwvgvgwugfxwwvwxwhwwwwwwwwffwwwvxggfgvwfwwhfffwfwwwwhfwwwgwwwwgwvfwggwhwvgvxwuwwvgXwfxffwvwwvgUwUwwwfwwuwgvwhwvgvwwwwwwwwwgfwfgxvggggvvfxwvwwwgvwvwwwwwwgvxwuwxfwfwxwwwWvfxgfwwwwgwwwwfwwwwwwWwwfwwxwwwwwgwwgxgvwwxwwgvwwvwwwwwwwxhwgvwwwgwwwwxwwwxxwxwvwwwwwwwwfwwwwwwhxvgwwwhgwwwvwwxgwwgfwxvwwxwxwxwwwgvgwvhfwfvgvgvwxwwwwgxwwxxwvxwwwwwgwvhhwxwwwxvhvvwwwwwwxwxwwwwwwvwwwwxwwxhwggghgwxxgwwwxwwxwwxxwhxwxwgwfwggwwwgvwgwwgvvvwgvvvwwvvwwvwvvvwwwvwvgwxwwwhwwwgfgfvggwwvwvwgggwvhxwwgwefvwgwgfwffvgwhwVvwxwxwwwwfwfwewfvwfvwwwgwffwxwgwwgggvwwwwvwvwvgwwUwfxwwxwwwwhhvfvwwwwwwwwgwxgwgwhwwwxxxwwxgwwxwwwwuwuwwevwxwgwwfvwwgxvvwwvxwgvwwgggwhvwxwwgvfwwvfwwgwwvwgwxwwwwwvwwwwxwwvvwwwgwxxwwwwfgvwfwwwwfvxwwfwhwevvvWvfwwwUggggfwwhwgvvwwgfwwwxxxVfvvwewegVfwgvwvgvfgwgwgwvwwfwxvwvwvwvgxwgvvwxfwvxgwwggwuvwxwwwwwvxwwgwgxwxwwwwxwwwxwvwwwwwgegfwffwwwwggwwgwwwfwwghwfhwxvvwwfwgfvvwxwfgwvwxxwgwwwfvwfvxwwwxwxwxwwwwggwwwxxwwwxwwwwwgvvffetvgvwwgwvgefgggfVgwwwxwwwwwwwvgfVvvfvwwwwwgwwwwxxxxfwwgfevxwwwwgfwwgvwwwvgggWffgvxxwxwvxfVvwwwwwxxwwwwwwhwwxvffefwfvwwwwwxvxwwxwwwwwxwfwxwwgxwwwxxwwwegvwfwfwwvwwxgwvgwfwwxxxxwxwwxwwxgwwwgwfghgwwwfxwhvvxxxwwvwxfxxvxwwwwwwxgwxffgfgvwwgwwguwwwwwwvgwwwwwxwxxxxxxgwgVwhvwvvwwvgxwxvxwvwfvhvgvvwgxwwvxwwxwxxwxwwwvvvwVggvwvgvwwxwwwgwwwxgwwffgffWggwvvvwgxwxgwwwWgxwvwwwwwxwwwwfwwgweVfXfgwvwVxvvvufvggwwwgwwwfwxwgwxxxwwwwwxwgwwwwwwwwgfgfWvuvVwwvvvvvgwwxhgvwWfgwwwgwwwwwwwWvwggvuvwwwgvvvwwxwwxwwgvhwxwwwgwwwwwgwwxwvwwwwwwxxwffggwhgggvgwgwvwvwwwwxwwxwgvwffgVwfgwgwgwhwwgwwxguhvwwwhwwxwwxwgvwfvewxgWvUhvgvgwfXvfwvevvgvgvwwwwfwwxwgwwwwwwwfxwxwwwgwvvgvgfvgfgfgvVwfgffwwVwfgwgwwwguwwwwwvxxwwwwfwgxwgggwwvvwwxwwwwxwwwfxwwwwwggwwwwwxwggwwwwwwwxwxwgvuwvwfvgwwfvhwwwvgfGvvwgwwvfwwvwgvwvwwwgvwwuffgdvgVefgwgwwwfgvwgvwgvwwgwwvfvwwwgfgwgwwwwVewvwffwwVFvffwfgWfgfvUvfvvuwguwhgvvvwwwgfvexgfvfxwwUefwfvgwwfwwwvvfgdvvVevgwgwffvfwhvgvwhfvUevvwgwfwwewwwWwwvwwwwwggwfwwwwVevwwwgfwwewgffghwwwgvvxwffgwwWfwgwgvgvwwvwwxgwgwvwweggwvwgvwwvxxwwwxxwwxxxwwxwxxwvvgxwwwwwxvvfwwgwvwfwxxwxwwwwxwxwwwvwwvhwgvwfvewwvwvwxfwwfwwvwwxwvwwwwxwxwxwxwwwgvvfwwwwvwwxxgwwwxgvwwwwwwwwxwxvwwxxwvwgfwwwwgfwhwhwvwwgxVWgwwwwwvwwuwwvgwwwwxwwwvuwxevgvvvwwxxgwwwwwggwwhWwwwwgvgvwwxvvxwwwxWWgwgvwgWvvvwWwvgwwvguwwvgfwgfwvvxwgwfwwxefvwvwwwvwwwxgwwwuvwffwxwwffwhvwwhfwUVugvwgwvwwwxvwwwwgfgfwwwwvvwhwxvvwffvwwwgxwwhwwwxgwfgwxwvwwwvwgvvhxwwxwgwgwwwvwwwwwwwgggwvwwwwxwwvwwvwwwhhwwvwwwwwwwwvwwgwwvwgvhwvvgfvfvggfvvfgwfwwwvgvxggwfvvvfhhgvwgwwwwwwgwvwxwgwgwwwwwwwxWwggwvxhxvwgfvwwwwwvwxxwwwxwwwfvwwvwwwwwwWvvfvwhvwvwxhgxwwwvwxgfwwxwgfhWwwwvvwwvxwwwvvwwwwfwwvwvvwegvwgwwwwwwwwwgxxvgwwgwggfwggvwwwwvvwwevxfwvwhvfWwgfwVvfVfwwgfxvvvwfvwwwvwgxwxfffuwufvWgfwwgexvfvfgwgwwgxwvwwwuwfgvgfwgwvWfuwwfvwxWwwVffgvfwwxwvwwgwgwwwwwvggvwgwwwfvwwwwwwuwufvWwvvwwwwwvxgvfwwwggwgvvwfwwvxwgvhwxwgggwgvwvwggwxwxwxwwwwvwvwwwxvxwwwvwwwwwwxwwxxgwwxwvwxwwgwwgwwxwxwwxwvwxwwwwwwxwwxvxgwwxvgwwgwwwwwwvwwvwwwwwxwwwwxxwwxwwwwwwxwgxwwgwxwwxwwvwxwwwxwwxwgwxwgwwwwwwxwwgwwwwwwwgwvwwwwwwxhwwgvggxwwfvvgwwgwgggfwVwwvwwwvwvgxvgvwxxxwgxwwxwwwfvwgwvhwvgxwgfVgvgvwwwwxwwfwwwxwwvxwwwwxwxgwwwwvxwwvwwvvvgggwwgwwwwwgwwvwwwwwgxvhwwwwvwwgWvxwwvwxwxxxwfxwwggwwvwgvwwxwxwwwwwhwwwwgvwwwwwhgwwwwxwwwwwwwgwwvwxwvvfwwwgwgwvwhhwvwwwgwfvgxvwvvvxXwhwwwvwvwhvvvwwwxhxwwwvgwfggwwwvhgwffXvvwwwwwwwwwvxwwwwxvfwwwgfwwwxwwwWwvvgwwguwgwwwwwwwvwfwvwvwwvhgwwvvwvwwguggwwwwwxxwwwvwwwwwwwwvfxwwwwwwvxxxxwwxxvwwwxwfxhwwwgwwgwwwvggwwwwwwwwvwwwxwwgggwwwweuwwwwxwgxgvwxwxxwxgxwxgVwwWwwwwgvwhwxwwwwxwwwwwwwfwwwvwxwxgwgwgwweewwwgfwwwgfvvgwwfwhfxwgwxwggwvffwwwvwhgvwwwwvwwwwwwwVwwWvwwwwgvwgfwgwgfwwhwgfvvwwwgvwwxwwvwwwwwfwwfwwwwxgwwwhwwxwwvgwwgwwxwgwwwwwwwgvgwwwwwwwwwwwxwwwwwwgvxwwgwwwxfwwfgwwwgwwxwwvwxxxwwwxwxwxwxwxwfwgxfxwwgvwwvgwwgwwwwwwwxwxhgwwxwfwwxwwwxxwxwewWvxwwgvwvwwwwwwgvwfwxfwvwwxwwxxxwxwwwvwxvwhwwxwxwwvwwwwwxwwxwxxxwwwwwxwgvwwwgvwwwgwwwwhwwwwwwwwwghwwwwxvvwxgwwxwxxwxxwxfwhwwxxwxwwxxxwwwxxxwwwxxwwxxxwvvvxwwvwwhfwwxvwgxwwxxwxxxwwggwvvxwwxvwwxwwwvgwwwgwxgwvxwwwwwgfvvxwgfwwwwxvwxxwwwwxxwwxxwwxxvwvwwfxxvwwwwvxwwwxwwxwxxhwxwwwwwvwwxwwhxxwvwwxxxwxxwxwxwwxxwxwwxwwxxvwwwhxwwwwxhwwxvgwfwwwwgvxvwwfvwwvwvxwvxxwfwevWwwwggfwvwwgwwwwxwwwvwwwwxxxwwxwxwgvgfwxhgvwwwwwhxhwvgwwwhwwxwwwhwwwwxhgwgwwwwwxgwwwwgwwwwwvxwwwwxxvvgwfgxwwwwwwgwxwwvwfxgwwwgwwwwwwwwxxwwwwwwwgwwvwwwwwgxwwwfwwwxvvwwwvVvwgggugwvwfwwwxgwfwvxxxggufVvwvwgvwfgwvfxfwvfwxxwfwwwwwwwgvfgwgWvfewwwwggvwgwwwwwvwwwwwwwgwvwwgwwvwwgwwwhxgvwxwwwwwvfvvvwwvwggvwwxwvgwwxwwwwwxwxwwwwffgWeVgvfefgfxxwwhwwxxgwwwwxwwxwwxfwwwwwwwwwwwwfgfwvxwwwwfvfvwxxwwwxxwxwxvwxxwwwwwwwwgvwwgffffvwwwfgwUvvwwwhvgwwwfwwwxxxwxwwfwwxvvwwwwxwxwwwxwxxwwwwwwwwwwxwwwxwwwwwwfffgvwwvwwwwwvxwwwwgwwgwwwfxwxwwwxwwwwwwwxwxwxwxwwwwwwwxwwxwwwfxwxwxxxwgvwxwwwxvvwgwwvxwwwwwwxwgxwgwfvwwwwwhvwwfwwwgwwwwwwwwwxgvxwxwgxwgwxgxxxhfwgwwxxwwwwwwwwxwwwxwwgxwwwwxwxwwxvwxwwxwxxxwwxxgwxxwwwwwwxwwgwvwwgfxwvvgwggvwvwuhwvwxxwxwwgwwwgwwvfvwwwxxwwwwvvwgwwwvwwwwvuhwwvvwwvwwvwwwgwwgwwwxxwwwgvfgggwwfguwgewWvwwvwwwvxhvwgwwwwvwwfgvwwwwwwwwwgwxwvgwwwwxwxxvvwxwxxwwwxfgwwgwwwxwwgfwwwvvwwwwvwwwvwwwgwwgwgxwwwwvvvwwwwxxgxwwwgwwfgwwgwwvgegwwfxwxfwwfvgvVuwwwvxwwwwwxwwvwgwgwwwwwgegxwgfxwfwwvwgwgwfwvwwwwwgvgwwwvgwvgwxvgewwgwwwwgwwgwfwgwwwwxwwgggwwxfwvfvgvWewxwgwwwwgwwwwwgvvwwwxwfwwwgwwgwwwwwwxwgewwwhfxgvwvgfwwgwvwwxwwwwwwvwxgwwxgvvwwwwxwxhwxwwgwwxwvggvgwxgxvxwwxxxxvgxwwwwwxwwwwxwvwwwgwxwwwgwvwxxxwwwwwwxwwxxwwxxxwxwwxgvgwwwwwwwvxgwwwwwwwgwwgxgwwwxwgwwwwxxfgxwwwwwwvxxwxxwxwwwwwwwwwxwwwwgwvwwwwwwwwwwxwwwwwwxwwwwwxxwgwwvvgwwwwwwwxwxwwwwgwvhwwvvwhwwxxwwwgwwwvvwwwwxxgxwgwwwxwgxwwwvvxwxwwwwwxwwwwwwwvwwwwwxvwwxwwvgwwvwwwgwgvvvwwwgwxvwgwwwwwxwgwwwwvwxwgwwwvvwwxfxwvwwwhwxvvwwwxxwgxxxwxxwwwvvwwwxwwwwwvvwwwwxwwwwwwwvvgwwwxwwxhwvwvwwxvfvwwvwfxVwwgxgvwxgwwwgwwwwwwgwgwgwxwgvfwgwvwvwvwxvwvWvwxgwwwxwwwwwwwwwwwfgvvwxwwwxxwwfwwwwwgggxgugewVffgwwfwvvfwfwgvwwgfwvgwwwwgfwxwwvwwguggwvvxwgvxgfwwwwxwwwxwwgvwwwwwwwwgfgwwwwxxwwwxgwgvvgwwwvxwwxwgwfgwwgffxvwxxwvvxxwxxxxwwgxhxxxwxwwxxwxxxxxwxwwwggwxwxvvwxwxxxxwvwgwwwxwwwwwxxwxxwwgwgvwwxvwwxwxwwxxwwwwwwwxwxwwwxxxxxwgggfhVVeguffggfffvgWuefVffwvwvwwwfwvwgvvwvffwgwffvwVvfhwewvggwxhwwwwwwgvwwwwwwwgwgwvVuwffewfhvvfeVugVWdgeguefgggfewvEVgwgwggefwgVuffevWVfeVugVVTgehvfffgVfVggVffvwvgfvvfvUfffvgWffvwWVegwVfwvfwfwvvgvfvffvwWfwwwwwgvwfvfgvwvwwxwwwwwgvwgwvfvwvfefgfeUgggffwgwffvwevvvvfhgwwfwwwgvwwvvvWfffvwvffvfeueghuwvwggwwgwwwwwvwvwwwwwwvwgVVveVvTWeXfvfVVvuVvvTgehfueevwVfuwggVgfvvgvwvvgfvfwvvVfgWvegvegfhvvfevvfVvfffVffuwffwvwveffvvfVfvwgffuvVWFvwfwgvfuwgeveffuVVxvwwwwfwhvfvwwvvwwxvgwwwvwwwgvvvgggghffWWeefffvvgWfggewfwghvvwwvwwvfwvwfwgefffvvfVfggUwvwwvfxwgwgwwwwwwwwwgfgvvwwgwxgwwvvVvvfWVegfVwvvuFwuVFWTheVgewvgfVwgfufwwvwffgvgfUfvfwfVvfvVwvfVfUgvfwfvufVfgwVvgwvgvwegfvwTfuewfggvwgfVwgWuVgwfwvewvgfTgfewfVwvxwwwvwwfWVwwwvfgggvggwwvggwvwvwggvgggwwwwwwwxvwvwvgxwhwwwvwwwxgvwgwwvxgwvxgwwxwwwwxwgwwxwwguwvfgvwgwfvwwwfwvvfWffgwfvwggvwvwwxxwxgxxvwwxgwxvwfvwwwgvwwgwwwwgwwwgwwvxwwgwxwxwxwxwwvvwvwwwvvwvggwwgwwfwwgvvgfewfvwwwwwwvwxwwxwwvwxwwxvwwwgwgwffgvUeefffggffuvfwUfgfvvwwvvwfwvwwwfgeffgggvfuvfwVwxwgfwwwwfwwwwwwgwwgvfvwwwwvwxvgvgevWfgUvfvwfvvWdvXewDuUfveevggfewwgWUwgvfgwVvfgvEvwVffuvgewgffUuffweffwgefuvvgegvgvwwVfwwfEuvVvvfwggfevwfWfwgvgwwfvggfUfvfffwwwwwwwgfuVgwwgfxxvvgvvgwgwvfwgwwwvwgvggwwwwgvvhwwwwwhvgggvwxwwwgxwxwxwwxwwhwwvwxhwwvwwxwxwwxwxxgwWwwwwvwwwvwwwwwvvfwfvvWwffggvvvgwvwvvwwvwgvwxvgvfwvVvgwhvvfvwwwfgwgwfwgxwwwvxwwhwwvwwhvgwxwxwwxwvwvxgwwwxwgwvgvwvvgvhwxwxwwhwwwxxwgwgwwxxvwwwwwwwwwvfwwwwvwuvgxhvvwvgwwwwwghxvwwwvvwwhwwwwwwwwwxfvgxwwwvwwhvgGwggwvxvvfwwwwwgfvfevfUfeWvfvfwgwwwxwwhwwgwwvwfvgvvfwwwffvwvvwVvfwggwwgwwwxhxwghwvgvwwwwwgwwwwvxgwwhwhwwwfWwwvvvvhgwxwwxxwgwwgwwxwwwwgwwwwxwwwwwxwggwgggwwgwvwwxgxwwwwwwvvwhxXwvwwfwfwhwWxvvwwwwwwwxxxhwvwhgwwwxwvggGfvvgwvgVvgwvgwfvfVvfUVegfwffwwgwwwwgwwgWxgwfxgwvgwwgxgvgwgwwgvggwwwwxwwwxhxwwggwwgxwfxgwwwwvwwwvgxwwfwvxwwggvfgvgwvfwwwwwxgwwxwxwwwwwwwxwwvwwwxvxxgfhfvgwghvgfwgwwwwwfxwwfwgwwfevfvwwwwwwggvfvwvwwwhwwgxwwxxwxwwgvwggwwwwwxxhvwgwwwvwxvwwvwwwfwwwggfwwWvggvwwwwwwwwvwgfgvwwvwwvwugvwwgfwxwgwvgGeVVffwVvvwwwwwWUVfgvvgwfwwWwwgggwgwwwwggfgwfwwgwvwwvxwwvggevfwVgwgwwxwwwewfwvwffwfvxwgfwgffwwhgevewwxwggxwwwgwwfggvwwwgwwfvwwfhwgwwwxxwwwwvxvvwggfvwvWgxwgwvgUvwwwgfwfvvwvwwVvWvgxwxwwvwwwewvwvvwxfvwgfwfwwwwvwvgVvgwgwwvvwxewvwwvgwwwwfvWvXwwwvwxewuwwvgfwxxgwwfwhwwwvwxwxxgwwxwgwxfgvxhgfgfuvvvwvfWggvxwwghwwwvxxgwfxxwxxvvvwwgwfhwvgwhuvwfwxgxxwxwfggewvwwgWvggvvwfgwwwwwVtfgewEfgVwewuwwgffuvgwxwwgwhWggvvfvxwgwxwVgggwwvxvwfgvwwwwhxgXwfwwgxxxwgvvfvxwxgwxvWgfuwwewggxwwwwwvgffxgvwwwxwxgwWwwwvwhgxvvggvwfwwgggxwwwvXwwwgxwhgwvhwwVfwfxgfgvhgwwwxefwvgxgwxwwwfwwwwwwwvuwgxfwwwgfgvgwwgVwvgwWugvWgggwwwfwuWxgvwxxfgwwgvghgwvxwvgwgvwwwwvfWwugwwwxwwufwvwgwxvwvgVxugwwwwhwwtWwuwgvgvevwwvfvgxwWwvwgwwwgwxWwhwfvwghwUwfgvvwwvfwfxwwwfwwwwwwwvvfxwwvgvwwvffxvghXugvghgwgxwgvgvfffvvwwggvvwwvwhvfwvwwwfgvwgvvewUgwevwwggvXvwXwwwfhvwegvgvewvgWvxhvfwfwfwwwwffWvwgwxwvwwwfwwvgfwwwwxffWuwWwwwfxwuwUwwtffVwfhwwwxwfffhfwWwwwwwwxwwWwwwwGwwwvWhwvwxvegfgwgvwhghVhgvwhgwwwwwxwwghwvgwvvxwwgwhgxwvyxvvvxggwxxxwwwwwvxwfuvwgvvwgghvwwwgvuuwvVWWgfffvwwvvuvuxgwwwwwwwggwvvfxxwvwuwfgWggwgvwggwvfwwwwvwxxwggwwwwwxxwvvvvwfwhxwxwWgwugvxgxwxvvhwvwVwvvxwwgxwwWwwvfgxgfvWfewfvwwvWvgwvwxwwxwvwxgwwxwxxwexfvwwvVvgwwwVxVwgxwfxvwwwgfggxxvxggvwgwgwwugwgwwwVwVgwgtguVfvuwwgffvFxwgwwwfxwwVvvvffxfwfwvvWvgfwwwgfgfwvwxwwwwgugwvwxwwxgvfwUxwgwxwgvwvWvvwuwwggwxwwfVxffxvfwwwgwxxwwwwfwvwfxgvvgVvvfffwVewgfgvfwwVffvvwwuwfwwfvwvwwwvgfwwffhwwwgfwfwwxvvvvuvvwvwwwgggwxhwwgGfffgffvwwvvvVwwwefUefVfeTeVWefVgwvwgVvwwgfffewwedwwwfvVxwefefgvfeVvffvfWvgvwgevwwgwvffxeexwxffwgwwvwgeugwvgfwwwgfgwgVgVvvggvwgwhwwwwwwwwwwwgwvwvwwwwxvwvwwghgwWvffffvwwfgvwwffgwvwvffvwwvgvwwxffvwwvfvwwffwxwwfffwwxwwwwwwwwwwwwwhhvwhgwxwgfwghffxwwxwwwWffvxwgwwwwgfvvgwwwwwwgvgwwwgvghgwhwwhwgwfWwwWfwwwwwgefgffwwfvvwwhwwvwgxwwwwwwgfvvwwwxwwwwfvgwwwgvwwwwwwwwgwwwwfwvxgxfvgwwxxuxwxwwwxwgwwvwwwwwwxxwxwwwwggwwxxxxwwwxwwxwwxxhwxwwwwwgxgwvgwwvwwfwwwwxxfvvwwfwwvwfxxxwhwwwwwwwxfwwfwwwwwxxxfgvwfwwvwwfxxxwwxxwwxxwxwwwwxwvvwwxxwgfxgwwwxxgxwxxxxwxxxxxxxxxwwwwgwwwwxxxxwxwxgwxfxwxwwwwvvwwvwwwhwwwwgvvuvvgVgvVwwwwgwgwwwwvwgwwgwvwwgvwwwgxwfwwxxxggxwwwxhxxxwvxwxxwxwwxwghwhwvgxxvwvwgwxwwxwxxwwhwwwwxwhwwwwwwggvgvwwwfgvvwwvxwwwxvgwwwwgwwxwvvwwvgwvggvxwwxvwwwxgwwhgggvxwwwwwwgwgwwxxwgwwwvwvvgwvwggwvffvfVvgwwwgwvgwgxxvgwwwvwvggvvwuwguxxwwwwwvgfvwwvgvwwwxwwvxwxuggwvwgwgvxwwgwugwwwwhwwwwufVegvggvvwwwxwgwhwwwwwvwgwwwxwgxWvfwxxwwfwvvfggwwgvgwfwwwwxvwxwwwwgwxxwxgwwgwgwvwfwwgwxwwxwwfwfxwwwwwwgvwwwfwwwwgvxwwhfgwwwwgfffvfgwVvwwguwwwwwwevwwwfehVvvgwwxwwgwwwvgwvvwwwhwgxwwewwvgwvwvgxwgwvwwvgvwwwhwfwwwwuwfwvfwwvgwewgwxwwwwgxwwwwvwVgwxwxxwgwvgwhwxhwggwwwxxwwwwxwwwwxwxwwxwwxxxwxwxvgwwgxfxxwxxwwxwxgxxwxwxgvwwggwwxwvvwwwhxfvvwgwefwfWgwWfxwwwxwxhxxgwvhgwvwvwgxwwwvwwxgwwwxwwxxxhxwwxxvghwwxwxxxxxvwwwwwxgwwwwwvgwfwwwvwgwxwxwxwwwgwxwwwgwvvwwxwwhvxwgwvwxvwxwwwxxxwxwgwvgwwwxwwwxvwwgwxvwwxwvfvxwvvwwhwwwvwwugfeffggvvwwxxgwxwxwguwwwwxwwwxxwwfvwxwwxxxxvwxhwwxxwwwxvwxwxWwwwvWwwwwxwwwxwxxwwfxxwxwwxwwxfwwwfgwwfwxwwwgwwwvgwwgxghwwgwgwwwwwwxxwvwwwxwwwxwwxxxwwgewwvvwwggvwggvwwwvvgfgVffffVhffvwwvgwxxfewwgfwwfxwxwvvwwgwvwvgfwwwxvwwxvvxggwwxwvwvwvwxvfwxfVgwgwwwxxwwwxwxwwxwwwwwwgffvgefvwwwWfffwwwxwvvwwwwwxxffwwvgffwfxwgggxwgwwxwwwxwwvwwxwwxwxwwxxwwwxwwxgfwwwwvgfgvwvwwwxwfvfvwwgwwwvwwvgwhvvvwwwwxwwwwgwwgwwxgwvvwwwwgxwwwwgwwwwwwfvvwwxwwwwwwxwxwvgvugwvvwwxwwwwgffwwwxvwwwxwxwwwwvwwxxvgffxfvwwwwefgvwwxwwwxwwwhvgwwgwgvwgwwwvgxwxwxwwwxwwwvvvwwwxwwxwwwwfvvxwwwhegwvfxxxgvwgwwxwwwwwwxvvgwwwwxxwxwxxxwwwvwxxxwwwwwxhwgggwwxwwwwwxwuvvggxxxwwvwwwwwwwwxxwwwfwwvWfgfWgggvxgVufxvxwxvwwxxxxxfvvwvwwggvfwxwwvvxwggxfxwwwxxwwgUwwgvwwhwxxxwgwvwwvvUwffwGfuVfvvgxvfghwxwwwwxwgVgVfvwwxvwxgxwgxwvwxwwwwhwxwwwwwxwfwgxwxwwvfVugxxwxwfwwxwvxvewfVwwwxxxwwgvgwxxwwhxwgxwfuhwvwgvwwwxvwwwxxxxwfwwwwgwvwwwvggwwwwwwwwwxwwwvwwxwwwwwxvgwfxvwvxwvggwxgvwgvwgfvgegwwwwwfwwwwgwwwwwxfffxfvwwhwhwwxggwwvwxvxwxwgwxwggwgvwxxwwwfwwwgwwwwxvffwwwvwwwwxwhwwwhwwwwxfwxwgwwwgvvfvggVfwgvwvfvwvvwfwxgvxgwxwvwwfXevhvwfvfvfwxwXegwvgxwwvwxfgvfvxvwvwwwwwxfwwggfwhfwewefvVuwwwwwgfwfvwgfwwffggvVuvwwvwxwwfwggfwvwgvwvvgwwwwgwwxwxwfwwvwwvggfgfwwwwwgvwwfwwTvfxhhwwhvwwwwgfwgwwvwxfwxwwfwggfhwfvgwgwwwwhgggvvgwwgwgwfgwwxwwxggwgwwwwhwvgwvwwwwwggwxgwvwwwwxvgwwwwwwggwggvhfgfVgfwfvwwwwefvxVvgVvgfeffVffwgvgfwvwwwwgvgwwwwwfVxffwwwWvwXvggfgfgvwvguwwwgwWwxwxwwfvwhwgvwwwwguvwfwwVgwgfwwgfwugvvgufwwwwwvwwxwgxwwvwvwgwwwwvgwVwwwvwvgfhfefgggvgWuVvwfgwfwvgvhvwwwwvfvxwhvwwwvggvvVwgwfwgggwwxvgvgxwwVgeguvwggvgvggwxgvVVvfwwgwwfwgWuvvfUgvUffFeUVtefvvvVwvwvwwgevfffggVftvvvfvvwfxwfwwfvfgvfvuwwgwwwvvfwvhvwwwvvwwefuwwwfwvgvwgfvwggwfVvvvvvvuVvggwgwwxwvwwwwgfgvgwwxwgwgggwwwvgfxvVfvwwvgwegfwwvwhwwwgwgwwwwghwwxwwwxgwfwwVgwvgwghwwxxwfwfwwxgfwuwwxvwwwggwxfgefgxwvwgwwfexwgVvvVffvfUVdgefgwwwwwvwfwwgfwwgvVxgwvfgxwwvggvfgfwwfxxwwwwwxwwwvwwvwxwfwvfwwguwwvvwvVfgxggwgfegvgwwgvewwwfxwxwvwvwwgwwwwwwwffuxwfxhvwghffvwwfvwgvgwvwwwxwgvwvufwgfwgvwwfwwvfgwxvwfwwwgwgxwxwwgvwwwwwvvwwwwxwxwuvgxffvwwvwwvwwwwwwgffvWggwwwwwwfgvvwxvwwwhfwwvwgwwfwvxgwwwwwgGVfvVewgfwVVeuwwvggwWvfvwwggVgwgvwwwwwgvvwwwgwwgwgwwggwwgvwgfwVgVvxwwvwvwewfwwwfwxwgwwfgwvgwfwggvggwwwwwvwgvgwwwhgwwwwxfgvfguwVgxgwxgwhxhwwwxxxxwwwxxwxvvwvvhvggvfwwwwweguggvvfwwwfwvVxgvwXwwVwgxvvwxuwwwxffgvWvgwvwwgvVwvgxgvwwVwgxvvwwgvwwxwwvVwfuwwgwxVwgwvgwwvwwwwvwhwwwxwfxgwgwwxxwxwxwwxvwhhgVggvvvvvgwwwvwwgwwxwwwwvwwwxxwvwfvvgXwvgxhxvvgwxvwxvwwxwwwxgWvvgwwuvvvgWwhwfwgvuuuvfWWgggffhhwvwwgvwWgwxwfgguwwwhgvvvgwggxwxwwhggggwxvwwggwwxwwwwvvwxwhgWgvuwwgwxggwwwvvwwvwwwxxvvWvwwghxwvwwWwwhwvxwxwwggwgfwWggwfhvvfwwwwwwhwwwwgvvvwxwxfgwfgfvgwwwwvvgXxuvghvvfwwwwwhfffwfwwfvvwvWwfgwvghgwfgwfWwuugvgfugwuWgfvwWwwuWhffwwwtgwuwWvwxwfgwwvgxwwwuggfvwwgwvgxfwwwwvwxwwxvggwvwwWxwugvhfuvwvwvwxffvwwWwggfhvwxwwwwwGwwWwwVwwxwwwwvwwVhgfgegvhfwvgvwgwvvxwwwgfwwwwgvwvvhvfwwwWwfwhxwhwfvwwvwwxvwwwwgWwgwgvwvwfwhvgvWvuguwewvwefUgwfxwwgwwTfxewwwwuwwgwfgwvgvgfwxvgwUwvgwwgwwevxfwwwwvwxwxwvVwwvxwwXwffwxewvwvwgVvfwwwWghwhwxgwwgwwWghvhxwgxhwwhgfvgfgwvvvfgvwwwfvxxwwwggvwxWvvfwvfgWwgxxvvwhxuvgxgwggwxwvhxguwgwwfuwgvvgwvWgwxwgewdVfvuFgVwwgUXhwvvwgxfwWfgxwguxwvwuxvghvxvfwwwggxxwwghgfgwwvwhWxgggwwgvxwxvWggfvwwxgwWggxgfwwvfwxwwfwvwfwghfwwwwwwwWwgxxwwwxvvxgfvgeufvwffguwwwffxwwwwxwvvwwxgewfvwevguwwVwgevhwggfvwhvvwwwgfwggwfvwfwgwwfWvwedvVwWvggfewWugfxwxwgwgugvwwwwwguxwvxfwvuwfwwxwwggvfvvwgwxWvxwgwwwwvvxgwFvffwwxwggGeWvffuwggwxgfewhggwhfgxxxwwwvgwgxwwwfwxwgxxfVfgvVgfwvwgffvwwwfxwvwfgvwwgevvwwwvwfvfgufVfvgwwwwwxgwfgvggvwwggggWwvfwgwwwGgfffUffwffVefvfgffUVefUfVEfVgVefeewwwwwxxgvfvffvUwgwwfwwwgggffvvVfggwwwwwVefwwwfwwwgVVffvfvwgwwxxVfVvwgwwwwgVFfVfgVffwwwwxwwwwwwwwwwfvwwgwwwwwvwgvwwwgvwgvwwwhxwwxwwxvvwgwxxwwxvhxwwvxwwxxwwxwwwwwwxxwwwxwxxxwwwwxxvwwwxxxwxwxwxwgxxwwwwxxvwwwwxwxwwxwwxvxwwxxXvwggwxwfvwwxxvwwxhwgwwwwwxwxwxwxgvvwwxwwhxwxggwwxwhxwxwxwwwwwwxxwwxwxxwwwgwxxxxwwwggxwwxgwxwxxwwxwwwwxxwwwxvgwxxwwwwwxwwwxvwwvwxwxwxwgxwwwwfwxevwxwhvwwxfwwxwxwvwwxxgxwwwwxwxwvvvwwxvwhxwwgwwxxxhxwwwwwwxggvwwxwwgxwwxwgwwxwxvxwxxwxxvwwvhwxwwxwwwxxgwxxxwxwwwxxwgxxfwwwxwwwvwxgwwvwwvgwwwwwwxgxvggwfgwwxvxwxhwVgwvxwxvxwwhwwxxvgwxxwwxwxwxxwwwwxwgwwgxxvxvxxwxvgxwwwxwxXfWvwVfvfVffgfwwvwvwwgWgvvfwwwewggfvwwwVfwvevVfVvwwgffvwuwgfvwhfgvwwwvfvwwwwwwwfvvvfdwWUfffvevvvedwWUfFvgeffvwFvwvffwwwwWvweffvwfvgvwfvwwfufgfvgvwvwwwFvwvUfwfvvWfvevgvxwwfwwwxVvwuffwwwwGvgefvvwuwwvwvvxwffgwwwxwUvwxhvfwhfggwgfwwgvwwxwxwhwxhfwwwxgvwwvwwxwwwwwxxwwwwxxxwwxvxwwwxwwwwxxvwxwwxwxvxwwxwxwwgwwvvwggwxxwxxxwwwwwwwwxwxwgwxxwvwwXwwfhvwwwvvwxwxwwgwwhwxwwwwvfvwfwvwgxgwvwwhwgwxwxxxgwwwhwxxhvxxwxXgWggfVgfVvfWuvwfefvgvgVggwgvwguvwvfgwwwVfvvvvggwgwwxgeffvwwvwwhfggwwwwfvwgwwwwvfggefwfvvggwfwwduvGeeVgvVfvgvUgwfgvvwwwGWwVfgwgvwgwvgwwxdvvgeuVfgVfvgFgvVguvgggWwwVgxfgvwvgvxFgwfgvvwwwWfgVfvgvgwwgvvgvxwVguvgfgfvvwxwwgvfwggwfwgwvwwwxfVvhWeeVfTveVwvVVeVvvwffvgvgwvfwvwwggwwwWegeVfevfvgwwfFeWVwwfegggVUeVvvvgfvwwgvvwwWffVgVwvewvffvVWEffceTdVVEuffetgWUVffgggcVfFuvfVffffevvxWfwvUgfvwwgwwwVegfvgwvfwfefffwgwwwwvwwwWeffffwvgggdVVFefuugwwwvwvvwWeVffgwgffwxwwggvhfefffWVfwwwgxwwgffwfUVfVVegeuwfvffVgvgfexgvwwvvvfwwwgwwwEvfeefeVUwgwwfUfVtwwfuggffffVvvvUUwwwwvvwweffWfuwfuwVwwvfwwgTefFVU4fVVEgfVVwgefffvggFwgVEwvgfVwwgveVwwevwffgUffwgwVwgufwffvgVwgfgwwvffwwwwwwEffVUvwvgg6fVfEvfefVfffwfxwefffvgwfUvwxwwgvfhfuwwvVVvwgffwwwwwhvgffvwvgfwgwxgwwwxvwxxxwwggwVfwwwwxwfwhgwwhwwwxwhvvwxwwwwwwwwwxwxwxxwhwfvVvwgxwwvvwvwwwfgwwwxXvvwwxwwwggwxxwwxxxvwxwxxxwvwwwwxxxwgvxxwgwxwxwgwvvwxxwwwwwwvwxwxwwwwwvgwwwxwwwfffvfhvhffvwwhfvgwxwwxxwgwgwwxxvhvfefwwgwvgvvhxxhgwwxwxwwvwgwwwwxwwxxwwxwwwwvwwvgvwhvvvwwwvwffgwwgwwwxwwvuvwwwvwwwgvwwxwwwwwwxwvhwwhwvwwwgwwvwwwxhwwwwfgwxwwgwfwvwwwvvfwgvwwvwwwwxffvvwwwwwwwwwxwwxwwvwwwwxwwgxfvfgfVwvffgfxvfxvwwxwvwvwwwhwwgwvefvfvgwgwgwvXhwxvxgwwxffgfxwfwgwwgxwwwgvgwwwwvvfwvfwufWwfhfeguggwwgwfvfgxwwwEwvwwfwwvxfgvwwwgxxxwwgwfgwwggwwxwwfwvvwwxwvwxwggvwwwwgfwgxfxfeguwvwfwvggwgvgwwwxwwvwxgwgghvfwgwwvwhgvvwgwwwxwfwwwwwwgvwvggvgvwggwwvwxwwxwwwvwwggvgfwwfwwwwfwxwwxwwwwwvggvwxfwwgfgfeVwgfgVvfwfvxVvgffVVVfwfvfvuvfgwwgwwVfwvfVvwvwevwwwgfwfwfwfefwwwwfuwwwwxfwwvWfgwfvxwwwwhwwwfwwwfwfwwwgfewwvfvgvfwwwwwgwxgwwvwwvwwwwhwgewwwwfwwwvwwwxwwWgfffhgwgfvwwwvwfvwxxgxxwwwWhvffUwfwfvxvxwwxwgvgwUfwwwwwwxgwwwxgwhwwxvwvgUvFewvgvfevwfvhwxwvWewwwwVwwgvwfgvexwwgvwxwgwvwwwxwwxwxfwwwwwwxfvfvxxxfwwvwgfewewwwwwxxwwgfxwxwwxxwxhvhvfWxwwxwwxhgvwxwfwwwwhgwwwwxgxwxxgwwxgwvwwxwwwwwxwwwxwwwxxwxwxwgwwwwwxwwxxfwwfgxxwwgvvwxvhwfwwgfgefgwwwwvvwwwvxwxwggfwwgwxvwvwwwvxwxfgwwgxhwwxxxwwgvvwxwgvxxxvwwwvwwxwgffwwvgvwwhvwwxxxwwxxxwwxwvxfxwwwvwwwvvwggfuvwvvgvvwwwfwughwfxxvwwwwwxvvxwgwwgVgwwwwfwgwgwvvgxwwxvwuggggvwwwvwgvfefwfvfwfvwvvwfevvgeFeVefvfeVggwwwvhwvgefuhwwwffwwfvwgvfevwffVwwwwwwvwxwwwwvwwvvvvwvwvwwhvgwwwwwgvVfgvvvvwwvwwgwvvhwgwwwwxwwwghfVwwgvgwwwxwwhgvxffVgggggwgwfwggeggwgvhfwwwggvxwgfwwwvvfguvvwvWewgfwgvvfwwwgwggeggwWefwfwvxwfgVVfxxgvfffvwwwfVUfwfeEUEeffgfevvgwwvgwfwffVgwvVwvwvfxggvVfwwgvVugwwwwvfvwwwwwgwgvvxfhfUgvwwwwwwwewgwwfgwwwVVdffwfffvwvffggwvwwvgwfwfgwwwwxwfwfwggwwvwvvwwwwwxgwwwgxfwfwxwxwxxwwfgwfwxwxwxwwwxxxwxwwwwwwxhxwxhgwxwwxwwwwwwwwwxgwxxwwwxxwwwwwxhxxwwfwgvwwwxwwwwxwwwwwgwxwxxxxwwwwwwwwwxxwwwwxxwwxwwwwwwwwwxxwwwfgwfwvxvwxwwwvwwxwwwwwwwwxvwxvwvwwwxwhwxxhyxwwvxwxwwwwwwwfwxwvvwgewgfwgwvwgwwxwfwxvxvwwwxvwxxvxgwwwwwwwwwxxfwxxwgwvwxgwxwgwvwgwxxwwwgvwxwxxxwxwwwwhwwxxxvwvwWefguWwvgvvvwggvwwwwvvxhggwwwwwwWwwWfVwgfgvwwugwwgwxvwgfvwwwwwvwwwfvwgwxwwxvwhgwwwgVffGvffwgWgevvegwggfVwwxfwggvgwfgwwgevvwgwxwgvvxxxwwvwwwwwfwwghwwwxxwwgfgvwwvfhwwgggWgevvxxwxvwxhwwvVwwxggwwxwgxwgwvwwwVfgwwwxxwwwwwVffewewvfwvwgvvggwwgfvwwwwwgvwxgefwfuVvWuffwwvgvgwwgwhwwgvfgggvffwwwgfwxwwwvwvwwwwwgvgwwvegvegvgvuWfvgWvgwwwVvfxvwwvfgvgwwvwwgvwwwwfwwwwwwgwgwwxUgvhwwgvvwwwxfxwxgvvwfgfvwwwgvuWgvwwfxwwwxwxgVvvxvfvwvwgwfvwwvwgfwvwwwxwwxwwggffefeVgvWffVweguvwwwwgxwwxvgwwwwwxVwgvgggwgwfwgvvfwwwgvhxgwvfvwwwgggvffgvwwwxvgxwxxwwwWggfWWugwvffwfvffvvgggwwwwwUwvgwfwhwwfwgwwvwvgwwwwwwgwVwuwxwvfxfhwfwhwwwxxhwwwweguwwgvwhfwwwfvwfwwgwwwwfvwwvffVgwwxwwgwxfvfwwwxwvgfxwwvxwwgwwvveVgewuvufvwffevwgwwwwvwwwvvwwuwwfvfvwwggwwWwhwwvxggwffxwvwwwwgwwwvvgwgwvxwggxweffftvugwgfvfeggfvwwfwgwxxgWxvggxvfexxwwwwvgwwwwgwfwwwwwwwvgwxxxwwWfeggwvvxwggggfvfegwxwwggwwfgwVvhwwwwxwwxwwgwwvwggVwwwwxwwwuvugFVfVeGwffvUewWVuwwvuvgvwwfgwfwgvgvgvFgwfeVUvvwVuwwvtgvwfwfgfVvvWUuwwfwwvgvwwfffvfVeWgwWwfvwgVwwgfUU5ffeVefvUUdfWUwfVUwwgvgffvwfffuwwgUUtwWgvwVfVwwwgwwwewwwfgwgwfwwgVuwwwwwwwwwwwwWVVewfgUwwgfVfffUUtgvwwwfwvwWwffUwwgwfwfgwwgfffUxwwWUEwwxwwwwwwwxwxxxxwwwxwxxwxwxwwwwxxwxwwwxwxwxwwwwxwxxwwwwwwxhgvwwgfwwxwwxwvfwwwwwwwwwwwxxwwwwwwwwwxwwwgfwwxxwxxwwxxwVwwvVVUUuegwvgWfuwvffvWvggffwwwfwWugvvgwUVvwwvgUvfwffvgwvfwgvgwvwxwvwgvgvgwwgxevwfgvwwgvwwvwffVugfVeffwgwwwwgwgwwwwwgwwgefwwwgvfwwufvvwgvVevVfffvwwgwgffwgvvgvgfvwvwgvgwwgwwvwwwwwwwwwvgfVwvwgfwwwfvwfwwfwvfwgfwwgwxfwwxwvwffwfwwvxwxwwwgwwwwvvwwwwwwgwwxxwwwwwvxwvwgwwwwwxxxxxxwwwwwxwxwwwvwwwwwwwvvwggwgwgwwwwfwwgxwwxwwvxwwwgvwwwwxwxwwxfxhxwwxxwwwwwwfwwgxwwxwgwwwxwvxwwxxxxwwwwwwwwxwwxwwvwwhwvwwwwggwvwgwwgwwwgwwxwwgwvwfwvwvgwwwwxwxxwxwxhxwwwxwxwvwwvvwwwwwvxwwhxvgfwfwuvgwWgwfvgxwvwwvxgwgwwvgwxwwwwwwxwvwxwggxxwwxxwvwwvvwwwwwwxwwxxwgxgvvgwxwxxhxwxxwwwxvwxxvwwwgwwwwxwhwwwwxwwxxwwwxxwwhwwwhggvgwgwwvwvwvwwwwwvWwgfwwxhwwwwwwwgwVugvgvgvgwwgwwwgwfwvwwvgvhwwwxwwxwwwwgvwggwwxxvxvxvvgwfwffwvwwvgfvfwvggwfwffgwwwwwwwwxvwwgwwwwwggvfwhWwfwfugvvvwwxwwgwwwwfwwwgWwVwuehgwgwwwwwggwggvggvvwvWwwvgwgvgwwvwwvwwwwxxwxvwxVwvvfwwgvWvgewvgvwgwwwgxwgwwwfxwwwwwwgwgwwwwvgwwwfwvwgwwwwvwwxfwwfwxwwwwwvwvwwxxhvxwwxvffwgvggvvwwfgvfvwUwWvhvghuvgwwwwfvgwwgvwgwvgwgwvwgwvvwfwWvhfwegwwwwgwvvwwwwwvwfwgvgvfgvwwwwvxwwvwugfvvvwfgvwgwxWwwgxxwwvxwwwvxwwhwwwhwgwwxwvwvwfvwgwwwwwxgwxvxwxxgwwxwvwvwvwgwwwwxwxxwxxwhwvxxwxwwwggwwwwvwwgxxwwfvgvwuvgwWgffvhgwvwxgwxwxhwwxxwwwxxwwwvwwxgwvwgwvwwwwwwwwxwwwxwwhwwvwxvwgxgwwwgwwwwvvwxxwwwxgxvxwwgwvxxwxxwwwxwxxxwwwwvvgvwwgfwgfvgwxwwwxwwwwxxwwwvfgfvwgwxgvwgfwwwxwwgwwvxxwwvwwwwwwgxwwgwwxwwWUwfwwfwwwgvgvvwxuwgwVxwgwwwwwwvwwxvxgwwwwwwhwwwhwwwgxwxwxwxxwwWvwvxuxwgwwwwxxwwwgwwxwwgwfxwwvxwwxxwwwxxwwwxwxgVvgWVwfefwvvwgwwwwWfgveevwwwwwwwwwfufgvwwxwwwxxgwwwwwwgwgwfwwwwvwxwwwdgwfwwwVgffgvfvwwweefVgVUfffUgfvvgVuffWuwgvxwwwwwwxwwxxwwwgggvVvgffwwwuffugffvwwxwwxwwugUfgfWvvwvwwwwxwxwwwxwwwwxxwxwwwwwwwwxxwxxxgwwhVVgWevvgvwVfhfgvgwvwwwwxWfwfwwwwwwvxwfVhfwwvwvwwfwvvvwxgxwvxVgvvwvvvwgwvvxwwwfwwxwwwgwfvgfgvvvvwwwwwwxxwwxwxwgggevgvugwwwwxwwvwfwwwgwwvwgwxwwwwwwwwwwgwVggvvvvwwvwgxwwhxwwxwwwwxffwvgvuwwwvxwvwwwwwgwwwwwwxxwwgwfwvvwxvwwgvfgfgwvwvvxwgwwwwwwxwgwxvwwwwwvWghfgwwwxwhwwwwwwwwxwgwvvwvwvwxxwwxxxwwwhwgxgfgvWvvvxwwxwwhxwwwwfwwvwvvgwxwwwgwgwxwxwxgwwxhwwwwwxvvwvwxwghxxwxxwggvwwvwhwxwwxxxxwgwxxxxxwgwwwwvwxxwffwggwfwwgxvwgwvwxxwxvwxvxxvwvgfehggvwvgwggwgvwwwwwgwgwwwvgwwwwxxwwwxwwwwufwwffgggfewvwwwxgwvwwwwgwxgwfgxvVxvxwxwwxwxxwgxwxwvwwwgwwwxxxxwgwhxwwwfwfwvwwfxvgwxwwwwxxhxwxxwwvwwwwXvgvwfgwwwvwwwvwxvwwxwwugvvwfhwwwwwvvwvwgvgvhwwwwgwwwwwwgwwwxwgwwhwwxwgwxgvvffgwwvgwfvvfffvvvgwwWvvvgwwvxgffwxxwvfwwwwwwgwxggwggwwvxwwgvwvgwvxxfwgxwwwwxwwxwwfxgwwfwgfwgwwwwwxwwwwwwwwgxwhxxxwhfwxxwwxgxwxwwxwxwgwXVfgVewwxwgguguwgvxwgwwwxwguwwwgwwvwhvevfwvvwfvxgxwwvvxwwvwevwfvwfwwwwwxwwwwgwggwxwvfvevwfvwwwwgwwxfwwvwxwwvvgfuwfvwvwwwwwwwwvwggwxvwxwwwwwwxwwxvgWgvwwwvwwwwwwgwwWfwwwwwwgfwwvwwevgvxggwxvwgwgwxhwwwxwwwxwwwgvggwgWuWwgeggfffwfggvvefvgvgvgWwwvwwwwvfWwvwwwwwwfwvwwwwwwgvvghwvwwvwvxxvwxwwwvxfwwvggffgggvvvwgvwfgvweffuvvgvvegwgvVfgvvgvvwgxgvgwwwwvvwgwvwwgwffvuvvggwffvWwgwwvWvvwwwwgwwvwwwgwgvWvwggwvuWffewwwwwwwwwwxwvgwxxwwvwgwwuxwwwexwwxwvwwxwwwwgvwefuggfggvfwgfeVWfegfvgfwwgwgvwwwgvvghwggfvffwgwwvwwwwfVfueVvfgwgwggwvwwfwwwvwwwgefffvwfWwwvwgfGteUVwfvwVVuvvutfGgfvUhwWfwfgggggwggfwvwvwfevfgwwvwggwvfwfvfvghwggwvwwwxwggwgwvguffwfvewggwwwxwwwwwwwvwvggwwfvwvwvvwvwhggwwwwwxwwwwwwwwwwwwgfgxgfvwvgwhgggwvvwvwvwvwwgvfwwwwgwxxwvgvvfvgvxwwxwwffggwgwgwwggvxwgvwxwwwwvefgWvgvvwgxwwwwgUgUuugVwvfewvfWxwugwwwwvwwwfwxwwwwwwwgwggwgvwwwfgxwwvxwwxxwwwxwwxwwwwvfxWwgugvVgwuwwwwwwwwwwxxxwgvwwwwvwwwvwwgwvwxwhxwwwwwwwxwvvxvwwwwvwvwhxwwwwwxwwwwxxxwwhgwvwwwwxgvxwxwwwgxwwwwxwwwwxwxxwxwxwxxwgwwwwwgwwwwxwwwxgwwvwwxwxxwwxwwwwxwwwwwwwxwwvwwwwxwwwwwxxxwwwxxwwwgwwwwwwwxwwxwxwwwwwxwwwwwvxvwwwwwxxxwxwwwxwwwwggxvwghwxwwwwghwhwwxwwwwgwxxxwwgxgwvwwxhxwxwwwwxwxxwhwwxwxwwxwwwwxxwwwgwwwwwwgwwwxwwwxhvwwwwwwxwxwwwwwwwxwxxxwgwwwwwxwwhwwwwxxwwxxwwwgvgwwwxwwwwvwwwxwwwwwxwhxxxwwvwwwxxxxwwwwwfwhwevvgfwwwwgwwwvwwwwwxxwwxwwwwwwwwwvwgvwvgwxwvwgwwgxwgvwwwxwwxxwwwwgwwwwvxwwwwwwufwvfgwgwwvwwwwwgwwguwgwwxwvxvwgxwwwwwwwxwxxwxwvwwwwwxxwxvwwwwwxwxwgxvvvwgxwwxxfxwvwwfwxwwggwxwxgxxxxwwxwhvvffwwvwwwfvgwwwwxvgvvwgwxwwwwxwwgvwgvwfwwggxgvgwfwwwwgwfggwgvgwxgwwwwgggefgvgwWfgwwwxeefVgfVVwffwfvuvfegfgvUwewwwgvwgwgxvwgxwvvwgwwhggwxuvwefvfwgwhvwxwgwwwwxxxevfewggvgffwwwvwwfwvwwwwwwvWwwfwfwfwxVwwxwfgwwwwwxwgwwwxxwwvwwxfewwwwwwwfgwwwwgwgxwvxxhwwwwgfwwwwvwvvwwwwfggwxwwxwwwgwvwwwwwwxwwwvwxwxwwxwwwWfwgwwvwfvwgwwwgghvxvwwfwxwgwfxwwhwxwxvxwwvwxwwwwwwvxwwwxwxwxwwwwXvwwwWvwwwwwwvwvwgvwwxwywhvxwwwwxfxxxxwwwxwxxxxhvvwxffwwfwwgfggwwwvhvwvvxxgxwxwwwwxwwvwgvwwwwfwxgggwwwxgvwvfvwxwwwvvxvwwgwxggvxvvwgggvxwxweefVgfVewffgfwegfuvwfvvffwwwwwwfwvwwvwwwgfufVwwwfvgwhwuwefvvfwvwgwvwwwwwugfufvfvUwvwwwvwgVwhvwgvwwgwvxwvuwewwfxgwfwwwwwxwgwwwwwvvxgeugWfvvWvfvgfgugwggxvvwhwwwxxxhVgvfwVwgwgxggefewvwVwvvugvggfvwwwxxuvgfgwfvwwvgwwwFWfEefedVeVvvvFvfGvevugggvgfvvggugwvvwwgwVVwfvwvvwxvwgvwffwgxwgvxwwwwxwwwwwxwXvVWfevvgggvwvwwgwvgwvvgguggwfvgwvVwfhggwvVwvgwwgwxxwxwwgwxhvvvVVwgefwvvgfwgwehwxggwgwwwxxwwfuvfuVvwfgfwgwVwevwfVvvvWffwgwwfwwwxxgWwfeugfggvwxwwwudFEffUfUfVwvfeggefewuggfwgwwhgWwvwvfwggwgvvgfwggwgwwwgfxvfvwgwwfwwwwwxwxwwwxwwdgWtfewvggfwgfvgwgwfwvvggWvvgvfwvvugggvvvxwfwwwvxxwwxwwxwxggegvWvgwwfwxVfvgwwwwxwwwwxwfgwwwvvgUffvvwgvwwwwwxwwwxwwwxgwfvfwxwxwxxxxwxwwwwwwwwxfffwwxxwwwwxwwwxxwwxxhffvvwxwwxwxwwxxxwwwxxwxwwwwxxgfwwwxwwxwwwxwwgffgvxxwwwwxwxxwwxfggwvwwfwwvfvgwwxwwwvwwxwwwwwwwxxxwwwwgwwfwwwwwwgwxvwwwwxwwxwwwgwxwwvfwggvwwwgvwwwVvffgvWfwwfvwwvwwfwwgwwwfwwwwwwgwwwgwhxxgwwwwwwgwwxxgxwwwxwgwwxxxvwwwxvwwwgwfwwwgwvwwwwwwwwwxxxgwwwwxwgvwwwwwxxwwwwwxvwgfvvewwggvwvvvwvxwwwwgwwwwxwfwWvwvwfvvwwgwxhwwwwwwxvwwwwxvwwxwxwwwwwwwgwxwwwwwwwxhUvvwvfvwwvgfwfgwVvvvgvgwvfgfwggwgwfwwvwwwwwwxwwwwwwwwxxwwwwxwwwxwwwwggwwvwwwvgwwwwxgwvwwxwwwwwgvvxwxwgwxwwgxwxxwxwgwwwwxwxvfgevwgwwwggwvgwgwxwwwwwwxxwwgvVVwwvgfhvwwwwxwwvgwvxfhwwwvhwwwwwwwwwwwvwwwxwxwxffwfggwgwgwfwgvwvwxwwvvvvwwvwwwwwwgwwvwwxwwxxwwxwgwwxwwxwwwwwwwwxwwxvvwgfwwvvvwwwwwwwwwxwwggwwwwxwxwwxwwvxxwwwwwwwxxxxvwfgVgfgUfvVvwVgeguvwwwwwwwwwwwwwwvwvwvfvwgggwwwgwwgwvwwwwwwxvwhwwwhwggwwwwwxwxvgxwwwwwgvgvvgggffwwwgfvvwgvgwwwfgvvvfwggwvwgwwgwwwwgwwwwwwwgwxwwwwgwvgwvwwwwxxwwwgwwgwvwwgfwwgfwwvwwwgwwwwwwvvggwwwxwwwwwwwfwwhwwvwvwwvwwwwwwxwwxwwvegvufvWvwvvfwuwvwvwgwwwwwwwwwwgwggwwgvwwwgwvwhwggwwwvwwxgxwwwxwwggwwvvwwwwwwwxxvwwVvffwfgwgvwwgfgwwvwvgwwfvwwgvwwwwwwwwgwwwwfwwxxwwwwxwwwwwwwwxwwwwwxxwwxwvwwvuguwwfvgvwwwgwhwwgvwwgvgwgwwwvwwgwvgvvwwwwwvwwvwwwwvegwgUffVfvfgwgvgVfwwWfwggwwwwvwwwwwguffevvfvfwwWvhgffefxwwwwvhwfwvvxwwwwWffffvwvgwwwggwgDwgvfUefvgvffuvffwfgggfVvffVwxggvxwgffvhfvfvwwwvwvwwfwwwwfvfxwgxwwwwwwwwwhwVuvfwfgvgfgvgwgwffufwxgwffUxwwvfhfVgvgwfwwxwxwwxxwwxwwxwwxxxxvhwhwxxxxwxxxwxwxxwwxwwwwwxwwwwwgwxxwwvgwwwwgxxxxwwwwgvxwfwxxwgggwwxwwwvxxwwgwwvwwxvgxwxxwxwwwwxwxwxwwwwwwgffwwwwefvgghwxwwgwwxwvgwxwhwxfgvwwvwvxgxvwwwwwwwwwgwwxvwxwxwvgwwxxwvwgxxxwgguhfwwhvvwxwwvhggxxwvwwhwwxvhxwxwwwwxwwxwwxwvwwvwwwxwgxwwvwwwwwwhxgvxvvwxvwwgwwwxwxwwwgvwwwxvwxwwwxxvvwfeWgwwwfgvfXwhwvwxvwxwwwwgwVgxxwwwVuvffvvVhgwvfgwggwwgwvvWwhwvfvvvwvwwxvvxwwwhwvvwwwwwwwfgvvfwvwvvfwwxgwhwwhxwvfwwvuvwxvvwwwwwxggwfwwwwwvgwgwwwwgwwvvfwwgWvwwwvwgwxwwwwwxxwggwxvuvwxvfuwwgwwwwgwwxxwxwvwwwgwwxxwvvxwhvwwwwxwVVvfvgwgvvfWhfxgwvgwwwwvwxXxwwwgUwwvwexXvgwvwvwxwvvfggwWgvxwfwxwfwvgwgwwwwwxwwwwwwwgwgvvvufggvxwfwvgwwwwwwguggvvwwVwvxwgwwwwwgxwvwwxwwhgwgxwwwgwwwwwwwhvuvwwhwwgwwwxwwgggggwwfwvxwfvuwwgwvwvwxwvxvxxgwwwwgvwxxwvxwxvvxwWfwuwegvfwwwwvwwwwgvwwgUwwvvwwwWwwgfwvwwfvfwgvfgVgfwgfxwwvfwfwwgvwwgwvwvfwxgvgffvffVgffvvwvwvuwfeVffewggvwgvwfVfWwgwgVwwxwwfvwwwwwwwwggfgffwgwwwvwfVvgwxwwwxwwwvwfuwwwwwfwgwwxVfvfwgfwvwxggvwvwwvgwvwwwwvwXgwwVxxwwwwwwvwwwwwwwxwxwxgxwfxwwwxwwfvvwvwgegfvgvgwvxxwwxxgxhgwfwwwfvwvfwhvgwwgvxfwwwwwxxvwwwwvwwxxxwwwwWfvgfwvvgfwVvwwxvxwhvwfwxfwxxwwwfvwxxxvwwwwwwxwvwxxwwwwwxxwvwgwfwwwwwgwwfwwwewhvfwwwwwxxvxxwxwwwhxxwgwxwwwxxwxwxXewggfgwwvwwwvwgwwfwvwfwgwvxwvfwwwwwvwwwwwwgvwxwwwgwwwwwwwwwvwwvwhxxwhxwfgfgwvwfwvwwwghwffffVwvwwvwfgffgwvwwwvwwwwxwwwwwxwxxgvvgfvvwxwvhfvgwwvxwxwvhwwxwwwwfffwwwgwxwwfwwhwgwvwwwvwwhwfxwwwxwxwwwxwwxwwvxwwfwwgggvwfwwfgwgwfgvwxgvvhggxxvvwwwwxxwvxgwwgvvvvvwvwwwvggffwgwgwfwwwhvwwgVgfwvwfwwfwxxvUeUUfVwwvgvvvVeguwfwvxgWwwwwwwvwwxxwwwwfuwffwwwxwwwwfwwxwwwxxxwwwxwvvvwwwxxwXuWwwgwxwgwwwgvwwvwwwwwxwgwwvwvwggwwxwwwwxwwwwxwhxxxWvwwgvfgffvfvvwgwvwvwwgVfwgvwvwvfvwwfwwfwgwvffVeVefwfggffUfUvwgvgvgvwwvwgvwwwgwwfVffVvffvfvwwwwvgGdUeeUewvwfwvVVgVvgfgvgwvwxwxwfwwwwwwwwwggvgfefvwwwwvfgvwfvfwgvwgwwvgvfwwwxwvwDgUggfwwgegwggwwfgvffwfgwwvvvfvggvwwwvwwvwwwwwwwwwwwwwxwwwwwxhwwgwvfxwwwwxwwwxwxggfwxwxwwwwwwxwwwwwwwwxwxxxwxxwwwwwwwwwwwwwwwwwwwxwxxwxvwfvvwwwwgfwwwwwwwwwwwwwwwxwxwwwwwwwwwwwwwwwwwhggfwfefwvwwWffgvwfwvggfwwwwwfvwfwfwwwwvwgfvWgwfgvxwwwgxwwgvXvxffgvwwxwwwwfwwwgevwwgewvfvWduWffeweffgwvxwwXfgewefvfwfwwwwwwxeugwvfwwxwwxgvwwxgvgUwwwwgvgfwwwwfwvhwwwXfwVwwxfvvwefvxwvhvwxwhxwwxwxgvgwgXffxgvwxwwwwwwxxfvfvwvwewvfxwgwwwgwwwwwvwwghxwwwvwgfwfugwVvgwxwxwwfwfwwgwwgxwwwwwvgxgwwghwwxhgwvVvfwggwvwwvxxwwvwwxVvfgwvgwwwwvwwwxgwwxxxxwwwwwvgwwgwgvwwwwwxxwwwwfvggxvgwwvwvwwxwwwxxxxxwxwfggwgwwwwwxwwwwxgwwfVfVwwfgvvfgvVwwwwwgwfxvwgwwvwwfwffefEvgfVwvfwwwwwwwvwxgvhfWwwvgxwvfwwhwxwxvwgwwwgwwfgwgfwVufvgwvwhwwwwwwwxgvvvgwvwefwwwwxwwxwvwxwwwwxfwxvggvwgwwfvwwfwwwwvvwwwvwxwgVegvgwweffvwwwxwwwwwxgwwwwwwwwWfvgxwgwgfwwwwxwwwggefVvfvfTfevfgVvvvvxwwvhfgwwwwwwwwvgfgefggwvwwgwwwwwwxwvfgVwvvvfxwvwwwwwwwvwwwwwfgwegvvevfwwvwwgwvgwgwgeevfwvgegwfwvwxxfwvwwwwwwwgxwwfvvggwggwvwwwwwwvwwwwwwxwfevfwvwvvvwwvwgwxwwwwwxwwxwwwVfvgvwgwxwhwwwwwvwwgfvfgwgWfgewgwfwvwwxxwwwwwghhwwxwwvgvwVhwwgwwwwwwgvgwhwgwwgwvvwwhwwhwxxwwxxxvvwfuvfgwhgwwvwxwwwwwhgwghwvfwxvwvwxxvvwwxwxwwxxwwggwwwvwwfwwwgghwwwxwggwggwvVvwwwvwwvwxwwwwwxgfwxwwwgwwwxgxwwvvhgUugfwvgUvfvxvgvwvvxvwwfwwhxwwwggvVwfgwfwgvgwwwfgwhfvuwffwgvgwwvwvwwvvgvwwfwvwwwwWVwUFwVffvWffewgfwfwewwwvfvWvffugwwwxwwxwgwvwwwxwwwxwwwxwwvwwgxxwwgvwhwgewfwfwwwvgvgwxggwwffwgwfwfxxwfxwwxwwwfxghfVwxxxgwwwhwgwwxxxwwwwgwxwxxwwwwxwwwwwxwwxxxwwwxwwwxwwwwxxwwwxwwwwwwgwwwxfwvgwwwxwwgvwxwxwwwwwxwwwwxwxwwwwwwvwwxwxwvgwwxwxxxxxxwwxwhewffvvweVhwwwggfxwxxwwwxwWwgvwVfgwgvwvwwwwwwwfwxxxwwxgfwvwwwwhwvwxxxxxxxxwwwwvfwwwgwfvhgxxwwwwxwgffwwwwwwxgvwwxxwwwxwwwxxwwwwwwxwwwwwwxwwwgffvwgwwwwwwxwwwfvwxgwwwwvgwggwgwwggwwwwgwvwwwwwxwwwwwxxfvwvwwvwwwwwwwvwwwwwxxwvwxwwwwxwxxxfvwvggxwwgvwxwVfgVwgffwfwvwwwvwfxwwwwgvwfwwwwwxvwwwxwwfwwhwwwgwwwwxwwxgvxwwgvwwwwwxwvwwvvxwgwwwwvwwwwwfwwxwwxxgwxxwxxwgwwwxwgvwwwwwwwxwxxwgwgwWvvvuvwgwwwfwfwxgwwwvvwwwwwwwxxxgfwVwwWwfvgxwvwwvgwgwwvwwwhwhgwwxwwvwwwfwwwwwvgwwwwxwwwxgevfvgwvggwvfwfWvguwwwgvggxwwwwwfwvfwwgwwfgwwwgwxxwxxxwwwwwxwwwwwxwxwwwwgvwvwvwwgvgwwgwvgwwwwwwwwwwvwwgwfwggwwxxwwwwxwvwwvxwwwwwgwwwwevgewwfvwvgggwxgwwgwgfwwwwxwgwwxwwffuVfwVfWewhwwvxwwwwvvwwwxgwgwxwwxxwgvwwwwgwwxxxwwwwgwwgfwvwvgffvvgwgwfwvggwwfwvwwwwwgwvwwgwwvwwxwwwgvwwwvwwwwwwwxxwgwwgvwwxwwwwwgvwfwfwwvwvgvvvgwwfvgwwfwwwwwwwwwgvggwwwwwxwgxwwwwwvwwwgvwwwxwwwwgfggevvVwgegvgwwwwxwwwxwwwgwgwwgggwwxwgvwwvwvxwxfvwwwwxfxwwxvvwgwxwxwwxwxwgfgvwvwfwwvfwgvwvghgwwfwwwwwwxwvwwwwwgwwwxwwxxwxxwxwvhwwwwxwxwwxwxwwwxwggxwwgwfwwwwvwgwvwwwwwvwxwwwwgggwxwwxwxxwwwwxwwwwxxwxhwffvufwWwgggvfwgxwwgwwvxwwxxwxxwxwvggvgwvvgwwwxvwwvwwxwgwwwwwxwwwxxxgwwwwwwwwwwwwwxxxwwUvvfgwwwwgfvgfwwwwwvvvwvvwgwwwwxwwwwvwwvwwwwwwwwxxwwwwwwxxwxwxwwwwxxwxwughvvvfwwfvgggfwgvvvgwwwvwwwvvwwvgwxgxwwwwwgxwwwxwUgvxgVefvefffvfegwwwgfwxggwwwwwwxwwwwgVgffVfwgvgwwgfeVffxgxwwgwwwwwgxwwfvwWfffffgfwwvvgwwwwFdwvuwffffVuffuwgfgfvUwgfvwvgvwfwfvffxxxwfwggggwxwwwwwffwfwwxwgxxwxwxxwwwwwwhfgwwfvfgfVvffVefffgvwwwhgffUwgfwfhfVxwwwfxwwwxwwxwwwxvwwxxwxghxwxxxwxxxxxxxwxwxwwxxxwwwwwgvwwwfxwwwvvfwwwxgwvwgwgvxxxxwwwwwwwwwgwwvwwgxwwwwwwwgwwxwwxwwwwwwxwwxxwwwwxhevgwfwWvvvwwggvvwwwwwwxwwxwxxvwwWwvwwxfgwvwgwxwwwxxwwxggvwwwwwxwvwxwwwxwwxwgwwxwvwwWfvwwgfgggwvwxvwwwwxwwgffwwwwwhwggwgwxxwwwxxwwwwvwxwwwwvxhxxwwwwwwwwwwxwwxhffwgwwwhwvwwwwwwxxwwxxxwwwwwvvvwxwxwwwxwwwfVwggwwwewvwxwgvvwwxxxwwxwwwxxfwguwvwwggvvvwwxwwwxxwwwwgwvwwxwvwvxwwxwxwwwxwwxwgwwwevvwwfgfgwxwxwwwwwwwffvvwxxwfwwwwwwwxwvxxwxxgwwwvxwwwxxxgxxwwgwxwvwwxwwwwffvgwwwwgxvwwgxwwwxxwxwxxwwwgvvwwwwxwvwxWUdgvfgWgfwfgvVwfwwgfwwgwwxwgvwwgewfGvfwgfgwffuvwggwfxvgxggvVwvgvgwvffuwwvgwwwwhwxwwgvwwxgwvffefggVVefwvwxwvfvfwwxvxWVuvwfwgwxwfwvgwwxgvwxxwwwxwxwwwwwhvwwwwwwhwwwwwwgvvwwwwwfwWfffwvxwwwwwxwgwwvfwwwwwwxxwwwwwxfvgwvwxwwvxwgwxwwwwgxwwxwwwxwfxwxxwxwxwwwxxxwwwfwwgxwwfxwwxwxwxxwwxwwxxxxxxxwxxwxxwxwwxwxwxxwxwwwwwwxxwgwxxxxwwwwxxxxwxwxxwwgwxwwwfwwgVTuffewfGggwgvfvffuwwgxwgwfxwwwwwgvhvVgfwffwwefvgvhvwwxggwgvfvffxwwvvwevwwwvvwwxhwwxvwwwggfgVUvffefwfvwwgwwfwwwwgevwwvwwwgwfvwvwwgfwxwwwxwwwwwwwwwxhvgwwxwwxwwwwwwfvgfxwwwvvgUuwfwgwwwgvwvxwgfxwxwwxwwwwwxwwxwvgfwgwwwxwgwwxwxwxxwxwwwwxxxxwwxxvxwwwwxxvxxxwwfwwxwwwwxxvxvwxwwwxxxxxxxxxxxxwxwxxwxxwxxwwwxxxxwwxwvhxxwwwwxwwxwxwxxwhwwxwwwxwxwwwwwwxwxxxwwwxwxwxwwxwxwvvxwxwwxvxwwwxhiwxwwxvxwwwxwhgxwwwxxxxwwxwxxxwxxxwwwwwwwxxwxxxxxwgvxxwxxxxxxxwwwxvxxxwwwxxwxwwgxwxwxwwwwwwwgwxwwwwwxfxwwwwwwwxwwwwixvwwwgxwfwwxwxwxwvvxwwxwwxwxxxxwxxwxxxxwxwxwwxxvwwxwxwwxxwwwwhgxwxxwxxxwxwwwwxwxxxxgwwgwgfwwhfwvVdwgugUvVgffvggfwvfewfvgeffgVfvvVuwgvgewfhfVvgUwffffvfUwfwvgfVfegfFefV6efwwwwvwwwwwgfvwgvvwvffwwggfvwguvwwwffVggEffwwvgfuvwwVevfuvWfwfvfwwwfvvwWvvwfffvWfWVuvfuvgfffWvVfgffvfevwwwffwwVVgwwwggvvwwWfvgvWfvwggvUWgvffffEffVewvVgwVWwUfVfwEeVevwvfgwfggWvugvegvgVffvwfgggfugvveffgfVfgWftgwueVvWfffwffgfVveevuegvwVffvgFfVVff5fvwwwfwffwwwfvwwuvvggfvwwwffwvvvuwwwgfvwgWVvwwwgvvwwufvvvvVfgwwwwwwffwwvvvffuwVgffvUgVvwfvffevegfffvefvvvgVvgWfFvwvwfvvuwvufevvuVgwffwVfFvggffVWWVfuwfgVgWWWfegWGeUefvwgwvggguwffwvfWgfwgfgVffgfgUUwefGfUfVffvueEfvVVfegefgfgVeVVefefeWgffVfgfgFfVVfgV5vwwgeVvfgwfffvffgvvffwwwgvwvvfvvwwwffvwVfFwwwwvfvewgevuVfUVuufwfwwfgvwwfwfwfgVffffWVgvwvgfvffweffffVefwfvVfgwVfFwvwvwfwuvwefuvgeVvgwwwffWfgfffVvWeEwwVfggvveUfvgTVUUvwwvfwwwwwvwwwwvfvggwxvfwxwwwwwwvwgvwvwvwvwwvfwwfxxwwwwwwfwwwvwgwvgvwVwwwxwwwwwgvgwwwwwwwwwwwggwwgwwxwwwwxxwgvggvwwwwxwwxwwvgxwwwwwwfxwwwwwgwwwwwwvxwwwwwfwwfwfwwwxwgvgvvwgwwwgfwwwvwwgewxgwwwfwfxwwwVwfVfvfvgwVvuVTfgefUvVfvfvwwfggUUwVfgTfeVffvwffwgwwevffvffgefeefUUffwfffVvfveFefVvfVeswwwxufwfwwvfvwwwfvvffwvvgvwwwgfvgwgefvfffEgwgwwvgewwfVuwfefeeegffvfffwgvffgffefvgfuVgvfwgfffvwfVfgfVevwvwffwwffEwvwgwfeuwggVugfeUufvwwvgUvwfffvfVVTwwvgfggvUUvfeEeVUvwxgfwwxwwfwwvwwgfwwhvwwgfxwwwwgwwgwwvhwwgwwwfwgfwwhwwwxwwwxfwwggwvXuwwwgvhwxxxxwxwwwwggxwxwwwwwwwwwwxxwxwfwwwwfvgwwfwgfwwwvxxxxwwwwgfwxxwxwwxwwwwwwfwwvwwwwgwxggwwvwwwwwgvwwgfxwwwxxwxwwwwxwwvfvWvvwwwwfwgvwvgwewwgvwwvgwwwvwgwwwvguvwwwwxvwxwwwwvxvwgwgwvvvvwwggwwwvwgfvwwwgwuuvwwvvvvwxwwxfwxwwwwgvwwwwgwvwwgwwwwgvwwwfwffwxxgwuvwwvvwvgwxwwwwxwwwwxwxfwgvwgwwvvwwwwwwwhwwgvfxUgfVwgvgvwvvgwwfwvvgxvfwwwfgvwxwwvfVvdVwwwgwwgwufwgwugugwwwwwgwwgwgwgvwwvvwgvwwfwwvwwwvwwfwwwvwwvwvvwvewgwwwwvvffwwwwgxvvwwwvvwuexwwxxwwwxwxwwwwwwwwvvwwwwgwwwxUvgvhvgWfwffwwvvfwgvwwvvhvhvwwwwwwfwfwxwxwxwfwvwwwwgwwwxvvgwwfwxwgvggfwwwgvvwwvvuegvwwxwgVfgvwvwgfggTvwwgwwgwwewgwwewevgvwwwgwweffvwwvwvfggwvvxgfefwgwvvfvVVfvvvgwwwwwvgfvfwwvfVffefVwwwwgvvgfFeVVeeVeuwwwwwvfwvvffgwgvwwwfwfffvvwwvwwgwfeVfffffgwwwwvwfvfvwfegUVuwvVwfgfvvvfvwvVfUTEUVeUVffvvfvgfeeeUUefUegwgeffffffwwwwwwvvfvwfvfUUuvfvgfffffeeUUeEECwgfwgfgVeUeeVEETEugfwwffwwUuvffvwwffvfvwgfxfvwgvwfwfgffugffwgvgUwfgfvvgVwfvgwfffwfwfxwfvfgvfutvwVgxxwxwwvwwfgvwwgvfwwwgwwfffvwwwwfgVUefwwwwfwwgwfvwwgffgwwvwvwwwwwfvvwwwgvhffvvwvwfgwwgvgvwgffvVvvvwuWVfvvwvvwffwvgUfvgwvfvfxvhgefvwgfggwfVTgvgfgwvWgfWfvVfWugvfvwVWffVVwfetwvvggWWfVuvfVWwgfvgvvVgggeVvfVvwuvFWWgWfvfWWeuefVfVggggwfvwgfVfcfVVfgvwwfgwwwxfvVVvgvgefgvvgVfVVggvwvvWVgedefvwwgWwvugWggugduEgegfwwwgfvVWvgvwvvVWgffvffwggvvvWffgffUeVgfuuFGfUVegvfvWgwvvFVffufUuVwfgweeUgfeeffue5fefvvggwfVgvveUgvfeevwwvgfvvgfFwuWwvuVugUfwfgwVwvgwvvWvgffgVvugweuGugfvVguggvVwVegvugvgfvvVfefsfVevwvwgvvwwwggvvgwwvVvffwfgfvvgvwvvgwvfFfegwwwwugvwvuVgwwVfWffuewwwgwwefvwvggwvfWVvwvgwvvgwgwfWgggfvfgvfgweeWeewfvwwvWwgguFwvvfegvvvWwegggVfwwWeGufWgvgwgfhvfgeWuvgffggvUWVfUfUFcfVdfDfUVuUdgvUwfVdwWufTvUVveeeFdfFeeCfTFuUevTgVeVfEWUvUwUguUfVVuEUuRUUeggffeffwvgffvUwvvWTUVeeVUVeUfvffffVUVFcfVffffEffffDfvfVtUUwvUeVvfgffvUvvvffwfeVVdfeffvvUwfgfTffffeUfgVffVeUFdffffffTffffCefeVuEewfffGuvgfVUfffEWEefWewgweWVuVTWUvgUUfvvWVefWVffutwvuffVgfVvVGWggvuvfWffVvVfffuuwufGWGWuUfwWgfeevgWfvWgggfvfVuffvfcVfegvfgffvwwgwvWVwgwVefffggffVVwwwfvwUVgeTfffvvgWfwvffvfgvefggffgvwwgwvGUwgvwwwfWgVefvvwwgfwwwVggfwuVfgfgwwfgfeeffvwwVfwfgGVvefuVeVVfwgefwgveufwfGfefuufwffWfffFdvvffugwvgfwfgvfwUwwfvffgvffvwvWegwgwgfugfgfvggwfwffuWuWfffwWewfgfffvvgfgvvgWfvffffvtgvwwfwwwfvvwfvwwvfwwwfwfvwfvwvvwgfgeUvvVwwgfwvfffwvvfeugegfwgvwfwwVuwwwvwwVgegevvwggfwwgfffwwfffgfvwggwffefwwwwgfwwfVugwvffffffwfUfvfffeefVUffFvfwwwXffwfgUfvevfvgwwwwwwvwwgxwwfwgwxxwvgxxwwwwwxgwvvfwxxwwwxwwwwxxwgvwwxxwvgfxwxxxxwwwxvvwwwwwwwwwxgwxvwwxxwvvxxwwwwxwwwgvxxxxwxwxxxwwvwhwwwwhewwwxgwwgfxxvvfwxwwwwhwwxwwwxxxxwwvxxvWvvfgwwwwffgwwggvwWffVvfwffwfwgwwgfwGeVvwffgwwwfvwWffvwvwfwvwfwfhvvgVfgffgVeVvfVUuxhveewvvwggffvwvwUUvffvwfffffxvfwvfffffwwgvvwwwwgfguwwGUVVwffwwvvfwgVgeUfweewfwffVUefffffvgffffffhffwgvvfffwwgfwwwwwgvfuwwWTugvwfvwfvgVfEfwgffwwffVfffUEffVUUUTfwwfwggfwgwgwwwgwgfvgfvwwfwwwgvgwvwwgvgUvgwwfgvvwvwwgfvfwwwgvwwwwvwfwvevgwuwwfVwfwxwfwxvhvfwxwwgfgwgfwxffwxvwfgwxfwgwwwfgwwfwwgffwgwvwwWwxhwxxwfwfgvggwwhwwuvwwwwWgwwwwwWfwwwwgvhwwfffwfvwwvwwvwwwguwgvxwwwgfgWuxwwgffffVvxgvgfggexwgvvvfVggefgwwvvwffWgWWgGufeffvwwwwffwgfggGvvwfvguugwgfgWfgfhfwfugfgvgggwfgWwtwgevfgwvwwvwxwwgWgvvvgvwghffWggwwvwfgvgvvhwwfvfgvvwgvVWgevfWuVgwwhwwWghvvwfgvwwwxwwwvfgvvwgfggfvwgfgwWvugffgwvwvUWwefgvffvfggvgwgffgwwvvvuvFgfwvwvvvvVhwvvwvvEgvvfuwvgfWggfWvWwvVweugtWUffwvgwfvvgwuvgufVfwfveVvtvguVVvUwuggwfwffgwvWugfevgffUvfffgwwwvwfhvfwvWgvfgwvvfgefgvWgfwwwggvVwvvwwvguWgfwwwtVVfgvvgvgfwvggvggwwgwvhvfgvfxuwvWgvwgwufgvfwWwgfvgvgvugwwuguGfvgvveWfvUwgwgvWgvwwwffwffXvwvgfWgffXuwwwfWeWffvfwgwvfwvfVgwfugWevfgEguVevgVgwfvwWfwfwVgVvgWvfGuwewUWVvwfwgvWvfgvwfweWvVvVgcffffvwvwwvgfvwwfwwvgwggvgVvfvVgvvwwwwwffuvgwuwfUgvvgwwEgufuvfgwvgvhgvgvVgwfggggfgfgwwwefwvWwwVwvfvgwggffwwWvvgwvwvTfgvvfwUgVvwwgwvgvwwwvwWfVhfgvgfgWfUgewwwvgVhVffvggfVfffVggwgvvfvvgwWWVggfWgwwwwwvvwfffvFgwwvvwuuWgffvEgvfWfvgvgffgWggvfewgwwtfvggwgwvwxgxwgxhfwugvwwggxvggggfugvwfvwefVwgvwWffufvfwWWfvvfggwxwwxwgxWfwvgwfwwvwgxwvwgggvgfwgfvfvgwggwvwvvfxwfvgWWvwvUggfvfewfgWfvvewgvggffGvvvvwwvvfGuvvvgveXvvvvwvwwggvvffvwwggwvvwffWfvwwfvwwwffwvwgvWuvwwvfffwgwwfuvwgvwwwfxwwgwwgvwvwvwwwugwwwwxvwfwgvwwwwwfwwgfvwgvwgxvgwxuwwvwggwwggvVvvwwvfwgwwwgfwwwwhxfwguwwvgvgwwhwwwwgwwhfvwwxgvfuwwvfvvxwwvwwgefwwggfwfffgwwfgUvvvvwfwfgfvvfwwugfvwfwWwxwxxxwwxwgvwwwgwwxwxwwwxwgxwgwwwwfxwxxwwwxwwwwxwwwwwwwwwwxxxxxwwwwxwxfwxgwwxwxxxxwxwxxwwwxwxvwxxfwwwxxwxhwwxxxwwwwxxwxxVffgVeufvWgVwvggEfVWfvfvuwfVvgwwwgVWeGevfVffgfvwVWTWvfgvvfVuffffvweffgffwvgueffeVTugfwfuwfvxwgfgvfwvVvwewwvfvfvfwfffwvfUfuWfgvgwgxgVgvvfvvffwffwffgvgVfuWgVUvgvfvFwvgvgefvVgfVfwvfffefgfwggwfVgvfffwwggwgVgvuffefvggggfvvfVtEVfVfeffVuVgfffgfwfVfUTefevfwuefvufvvfwwveWvXvfgfgwffvggwwwegeWeffvvffwgvvWUGffvwvwVvfvegfwugehwfvgwevvveuUfxfvwXewgwgxgfgfwgghuwgvgwvvvfggffwwffgffgwvwvwwwwgfguvvuvgwwhfwgvvwwgfeggwfggwVgVwuvuvevfggwfgVfgvfVvggwwfffVvwvvwfvggggeWvuffevfwwwggvfwVutfggffgwVvefWfgVwwggggvfeeVvvvVeffegefvfvGgEwfVgfevgevfvvgvGgEgeVgfffvwfvWwFWeUwugwwvfufVvvgwfhvfwwwffwffwfVvxvwVwwfgvvvVfVwvwVvfeggvvVfUfvgwwgfwUfvggffgwwwwgguVvffwvfvfwgewwwvffegfgfwfgvFvvhvffgvgwvggfgfffevvwvvggvFevVfgfgvgwwfWugwvUeufffgvgvwvvUgggVvVgWvVgvggfgwwWvgfefegwwwwxhwxvxwwwvwggvxxwxwwxwwwwgvhfhgxwwvvwgvgwwwwwwwwwwwwwwuwwwxwwwwvwxwwgvvwxwxwwwwwxxxfwxxxhggwwfxwxxxwvwxwwwwwxwxxvwwwwxwwwwwwwwxwwxxwxwwwwgwwxvwgwwwwxwwxwwvgwxwwwwwvwwwxxwwxwwwwxwFUfVFUfVfgVVvfgwUvdfgeUffVVfeVffffefCefUVfUVfVffefCUfTewevgfffffewewVvwVfgvefgffetgvgwFgfWwwfgWVfwwgFfeVvvvfWVffgfvwfufUVffVWwvvvgwvUvgffgevgwVwVUfgfffVfgfVuwVefeVfugVffffgggevfvfVevgwufWffUVgvffvgevwwgEvveffTugffwVfwwvWdwfVvfefvgewfevguwvfVefUeFvwwvvwwwwhwwwwwwvvwfwwfgvwwxwwfwfwWvgvwwvxvggfgvgxxgvwwxfgwwgfhWvwwvwggwWwxwxxxxxgwhwvwhwwgwwwwgxwwxwwfwxwwwvwwxwxvvwwwhwwgwhgwxgwxwgwwwwvwxxwwwwwgfwgvwwwuvwvwwWwwhgxwvgwxgvwvwhgvwvwxfwxwwvwfwxvwxvwfwwfwvwgugwvugwgvgvwvvgvvwvvgugwgwvwvvvuwvfxgwvgwggvvwwgwwwwgfwgwvwwWwwwvwfvwvvwwwxxwwwxwxwwgwvwvxgvxwwxxwxvwwxwxxxwxfvvwvgggwvwvhwgwxwwxxhwwwwwwxxwwvwwvvvwwhwwvwwhwhwwxwwvwwwvwvwxwvwwgwwWgwgvgvwgfwwxxgwwwwWvgwvfxhwfxwxxwvxvvvwfvfwvgwwwwvwgvgewhwwxwwwwfxvgwxwvwwwwgwwwgxwwWwwwwwwxwwxwwwwwxxwwwxxxwwwxwxwwwxxxxxxxwwwwwwgxxgwwgxgwxwxvwvwxxxwxwwgvvwxxwvgvwwhxxgwvwwwgwwxvwwxwgwxwwgwgxwxwwwgwxvwxgwxwvgvvwwwwwggffwvwgfVfvfvgggwWfefuffvvgvgwwgwvvgfffewvefVgfvwWVVvwGeVfggWUvwwwwwgevvvgfgfgwgvwfvwwgfgfvwgggfVfgwfffggwwhfguwgwgvwwVUuwgfvgwgvvvfwgVVUvETVeeUVVVfgWfVeffUVevgVUfgfvVegvfffgfwwgvVuvgwgvwgfUuffgvUVEgfUVVfffT4wveVVfvVETvwfTTVUugwfgvfwfgvfgfwUwfwfgvgfwvhvwgfwfwfwVfvuWewffvwwffffwfgvgvWvgffwfvftgwfwVfwgfwevwwvwgwgvvwwwwvwwfgwfgfvwwwwvgvuVfvguvwwgvUfffffwgwvvwwggfwxgwgfwxwvwwvffghwwgvgvfvffvxwvwgwwgegvUUwfvwgwfwfgfwffwwwwgwvwvwfvVffEewfwvfwggvgvvfeWfvgfggwWugeffeGWWfVWffeuvtuGWWgWVufgWWvvfuffeWgfhgVvffetwevgffWgfegvweeuvfVggVfggcvVgWfvvfWfVvvfffgfvtUwwvwwfwWefffeeffvvvwwgVVvgfwwfffGWVfVUvvwgfuvgvVVfvffvuewwvwwgwggVugWwwvffWfggVVvvwwgfwwwggVVFfVWgwefffffWgfuvvfgvfvggggueeffFWgwwgffwgfeuvfDffVgfefvgvvfwfvuWeeeVVFfTFfecFdVTuUfvuWfWfdWgudVuWeuVUFfcVfedFeFUuEfefVfEwUUGefVuWUrUuWEuUVueUUvvffUgUfWgefffvwvfEUUVVfUVUVefvfedFeUefffffcEdVEuUfffeffffgvVfffWwuffgvwvvfeFfUvfgfefdVuWVeefvfffggfgfed6VUfffVffdFeFUuTfffvffffWvVVEwUUGdffffffwfeVgEUWUVgUUugwwfwUfwfeggvfgvVuvWvwEwVgvfuwwfgwWvwgvwVwfgfffGuwWvwUveWVvvewfvWvegewVvfgvcvegfffWfewwvWfugvVfwwwwgvwgevfvgvfvfwfvwWVUfegvwfvgwEvVgfvwwvvwgwfwfvvwvgvgwvwwvwgfeuvgvwwvwfVwfgvfvwvggvgwgwfgTfvfvwvgwwUvegUvwwwggvwWgffVWuEgUvwvwwfgwvgWfVgUfhfffwgwvwvgfgfWWffVWfWvfwuvGWWgffgwWVvgvfvVvWgggVffgutweuggggvUfeVfguuvefVuwfggffcggVfwfvVVfvwwvfvgweufvwvwfwVffggueVfgvvfwTUeFgVgWfggFVWgvUefwvefwvfWvfgwggeufvwwfweffWggggfvvVfgffUewffgwvvWfeVFWfgwWffwgWgWveTwwvewwuvGefeeeU6efwgefWfWfevvVWefWffeuggwfvvfwvwWevwffgwfuwVwWeffffvwgfgwvugfwgfggfgvwUvgfggvgvfffggfwfwUffvfevffgftgvffvvgwgvwwwhgfwfvUwvwvwwwgvwwvvfgvgvwgwffffvwwwufvgVugvffvwwwvfwwfffwwvvfgwgxwwvfewevwwegvgfvfvffvwhwfgwwwffgUufvwfgWgfvgvVfuwhgwfgwvWffffUfUefweVffgffdgfgUfhfegfwwwgVwfvhxwwwwwwgwfvwgxwxwgwwxxwfwxxwgwgwgvwwxxxwwwxxwwwwxwwvgfvgwxwxxwxxxwgwvwwvvwwwwwwwwwgegxwwwwwxvfvwfggxxwxxxwxxxwwxxwwxxwwgwxwwvwxgwwxxggwxwwwxwxwxxwgwwxxwxxwwwgwwhxxgwwwggwfvwwvggwwVxwvvwwwffvgwfgwgfgvvgevwwgwvwfhwvfVUgwfFuVWwgewwgvfgfhvvgvvWvwghwwwggwwwvwwwggwwwwvwwwwwwgfgwvwvvwwwgggfhwfvgxvwxvwwggwwvwwwwwvwwXUffeveffffffVeWvfgfffwWvufwgggWvwvggwwvggfhvvwfwvgwvfgWfeEtFVffufggVVfvwVuEWgfWwfeVWguwefvwwwvvvvVvvwgvvwvhvvgvwwwfvfwgvvgwfhvvvgvwwgegwvXwvgfdWvgVueWWwfhwwvvvegvvvfvvVvxxxvvwwwggwwwwwvwgwwwwwwwwwwugvvvwvvwggvgfhvvgwgwvvvvggvwwgwwwwvvwwwVVfeufeffffffUguufffvgvevvgwgggvvwvvwwwwhfhwvggwwfvgwwevEudVVffeggfVFvvWveWWfWggeVWGvugfegwwvggwvgvfwwggwWhfwwfgwwgffwvfvwWhffwwfgwvgvwghfvwfVgefwuUWvgfgewwfxVgvfxgfwvghhvfvwvgwwgwvgwxwwwxvwwwwwhwwgwvvxwwfwghuggvwwwwgwvgghwwvwwxwwwwwXeVVwffeggwfffWeVgffvvwwfgvggwfgwwgvwwwvwfhvggvwvwgwvwWffvEffffewggVvVgfuEfugWuVVeWeVwvfevgwfgwufwgfggvwwwxgwvvgxxggvwggxuVwhgffuvwfvvfefxhvfvxxvgdvfvwwvgfwwwvvwgwwwfwwwvwxWfvgfwwvwvwwFvwwffvgvwWvvffWfguwwwfvwwvwwvxwvwgwwwwwwwgxvvwvvwwxgvwfvwufgvvwwgvwuvwwuwgwxfwwwfxwUfgwhgwwwgfgwwwfwgwwevfwwfwxxvggwwgggwgvvwvhfvwfgwgfwgwgffwvXfvwefwfwffwwXfwvegwwfvUefwWewgevevvgwfvVvfwfvwwhhwwvwwxwwwwwxgwvwwwwwwxwxhgwfwwvgwwwvgfvwvvgwxxwvvvwghxgfwwvwvvggwWefUwffVwvvffvVuvfffvwggvevwfwvfxwwwxwwvwVvwvvvwwxwvvvwVfVgTfgUffwvgfffvfWTgVUgWUfVvWfwgeVvwggxfghwvugwvgWxffgwgxxwwwgwhgfhvvuvgvvghxggwwvfvgfegxwgFgvwvgvhvgvwgvwxvwwwvvwxwwxxVgvwvggwgwwwefvfwvvwwwgWwWgvhvgwwvwwwwgwwwvvwxwgwxxfwwwxwwwwggwggwgvxxwgxGfwfgvvgwgWWwffvgvggwxwwfexvvVgevfvwwwgwvxwgwvwfxgVfwwvwvwvugxvvhhgvvVwvuggfvvvvvhwwwvvwvvhhwggxfwvuXwfvwvgwvffWghwfgGvvffvvwvvhwvwwxwvwWvxxxwxvgwgvwwgwxwweWwvwwwguggfvvvvgxwvwvggvggwwwwxwxvfwwwwxxvwgvwwwhvWwfwwwxwugwgvgwxwvgvvfgWWfwvgwfggwwvgwWwfggfghwwwwxhgxgggxhvvUfgfxWwgfWgwhwwwfwvgxhwgvvvvVeffwgwgwvvvffwwfwwhWvffgFwvgvgfwgxgwgwxgfwvwwxwwggwwvxvwwxgwwxgwXfvwwuwxWwgwfwgwgxxwgwwwvwwxgxhwxwwgwvxxgxfwvwwvwWwhwvwvuhwXwhffvvwgwvwwvfgvffgggvvfgwwVWvwwfwghgggvwwWwwffvvgVfvvegvfwUtvVwgfffgfwwefwgwVufewwWffffvvwgfUwgggvfgVwVvgwffwgwgeheuweWvfwfvWefwvggwgfVvggwwggWwwggfvvvwvfgfffuffwwwvggUwfgfewgfvuvggfvWgwwvffgvvgwvfvevWvvwvUgfwfffvufegVvggwfgffffgwwvgggfwwWwvvwVvvwwwvwwUtgfffvwwggvwgfgvVufgwVfweeVgffvwwfVgwvUVvfeffvFuuvWfgevvefgfevfwWuvfWwwtfeugWvgvueFgvufffffVveggffwvwfgfefuffueffvTUgvgwfgvgfUfwffvgWgewvgfgVvfwwwgfffefwwvwvfffWwwfeffgvufvgwfwfxuwvffwfgwgfVgduffuwwvffVffffVwevvggWffgffUvwvfhweefWwgvvfgfvvfwhwfgVvdgfeVfgWVFfvvffVveVffgffeffWVUdvWVfffEVefeVUefcEVfVfVEfEVefeVVefcEVffffUffgeewtfVgefgVvugffvfufVffgxfgefvVwfVgvewWFvfwwVvweVfVefffgfvFffVVVVfwvvfvfVUUvffvgggfVfTffEfevwVgvwwwgFvvfVVVwvvwgwwWeUVVfwvvWfVffffVefevgffvvwwfVUfWfwvffVWgeggVvvewfvvwvvwfuFefVfgfwgfWgwwfgvVVefVvwVdWfgfUwgvgvvgwwwwfwwwfgvgvvfvxwwggwwwvgvxfwguwgxwwwvwwgwvfxhwwwgvxfgugvfwvgwwgwwgwuwxwxwwfgwwxgxwgxwvwgwxwwgwwwvwgwwwwxwWgvvgvxwwwxwwwwhwxxhwvwxwvwwxgvwwgvgxwwwvwwwwwwggwwgwvwxwwwhvfvxfwwwgwxwwgwfwwgwfwfwwggwffuWVfeVfffgwGUwegvfwUUvfgwffgwGevTfwfvefgVfwGvvTfvfvevwevgfgwfguwgffwfvfgwfvwfgfuvxwgvwvgfeegwwgfvWvgffVeegggWgfgFfuvgvwfegwVevwVUevvwvfwwfgVwwfVffggwVgwgFvfvggvfwvffvgVffvffvfgwgwgWeffwwwvvgvVvvgwffvvgevwwggfgUgvfgUfvwvffwwvugewgewfffVwgffVwwhgwwxfxxwvgwghwwgfgwwwwwwwwwwxwggxxvwvwwxwhgwwwwwxxwwWwwwwwwwwwwwxwwgwxwwxwxvwwxxwwwwwxwxwwwwxxxwwggwwwwvwwxwwwhxvgwwwxwwwgwwwwwwwwwwwwxwvxxxxxxhvvxxvhxwxgwwwwwwgwwwwgwwwwwwwwxwwwxwggwfwxgwwwfwwxwvffwhxwwwgvVgwwgwgwfwvgvvwwwvwgwwwWwgwwwwwwwwwxwxgxhvwvxxwvwxwwwwwgwwwvwhwwwvxxxgxwwwwwxwxwwgwxvwwwwxxwxfwxxxwxxxxxwwwxxwxxxxvwhwwwxwwwwwwwxhwgwgwwxxWvwgWgwgfxhwwfvgwxgwfWvwgwhwgWwvvgxwvwvwfffwvwgwwvgwwwgwwxwfwvwWgwgvgwwwgxwvwvwgwwvgggwwvxggwwwxwghwhvxxgwwwxvwgwvwvwxwvxgxwggwwwxwwwxgxxwxwwxwwwwhwwwwwwvgwxwwxxwgwxwxwxvfxxxwxwgwwwgwwxwfwwvwWwfwwgxvwwwwxxwfwgfwWgwxVvwwVvgVvvgvwhvvgwgvVvwWVfwwwgfvwgvgwVgvwhfwvgvwvWvvfwVvgwvxwwwvwxwwxgwgvwxwxevwfwwwwwvwwvwwffvwgvgfwvwfwvwgwhwwgvwgwwgwgvwwwwwxfwwuvwvwgwWUfUwUVefwfhgfVeefwffvgffVgfvvwfwfgvwvwxwwgvwwwvgvwvvwwwxwgUUgffwvgwvgffwfwfgfUffgwfgwwfvxxwwwwwwxfhffxxwwxwwwwwwwwhfxffwvxwxvxxwwwwwwwwwwwwwwxwwwwvwxwwwwxgxwgxwwwwwwwvwxwwwvwxwxwwxvwwwwvxxxwwwwwxwwxwwwwvwwwxwwwwwgwwxwfwwwwwwvxxwwxxwwwxwwxxwwxwgxwgwwwwxwgwwxgxwvwwwvwwwxxgvgwgwxwwgwwgghvxwwxwvwxwwwgvggwwhwwvwgxwwxgwvwwxxghwxvwwwhxwwvvwxwvwwxvhWgwvwxwwwwwwwxvwwxwwxvwhxxgwxwwgwwwwwgwwxwwwwgwwxwvggvhXgwwgxxwwxvwxwgvwwwwvwwxvwwwxwwwgwxgfhwwwxwhwwgwvwgwwwwwgwvhgxuwwwggwwgggwvugugxvxwwfwfwvvguWwfhwvwgfwvvwwvwvgfvvxVwfWvwvwgxgewvvwvvwggwwvevwwwwwwgwwgwgxwxgvwxwwvgwwxxwwwwxwwwwwgwwgwwwvvwfwxwvxwwxvwwwwwwgwgwgwwwwwfwxgvxvgwgfwgvgwvfwvwxgwuwwwvwwwgwggwffgvfxfgvgxvvwgggwgwwwvggWuwfwfwhvvwgwwwwgwWvvewfxvwwwwwhvfxfwuwwfwggwwwvwxfwVwvgvWfvfwwvvwxwwxwvhwwwwXgggwwxwwwwwgwfwvwwwwxxwfwfwwfvvxgwvwWvgvhwvwvvwwwgwgwvwwgwwwwwwwwgvvxwwwvwvgvwxwvwxwwxfwwwwwwuwxggugvwwvwwwwwxwwwgwggffgfvxvggwhvhgwwwwxwwxwwvvwghwwwwgwwwxxvwgwgxxwxwvwxwhwwwvwgwwvwxgwwfwvwwwgxgwwhwwwwwwwwgxwvwwgwwwwwgwwxwvhghhxWgwwxhwwwwwwvwgwwxwvgxhxwxwwggwwwwwxwwwwgwgwgwwxwgxxWgwxgwwvvwvvwwwwwvvxwvwwxwwwxwwhfwxgwwgwwwfwwgvxwwWWhwWwxgwwgwwfwWwgwwwgwwwxwwVwVxWwwwwvwwwvxwwgwwvxwwwwxhgxwwwwxwwhhwfwwwwwwwwwwvwvwgxwgxvgvwxxxxwxggwwwwwxwwxxxgvwwfwwwwwwwxvwwwgxgwwwvxwgxwghxwwwwxwwfwwwxwwwwwwwxwwwfgwxwwwwxgUxwvwwwUvwwufuffgUwWewfvwwvfvwfvfwwwVuwweWuffvexxxwvggvwfGwgffwwfwvwwgwgwwvwwwwvwVwgwwwwvvgvwwwwwwwxVwwuwwwwwwgfffUwfgxxvwgguwWxwwwxxfwxwwxwgvffxwwvgxwwUwwvwwwwwwgfvfUxffwxgwvgxwfwxxgvwwwffwwwwwxxgwwgwwwwwwgwwgfvwgffgwwwwwwwvwgfvvWffuwwwgwwgfvwgffxwwwwwffvwwwgVvgvwgvgVvgVUuwgfvwwwxwwWffffwwggwffgWUefgffvwwwvwwwewfwwgvvwwgffffvwwVEuwwwwffhevwgwwgffffffffwfWfVUefffevwwgffffvwwwgwwwewfgfffwwwvwgffvwwWUtwwwwffVwwefVffVUUffvwwfffUTvwwffUEvwgwggwwvgwffvvwvwfVxvwwwgwwwgwffwvvwvvgwfffewvwwwwvWxgwwwgVvwwwgefwxxwwvwwwwwwvvwwwwvwwvwwwgffhwwvwfexxwwgwwxwwwhxwfxhwwwwwwwxvwxwwvwwwwwwwhwhwgfwhvwwvgfvVfxwwvxwwwgwwfwvwwgfehwgffhVfhvxwwwwwwgwwwgvgvxgwVggfefwwuvwuuggfffWtwwfgvwwfwvvwwggwWuwwvvgfvggVWgffVgwwfvvGwwWgfggevfggfvgfgfwwwwwufxxxwvgvwwgvvggwwfuvwgwVWwvvfvVfgwvggvwwwvgwvWgvwvvwwxxvvvwwwfgvwwvfffwwvwvwvwwxwwgwgeffvvuuffxvvgufwvwvvwwgwvggwuvfvvEwvfwUwfVhfvxwfwwwwvufwwwvwvvwwwvfggfffWwvFgeufeWevewwufgwvWwvvgvWffwfwfVwuvVuGfvUwuggwfwf6gvvgvgVvfugfvvfveefgwwwwfwvvwwwgvwwwvfwfuffgvfvwwwgtVWwVweegfwwgfwvwgwwgwwwwhwvWwvvvwwwwwwwwufgwfgefgwwgvwgwwwhwwgwgvgeWgwUwdfWvgvfvwwwwwwgwwfwgwggffVfWVgffhffWUfvwwwwwwwvwwwwfwvwwwwevvfffwgvgWtvVvUgufuwwfvhgvwguwfwegfvfWvfVuwevTVufvwfwgvWvf7fwewfgufvfgvfgvVfevwvwwgWvgwwwfwwwwgggvVfgfwfgvwwwvEwguVuVgfwwgvvgvgwvgwwwwgwgwgvgvgwwwwwwwwVvgvWffgvwfwvgwwwgxwgwgwvvUwWvGefgefwggvwwwwwgwwwvgxwWfffVgVgffhfUgfVfwwwwwwwwvwwwwvgwwgwgfVffgwwvvvuugffgeffwWgwwgvwvvwwggwUwwwuvgfvgfWWvTwgggvgvuvwGwggggfvWfvfvvfefggwwwwvggwwwwwwvwvvVfwvvwgwwVWWvvfffhfgvvevvvwvwwwwvvwggwwevgwvwvggfwwwffgfwwvwwwwwwvwgwgfgwvvuegVvwvwvvwwvwvfwWfwffvfXfvuvWugGugvvxwwwwvwwvfwgwvwevwwwfvvvwgvggwvfgvwwwfevwggffwwwwwwwwwffwfvvwwwgvwfvVfvwvvwwvvwwWwgvwwfvvgwwwgfvwwwxwwfwwwxxwwwwwwwvwgvwvggvwfgvwwwwgfgwhwwwwvhwwgwwwguwwfwwgxxwwwgvwwwfwxwwxhvgwwghhwwwwwvwwwwgfwffwxvgwwwhwwwwwvWvgfwwgVfvfhfvgefwwwwwwvfwwVwwwwwwexwwwwwgwwwwwxxwxwwxgwwwwxxxwwwwxwwwxwwwxxxxwwwxwwwxwwwhwwxwxgwxwwxxxxxxxxwwwfVffWEeefffefffVfU4VeefVwffwVvvvfggfEWvufwVuevvVVfEgvuvwfvVvgvfVeggfTguugfgevfvfFUfxfwhvwghvwewgfvgwgefwWwwdfgeevwgvgVggUdegwvwgfgfwVfffwWfefwgfvggwwevwfvgwgfweggfefgffwggvWhggfggffevggfwfffVufgwefggfgwWVVffgfufvgvwUuEfvVVgwVWgeevvwwwVWgfwVggfwdUVgfvvVUevggwewvfggUGvuvgfvgwhuwwgwgeXuvvvWvdvfgfffGfvfwvgWvwgfwwwUhwvvfWvvufvfUfXwwvvgvwhwfvwgxeffvwWfgefwvgvgfwwgvehggwwwwvwwgevfwuevgwvwgvwggvgvwgvwvwwgvfgwfgwwvgggwewhxfffwwfgfwwWvegggwwwgwwwffvggvvfgwwgWeWggvegWwgggeuwwvwggwvgfWfwwefvffwfVvefwugvvwffGWeVffVfvvwuffwwgfGgufwfvuVffwfgWgefvugwvgwwfvgfwgWufwVfvfwfUgfVvvwgfvwhwvggvfwwgffggwwuwfffvfwgvggwvUwvWvgwwwwgfwwgwVwfffvwghwwuxgfvwfgvugfwvfwgfvwwwwwhfgxfggvwwwweggwvfgfWvwgwgwvgfvwfffvugggxvVgffeVwwggvggefwwwgvgffgwgwwfUxwxwwwwgwxgwvxwwxwwwwxfwwwwvfxfwgvxwxxwWwwwwwvwwwwwwwwxwwwwxxwxxxwxwxhwvxvwwxwwxvwxvxxwwxxxhxwwxxxwwxwwhwvwxwwwxwwwxxwxwxwwxxwwwxxwwxwwwxwvUefvUefvvVvvffUfvEefVdfvfwwGeffgffvevwfevGeffgefwefweuwfwWfgeWefvwUvwVffvvgvvefVevwWfvvwwwvwfgvfwWfvvgwvuwfffgwggffvgWfwgVwgwwgwVvvVwwffffVfgfXwgvwvfffggewvgwWfvffvwfwvgwWvggwggvvwffffgwgewWfvwgfvwwgfffgwvvvwVggWTwfVVevgegWfVVvwwwwgffgfffwvfUvwhgggwwwwwvvvwwvwgvwXxwwwwwxvwhwwgwwgxxfVgwwwwwwwugxgwxwwgwwwvxwvvwgghxwwgwxwwwgwwwwwwgfwwhwwwvwwwwwxxxvgxxwwwwwwxwxwwgxxxxwxvwwhwwWfvxwxxxwwwvgvwwwwwxvxwgvxgggvwwxxwxwwwhxwgwwwgwghvvwwwwfufxvwwwgwxwwxwwvwvgwwwwwgwvwvvwwwwuxwwxwgwvvwwwwwgwggwwhwxwwwxxwxwwwwxxwwwwxwvhgwwvvhgwxgxwwxwwwxvvvwxwwxwwgwwxwwwwwwwxxwxwxwwwvxgwfwwxhwwxxwxwvxxvvwgwwwgVwwwxgxwvwwfwwgxgxwwxvgwgwwhxvwvvwwwwvhwwwgwwwxwvxwwwwwwwwvwwxwwwwwuxwwwwxwwwwwwxxwxxxxwwwwwwwwxwxwwwxxxwwwvwxwxxwwvxxxwwxxxxxwwxxwwwxwxgwxxwwxwxgwwgwwhwwwwgxxxwgwwxvvvgwfevvevfugfggEggvwfgvggewVwggwVxgvwwvwfvgvfgVxfggffgewwwVvggvgexwgfvgUxwwgevgfwhxwgwwgxwwwxwgxggwguvwvvfwgxgvwwfuwwvgvgwwwvwhgggvvwwxwwxwvgvxwgwwhxgfveffgvggfwgwwwgggfwvwwgwwwvwvvgwewvfggwwwwwgggvwgwvwhVuwfVfvVfgwVfwfvwvWgwwwwvxVggvfvxfvggefVvuwgvvfwvfXgfffgwggvwVvwgvvXvvwwggfvuvfveGfvgvwwegvwWvvfgweXwwvfuehwwwvfvfgwwwwfwwhwgxwhxvvggwfWvvgwxhwgvwwvgWvggwggwwggggvfwwwwwxwvgwwgwwwhwffvffVggwfgfgwgwwgwvvwgwwwwgwwfvuwgfwwggwvwxwgwvvvgxwwxVugfgVWvegggfVgvvwfgWvwwwvxgWwfvvhvvvuwfuuvvtVwefVgfffggvfevvvtVwfwWwvfwwgwwfgfwggeggvvwWgvwwgwwwggvwwewfhfggwfwggfwxxggvwwwwwwhwwgWggfxvvwwfwvxWgfvfvvgvgwwwwwgwwwxvgwwgWfgvxwwwwxwhfegvfgvwfwvgwgwxfwgwwwxwwfwwfvvgfgvwwfgwvwvwvwuwwwxgVgvVvgvVfvggvggvwvgvgwwwwgvggfwvxwwwvwfgxgwwxxwxwxxxwwxwvvwghxhggwvxxwwWwwgwwwwwvwwwwwwwxwwxxxxxwwvwwwwuvuwfxxvwvwwwxwwwgvwwwwxxxwwxwxwxxxxxxfwwgwfwxgxgvxwxwwwwxxvfwxxwxfwvvwgwwgxxwhwxxwveffweVgwwXfgggwVfvgggwvVwwvGewvgwegvwvwwvGevffwefefvvvfwwwWfwwwfvwwwfwffvvwwVvffxwWgfvwwxvwwwwxXgvvfvgvwwxvgxxvvvhfgwwfffwgwvwwwwwwgegwwgggwwxwwwgwwgfwfgfegwfwfwvxwwxxwvwvgwxxwgwvvgfWfwgfwvwxwvxwwwwvwxwwggevgwgfhevgfvgevgwgwgfwwxwgwgfvfwwxwwxxvvwghvvhxgwxwwwwwxxwvwgwgvwghwwwgxuwwwwwwwwhhwwgwwwxwwxxxwxxxwxvxxwwxxggxvfwwwvgwwxxgwwwxwxxwxxwwxxxxxuhxugwwxgwwwwwwxgwgvwwwfxwvgwvggwwwwgwxwxhgwwxwwxwfwgwwvwhvwwwwxxwgxwwwxgggvvwhwwwvwwwuwwwwwwvxwwwwwwvwwxwxxvxxwxwxxxwxxxwwwwwhxggwvwgwwgxxgxwxwxwwxxxxxxxwwxxwxxxxhhggwvwwxwgxxgxvwwwhgwwwhwwwwwwhgwwwghwxwhxwwwwxwwxwvgggxfwwgvwvvwxwgwxwwwxfwgwwfvwxwxwgwwwwuwwwwwwwwxwvvwwwwxvxwwwxxxxhwwwxwxwvgfwxvxwwwhwwwwhwwwgxwwxxwxwxwxxxxxxxxvxgfwxwgwwwhxwhvwxvwwgggwwwwwgxwwwhxwxxghvggdfVVdVvwwgfggwffeevgUwufgwgvVfwgwggUvgfwfvVfvgwWVVvgvxvgxwfvgwgevwhwwgvwwvggvxwxwWvwwvwgfwwwgVwvgvwgVvVfgwwwwwffvwgwvwwvwwwvwwgvguvwgwwwwwvwwfvwwgUfwfffffwfffffvwwgvwvwWvgvwwfgwxwfvvwwwwgfwgwwfwffVfffgwfffwvwwwwwfgvffwwwwwvwwwvwwgwVvvvgvwwwwhgwwxgfwwxxwxwwxwwwxhfxwxhfvwwxwxwwwgwwfwwfwwwgvwxwwxxxwxwwxwwwwwwhwwwxvwxxxxxwfwwxwwxxxxxwxvxwxxwxxwxwwwwwxwwwxgwwwwxxwwxgwxwwwwgwwxwwfwxgwgwhvgxxwxxgwwxwwwxwvwxxwgwggxxwwwxxywwxvwwxwwxvwwwvghwxwwwwwvxwxwwxvwwwwfwwxwwxxwxxwwwxwwwwwwxvgwwwwwvvwxwxwxwxgwvwwwxwwxwxwwxvvxwwwwxwvxxwwxwgwwwxxvxxxwxwxwghwxwwwwgvwxwgffhwwwvwwwwwwxwgwvwwwhwxxwxwxxvhwwwxwwxgxxvxvwxwxxgxwhvhgvwwwwwwxwvxwxxwgwgvgwvwwvxxwwxwwwvwxwxxwxwwwwwwxfwxxxwwvwwwxwxwwwwwvxwxwwgwwwxwwwgxwxgwxxgwwgwwwwxvgwwwxwwgxwwxgwhwwwwvxvxxxxhwhwvwvwvwwgwvvgvxvgwVwgwwvwgwvwWvxwwxfwvwwwvgvwwwgxwwwvwwvwwwwfgevwwwwwwffwgvvwwwhwwxwxgvwxxwwxvwwwxgxwwwwwwvwwwwwgxwxxxgwwvwxwxwhwvwvxwxgvwhwwvwwwwwwwwwxwwwhwxxwwwwgwwhwwwwwxwwwvwwvwwxgvwvxgwwwgxfvwggwwxwwggxgwwwwwwxwwwwxgwxwxhwwwvwxxvhwvwxxwwwwxxwgfwxxxxwxwvxwhvwwhwggxxxwxwwvwwwwwxwxxwxwwwwwwwwhwwwwxxwwxxhwwxwwxwxwwwwxxwwwxwwwwwwxwhwwwwvvxxwwxwxwggwwvxwwwhgwhwwxvwwvvxxwwwwgwwwxwwwwfxfxxwxgwwxwfvxwwwwwwfxfxxxxvxxxxwwwwxwwxxwwwwwwwxxwxwwxxwxxwxwwwwwwwgxwwwxxgwxxwwxwxxxwxwwxwxwwxxxwwwxxxwhgwgxxxxwgwxxwwxwwwggxgwxwwxfwwwwwwfwwwgvgxgvffxwgfwwgfwwwwwwwwwwxwfwgfvwvfvgwgwvwugvwxwwwwwwgwwxwwwwwwwwxgxgwwwgwwxxgwxwxfwwffwwxxvwxwxfwwwwxwwhvxwxxxwwxxwxxwwxwxwwwfwggfgxfwwwwwwwwxwwwwgwwwwwxwwwwwwwwxwwvxwxhwhwxufvfgUeuvgVtfftfffwfvfvfvvwfvVwgwwWvvwvguvUtfggggvuwwwxVgvgfwgVWehvfvwguvwvvWefxwwgwgfgvhwwgwwfVfgeVfhfwwwwvvfUgwwvffgwffvggvvvwggwvwwgwggwgffgxwwhwwgfgwwwgvggvguwffffwwhxwggvwwgVgwwvffgxfguwWfuwwggvgwwgwwfuVggwwgVgwfWweewwVgfggwufwvgwvwfvevfUTefwVveVvTVVggvuffefgwVvvWvdgfgfuuffffeFecVeffeeewvgWvfgfUfvfgdWfvfgfvfevuuEVfgxfvfWfgvfwwwwgwVfvGUVvfgwwvwvfeWffvfgggWVVgfveffgefvvgwfwgvgWffgwgwwgwffVfgwVgfgfgfgffefgwfgggXwwgeUFfgwgVgggVffgeefwwvgvvgfgwVUueWWvvggWWfFgeuvfgWfWWfTuwwgvgvgfffwvUefvftVeuffvffgVwuUefvwtVfufffffwfwuveguuEfefffeftgwufvgUufffVguVgfvwvgvewfVewwgVvfVvfxgwggvfgVggeffwgwwfwvgfgevwffgugffffvggvwgvfwwwwggVggvgfwgwwwwfwUgfvwgvffgfuwfggvvggwvwwvwggWgfgvffgvWgewvwffwxwewwvffVeVuEgufvvVvggfWeegwfffgvgfUwhwwgfvvWxwggwwwwwffVvwwvxgxvxwwwwwvxgwwgwvvwwvvgvxwuwwwwwgvwwwwwvgwvwwvxvvgxxwxxwwxwwwwwwwxxwgvwwwfVfxxxwwwwwfvwxxwxxgwxwwxwwwxxwvxxvwwxwxwxggwwhvwgwwwwvvxxwwxwxwwwwwvvwxggxghvwxwxxwxxwxwfVffgVVgvfWefWevvfvggfufvfwwWfgGefvvwwwfvgWvvGUfvvvgfevwwwhvgvvgffevVevUvvwwfvwfffuxwwfwveffwwwwfwgffveffwgwwgfggwfvvwugwfVffvvggfuwwfwfgwwwffgwffvxwvgwwgvfffwuwgvgfvvwggvwwgfwwxxwgwVuvwfwwgWfvvvwwewxvwwwwgffVegewgfvwwggffvVfwwwfwgffUwwwwffwwwwxxwggwfvxxhgvvwwwwwgvxhwwwvgwwxwxWwwwwwwwwwgwwwwxxwhxwxwwwxxxwxwxxwgvxxxwxwwxwwwwxwwwxxwxxwhxxwxwxxxfvwwwwxwwhxvwxxwwwwwwxxwxxwwxwwxwxxxwxxwwwgwwxwxxwwvxwwwgwwgxwxxwwxgvwwwwxhxwwwWwwwwwxwxwwwxwxwwwxwxxwwwgwwxwwwxxwwvwwxxxxwwvwxwwwxwxxwxwwwxxxxwwwwwwxxxxxwwxxwwwwwxgxhwwgxgwxxxwxxxfwwfwwggwwwfwwwwvgfwxwgwwgwwxxxvwvwggvwwwxgwefhwWwwwwwwgwwwgwgwwxwwwvvggwwwxwwwwxwwwwwwwwwwxffwwwwxxwvwxxvfwxwwwxwxwwxxwwwwxwwwwxxwwwwwfggxwwggwwwhwvvwwwwvwwwwwvwhwwWfwgvwwwhwwfwxhxWwvwWvvggfgwvwwwgwVvwwwfwwvwwwgxvfwwvwgwgwxfwxwwgvvwwvgffwwwwvgvwwxhgwwhwwxwwggffwwwwgvxxgwwwwwvwgvwwwwwwwwwwwwwwggwwhwwxwxwgxwfffwvvwwefffvffgffffvffwwwxwwwwwgvwgvwwwwwwwwwwwwwwwxwgwvfwvwwgggwwffgfvffVwfgfvwwwfuxwwwvfwgxUvwwwWwxxwwfwwgxvxUwwwVwwwwwwxwwwxvxffvwgvwwxxwxwwwwxwwwwgwwgfwwwwwgggxxxgwfvwwgwvvxxxxxwxwwwxwxwxwwwwxwxwxwgfxhxxxvwfgvvwvxwwwwgvwwxwxxwwxhxxhgvxxxxxxxxwwwwwxgxxgwvwwxwxwxwwxxvhvwwxgwvwxwwwwwwwwwgvwvgwxggxwwxxxgwwwxxvxxxwwwvvhwwwwwvgxxwvgxfwgVwvwvwwvwwxwxwwwxxwgwxxwxwhwxwxwvhxwvxxwvwhWwvgvxvwvwgxwwwwgfxwxwwwwwwwwfWwvwwxwwvwgwwwwvwvwxvfwvwwXwvwwvgwgvgwvwwugwvxwgwugwvgvfWewwwxhwwwvgwwgffgvvvgwwVegvwxwwxvgwwgxwwwwwwvgwwghwwwwhwgwwxwxwhfgvgwvwgwvvwwhwxxwwvvgxgwxwxwwxwwwxwwwwxwwwwwwwwwwxwgwwgwvwvggwfgwuwgvwwvvvxxwvgggwfwxwxfhvfgwvwwhgWvewwwxwwfwvggwwgwwvwguwfugwvfggwxwwwxhwWvwwwfwxvwwghwwwfwwvwwwgwgwvwfgffVvgwwwxvfgwvwwwfvwwhwwxwvwvwwfxwwwwwfwwwvwvwfwffgvvgwwwwwuwxwvwvwwwxwwxwwwwxwxwwwwwwwwwwwxvwwwwwxwvwwfwwfwvgfgwwwvgxwgvwgghfwxwvggvggvwwVggvgwwwwugwwwwwwwvvvwwxghwwxwwwxxvwvxxhwwwwwwwwwwgwfwfwwwwvhwwxxxxxwxwwwxxwxxwwgwwwxggxwwggxxwxgfxgWwwvwxvvwvhwxxxxfwxxwwwxwxxxxxxwxgwwxwxggxwxwvwhhvwfWwwvgwwwvxwwwwwwwwxxhfwwwwxhWgwvwwwwwwvwxwwwxgwfgfxhwwwxxxwhwxxxgfgfhwxwwwwwxwwxvwwwhwwxwxwwxxxxwwgxhwwxxwwwwvgwwwvwwxwwvwxxxwxxxwxxwwxxwwwwwwvgwwwwvwxwwwxwwwxxwwwwwwwxfwxfxwxwfwfgxwwgwvvfefxfgwfggwwgwvgwwvwggggffwefwxxWvwwwwvwwwwwfffwwwwvwvwwxwwwvwhvwwgxwxwxxwwffghwvhwwVfxwwwwwwxvvwvwhvwwwxxvwwvxwhwxfwxwwggvhfwhwxefwxxwwwwxwwxxwwwwwwwwxwwwxwwhffxwwxWugwVTffugfgWVVvvgvVvgfdgfvgvgWgevvgvWvgvwwvgeefgfggvgxxvxvwgfwwwWfvvgwvgwgwwgvwwgwwwvvfwwwwwwwWfwgffVwwxfewfvvwggvwwgwfvVffvwwffvwvwvVwgwvfgwwxwwweffffVgfwffvgfVvgffvwgwwwwwwgffwwwwvwgwgwggvgewwwwwxwgwwwwfwffgffwfgvwwwwwwgwVgwwgvwgwggwwvxwwwwwfxhwvwfxxxxwxwxwxwwgxgwfxwxwwvwwxwvwwfwgvwfwwxwxwwwwwxvxwwxwwwwwxwwxwvwwwxvwxvwwxwwwxxwxxxwxxxxxxxxwwwxwwwxwxwwwxwwxfxxwwwxwwwwwxwvgvxwfxxgvwwvwwxwhxhxwwxvwwwgvgwwxxxwwxwwvvwwwwxwwxwgwwwhwvwgfwwfwwvwwxwwwwxxwwxwwxxwwxwwwwxxxwxxxwwwxwxfxgxvxwxxxggwwxvwwwxxwxwxxwxwxxxxwxwwwxxwwwwwwgwwwxxwwxxwvwwxxxhwwwwwwwxxgggwvxwgxxwwvvwgwwwwwxxhwxgvwwgvghwvwwwhwwwvwxgvwwWwgwvgwwwwwggwvwwvWgvwvwxwwwwgwgegvwwwfwgwgfxwwvwwwxwvvwgvgxwxgwwwwxvgxwwwwwwwvwwwwwgxwwwwxwvwwwwwwwxxvwwhvwxwwwwwwwwgxwwwwwwxgxxxwwxwwxwvgwwwwwgxwwwhwwvwxwxwwwwfwwfwvvhgwgwwvwhgxwwwvxwwwwxwhvxvxfxwwwxwhwgwxvxwwxvxwxfxwwwwwxwwxvgwwxvgwxgwwxwwwwwwwgwxxgxxwwxwwxwxwwgxgwwfwwxwwwwwxxgxwxwxwxwxxxxvwwxwwgwwgwwxwwxwxvxxvwwxxwwwwwwxxxwxxwxxwhvwwwxfxwxwvxxfxwwxxxvxxwxwwwwwvgxgwwgwxwwvwgwwxwxgwwxwwgxhxwwvwwwxvwvwwwgvwxwwwwxwwxxwwxhgwwxxxwwwwgwwwwxwwhxwwhgwxwwwwxwwwwwwxgwwwxwwxxwwxwxxgwwxwwwwgwwvwxwwgwxwwxwvwwvgwvwwwghfxxvwvgwwwwxwwxvvwxxwwwwxgfwxwhwxxgwhgwwxwwxwhvfwggxwwwwwwxwwwwxwwxwwxxwxwwwwxwwwwwwwwxvwhwgwvxwxwxxwwwwwxwxwwwxxwvwxxxwxxxxxxxwwwxxxxxwxxwwxvwvxfwxvxwwxwwwfwxxxxwwxxwgwfwxgvgvvfggfxwgfxwwwwwwwwwxwfggvvwgvfwwhuwxwgvvwwwwwwvwwwwwwwwwwwxfwwxwwxxwgwhxwxwxwwxggfvfxxfwwwxwwwwwwwwwgxgxwwwxxwwwxxxwwwwggwfgxwvfwwxwwwwxwwwwwwwwwwvwwwwwxwggwwxwxxwwwwxvgxxwwwxxwxwxwwwxxwxgwwwvwwxwwwwxxxxwgxwwwwwgwxwwxwxxgwwxwxwwwvwgvwgwxgxwxwwwwwwxxvgvvwwwwwwwwgwwwwxgxwxxvxgwwxwwxwxxwwwwwwxgwxwxxwwxgwvwxwwwxwwwwwhwvwwxwvvxwwxvxggxwwwwwwhwwwxwwxxwghxxwxwxxxxwwwwwxwxhvhwwxwwxxwxxwwwxwxwwxxwgwwwwwhwwwxxwxwxwvvwxwwwxxwvwvvgxgwwwwxwxxwwgwwwwxwwwwwwxwxvwxxwxwwwfwwwwwwxwwwvhwhxxwwxwwwwwxxwxwxwwvwwwxxvvvvwwwvwvxwgfxxxxwwvhugxwwwwwwwhxxwvxwwfxwxwwxwwwgwfxwxxwwwwxvwxwxxwwxwwxwwxxxwxxwxgxwwvxxwwgwxwxxxwwwvhwwhwgwwwwxwwwwxwvfwgwwwwwvwxwhxwxwwxwxxwwwwwwwwxggxxwxwxwxxxwvwwgwxwwwvvwwxwvxwxxxwwgxvxwwwwwxhwwxgxwwwwgxwfvxguwXwwwwwxwwwwxwhwxvfxhvXvwwwwwwwwvwwxwvvfwwxvwwwwxwfwgvwgwggwwwwwwwxwwfwxfvfwwxwgwffvwvwvwwgvxxwxvvhgwwwxwwxhwwwwwwwxwffwwxwWvwffwgvwvxvgwxwfwvwwxwvggwxwxhegfwxwwwwwwxwhvvwvvwwxxwxxxwxwwwvwxxwvwxwwwxxwxwwxxwwxwwwwxxwvwwxgwwxwwxgwxwvxxwxwwggwgwvwwwwxwgwwggwxwwwvwwxwxwgxxxwwxwxwwwxwwwxwhwxwxwwxhvxxwwxwwwxwhgwgwwxwxgvwwwxwhwxxwhxwgxxwvxgwwwwgwwxwwgxwwxgwwvWvwggwwwxxwwwwhwwxxxxfwWuwgwwwxxwwxgwwwwwgwfwwwggxxwxgvxwwhvwwvwvxxxwxwwgvwwwxwfwvvwwWxwffvvwgwvgvwwwxxfggvwwxwxxhxwwwwxxxwwxwwxxfwvvwwwggwffgvwxwvwfwgwgwwwhwfwvxwXvvwwwwwwwgwfxxwwwwwwwgfgfxfhxwwvffwwxwxxxhhvwffxghhwwwwwwwwwxwwvwwwwwwwwxxxxxwgwwwxwxgwwwwwgxwwwxvwwwvwwwwxwwxwxxxwwxwwwwwxvxxwxxwwwxxxwwxhggvxwvxfxvwwwvxwwwwwwwwwwvwwgxxxwwxxxxwwvgghxxwwwghxwwwgwwwwwwgvgfhfgvxxwwwfxwwwxxwhxfhghggfxwwwwwwwwwgwwvxwwwwvwwwxwxwwwwwxwxwwxxwwwvwwwgfxwgwwwvwwwwwwwwxwwwxxwwxwvwgwxxwwggxwwwxwwxxgwxwvwwxwwwwwwwwwwgwwwvxxxxxfwhhwwwwwhhxxgwwwggwfwufffwwfgvwgvgvggvfvfVwgggfvvVfUvvvfwwwgfvvgfUegwgefvgVfUwvgwgvVvvWfEevVVUuggwvwffwwwgwgwfvwvvvfwwwfvvwgefuhvvUUfffffgvffvvwvvfffvwwfefeeVffgfeevVeVuWfuTEefeeVWfVfefwVffUfefwVUugwvefvfUeEwwgwgffevVefeegEUtffwgfffvVUeUfvfECvffwgfvfUTfwgDTUTuwwfwvwggwVuwgvwfvfwgvvgffwgvgvwfwUwvfvvfvvgvwfgVxtwwwfwffgfvgfwfvffwgVwgVvgfgwwfvwvgwxxwwwwxxgVevgvwfgffvfwwwwvgfwgvgwwwxwvwwwwwwwwwwfwgffwgfgfgUfgfwwwwhvgvfwwwwvwwwwwfwwwwwwfvvfUffVfvUewfffUffwVfgUvffvvwwxvwgwwwhvfwfgwVvgwgwwvwffvggwfvgvwvwggfwfgfweewveffWfwfvfgvgfgeffueVgFWgVvffefwvefWUWfcffVFgfeeufVfgWgggfvUWfVvVfvffvwggvgwwgwwwwwwvwwfefwvuggVffeuvvvwfggwVwvwwvvvvgvvvfwvvWggVuffuuVgGWVVvfevffgWfvgvvvffvwwwvwggwvvgggVFWveeefFVfWgggeuVWfVefVuffvggfgfffWgfeuvvvdfgwwgwgffuvwgwueuvvwvwvvvgeffegwfufvggfvvwfvgfegwvvfugffwgwvgwfvgugwtwgfVgffwVfFuufvgfveugVvefuegvvvvgwwvwwwwgvwgwwwvgwegwvufvgfvfvWvvfwvgfvwgvvwwwvgwwgggvvgvffgUgwfffuVVwefgvwfwfgvfwguvggwvwvggvgwegvfeVfgfvVeGuefvgVeufEvUVegvvvwwWfvvgwffwwgevwggwvgvvfgwwvfgUvgwwfggwfgfVtfgueUvVgufVfvfwgfeggvfeweWefgffwguvfvegvcvgUgfvUuVVUfevegvUfTVvEevVVffgwfwvvvgwwgwwfgvwgVVtvguvUwVWveefwVffegefgfwfffugggefvgvgWvVEgUegeeefUfvfvVfgeWtffuvWvfefegWvfVgfefgfffUfffUU4VVgefeVtdfTUdUVteffevwfwefgvffvfevwefwgfggfgfdUfgfefuffwggfefffvgvuvufgggWvffvvfWwgvvwfvfgWWuVegfvwwvvvffgvvtvWgvffveWfvWggwvVvgguVeffVgvwggwfwvwwwwwvwwvgffuwuvgggWffgvwfgfvgggfwwwvvvwwvwwwwwwgwfuVfgffffWUvefgvwgWWwfvgvvvgvggwvvVgvgvvVffVfeVVfUGefVfffveefVvUfveffgggfwfwgVgwffgfwvufvwggggwvevgwguuvfgwwgfggfvvvewwvggfgvgvgVVvfwvgwvfwgvgfvfvvgwwgfwwgffwdwWvvffffefgfffvgwvguffvggwgfgwfwwxwwwwwwxwwvfewwvvfvgfeuwwggxwgwvfgvgvwwvvvvwvwwwggufVggffvfffvVffgwwfwfgvvvgwgvwwwvvgwwwwwwgffeVVfffgEefffveeffufewfefgvfxgwvvVVwuvgegffUgxvwgvwgwevggvfffvwwwwwwxwwwxxxwwxxwwwxxwwwwwwwwwfgfwvxvwxwwwwxwwxwxwvxwwxxvwxwxxwwwxggwxxxxwxxwwwwxxxxxxxxxxxxggwhegwwxgggwwfvwwwvvgwxxwxwxwxxwwwwwwxxwxxgfffWggfgeffvffUfeWgefFfVUgVfvfVfVeVVWvvgUUUwgufTgVWteeuvGVfUTfggfvvfgwfVTWffgudUfVffVwVfvfwgVffVgffVTUevgufVfUgduuuwGffUUffwvwvVgggfVVVffdeffGSTUefeUEfVVdeedf6feTEUffeefVVfVVEFUUVdeeeVUUUEE4RTUUvVfEWedfEVedUee5VTfvUefgvEUUffTUUefguffvUGVfgUFVVfSTvvgvvvvfXVfefwgggffhvvvvwUXfevvwwwfgVhvwvWVfugwfeWfgvuffvwffVfdgvvgwvWwvgUGvuvvveWfuwwgxewvwwwvwwgfwwffvfwwvwgfhwufhwxewfefwggwwwgwxwgfvwwvuvwwFfUfwWVfVfWvfegwwTveefVffgwwfgwgfWefvvfevweffUfFdSFVvvgfXffeeGfufeveFVewfvvwwWVfVgVFVvufwfvvfgWvwWVffvgTfgfwwgwhhvUffwgwffghvvwffGWUffvfggfgVgufwvvvfwvgVgegvUwfggVfguVgffwwggvfgGWeVwuUwfVgvwvgwwxwwvwgwgwwwfvwwwwfffgvvvwXvfffvwfvwwwwWfVggwfwffWUVfvfgVVVgfffvfwVfgVfvffvwgwgwgWVffwfffvwfgfVVftDfeVwwWhfgwFgeVfuTveVfwwgvwggFfefufUUfUfwvxgvgwwfUVvffefxeffvvvwwwgwwwwwvwwfvwwggwwfwxvgefwvwggdfvvvXwwwwgffgwhwwgvwfVfxfvgwhwxwwwwwwwwxxwVwwgwhvwfwfwwgwwwfwwwwwwwwxwvwwwwwwwwggvggvwwwfvvvwwvwwwwfgwvvwwxwvwwwxgvwxgvwwgweWfwgvfwvwxgvffwwvfgwwwgvwwwxgwfgWfwwvgxhfwgUvxxfVfwfvVVfdVUuffffuefwVffvefUffvgwvevTewVfefegwfevfgvUVwffeeVffVVffewwefCeffevDUedfgfwVwgggvwfffvwgeffvwvvffvwfuvgGgvWUgfVuwwfvfwVfeggffVugWDdVfUfeUfefeVuuwGfffVvffvvffWgggUfgVffVeffffFUeFCVUUffwVffefTffefeTfVTwwffvvvUewvffVUfeffvwwfWVfgfVVgfUEvwwxwvvgvwvvwvghwwvwvvwfxvvwghwgfwhwWffggwveGwffwgwwwgfuvgxgfxwwfewhvvffvxwggwwgwxxwgxwxwvvwggwgwvwvxvwvvwwwxwwxgwwwwwwwvfwvwwfwwwggvwwfwgwfwwvwgwwwvwggwxwggvwwgWwvwWgVwfWgwvgvgfgvWvwvfwwgwuwwgvvwfwVwwwvwvwgwfxwggewxwvvwvwggfwwgwwxvwwgwvgVgfwgffhwvuwgfvwwgvefvfvgevFggvwvggfgfVghgvgwvvwwgevwwvffvxwwvwwvgwwwwwwwwwxwgvuxvvgggvwvvwxwwwuwxwwxhxxgwxwwvvwgvvgxvwgwvwfvvwwfgwvvgwwwwwwwwgwwwwvvwwvgxwwfvWWggxgwvgvvvufvgfgvwwgvwxwggvgvgWWwxxvwxwhhwgWgwxvfggxxvvwwvuwvvgwwgfxwwffgvwwwggfgwvgvggwweffFfvvhwgwwgevwwgwgwwffxgvvgxgxxwwwwxxwwwwwwgwgggwwvvgwfwwuwwwwwxhwwgwwwgwwwwwxwwgwwwfwwwwwwgfggvwfwwwxwwwwwvvfwwhgwwgvwgWVwgwwxvggvguVfvggvwwvxwwwgggvhWvvwxxwghwwxggwxvwVfwgfwfewVfVfvWvVwgfevWveTgffVgfWffgfVfvgffegVuvfhTfeeVvvffeffvfveUwfgfvgVfvefveWeVveVvuvwfvweVwfwvwWVffWvvfegVvuvVwwgffvfgvgegvvfgwgVvuvwwwwvGVeVFeUffVVeevFgfWeVewvufTVfeVffVVeefffgwfffeeEcVffUffFgeefuV4ffvVedFfeVfgwwwgVfVVfffggwVfeVgfvfgwUFVdefwffwvffwegfuffufvvggfvvvfgUgfvfwvgffggvvgvvgvvVvvvwUgvvuwvvVvdggfvfeGvvvevvWvvfvvwVfvgvghgwfwwgwgwvgwgvvgvvwvfhwfvfvgvufwwwwvVgfvvwwwgfwvvvwgwwuvFfeVefWVdeveuwwvffwwvVfVfgvgggfgvefVguvffVVvTfffefvGeVvvfUGvvfeUuVffgwwwwvUvgVgvfvvgWffVgvgfefWWWfeffggvwwwwWgefVgfgwfwevgegvfFWUfWvfgfggefvfgwwvfwvfwgWgufwfffwvVvwvfeVguvvfwUwvfgeVwfgfvfvvvwwvwvwgggwgfggwwghewvevvvgwwwvwgvfwwvgwwgvwfvgwfwwWfWfVffVgfevfffxwfgwwguguegwwggwffwfvfwvgwfffguVVfefgVxfvfgwEWuUvvVfVVfWwwgvgwfwffVwgvvgWgvfgfgvwwgfffUwfvwgwwwwwxxxwwvwwwwvxhwxgwvwwwwvwwwwwuwgwwwwwvfwxvgggwwwwwwwwxwwwwwgwxhxxxvwvwwxwwwwwvxwwwwxvfwgwwhwwfwgwvwwwvxvwwxwgwwxwwwvwwgegwwvgfwwwwxfwwwwvwwggxxxhwwhxxwhfxwxxggwxwwVffggvvUfgewWfggVwffvVffvTfffgggwvUvggfEugVfgWfwgweffeffvwWffwvggfTffgwfvegvUfweVTUfffvwVwgfgwwffwfgffggwvfvwggffwxfwwvffuvewvwwgxwfvffvgwvgfedgUUfefVffeVVwwevgwfvvwUfwwVWgffvffffggfffvVgUeVeffueffgwfvEefeffeffefgwgvvvvwvfEfuwgffvvfVvvvgfggVUTwfuwwwgwwwgwwwxwwwgwfvwgwvxwxwwhwvhwvWwvvwgffwWwvwwwwvxfgwwvxwvxxhwwgvwwwwuwwwxxxwxwwwgxwwgwwggxxwgwwwvwvwgwgwgxwxgxwwwwxvwvghwvhwwgwggwwwgggwwvgxvxwxvfgwhwwvuwUgwvgwvWvffwhfgfgwvwvgwvwwwxxvwwvwwgxwvgwvwwgxgxghwwxwwwwwgewwwwgwwwwwvvwevvxwvxgfvwgwwvwgwwwggwVgwvvvwwhfxwfgwwvwwwwfwvvwwgwgxwxwxxxwvxwwffggxwwxwgxwwwxwwvxwhwwhwwwwwvwwgwvwxxgwwwwwvxxxwwvwxwwwwggfwwvggwwwvhvgfgwvwvgwvggxwgwgvgWwvwwwwwfhwwhwgghuwwwwwxggwwxxwgwwwxwgwwvxwgwfwwxwgvwwwggwwWwgwwwgwwxwwwwwwxwwgwwwxxxwwwxwxwxwxxxxwgwwwwxwwxxxxwwhwwwwwgwwwwwwwwwxwxwxwxxxgwwwwwvwvwgvwwwvwwwgwwxxfwgwwwwwvwwxwwxxwxxggwwwxwxggxwxxhggwvwvgfwgvgwvUffevgwfffefwffVfWvgewwvwgeeggwffVwwwxwgfefvwgwwVefgfgfwwfwgwxwWfeffffVfhwwgxwwWfvwwgVfevwwhwwfgwwvvgwwfegvgfwvwwgvwwgvwfgwfgg5eVUVffUfEEUUuvwgvgeVVdefffefggWffvfFUUeVfffeeeEeUUEWfvfggwvwgfeegvfffwgfVwwwfVgvgUUEVfvgvvfvwgggfVfffffuwwvwvwxwwwvwwfvxvwgvvfwwwwwxwwwvwvwwWwvWfxggfgvfwwwfgwwwwgvwvxwwxwgwvvugxwwwhgwxxxwwwwwwwwwwxxxgwfwxwwwwvwwgwxgwwwwwwwwwwwwvwgggwwfvvwvwxfvwgwhvevwwfwwgvvgwwwfgwgewvvUvgvwwvgewgwwvggffevvfwgwwwwwwvXvfwwwgvgggvvvwggwwggfwhvggwgWVwwwggxgvxggvwxwWVwgwfwwwgvwWwvvwwffvvvwgvgvVwvwgwvwgwvwvwwwwxgxwwfwvhxxgvwwwwwwxwwwvvfhxgwggwxwwwvvvxwwwwxgxwwwxfwxwwwgwwwwwwwwwvwxgxwgwgguwxwwvwggwwwwwgwgvwwggvvwfgwvwhwgvwhfffvwfvvgwgxwvwwvvfwwfgwVfvwwwvwwwwwgexwvvvvwxxwwvvxxwwwwxvwwwwwvwwwwwwhvgxgxgwwxwwvwwwwfxwwfvxwwwwhgxwxwgwwfgxfwwwxwwwwwxwwwwwxxxvxwxgxwxwwwxxwxxxwwwwwwwvwwwwxvgxwwgxwwwggxvwwxwwxwgwwwwwwwvwwgwfwvwwwwgwhwwwwvffwfwwwxwwwxfwxxwwxvwvvwwwxhfxwvwgvxwwxvwwwwxwwffwwwwwgewwfgwwxfxewwvvwwwgwvwwfgwfwxhggwxvwfwvvwwwwgvfwffxfwwwgwwxxwwwwwvgxggwfwwugxwvgfwfxwwwxwgwwwwwuwwgwvfwvgggwwwwwgvwvffgfxfwwgwfvgvwwwwgvwwwwwguwwwfwwfxfwwuwfgvvVuWewvwwwwwxwgewgwwwwwwwwwwwWwwwgggvhvgwwwvwvwgwgwwgwgwwgxgwwwfggwwgwwwggwggwwfgwwfvvvhffevxwwuwwwwwwWwxhhxwwfwwwffgwwwgwhwvxxwgwxwwxwxxxxxwhwwwwxwgwwwwhwwvxxwwgxwxwwwwggwwvgvwfwwgfvxhwgvgwxwevvggvggfwvwgwvfewxwfwuwwgwgfggwxvvfwvvvvfvggwxwgvxwwwuwgwgwgvwuwxwfwwwgWgwvggwwwwhfgvgfwwvuwvguwgwgegewgwwvwuhvguwwvwvgvwwgwgfwfvvwwgwwgfwwwvxvgwwxgggwwVfhgwwwggwxwwwvxgwwwwvxvgwhwvwwxwgxvvgwwwxxvxwggwwwwwfxwwwwwvgvgvwwxfwwgwwfugwwwgwwgwwwwwvwvvwwwgwgwgfwgvwwggWwvgvvgvgxwwwwwxfwwgwgVvwvwxwhwwwfgvwvfgwwfvefgxvwgwwfVwwgwvfxwgvxwwfwfxwvgwgWvFfwwwfvggxgvwvvxxgwwfWwwfwvwgvfxvvxwwxxwgxwwxwhvhwwufwwwwwwwvwxwwgwwwwwvVwxxxwxhwvvwwxxwxxxvgwwwwwgwxwwvgvwgvwwwwwefwwxwwfvvwvwxvwwwxwgvvwxgwffuwwwwwwhggvvwxWvvggggfXeffufvfgvwfuvWWfUhVfgvffvwffvvgfUdvgvgUvfguvVVEfgfgweWwfUvfgvevwfwvgvvWffgvgWwvwfwvhwwgwwgeevvVfVwgwuVVffvwvfgfVvgguvvwggwwgxwwfTTeveuUVfgVuuFEUufffwefvUVegVuufvVfggfggvgV5fUVffeUVV4fEguvffVedffeEgeUVfvUVVwwfffwwwfvfvUFVfWgdewwwfwvgvfvwguwfhEeefgvefVwgvvevffgVfvfgvufgvgvvefVfugwvegvhvveeT6VVffVfVvfWvXfuewguufvuvFevvwgvxvgwwvgwwwwwwVfvfgvufgvgvveTVewvvwgwggfWwgvvevwefvfwwvgVVUVgudfUwUeuTeUfgevwggggfVwWvudfvefwfwgvwee6FUVfVfVuTGfXeufvgdeevfVVfFeVvVUfuwggfvwwvfgwfWWfWhfdugwgvwvfgwgwwggxVeVfvufgffvgegfWVgVeffvuffwwvvvwvffUvvggffxfewVWVtVVgwWfFFffxfUgvwffgffgvWfgfwfwwvvvwwwwwwwwguffvuffgfwfevVfgwvxwfggfffwwewvwhvggwwwWdUfvtUUVfffewEVfvvfwggfVUUfwgewuwwfwfwfvgVWgeUVvweeF6VTxfDgfffefeVwfEfVVfweeVwwVVfggwffvfffVfufedwwwwfwvvwwxwvwwvgwgwwwvwvwwwvgwgffwvwuvwvfvfFvwgfvwvwwfWfwwggvwgfgwwvgvwwgwxwwwxvwvwwwxwxvugggVfwvwwvwvuwvvvwwwwwvwvwfwwvwxwwwwfwwvvwvwuxvvwwwwwwvwwwwgwwxxwwxfWfvwgwgfwfggewffwvxfvwggwwwggfwwgwwwwxxggwxwxwwxwxwfgvgfgUfeffvgfvfewgwffgwefffgvWfwvvggwVfvWfwwwevvwwffwTeffvwwWVwdefwUvwggffwvgeugvwgwvwfxwwxvwgfwfwhvvvwwwwvVffwgwwgwgffuwgwfvxgwwvgwwwGeeVeWUVeVfgvfUffvgVwgvvffUuvgwfuwggffwxgwFvUeffvgffVvDfvvUfwffefffWfeefwffVFwgfgfwvgffwvvVEwgVVUwwgVwfeggxvvvwwvvgwvwWxgvwfwvvwvwwghhvhgVfvgtwvvfwvgwfffwvwwhgwwgwwvgvhwgwvwgxwvvwwwvxwxxxuwgfvgwgwxwegfexwvvwwwWwwxvgvwwvwwwwwvwwfvwwgwwhvwwvwhwwwwwgwvgwwwwxwwwxwFufwwwvgfgvvfgefwfwvgevwwxgvwvfwffgwwwgwgwwgxfwwxwwwuvhgUfvvwfvvgwwwvfgvwfwwvvwvwwxwvvffwwdfvvwwwvwwvwwvwvggWufvwwwwvhvvwwvhwxxwwggvwwxxxgwwweffwgwgxwwgvwggwwwwwgwxwwvvwwxvwwhgxwvfggwwwwwwgvfgwwgwwxwwwwxwvwwwwxwxhfvvwwwuggvewfgwvgwwwvvwwwwfwvfWWggwgvwxwwwwwwWgxhxfwxxxwghxwfvwwvwwgwgwxwxhwwwvvgwxwffwwwxhwwwgvwvwuvvwwwwwfffwwwxvggfffwgwfgxhwwwwvxwfgwwhwwwxxwwwwxwewvfvfvwgxgwwwgfwgwxxwgxxwgwwwxwwxxwvwwvwwwwgwvvwgwwhwwwwgwwvwwwwgfvvvgwvWgfvvwgvfgwgwvfwvvxfwwwwggfwxwxwwwwwxvhhwwxwfwwwwwxvxgxghxwggwwxwvwwwwWhhgggfgwwvwwwgwwvfxwxxwwgwwWvggfwwfwwxwwwvwvxwwwwvvwwwwxwxxwwwgwwxwvwwwwwwxxwwwwwwwwwwwwxwXWwwuwvvvwggwwfwvwwwvvfvvwgwwwwwxwhwwwgggfwfffwvgxvxxwwvgwwwwwvvwgwgwwwvwwfwvwggvwwwfwwwggvwggwwwwgwvxgvgwVgvvgxwwfxwfggwgvwwwxwwxtevgfvVvwWfvwVewvggugwwgffgwfwvvwxvwwxxxwwwwvggvwwwvwugffxwxxhwxgwgwwxwwxVfefVuffwfwevwffwevhvfvwhvwfwxgwfwwvxwwGTvfffugvwWewVfefvewvwvgwvevWffwwXfgvwXgwwwXvgxXfwxXwwxwhwxxxxvgwhvgwgwwwgwxxgggvwwgwgggxwxWfvfvwfgwgwwwgfghfvvvgwewggwvggxvwvwwxxxwxhwwwxxxwxwwwxwhvhwxwwwwxxwwggwwwxwwwvwxgvwvgvvwwggvwWfggfwfwxvfVgwhwxfwvwwgeggfvvuWxxUgWVvvvghxvhegxxfveugxwfvfgxVwxwwtvgwxVfwwgwwwwxwwhgwwwwwwwxwwwgwuhwvvwvwwwvhwwffwvgwwvhwxwvgfgvfgguWwgvgvgwwuWxvwwgxvvvwvxwwwxwwwwgwwwwxvwwxwwfwhevwvwxgwvgwwwwfwwxxwVvvfffvgvhwwvfwgevvvgxgvwuXwvgwwwwWvgfgVvtWwgvWugvufuWwuwvufhwfwgvuWxgfwgxwWwwhvvWxXWhvwxfwwwvhxwwvhvwwwxwwgxwwwwwfxwgwghwwfwwgggvggwexfwvxuVwvfgvwhwvfwfgvewwgvwwwwxwhwxwwwwwwwwwwxwfxwgwwwhvwvwxwwwwfxwwwwwwvwgfgvvgvfwfxvvgvfgWugvfhfvfwfwwwfwvwvvwggvVwgvWuwHwvewUguvUxugffwVgvguwhggvfhfwHgwwfvwXwfXfwxwWwwwvgwwwwxwVgvvgwwgwxwwwghgwwwwxxgwevvffvfhhVvwvFggwgwvvwgWxwfgwvggwvxwvxwxxxxxxwwwwwwgwxxwwufvvwxxhwxggwgwxwwvxfgwvvvvgwghwwvfggvvvwxgfggVWwwvghwwfwewvUfVvvuvehXggWVgvvggwuvuxgwvvftxgfwwxgvwXvvwuuxhggVwwwhgwgwfwwwwwvwggvgwgfwggvxxvvxffwwgfwxvgvxggfewfwwgvwxfgfgwwewwgugugwwvWxxwwwwxwwxwwwxwwwxwxwwwfwxwxxfwwgxfwxxwwwxxwwwxwxgfwgfwUvwvgvwwVwgfVwvxwfgfgvwgwvwvwgvfewfwVxwfuWdVufvuWwxgguwggfwfwwgwgxgfxWwwwVxwgwwgwxwgxwwXgWwwUdUfeegfuvFfgVVwweeffuuwgvfVwfffxwwfFeecefeUffVefffffwVUtwwgVVfUvfgeUwwwfeVxWgwwfgfwuxwwwwwwwweuwFVVfvwvvwwVvgVfegffgFvffUwwwwgfvfwwgvuuwWfffwwffwwwWwwgfvwwwvWwwffxwfwwwwwwwwfTUvwffvgwgUVffeefeewwwfffwwfgVUtwwgwgvgvwwwwWeuwxgVVwxwwwwwxwfgvfwwvGffVgfVfvfwWffVwffFwffgfffvfwWgvwgffxwwwxwwfgfvVffgfwfffVwwxwgwvwffgvvwwwvvfffwxwvfffvxwwXvvfwffvwwggwwgffuwvgVvwvgwWffvgwwwwwwvFtffWfTdVfeVfeVgfvffwxfwfffffWfefeVffvVfwfvFeffffffeVwwgfVVeeevgwfffeevffvffeVgfwfWxwwfgwgvffwwgfVffVggggwwwwwxwwwwhxwxxxxvwwgwwxvwwxwwxfwwwvwgwgwwwwwwvxwxxwgwwvgwfxxwwwwxvxwwwwwwwwwwgvvxwwwwxwgwwxwwwwwwgwwwvvwwgwxwwxwwxvwwwwwxgwwwwwwwxgwwvuvwwvwwwgwgwvfwwfwfwfwwwwvwwwwwwwwwwwwgvwwwxxxhwwgxxwwwxvghxwxwwvxwwwwwwwvggwwwgvvghvwwwxvwwgwwwwggxfwwvfxgwwwgxwgwwwwwxwxwwwxwwwxwwxxwvvvvwgxgwwwwvwwwwwgghgxwvxwwxxwwwvwxgwwwwwvwvvwwwwgwwxwgwwvwvgwwwwhwwwvvwwgwxvwggwgwhwwgwxwwvvxwgwwwvxwxwwgfxwwwwwwwwgwwvwwwwvwwwgvgxwxwxvxgwugwgvggwvwhwwwvgwwwwfwvwwgfvgwwggwuvxvwwwgwwfvfvgfwVxfwxvuWvvwgvfwwwwwxwwfwwfwwxwwwwwwwvwwwwvwgwwwvwgwwvwwwggwfwfwvvggvwwgwvwgwwxwwgwwvwgvwwgwwwwwggwewgwwfvwvgfvfuWvvVgvghvgwwxvwgvwgwxxxgwvgwwgfwfvwfwwxwwwgvvwfwwvgWuxfwwvfvwwwfgwvxWvwewwvwvwvgwwwvwvwvwwvwwfwhwwwvwwxwwWwfwWvgvwvgwvwwwwxgwvwxwwhgwfgvwwwwwwewvwwxwwxwxfxwgvvwxwgvhwwwxwwwvggwwvwwwvwwewfwfhwwwwwggwwfvwvwgwwwgwfwgvwvwgwwfwggvfvfhvfvwvgvguvvvwwwwvgwwxwwwvfggxwvhwgvxwgwwxhhxxwwxvwwxxwwvhxwwwwwvwxwxwxwwxvwwwvvxxfwvggxwwvhvvxxgvxwwwwxvhvggwwwxxxwwwwwvxxxgwxgxwxxxwvxwwxwxwgwwwwggwwwwgwvwwwxggxwwwwwwxvwwgwvwwwvwvwwwwwwwwgfwwgvfwvwgvxvwwwwwwxxwgwvhvxxvwwfwwwwwwvwgvwfxvxwwvewwvvwwvwgwxwwwwwgwvwwvwxwwwwwxwxxwvwhwgvwgvhwwwwwwwwwwwgxwwvwfxwxwwwwwhwwxxwwxwxwxwxgvxvwvwwwwwwwgwvwwxwxwwwwwwwvwwxwwgwwwwwwwgwxwwwwwgvgvhwvwxwxwxwwwwwwxxwwvwxwxwwxxwxxwgwghvvggvvfwxxfwvwgwwxwggvwwgfgggvwhwwgfwWfwwfwgvwfwwwwfwvxxxwwfvfwfwgwwwwxxggwwwxgwhwwfwhgfgfvwwxvwwxxwxhvgwwxxwwwxwwxvggwwxwxwxwxwvwxxxxxgvwfggwxgwvvfvwggvwfwwxfwvxxgwxvwwwhgwgvwwxxwwgghvwXwwwxwwwwvvwgwwwwwXwfwwwwwvwwhwwvxwxwwxwvfgwwwvvvwxxxgxwwwwwwwwwwxxvwwwwwxwhwwwwxwwwwwfwwwwgwwvwwwwwwwwwxxgggufvvwgwfvwvgUfhevffgwwgvgevwvwVggwvgvwffwgvfvgggwfgfgvuwfgvvfvuggwwuvfghgwwwwwgwwwgwwfggvwwwwgwwwwwvwwwwwwxxwxwxwwwxwwxxwwwwxxvgwwwwwwwxvxwxwwxwwvvxwxxxwwwxwvxxgwhwwwxxxwxwwxxhwwwwguwvfvwwwggvwwfvxwwvhxgwwfgwvwgwwxvwxwwwggwgvvhgwwhvWwvvwgvvwvwgwwwgvvgxwwxxwwwgwwxxhggwvwxhxgvwxxxhwvwwwwxxxwwgxwwwggxwxwwvxwgxwxgxxvwwgvxwvgvwwWgvgwwxwxfwgwwxxxxwxwxxxhwwxwwwxwfxwvfwxxgfwxwxwvwfwvwxWvggvgwwgwvgwwfxvgvxvxwwggggxvxwgwwwwwvwxvfwwgwxfgvVxvwwfxvwwwxvwxvgwwggwvxxwwVvgwxwwvxwwwwgfvwwwgvwwwwwwxgfwwwgvxgvwwffwwffvgvfvfvfwwexwwwxwvwffvvwwwxwwwwgfxxwgwwwwwwwvvgfvgwwxxggwwwwgvghwxgwwwwwwxwwxxwvgvwwwwwwwxwxvwwvwwgwwwgwxwwxwwwwxfwwfgwwwwvwfvWvggvfwwwewwwwwggwxxwvwhgfgxhggxvwghwxxwgwvwwvWggfhwwgwxwgwwwwvWwxgxwgwwwxvgxxwxgwxvvwuwwwwwvwvvwxvvgvwxwwwwevwwwwxwvxwwwxwwwxwxgwxwxwwwvwwhvhwwwwxwwwxwwxwwwxgfWfgggwvgfwwfgguxVXfwgfwwwfvgfuwgWgvwvwvvvguwxgfwgvwwevwfvwwwwwwevwvxvfwwfwvwwwxggwgwxxwgfwggwwgwwffwwwWfgwvgwvevfwwgwwvwhfWvgwfvvggxWwwwwfwwwfvfegefwXUvgvwwwwvwvfgfVwwfWwxwXvwwwwwvwwfwwwwwwhwwfwgvvggwwwwwgvfwgwvwgwwgwwwwgwwvwwwwwwwwwgfggwwwwwwwveggvwgghvwvvwgwgwgwgwxwvhefvvuwwgvwgfgegvwwffvWvvgwxuwvfvfwvugwwwwwfwfvfwwxwfwvgwuwwxwfwvwgdefwgeVFgvfwvfvgwwdfgggeVFgfegvgvgwgfvfwvUfwfWvvfvwfvvfgwgvgVVvwegvwvwvvwwvwwggwvgvggwvwwwggvgUvvvwwxwwwgVfuwwwgwwguwwgfggwwwwxwwwwwwwvgfvwvgwwwwgVfufgwgxgxvwwwfgfwwgwgwwwwwWggvwwwgwwffVVuvwfgvwvxWwvvffwfwvvwvwwgwwffhxxggWwgxghgwwvwwxwwWWwgggfvwwwwwgwxwWVwgvggWuggwwfwxgvggwwuwwgewvgfvvgvgwgwfVUxwgwfwxvWwwwwwfxvwwwwwwwxwvfgugvxwwwxxfvvwwwfgxwwwwfwxxwxwwwwfguwwwwwwxwxgvvwwwfxxWxwwvwwwwwwxxxvwvwxwwwgwwfewwgwfwvfxwgxwwvgwgwwwvwwwwgvvxwvggvwvhxvwhwvffwwfVUgfgffwffwewVdfwefUhwVvVggvvfffuvgwgvgUdfVfUguufeVfVvVufVevwfvWvvgwfvffvvWVvfeggVvfxwwgwgfwwwggFuVfvfgfgfuufeffvfvvVWwhwwwgfwvwwWhggwgvggfvEefegVVfuvVTfUvfeeVfggwgfgfwgvgggVffgvgU4vVtVtfgffffeUfevfffeffuFVefvVfUVfgfeWgfWgTevwvwfwwvwwvwwvfwvgfwvwgeXwfwfuffwvgfvuvwwfWvWvvwwwwwwvvuwgfvufgeWwvvgvWgUvtgfgwvfvvvwvvvgvvvVVgfwwvvwxwgwwwgwxwVfvwgwvwgwvvVggvwwfwggwwwvwwwwgggwwwgwffveuVfwefffveVggvwfffgWwfgvfwgwhxvggvwVUGVevdfgVfvefuevvgfffvvfWfegWfgWggwVgggfgVevwwwwgwvvgwwvwwvgvgwwgggegvgffwvuwewffvfVfuggfgwfvwvwwwvwwwfvUggfgvfwvVwfufuVfvggwgvvgwuwvwfvfvuVfffvgfvwxxxwwwwwwxfvUfvwvwgwwfwffwgwwfwgvgxwxwwwwwwwwhwvgffgefVfvefgfvvwfefWfvvvgvgxgwwvwgwxgxfwwfvwgFWetVuVVuffvffvVwfffgvgfveVevgWffeffggvgffWfewwvwwfgvffwgvwwwvvgwwwwxwxwwhxwwwwwxwwWwwwvgwxvgwwwvwvwwwvvwwwwwxwxwxxwfwwhxxwwwxwxhxwxwxwxxwwwxwwwwwwwxxxxwxxxxxwxxxwgwgvgvwwwwwxwvwwwwwwwwwxwxhwwwgxfwgxwxwxufvvvWvEuggvUffewffvgfuvfUfgWffvgvvwvgwVvwgfWfvevVvvevgegGeGeeWefgggwwfuffgfvwefeegfwgffwwxxwvwwgxwfWegvwewffvwfVefffgfgwgewwwgwgwvwvgwwwwgvVVffVegVvgffffVUfffffvgwfxwvwvVwwwfgwgfgwgWuEeWfWfgWffgffvffvffgvvvvfVeffffffEgvwgVvWVfUwwgvwvvwfffvvwgwgvwxwggwwwwwgvwwwwgwgwwwwwxxxxhwwuwgwwwwefwvvwwgwwwggxgxwwwgxwxvwfwxwxxxvvwwwxxxwxgggwwxvgwvgwwwwxxxwvwwxwwxwwwxxwwwgwwwwxxxwwxwwfvwewgfegwgwwvgwvwwvgvwwwvxwwxfwwfxxvwvvxxxwwxxxwxxvxwhvvwwwwwxvwwxwfuvvwwgwwwwxxxwgxwuvvvwwgvwgwgvwfwggwxwwxwwvvwxwwwwvgfxwwwxxwxhwwvxwxxwxwwhxwggwxwwwxwwxxwxhwwwwwxwwwwwwwwwwwxwwwwwwxwxwxxxhvwgwgvgwvwxwwwwvvwgwwvvfwxwxwgVgwwxgwwghvvxxwwwhwwxxxwwxwwwxvwwxwxwxwvwwwwwwwxxwvwwwwuwwwwvwwwwgwwgwwwxxxwwwxvwwwvwwxwxwwhwxxwxwxwwwxwwwxvwwxxwwwwwwwwxfwwvgwwwwwwwwwvwvxwwxghwxwwhxwwxhwwwxxxwwwxxvgegvWgffvgfgwvTfeUeffueggfwgggfgevvgfwwvxwvvfgfvwwgvwwfvggxwvggewvfvwgfVVffvvgffVwgfwgvgxvwwvfwgvgfwwvvgfgwffvwgWfgvfwwfwxgwgfvVfgffuvGufefffeVUVVfffUfefgffeffwwgvVfgVefwfffvgWgUuwfwwgwfwwfggffUVffffeVTUfvfffffVvfvwgwfwfffvgvwgffgweffwvUevxwgwgvgxvwwvwgewvvwwgfwwvxwwwxfwwxfwgfvgwwgvvfvxwxwxgugwwgwwfwwwwfewwxwwwxxwxwwwvvvwxwxvVwvvwxgwgvgxxwwxvgvwvwwwwfvwwhwwvvwvgwwwgwwwwwwwwxvgvwvhwwgwwvgewfvwfgVvwwVwwvwvwwgwvfwgwwxfwfgwgvwxggfwxxwgwhgwxwgwvwgwvwwwwgwVwxxwwxwwvfgwvggxVfxvwwwwwffwwxwwwggvvgwgfgfwvxgvwwgwwxwwggvwxwwwwfvvxwwwvwwwwxwxxvwxwhvvwwwwgWwfwwwwwvvhwwxwwwxwggwvwxvwwwwwwwxvwxwwvwwvvwgvwwwxwxxwggwvwgxwvwwwfggfvfvgfgwvgWwvwxxwwvwvgfwwwugwvevwwfvgwgwwxgvwgwwgwwwfvxwwwvwwxwwwhxwxvxwwwwgxwwvwwwfgwwvvwxxwvvwwxvxxhwwhwwwwfhgfwwwwwwwwwvwwxhwwwwwxwhxxxwwwwvvwwxwvwwwwwgxwwwwwxwhvvwwgwwxwwwxwwwgwwhwwvwwghfwwhvvwwgwwgvwegwxwhwwhxggwvxwwwxxwxwwwxwvwwggwxwgwvwxwgwfwwwwwfxhwxwwwwwfxvwvwxgwggwfgvvwgwhwvwvxgwwwvxwvgfwwwgvfvwfwwwwwxwvwxwwxwwgwwgwvVwwvwxwwwgwwgwxwxwxgwfgvwvwwwwfvvvghwwwwwwwwgwwwvvwwwvwhwfgfwghwwvwwwwfxggvfgfwwwVwwvwwwwvggVvuvvwvxwwgwhfgwxwwwwwgwwwwwwwweWwxwvgvgwXxwwwgwvgvhwvwwhwwwwxfgxwwWwwwgggwwuvhwwWwwxwwwwwhwvwwwwvfvwwwgwwxwwwwwwvwwwvxwwghwwwvxwwwwhwxwwxwwvgvvxwxwwwwwwwwwwwwwvgwwvvwwxwwwvgwwwhwwfwvgvhgvvvggfgwghvvwwwwfwuvgggwvughwwxwWgwwwwwhwwwxwwwwwgwvvwwvwwvwvgwgwwxfvgewwfwvwvggwwxgwwguxxgvvwwgwxvgvfwwwwfgvwxvwwwhvxvgwwwfwvwwwwwxxxwwwwxwfxwxgvwwwwwwxghxxxwggwggwvgwwfwwxwwwwwwwgvwvwgxwwxwxggwgwwggwwggewVwfgvgwwgvggwwwgggvgvwxwgvwgwgwgvwwwxxwwwwwgwwwwwwxfwxVvfgwvwuxgwfgwwgwwgwwwxwwvwxxvtgvggvvwwwfevgwgwwvgvwxvwvfwgxxfefxwxwwxxwwegggvwwwvwwwXwxggxxfwwwwwwwwwwwvwwwxvwhwxgwwwwwwxxxwxwfggwwwgVfvvwwwvwewvwwwxhvvwxwwgVfwxwxwwwxwxxxwwwegWgevfWwgewwvfwggvwvufVfWfgvvwgfgwggfwxgfgwwgfvwgwvwgwfwfgvvgggfwwwwwvvvwgwgVggfvwfwxgwwwwghVvgwwvvvgvvwfvwwwwwgvwgwwxwwwxwvwvgwwwGWgevffefgvVffvgvvvwggefwwgvwwwwwwgwwvwxwweewwwfgvfgvggfegwvvvvgeffvwgwgfVvvgwwfggvvgfffgwwwgwwwwgfvwfgwxxwwwwxwwxvwwwxwwwwxxwxvuvWxwhgvgwgwwvgvwfwxgwwvxwwfwgwwwxxxxwgwxgwxxgxgwwxhxwwxwwwxwgvwvfgfwgvvgxgwwwwxgxwgwvgwxwvwgwxwwufeVVvgwuwUwvwwwwVwfgwvxwvwfwgwgwgvgwvhwhwgvwwggwwxxwxhwwwwwwwwwxwwxxwfwwvwwxxfwwxwwgwwvgwwgwvwgwxgwvwwvvxwwwwvwghwvwwhwwwvwxxxvhxvxwwgWhvwwwwwwwwwwxxwwxwwhwgxxhwgwwwwwvwwfvwfwvwwvgwwwwvwgxwwwxvwwvwwwgggWVfvvgVwwgwwxvwgWgfgvwgwuwgxuggxxxwwwwxwxxwfxwxxxxwxgwwwwxxwwwvxwwxxwxwhwwwwwxwwwwwwxwwvgvwgwvvxwvhxwwgwwfxwwwwwxxxxwwgxvwwhwxwgwwwwwwhxxxwwwwxwwwwvwvvgwgwvwgwgwwgwvwwwhgwxxvggwwxwxvvWfwggfffvgwwvvwvWwvewwwwwvwwfwfghwfwxwxwwgwxxxvxgwvwwvwwwwwwxwgvwvgxVgwwwxwxwwwWvxwxxfgwwwwwwwwgwfwwvwvggvfgvhfegvxfwxwwvwvgvvwvwvwwwwgxwwwxwxwwwwghwwxxgwwwvwxxgwxvwxxwwwwwxwxwfvwwwvwggwgwxvwvvvwgwwwwwfwwwgwwwwwwwfwgvgvggvwfwwwwxfguvfwuwwggvwwwWwwfggxhwfwwwgwwxwvWxwwwwxwwwxwwvwwxxwwxwwwxxwvwwwgwwxwwwvvgwwvgwxwwwwuxwegvggfwxhxwxfwwwwxxwwwxwxxwxvvxwwxwxwwwgwwwwgwxxwxwxwwwwgvgxwgwgwwgwwvvwwwgwvwxxvwvgwwvgwxwfwhvfwvvhfgwgwhvwvggwevwvwwxvuwxgvuhfxxwwvwwwgwxxvwhwvwwwxxwwwvxwwxxxwxgwwwwwwwxwwxggwwvgvwwwwwggfgwxvxwwhhvwvwxwxwxwxwxxwwwwwwwgwxxxxwxxwxwwwxfwwxgvwwwwwvvwwwwwxvxwwxwwwwxxwwwggeffwfxggwgxwggwgugvvwwwwwgxwxgfwfvxxgxwwwwxwwwwwgwfgVVfwfuvVwwgggwwwwggwwvvwgxwgwwwwwFwvgVfvgwefffwgfVwgffvggvvfxgfVvfgwgxwwhxxwwwwufgggvWvvfwwxxuwwegvwwxwfwvgwwfwwwwvwxvvwgxgwwwxwvwxxwwwwxwxxwvfgwwWffgvfefwwwwwffevwwwwwffuxwwwffugfvwwwwwwggwxwvwggwwwwwwxVwxwwwwxwgvwwwwfggVxvgwfwxwgvfwwhwwfwwwwwwhwwxfgwxwwwwwwwwwwggwggwwvwwgxxggwfwwwxgxwwwwwxwgvvwwxxwwwwwvvvgwxxxxwwwxvwwggvwfwgwwwwfgwgWgxwgwgvgfhwxxwvfwgggvwwwwvgvwvfgwwwwwwgwwVwvuwwwwvwvwwwfvwgwfxwwgwwwwwwwwwwxwgwwwwwwwwvxwxxxxxwxwwwwwvxwwwwxwxxwxwxwvxwwwwxxghwwvgwwgxxwwwwwwgwwwfwwxxxxwxwxwxwwwwwwwwwxxxwxwxxwxxxxwwxwwxvwggwwwwxwggvvxgwwwwwgwxwhwwwvwvvwwgwwfwgwuwvggwwxwwvvvWwvvwwwhwwwwwwfxgwvgwwwwwwwwwxwxxwxwggvwwxwxwgwxxwxwxwwxwwwwxwwwgwxwwgxwwwwxwwvwgwwxxwvwxxxwwwwxwwxwwgwxwhvhwgwxwxwwwxwwxwwwxwwwxxwwwwvxxwxwwwwwgwgwgwgwwvvvwwfxwxwwwwvwwxwxwxwvwwwwxgwwwwwgvwwvwwwwwwwwxvgwvwwwvwwwxwwwgwwgwvwwwwxwxwwwxwwwwxwwvghwxxwwwwwwwwvwhwxxwxwwxxwgvgwvxfwwwvwwggvvwwwwwwxfwvwwwxwwxwwxwxxxxxwfvwxvhwwwxwwwvwwwwwwhwxxwgwwxvxwwxwxwvhwxwwwxwxwxwwghwfvxwewfwwgwwwwwxwWvvvwwxwwfxwwwwwwvgwxwwwxwwvxwxgwwwwvwvxwguwwgvwvvwwhwxwwVgwwgwvwvwvxgwxvwggxvwwxwwwwwwgwwxwfwwhvwwxwggwwwggwwgxxwwxgwxwwwwxwwwwwwgwwwxvxwwwwwvvwxxhxxwxgxwgxwgwggwgvfwgfggvfuxwvwwvfwwvwwgvgwfggwwwwvgggwwgwwwvwwwwwgwwfvwwwvwwwvwgvvwwwwwvwxwxwwwxxxwwggwwgwwwwwvvvwwhwwwgwfwwwwgvgvvghvvwwxgwwwwwwvWwfwxegvwwgwfwwggewvxvgwwgwwwwvWwwwwwwwwwwwxxxwwwxfgvwgwgwwwwvvgwwwvwwxwvwwwwxwwgwvwwxwwgwwxwwgwxgwxwwwwwwwwvwvwvwxwwgwwgwxvfxWffvgwfggwgwxugvwvvgvwvvwwwwgvfwfhwvwxwvvwxwgxxgwwwvxwwwWVvwwUwwgvgvwwwgggWWvwwUwwvgvwwwwgxgwvfwvggvwwvwwvxvvfvfxwgwxwhwwxwwvvwwwxwwwwwwxwxwhfwwxfvxwgxxvwgwwwwwwgwvwxwwgxxgwxwwwvxxwxgvwwhxxxwvwwwwwvwgwvxwxwgwwgxxhvgwvfvgwwwvwwwwwgwvwwwwwhwwwfwwwvwwwgwwgwwwwwwwwwwxwgwwwwwxxwvvxvhgwwwwwxwxvvwhxwwxhwxwvxgvwwwgwxwgfxwwfvgwwvwwwxgwwxwxwxxwwxgxwxwwwwxwwwwxxwwxxwxxgxwwwxwwwwxxxwxwxwwwwwxwwwwfwggwvgxwwgwxwwxwwwwxvxvwwvwhxwxxwwwxxwwxxhhwwwxgvwwhvwUgfeVfwgfgfwvvgfgwWwwvgfwwwwgwwwwwvvvwgvvhwwvfwwwgfuwgffuwggwgwwffvvggwwwwwvvyxwwgwwuwfggwwwwwffwwwwgfvwgggvwwwvvxwwgvxwwVfeTeegfvfVffefgwwwwfvgwgfvvVffuhVevwwggvxwgvfefffVfeugfffuvVffugwffvggwwwfgwwvwwvvgffggefVwwgffxwwgfwwuxwwgwwvhxhvwwwwgwgwxgvwxxfvgwvwvwwwwwwwgxxxgvxwwvwfxgwwxwxxwwwwvxxgfxwxwwwxwxxxwxwwwwwxwxwwwwwwvxwwwwwwxxwxwwwwxwhwwwxvfwvgvgvwgvxvxfgwfgwwwwwwwwgwwwwwxwxhgxwxwxxwxwxxvxwwwxgwhgxxvwwwwwxghgxwvvwwwwwwgwwwwxwwxxgwwwwwwwwwxwwwwxvwwwxxvwvwxxwwwxxxxxwgwvgvwvwxwwhhwwwwwxwwwwxxvxxwxwwwvwwwwwwwwwhxwwxwwxxwwwwwwwxhxvwxwwvvwvvggvwggwwuwwwwwwvwgwvvffhwwwwxxwwgwwwwwvwxggxvfxwwgwwwwgxvwvwvwvwwwvggxwgwvwwwvxwxwwgvwwvgvfwwxgfwewwwxwgvvfwwwwwwfgvgfgvxwxwwxxwwwwxvgwvwwwwxvxwwxvwxxxvgwwwvwxvvwwxwwgwvvwfwwgvwwwwwgvwwfwwwwwwgwwwwxwwwwwwwfvWwfgUfhevgfgfvewvwwwfvwgvhwgwvggwgwwwfvxfwvwwwxhwxewxxwwwgxgwwvwwfwguwgegwfwgfxwxvwxhwWvwwwwwwxwwwfgxgwvxvvwwwhwwwvwgwfgWfuxwwwhwvgwwwwvwgxwxxxwwvvfvgwwwwwxxfgwxwgwffwvwgwfwxxwxwwwwwwgvwwwfwwwxwwgwwwgwwwvwwwwwwwxxgxwwwgfgvhvfggvgwfgufvwwwwwwvWwvgvhvfhgwgxwgwvgvgwwwwhvgwwwwwwwwgghwwvwwwwxwwghxwwxvwwwwwwwwwfwhwhgfffvwxwvxwgwwhvvgxwwxgwvwxxwwxxwxxwwvvwwxxxxwwxwxwxxwwxwwvxxwwxxxwwvwwwwwwwwxwwwwwwxwwwvwwwwxxwhwxvvwwwwvvwwhggwwvgwuwwwwwwwvhgxvvhvwxwxwgwwwxxwwwvwxwwwwwgxwxxwxxgwgwgxxxxgvxxfxgxwgwwfwwwwwxxxwwgwwwvvxwwxwxgvwxwwwwxxxwwwwfxxxxwwwwwxxwwwwxxwwwwvwxxxxwwwwwwwwwxxwwxvgwhwgwwwwvvxfwwwvggvwwwwwwwwhxvxwxwwxxwxwwwxxxgxxxgwxwgwwvvvgwwwwfwwxwgwwwvwwwwwwwxuwgvwwwwwvfwfwwwfwwwwwgvvwxggvwwwxwwwxxwxxwgggwfwxwvgfxwxwxwwxxwwwxvwwwxgwwxxwxwxxwwwwwvwggfwwwwwvgvfwwxwwwwwvvgvxxwwwwwxxwwwhgxxwwvwgvgwvgxwwgwwwfxwwgwwwvwxvwwwwvgwgwghvwwwxxwxwwxxxgwwVwhfwvwvvgwwwgxxwwwwxxgwwwvgwvxwgwwxwvxwwvwfwgfhvvwfxwhwwxwwgvffvfUhggvvwwwwvgwgvwVfgfwfvgUxwhvffwwwfxwvgvfgwffgVWufffgvffutgfwwwwxgwwfvwwfvvgwUgfwfhwvxfvxwxwxxxxxxwwgvhwxwwgwxxwxvgwxwhwwhvvwxxwxvxxwwwxhwxwgwwwwwvvwxfxwxwwwwxwxxgwwwwhwxxwwwgvhfxwwgwwwwvvxwvwwWgvfggfgvvvgwwwwvvWvhUgvghvwvuewxfvgxwvhhwUfeFfeffgvuevvuWfwwwwwgwwwxgxvgffghgVfwwgggwwxexxxwxwwvwxwwwxxxxwxvxxwxxwwwxwxwwxxxwwwgxgwgwwwwwwhxxxxxxxxwxwwwxxwwwwxwxwwxwwwwwwhwwwwwwwwfwffhwwvwgwwwvxwwgwfxfgvgwwhwgxwfwxwwwwwwxffegegwvfwfwvfwufwxxwxwwwwxxxwffwvvfvwwwwgwwwvvwxwwwgWgwwwwwuwwfvvfwwwgWvvwwxuwhgvwwxwvvwfWvfgVfefvwwwhvfvwhwwUfvgwwwwvvvwxgwhvwxwxvwwhvwwvvvWffwWwvvwwhwwwvvwwxWfgffvwwWvwwvwvwvvwhfwwgvvvvhwgwwwwwwggwvvwwgvxwvgwwfVfvwhfgfwgwgFefvwwvwgvvwwgvvvhfewwhwwxwgvwxwwvwghVfgwfwhugwwvwxwwvvwvgwvvwwwgwxwxwvwwwwwwwwwvwwwwxwxwwwwwvwwgxvvgwxwwwvwwwxwxwxwwwxwwwwwwwwxwwxxwgwwvwvwwwgvwwwwwxwwxfgffwffffwwwxxgwwwvgfugvggfvxfwwwwwwwwwwwvwffuffwfffvwgwwevvwwxxwwwwxwwgwwvfwvfvwfwwfggwxvgwwvvvVfvgwfwvegfeWvwwwVggwvvwuvgvggwwwwffggFfugwVfvgvvwgvggvwwgvweEvgvgwfwfvgvwwgwvwwxwgfgwxwvwwwvfWefveggvwgwwgvvwwwwWeWfffvgegwvvvwxvvwguvwvggvfgwgwwwwwwxvxfvggvvwwvvwwfgwvhfUgfgvVfVhggTVvfvgvgvwugvgwffeewfgwwwWgfwxwvfgggfVgwwfwwgewwwwwWvuggWwVvggwvgwgwWvuhgXwWvggwvgwgxwfgfgefwwwgvuvfwwgwvfvwhwgwffvwgwhwvvuwwvgwwwvggvgxhwwwggwgwwwwgfgwwwvwwwxwwwgvfvwwwgwwwgwwwggwwgwwxwgfgwwxfwvwxxwwvwwgvwwwgwwwgwwxgffewvfvgghvwWfvgfvwgwvwuvvggvgefhxgwvwwgghwwwwvwvwffwwvgwgwfwxwwfggwxvwwwwxwwxxfghxvwvwgxgggwfffxwfgvwgwwggxxgwgffxwwwwwfwxxxxxwxwwwxwwwvwgvwwgwwwwxxwwwwhwwwwwgwwxwwvwwwwwwhwwwxwwxwwwvwwxwgvvvwvwwggwxVvwvfwwwwwvwgwvwfvwhxwwgxvxxwwxxxwgwwwwxwwwhwxwxhwxwwwwxgwwwxvwhxxwgwvwwxwwwwxwwgvwxvwxxwxwvwxxhgxvwxwxxwxxwwxgxxwwxgxwxwxxxwwwvwwwxwwwwwwwwxxvvwxxvvxxxwgggwgvwvfxwwwwwggwfgwwwwgwxgwggxwwwwwxwwgwWvwwgWgVwfgwwwwgvugvwwwwvwxvwvfwwwxwwwggwwwwwwfwwwxxxwgxxwwxxwxwwxxxwgwwwwwxxwgwwwwxxwxwwwwwgxwwxwwxwxxvgxhwwwwxwwWwgwwwxwwfxwxwxxwwwxwxwwwwwwwwxwwgwxwxwwvwvggwwfxwgwwwwfvwwggwwvwwhwggxwwwwxwghwuwxfxvWwwwwgfwwvvvvgwxwxxwwxwwggwwwwvwwgwwxwwwggvwwwvxhwwwwwxxwwwwwxwwvwwwwgxwwwwwxwwxwwwxxxwwwwhxwwwwwxxxwxwwwwwwwxwxhwwxxxwxxwxwwwwxwwwwwxwwvwxwxwxgwgxwwxxwfwwwgwvvwwwwfwwwwwwwwwwwwwwgxgwhwwwwwwwgwwwgwvhwwvwwxwwwvwvwwwvwhwxwwwwgwxxwwxxwwwwwxwwwwwxwwvvwgwxggwxvwwxwwvvwgwgwwxxxwvvwvwwfvvvwwwwgvvwxwxggwwwwwvwfxxgggvxvwgwwhgvwwwUwwggwgvwgwwxwvwwvwvwwwwwwxfxwwwfxwxwwxwwvxhwwwwhwwwwxwxwwwgxwwgvwgwwxgfveegwxwWVuvwwwwwfwwfxwwwfvvwwwgwggwwwvgwgfwxwwxwgwwwgvwwgwwwwwwwwgwwwwwgxvwwxwxwwwxwwwxwxwwwvgxvxwhwxwwhwgxxvxxwxxwwxwxxwwwwwwxxwxxxwxxxwxwwwwwwwxwwwwvwgvvgfwxwwgwwxgwwgwwwvgwvvwwwwwwwwvwgvwghwxgwwwwxwwvwvwwwwvxwxwwwwwwvwxwwgwgxwxwxwwwgxwwxwfvwxgwgwwwwwvhxwxvgfwwgwwxxwgfwfwgufwwhwgwgfguwwwgvgwwwxwwgwwwwgwwwwwgwxwwwxxfxgwvggwvxwwwvwxvwgwwxxwwwwwvwvhvwwxwgxwxwhwgwggvwwwwxgwwwwwwvwxwwvvggwvhwxffhVfvugwvgeffwvgvgwuWwvwwwwvvvwgwwxugwewwwvhvwvvxwxghwwwwxxwwWfwwguwwvwwwgwvxwXfwxguxwvwwxgwvxxxwgffwwfgwxwwvwfffwxggvwwxwwhwwxwwvgwxgwwfwwfwwwgvwwuwvwgxxgwWwwwwwvgwwgvxwvwxwgvwwxwwgwvwwwgxwxwxxwwvgwwwwgwwxxgwgxwwxgegfffvghgVfffwwwgwvvwvwwWvvxwxwwwvwggwxwwfvwxxwwwxgwwwwxxxwfvvgggxwwwwwwxwvvwfwwgxwwwwwwgvwwgwvxvxwwggfvfgwwvwwwwwxwgwwwxwwwxwwwwxxwwfwgxgwwwwwwwvxfwxvwwwwwxwwwwxwwwxwwfwwwwwwwxwwxvxwxwwwwxxwwwwwwwxwwggvvfwwgggwwvggwwgwvwxxwwvwgwwwxvhhxwwwhhvwwxwxwwxwwxwxwxwwhvgwwwfwwwwwwhvwwwwwwwwxxwxxxwwxxwxwwfwxwwxvvwwxxwwxwxwxxxwxwgwwwwwxwwwwwxxxwwwwvgfVfVwffUfgfvwwxwwwwwwwvwgwffvwgwwwgvvvfvwwwwwwwvvwwgffWWvwwgggffvwxwxwwwwwwwwwwwfffwvwwwwvgwfwxwwwxwwwvwvwwwfwwxgvgwwxvwgwwwwwwwwwxvwwfwvvxwfxfwwwxWvvfwwwvwvwvwwwwwgwwwhfvwwgwggwwwwwgffwwwwhwwwwwwwwwwwwffwwfwwwgwfwfhwWwwvwvwhwgwwvgwwwxwvwewwwwgwgwvwwffwfuwfwwwWffggfggVwgwwwvfvwfwwfvwvwwwxwwgggwwhffwxvwwhwwwvxxwwwwwxwvwwwxwgxwwfwwwwwxwvwwwwfwxwwfwwwwwwwxwxxwwwxxvwwwgxwwgvwgxvvwwhwgxwwwgwfVvgfwvvwwwvvgwwwxvwgevgggwxwwwxvgvgwwWwwfwvvxwwvvgwwwwwxwwwuvgwxvvwvwxvwvWvwgwvgwwewwgfvfwgwwwwwvwwwwwwwxwwgwwwxwxvwfwwwgfxgwwwxwwxwwxwwwwwwxwgfwwwxwwwxwwwxgvwwxxwxxwxwwxwxxhwxwwwhwwwxvwwwwwwwwxwwwwvvwxwgvxwwxwwwwwwwgvwwwxwwwwwwwwwxvfxgvgvwwwwwwxwwwggwgvwwwxwwwxxwwwwxvxxvwwwwwwwvwwvgwwwwhwwwwwvwxwxwxxxwwwwwwwfwwwwwwwvgvwwvgvwwvggeWhfvvwxwwxvwwvgxuVgwfvvwwwwvvgwwwwvwwwwwwwxxxghwvvwvwwwwwwwxwwxxxwvwwxwwwxwvxfeggwgwwwwgvvxwxwvwWvvwgvwwwwwwwgvvwvwveggggwwxwgvvvwwwvwgwWvvwggwwvxwvxwvwvwwwwwwwvfwgffwwwwwxvwwwwwvwwxwwwwwwwxwgvvwwgvgxvwwxwwwwwwxxwwwwwwwgggwwvwwwxxwxwwggwwwvwxwwgwgwxwwwwfxvwwxxhxhvvxvwwxwwwwwxwwgwvxxxwxwwwxfwwxvwwwwwwxxxwwwxwwvvxwxxxwwwwwwxfgwvwvwxwwwwwxwwwhvwvvwwxwwwwwwwfwwvwwxgwgwvwvwgwwwwgwwwwwxxwwxxxwwwwvwxwfwwwxwxwwwgwwxgwwwgxggwwwxwwwxwgwwxwwwwwxwwwxwwggvwwxwwxvwwvwfwxwwvwwwxwwwxwxwwwwxxwwwxxwwgwwwwwxxwwwwwxwxwwxwvwwwxwwwwwwwwfgwgwwwxwwwwwwwhvxxxwwwwwxgvwvwfwvxxwvwgvwwwxwwwwwwwgwvwxwxwwxxwxwwxwwwwwwwxxwwxwwwwwxwwvvxgxxggwxwxvvwxwxwxgvgxwwxwwgxwwxxwwyxwxxwxxxwwwwxwwwgwwwwwwwvwxxwxwwxwwxxwwxxxwwwxxhwvwwwwufwfwxfwvgvgwxxfwvfwwffwgfffuWvufwfwvfwwhvggwfgwfvgefVgwwwWvgvvGeVVvgfVuwwwgevggwwgvxwvgffwwhfvwwwwwweVwgvvggwgwvxgwggwvxgUfegvgxwwgwwvgfwwffwwvVfEwfwwgvgewVffevgUewgVewvvggwvwfwwvgwvvWfuVeffvfgeVgwvvfgffffvfgwwweVvfgffVevvwfwwwfwwgvwwxfwwwwfvwfwwwgvgwwffgwuwgvwwwwfwwgfwwgfvwwgvwwvfwfwvwggfvfwvfwxfwxgvwwwfxwwwvwxwxwxwwwwxfxxxwwwfwfwwwwwgfwwwvwwhfwwwfwwggwwfgvwgvffwwffgwwwwfwwfxwghvwwwwfwwwfgvgwwwgwxxwwhwwwuwxffxwwwwwvfwwwevgwgfVgwvfgwvvvwvvffWghffffWwvfgwvvwffgwtwvvvvvuwgggwfvgggfvvwgfwwgggwffgfVwfgggwvfgwfvwwvvggWggfwwxwgwwwwwwvwgghxgwwwvvwwffgwgvgggvvfwugggggvfgfwvfvwfWgwgggwwfgwfvgfggvggxxggfvvvgvwvwwwwgghgxxwwughwwuwfvxxxxvwvwwwwuvfwwwvvhgvvhvgwegwfugugVfvvvgwgvvwwwvfvgwwffvUfwfefvgfvfwfgwwgwfeWfefvwVfvgEvVVfgvfwgvfwegwvugvWfegwfwvfwgvwwvwgwhwwwvgvgwwwwgvwgwfVegveffefwfufvgfvfgfVwwgwVfGuvfwgfevgVvefegvwXvwffxwvwggvgxvhwgwgxvwwxwvhvvwxwvwwvwvgxwffvgvwwwvwggfggwfwgvfhffufgveevfgvffgfxwfvwgvwfvwwtwgguvWvvewfgVvwfwwwfvVgevfwvgVfeVvFeWfwfwfgVfefgvvevfgvfvvvggwwgwfwfwwvgvvggwvwgfwvvhgugwwvhwwggguwguvewfgfvvfwwwfeEgVwfwggfvffuVfgfwvgxwwwwfwvwvwgWvvvgvggwxxwvwwwwvwvvvvwhwvwfwfffgvgwgwwxffgWgggggwvvwvfwggWffffWgggfwwvvvfggwtgwvfwvfggggfvgwgvvvvgfwgfgggwwgvWfffgggggggvfvwvvgghWvfwwxwvwwwwwwvwhgghxfgvvvwwwwwvwfwggfwvwwuvggggfvwgwvffvfWgvggggfvwgwfvvgggxggwxxwgwvvwfwfgvwwwgghgxxxwhhwuwwuwgvvxxuwwvwwvxwfvwwwgwgwwgwfxwwggvwfwwgwgvwffwwggvwgxuxfwwwxfvwwfwxwwwfwwxfwgvgfwggvffvwhvwwgvwwfwwwgvwfvwwwxwxwxwwhvxwfgwghvwwwwhwwwwwwwvwwfwwwwgxgfwwvwffvwgfvxwwgvvgvwwgvwvghxgfvvvwhvwwwghwwwwwwgvwuwwguwwuwwwfwvxwvwgvvwffvgwwxwwwwwwwvwwvxxwwwwwwwfwwwvggwvxwwwwvwwvxwwxxxwwwwwwwwxgxwxwwxwwgwwwwgwwxxwwxwwwwwwxwwxwxgwwwgwwwwxwgxwwwwwwwwwwxxxxwwwwwxwwxwwxwwwxxVggfgffwveffvwfffeVguffwwfgVffwfvffgfXuwfevvwwwffVUgvfgvfVgfVdfwvwgffhvfWeFefffUVefVgfWdefvwvfVgVguvvgvwfvgUfffvgwwuxGuveVfvffwwgwwxgVffgfuvvwgeefvwegVVEWteUfffVVEcVfgwVfVgvvfVWVffffVfvfgWeweVfvffwwVvggfVfVgVduvvWvwfffwgVVgufffegvgewvvfgfgvffVgwUefwwfWfgwwgvfvwwgvvfhfvvvvvhgfvugvgvggwvvvfvgvwgWgfVhvvvvvwugWfUfgwwvfhfwweWevwfvvUffvggWvfvwgfgWfXvvewvvwwwgfwggwvghwvevgfufvuwwgxwxfVgwgvvuvwVfufwwvgfeXvufvwgfgVvdWfvwffXwvfeGvvfvwvfegwwuvgevfwfwwgwweeWggfevvwfwfgvwwfGwvvffevwffvvvfvgwwgfvfwgffvwWgffggweuvwfwffWhfewfggxvfvgwwfVgvgwfwfufvvvwfWVheVwfgvgfgtVfvggwWhffwGgeVvvvwfevfvwwfggwwwffghvfgvgwfwwwvgggggwwwWwfefvwvvvgwxwXfVgfwewvwvVfvvgwfvgXvfwfwvWgwuVwvVwwfhvwgVfufgufgfVuvWwvVVvguvwgwwwxgVfggwVfvwfvgffvgvGgvgvvffwgfgvwwgwfwwfVfvwfffevgwwgxxfxwhvvwggevgwfgfvwwwwgdvwwwxUwfWffgggfwgffgwxwxwwfgfvvwxwwgvwUxwfWuffgwwgwwwwwwwvwwwgwxwxuxwfvxfwwhfvwvwgwfggeffxgvwwwwffffwfwwvwwxwvvgwxxvuwxwwfwxwwwhgxwwwfggwwwgfvwxwwfWwfVfwffdWfugwffuefwVvgwfwfgfvgfefffwWeuVfvVwffuTUvEUgegeeWffeVffvefwffCegVfffffeffwfeefwfwffvefvVfWfVgvgvwffvgwwvwFgWVffvfuwvwwxWfefgfwVvwweffvwwvvvUuvffgvWfvfUffEfffvvffTvvgfeefVuvwVwVVffufvvfegfwWfefgfgEugWwgVvgvweefuveffwvffvwffgfgvVffgvVUfvfwvwhxvvxwgggvvwgweuvgvgWgwgwweGggwfwvxhXgfgxwwhvwgffuhxwgwgvfehvvggwhwhggvvwwggxfwvgwwwwxwxgxxxwvwwvwxwxgwxgwwhwvuvWgwfgwggwvwWVfwvgxwvgvfvwWffgvvxwwwfgwugvwvgwwwVwxwgvwvwwxwxvwvvxewwxwxvxgwuwgfgvvwhfvwwwgwgwvVVgwfwVwvgwwufGgvgWwvgwvWggvvxhwwgffWwvgwvwvgeuwvvvfvxvxgxgvvxwgwvvwvwwxwwwhwxhwwwvwgwxxxxwgwvwgvgghgvvvwhwwVfghxhxgwvgfefwvfxwwhggwevwwwwgwwxwWwxgvvwvxwxwwvwvxWgwwxgxwgWxwwghfuwvwggwwuvxVwXffwwvfuwvggwgwwwffgFwwwwgxghwgwgggvvffvgffwhwwwwfewfwwfwgwghxwxgxhwgvvgwwwwwxwwxgwwwwxwxwxxhxxgxxvfxxxvxVxWffvvwxvwfgggfxwwwffvgwgwhxvgwwuwwxwxgxgxwfxxwvvvwwwgfvwwxxwxhgwvwfwfegvgwwwvggwgffxggvvgwgexvfvwfvwgfgvvfwvwgwwgfwwgvvgwwwguwwwgwfewwWvwgVwwffwgvfvgwVgvgWvvwfhggvvwwwxfvgwwwwxwWxxgvgxxweggwvwwgfvvvwwhgwggvVgwvgVgVguvvvfvVtwvwfwgVxvffvgEwwwgvvgwfwgwfwxgvgfwgwfVfuvwwxwwggfwxwwWwwvwwgwwgWgvgxwwvgffvwwfvwehvggwwvvwvwwfgwwvvvfwegggvfgvvwwfhvvfwwfgvwvfhwvvvvwwwfwuwwgwgfWwwvweggvguwvfvvggvvvVvfvufWwgvvewwwxvwhwwgvwwxvxwvgwwffVgwxwwfvvuwggwwvufwuvvvhggvvvgwgWvdgvgvweGvvvvvfXwwwvfvgvxufwwWffgvgxwggwvvwwwgwvWwwwwfgvvwwwwgWgfwvwwwwffvvgfwWhevgwwwfvgvwWheggewfgVguwfwvvwWgvfwfgwvWvvghugwewwfwwgwwwvgVhvvvgvFguwwwfwffgvfvwwgfgwggguwwevvwvvwvvwwvwwwwwxfwwwwvfwvfgwvgfwevvwgwfWfggwfguwweffwfwVgwvvgfgvvwvgUgvfgwggfgfwhggxwwvefwgwwwwfvfvvgggVvwwhwgvvwwwhwwwWgvffwhwwvvvfwfggwwxwwxxhgxwwwwwxggwgxwvwfuwwgwwwwxghxgwgwgwwvwwxwxwwwwwwgwwwgxwxvwwwxghhwwvgvxwxxxwwwxvwxwwvgwxxwxwgxwwwwwwvvwxwxggwwwxgwwwwwvwwxxwwxvxxxwgxxxxxwwwwxgxxxwgxxwxxffwUfwvvggwgWwgVvvvwVgwUvwhfvWfwwvvwfvwfggggUvvgwVvvwwXvgwwggvTfgwwfevwwwgvfvfvfvgvuffwwwVfwwfVwwgvvwvwwwvwwgxhvvxgwwegvwvvxgvvgfvwwwxvwvfgwwwVvgwgVvgwghevgvggvefwwvvvfvvfwvgufvxwfwxgwwfvfwvwxwfwgVfgwwxfvgwwwwegvwwwxwwuvggwwxwffggfxwfggwvxwxwxwhvgwvhwwhvggwwxgvgwWwwvwwwxxvgwwhwhwvxwwwwxwvxwxvwwwwwwhwwhxvwxwxwwxwwgwhwwwxxxwxxxxwxxgwxxwwgxgwwgwgvxxgwwxvwwxwgwvvwwwwwwxwwxxwxgxwxwgwwwxwwwwwxxwvwwxvwxvwevvwhxvwwwwwwwvewvxwwgvwWwvwfwvfwhwxxwwxxwvvxwwwwvwwwvvwxwvwxvvfwwhxxhxhxwhxwxxxxwxvwwwwwhwwwwxwxxxwwxxvwvwwwwvwwxwhxwwxhwwxxxxwxwgxwhxwwwhWhgvwgxhxgxfgwgwWwgwwgwwwWvgwgvxxwwgwwwwxgxwwxxxwvxxwvvvvwwwxwwxwwgxxxwwfwwwwwwxvwhxxxxgwwwxwxhwxxwxgfgwxgwxwwwxxvwxwvwwwwwwwwwxxxxxwxwhwxxxxxxwxywhxwxwhwwwvvgwwgfgvffwuwwwvwvwwwwwwwwwgwwxgwwgwfWwwfwxwwggwffgvvwgfgfvwgxfgggwgwwgwfWvggvwfUfvFvffwwwwwVfgwwwwffvVfvwgwWwgffwwwvwwwwwwggvwwfgwvwwUvvevwxgfgfgwfugvvfVvwfVhwwVfwwwxvffgvffvwxgwgvfxwuvgvwgwgfvvwgffvgWgWffwwwVfgfgffVwvfvwfvwvwwgwwfwwwwfvxvwwxwwhgfwwwwffxwggxwvffgfwxwwwgfewvwwwwwgvxxwwxwwvwxwwwgwvfwfwvwwwwgwxhfevxxgwwxxwwxwwxwxwwxxxvxgvwwwxwwwwggfwxxwvhvxxwwwxwwwwvgvxxwwwxxwxwwwwwwxxhwwxxwxxxwwwwwwxxxxwwwxwwxwwxWVgwvvwwxwgwxwfxhwwvwwWVgwvvwwvvfgfwhvgwwxwxggwxwvwwgwwwxxxwxgwgwVvwgwvvwwxwvwxwwhxwvwhxwwwwxwwfwvxxwwxxhwwvwvgxwwwwwwvghgwwxwxwvwwgwwwwhgxxgwfvvfgwwwxxwwwvwgwwwxwxwxwxvwwhxxwwwwwxwvwwwxwwwwwwwwwwwwfwfwwwwgwwxxgvhxvwwfwxgwvwxwwwwgggwfgwwwvwugxvwxxgxgwwwwwxxwwfwwVvwwfwwwwwwwwvxugvvwwwxwwwxxwwgwvxwwxwwwwxwvgxwwwwwwwvgfgxvvxxwwgwwwgvhwwxwvfffxwwwwvwxxwwxwwwxvwwxvwwwvwxwwwwxwwwwxwwwwwvgwfwwwxwwwvxwfwfwwvwgvwggwgwwfwfgwfvhwgxwwvgwfwxuvwwgvwwwwevwwwwfffwVvwgwwgwvwwwgggxfwwuwgwwwwwwwgxwwwwwwgwvxxgwwvxuwwvwwwgfxfwvwwwgugfwwwwfwwvxwwvfuvfwgvwvgggwxvgwvwvwxxgwwvwwuvwwwwwwwwwxvwwxwxwgxxgwvwvwwfhWvwxwwwwwxwhwwgwwwwVhWxwvvwgwfegvvgwwwvhwWgwxfxwwfwwwwvgxwXgxgwgwggVfxxvwxwwvwxwwwxggvxwvwwxwxwxwwxxxwwwwwwwwxwhxwwwvwxwwgwwwgwwggxxwwwwwwwwxhhxwwwvgwVvxwxhwxgfwxvwxwwfxwgwwwwfxwxgxwfwwwvvwxwwwwwwwvwgwwvwvguwfvwwvxgwwwvWuxgvgugwxwgggwgewvvggwxwxgvWwwxxwwfxgwxgxwwfwvwwfxgvwwwwwxhhvxxvgxvvwwxwvxxwxgvxxwwwxwxwwwwwvxhwwwwvguwxwwfwwwxxwgwgwwwuxwxwxgvxwwxwxxgwwxwxxwggwwwxxxxwwvxwwghVgefxgwwgvwWvgffgfVgvwVwefvwwggvFfwwwffwhxgugvefffgvwfwwwwwhvvggwwwwvvfgwvVwwxvwxhvhuwgefvfvwwxwwgwfxwwwwxwvwwxWwwwfwwfVvxwwwwvgvXvwwfffVvwwfxwwwwwxhvvggwwwvfvwvfgwxwvwwxwWwwwfwgfVvwwwwwwwwwwwxxgvxwwwxgfvwxwfgwfhvvwgfwfueggvwfvvwwgVgvfuvvwwfgvgvvgvvfvfwvvwgvfWgUfwggwegvgUgfhvfwwVwfgwgWefgfggeevwVfgvggvufwvwvvvgvwwwwvVVfvvwwwwgffeuggfewvgWvwwvguvfvfgWwgfuvfgEggfwvfVggEgVhvwwgfvvvvvffUfVfwwgwfVgVgguvwwwwgxwwvggGgffefgvwvfwwgwvffvfffwvffwvfgwwwfvwvgffgvVvvfWuuffwwfvvuvfgefffgvfgfguweVgffgvefewffveeeFfgfgfvgwUffhVefwfdfefvvUfvefgVfevWudfVwVeuTvwvWfffVfgvwgweVeguwvfvfffVvVuedgwfWfgggvwFeefgvefWwgvvefT6UVfffgVvfWfWfffvVeVfvvfVfTVewuwgvfffVwgvvegwfgfwxwwwUVfffefvvwvefwgfwfgeffefgVeuvvgwgwfvggwVgfgveefvtUfVVvWTgeWggfvvfuffffgfuwedufvufeVfwgewfWgVVVegfVV6VTgffffffevffwfVffvfguffvuUfgwwwfgVgfefffwgwfwwvWVfvwewvfWffUVvfTveggvffwfwwfeVfvufgffvgegVgVefgfwVfFFfehfVVfvvvgvfgfVEVfvvuwvfgfeUfwgewvwhvfvwwwWVVegeffwvfWvwgvwgffffefvfeUfwgvgvgfuegvwxuggffwvvxfvwgwvvuGggwVwggwfvhgwvvvvwwvwvffwwghWhhfVvwvvgwgxgvxwgxvvWwWffvwwfwwwwwhxxwwvuwwvvwgxgwewvwfwwgxwgwxwwfgggvvwwvvfVVwwgwggwgfgwgfvvguggvxgvvwxwxwxxvwwxxvwxwxxgwgxVwwxgxwxwwxhWwxgxfxwxxfgfggvvvefgvXevfuvgwevwwefvgvvwgwevgvwffuWgvXfgvfvgwVfwTffvfwvgfwTevwgvvggefwfWfvfvwWvfgvhVfvgwwwffwwfvggwwvwgwvWVVvwgwVvwffuvwfevwgvvwwwggvvvvhfgvvwwvfVwUfvwvwggWgUfvvfvgwvfuvwfVUgewfwwfwwfevvxwVfwWfvwwxggtvffffggvfvwfvwwvfvfefgwfffvwwgwwwfufvwgwhuxWffXxgwxfufvwgffvgtvwvwwwwwvgwvgxwwxffffwvhxvwfvwwwxvgwxwhwgwgvvhwvwfxwvxwgwwwwwwwwvggwwxwWwgxvhvxxwwxuuWffvWxgwwvfefwvvgfgffwwvwvgvfvwgwgxwwwwxwWhxgwxxxwvwwxfxwwwwvxvggfwwxwwxfWvwvvhgwfvwvgxwwfWvwvvgwwvdffvwwwwWwueffwWgwvwgffvvvvgfgffuwwvwvgxvwwgwvgXeffxXggwwvwwwvwwwhxWwwgxwwgwhwvvwwhvvwvxhxgwgwfvwvxhggffwwwxxwvwwgxWwwwxxxwxhwhvvwxxwxxvwvgfgwwwwwwggxxxxwwwxxhuegvhwguxwfvfvwWxwwffvvwwVvwwvduvvwfwvfwfwgvgwwxvgfvfwwgWggeevwgvfwgwvgvvxvwhvwUvfvhhgwwwxvwwxwwvwVggghwwxwWwgwwfwwgwhwxwwvwvfgggxwwvwfefwwwwhhwffwgvvghhgvvhwwgxwwxgwxwgxxwwxxwxxwwWwvwhvwxxvXghwfwxwwfhxwwwwgxwvwwvwwwwwwghxwwwxxwwwwhwgwwvwwwwwwWWvVfwVvwwwxvxwggggvgwvwwwwwwghwwwwwvwwwwwwxwxxxxvgwxwwwwwvvwwwwwwwwwwwwwghwwwwfwwwwwwWhgWwfgggwfggxvwwVvwwwwgwwwvwwxwgwwwvwwwwwxgwwwwwwwwXeVUUgefVefffgVfwfUUfevffffffVvfwffwxwwwwvwwwxwvfvwwwwfwwwwwvwvgvwwwwvwxwwwwwwwwwwwwwwgwvwvwxxfwwxwxwwwxvwwvwxwwgwxfwwwggwwfvwvWfwwgfvwwwhgwwwwwvwwwwwvwwvwwwxgwfwwwwxgvwwwwgwwxwhwxwwwwwwwwxwwxwvfgwxwwxwwxxxwfgwgvwwghxwwgwxwwwwghxwvgwwgxfhxwwvgxxwfwhxxwwwwwxwxxxxgvwxxwxwwgwwxvxxxwwggwvwwwwwwxxxxxxwvgxgwwvhxwwvgwxvgxhwwwwwwxxxgggxwwwvxggwvvwwggwxwwwwxvwwwwwwwwwgxwwwxwwgwwxgxvvwwwvwwwwwvgevwwgvggvgwwgvxgwwvgwvwvgvgWwvfxxugvfgwugwvwfwwwwgwwvgvxwwxwvwwvvwgwxwwfwgevwvwggvwhwwvwgwwxxfvwwvwwwvgxvwwvWvvgwugwwvgfgwvvWxvwfhwgwwvwwxxgwwvgxvwwwwwwwwwwwgwwfwwxwvgwwwgwwvhwwwvgwxxwxwwwwxxwwvwwfgvvwwwwvxwwxggggvewwwgwvwxwxwwvfwwvgwewwggvwhwewfffwewwvwfwvxxwgfwwggvwwwwwvgwwvxvwxxgvgwxwwxxxvvwfwvwwwwvxwwvwvwwwxwfxwvgwVwvwguwgwwVgfwvvfvwvgxWvgghwvgwwvvfwxvwwgwvwwvgwwgwvwwwxwwgwwwgwvgxvwwwgwxxwwghggwxxwvwwxxxwhgggvvwwghhwwfwxxwwwxxwvghxwgwwwhhwwwgvhhxwwvxhwxwwxxwvvwgxxxwwwwvwwwxxwwwggwvgxwwwwwhhwghhgwwvxhgwwwwvxhvvhxvgwwwwxxwwggwwxwggwwvwwggwxgwwwwxvwwwvwwwwwwxwxwwxwvgvwgwgwxwwfvwwvgvwwwwvxxgwfwwwwvgwfwwgwxugvwwwwgwwwwxwxxwgvxwxwwwwxxwhvxgxwwxwxwwwgwwwxwgwxwwwwwwwwwxvwvwwwwgwwxgxgwxwwwwwwgwwwfwwwwwwfwxwwwwwwwwxvwwwwgwwwhddUUffwwduwWeUEwwVVwwddUUfVefcfffUffgfvetwGUVVwweUwwfeevwgeuxgVVffvfgeewwwvfgwwffwwetwGUUVwweewwVfffvwgffwwffFwwffvwwwwGwwUUwwwwwwwwwwwduwWeeEwwUVwwfeevwgeuwwgVVffvfgeewwvfgwwFwwffvwwwwGwwUUwwwwwwwwwwwvwgVuwwwwghvwwwwWevwwwffwxwwwwwwvwwwfwfVwwgggvwwwxffwwvvwwwvwwwwvwgfwfvfwwvwewwwwwwwfgfvfvwvwgxwwvVvggwffwgvwgvwefeVugghgfugvvgwvvwwfVfffxvwgwfvwvxwxxweffvgfffwwwgwwvwwFvgfgvVvwwwgwvvUvfgfwfgfWxggegvvvwfgfwwffVgfvwvwwwvfvwgwvvwwwwvwwwwWefffffVvuwffwwwwxgfwwvfwwwwfwgfwwwwgfvwwxwxwggufwvwwggwxwxgffwggwfvwxwhhvwvwwwfxxwxwxwwwwwvfwwwvwwwfwvwwxwxwggvwvxwwwxvwxxxxwwwxxwxwwwxwwwxwwxwwwfgwfxxvfxxxxwxwwwwvvwxwwgwxwwxxwxgwgvxwwxwxwwwxvxwxwwwwxwwwwwxxxwxegXgwwxghwgwuvgxwgwvxvfhXwvgfVgwgxwfwwwwvwwwwwwwwwvgwhwvwvgWhwVvxwgwxvxhwwxwwwgvvvwwwwwxwwwwxwwxwwgvxwwvxgwwgvvwvxwwhwwwvvxwxwwwwxwvxxwwwwwghxVvwwxwvwwxwwwxxwwhxxwwvwwwwvwwxwvgwhwvvxwwxxwwwgwwxwwwvxwvwvhwvwwxwwgggwwgwwwuhwvvgwhgwgwvvgvwfvgwwwgwvvggwvwwwwgwvwxwxwvwVvgugfgxwwwwvxwwwwvwgwvfhxwwwhvxwwwwwwwxvvwfwwvxwwgwvwuggvwvwwxwwvvwgwvghwvwuwwvfhwuwwwwwwwwgvvvggvVxvwfwwwwwxwwwwgwxuxgvwvwxwwwwwvwwwwwxwxwvghwwwwxwxwfvgwvwgwggwWvxvwwwvwfvwgvwwvwwwwfvwgwgfwvwwvhwxwwwwvhwVwwhwgxfwvwwwwwwfvwfwwvvgxwwwwwxwwgwwwxxxwwwvwxwwwwwwWvxvxwxwwwwxwxwxfhffvgwwwxwwwwwxxwwwwvvwvxwvxvwwvwxwwwxwwwxwxxwwwxwwwwwguWhggwwwfwwvvxwwwvguWgwxvvgwvvvxxfvwggwvwhxwwwvwwxxvxxwgwwgxwwVvxxfwxwgggwwwwwgwvvwhwwxwwvgxxxwwwgwwwhwxwxxwwvwwwwwwwvvwxwwwwwwvwwgwwgghfvwxwffgwxwfwxxxvgwxwwwfwwwxwhwwxvwgxxwwxxwwwwwwwwwwwwwwvewgfwvggwvwvwVxhvwwwvewgwwgefwvhgwvxvwwUwhwwvvwgwxvwgwvxvfwxgwwxgwvgwxwuwewhwwwfwgxwvvxwwgwvwxxwwvxwwxwxwwwvfxxvwgxwwwxwwxwWwvxwwvxwgwvxxwwxwwwwwwxgwwvhwxwwwgwwxwvxxwhvWVfhwwwfxweffVfwfwgvfWVfwvwGwwgfwfvvfvfwwgfVVfvwfwgvgwwvwxhwgvvggWggvfgwwwwwxvwfwxfVVffwwvwwwwgwwwxgvwwxwxwwxwxWfewfwwwwwvwwxgwwfxhuffVfwwvwwgwwvwwxxhwgvvvfgggvgvwwwxxwxwwxxWfewfwwwwwwwxwwgvwwxxxwwxgvfvvwwwxxwwwwwxgwwxwwwwwwwwxwwwwwwxwwwgwwwfhxwwxwwwwwxxxwxwwwhgwwxvgwwwwwwwxwwgwgwwhvxxwwwwwwwwwxwwwxvwwwvxxwxxwwxwxxxxwwhwwxxwwwwxwwwwvxwwwwxwwxgwwwxwxwxvwxwwxxwwwwwxxxxwwwwxwgwwwxwfxwwwwwwxxxxwxwwwwxvwxwwwwwwwxxwwwwwgvwwvhwwwwwwwwxwwxwvwwwxwwvwwwwwxwwvwwgwxvwxwvwwwwxwwxwwwwwgwxwwwwwwwwwwwxxwwwxgvwxwwwwwwwwwxwgwwxwxwgxwvwwxgwgxwwxwwwwwwxxxwwxwwgvwwwwxxwwwxwxxxwgwwxwgwygwwwwwwwgxvvxvwwxgxvwwgwwggwgwgwwwxwxwfgwwwxwwwwgxWgvVwwxwwvxxgwxxwwwvwwwwwwxwfxwwwwxwxexwwwwwwwgggvvxvwwfxxxwwwwxwwwwwfwwgwwwwgwwgxwwxvwwxvwvwwfwwwgwwwwxwxfxgvxgwwwwwxxwgwxwvwwxgwwwwwwwxxWUuwvggvvwgVegfvwvfgvgWUvgvgfgvffvwgxwvwgegfwvfwwhfwwvxwwgwvvfffWxwwhxwhwvggvwvvvUvggwfwvwwvvxwwwwhvwwwwgfwwwwwvfwhvwffgvwwwxwvwwwwvvvWuvggwfwvwwfwwvxwwvwfgVwgxgwwvwwgwwwwvvwwhwwffvwggwxxwwwwwvxxwgwvwxwwfwwxvxgwgfwwwwgwwwwwgwwghvxxwwwxwwfgwwwhgwwggwwexwwgxwwhvwwwwwgvwwghwwwxwwwevgvxwwwewgwwxwxxwxwwxwwxwfwxxxwwxwxvgwwvxwxwxvwfwwwwxwwhwwxwwwvwfwwwgwwxwwwvwwgwxxvwuwwxwhwwwwxfvfxvwwggwvwwvwgxwwwwgwwxwwwvxxwwwwxWUgxfwvgvwwguffwgfwgWUWwfwxvvgffgfXvwvgfufVgwgfwgffwwxwwwvvwwffhggfhvXuwfwvgvfwgevWvwvwvwwvwwwwwgwwwwgvvwxwwwwwhvxffwwwwwwvwgwwvgggevwvwVwvwwfwwvxwgwwvxewvwwfvwwhvxxgwvwwgvwwfhwxffvwwgwwwwgvwwvwwfwwwvvgwwxxfvwwvvxxxwfdugVffwVgfVFgvuwvVwggedugffwvwvefvgVvvfWwVVvuuxfgwggufggwgvwvvwgfVtvvvgwwvvvxWffwvhwfVwfvxwwvwwVfwvgfgwwwwwgegvwwwVxxxuwgVvgguxwwxwgwvgwffFwvvwwgwwwvvgfwvwwwggVuvvwvwwvvvheguwwfxxxvwfVvwgvxvwxggugwwvwvwgxwvwfxwhgggxgwwxwwvhVFwfefgvuvWVuvfxvgWggWVFwffvwfgfufwgVxvfveVVdwewvvgggWfvgwwvvvvwwffTwvfwfxwgwvfwefgvwffftwfwwwgwwgfuwvvwwwwfvwWwfwwVxxgxvfVhgWwvwxwgwgwwgfuggxwwfwwgfwgwgvwwxvwfUwvfwgwwvvxWwevwwfxxWxwfVwggwwwxwggWwhwwvxxxwvwgvxwwggvwxwvxhffgUwfvgfvVvfwwgvuwfefwggUhwwwwfugfhghvvwwVvgwwgvvvgevwfVgVfvggvwwvwfwfgwfwvVvggfwgvgwwVVvwfwggwuvggwwxwggwgwwwwgevfggvfffwgwwwhwwwgwwwgwwVgvvggvgguvvfEwgfwwwvwwvfvvwggwvggvggvfgvwfgvVfwxxgwvwxwwwgwgwfgvggWwgvvVwwgvfffvwwwwxwwwwwwfwveXgfwfwWvvfwwfvwwvfuvfeWwvwwwvfhfWvvvgVvvvggfuwwffuffgWfvufgwgvwvewvwvvvgfvwfggvwgwWuvwvgfggvvevvwwwvgwwvwwwgvgwgvffgVxgvwggxwgwwwxwgwWfuvfgwgwwvugfXgUvtwwgwgvvvfwwwvvwvvvgfVgffggfggfxgwwwwgwwgxwgvVfWgfvvfwwwvfwgvvwwvwwvwwwgvgghugvfwwuffuffegwgewvfggevwwwvfggfhffwvwgVvvufggwfwvGgutVfwwwfwwvvfwfvvgvwfvvfwgvgwwvfgwwvgwwwfwvgwwgxwwwfwxwgVfffwfwWvgwwgwwwhwhwvwwgwfgvwwfwvwfwvVgfugvVvvvwwwwwwxvwwgwwvwuffefVgvvvgvwwxfwgwwxwxwwwggWwWgvvffgwwvfgwvfwvwwwhwwwxwwwfXggvwgwvwgwxwwwwWwhvWwwwwvwvgggwvvggxvwxwwgwxwwwwwxgwxxxwwwwwgvvghvwhxvwxxvxxhxxwxxwwwxwxwxwvwwwwwwvwgwwwwvvwwgvwxwwwxxxhxgwwwxxxxwxxgwwxgwwxwvgvVvfgwvwhvUggfwvvvwfvgVvfwwwhfwfvffwfvwWffgwVvvefwVvevGeGewwwffggwgfvvwgvwwffwvfwwvghfgvwgwvvwwffwwwgvgwxwxwwWuvfvgffwgvxgwvwwwwwxxvxwwvwgffwwwwvwwwffvVvWvWffgwwwwwwwguwwwvwwfgffvgfwVfwgewwxfgwwgwxxwxwwgfvuvvvvuwgwwfgggfxwwwxwvwwwwwwfwWggwxxvvwwxxhxhwhWvgwuwwfwxwwvwvvvwwwwwxxgxwxwwwwwwgwwwxxwhwxxxwvwwgwhxvwwwwwwwvxvwwwxhwvwwxxwxvvwxxgxwvvwwgwwwwxxxwwxxwgvwxxhxwxwxwwwxwwwwxvwxwxvwwxxvvvvgwxwwwwwwwhwvwvvwgxwufgwwxvwwwggwwvwwhvvgwwvwgggwwwwxxxwwvwxxwwxwwwhggwwwxgxvwxxxxwxwxvhxwxxxgwwxwxxgxgwvwwwwwwwwwwxwxxxvgxwwhwxvhwwxwwxxxwwwxhwwxxwgxwxwxwhggwwvxxwvvwwxvwxxgxvvggvwvwufwgwvwwwwwwwwxvwwwwwvvvgwgwwwwxxxwwwxxwvwxwwxwxvwwwxwhwxwwxwgwwwgwwwwxxvfwwxxwhwvwwwvwgwwwwwxwxwwwxvhwwgwwwhxxxwwhwwxxgxwxwxxxxvvwwfvefevwwgwwdvfeggwwwwwgwwwgwwwgvvVfwgwguvfvfgwfxwvfgxfgvevgegwwvVVfvggvfffwfvVvwvwwwvgvgwwwggvfhwwgfuvwwvwWvwfgvwwwxwwwwgfvwwggwvwgwwwhwuwwvvffgxfwfvwwgggvgwvvvwffgwwvvgugvuggvwffwwvwwgvgwgvvwxhffvvWuvfgfwgfevfvwwvwfffwwwgwgwweffxwwwgvWvwgvvwxvwwwfvxvWfwwwwfxwfevgewxwwwewvxxxwwwvwgwwwfwwwxvWwwgvvwewxwwwvUwfwxvwxwhgvwwxwwwxwxwxxxgvwxwwwxxfvxwxgwvVwvwxwwwxfwwvxgwwfwwgfgwwwwxxxvwxwwxgvwxvxwwxwxxxwxwvwwwxxwhwwwgwhxVgxgwwwwwwvwggwvgwUgxwwvhwgwhevvwgwwwwwwvggwxwvwwwvvxghxwwxwwwfuwwxgwwxgwwxwwwwgwwwwwxwgxwwxwxwxhwxwxxwwwxwwwwxvwwxwxwvvwvvgWgwvwxgvvwvgwvgWhxxwwwvgfwxwwxwxwvwhhvwxfvwgvwwxwwxxgvwwgwwvwhwxxwwvwwgvwxvwxvgwhgvwwxwxvwxwwwvWgxvgwhwwwwwvgvwvvwgwvwwwwwvfgvvwwxwxwvxwgwgwxwfffwgvwwgwgwgwvwwgxwwwxwwwxwwhxwxwwgwxvvvwhxwwvwwgggvWwvxwwvwwwgvxhwgwwwvehwxwwxgxxwxwxwvxwwwxxxwwhwxwwwxwwwgxxwwxxwwwvwwwwfwwfgwwwwhgvvwwwvfwwugwwgxwgvxwvggwfgvvvwhfwwxwwvfvwfwWvwwegvwwwwwvhfwwwwvfgvwwwxxgvwgwwwfwwvwwwwwfwwwwggwvwxgwwgwxxxxxwwwwwwxxhgwwwwfwwfgwwwVwgvvwfhgwxwgxwwxwwguvvwwgwvggwwgwwhwwxggwwgwuwxwwwwxwwwxwwgwvgwwwxgwvxwwwuggWggwwwwxxwgwwhwvughWwggwgggvffwvwwwwwwggwwxwwvwvggfxhgxwwwwwvfvwgggwwvwwxvwwgwwvvxwxxwhwwwxwxwvwxxwxfwvwvwvhwwwwxgvgggwvxxxwwvvwhvwwxxwwwvwevgwwwwwwwxwwxxwxxwgwgwwvwwxhxwwwxwwwwwwwwxxwwxvwwwwwgxvxvgwwgxfwxwvgwfxhfwgwxgwxgfvgfwgxvxwwwwgwgwwwxwwwwxgvxwvxvgwwgvwxwgvwwwwxxwwwxwwwxwxgxxxxwwggwwgfxwwwwguwwwxwwwwwwgwxxwwxwgvxwgvvgwxwwxwxwxxwxwwwwwxgxwwxxwxwwxwwwxwwxxwwwwwwwwgWffVvxwfffuwgwfgwwgWvfVvtgfggvwwwwwffegfvvwgwefwwgfggwwwvwggfvvwwwwwxvfgxwwhwwefgvfvgwwefwvvvwgwwwwwwwXwwvwWfvxwfwwwwxxwwwgwfgfevgwffwvvfggwwwvggvfwvvwwwwwevwwwXwwvwWfvxwfwvwwxxxwwwwwxhvwxwwxxgfvwwwxxwxwxwvwgffggfvwgwwwwfvwwgvwwgfvxwgvhwvwwwwvwwwwggvwgvwvvwvwvffwwwwwgvvwwwwwwwgggfvwfvwxwwgwwwgvwwwwwwxwwwwwxgvwwwwwwxwwwwxwwwfgwwwwwvxwgvwvfvvfwwwvgwwwwwwwxvwwwwwwwwvgwxwwwwwxxwwwxxwgffffwfwffwwwwfwwwffwfwwwwwwwfwwwwwvvxxxwxwwwwwwvvxwgfxwhwfwxxwwwxwxwwxxwwvgvwwwwwwxxwxwfwxwwwxwwgxwwfxxwwwxxxwwxwwxwwwxxwwxxwwhwwxfwwwvgvxgvfxwwxfwwwwxxxwxwxwwxwxxxwwwwwwwwwxwxwxhgxwwvvwwgwwxwwwhhwwgxggvvvxxxwwwwxwhwwxwxwggwgggwwvxxwxxwgwwxwwwwxwwgvwxwwxxwxwxwxwwxwhxwwxwwwwxwvwwwwxgwvwwhxwhggwwfxwgwxwxgwvxwwwwwxxwxvwxxvxwwxxxwwwwwwwwxxwwwxxxwwxwwxgwxxgwgwgwxwwwxwwwwhwvwwvgwwwgwwgwgxwwxwwgwvwvxxwvxwwwxgwxxgwvwhwxxwwxxwwxxwwxgwvgwvgwwhgwxxgwxwxwgwwvwhxxxwwgwwwxvwwwhxxxwhvxwwgwvxwxwxwwxxxxxwwwxwxwwxwwwywwxxwwxwvwwhwxxgwwwwxwwxwwwgvwwwfwxwhwxwgwwwwxvxwwhxvwvwxvxwwwwwwvwwgwghwwwxxxxwwwwxwxxwgvxwxwxxwxwxwxgwwghwwwxgwwwxvwwwgxxgxwwxxvwvgvwgxwfwwxhwwwxxxxwxwwxwxxxwxxxwvwwwxwvwwwwxwwwxvwwfggwvvxxwwxgxvwwwwwxxvxwvhwfgwvwwvxwxwwxwfwxwxwgwgwwgwwxwwxwxxxwxwwwwxwwvxxwwxwwgxwwhwwwxwxfgwwhvwwgxwhxvwwwxxwgxxwwxwwwxxxwwxxwwwwwwwwwxwwxxwxwwxhgwwwwfwwwwwxwggwhhfwxwgvwxwwwxfxwxwxwwgxhffwxfwxxwwxwgvwwxwwwwxxxwxxwxwxwwxxwwxxxwwxwwwxwxxhwgfwwwfwxwxwwwwwwxxwwwwwxwxwxxwwwxxxxxwwwwxwwxwxwwwwwwhWWffvwwwfefVwgfgfwfwwwWWffFvwgfffwwffwfwefffwgVvfwfwwwgffwwgfvvgufvwwwwwfgvfgwwwwwwvwweffggvWfffwwwwgwwwvwwwwwwwwuwfefvgvwwwfwwwwwwfwwwwvwgwwfevVgvgfffwwwwwgfwwggfgvfffwwwwwffewvwwwwwuwfefvgvwwwfwwwvwgfwwwwwwwwwffvwwwwgfvgvwwwwwwwwwwwxwwwwwwwwwgvggwggggxwxwxxgwvwxxgfwwwgvvwwwgwwwwxhwvwwxwwwxwwxwxxwwwwwwxwhgggxwxwwxwwwwwwwwxwxgxwwxwxgwwwwxwxggwwxgxwwhvwwwxwvwxwwxgwwwwwwgxwxwwwwwwwxxxwvwxwgwwxwxwwwxwxwxxxwwwxwwwwwgwwwwwwwwvwwwwwxgxwvwhwwwwvxwxwvvwwwwxwwxxxvwxhvxwwgwwxgwxwxwwwwwvwwwwxwwwxgxxwxxwwwhwwxwxgxwwwwwwwghwwwxxwwwxwvwwxhwwwgxwxwxwwgxgwwwwwwwwxgxxwwxwwhwwxwwxwwwxxwwwwwwxwwwwwwwxvxwwwwwwxvwwwwwwxwwwhwwwwgxwwxwxxwvwwwwvgvwxxwxwxgxwwvxwwvwwxxwxwwwvxwwwwwxhwwxhwxwwwwwwwwxxxhwxwwwfxwxwxgvwvvwwwwwgxwxxwxwwwvwxwwxwxwwwxwhwwwxwxvwwwwwxwwxwxwwwwxxxwxxxwwxvefwgwxwXvgvwwgwwwwwwgvegvggfwwxffwwvvwgwwwwggwwwwwgvwwgfvgwvwgwwwwfwfwwwwwwgwwwfvwxvvgvwwwvwwwxwgwxwwwxxvwwfwwwgwwggwxwwwwgwwxvwWfwgwvgwwwgvwwvwxgevvxwwgwwxwxVvvwxwxvgwfwwwwwwfwwhwxwwgvwwxwwwwwxwwwwwwwwwxvwwxwwxxxxwxvfwwwfgvvwxwwxwwwwgwwvhxxxwggxwwwwwwwxgvxxwwgwhgxxxwwwxwwwwggwvvxwxwxgwwxwxwwvwxwwwwxwwxhwwwwfwwwwxwxwvwgwwwwxwwwwwxxxwxxxwwwwgwwxwvwwwxwwwwwvwwwwxwxwwxwxwwxxwwxuewwgwggwgvwwwwwwwguegwvwvgwxfgwwwhwWvfvwwWgwwfwwgfwwgvvwvwfhgwgwxxwfwvxwwwwwgwgVfvwfwWgwwwvwvwxwwwgxwwvwwvvwvgwwfvwwwwwgwwwwhwxgfvggwgwwwgvwvwxWvgwwwwhgwgxwegxxxvvwgvwvwwwgwwwwwwwgvwwxwwxwwwwwxwwxhwvwwxxwwwwwhwWWvwwvgvUwvfwgvgvwwwxVWvggwvfvvwgwwwvgfwwwwgvgfwwwxfvgwwVvVxxhwxwhxxwwwwwxvgvvwwwwgvwwgxwwvhvwwwwwgvwfwvvwwwwwwwwwwggwwfhxwxwUwvwwwffgvgwwgvgwvfwfwxgvwwgwwhwvvwwwwgvwwwfvwxwgwwvvwwwgwwwwxxxwwwvxwwxwwwxwwxwwwwxwwgxgwufwfgwwwgvwfvggxwwwwwgufxvvgffwwfgwwwvgVvwwwggwgvwwwgfwwgVvVxxvwxxxwxvwwwwxwgwwWvwwwgfwwwvwwvwwwwwwxfwvvwfwwwwwwwxwwwwwwggxxxwgvgwwxwwwwwvwwfwgfvgvghvwwwwwgwwwvwwwwwfwwvwfwwwwvwvwwxxwwvwwwxxwwwwwwwwwwwwwwwxxwwwwxhgxwwwgufVUfwefvggwggwvvwvgwvwwwwvwwgggvfwwdeggfwwgwvvxgfvwvfvvegUvfgvfvWgfgwwfffvgfwgwwevvxwwwffgggfgfexwxwggefvgwwggwwgfwgfffvwxwxwvgwwVwgvwgwgvwwwwwxwgfgvgwvffvfgwvguwfwwvwgvgVffwgwwwvwwgfvwgwvxwwwwwwwWfVfvgwwWgffwvwfwfffeffwwfwwwwwwwwgVwfwwfgwwwguwwhwwVwgwwwgwffwxgvvvhxgwwxwwvwxwxwwvwfwwvuwxwwxwwfgwvhgWvwwgxwvwxvgwvwvxwxwwvwwwxxvgwxvwwwwwXuwwgwwvwvgxwxgwxfwvxvvvxwvwwwwxwxwwxwxvgwwwxwhxwxwgxwxghwwxwvxwXvgXwvvwgwwwvvwwwwWvgWwwggwvghgwxxfvwwgwwvwgwwvwwffwxwghwfwwvwwwgwvvwwxwvvvwfwwxwgxwxxxxxwwxwwwwwxwxgwwwxvwxgwwwgxwwvwvwwvwwgwwvwfxwxwwxfuxvwhwxgwwxwwwgvwwhvwxxwhxwwwwwwxhxwwxwwwxwwwwwwwwwgvwwhxvwwwghvgwvwvwxwvwvgwgwvgwggwgvvfwghwgwfwvgwwuwwwwXwfwVfgwfgwxgvvwwwwwxvfwxwwxhwggwvgwwwuwwwwxwgwwwwxvwwfwfwgwwgggwvuwxwvxxwxwgwvgwvwwxvwvwwgwgwfweghvwwwhvvexwwwwwwwwvwvwxfwgwwwwxwuxwwwxxxwwwwvgwwwwwwhwwwwwvxhxwxxxgvwgxgvwwwgvwgfwwwwwwfhvwgxwwwwgwxfwwhvwxvwguwwwwfwwxwgwwxvgwfgffwwxwxwgvwwwvvguggwwwwvxxxvwwwwxwwxwxxhwwvwxvxwxxwwxxgwhvhwwxxwvxwwwxwgwgwggxuvvwwhxwxwwxwwhxgwwxgwvwwxhwgxwwxwwwxxwwwwhwvwwxwwwxwwwVwWhwvwxvwwwwvvvwwwfWhwwwvVfgxwhvvwwgxvvwwwwxvwwwxvwgxvwwxhhwevwwwwwxwvwxwfwvevwgwvvwwwwhwxwwwwgxwxwwxvffwvwvhvwxvwwwxwvwwwwwggwhwvggwwwwgXevwwvwvxxxhwxwxgwwwwwwwvxxwwxwxwhwvwwwgwwwwxxvgxwfwwwwxvwxwwxvgvhvgwxgwgwwfxwwxgvgwgvwwffwhwfvgwfwegwwwfwwwwxwwwhxgwvwxxhwgwxgfwwexwwwwwvwwxgxwwwxwwxwwxwwwwxgwgwfwxwwwwwwwxwwvwxhvwwgvvxxwwvgvgwwxxwwwvvwxwwwwwvxwwxwwxwwwwwwwxxwwwgwVfevxxwgefffevwwwwwggVfetvgvwwgwwgfgfgffVfefwwwwwggvwvwggwvvfwwggvfgxwxwwwgxwwgfVfefwfwggwwwwwwwgvwwVVfxwwwwxwfwwwwwxxvxwwwfufffevwwfwggwgvwvwggggvfwwggugvwwwwwwVVfxwwwwwfwwwwwxwxwvwvwgvggfwxwxwxxxwwxwwwwwwhwwxwwxwxwwwwwgwwxxwwwvvvgwVxwxwwwwxwgxgwwxwwxvwvgwvwwgwwwvwxhwwwwxwwwvfxwwwwwwgvwwwxxwxwfvwgwwvwxwxwwxxwwwwgvwxwgwwwwhxwwwwwgVwwwwwwvuwxxxwxvuwgfwgxwwgwwxhxwwvwxwxvxwxxwwgwvwgwwxwwwwxwwxwvwxvwxxwwwwwwvwhxwwwxwwgguwgggwwxwxwxwwxxwwxxwhwgwgwwwvwwwwvxxvwwywwwgwwwwxvhvvwwwwwfwxxwwgwwXwhfgvvwwwwwvxxwxxgwwwvhwxvvwhwvwxwxwwfWwuvwwwwvxxxwxwhvwwgwwfwwwvwvxvwvxxwxwwwxwxgwwwwwgwwwwvwwwwwwwgwxwwwwwvxwwwxwxwwxwwwgwwgxwwxwwxfwxwwwwwwxxxwxwwgwgxvwwxwgwxgwxwxwwwwxwwwxwwxwxxxwxwxwxvxwwwwwwxwwwwxwwxwwwwwxwxwxwwwwwwwwxwwwvwvwwwwwxwwvgwwxxfwwwwwwwwwxxxwwwwwxwxxxwxgwwxwwxhxwwhVFfwfegvvvwwdwgffvwvwwVFfwfwgfWffvwevfvvwhuvwfwfwvwwvwgwxhwwwgvwUffvwfwxwwgvwfegvuvvXeggVwuvugvgwwgvwWvwgfwxggvwxvwwWfwefugVvwvwvxwuvvgTwVVfvgugvvfwwwhvgwwhvgEffvwvvwgvfvwwWwvwwwwwWVwefvgwfvwugvxwvhvwwwxhwxgwwxghfwgwwwvwxxwwxxgwwvwvxwxwwwwwwwxwwwhvwwfwwwwvxwwwwwwxwxwwgwwvwxvwwwwvwgwwwwwxwwwwwwwwwxwwwwxxxwxvwwwwwwvwwwwxwwwwwwwwxwwwwwwxwwwwgwwwfgwxwwwwvwxxxwxwwwwwwwxxwwwwwwxxxwwwxxwvxwwwwwfwxwhFVfwfevgvwevgfwvwvwwFVfwgvgfgufgwVfvgvvwgtvwffgwvwwwgwwgwwgfwUfwgvgwxwwvgvxfevgvewWtfgefWvevwgwwWfgfgwwwxwVwwwwwwwxWfgVfevwewxvvwwveguuVewggevwwfwvgvgwwhggTfvgvgvgvwvgvwfvwwgwwxWegVffwwfwxevwvhvgxwhxxwxwvwgwgwfgwxvwvWuuhwfgwfWwgVwfvwvwvwwVuuWwffffwvwhfwgwwgVwfwvvWvwwfwxfwgfxwwvwwguwwvwwgwxwxxfgwfgwVfvwwgfgwwwvhvwwvwxwwwwvxvwxwwwxvvffvwwwwwwgwwvwgWwvWfvfvgfgvvgwwgfvghvwgffwwgwvwwxvxwwwwvwwvvgfvwwvgvvwvvwwgwgxwwwhxxwwwvwfvvwvgwwxwUWwWwfgvwvgwugevvwfwwgUWxgfgfvfvfxwgvuvgguggwvwfwwgvvfxgwwgwwwevwwwgwwgxxwfgvuvwfevvfwfgvvvwwfhwwgwxwwxwwgwgwwwwwgwfffwvvvwxvvwwgwwvxwevfwwfgwwvfgwwwhhhwwffuwwvvwwwgwwwwgwwgwwffvwgvvxwwwwwwwgwhxwwwwxwggwxfvwwxvvwwvwwwwwxvwwgxxwgggwwxwwwwwwvwvxwwwgxxxvwwwwwgwwxxxwxxwwwwxhxwvgwwwxwxxwxvxwwxwwwgwwxwwxwvxwxwwwwxwxwwwwgwxgxwwwwwwwwwwgxwwwxwwwxgvxwhwwgwxgwwxxxwfwwwwwgwxghwwxwwwxwxwwwwxwxxwwwwwwxwwxhgvgxvvggvwwwwfwxwxwwwvgwxxwhhwhxxwwwxwxwfwwwxwwwwxxxwwxwwwwwxxwxvvghvwwgvwwxwxwwxxwwwwwvwwwwxwvwgwwwxxwxwwxwwwxwwwxwwwxwwwhwwwwvwwwvwwwwxwwggwwxwxxwwwwwwwwwxwfvwhggghwwvwfwxwgwwgwxghxwwxxwwwxwwwwwwwwgwvwxwvxwxxwwwxwwxwggggwwvgvwwwxwwwwwxwwwwwvgwwxxxxwxwwgwxwwwxwxwwgvwwxwwwwwwxwwwwwwxxwxwxxxxxwwfwxwwxxwwwxxwwxxxwxxxxwwxxxeuvwwghvVggVwgvvwwwwwgeuwwwfwwwwgfvvwwgwgvwwwwwwwggwvffwwwfwhfwvwwwvwvwxwwwwghvfgvgwggwwgwvxwwwwwxhvwwwwvwfvwvwwwgwvhwxwwwvwwwwwVfvWvwwvwgwvxwwgwfuwwxwwhVvvxvwvxvvwfwwwgwwfwvxwhggwwwwwwwwwxwwxxwwxwwfwwwxwwwxvwxxxxwwwwvwwwxxvwwwwwwwwwwvhwxwwwvwvwwwwvwwwwwwwvgvwxhwwwgwxxvxwvwwwxwfvvwwwwwwxwxgxwwwxwwwxxwwxwwvgxxwwxwxwxwwvwxwwhvwwxwxgwxgwwwwxwwwwgwwxwwwwhwwvfxwxwxxwwwwxwwwxwwxwwxxwxwwxxxfuvxwgwgwwgwwwvwwwwgfufwwvfvwwgffwxvgwVxgfwwwwwwwwwgwwgffvwwwggfwwwwwwwvhvxxxwwwgwwVwvgwggwwvwvwwxwwwwgwwxwvwwvvgwwwwfwvwwxwwvwwwxwfvgvwwgwvwvwwwvxVfvwxwwgegxwwwwxwvwwvvwwgwwgwvwgxvwwwwwwxwwwwwwwwwwwwgwwwwwhwwwxwWfwxvwvwgewwvgwwgwwvwwVfwgvgffwwwffwxwwvfvwvfwwvxwwvwwvfgefVwwxxhwxwxwxwwwwwxxwvgvwgwwwwwwgwwwgwwxxwwwwhvvgwvwwwwgwwwvxxwwfwwwxxxguwwvwwhvwwgwwwvgfffwghggwwwwwwwwwvwwwxwgvvgwvwgxwwwwwwxhwwwwwwwwxwwwwwwwwwwwwwwxxwwgwwwgweuwgwggfvwgwvwwfwvwxgeuwwwvfvwwgwggwwUwwfvwgwfwvwxgggevWvwxxvwvxgxxwxwwxxxwggUwwfgvwfgwwvwwwwfxwhwwxxwwggwvgvwwwvwgwwxxwvwwwwwwwgwwwwwwfwxwvwgwfvfvwvwxfgwwgxwwwwxvvwwwfgwvwvgwwwwwgwvhxwwvwgxwwxwwwwvwxxwwwwxwwwwwgxwhwxxvwwwwwwgvgxwwfwwwwwxvgxwwfwwwwhvgwwwfxwxwwwgwwwwwwvxxwwwwwwwgvgxwwfwxwwxwwwwwwwxwwxxwwwwwwwwwwwvwwwwwhvgwwwfwxxwwvwwvxxxwwwxxwxxwwxwwwwxwwwgxwwwwwwwwwwwwwwwwxwxxwwxwwwxxwxxggwxxwxxxwvgwxwwwggxwgwwgvvgfwvwwxwwvxwxxwgwwwwwxwgfwwvgvxxwwwggwwwwfwwwxfgwwwwwwgxxwwwwwwwwwwwwxwwwvgwwwwwwwgvwwwwvwwwwggwvwwxgxwxhgxfwwwwvwwwwwwwwwxwwwggvwwwwwwwvwxxwwxxwxwwwxxwwwwwwxwwwwwwvvgwvwgXfgwwvguwwwwwwgvwwwwvwxwwxwwhgggwwvwuwwwwxgwwxwwxgvwgwwwwgwwwxvfwwwgwgWwvwvvwwgwwwvwvwxggxvwwvgwwwwwvgefwvvwxwwgwvvgwWVwwvwfvwwgxxwwwxwwxxgvwvxwxwxwvwxwvwvwgxwwwwwgfugwvwxwgwvvxwwwxxwwwxwwwwfuwwwxwwwxwgvgfVwggwgwugvwvfewwwwgvgwwwwwwwwwxwwwwgfgwvfewwwwxwwwwwfwgwwxwhwwfVvwgwvwevwgwVfwwwwwwwwwwwvgvhxwxwwwwwwhwffvgwwwxwgvvgxxvwvvvgwVfwwwwxwxwxwwwfwwvxwwwxxgxvwfwwwwggVegvwwwxwvgvgxwwxvwwxxwwwxvewwwwwwvwfgevgwwwghfVxwvvvwwwvwfwwwwwxwwwwwwwvwgWfVwwvgvwwwxwwwwwgvwgwxwxwggevvvwgefgwggwwwwxwwwgvwwwwgxvvwwvggwwvwWfewfwwxwgwfwvvwWefgwgvwwwwxxwwwxwwxgvvwxxwxvwwxwwwwwhwwwwgfvggxwwxgwvfwwwwwxwxwwxwguvwwwwwxwwwwggwgwwgxvWwwvvvwwwwwwwgwgwwwwxwwwgwgwuWwvfvwwwvxxwwwwwxfwxgwxwxwwgwwxgggwhgwwegvvwewwwwwwgwwvwxgwvggwwgwgwwwvwfewgwwwwxfwvvwgwwfgwwuwwwwwwxvwwwxwxwfwvwxxwwvxwwwwgwwgwwgvweffwwwwxwgvvxxwwxvwwwwwwwxevwwwwxwwwvvwwhvwwwgggwwwwvwvvwhfwfgwvwwwwxwwwwgwwwxgggwwvhwfxgxwxwgvwwwxxwwxwwxxhgwxwwxwwxwxwxwwwwwwwwwwwxwwwwvwwgwwxvvwwwhwxxwhwwwgwwwgwwxwgfgwxwxhwvwwwwwwwwwwxwwhwwggwwwwxvwwxxwwwxxxwwwwwwwwwxwwwvvwxwgwwgwwwwvvgfvxwwffwwxgwwwgxwwxwwwfwgvgwwxwwwwxwwwxxxwxwwfxwwxwwxwwwwwwwxxxwwwxxwxgvxwxwwwxwxwwwwgvwwwxxfwwwfwxwxwwxwwwwwxxwwxxxwwxxxxwxxxxwxwwwxwgfgfgggfwefvfwwfwfwgvvwgwfxvVuwfugewfguvgfVufVufTWewfegvffffgwVfwvwvvfvggvVvfWvfgefggfgevggwvwgfwgvvgefffwvfgvffvggvewvwwwfwgwvwxgwvfgvwgvwgvVdgfufUgVwffewgggfvwEWgvgggguvvgfevfuvfVevVegFfVVeevfeVefffeTffUeVfVwfwvwwvVuwvvffufgffwfvfwfVfvgveWvgvvwvfhwwfxgvfvvgwwwwwvvvvvvwfWvufvegvgvvvggvegfUgUWwvegwvgWvgffVwvuwvfwvwvfvvvwvffwvfhfwfgvwgvfwgvvvffgvvwgvgwgvvvwwxvvgwfwvwwvwwxwwwwwwwwwxfVutfvueVVGvvwefvfWfffgVWvggvvwvvffffvveVvefffWgfffVWvefffwvfevvfffuWfxvwwwwvfguvufwffwvgvwvvwvwwvvfffwwgwghfwghfffgfwwwfgwwfwfgwwvvvVffWgewvfwvveVfufFWEWvgwVewfVgfgfffvfvfwvwffvevfewvVvwwhvvwwggwffwwwfwvfvgfwwfvfwwfwvvvwwwwwxwwvwxwwvgggwwwwxgfvUwfWgVWeewwwuvVggwgvfvvwvwvgfvwefvvwffVeufWgVffvgffffvvgffvefveffVwvwvvwfgugevgvffwwvgwvwvwwvvvgfwgwvvwwvvwwhxwxwxwwuvvffgwgwwwwwwwwwgvwwwwfwwwwxvwwxxxgwwwwgvxwxwvfwwgxvwhxxxwwxxwwxwwvvwwwgwwwwwwwwxhhwxwwvwwwwwwwwwgwxwwxxwwwvwxwxwwwwwxxwwxxwwxxgfwffgwfvufwfgwfwvwvwffwfwvgewWfwUvfwwVvfWefWfgTveVffgvvgfvfwvfewvwvfwVvwfwEewVVefgwffevggwwvfvwvwffefgfgwffffgvgwxwwVvgfvvgxfwvwxwwfvwgvwwwgfWdfWevUvVufegfwgffvfggVffggwvgvgwgVvvfeVfVfgdvdeefVVeWefffVffUVfeVuevwfwffvfwWfvgVvvguwgevwefwgffuffvgvfwwxwwwwgwwwwxwwwxwWwvfgvwwgwfgwvwwwvwwwwwwvwwwwwwwwwxvwwwvwvgwwgvxwgxwgwgxwwwwwwxwxwwwxwxwwxwwxxxwwwwwxxxxxwvfgvvwgwwgwwwwwwwwwvgwwwwwxvxwwgwwwxwxwwvwvxxwxgwwgwwwwwxwxwwhvwwvgwhxwwwwvwwhwxwvwwwxwfwwwwxwwwwxwwwWwgfwvwwfvvgwwwvgwwfwwfvvgwwwwwwwwwwgwwwxwvgwwwwwxwwgwwwwvxxxwwwwwxwwxxxxxwwwwxxxwxxxxwgwwwwvwwwwwwwxwwwwwvggwxxwvwxwvwwhwxxxwwvwgwwwwgwvwwwwwwgxwgxwwwvgxwxwwwvwgwwxwvvwwvfwwvxwhgxwwwxWvvwgwwffvwwwwwwvwwwwgwvwwxwwxxvwwwwwgxgxwwxwvvwwvhxxwxvxhhxwwxxwxxwgvwwwwfwwwwwxwwwwhgxgxxwxxwvwwhwwwwxhwwxxwxgwwwxwwxwwxwxwwxxxxxxwwwgfgwffwwwggfwvwfgwgvgwghwhgwwwwvwwxwwgffevgVfvwgfVvwWvgfVfwfvwwwwwvgUfvgffVffffwwwgggwwgffgvwgwgffVfwwVfvfwwwvgwwfVwwwvwwwwxWfvwwwwwwfgffVvgfevwgefvwWvgVefwfvwwwwwvWffvgfeffffeV6eVEUUfEeefffwwVEEeVevffffwwfegvgeVVdeUfEVvVfvvvvwgvgTfUgeffuwggxwwgwvwxxwwwvxfvwwwewgfwfwvwwfvwwwfgwvfwwfgWvgwwwvxewvwfvgwwwgwvwxgvwfwvwgwwxwwwwxfwhggvwwxvwwvwxwUvwgwgvggffevvwwggVugwgwxgvwwwevwwwffvgwwwwgfvgvgwwgwxvwwvgvvwgwgxwwgwhgwevwvwgvwwxfwwwxwxwwwgvwwfwwwgwggvvvwxxwwwxgggwWvwvwVgggwvvguwwvwVgwfvfwfwwvfgvvwvwwwgxwwxWgwvwvVwvhxxwwxvwxwwgwwwxwvxgvwxvwwxwwwwxxxxwwwvwvxxgvfxwgwwgwfvwwvxfwvufvwwwwvxxgfwwwwfvwhxxwwgwwvwwwwwwxvwxgwwwgfvvwwgwvvwgfufxgvvfwwwwgxgwwvvwvgwxwggwwwwwwwxvvwwwfwvwgvgvgwwxgwgwvhwwgwwwxwwggvvxwxwxxwgxwwvxvwvhgwwxwxwwwxwwxwxwwxxxwxxvwxwwwxwxwxxgxwvwgwwwvwwwwgugxxwxwfgwvgwgwxwwhwwwxwxxwvgxwwwwwvwxwwfgwxvgwgvwxxwxxgwwgvwwwxfxxwwvwwwwwwxwwwwfgghxfwfwvggvwhvwewggvwwwwfggvwhwwvxvwewwuvffwxwwxvwwwxwwwxwxvwvwwwvfxwwwggvwvwxwwwxwxwvwwxwguxgvfwvwfvwxwvfguvWwwwgxwxfwvgvwxvwgvgggvgwwvwwvhgwwvfvgfwfhwvwxwvgfxfwVwgwgwwxwxgwwwVwwvvggwvwwwxwgwvwxwxxwxwwvvwgwvvwwVgXggwvxwwvwgfggwwfvwwwwgvfvwwwxvxvwvWgwvfwfvhxwvfggwwwxxxwgwxwwgvxwgwxxwwwvwwwgwwwwwwwxwvvuwwfwWfvvvvvwwggvvewgwvwwhwwggwvwvuvhxwwwgwvwwwwwxwxwvgwwwwvffwwwxwgfwhvuwgwvvgwgwwhwxfgwgvvwwwvhwwwwfwgwwwgwgwwffwwgwfwwuhvgwwvgvgwwgugefwVffgwxfggVwwwwwwwvgxwWuvwvffhwxwwvwwwxwgxvxvwxwwwwwwgxgxgxwwwxxvvwgvwxxwxfwwwvgvgfvvgggwVwgwwvwguwwgghwwwfwwgvvwwwhwxxwgvvgvgwvgwgxwwvvggwfuwwwfwwwxvwwwxwwvwfwwwfvwwfvvfvvwwvwgwgfxxwWwwvgefwfwfeffgvvvgfgggvfevwgvwgwwwwevxwgvggvxxfuwwwfwgwvfvfgwvgvwgwwfvvwvwgxwwwgvhwxwwwwwwwwwwwwwxwvgvgefgvvgfwgwvvgvgwwevwwgwwgvfuwwxvwfgwhwwxvgwwwwwwvvxwwwwwxwwhgwwwwwwwwxwvxwxwwwwwgvgffwwwwvffvwvvwvwwgwwwwwwffgwwgwwhgvggwfgvwwwwfWvggwwwwgwwwwvefwwwwwwwvwgfffwvVvgvvgVgwwvgwvvwwvufffvweVvfvvwwwwfwwwwwfgwxwwfvvxwgwwwWgffWffxxfffvfxwVgvwwfwfewwvgwwvfvfvwwwvwGwfVegfvfwVTVfeVvgfeuvggffewvffwxwwwgvfwVwwwwwVfewfgevwvfwVwfggvxwvxwxwwxwxwhwvhwxgwhwwvwwxwwxwvxwwgwwfwwwwwxxwvxwwwxvwwwxwwwvhwwwxwxwxwwxxwxwwgxhxgxwvwwfxwxxxxxfwxfwwwxwxwxwxwgwwwwwxwwwwwxwhwwxwwxwwxvwxxwxxwggxxhggxwxwwxxxxxwwwvvvwwvvgfhwgwwwwwggwgwwwwwxxxwgxxwwxwxxgvwxxxxxxxxwxwwwwxwwwwwxwxwwxxwwwxxxxxxwwwwxwxwwxxwwgxwwwwxwvxwwwvxwwxfxvwvwxxwwwwwwwxwwwvxwwxwwwvwwxwhwxgwxwwwwwgwwxwxwwwxxwxwxwwwxxwwxwwwxwwwwgwwwgggxgwxgwvvgggxwxxxwwgwxvxggvxxxvvhwvwwxxwwwwxwxxxxwwxxxxwxxxxvxvwxwwwwwwwxwvwwxwvxxwvhwvvxvvxwwwvvwwvwxwxwwvxgwvwwwxwxwwwxwxxxwwxgwxwxwgwwwwwwfwwvwhxhwhwgxwwwwxwwwwwwvhwvwwggwxwwwgwwxwwggwwgvwxwwwewwwvvhfwvwvwwvggwwvwxgwwwwvwwwwwxwwwwhxxwwxgwvwxxwwwwxxwwwwxwwwwggwwwwwguwgwwxwfwxwwwwfgufvvwgwwgvwvwfwvwvwwwwgvwvwvwwgwvxxwvgwwwgwxvgwgwwwwxwwgwwvxwgxvxxhwwxwwxxwxwwxvwwwgvvwwhgffwwwvgwvghwgwxwwwwwxgwwwvwwwwxwghwwgwxwwwxxwhxwwwxwxwwwwywxwxwwwwwwxwvwwxhwwwwxwvxwwxwwwwhvwwgwvwgggwvwgwwvxwwvwggwwwwwwwxwxwxwxxwwwwgxxxwvwhwwwwwhxhxwgxwxhxvwwwwwvxwvwwwggwwxffvwgwgwwwwxwwxhvwxgwwhwxxwxxwwxxwwxwwxxxwxwxwvwxwwgwxwxwwvwxvgwxwwwxxwgwxxxwwwwwwvvvwwwwxwxwwwwwwwwwwwwwwwxggwgwgvwxhwxgwwwwxxuwwvvwgffgfwfgwwwvwwwvgvwwwggwwvwxxfvwwwwfgwwwwwwwggwwwxxwhwgwwwxxhxxgvwwwxxxwwxxwwxwvgwwvxwfgwwwwwwwwwhfvxvxfwwwwvwxwvwwhwwwxvgwwwwwwwxxxxxxgwwwgxwxwggwwwxwvvvwgwwwwwwwwwwwxwhgwwwwwfxwhxwwvgwvwwxxvfvvwvwwxwxhvvwwgxwwwevwwwwgwwfggvwxxwwwhxxxvwvwwwwwwxxxwfwwwwwwxwwgwwwgvgwgwwgwxwgwvfvwxvwwfwwwvvwwvwwxvwwwvwggvgwwwwvgxwwwgwvwwwggewvwwvgfvwgvfwfwguvvwhwwwwhwwvwwwwwxwwxwwwwwwxwxwwxwxwhvwwwvwwgwhwwwvxwwhwxggwwwxwwwxwvwwvvwwwwwwhxvwwxvwwwxvwwwwwwxgwwwxxwxxxwwwwwwwxwwgwggwvwvxxwxgwgwwwwgwwwwwvwwgwxwwwgwvwwwxwgwwwgwwwwwwwxwwxxwxwgxvvwxwxwwwwwwgwwwggwwwgwwwwgwwxwxwwxgwvwfwwwxVwvgwwwgwwxwgwWwvfwwvxwwwwgvwwxwwhhgwfwwgxwwhgxwxgvghwwwxwwwwwwwvwwxwxxwwwwfwwwwxwwgwwwwwxwxxgwwwwwxwxwxgxwfwwwwvxwgwhvwwwwwwwwwxwwxwwwwwwgwwxwwwwvgwwxxvwwwgwwwhwvvxwwwwwwwwwvxwxvwwvhhvwfvgvwxgwwwwxwvwvgxwvxxwgxwwwxvwwxwwwwvvxwwwgwwwxwwwxxxwwwxwwwxwxwwxwxwxxgwgwfwgwwxxvwxhgwxfwvwvvwwxwwwwwxxwxwxwwxwwwxxxxxwwxvwgwwxwwgwwwvwwwvhfvxgwwwwwwwwwgwhxwxwwvwfwgvwvwwwxvvewwgwwgxwwwwvvgwwwxxwwvwwwewwwwwghWwwxwwgwwggwxgxxxxwwwxwxwxfhvxwwwwxxwgwvgwwwwwvwwwwwwvwwvwgvvwfwxvvgwwwwfwvwwwwwwfvwgvwwgvwfvgwvfgvwgwxwgwwwwwwxWhgwgvwvvwvgwwwwvfwwgwgvvhwwvgwgwwwgwwwhwvgwvwxwwwwwgwwgWvwWvwwfgfgvwwhwwgvwwvwwgvwxwuwwgvwwVwwxfwhfgxwwwwwgffwwwgwvwgvxgwwwwwwxgxwgxwwxwwwxgwvxwhvgwwgxwwwxwwwWwWvwwfgvgvwwwwuwwgwWwwwxwwfgvwwwwwxwwvwwwfwwwwwgwwwwwwwwwwhwxxwwgxwxwwfwvwwwgwwwvfvgwgfgwwgwwwgvwwgwwxwwggvfwwfwwWvffvvvfwwfvwWwfwuwwvwwgwhwwwvvwwwwgwggwwwvwgwgwhwxwwhvgvwwhvwwwwxwwwwghhxwxwxwwxxxgwvwvwhwwwwxxwwvwwwwvgwvgvwvvwgwvxwvwvvwwgvwxgwuwwvvvwwwwxwvwwxwhxwwvwwwvvwwgwxxwxvwwwwvxwwvvvwwwwgwwwxwhggwhwgvwwwwxwghwwwxwxgwvwgwgvwwvfguxvwwwwfwwwfguwwwxxxwvwvgwwwwxwxwfxgwvgwvfwwwwvwwhgwxwwxwxxwwwgxxxxxwwxwwwxxxvxwxwwxxvwwwwgvwwwxxxwwwxxxwwxwwfwwwwxwxxwxwwgxwwwwwwwwxwxwxxwxgwwxwxwwvxwxxwwgxvWggevwfgfgwgwwwxxwwwfwwgvwwwwwwUfvwxfffggvfFVfvfvwvfwgffvwgwggwWvggwwgwwhvxgwgfufwfewwvwwfwvffgvgvvwwwwwfVwwwwvfevwgwwxvwwxgwveffwufvvfvfFffvgfwggwVffuwwvwvvgwgvwwvwFEUvffffUfVeUdffeVffVfVewwVfuffffUfVfUfwwvvfffefUvgffgwwfgwwvwwvxxggwxgxxxwwwewggwgwvwvhvgwwwwwgfwwvxhwfwwvwwwxwgwfwggwxxxwwwwhgvwwvwwxhwwwxxwwxxxxuxwgwwwvwwwvwVwwwwwgwxxVwfxvwxxwwwgwwvwwwwwgwvxwwwwwwxwwwfwwxvwwxvgxwwwxwwxxwwxwwgxwwxwwxwxhwxhgwwgvuvvwhWxhgvvvvwwgggxxvwhgwvvwwgvwhgwxxfwwwxxxxwxwxvvwwwwxxvwwwwwvwwxxwwxhwwvwwxxwxvwwxgghxwwfxgwwwwwxhgxwwvwvwvwwxwxwgwwwgwwwwwwwwwwwwwwwwwxwxhfwwfvwvwhxxwwvxgwwxwwwxwvxwhwxgwwwhvwvwxwxgvgvXvfgwvVwwwwwgvffgvuguhvwvgwfwvwWwwvWvxwwwwwvgwvwwxgwvwhvwwxwwgvvvwgvvvgxwwwhvwwwwwwxxwwwwwxwxvgwufvvvfWwgwugwfwwggwvggwwwvwuwxvwhwwgwfwvwwwwvhvgvgwvwwwgwvwwwwwWwwwwxwwwwwxxWwgxfxwwxwwwxwwwfxvxvwwhvwwwwwvhgxwggvgvfwhvvgwwwwvvhvgwUwvwwxvhvwevhfwwwvwxvxfvggvwwgwwwxwvgwwwvwwwwwhvgxxvwxvvwxvwvwwwwwxvwwxggxvfwVwwgwwgwwUgxvvxwvwghwvfwwwwwwwwvfwhwvwwwwwwxwWvgwvvggxwxwwwgwwgwvggxxwwvwwwwwwxvwwwxwhwwwvxgwxvvwwvufwwWggxwfwxvwwgxhhvwwhgxwwxwxggwwwvwvxwwwwwwxwwwwxwwxgvwwwwwwwwxgwxxwxwxwxwwwvwvvwwhgxhwvggwvvxgxwggxxfvwwwvvxxxwwwgwgwwwwxwgwwwwwwwwwwwxxvgvxvwggxwvxwwvxwggxwvxwwwxvvwgvvwvwwwwgxvuwgwhxwwfwwguwwxwxgwwwWvwwxxhwWvhwwvwwxxxwxxvvwxvxgwxwwwfwhwvwxwwwxxxwwvxxxhxwvwwxgxwvgxgvwvxxwwxgxwwxxwwwggvwwwxwwgwxvwwwwwwwxwgvwwwwhwvxwwwwxwwwvwwwwwxuefffefwuwwhffgwgwwxxGwwwvUffgfVfVffggvwefwfggwfvfwwwgvfwxxwwWfVwffwgwwxvwxgefwfvfwWvfvxwwwuwXffvwxwwwvwvwgwwwxwwgwwxwgwwwxwwfvwvvVgffgwwwWefwwwgwhfgfwvwfwwxwvxWvvxwWggffwwwwwxwwwxwxwwwxwwwxwwwwxxwxwwhwvwwwwwwwwwxgwwwwxwwwxXvggfwwvvvwwwxvwwwxwwxwwxxwwwvxwvwxxwwwxxxwgwwwxxwvwxwxwwxxwwvvxwwwwgwvWvwgvwgwwwfwwwxfwwwggffgguvvggwVfwfgvwwfgvvwvgwXeevfvwffgwfwwvvfwfvwggwwvgwvwvxwwvxxwxxwwwwxxwwwwwwxxvhvwwxhxxwxxxxwxwwwxxxwxwwxxwxwxwxwgxhwwgwwwwwwwwwwxfvwwwxwwvhwwgwwwfgguwvvvwggwwvgwvvggvwwvxffvvghvvgxxxwwwwfgxxWgvhwwwvxxxwxxwwxwxxxxwxwhvwwxwwwwwwwgwwwggwwwwvwxgxwxhwwvwwwwwxxxxxxwxwxxxxwxwvxxwxwxwxxwwwxwxwwwwwwgvgwwxxgwwwwxwwxhvwWvwvvxwgfggwvfwggwvwwvwhgvwxgvxwwwgwvvffwfuwwwwxwhgfvwggvwgwwwfwgvgvwwwvevwedwWVfVvwevvwvewWfggvvwwxWwvfgwwwwWvwevfvwwwxvvxxVgwwWffgewwfgwwwfwwwvwwwwvfwwewgfvwhfgvwwwwvvxxuewgVvgvwfwwFfwvffvwwwWfwefewwfwwwvwxWwwfwwwwhwwfgfwwwwwwxxvvfvwwwwfwwxwwwxvwgWfwxxxwwwwxwxwxxhwwvwwwxwxxwwwxxxwxhwwwwwwvwvwxgWuwhxgxwwvvvwwfwwwxgwgwvwwxxxwxxvwxxxxxxxxwxwgwwxwxwwvwxwxwwxwwwvxwwwwWwwhxfwvxwwvvwxxwwfwwwwwgvfeWvgvwgfvfvfwwgvvvwfwfwVhVwfwvfXfwgfwggwggVwvfwgvxwwwfggghgfgwfgxVgvfvvggwgwwwwfvfwdevVfuVWwVfvwuvvgffgWwfwvgvFgwfgvvwwwWgwVfxWwgwgvgvWfWfgwvguvgffVvwwwwwwgfuvwwgxxxxuffvxwwwgfgVwwwwgwvgvxxwwwdvvgfuVfgfwvgvFfvVgevgggWfwVfvgwVgwgvugvxxVwvgwvwwwwgvffgvgwgwwwwwwwVgefgfgfwfxfxwwwggvwggwfwwwwwwwwfvvggufVgfffWwvwgwVvwwgfwgVVwudveegfVwwfVvfdvevgwgvvvfugfeWveggwtffVvwvvgvfwvvvuxxfwhewvfwvggvgwwwgwwwgvewwwhwwXfgfvwvggggfvWvwwwwwwwxwggwuegfvgwgvvvfuggfgwuvwvtggVwgwwwwvvgfvvvgwvwwwuvggvwvvwwwwwvwgeWfggwwvghghwwwwwgffvfgggxwwwwwgfgwgWfwwVggvuwfgfxwwwufwgeuwVffEwggVxwgvvwVvgUwgwfwVwfffwgvgxGwffVwwVwfwwwxwgxggwggfwvvwvwwwgwwxgwwgvwwwwxgxfvfuwwxxfwwwgwwwffwuwfvvVwgwgwWwgvfwwvxwWxwgVfwgwwwvggwwvfxwwwxWwwvfwfwwxxwwfgwgwhwwfxxwxxwwwgvwwggwwwwwxwwwwwhvxgwwwxwwxvgwwwgwwgxwvwwwwxgwxwwwvxxwvxwwwwwxwxwhwwwwwwxwwxwwwgwwwwgwwwwxwwxwwxxwwwwxwwwwwxwxwwwwwxwxxxwwxwvxgwwwwwwxwwwwwwgwwwwxwxxvwfwwxwfwwwwxwwwwwwwgvwwwwvwvvvwwxwxwwwwwwwwgwvwwxwvvwwxwvwwxwwwwxwxwwhwvvxwvgwwwgwwwwwwvxwwfxwxwwwwwvwwwwwwwgwwxgxwxvgwxwxwwwxwwwwxwwwwhxwwwxwwwwwxwxwwwxwwgwwwwwwwwxgwwwxwwwwxgwwwvvwwwwvwwwwwxwwwwfwwwwwwwvvvwxwwxxxwwxxwwxwvwvwxxwgwwhwgxfvwwwwxwxxvwvwwgwxwgvWhwwxwvwvwwwxufhhwwvwwwvwwgwwwwxgvwwVwvwfwwwxwwfwwwvxwxwwxgwvwvgwxwhxwwxwwwwwvwvxwwwxwwwxvxwxwwwvwvvxxxgwwwxwVwwwxwwwwvwgwwgwxwgwwwwvwvwwfwwwwwgwwwwvxwwwwwxhwwwxwwwgwwXgvvwgvvfvvgggwwvwwgwwgWvvWwwwffVffwwvvwgvwgeVfwwfwxvwwwwxgxfvvwgvwwwwxhwhwwWvwxxvfwgwxwgvwwvvggggvwxwwwwwwwfwxwwxwwgwxgvwwwwxgwxxffggwwwwwuwwxwwwxwWfgwwfwwwvvxwwwfwwwxwwwgwwvwwwwwwhwwxwwwxhxwwwxxxwwvwwvwxwwxhxwwwxwgwxgwwfwwwwfwwwwwfWvwxwwfwwvwWvwfwwwwvxwwwwwwwwwvwxwfwxxvxwwvxxxwxwxwwwvwwgwwwwwwwwxwgvxxxfwwxwwxfwxxxwwwwxgwxxwwwwwwxwwgvwxhgwwwwwxwvewwwvxwfwwwwwgwwwxxvwhwwwwwwwwgwvwxgwwwwwxwxwwxwwwgwvwwwxhgvghwwwwgwvwwwxxwwvgwwfxxfwffgghvgwwvwfwwwwhxwxwwxwgvwwwwgwwwxwwxwwwgvvxwwxwwwvxwwwwwhwwwwxxwwwwwxwwxvxwwwwwwxwfwwfwvfgfxwwwvwwxwwxwwxhfwwxwwvxvwwxwwwwwwwwwwgwwvwgvwwwwxwwwwxwxxwwxwwwxhxwwwwwxwwxwxwwvuvgwewgghvggwwwgwwwvxvwvfvvwWvVvfvwwvvfwwguVvwvwvvfwxwwvgwvwfgvgwvwvgvvvxxwvwwgwvvwxwvwxhxgvwvwxwwwwvwwxwxxwhwwvvxvxxxxWvfwwwwwwgwwxwwwwxvwvwwwwwxwwwxwwvvxxxwwwwwwgwwwhwwwwvxvwwwvgwwwxwxwxwgwwwwwwxwggfwWgvwfgggvwvwhvwwgfgggfwxwfVfVvwwxufwvwwfVfgvwwhvwvwxvgxfwgfuwgwuWwwxvwwwgwgvwwxgwwxwuwwwvwwvwggwgvwwwwwxwxwgwwwxgxvwxvwwghvwwwwgwwwfvgwxwxwgvwwwwwwgvfxwwvgxwwxwggxwwwxwwhwvwgwvfwwwxxwgvxvgfwwxxwwwwgxwwwwwwwxwwxxxxwwwwwfwwxwwxxxhwwwxwwxxxXgwwwwwwxfvwwfwvwgwwwxwwwwxxxwwwxwwxwwwwwwxxxxwwwwwwxwwgwwxxwwxxxxwxhwwxwwxxwxwvxxgwwwwxwxxwxwwxxUfvwwVevgfwwwffffwxwwgffgvvwvfwvwwxxwffggvxfvggwwxxwfwwfgwwwwwvwwwvwwwwwwgwgxvvwgegfxgvwwvxgvwwwgwwxgwvwwxwvwhwxgfvwwgwwwwwwwffwwvxfvgxwwwwwxwwwwwfwxwwgwwxwwxxxwwfwwwxwwwwwwwfuwvgwgwwvwwwwwwwwxhvwfwgwvwxwwwvwwwwwwgwwwfwwwwwwxxwwwwwvwwgwwwwxxxgxxxwvxxhwwwxxxwwgvwwvwgggwgvgwwggwguwxwgwwWvvwxxgwvwfwwVvwwwwwwwvvwvwwWwwxwxggwfwvxwxgwwhwwxwgwwxggwwwwxhwwwwvfwwwwfwgwvxgwwggfwwxxxxxgwwwgvvwwxgwvwwvvxwgfwxwwwwwgwwwxxvwwxhvwxxggwxwwwvwfwwwwwwxwwwwwwgWwwxwwxxwwwwwwxfvggwxwxxwwwxggvvwwwwvwwvggvwwwwxwwvwvvxxwhwwwvggvwvwvwwwhhwvwwVvvxfwwvggwhwwwgwhvwwxwevfwwwvwwwwwwwwwgwwwwxxxwxwxxwvgxwvvwwwwwwxwwwwwwwwwwwgggxxfvwxwxgwwwwwwwgwvwfwxwwxgwgwwxxwwxwwwxVvvwvwwxxwwwwwwwxhvwfwwwwwxwvvvvwwWwwggwwwwvwwwwwgwwvggvwwwwvwwgwwwwgwwvgvwgvweguwwvfwwwwwfwwgvvwhwxwfvvwwwgfxhfggwvwfwgwxwwggxwwwwgwwgxwhwgwvvfwgwwwwwwwgwwgwvxvgwwwwwwVguwwvvwxwxgfvwgwwwxwwwwgfguwwvwwvwwgwwwgwwgwwwvwgvfvVgwwwwgwgwwvwvwwwwwwwfwwwwvwwhgxvgwvgxxwvwvvwwwwwwxwgggwvvgwuwvxwWwwwvvgwgvgwwwVwgwfWwevwwgwwvgxwgfwgfgvxwwgfwhwwwwwvvwwwgvxwwwwwwfwwwwwgwgwhwwxwwwgvwwwxwwwwgwxwwwwvwwxhwhwwvfwxfwwwvxwgwwxwxwwgvwwgwuwwwwgxvwvwvwwgwwwwxwwgwgghgWwgwwvwxxwwvwgwwwxxwfvxwwwxgwvVgvgfvgVUfvfgfvwwVwwgvggfWffFwfvgfgffevefGggfgvgvfwffgVwwffxwwugwwvffegwwvfwxvgvWwgggfvwggvwxggvvfUwwgwwuwfwvvgvgvwgVwxwxwwwwwgggwWvfwwgwgugfxwgfxwwgfvxwwwvwffhVfvwwgfxwwfgwgfffvwvwfwwxWxwffxwwxwxwwxwwwwffxgfVwwwgwxwwxxgxwxxwwwwgxwwwwvvwgxxxxwgwvwwgwwwxwxwwwwvwfxxwwxwxwxxxxwxxxxwxxwxxxwwxgxwwwwvvgxxwxxxxwwwwwfxwwwwvgwxxxxxxxxwwwwfgfWfvwfgwgwwWfgggwwwwwwwggwwgfwwgvvwxUffffffggffuwVgvfvwfvhwwggwwvwgvgfwwwwwgwwgfvwwgwgfvwwgwgUVfgwggfffwwgwvvvfwfvwvxxxwwwwwwwgwwwwwwwfwgfvwfwvgeufvvwvwfwwwwwwwwwwwwvwwfffgGdeUvVeegwvgfgVfvgufVvgVfffwvfffefwVgvewfewffwwwwwgevgwwwwwwvvvfxxwxxwxxhwwwvvwwwwxwvwgvwwxxwwwvwxvxwhxgwwwwxvxfwgwwvwwxxwwwxwxxxxxwwxwwxwvvghvxwgwwvwxfxhvxwwxwwwwwwxgxwwwhwwwfwxwwwwxwxvxwwwwwxxxwwwxwwwwxxvwwwxwxfwxxwhwwwwwwxwwwfwwwvxwhghfvwwwvwwwhxxwwwxxwwwwvxwwwwwwwwgwwxgwxxwwxxwwwwvwxwwxwxyxxxxwxxxxwwwggwwwvwxhhwwvwgwwwwwxwwxvwwwwxhhwxgwgwwgwgvwwvwwwxvvwgwwwwwwwxwwxwxwwvwwxvwxwwwwwwwwwxxgxxgvwwxxxxwwwwwwwwxvwwvxvvwwxhvxwwwwwgggxvvxwwxxwwwwwxxvxgwhxwwxwwwxxwwwxwwwxxxwxwxwxxwvvxxwgvgvvvhhgvvhwxwxwvwxwgwgwwxvvgwwxwwwwvxgwwwwxwwwwhxwwwwhwwwxxxxxwxwwwwwfwwwgwgwvwgvvwwvwwwggwwwwwwwwxgvwwwxwwwwvgwwwfwWvgvfgewwwwwwgwwxwwvwvwwwgxhwgwvwwwwwwwwxwwwwwxvhgwvwwwwxwwxwxwxxxwxwwvwwwwwwvwVgvxghfwxwxwwvwxwwwvgxwwgwgwwwvwfgvgxwxwhvhwwwvwwggwvgwgwvgwwwwgwgwxwwwwwwvwgvxxhxxwwwwwwwxwxgvvgfvxvwwghvwwvwxwxxwhgwwxvwvfgwgxxwwxwwwxwggwxwwwxwxwwxwwwwxwwwxwxwwxxwxxxwxxwwwvwwggwvwwxhxwwhwwxwwwxwxxwwwwwwwwwwwwwwhwwwvwxgxwxggwwwxwxxxwxwwwwwxvwxvxwwxwwwvvgfwwxwwxwwgfwwxwwgvgvxfxwwwxxxwxwwxwxxxxwwwwxxxwwwxxxxxxxwwwxxvwwgwgvwwxvwwgxwwwxwwxxxwxxxgxwwxwwwxwwwxwwxxwxwxwgxxwxwwxxwxxwwxwwwwxggvwggwwwfwwxxwwwuxwwvvgfvffwwvfwwwvwwxgwgwvfwwwfgfwwwgvwwwxgwxxxxgwwgwgvvwwwwwvvwxxwxwxwwwxwxxwxwwgfvwwwwwvvwgfvwggvwwwwwxwwwwwwwwfwwvwgwvwwwwxxwxwwwxxwxxxwxxxxxxxxwxwwwggwxwwwwwwxwVgxwffwwwvxwwwwvwxfgwwwwwwwwwvwgwwvwwwvwgwwwwwgvxwgggwgvfwhvvwwwwwwgvwwxvgfxwwwwwwxgwxwwwwwwfwvvwxxwxxfxxgwwwxvvwwwwvVwvwwwwfwvwwxxwwxwwwxwwfwwvuwwgggwvwxgwwwghvvvwwwfggvwwwwwuwwfggvgvwgvvwvwxwwxwvvvwwwgwwwvwwwwwxwgvxfwgwwvgwgwwxfxvWwvwxwxwxwwwgwwwwxxwgxxwxxwwvwwwwvvwwwvwwwxxwxgwxwxwwxxwwhwwwwwwxxwwwxxgxwwvvwwwwvwwxwvvWwvvwwwwvhxhwxwwwwwvvwvvhwwwwwgwxwwxgwxwwxwwxwwgwwwwwgwwgwwwwwghxwwwxxwxwvvxvxwwwwwgxwxwvxwwwwwxxxwwxwwxwwvvwwxvwwwwwhwwvgwxwwwxxwxvwwwgwvwgwwgwxxxxwwwwwxwwxwwwxwvxwwwxwxwgxxwxwxwxwwwwwwwwgxwvwxvwxwxwgxwvxwwwwvvwwwgwvwwwwwwwwxwwvvxwwxwgwvwxgwwwwwwvxwwxwwwvwwvwxwwwxwgwxgwhggwhwwgxvwwxwvxwxwgwwgfgvvvwwwWvwvwwwwvwwxgvwwwxwxhvwwwxwwxwwwxxwwxwwgwgwvxvwxwwwwwwwxwwxvxwwwxvxxhxwxwxwgvwvwvwWvwwwhwwvhvggxxxwwwwvwgvvwgwwwwxwwwwwxwwxvhwwxwxxxvxwwgwwwwxwwwvwxxwggwwwhgwwwxwwwfuwvfgxwwwxwwwwvvxwwwfwwwgwwvwgwwgxvwvwwhvwvwwggwvwggvwvwwxwgvwxgwvwvwwwwxwwvwgwwwxgwxwvvxxxxvwwwwwwwwwwwgvwgwwvvgwxxxwxwxwwxwhvgwvwfvwwwwwgwwwvvwvwgwwgxgwgggwwwwvgwVwfguvvgwvfwwwwxgwwwgwfvvxwgwgfggwvwgxvwwfwvwwfxwwwwwfgfgguvwgwwefvgggwvwvwwwfwvgwgwwvvWwvxvwwfwwwwgwgvgvwvgggwvwwgwwwvgwwwwwvwwwwgwwvgwxwxwwvwwxwwwxwxwfgwuvwfwwugvwwgwwvXvvwwxwwwwwvwwgwwvwvgwwwwwgwwwwwwwxxgwvgvwwgwwwfwvvxwwwwvwwwxxwwxwwvwwwvwvwgvvgvgggwwwvwgwwwwvgwWuvfgwwvwggvwwVuvfgwwwxgwvwwvuwWwvfxwgwwxwgxwwgwwwwwxwwvwwwwwvghwvwwwwgwvwwwwwwwxfwvvgvwwxxwxwxwxwwwgvwghwwwwgwwwuwWwwvfwxhwgvhxxgvgwwvwwwwvwgwwwwwwwwwwgwxwwhxxwwwwwgxwwvvvwwwwgwwwwxwwwgvwgvwgwwwwwwwwxwwvgwfwfvxggvwfxgvxwwwvxwhxvxwgwwwxxxxvgwwxwwwxwxwwgwwwwwxxxwwxwwwxwwxxxxxwwwgwvwxwwwgwvhwxwwvxxwwwwxwxwwwxwxwwwxwwwxxwxxwwwwgwwxxwwwxxwxxwxwwwwwvxxxxxwwxwwxxxwwwwwgwwxwwhwxxgvxwwxxxvwwwwwwwwwwxwwwwwwwwwwxwwwxwwwxwxxwxwxxwxwwxxxwxxxwxwgxwwxhxgxwwxwwwwwwwgwfhgvgwwwwwgxgggvwwwwwgwwgvwvvwvwwwwwwvwwwwwxwwxwwwxgxwwxwxxwwwxxxxwwhxwwwwwvgxxwvxwhxwxwxxwwwwwvxwxxxwwxwwwxxxxwwwwxxwxwwxxxwwvhwxwxwgxwxxwxxxwwxwwwwxxxfwwwwwgwwwwwwwvxwwxwwwxwwwxxwwxgwvwwggwwvgwvgxghwwvxgwwhwwwwwwwwwxwgxwwwwwwwwwxwxwwxxwvwxwwwwwxwwwwwvvgxwwxwwwwxxvwwwwwfxwwwwwwwwxxwwxwwwwwwxwxxxwwwxwxxwxwxwwvvwhwwwxxwxwxxwwxxwwwwwwgxxwwwxwxvwwxwwwwwwwwwwvvwwwgwwgvvwhwfwvvwvwvwwwwwwwwwwwwxwwwwwwwwwwwwwxwxffwwwwwhwwgwwwwxgwwwwggwwufffgwWVfvwwwwvwggxwggwwxwvwffgvwwvwwwwwvwwvwwwwwwggffwwgwxvvgwwwwwwwwwgwwxhwwgwwwwxxxggwwwwgwwxxwvfvgwwfVvwgwwuwwefvvgfxwvwwwwwwwvvwwxxvwwvwwwwwwwwwxxvwgwxwxwggvwwwwvvhgwwwwvwwwgwwxwhwwwxwwvwwwwwwwwxwxwgwxxwwwwxxxhwwwwhwwxhvhhgvxxxxwxxwwxwxwxxwwxwwwxxwwwxwwxwxxxwxxxwwwxhwxvvxwwwxvwxwwxwwvxwwwwwxwwwxwwgvwfwwwgwvwfwgwwwwvwwwgwghgwwwxgwwwwwwggxwwwxwxwwxwxwxffwvwgwwgvwwwxvwxwxgwwxvevVwvgewfwwwwvwfwvgvwgwwwuwfuvwfvwfxfwwvwgfwwwwwwvffgwgwvwgwggwwwwwwvgwxwgxwwwwgwxwxwwgvwxwwwvwwwwwxwevWwwfegwgwxwuwwevvvgwwgwgwwwwwxvwxwvwwvwwgvwwxwwxwhwgxxwxvwwgxvxvvwvwwwvwgxfwxwwwxgwxxxgfxgfvgwfwvwwgwgwwwxwvwxWgwVvwvegvgwwWgvVwvwugfwwwWwgWvfwwxxhwwgvwwwgwwwwvwxggvwgwwwwwwvxwhwvwwxwgwvwwwvwvvwgwvxwwwwwwwwxwwwhgwgwwvfwwgwwWwgVwvwfxwwgvwgwwffvvwwwwgwwgwwvwxxwwwghxgvwwwxxwxwwvhwgwvwhwwgvhvwxwwwvwwwwwwffwwffwwgvwwvgwwwwwwxggwwveVVwwfffwgwwwvvVfgwgwfvwwwxuwgefvwxxvwwwwxwwwvwfwwgwwwfwxwwwwwwvwwwvwwwwxwwwwxgwvwwgwgwwwxxwwwwwxxxvggxwwgwwwwxvxwfvvwvwwwfwwwwwgwwwwvvwwvxvwwvwgwwwwwwxgxxwwwwwwxxvwgvwwwwgwgwvwwvxwhwwxwgwwwwxwwwvwxwwwwwwvwgfvwwggwwwhxwvgwvwxwxwvwwwwwwwwwxhxxwwwwwwxxhwxwwwwxwwwgwwwwxgfvwwwwwwwwfwxwxwwwwxwxwwwwwhvvwwwwxwxwxwwwwwgxwgxwwwwwwxwwwggfvvgxwwwwgfvfwwwwxwwwwxwwwwwwwwwwwwwwwwwwwwwwwwxxwwwxwwwhfwwwwwwxwwgwxwwxwgxwvwgWvwggvWwwwgvwgwwwxwxgxwxvwwwwwwxvwfwxwwwgvwwwwgwgvfwfwwxxfwwwxwgvgwwwxwxwwwgvxwwgxxwwgwwWwwvwwVwxwxwwwxvwwfwwgfwwxwxwwwgwwwwwwvwwwwxwgvwwwwxxwfwwxwwhvwwwwwwxxwxxxgwvvwwwwgwwwvwvwxhgwwfwwwvfwwwwfwxxxwvwwxwwwwfwwwwwwwxwwwwxgxwwwwxwxwwwwwwxxxxwxwwwwwxwwxwwwxxwwwwxwwwxxwwxvxwwwwvgxwwggxvggvgwwwxwwwwwxxgvwwxwgwwwvwxwxwwwwwxwwgwhwggwwwxwwwxwwwxxwwwxwwwvwxwxwgvwxxxwggwxxwwwxwwxwxwwwxxwwwwwxxxxwxxwwvwxwwxxxwxwxhxxwxvxwwwgwxwxwwxwxxxxwxwwwwxxwxxxwxxwxwxwxwwwwwgwxwxxhxwwwvxxwxxhhxxfwxxwxxwwwxxwwwwgggwvwwwwvgvwwgwgwwwwwxxwwwwgwwgwgwvxwwvwwwxxwwwwgwggwvwgvwxwwwwvwxwwwxwgxwwwwwxgwwgwwwgwvwvwwwxwwxwwwwwxwwwwwwxxwwwwxxxwxxwxwwwwwwvwwgwggwwvwwwwwgwvwwxxwvwwxgxwwwgwvgwwwwwwvwxxwwgxwgxwxvgwxwwwwwwwwvwwwwwwwwwxwvwwwxvwvvwwwxwwwwwwwwxvvwgvfwxwgwxwwwgfvwwwwwwgwwvwwvfgvwwwvwwwxwvwwgwwwxwwwwwgwwvwwvwxwwwxwxwwwxwwwwwwwxwwxwwxwxxxxwhwgwwxhwwwwxwwvwwxxwwvwwxwxwwwhwwwwwwxxvwwwvwxxwhwgxwhgwwxwwxxwwvwwxwwxwxwwwwxwxwvfwwgvwgvvwffwwwxxhwgwgUwwwwfvwgwwwvUwwvwgwwxwwwvgfwwwxxwxwxhwxwwvwwxwwgwwxwxwwgwwxhwwwwgvxwwhxxwfvwxwwwwxwwxwwvvwwwwwwxxhwwwwvwwwgwwwgvwwxwgxhwwwwwwwvwwwxgwwxwhwwgwhwwwfvwxwgwxxxwwxwwwwxwxxxwxxxwwwwwwxxwwwwwxwwxxxxwwxxwxxwwxxwwwxwwxwwwxwxxwwwxxhwwxwxwwwwhxxwwwwxwxwxguhvwxvvxwxvxwwwwxxxwxwwxgwwfxwxvvwwhwwxwwwwvfwgwxwxvvwwxvwwxwwwxxwxxxxgvxwxvgvxxwxwwwgvguwwvwwvwwgwwwxxwhxwwwxvvwxwwwhxwwwwgwxxxwvuwvwwwwvwwgvwwvwwwwwwwvwwwvwwwvwwvwwwvwwwwxxwvgxxwxgvwwwfhwxwwwwgwxwvXwvvwwxvwvxwwwxvwwwvwwwxwxxxxxvvwwuxwwvwwwxwvhwwgwwghxxvwvwwhgwvgxxxwxxxwwxwvhxvwvwxwwxxxvgvuwwwwwvfwgwwxwxxxwvwwvuvwhwwwwvxwwwgwwwgxwvwgvwwwxwgwwvvwwgwwwwgxwwwxwvwwvwwwxxwwwxwhgwwwwxwfwwvxhwxwwxwwxxwwgvgxwwvwvwvwwwwxwwwxxgxwxwxwwwwgwwwwxxxgxxxwwvhhwxwwwwxwwwxhxxwwwwwxxxhxwwwxwwxwxwvwwwwgwwwwwwvxwwwwwwwhvwgwxwwwwwwgwwgwwwfwwwvwwwwwwxwvwwwwwwwwwxvwwxwgwxxwvgwwvwxxwxgfguwfwwwwwwXwwwggwxwwgfvvgvVffevwxwwfugwgwffxwwwvwffgwxxwxwwwxwvvwwwwwwwxxvxfwfwwgfwwgggvwwvwwggvwgwwwwxwxwwwwfxxwvwgvwwwxvwxxwwvfwfefwwwwwvfWfhxwwgwxwxvwuuwhwwvvvwwwxggwwwxwwxgxvwfvwxwxwwvwghxwxgxwxxwwwvwhgxwwwwxxxwwxwwwwwwxvwwwxwwwwwwxgwhwwvwwwxwxghwwgwwwwwxxwxwwwwxwwwwhvxwwwwwxwwwxvwvwxwwwxwwwxwwwwwxwxwxwwwxwwwwwwwxwxwwwvwwwwvwwwwwwxwwhwwwxwwwwwwwwwwwwhwwwwwwfwwwwwwhvgvwwwwwwwxwwwxgwwwvwxwxggvwxwwvwxwwwgWggwgwwwvwwgwxwxwwgfvgffwUvvwxwwvgwwwwevxwwwwfvwxwwwwwwwwwwwwwwwwvwVwgwwvgvwgvgwwvvwgwvwvhwwwwgxwwxhwwvwvvwxxxgfwwVvewwwwvgffgwxvgfxwxgwvwvvgwvwvvwwwwwwwwwgxxgwwxwwxxwwvvwwwxgwwxxwwwgwvgxwwxwwwxwwwfvhgvwxvwgwwwwwwwgvwwfvffvgxgwvvvffvgwxwhvwwgvgwwgxwgwwwxvwwwxwwxxxwgxwwwvwwwxwwwxxwwgwwxwwwxwxvxxwwxwxwwwwxxwwwwfwwgvwwwxwfvwwwwwwxhxwxwwwvwwxwxwwwwvwwwwwwwwwwwvggwwwwwwwwwxwgxwwwxwwxwxwwwxxwwwwwWfwwgVwwwwwfgvgvwwgWggWefvffvwwwwwvggvgwvfvxxwwxwwUvfxxwwgwvwwwwwfwwwwxwwxwfwfgvwfwwfgwwwwwvvwggvfgwwwwwxwwfwfwxwwwxwwvwxxwxwwxfvwweefwwfxwfggwwwwxxwwwwhwvvgwwwwwfwwwwxwgwxwgxwwwwwxxwwwwwwwxhwxxxwwxgwhxwwwxxxxxxxwwwwwxwwwxxwwvwxwwwvwwwxwfwwxgwwxwwwwxwxwwwwgvxwxxwwwxwwxwwxgvwwwwxwxxxwxwxuwwvwgfwwwwwxxxfwvwwwwgwwwwwwxwwwwwxwwwefefgfffUfvvvfffgvwxwwxwxwfgwvwvvfwvvffgvwfgvefwhgfwwvwwffWvwfgwwgvfgvfvgdvWfffgefwwwhevfwvgwwxfwvwhwwWfwffwwxfvwefvgvUffvwWffggxUvwwvwwhWefgxfwwgwwvvwwwwWvwUfwgxvvvxwwgfvfdgwfVfwvvvVgwuwgvfwwhfgvwefvffwwvvvfggwwgwwwgfVfwffffvwwwvvwxuwhfvwwxwwhwwgfvwwXffxwwwxwwwgvvwwwwwwxgwwvxwfwwwxvvgwwwVvwvvwWwvwwwxgwwwxwgxwwxwwwgvfwwwwfgwwwvvwwvwwxwwwfwwgxwwwxwxwwgvwhwwwwvwwwxwwwfxwfwwwwhwwwwvwwhwwwfgwwwvWfvgwvwhwwgvxweugfgvvwvwwvgvvgxwwwvwwwwxxwvuwwvwvwwwwfwwgwwghwwwxwvwxwxwwxWgwvwfgwwxwgwgwvgwggggwvwwxwwvwVhwgwwwxwwxwxwxvgvwhwwwwwwwwwwwxwwwxxwgvvwvwwfvwwwwxxwwwwwfgvvwxwgwwwwwwvwwwwwwwwwxwwggwwvwvwwwvxwfwggwwgwwhwwwwxwwggwvgwvVvvvwvxxwwwwxxwhgwwvwwvgwwwxwwxwwwwwwwwxwwxgegwggwgvwvwwwwwwvfgwwwwvvgfvfwhwwvwvwwwwwwfgvwvgwwwwwxvvgwwwxwwwwxwwwwwwxVvefvvwwvvwwwwxvwwwwwwewvvwgwwwwwvvxwwwvwwgwvxwwwwwvggwvwwwxvwwwwwwvvwvwwwgvgvwvwxwwwvxvxUvvfgvwgvvwwgvvgxgwwwwwgwwVvvwvvwwwvxgwwwwgfgwwwwwwwvwvgwwwwegwwvfwwwwgwwgwvxgvvwwvwxxwwwgggwwwwxWvwxwwuvfwwgwwvwwgvvvwwgwwwvwwwxwwwxhvvwwvwfvwxwwvxxwwggwwwgfwvxxggwwwwhgvvwwwwwxwwwxgwgfgwggwvxwxfwwwvfwwwwvwwwwxwxwhvwggvvvuwwwvvwxvwwxxxwwwwhvwwvwvvvvwxwwxwwwwwwwxxwxxwxwxwXgwwgggvgwwwxwwwwfvwgwvgvgwgwfxwxwwvwhggfVgvwhwwwfwwvWvwgwwgwgvwvwwwvxwwwgwwwwxwwvwxwxwwwwfwwwwwwwxwwwwwxwgvwwxwwwwxxwxwgwwwwwwwxgwxwfwwwxgwwvxwxwvwxvvgfwwwfwwwwwwwwvwwwwwwxwwvgvwwwgwwwwxwwwwgwwvwxxwwxxxgwwwwwgxxhxwxxwwxwwxwxxxwwwwwgwvvwwwwvwxgwvwwwvgxxwwwhvwxwwxxwxwxwhxxxwxxwxxwxxwxxxwxwwwwvwvwwwwwhvwxwgwwwxwwxxwxwvgxxwwwxwxxxwvxwwwhwwfgxxxwwwwwwxwwvgwxwwgxwwwwvwwxwxxxwwxwwxwxwfwwwwwxwxwwwwxvfxwwxwwwhwwwgxvxwwxwxwxwxwxxwwwwvwwxvwwwwhwwwxwxxwvwwwwwwxxxwwwggvfvwwwwwxwwwwwfvwwwwwwwxwxwwwwwwwwwwwxwxwwwwwwwxhvgwwwvwwgvwwwgwwwwwvwwVvwWwwwwwfwvwwgwgvwwwwxwxxwwvwwwgwwvwwwvwwhfwwwxxwwwgwfgwgvwwggwwxxxvwwvxgwfwwxwwwfvwwwxwvwxxwwwwwVwwgwwwwwwgfwwwwwwwxwwwwfwwwwwwvwwwwwwwwwvxwfwwwgwhwgwwwxvwwwwxwwgwwxwgfwwwwxxxwwgwwvwwwwwwgwvgwvgwwggwwwgvwfvwwwgwwwwwvwwwgwwwxwwvwwwwvwxwxwwwwwxgwwvhwgwwwwwwwxwgwwwwwxhwwggwwxwxvvwwwwwwwwwxwgwxwgwwwxwwwwvwvgwwwwwghgwgfwxwwwwwwwvggwvwwwwwwwwwwwwwgwgwwvwvxgwfwxgwwvwvwwxwxvhgwwxwxwwwwwvwvgwwgxxwwwxvgvggwvwvgwggwgvwwgwxwwwwxwwwwwwgxvwwwwvwwwwvwxwwwxwgwwwxwwwwgvwvwwwwwxgggwwwfwwvfgwwwxvvvfgwwggvwwwxwxwwwwwwxwwxwwwwwwwwwwwwwwgwwgwwxwwwvwvwwxwwwwggwxwwwwwxwwwwwfwvxwwgvwhwgvxhwwwxxwwwxwvwfwwwxwxwwwvwxgvxwxwgwvwwgwxgvggwwwxwxxwwwwgwwwgwwwwwwwwwgwwwwwwgwwwwhwwwgwwwwgwvgxhwvwwwxwwwggvgvxwwwxxxwwwvgwwwwxwvwwwwwwwfwwwwxwwwxwwwwxwwgwwwwwwgwwwwgwwvgwxwwgwgxgwwwxxfwwwwgggvwvwvwwgxggwggwwfxxwgwwvggvwxwvwwwwwxhxwxwwwxwvvwwwwwxwwgwwwwwxwvwwfwvgwwwfwwwwwgwwwvwwgwhxwvwwvgvgwwwwgwvgvwwwwwwwwwwwwwgwgwvvwwgvwwwhxgwvwwwvgwxwwwwvwxvwwwwgwwwwwwxwwgwwxwgwwwwxwgwwwwwfwwhwwwxgwxwwwvwwwvwwwwfwvwwwvwgwxvwhgwvxwvwwwwwwgwggxxwwxvwwxwxvxgvgwxxwwwvgvwwvggvgwwwgwwgxwhwwwWuwwvwwvwwgvwwfuwwvwwwwgwwgwwwwwwwxwgvwwgvwwwwwwxxgwwwwvwwwgwvwwxwwfgwgwxwwxwvgwfxxwxxxwwwxwwwwgvwwgwwwwxwxwwwgwwwfwwwwvgxwwwgwwwwxwwvwwwwvwwwwwwgwgxhwgwxhwwgfxwwwwwgxwwwxxwwwwwwvgxgwwwwwwfvvwwgvfwwxxwwvvwwgwwwwxwvvffxwwwwwxwwwxxwwxfxwwxwxwwwxxxxxxwxwwwwxwwvwwwwwvvwxxwwwwvfwxwwggwwwwwxxwwwwwwxwwwwwxxxxxxwwwxxxxwwxwwwwwwwgefwwwwvwwWvwvwxggwwvvwvwwWfvwwxgwwwwwfwwhwwwwwwxwwgwwwwvxxguwwwwwxxgwwvvwvwgwhwgwwwwwwgfgwwgfwwwwwgggvwwxwwwwvwhfgggxwwwgfwgwwgwfWwwvgwguwhwwxwwxvwhfvwwwxxwwwwgvwvwfwwwwvwgffuwwwwwwwwgwgwwwfwwxwwwwgxwwfxwwvwwgwwwgxwwwhfVvhxwwwwwxgvwxwgwvgxwwwwxwwvwvwwffwwwwwwvgwwwvwxwgwwgwxwgwxfegwgwwwxxvggvwggwgvwevwxgxvwwfwwgvwwgxghwwwwwwwwwwwfgwvgwwwwwfgwwxwwwwwwvwwfvwwgwxwwwwwwwffwwwxwxwwwwwgwwwgwwwvwwvwuwwwwwwhwxgwwvxwgwwwwwvxwwgwwggwxwwxwwwffexvvwwvwWgvxwhwwwvwwwwwwgvwxwgfvwwwwwwwvwwwwffwwwxwwwwwhfvwwwwwwwwwwwwwgwxgwwgwggwwvxwvwfwhwhwfwxwwwwwwwwggfgwwwwwwwwfvxwwwggwwwxvwwwvxwgwwwxwvgefwgwwwgwvvwvwvwgwwwwhwvwwuwwwwwwvwwvxgwxwwxwwxwwwxwxfwwwwgggxwwxwwwwwxxxgxwwwgwxxgxwxhwwxwxxwwxxxxxwxxxxxwxxwxxwwhwxxvwxxxwwxwwwxwwxwgwhwwxwwwxwwwwwwwxwgxxxxwxxwxwxxxwwxwxxxwxxwhfxwxwxwgevwvvwxwwwfwwwgxwwfvwvwwxvxwXgfwwwvwwwwwvwvufgwgvwwhwgwwwwgfvwwwxxwwwwwwwwxwfxwWwgwwwvgwwvwwwfwfxwwfwhwwxwwwwvhwfffwvwxwwwfvwgwggwwxwwwwwwvwwwwxwXvwwwwwwwgwwvgggvwfwwwvwwfwWfvwwwwwvwgvwxwhwwfwwwwwwvwwwfwwwxwwgwvvwxwwwxwxxwxxxxxxxxxxxxxwwxxxwxxxxwxxxxwwyxwxxxwxwxxwwwxxxxxxxxwwxxxxwwxwxwxwxxxwwwwxxxwwxxxxxxxwxxxxxxyyxxxxxxxxxxxxwwwxwxwxwxxxxxvwwxgwgwwwwwgvwwxxwwxwxwxxwxwwxwwxxxwxxvxxxwwwxwxvxxxwwwxxxxxxxxwwwxwxxxwwwxxxxwxwwhxwxwwxwwxwwxxwfwwwwggfgggwvvgfwvwgfvwgUfewwwwffewvvgffgWUfvufffwwvfvwgvgfwfgVfgwVfUgwwvgegfwWTfeegVUugwfgeVeffvVVffWeVuvgfvwwgfwwgfVuwfvVfgvUVEgfwvgvVuwWfVeffUDuwffwgvwvwwgwgvgevETVeeVVgefUfwffeffUewfVUuhfvUUfvfffgggfvwwffgffvwgVfvgewvfgfffUVUfffT4gfvwffgfUEvwfDEUEufwffvwvvvffwWvxfvfwtwwwwfwwgvwWufwfwffwvWuwgvwfgfwggvffgvfvwfvwewffgffggevgvvwwfgfgvfWevfvfggffWevgfvfvfwvfwvVffffVuVUweffUffvffgUvvfvgwvwwvwwwwxwwwfgvwwwfwwfgwwwwwwwwwwwwfgvgwwgvwgvgwwwwwwwwwwwwvwwfwgvwgwvgwwffwwguwvgwvvfwfvgwwfvgvwfggVWffffvfwwfvwffggtvwvggvwfvwuugfggVUvvgfufvuggWggfvfgVgvfuvfVggggwgfVgWUvfVvWfgwggWfvVvuUffffffufvfewvuggWggfVfUffVefeEgfVffffuVffVufeuffgwgvwxgwwwwwvwwvewgWgwfwfwvfwvvfwvffWwggWfffvwgfgwfggvwvwvwwwwwwwgwvgwwWggvvgfgfgfvfwguvfwwgwvggvvggweuufvefvgvvvgvfffWwvvfvWfsfvwvgvgfeVwvegvgeffVvTfweeVvWfvevUWgvVveUVedVugVvfefEuVVufVfvvvgTeWUVfUefvVfvfeVvdgweuWvWeuVfUUffVfEV6udUefeudefUedetdfegwvvfwvgwwwvwvfGfgUgufvewVvefffuVvfWffguffeVvffvfWgffgefffwvgvvfvfwuVvvffvWwfwvgvfVgffevggfgffgvefggfefTeggwgfgwfwwgvvWvwfwfwwtwwxvwgfewWvvfvfgffVfevgvvevfwgvvfwfffeEfVwewfguevefuVfuffwfgwfgfgevWeefvfguWvgguwgvvevfgvffffggfVeEgUwevfgUfeVuFeVfwvwvwwwvgwvwwwwwfwfvgvgfvvwwvfwugfwufgwvggwfgwgvgugvfvgwwvwvfgwvgwvvwgwfwwwvwwvwfvgufvefwwvwgwfgeVvggvgvggfvwffwgfffefweugUgVffcwwgfvfefvteWfWVvVfwfeeguvfggVwfffVWffeudVfvWVgguffgWvVfvfVffwwgfevefvdeWgWWuVffgevgevgfgWveeeVVvfeudFfeWVggvUfgWfUfveeffvwwwvwwwwwwwvVufffgfgfwgvwffwvvvvggwwwwgggvwgfgwgvWwfvvvwvvwgvvwvvWgWggfgvvgggeegfffdfwwgwwffvuvgwweuufgVfegggfvfgvvwfwvwggwfdwwgvggvwwfwgvfgfvvgVwgfwfvwvgvwgffgfwVfVfwWffvvvgfvffvwvvgfgggfvevfffggffvfevvfVvwfggvwVfUfffefefWTffVffwVfffvVfVVvfvwwwwgwxxwwgfgfwgwfgwgwgvwwwwvgwwwwwvgfwgwvwwggggggvwwwgvwgwwgwvVvewvwevffuggfgWfUvvvgvwgffvwggfwVvxxwwxwwwwwwgfwwwwwfwvxwwxwxxwwxxxwwxxwwxvwwwxwgxxxwwwxxwwwxxxxxxxwxwxwwwwwwwwxxgegwhwgwwxfgvwggwvvwwxwwvwxxxxxxxxxxxxxgwhwxxwxxwxxwwwwwxxwxwwxwxxwgfgfWwgfhfVewggewfguvfgvggefvwgvffgVguvVTefvwvfVfVguvfffVVVEcUffwgwVhvugVWvufueFfegwggeUVvwUeVUFWteeefvwgvffgVguvffeVEVVcUfVwfgVhfvUDGeeVveVfgvwwwwfwwgwwwwvwWefUffgwfvvWgwgfVVgfgtuvvwuwGvveVfwwvvwggwggVWffguvvfgwwVvwwgEfffgeVUvggvwgwfXgvvVWgfwdeveueXvvfhfVetgwfeVvgvveegwgeffgggffwfhvvvVeffwgWgffgvvufvwegVeTWggwvvgvvveVvvwfufVffvwgEVdUwffVVVWuueVfufwwffWehvefffVUVeSVeeffeGfeVT6edevveGewuvwhgwwgvwwWfwdfVTUffWfvgffgvVUegvuuefwhwevfefgvfwwwgwhwfVvgwvvewvvwgvvwwWUfffVVVevfvvwwgWgvfWFVevgdefgWgffWhufufvwWgvwwfwffwgfffvwwgfgWgfewfeffvgwfWfgffwfwvgfftUguWwwWhfgwGgffvfUwVVvfwwgEVefVgUeVWefgefwfvwwgwgxvgwfvfGffuUffVvfghfffGWdVfvUgfUgxwxxvvwwgvxwwvgWvefffggvwgwgwWVefvffwufvwWwvffwwfwwwwwvgVfwwffwvwgwvwfwggVffvffeFffwgwhwgvWwfVeGveeUevgggvvgwfgevgvwggdwvvwgvfwgxwgvvgwwghuvwfwgwxfwgffvwwwwwwvwvfvwgwwhwvwwwfwwwxfwwwuxgfwgwxfwwxGvwvwweffxgfwfvugvggfvufvwvvwwwwwxvxxvgwvwwwwwwwwwxwwvxwwvvwxwevvvggvwwwwwwwuwvwfvwwwwvfggvwgvwwwgfwvwhwxxwwhfwxwgVwevgfgvfUwhvffvfgwVfwwvgUffvvvvvwevwgfUefwfwffvefvVvgwWeeVTgfEvgfgvffdfvffvUvgefwfgTUfufffeuTewVueffvgvvfvefgVfwvWUeWeeVFffegwefCefVevDVftgwgwwwvwwvwwwwvgGgfVfgfVuwwvgfwVeuwffwVugvxWwggfvvfvwvgwxgffvgwwVvwgwwfwwvveefeeeVVffgfwwwfWfwgffVwfVFvvwwwwvwwvffwvvgvfFwvwwwwxwvvwvhgwfgvhwwvvwggxwwwxggvwWgfwgghwwwwvfvhfvwwwwxgxvwvwvuxgwvwvgwwuvvvwfgwVgxfgwvwWgfwffgVwwhfvvvgvvfvwxvwwwwxwwxwvwwwwwwwwwwxxxwwwvwwfgwuwwwwgwgwwwwgwxvwvwxvxwwxwwwvgwfwxwxwwwwxgwvxxvgwfggvwwwfwgwwwvvWwwwxvxwwvhvwwfwwwgwwwvxwwwwggwwffgggvhxgwvwgfvvwgvvxgvvwgwwwgwvwwwwvvwVvvgvvggggvfwvwfggWgvgwgwvvwvvvvfgvvhvwwwwvwwwxvwwxwvwwxxwwgwwwvhwvxgwwvwxxwwwxxwgwxxwwvwgxwwwwwwwxwgggwwvwwwwxwvxghxwxvgWfvwvfUfvggffwwwfvwFwvwggwvwvxgwwwgwgxwgvwxggxgwvgwwgwwfwwggUxgwwwwgvfxgwwgxgwXxvwvvxgwxvvwwwwvwwvVwgffwgwWvwgfwfgWwwggwvgvwfgwvwwwwgwxwwxgxxxfvwvwgwvwxwwwxwwwwwwwxgwwvwwgwgvwwwwwxwxwwgwvxwvggggwwvwxwgvfwgWguwwwwwhxwxWwvxfvfvVegwfewgfvgUvwvgeguvgwvfffvgfvggfwgffwWfvfWvfvfggfvvgwvvVtggvffvVwvfwvgEgvvffuWffvwfgWvFVeFfVgVUuffgwfgwfgfxggfvgfefVtfefefVEgUVUewFgvvfvvVfvgvvwgvgwwwwgfwvWvfwwwfegffgWffVvuffgwvuVxwgvgvgwvgegvvfwwfgvvvwwwwwgVwwwwffggfWfwvWwgVfUWggfWfgfWfeffgfUgdWfwegfffeFfuvheWfeeufwfffVfffvfgfuufvegVfvgfvWguvfufffefeggfvWfVvgfuveWfufvfvUfUgfVedUfdUeffVUvfeeeffefuegggwvefefFeSVfVefT6eeedefGvffvefFeWwvWfwffWgwwwvuVwdUfvfvuFVUeffgvVVffeeffvfvgfefvwwwfVfVvvwwwgfwvuvgwvwVffwggfVffVVvwwfwWfVFVevffvWWffdewgffFgevVgewefgufwwVgfVfVfvvfffvfwgWgewgTfegVwWvfgvefgegvfvguffwvvgVwfvfVwFfeUgffwFUUffvfeFvUVfefVefeVfgfffwwggfwgfvVfUfvUfveffUWdvfVfVgfVfffwfVvwevwvwvfgwffwgVgvwuvgwefvggvfguvffVvufffwffwwxvfWvegvwwwvvfwffvvwgfgwwvvWvfvVfGfgwvffggvVfgwwfffWUEvfugwwgwwwvvvwwvvguwfgwwwwwwvwxggxwwgwxvuwwwwgxwxwgfwvvvvvxgxxwvwwxwgvwwvxWwxwxvwfgwgwwvxwvvwxwwgwhwvwxuvwuuvggwWfvfxvwgfvvvwgvwxwwxxwwgwggwxvwwvgxgxwvvvvvwwggwvwhwwwwgvwvwxwwvgwwwggwwwwxwgwwgwwxvgwgvxxwwggwwvvwwfvTuwwUvwgfwWewwvfvwffwvwgVuggffvVfgvvfgfevffwvVgwgvVvvvggefgVfgvegggwevUvvfuwfuffvffgVufVefveffvfffwfvggvVvwwgVfVffWefguffvTefwfeewgUfwveeggwwvgwwgvvgxggvwwvUvwevvwggwwvvgffwvvfgwwvwwwgvwfvgwgfwwvwgfgwwwwgfwwvgvwuwffVvvwgvuvgfffvvwfvfgfUwwvwwwggwwwvwwwgwwWwwwwwwxxxvhvwwgxwxwwwxwwxwgwwfwvwhggwwwxwvvwwwxwxwxxvvvggvgwwwxwwgwxhgwxxwhwgwVvvwwggfwwxvwwfwwwwwwvxwxxxwxvwwwgwwxxxxwwwwwvxwwwwxxwwwwwxgwxxwvxhxxwwxxxxgwvxwxxgxfxxwwvwvvvwwgwwwwvwWwvvwwwwxwxwvwwhwwvwwwwxwwxwwwvwwwgwxwwwwwwwxwwwxwwwvwwwwwxxwwwwwxwvwwxwwgwggwwwvwwwwgwwxvwgwwwwvvwxwxxxxxxxwwwxwvhwwwwxwwxwvwxwgxxxwxvwwwwwhgwwwwxxfgwwxxwvhwvwhWhfvWvgwvwwwwfwvWvvwvvxwwwxwxgwwffwvwvwxxwwwwwwwvwvvxwgvxgggwgvwwxwvwwwvwggwvxwwgxwvwwwwvvgxgwvfgwvwvwggvwwvggwfgxgvvwvvvwxwgvwxwwxwwvwwwhxwwwvwwxwwvvwxwwvwwxwwxgwvxwxwvwwggwvxgwwhgwWgwvgxxwwhgvwwxhvvugxwWvgffwgwgwffwwvwwwgfvvgffwGfffgwgfgfVgvgFfefgwgfgVVfffvgvvfVfffVggvwwwwwggvfgwggwffvvDffTefgfeVTVfvVgfvwgwwgffwwgffvffEffVVWffffffuwwwvVVeUfwwvfvgfvwwxwwXfffffwfVffvvfegfVffVVffgvhwgfegevwwvvwxwgwwwwWfffgwvfgfxwwffwfWfVVfvwvffVwwgvvffgvvfevwwwwgvwgvxwvwwwwxwwgwxwxxwvwwxwwwwxxxwfxxwfwwwxxvwxwvwfwgwxwwwwwgwvxwvwwwwwwwwwxgxfwxwwwewwvwwvgfxfwwwwgwfwwfwwxvwwwxwwwwwwwxwwxwwwwwvwwwwgwwwxwwvwwwxxwxwxwwxwvwwxwxwwgwwxwwwwwwgvgwwwxwwwwxxxwggxhghwvvwxvvwwgwvwwwwwwxwxgwwwxwwxxwwhwwwxhwvvwvvxwxxwxxvvwgfwfhvgwwgwxwxggwwwwwwwwxxwxhwhwwwwvwwwwwwgwgwvwwwvvgwgwxxxwwwxxxwwwgwxxwwxwwfgwvwwwwwvxxxxwvwxwxxwxwwvwwxwwxvxwxwxwwwwgwxwxwwfxgvwwwwvgwgvgggwwgwwvwwgwvwwwwfwvvxxgwugugwvwwwfxgwvguWwfvwwwgxgwfwwwwwvwwwewfevggvwwxwwwvvwwvwvwwwvvwwvwgwwvgwwwgfwfwvgwwvhwgwvwvgfvffvfgwwwvwxvwgxVhwgvfwxwfwwgvwwwwwwvvwgwWwwwwfwwxxwwwvwwvhwfvvvxwwwwvvwxgwegwgwwvwwvhwxwgggvvxfxwwvewwvwwwwghvwwwfgwffwwwwwfwwwwvgxfwwvvwwfxwxwwfxvwgwguwvwwvwfwwgvwggvgevfvxVuwvvvvggvgwfwfwwwfhgwhwwwwxvwwwvwguwvvwgvUwfwwfvvgvvevffxvwhgwwwwvwwwwxggwwwgwvwwwgwwwvwvwvwxvwwwwwggwwwwwwvgwwvwwvwfwxxxgvwgwwwvwgvwfvhwwxwgwvggwwgggxghhxwwwvvwwwwfvwxxwwwgwxwwhfggwxgwwxwwwwwgxwwwxgfwwxgxwwhwwwwwwgwwxwwwwwhwwgwwvwwwwvwwvwfwhggxwwwwwvvvwwxggxgggxgwwvwfwwwxwwwxwwxxgwgwxwgwvwwwwwvwvwxwxxwwgwwwwvwwhwwwxhgwxvwvwwxwwxvfwxwwgwvwwwwwhwwhfwwwwwgugwwvgwwvwxwgwwvwwwwwxwvwwwwgwgwxwwwwhgvwwxwwvxwwxwgwgvwgvxvwxgwgwwwvwwwvwwwhwwxxxwgxwwwwvwwxwwhvgvwwwgwwgvxwwwwxwwwwwwxgwvwxwwwwwwvwwwxwgwwwwwwwwxwvxxxxwxwwwwwwxwwwwxwxwgwwxxvwxwwxwwggwvgggggfwvwfwVfwgwwfwxfxgwwhwgvgggxwvgwvwwwvgvxxvxxwfwwwvwgfxwfwwwwfwvwgxxwwgwwwwgxghwwgfgfgxfgxwvvvwxxgvggfwgwfwvwgxwwwwgxxxgxxxwxwwxxxxxwgwxwxwxwvwhwwwwxwgvwxvwxfwwgxwwvvxxwxgvgwxgwWUhggVhuVevfvgUwfgvufvwvVffvwegfwwgvwgeefvffgvwfvvgfEfffgwvfgWEwVguvfwgvuwwvVgVwwggdeVufufVvgeevfffvwfvgwgwvuVF4VVfffUFfgEgVXufvfgvefefFVVgvwwvwvwwgwgGVfvVuwwfVffVwgfevfwWffwwgvvWVfgvwfwwfgvggvuwwgwwwwxwwWVVfvUFfgvfWfwwwuvgveVfVggdVvvffwwwvdfUWuvfgUVUegvudWvWeuTfffgefvffueUfefuvvVffVwveVeffffeTUEVffwgggfTWvgftUfvefvfvgVfeffW5TTUffUUFfVeeTEUeeWvefVvWveTUC%EEUUEUUeeFeGeeUvVedUede6TegvffveVfwvfffCETffefVfVVUFfVeeTefTUeUffefTUUgfvwggfgfVvWfedwveVffggfgEUUeEUUevVfVffggefwUFVUFWUSdffWfffgffVgvWfheefVvgVffwgUgVgfgVeffvtUVgfwgewfdeUvufeVfffewfWfVVVvffeV6VTxfDgeffffuVwVEfgfvFTFeeefVfUefeVeeffvffwvwvfwEFFcUVffVUUFfegeEVfvfVffVffFUvwvfffwgfgwgGeVvffwwffgVfevfefeggevVvvgfFVWuvgwggfVeUfgfefuwgvvvwfvwVUVffVeVwwgggfgwfVfffeVfuVUTvwwvffvvvvwfvvvgwgevGwggVggvfvwwwvhwgggvwwvgwgwwvwwwwgfewwwwgxgfVvfffggwxwwggwvvgwvvwwfwwwgvvvgwggwvwvvwfWfwwWwWfwWfvgvfwwvwfufvfwwwwvhxwwwwvgwwvgvgwwvvwxgvvvwwwwgwwwvvwvgwxwxwvwwgwwwwwxwgVwgewwwvwgvxxwwgwgVvgfwhgwwgwwwggvTexfvvgfvgfwUvfwwUfgvwgVfgfWevffgwwfVuffvhfgvfwwwgVwUffvgfgffwTufvwUvwgweuvfgvewfwWUefvWffeefgfffvgwvgfgfvwwggVwDdeffffVVwTevgEuwgfeewvffewwvgwxwwwgwwWVfvfvgvffgfeuvgffvwgwffvwwgWgfgfxfwgfevwwwffwXvvwwxgvfdfvgVUVwwUfvwvgfUfwfUVwgffVvgfwwfvwwfeffgwVfvgdfvvvwfgwxxwwgwgvxwhxwvvwgwwwwwxxWffxwwwgwvhfewvvgfwxxvvwwxgwwwffwwwgwgfgvvwuggvwgwgxvwgugwwvvWwfgvgfwggggxvfvwwvwwwwwwwwxxvwwvwwwwvfwgwwwwgvggwwwxwgwwggwwwwwgwwwwwwwwwwwxxwwfvWwfwwwvfwwwhwwhgUgwfgwvxxvfgfggwwwgfwwfdfevvgvfwvxxhxwwvfvgwWgwvfvfwwwwwwVfwwwvwwwfffwgwvwwvwxxwwwwwwwgwwvvwwvvvvxgwwxvwwgvwwwvWggewvwgwfvgwvewvfwvwwwwxwwxxwgvwwwwfggwwwwgvvvgvwwxwgwWhgwvwwwwwgwhxvwwwwwxxwwWghwwfggwwxvwvgggghwvwxxxxwxgvefgfvgwgfevgwdeffgvfwgwwwvgfVffwwwgwwwvwwgwgwwxxxvwffegfwwvghfefvvgffwgwwgwwwxwgwwwvxvvfwwwggwffvxvewfwgxgwvggfgwwwvWWffvwgfwfhwufwvgfggwwwwwwwwwwwxwggfwxggwwwgwwvvwwwwwwwwwwWwwwwwxwwgxhwvvwwwxwwgggwvWguwgfwwwxwwxxvWgvhxvfvwxxwxwVhxvfhxwgfxxwwwwvggfvwwwwwwgwwggwwwvwwxwwWggfgvwwgwggwwxwxwwwgwwwwwvvwWWwwvwgewwwfwwwwwwvwwgwwwggffwfgfwggxwwgwfgwwwwwwvwxwxywxvwxgvggwvwwwgwwgfwwhwwwxwwwxwwwwwwwwxwwwwxwxwwwhwfwwgvvwvwgwwgwwwwfwwvgvvwvwwwwxwvwfgvwwfvwudvWVgfgwfvvwwxfwwwwwxwwwxWffwgwwwfvxVewvwfugwwgffvvgwfxwxvwvwxVVfffvgfwUvugvwgwwwhwfwwFewgfVtfwgWVwefvvVwvwefvwgvxwxwxefvfgvgwghvwfwvwgwvwvwhvwuhgvhvwvwwwxwweufeVwvgvgwghwwxguWwwXwfxgxwxxwggxwwxgVvvfegfhhfwwvxwwvwwgvwwxxxxxefvfvwwwwxxwdggwgvvgwweggfwvwxwxvwxgxwwfgvgvgwggwvwwwwwgwwxwwwheWWvufeVhxfgWfwugWwugvwhwxwwxwxhfwgvvvgwhfgXVwvfgwvwvvwwwfwxXvfgwxfwggvwwxwxxgwvdWxgvvgwhgwhvwuuggxVfwvggxxwgwwwwvhxxxvfwvfwvhvwwvwwwgwwfxvwwxvwgvwwwvwwhwwwWvgwffwugxggvgvwvguwvwwwwwxffwfgfvgvhwvvwwgvwwwhvwguWfwfwuGxguXuWffugwwvfgvwvvwxwxxwwfvgVwewffhfvgvgwvvvgwwwwwgwwgfxvwwwxwwwvhxvwwwwwwwewfwuGxfwffhvgxvwgvvWwgVhvfwWxwwwwxxwvexghfgvwwwfxvwvwxxxgwvwggwwwxwwvwwwxwwwxwwgvVvvgfvwWwvUwfwvvfwvwvwgxwvfevvfgvfwfxvwwvwwwxwwgwwgeEwgfgvwWwvUwegvuvVwwugvufxgwxwwxwwwxwwWfgghwvwhwvfwUxwwvwwwwWvgghwwxwvwwfvgwgwwwxgfgfuwWwgwwhwwXwxfvwgveXgwwXwxwxwhggwggxfuevwfgggwwwwwgvwwvvhwxwxwgfwwvwvwwxxwfggfvvvwgXghggwwvgwxvwvxxxwxgvwvvvwwggxwvwwvwxhxVgWfvvvvxXWhhVVfuWgwwvvhxwwxxxwwffwvvfxgggxWgwwvfgvwwwxvwwxxwwxggwwwwwwwvwgvfuexWgvfhgwwhwwwtvxghgVwvxgwwvwvhwwvwfgfewfuxwgvwvwwxgfwwgwfghvxwfvwgfwwgvfugevwfwwgugugvwwvWwwvwxxhfwvfwfvgwWuwwvwwwwwxwgvfvWfwfvehwgugeVvvuGwvgfuwwxwwxxwwwhwwVewfhwgwwwhvxwffwvvwgxgfwwxwwwxwwwwwxhwvwfxXvfhvgwwgwwwexwgwwgwxwgwwXeeffeTUffVTfcffVUeffVeWgwwuuwWfffwfvfxwweufFUVffvvvwxwfUTvfgfvwwgVUfUfVVeewwwvfgxgWwwuuwgffVwwffwwweuggvvFgwVVwxwfffvgWTuwvgVVfffffUewwweVfwwgfvvuwwwwxwwwwWwwgfvwwgwWwfffwwwwwwwwwwVgffUvfgvfFwvfUwxwgffgfwwwvgvvWEuwwwffvgvwwwwWUvwwgeevwwwxwwfffefwvfgvfewwwwwgVfvfwvWgvfeeuwwwgvvWuffgfeegvfgwffVfewwwwfvfwwgWVffvvwxgvwfffffe6eVeVeEUfUfFUUUffVxvgvvwwgwwfFeeVVfeUUEwwgwfgvfefVfewvfffwwgVfwwwxwwgfUvgvwwVFefeVfFUUefffgfvvgfeffuwwxwgfvwwwgwvvfgwgvgvwvffefeUUEwvwgfwwwefgvfefvwgfffggffvvuvvfxwvwWgwwffWvvgvfwwwxgwwwwwvwwwxwvwwwwggwwgwvwwhvgwgvwwwwgwvgvWgwwgwwvwwwwvwvwvgfggwwwwwwwhwvwxxwxufwguwvvgwgvfvwvfwVwfVvwggvwgxvxxwwwxxwwwgxfvwvxgVwgvwwvvvwfwwwwgvVwwwwgwwwvwwwwwwvwxwwxwwwgewwwgvwwgwwwxgxvffgfvgxvgvwwggxwgwfggwgwgwvwvgffvfxgxfwwwvwwgvvvgwwwwvwvwgwvvwwwvwwgWwwwwwwwwwevghxfvvwxwwwgwwwgwwwggvfwwvgwwfwvxwwxxwwwgwwwguwwgwfvgwgfvgfgvvvvggwwwvwwwwwwwfwfwwXfgfgwvgwvvwvwwffuxwwgwwwgxgwxxvwxwwxwwwwwuwfhwwxwgwwwwxwfwufWwwgvvwwxwwwvwwegwwgxwggwvwwvwfvwgwwwgfgWwvhwwvwwwwwgxvgxwwwwwvvgvxvxwwwvvfvgvgvgwwwhvvwwwwvfvwwwgggvwwwwwfwhwvggxwuwwwwhwuwwgvwvgvgUwUvhvvfwuwgvvxwwwxxwwgfvvffxgvhvwwgvwfwwwwvfwfwwwgvwwhvgwgxwuwwwwwwxwwwgguwwwwwwwgwwwxwwwvggvWwwfwwwwfxwwwgvwwxvvgwwwwvwwwvvwxwxwwwgvfxwwwwwgwvxxwwwgwhwwwwwwgggfgxwxwwgwvwwwvwwgvxwxwwwwwwxhwwvwxwfwgvxwwwwwwwghvgvggvvwwvxxwxwwwwvwvwwxvgwgwxwwwwwwwwwwwwvvwwxwxwxxxwwxxwwwwxxwwwwwwxvxwvwvvvhvxxwwwwxwguWwfuWwfgvvwgfwfxgwWfvxwwfvgwewwwwvwwvwgggxfvxwvwxwvwvwwvxwwvghvwxwgfwwwwxxwxhwfwwgwwwwwwwwwwwwwvfxwvhhxxggwvwfwvvwvvgwffwhwffxgvfvxwwgwwxwwwwxwwwvvgwvWxwwgwwwgwwvwwwgwfwwwgwwwhxvwhwwgwvwwwxwwwwvvwfgggwhwgwwwXfvvwhewwwwvvvwwwvwgwewVvfxfvwgvwfgvvwwwgffwwwwgvwuwegvvwwwfwfwuwewgwwvwgggvwwwwwwwvvvwvfegwvwwxfwwwwwfwwfwgwwwgvwwwwggwxwvwgwwvwgvgwfvhvgvvhwuvwwwgfvwvvwwxxvggwwwwxvWfwwwvwwgwwvwwwwvggwxgwwhgwhwxhwvwvwwwwwwwfwwwwhvwwgwwwegxwwfgwhwgwwxgwwfwggfvfVfwvvGwwgfwVvvgfgwwwxwxvgfwfxwxxwfwhfVvwwwwwwxgvvgvwxgwffuggfwwwgwwxxgxwwxxvwgggwfxxwwgWfwwwwwwwfvwwxwwwwwwwgwVffgvxxxwgxxwxwwwwxwwwgxgwvwwwxxxwwwwgvxxwxwwwwggexwxxwwxwwhwwffwxxwwwwxwxwfgVfvvvwwwwxwgwwxwxxxwxwxwxxxxhwxwwxxgwwwwwwxwwwwwgvwwwwxvhwxwwwxwgwvXvwvgvvwwgvgwwgwwxxgfwgwwvggxwgwVwwvwgxvwvvgwwxwwwwwxxfghwgwhxvggfgwwxwwxwwvwxwfwxvwwxxxwxvgxwwwwwwwfvwwwwwxwhwwgwgxfgwwwxwgvwxwwwxvgxwvwvwwwxwvwwvgwewgwxwvwwwwuwwgwwvwwwgwhwgxwwvfwvwxwhwxxxwwwwxxwwxvfwufgfwgggwvwwvwwwwwwxwgfggwfvvggvvgfgvuvvgvvfvuvggwxwgwwwxwVfXfuffgggvwfwvvwwgWvvfufwgwhwvwgwxwvwwwwwwwwwxwgwwuvgwwwwwghgvwgwwwgggvwwxwhwwvwwwgwwwgwwhwwvwxhwgxwgwhwWvwwwxvwggWvfgwwxwwwvwuwvwwwwggwxggwVwvwwwwvxvwwwwxgfufgfggwggwfwwwwxwwxgwwwfgvwwegvwwwWgvVwvxwwwwfwvgwwwwvwxxwwUhfeegvgwwggvgwwwgvuvfvegfxvwwvwxwwxwwwwxwwxwwwwggfxvgxwwwgwgwvwxwwvgvgwfxvwwvhfuxgVvwgvwgfevVvfvgvgwwwvfgVwgvvwwwwwvfgewwwwfvwgwVwwuwwfwwgvfufefxfvwwgwwwwwxwwwwgvgwwggwwwvwvgvwgvwvwwfwwUwgvfwggffVvfvfvfuwvwwwwvxxwwwwwvgwwwwwwfvfevxhvwggwwgwwwfwvwgggvwwxfvwgvwvwwwwwwwgwwwwwwUwggvwwvggwwwwfvfgfgWwwfwwwhwwxgwwgwxwwxhxwxxwfgwgwhvwxvxgwwwwggwxxwwxwwwwwwvxwfwgvwefwwxwvwwWwgvggvwwwfwwvgxwwxxxwwwvfxwwwwgwxfvfgwwevwwxwxwxwxvvxvhvgwwwvvxwwwwwvgvvwgghwxwxgvwfvxgwgwwwxwgwwvgwxxggwgxxxwvgewgxwwxxxwxgfhxgfgfvvwfvvvgffvgwwwwwwwgvvgxxxwwwwwwwvwgxwwwwewwxwwwwgwffhwgwhvxxwwwwxwgxwvwgwxwwwwvgwgvgwfwxfwwvvvwwgwwvgugwwfgvhwhwxfwwwwwwwghwwwwwxvwgwwwwwwxxwwwvxgwfwwgwwvhwvwxwwwwwwwxuvvwwgwwvwwwwwfvvgvvgvxhwwweugwuuggvwgwvVvwwWwwvvwwwgggVwfwwwvwwvffWwvwwwxwwxgvgfxgwgwvgVVwvugwwvwwwwwxvgWwwvwwwxwgwvgWwwvxwgxwwxgxvwgxwwvgffwwvwwvvvwwvxwfvwwwwwwwwfwvwwggxxxwwwvxxwxwwxwwwwfgfwwggxhwxxgvwwwwwxwxgwvwgwwvwwgwwwfvwhhgggxgwwhxwvggFggVFfgfvffwfugvgUxvffwwwvfUVtgfgfvfwgwvgUfdgfgvvgwgwfgfwvgwwgfgfVUwvgwfxwfxwVwwwgwwwwfgvxgwggwwwwvvfgwWwwggwwwwwwuvfvwgggfVUxwfffvwwfxwvvwvvwwgvgvwwgwvffgUhwgwwwvwwwwwfwwffwwwgwvvwgUvwwVwwwfwwwwwwxwfgwwwuwvfvwwvwfvwgvgvwgfhwvgguwxhgwwgwwwgVwvgUxxwgVuffgVwvvwfvwvgVgwwwwwwguvgwgvVvfvwfgfvuwfEwfgugfwvwfvfvvwwfwvfvWVvfvwgffuVffvgegeuffwUfwvvwvwwvvgeFgVUtfgfufgefvvfvfffVfuWgfgwwwwhwwwwxggeffwvvvVgwhgfggwvwhxggvwvgewfwwvvggwxwwwwwwwwggfwwgwWgvVgfgfggegwfWwUfwwvwgwggvwvwwwvwfgVeXgfUWwfwfVvufVUFvuegfgwwVvfeffvvvvvvuffgfvfgguwfeftVeWVvffeUffgvfwvvvwvfvfuvvVVWfggvfvVdeUgfVfvvevFveuffgffgvueWeGVvDecfgfvfeeveffffefeefFUevfvgvgwwwwwwEVVuffUfgVvfwfgefvgwfggvgvfwVggvffffWWwwwwvgwgwgXwvgffwfgVffWgfvVWgVVVVduwwvgwggvwwvwwvvguvVfuVWWtwvxfvVVgVgvVgvffggguffvwfwwfgewfwvgUffufgfvfveGgutVegUuffgvvvVwvvffvvfwUVffwvWVffVfffugegfffvuVeffwfwvwfwfUgVufuEguffgffvggvffgvvfffVeffwxwwwgwxvgevVffVfgwfxgwggvfwggwvwwewwfefWfvffWvgwgwwvwwwwwwvwwvffgvgfffuWffgvWVfFfUwwfgvvgwwvwgvwvffvgwwwggwwwWwwgevwwgwggwxwwwwxxwvwwwwwwwxfwwvwwgwwwggvwwwwgwwvfwvwwwxwwxwwwvvwwxxwwefevvwvgwvwxwfvwvwvwwvvwwxxxxxxxxwwgwxwwxxwxwwxwwgwwxhgwggwwgvxxwwwxwxwxwwwggwfxfggwxwwwwxwvffUvgwVvwwwggfvfvVuwfvggwhwhvfvwfvgwwwwfggvfugVwgvwfffvUvWfWvvgfwggfwgfuvwfwvwvegeffvggVfUfffvfvvwgfvgUfgwvwwvwwffvUfGeGUfWefffffgfefggvwwefVefgwxwwxwwxwwXuvffgfgwgfwwgwfwvwffwvwwwgfvgwwgwwgfxwwwggwwwwxxwwgfffvufvfVgvwgffVffVwwgvwfvvwgvwwwwffvxhwwwgwxwwugwfwwvwwwwwwwxhxxwwwxxxwxwvvvwwwvwwxxxwwxxwxxwwxwwwhwwwwvwvwwwxxhxwwwfwgvgwwwwwwxxwwwwwwxwvwwwxxwxxxwxwxxxxxxhxxwxwwwxwwxfwwxvhwwwxwxxwwwwwwwwxwwuwgwwwwwwwxxxwwwwwxxwwgwwxxvwwwwwwgvwwxxxxxwxvwxwwwwxwvgwwwwwxxgvwgwgwwwwwwvwvvwwwgxxxxwwwwwwwwwxxxwwxxwxxxwxxxwwgxwxwgxwwxxwxxxxwxwhhgwwfgwwvwugvgwwggwgwwxvwwwxwwvwwwwwwwxgwevfvwvgwgwwwxwwwgwwwwxvvwfwxwvwwxgwwwwxwwwvwwxwhvwfgvvgwwwwvwgwwxvfwwxwwwvvgvwxxxwwwwwwwwwwwwwxwwwxwxwvggwwwwwwwwvxwwxwhwvxgwwWfvvvxxwxwwxwwxhxwwfwvfxwvwggwwwgvfwvwWwwwwwwvwggfwwWvfggfugVffgwfxfvwwwwwwwwwgwwfVfwvgffefvwvvVvfVWvfdffeUffewwwwwuvvgvwwfhevgfwwffVfgwgvwvVVVffeffefvwwwywwxvwwwvgfwwggvvwwhgwwwgffVeVffufvfgfwwgwvwgwxwgvxfvwwwgwvwwwwwwvggvvvwwwfgffvvxwwwwgwwefVvfffuwgvxhwwfvwvvxwwwvwwxwwvxwfwxvxxwwfwvxxxvwxgwgvxgwwxwfvwwxwwwwwwwvxwxfwwwfgwgfwfvwwvgvxwwfvwwwgwwxwfgwwxxwwwxwwwwwxxwxwwwhwwwgwxxxxwxxwwwwwwwwxwwgxxwvxxwwxwxwxwwwwgwxxggxfgxwwwhvgxwvgfvwxwxwwwwwwgxwwxwwwxwwhwwvhgwgwwwxwgwwhwhwvvwxwvvxwwgwwwwwwwwxwwwwggwxwwwvvwwggxvwwfwvwwwwwwwughwxwxxwxwwwwwwwxwxwxxvwxwgxvwwwvvxwxwxwxwxxwwwwxvwwwvxwvxwxwfxwgwwwxwwwwwwxwwvwwvwwwvgwwgwwgfvwvvwvwvgvwwxwwugwwwhwuwvwgvvVhfxwwgxwwgwwvwgvgwwweVgvxggwwwwgwvwwvgwwwwwvwwggwfgvxggwfvfggfwwvgwvwwgwwwfveWvwxwwgxwvwvwvwwwwwwwgxwwvvwwwwwwwwwwvwwhwvgvhxwwwwgvwwfvwwwwgxvgwgwhgghvfwfwxwhxwwwwwwwfgwwwfwxfwwwxgvwwgfgvfxxwxhwwwxwwwfxwwwwwwgwwfwwvwwVwhwvwgxwwgwgvxwxwwgvvfwvffwvwgvfvgwwwgwwwwwxvwwwwwwfwxwVvWvfgehVvwffgwfwfwwwguffwvwxxwxwwxggwvwwwvwwwxhwwxwwwxwwwwwwgwwxgwxwxwwxwfgxwwvwxwggvxfgwwwggwvgvwwwgwwwwwwugxghwghwgwwwwwwfwxwxwwwxwwwggwwwvxwwwwwxwwwhwwwwwxwwwxwwwwwvvxwxgvwxwvwwwwwwwwvvwgvwvgwwwhxgwfwggwfwwggwwvwwwwwwuwgwwxxwxxwwwwwwxwvxxxxxwwwwwhwwwwwwwxwvwwxxxwxwwwxwvwwxwwwwxvxwghfvgwxwxwxwwggvfhxgwxwgwwxwwwwwwwxxhvwxxxwgwgvxwwhwwxfgwwxwwxxxwwxwgvxxwxxwwwxxwxwvwwwwxwxgwxfwgwwxfwwwwgvwwwgwwwgvxyxwwwwxxwwxwxxxwxvgxwwwvxwxxxxwwxxwxwwwwwgxxwwwxwxxwwvwvwgwwwwvggwugvwfvwwwwwfwhwvwwwwwwwwgwwxwwvfxxwwwwwwgvgvvwvvxwvwwwwxwwwvwxwwwwvhwvgxwvgfwwwwgwwwwgvxwwwvfwwxxxwxhwxwwxwwxwwxwvwggwxwxxxwxxggxwwxgvwwxwwwxwwxuvefffxxgffwwgfwvwggwuVgfvwgwfvvvgfvWgwvfwgewvwgwgfvwvwwwfvvvwwfvvwwwvggfwwwgVggfVGvVufvfvffVfffhegfwfggwwwwgvefwwwegvfgfggVfffvwvvgewvvwwwfwwwwxwwwggwgwfvufvwwwwwwxgfwwvwwwxwvggwwwwvwgwxwvwwwwgvwwwwgwwfevggwvvvfvggfffvgfvwwvvwwwwwfwwwwwxwwwufwghwWvgwxwwvxxwxwwxwxxxwxvwxwwwxvgxvggxwvwfxxgxwvwwxwwxwgvgfwvfwvgvwgwxwvxxuVwefehWwwewgwvwUwvvvwwwgwwwxxxgwhwwwwxwgwgvxwgwvwwwgwwxxhxwwwwxfvwvgxxwvggwhwwxvgwwxwwhxgwvxwxwxwxwgwvwwwfwwgwwwwvvwxwwxgwwwwwgwwwxxwwwXgxWggwffwwwwwhxgwwxwwwwwwwvvwwxgvwwgxvwwwxwxwwgfggvgwgfxfgwgxvwgwfugvwwwwxxxxxwwwvvvwgwwwfwxgwvwvwwwwxwvwwxwxxwwxwwxuwwxxxvugfhhwxwvwwgwwxxwwgwwvwwwwwwwwwxwwwggwwgwvwgwvxgwwwWwwfvgwxwwwgwwfwvWgvxwffwfhWfgvwxwwvwvgvfwvwvwwwwwwgvfwvvwwwwwgwwwxvwwhxwvwvggwfwvfgwvgwwvuwvgvveuwwvwwxwxwxgwvwvvgwwwwgwgwvwwwwwwwwwwwwvvgwxwwwwxxwxvwwxxvvwgxgwfggvWwgvwgXwwwxwwgwwwwwwvxwwwxwwxwwwwwwxxwxwwxxgxwwwgwxxwwxwwhwfgwwxvwxvwgwvxfxvwvwwwwwvwvwfwgwggwwgwwwhvwwgxxwwhwffgwgufffwVwwwvfwuvfwvwwwxxxxwvwwgvwwxwfgwwhwwwwwwxvwwwxwxvwwxxwxxxxwwwwwwgwfhwhvwxwwwgwxxwwgwxwvgwwwvwwwwwfgwxhwwvxxwwvwwxvgxwwxwwwwwwxwwxvwwvwwgxvwwhwxxwwvvwwvgwwwwwvgggvwwwwgvwgvgvgXwwwwuggVfvvvWfwgWwxvwvwgevwwvgwwxhvwxxxgvwwwwwwwgvwhwvwwwwvwwwwwwwxvwwxxwgwxwwvxwgwxvxxxvhgwgwwgwhwxxwxxwwhxwxwwwxggwwvwwvwgwwxgxwwwwwwwxwvwxxwwxgwxfvwfxwwhvxxwxvgwxwwwwfwwwwhvwxwwwwwwxwwxwgwgfffexvgwWxwwwwgvgvvvvwwxwxxwxvwwxwvwwxvwwgwwwxwwwwvxwxxxwxxwfwwxvgfwxhvwwwgxxxxwwwwfwwgggwwVVfwGfwwfefvwVfvfvxvvwgxwgwwwwxxxefggwwWvvwwwwgffwgfVvvvvfexwggfvfgwhwwxvvwgxwhwwwvuvVgvgggfwwwVfvwgfggvfffwwwwwVfugvwwwxwgwwwwxwvwxxwwwxwwwuwwufvwwxwfwgvvxwfwwwwwxwxfVwwwwfVvfvvwwvxwwwvvwxwwwvvwwgwwwwwwwwwwwgwwwwwwgwxwwwwwvwwxxwwxwgwwwwxxwxxwwxfwwgwwwwewwwvwffwwwwvgwxxxwwwxwwwwxwxguxvgvgvwwwvwVwvvwwwfwwwfwxwxwxgwwxfwwwggwgwxwwxwwwvwwgxwhxwxxxwxwxwxwwwxwwwwwxxwwwwggwwwvwwwggwwxwwxgwwwwxwvwwxwxwwfwwwwwwgxwxxwwvwxvwwxwwwxwwgwwxwwvxxwxwghwwxwwwhwgggfvwvwvwwwwxwwwwwwgwwwwWwvxvWgxwwvgvwvfWvuvvwwwwxwwwwhwxxwvfhgwwwwwgwghgxwwwwwwwwgwwwwwxwwxwxxxxxxwwvwvvxxwwwwxwvgwggwwxwgfwgwxwwxwgwwwwwwwwxwwwxwwwwwgxvhgxxvxwwwgwxwwwwwwxwvgwxwgvwwxwwwwgxgvwwwxwwwwwwgvwvgwfwxwxwwxwwwgwvgvwwxxgwwwwwwwvgwwwgwxxxwwwgwhwwwwwwwgghwhwwwwwwwwwwvwxwxxxxwxxxxwwwwwwwwwwxwwwgwxwwwwvxxxwwwwwwxgwvwxvvvfwwgvfvxWfgwwwwxxwgvxwwwvwxgwwxwfhwwwwwwfwwwVvgwwgwxwwwwgvwvwwwwghwhwgfwwwxxvhvwhwvhvwvwwwwfuwfeffhgwgvwfwvwwVfuuwfvwwwwwwwwghwxwwwgvwwwwwwgggwvwwwvvxwwwvgwvwwwxwgwwwxwwvwwvwxxVwwwwwgggVwhwwhgvgwwwwwwggxwxwwwwwwwwwxwwwxwwwxwfwxwwwxwwxwwwwxwxwwwwgwwxwhwhwxwxxwwwwwwwwwwfvwwvwwgwgwwfwxwxwwwwwwwwwvgwhgwgwwwwwwgwxwvwgwwwxwwwxwwwwwwwwwwwvwwxwwwwwwgvwwxwwwwwwxwxwwwgvwwwwwwxwwwwvwxxxxwwwwxxhwwwwwwvvwvvwxvgwwvwfgwwvwxwwgwwxgwxxgwwwggwgxxwwwwxgfwwwwggwwxvwvhwwwxggvgxwwgvwwwxxxwwWuwggwggwgwwwegxWvfvvxwWwwgwvveWvwvwxwwwvxwgwgvgwxwwwxwxxxwvgvhwwwvwxwwvwvwwwwwxwwwwxxwwvvvvxwvvwwwxgfgwvxxwgwwvgwhwwwxhwfxxwwhgwggxvwwfvgwwvwwwwwfwwxxvwwwwxxvgwwwvwxwwxgvxvvfvfxwgxxwwwwvxwwwwfwwwwxwwxwwxxxfwwwvwwwvwwhvxwvgvghwwvgwwwxgwwwvwggwwxwxwwwwwwwwgwwxwxwwwwxwxxwxwwxwwwgxvfwxxwxwwwwwwwwwgvgxwxwwghhwwwwwwwwwxwhhhwwwxwufxwufwwwggfwgggwwvxwWvxwwfgxwxwwxWvwwwfgwwxwwwfxwgfvggwfxgxwwwwwwwwxwggxxwwgvwwwwwxvwgvwwwWwhwgwwVxgffvfvghfwgfgwvVfwvvxwwwwvwwgvggwwwxwgvwwwwwgwgwxwwwwwxxwwgvuwwwwwwxwwwxwwfxwwwuwvxwwxwvvgwwwwgvvwgwxwxxxwwwwxvgufvWgfwwwwwffvfvgvwewfvgvvewfgfgfgwwvfvfdeUgUvwfffuwxwvvvfvvgefegvvgvfWffvvwffVwgvvEfVeVVfVefVffvfvfvggwgvwvffvwwWwfeUgwfgeuvfeVtggfffffUeewgvvwvxwxwfgefffvVeeffgVugfffvwhwfvfewwVwfvfvwggwggfvwfffxfewgwggfffwfwgfvwgffVfffgeffgffUVwgvwgvwvgwfwgwgvgvWffwwwfwffwxwxvvwxhvwwwwxvxwxguwwvvvgwwwexxwxwvfwvwvVvxwwwwvxxwxwxwvgvwwvwwgxgvvwgwwXvwgwvgfvggvguggewgwewvfwxwwvwwgwvwxwwwwxwgwwwwwxgwwwwwggwvwwxwwgwgwfwwxwhgwxgwwgwxwgxwwgvwfgfvgwxgwvwwggwgwvhwwwvxwvwwgwxghvwWxwWwwvwhgwwxvuwwfwxwfvxwxwwwwwxgwfwwvgvuwwwwxwwwghfvwwwwwxwwwwvwwwwwxwwwwwwwwwwwwvwwwxwwfwwfvgffwvwggxvuwwvwfvggxwwwxwxwwxwwwggwwgvwwwwwwvwvwwxvwvwwwxwwgxgxwwwwwhvwxwwvxxwwwgWwgvxxwghwwwwwwwwwxwvvwgxwgwwwwvhwwgwxvwgwggvwvvvxwgghxwgwwwwwxwvgvwgxxwwwgwhxwwfwxvfgvxfvfwwwwwwvwxwfwwwgvwwggwgvwwwwgwgwugvxwwvwwvggfffgvwwvWfewwwvwwvwVuwwgwwwxwwwwggwwwwvwwggwgvwvwwxfwffwwvwwwwxgwggvxwwvwwffwwwwgvwfggwvvgxwwwxwwwwwgwgUwxwwwwwxxvxwxvwwvwwwwgfwwhwvwwwxwvxwxwxhxwwwxwxgwxxwxgwggxvvxxwwwhwfvwwwxwvwwwwwwwxwhwwxxxwwwwwwvhghgvgfhuwvwwwwfwvgwwwwwwwxwgfwwxwwwwwvwwwxwwwxwxxwxwwxwvwwxhwvwxwwggwvgwwxxxwxwwxwwwxwvwwxwwwfVgfwWxwwgwfvvgwggvgfxwwwxvwhvvwvwwwxwwwwvvvvwgwvfwvxvwwxwwwwggwffwwwwxwxwwwvwwwwwwvwwwwvwwvvxvuwwwwwgvffggvvvvgfvxwgWuvvwwvwwwfgwwwwgwxxxwxwgwwgggwxwwvwwwwvwxxggwwwxggwwwxwgxwwwwwwxgwxvwguvgwfvwwwwvgwgwwgwwwfgvvxwwgwwgvwgwvwgwfgwwwfggwwfwvwwhwxvwwewvwwxgwwvvegvwwhwwfwvwxvwvxgwwggvwfvwwwwvwwwxxgwfwwwwwxwxwwwwxfwfxxxwwgvgfweewgfwwwggvvwxvvwvvwhvwwwxxxwwxgwgwfwxwwxwxxvvxwvwvvwwwgwwwxhwwxxvvxxvvhwwwvwvwgvwwxxvwgwwwwwwwwfwwwwvwwwgwvvVfvtvgvwwwgwgffVvwxxwwgwvvwwwvwggefxwxwwxwgwfwgwgwwvwvgffVfxwwxwwwwvgwwvwxxgufvwvwwfwwwwwwwvgfgfevgwgwewvxxwwwwwxwwggwxwxwwwwwwwVgfxwwfwwwxwwwwhwwwwggfgfexwwwxxxwwxwwxwwxwwwwwxwxgwvxhwwwwwwxfwwwwxwwxwvwwfxwxwwwwxwxvwwggwwwxwwwxwhvwxgwwvfveggfgvvwxwwwvgxwwvghwgvghxgfgEfuvWefuuffeVgvxxxwxwxxvgwvxwwwegXeguuvfhwwhwwxxwxxwwfwgvxvvwfxwwxwwxwwwwwhwxxgwwfffgwfVvuffhwwxwwxwvhwwwxxwwfwgvhvwvvxhxwwgggwwwxwwwwwgxggwwgwhvwwgwwwwwwxxwfgvWwvvgwvvgwwxwhwgwfvvfeXfgvvvxxwwwwgvxvhvwvgwwffgggfgfWvtufgfvfevefgwwvxwwwwvwwwwwwfgeXfgfvfVgvwfvgwwwwwwwvgvhfhvvgwwvvvxwgvfwfwwwwxxxxgvfghWfWfvfgwwvvwxwwxxwwxwwwxwwvwxgwgwgxvwwxwwwwwvgwvwwfwgwwwvxxwxwxwwwvwvwvgwwwwwgvwwxwwfvffxfgfffxwxwwvxwwwwwwwwwwgwfffgvVwfVvvwgfwfwwxxwxxxwwwwwwvwxwggfhvgvwwfXvfwvvvxwwwwvxxwhfxwwwwwgwwxwvwwwxwxwwgwxxwxwwwwgfvvffwggvgggwwwwfWvwfVgvfvvvVffvwFefvwwvggvvwhewwgvvwwwwvwfguvwVugfwhwvgfvwxgwwwgvwVTfvwgwfwffvwwwwggwvvwwewfgvvwvvvvfvxeWVvffvwffvfvXeWefhvgEeevwvvwgvffwvwxwwwvvgwggwwxgwxwwwwwgfggvgvvvgvwwvwwggwwgfwwwwwWVvffvgVugwxvgfwfvXVVfvgfxwwgfwwggwwfgefWvfvvwwxvwxwwxwwwwwwxvwwwxvxwwwwwwxxwwwvwwwwwwwvvwwwxfwvvvgvvwwwwwwwwwxwwwxwfwvVvwfeVvwffwvfwvxxxwwxwwxwxgxwvwwvfvwffwvwwvxwwxxxxwxwvwwwwwwxwwwwxxxwxwxwwwxhwwffwvwvgvggggwwwwwwWggxWgvwvvggWffvxVvefxwwwwvguwwvgwxwxwwwwufvfgwwwwwwfvvxwgwghvwUffgwwwwwwvxwwggvvwvvfvggwvwvfwwvWuwfgvwwffgvWffwfgwgdVvwwwvgvwvgvvgxwwfxvxxwwwxwgwxwwwwxgvgggvvwvwxwvwxwxgvwhgxwwwWugfffwwfvwhwvwwwxvvgVfwggwwgwwxwgwfxgfeWfwvwxwvgvhhvgwvggffvwxgfvwwgxwgxvxwgwwhwgwwwwwwxxgwvvwvwxxxvxggvvwwwwwxvwwwhwgwwwwwwwxgwgwwfwwwwwhvwwwvggggwwwWvwwxwwwvvfwxwwwxxwwxwxxwwwwwwwxwwxxwwxwxfwwwwwwwgwfwwhgwvwwhxxxwwwgwwwwwxxwxUgxgUgwgfggvvgvwwVfwvewwwwwwuwvgvgvwhwuwwuwfgvgvwgwvfgvwvwwgxwwwfewvVgvfxwfwwwggwvvwfvvwwwwvwvwwfvvwwwwvwwffgvwfVvhgfwwVfwvewwvvwgfgwgwwfwvvwxgvxwwgwwwxfwwvwgvfwvwvxwwwwwxgxwwwxwwvwgvfwvwwfvxwwwwwxvwfevhgvfwwwhvwwwggwwfvvgfvwfwwwwwwwwwxwwxwhgxxvwwxvxxxwwgwwxwwxxwwwvwwxvwwxgxwhwgwwwwwxwwxwfxwwgwgwhvwgwxgwwwwwxwwwwgwgufwggwwVwwwwwwwxvvwvgxwwwwxwxwwgfgwwwvwvgxwwvwxvvwwwxwwwwxwwxwwwwxxxgvwwwwwwwwgwwhvwwwwggwwwxwwwwwwxwvvgwwwwwwwxwgwxwggvgWxwgwwvgwxfxwgvwgwwvfwvwwvXfwwwvwwwwwggwwwvwwwvgwwhwghgvgvwgwwwvhvgwwwwhfwwwwxwwwwggwvggggwvWwwwwwwwwuvwgwvwwhwxwxwwwvwvwvwfxwvgxfggfhwgvwwwwwwwgvvwwwxxwwvgxxwwggwwwwgwwvgwhgwfwwwwwwgwxwwwwwwwwwwvwwfwwwgvgwwwwxwwxwwwwxWvwgwwvwvwhwvvvwgxwwvwwwvegvgwwxgwwwwwhwvwwwvvwvvxhwwvwggwgfgwgvfxwwgwxwxwwvgwwvvwvwvwwwvwwwwwgwfwvwwgwwvwwxxwwwvvgwveggggvwhgvvwhwvvwwwxxwwwwwggwvxwvwhwxxvwwgwwgwwwwwxggvwxwvghwvwwwwwwwwvvvxvvwwwvewwvgVvvwvwwwwgfhwgwwwwxwwwwgxwgwwwwwgvwgfggvvVvwwggguvwwwwwwwwwwwwwwxxgwgwwwhwwwvgfvgwxwwgwxwfwfefvhfwgWvvfvwvwfwwxwwxwwwxwwxwxwwwwwwwwwgvwwxwwxvwgwwvwxwvwvwwfwwwwvwwhwgwwgwwwwwffgwhgwgwgfwxwwwgggwwwvxwwgwwwwxxvxwwwwwgwxwvwwwwwwwxgwvwxwwwwwwxwvwhwxhwxwwxvwwwwwwwwfwvgvwgvwggwwfwxxwwwwxxwwwwwvwwvwvwgwgwwwwwwxwwvvwwgwwxvxwwxwwwwxwxwwgwgwwwvwwwwwxwwwxwwgwwhwwwvwwwwxwxwhwgwvwwwwvxwwwwwwxxwwwwxwwwwwwvvxwgvwwwgfwvxvwwxwgwxxwxxgwwwwwwwxwxgwwgfxwwfwwwwwwvhwwxwwxwwgxwxfvgwxwwxwxgvgVwvvxxwgugwwxwwwvgwwwwwwwwwxxxxxxwwwxwxxwxwxwxwwvxxxwwvwwwwwxwwvgwwwwxvgwwwwwvwwvxwxwwgwwwwvwwxwhwxggwggwxgwfwxwwgwxwwxxgwvxxwxhgwwwwwwwxvgfvfwxwggwwwwxwwwvxwxwxxwxwxvwwxwwwxxxwwvvgwxgggwwxwwgwwwwwwxxxwxwxgwwxwxxxxwwwwxxwwxwxwxwwwxxwxxwwwhvwxvxxwvwhxwwwwwhhxwxwxwxxwxweuwweewwwvfvwwwgfxgwwvwxvUwgwwwwwgvwhwUwwgvwwwwgvfgwggfwfgwwvwvxgwwwxwgwxwxwwwwgwxwfwwvxfwgxwwfxwvggvvfvwvwwggwwwxwwwwxwvwwwxwwwwwxwxwxwwwgwwwvwwwwvxgvvwwxwfwwwwwwwvwwwwvxwgvvxxxxwwwvvwgvwwvwwwwvwwwwwwwvwwxwwwwwwwwwwwwwxxwxwwwxxgwwxwwvwwwwwwgvgxwwfwwwwxwwwggwwxwfwwwwxvvfWeVfgfVffvxwxwxxgwwwwwwwwwggwwwgffffvwwvvguuvgxwwxwwxwwwwwwxwwwvwvfgggvwwwwggfggwwxwwwwxxwwwwxwwwwwwwwxwwwwwwwfffgvwxxwwgwfvwxwwwwwwvvvfwwwwxgvwxwwhvwwwwwwwwxwwvgvwwwvwwfwxvvwxWgwgfvwwgvwwwwwwwvxgfvwwfwgwWwwwwwwwwfwfgwfvgVvgvwwwWewvvgggffwwvvvfgwwwwfwgwxfwwvvfwwwvwwwxxwvwVgwxwgwvwwwwwwwwwwwwwwwfwffwvwwwwwwwxfwggvwxwvwwwxxxwxvvwggffwvhwwxxxxwwwwwwwwwwwvxwwvwwwxxwwwgwwwwvxxwwwwgwwwvvxwgvxgwwxxvwxvvwwwhwvwwwwwxggxwvwvfxwwxhgwwwxvwwwwvxgwwwxxwfwwwvwgwgwwwwwvwwwwwwvxxhwwwwwwwxwwwvwwvvxwxvwxxxwwwxwwxxwwwwxxvwxwwxwwwwwwxxxwxxxwwwvwxwwgvwgwxwwwwxxwvwwgfwwwwwwhwwgvwwvvgxwwfwgfgvWewwwwfffwgVuwxwwwwwwxxxgwwgvwwghwwwwwfwwxxwwvwwvgggVvwvwwvxvvggwVvwwgwxwwwwwwwhwwwfwwvvgwvgvwwwwwwgwwwwwwwvgfgvwxgwVvwxvgwwxvgwwvwwwwvhfhgwwVvwwwwwwwwgwgfvwwwvwwxwwwwwwxgwvxwwwfvwgwwwwxvxwxwwwwwxwwxxwvgwwwwwwwvfxxwwwwwwwxxxgxwwwwwwxxwxgwwwwwxgvggwfvxwwwwgvgwxgwwwwwwxvgxwwgwwvgxwwwwwwvwwwwxwwwxwwwwwwxwxxwvxgwwxgwwwwwwwwwwwwwwwxgwvwwwwwwwwwwvwwxwxwwwwwwwwwgvwwvwwwwwwwfwwwwwwwvwgwwwwgwxxwwwxwgwwgwvxwwwwxwwwwxgwvwxwxxwwxwgvvwwxxxwwxvgwhgfwwggwvguwvxwgwwfggfgegwwfxxuwvwwwgWwgwfwvwgwwwwfvvwwgwwfgwwxwwwwgwggwxwwvvuvwvxwwwvwwgvwwwwgwggwgggefwwwwxxwgwvwwwwwwwxwwgwxwxxvwwwwfwvwgwgwxhwwwwvgvwxwwwvgwvwwvxxwxwxwwvwwxwwwhwgwxwgwwwxvgvgwwxxvxwgwwxxwwwwwxwwwwwgwwvgxxwxxwxwwwxgwwwvwfwfwvxwxgvwwwwwwwwwwwwwwxwxwwwwwwwwwxwgvwwxwwxwxwxwwwwwxgwwwwwxwwxxgxwgwxwxwwxwwwwxwwwwwwxwwxwwvvwwwvvwwggwxwwwfxxxwxwxwwxwgwgvxwvwwwwwwxxxxwwxxwwwwvwwwxxgwxwwwxxwxwxwxwwwxxxwwwwwwwxwwwxxwwggfxwxggvVevfugegfgvvgggfhfvgwwgwwwwwvvwfUewfvgegfgvufwgffVwgEVvvwvgfuvwveuvfufggggVUgeeffvvfffgguufvEtwVgTgUWvefgvgVfgvFWfvvwfguvvwWueguvWfveevfvvfffgguvwwwfvwwfgfwwwwvwwwgvwwwwgwggvgVfgwVVfwvwvgvvwwfvefvfVfwwvvgvweuffvwvwwxwwwvvgvwwwvfvwwwvvfhwwgfWeugvvegfgvufwvfhfvfwwwwwwwvwvvgVfugvfegfWvvvvwvfVvgVVFgvuwffvuwvvvevvuggfvUWVgufvvfffggvvegFutWvudWeXeufvvwVffvgVVvwvvwfvfvwfufvvvVfVfefvvfffggvuewwwhvvwgfgvwwwwwwwwvwvwwvgwvvgVffvgVGfwwvgvvuvweuuvveVfxvgwfwwWvefwvvvwwxvwgwvvwwwwgvvvwWffgfwgwguuEfVVgUhefgfgghfvgvwwwgwwwwfwfvvVwgWgehffwVvefVfgwffVvvfvwvgffgefffwfVVffWevffwgwgfvwvfguuvEfvVVgeheUgVvffeVvgfvfvwfwvvwvwwevvfwgVfuffgvwfffvfUgxwwewgwghwgwwwwgwfwwwwwwggvgefvwVvVgwgwwevfggTvuefVVwvxwgwvwfgfwwwvfwwggwvwwwvwwwvwvvwgwvwftvfvVfwggwvwvwggwwwwgxgxwgwvfwfwwwwgvxwwwwvwwxgwgvwxwvwvxwvwwggwvvwwwgwxvweeUfVfgfvfvffwwuvwwgwhgwwvwvfwxvwwvvwwvvfxwgwxwuwgvggwwwfwwwwwwwxxwxxwxxwfwvwgwgfgwwxgwwvwwwvvvgwvwvwwwwwwgwgwwwwwwwxxwwxwxwggffwwvwfgewhfwUfgwfVfvfvfvgwwwwvwwwwfveWTfXevUVfvfffwWefufffVfvfvgwffggfVvvgffUfvVueffffvgfvvgvUuugTfhevUvVfvUfwvgVffwfgUwvvvwfVvvggEugVfeufffwwvgffwwvfxwVwwwwfxwvwvwwxvwfwwwwwgvfWVevffgfvwwfwwfwgwgVvwgffwwwwwwgfvfgwvgfwwvwwvwwwgwvvwgxwvwwwwgvGgvvfwwvhwvwwwwwgwwgvwhwhwhvffgewwfwgwgwvgwgwwwvgwgxggvxwxhxwwggwgvvwwuwhwgxwgeUfefvffgVgvfvvgwwwgvgvfwgwvwfgwwwhwwxvwwvwwwwxgxwxggwwgwwwwwwhwwwwxwxwgxwwwufwvwgwgxvwwgwwgwvgxvxwwgwwwgwwvwwwwwwwwwxwwwxwxwgwfwvwWwwwgwwwgwwwwvwwvvfxwwvwxhwwwvfvwwffgwwgvwwgxwwxwggxhwwwwgwwwxwvvwggwwgxvwwxwwvgWfwfwvfwfgvfggwfgvwwfgVgwgwxwvvvgwwvvgxwxxwvwxwwwvgxwwwxwwwwwwxwxxxwgwwvgggwxwwwwgvwvgwfgxgwgwgxwxwwxwwwwxwwxxwvxwwwggvgwgwWwwffwvgfgwwwfwwvvgxwwxxgxwwwgwwwwgwwwwwvwhwwwvgwgwwxgwwwwgxwggwwwwwwwxxgwufvgvffgvwgggvwwgwwvggvwgwwvxwxwwwgvvvwwvwwwxgwvvwxwxgwwwxwvwwwwxwvwfvvgwvWfvwgxwvvwgwvwwvfhwfwhwwwxgwxwxwwgxwwwxwwwxxwwxvxxvxwxxvwvwwgwwxwggvxwwVvfwfwfwwgfwwguffwwwfwxvwwvgGeVVUfvVvvwwwwwgVVvgvvggfgfhfgwggvgfwwwvwwwvwwfwwwwxwfvwwWvggfwwfwwwwwwgwfwwwwwgwgwgwfhgvwwwgwwwhwxwfgvwwwwwgwwwwhwwwwwxWwwgfgggwwwxwvwgggwgwvwwgwwvxxvggevfwVgwgwwwwxwwwewfwvfwfvfwvfvwwuvwhvwfwwwwgwvwwvwxwwwxwxgfuwgfwfwwvwwfgVvggwwvwxfxwvwwwwffVwVfugwwgfwewgTvwfwWewVvufwwwffFegwfxwwevwwdgvwefvwVfewwwgffwvwxvUvhfVfwxvwwwwvwfwvwxwwxfvfuWwgwwxfwwwUwvwuwwgvhwwxXfffvhvwwvwwxwxwwgfwxwgvfwwxWfwwvfvwwfhwwvwwxggxwwwwwwwghwxwguvwvVwggwvvgwvwggvvhwwwwxwxhgwwwvwwxXgffwfewgxgvggxvwVuuwvvVWgfgffwwguvvvgwxwwwwwwWgwvgfwxxvwvwwggggxvwxvxgvvwwwwxxxyxxgxxvwvxwxghwvvuWwhxwxwxggxvvwvgwxwwwvvvvxWwwwxwhwwWgwwvvgghuvvwwfgwgwgvgwwwwgvvgwwwwwgwwxggwxwvgvwwgwwwvfgvugwwwwhwwuWvwwvxvvvhffvwwgvwvhwgewuwwfvWugvvgwggwggvgxgwxxxugwwgvhvVvfghvgvghwwvgwevgvgxwxwxwwvgwwwwwwvwwfvWwtWwwwxhwwuXwvwgvgvevwvxxgfwgxgWwwxwgwhxwhWwwwfvwvhgvgwggvxxwvwgwwwwvfxwvvwxwwwfwggvwhvVwfwvwxwwffgvwgwwwgxwwxVwwvwvvwgvUhfgvwwwvffwwwfguwgvvfwUgvuvwwhgvguwhgwwfwvvVxuwvefwffvwwwffxvvgWfvfhfvxwgvgvfgfwvwwwwwwffWuvGwwfxwuwUwwugffwexwwwxwfffhfwGwwwwwwxwwWwwwwWwwwughvfxxufgwwvvgggwwwwwwghvgwvwxxwxxhxwxvvuwgwhggwwwwggvvggwvgxwhgwwvwxvffgVvufwvwggggwguftvgUfGWfuvuwwwffvvexfvwwxgxggWwvvvwxfgwvxwwggghwvxxhvvuvvhWvxgxwwwhwwfwvwwwwxvvfvuwWwwxgvhXvfwvuhgwwxwhwvhfvwWwvvwwwwhwxggwwvfwvxfggwwVvgwvgfwgwwwvhwgwwwwxgwgwfxwvgvgvwwgwvgfwwVwwgwwvxxwguvwvwvxwwvgvfgVwgxvfvguxvfwfwwwugufvwfwwgwVwVxwgwwwwxwwgwgwxwfwwwwwwggwwxxgfxwxwwxwwxxwwwxxwxwgwfwVwwWxwvxguwwwvhvwxwwwgxvvxwgwwwwxxwwgxvxgwfwvggGfffwvfvwwffegwwwVfgfvwwewgwwgfxwfVfUggffefgfvfggwvwgeuxwXvgfffewwwwffVvfgefgfuwfvgfgwwfVdUfefUeeVfeufffvwgduwwWwvVfwwVfwwwevfwwvwgfvwwwffwwwWgwfwwgwfwfvggwvwxwvgvxwwwggwvwgfgwggwwfvwwweexwegegggvvvgwgwwwwwgwgwwwwwvxvwwwwwwwwgvWvgwXgfghwgxxwggvWwvvwvUwvfwvgfvwvggWfvhwwwgggvWwwVffwvfwfegfffvwvfwwgwgvwWvVUuueVuvgggewgffghUfxfwxwgvgVefwwfwwwwgfevwvwwvwwwwvwwwggvuVewgwuVvfgffwwxwfxfwfgwxwvwfwvgwgwgvgwwgwwwvWffvxwwwwwwgwgwwwgwfwwwgwwwgwfwvwfffwfwgwfwvwfwfxwvwwwwwwwwwwwghwwwwwwwxwxxwwwwwwwgwxwxgwwwwwxgwwwvxwwwggfwvvgvfwwvwgwwWwwWgvWfwfwvfwwwwgwwwwwwuxwwvxxewvwxwvvgvfwgwgwwwwvgvxhwwfwvwwwvwwwwwwwvwwwhwwVwwwwWvwwwgwwwvwwwwhvwwxxwwxwwxxwvwgxwvvwwvwwwgwxxwwwgwxwxhxwhxwwwhwwwwwgwxvwwwwvxxxwhwwwwwwxxvwwxwxwvwwggxhvwwggwwwwwvwvvvufvgWgfgwwxvxwwgghxvwwgxvwwxxwwhgvwxxwwvwgwwwxxxwxwxwgfwxwwwwhwvwvwwwwgxgwwwgxwwfwxwwwxwxwvwwxxwwhwwwxwwgwwwwxhwwwwgwggxxvxwwggvvgwugvwgxwwgwwwwwxxwwwwxvhfvvwgggwugwwwwhwwwwvgfwewfxhwggvgwwvwfwwwgwwwwvwwwfwfvgvgfvfwwwgwwwgwxvgwwwwvggvfxwhvuwfwevwvggvwwvwvgwvwxwxgwwgwwgvwwvwwwgvwgwewgwgwvhwwwwuWguvvvxvvgwwwgggwhwxxwwgwWwxwgwwhhvwvwvwxewvwgwwwgwwhvfwwvwgwhwwwfwxwwwvxvxvwgwwhwvvwwvguvvwwwwfwwwhvfhugvwwhxwvvfwWvgWvgwfgvwvwwgwwfgvwfwfgvfvvvwgugwfwwwUwwgvvwfxfwwwxvwvwgwwwgwvwwwwwvwgvwwfwfwwxwwvwwwwwwwxwgvwwwgwfwwvwfwvfvugxfggxxxxwgwggwwwwgvfxgwwwwWvwwxhwwgxggwwwxwwxwwwhxwvwwhwwwhwxhwwgxwxwvwwwgxhwwwwwvxwwwxwwgwwvxxwwwxgwwwwwgvgwxwgwgwwgwwfwvefwgWfvwwgwwvwwwwhwggvwhvwwwxwvgwxvvwggwwwwwxxwxxwxwwwhwwxwgvwwxxwvwwwwhhxwwghwvxwvxxxwxwxxwwxxwwxxwwwgwxwwwxgvwwvwwxvwxwwxwvwxwwwwgwwwwxwwvwwwwxwwwwxwxhvhwwxwwwwwwwgwwwwxvwvwwggwvwgvwwgwwwwwwwwwwwhxhwwhwwvwwvgwwwwwxxwxxxwwxxwxwwxxwwwwwwxwhhhwwxxwwxwwxwxwwwwwwxwwxwwxxfWvggdfwuvfwgfvvwgfwwwVggvgwXwwWwfwwwwvewvggvgwffwwwuwxevwwxffwxffxwwxwVWfwgvWvwgvgwwweefVWeVffUfgfvvwefwwwwwxevwwwxUgfwwxwfwwhvwWgvwwgvwwwwvwxgwwfwwwwwwwwwuwwfvvwwwxUvwwxVgvwvwwxwwxwwwwwwwwwxwwwxxxxwxwgwwxwgxwwwwxwxxxwvgewwxwwxwwwwwwwxwwwwwwggwxwwgwvfugwwwwxxwwwwwwgWVfveeuvwvwWvgvwwgfvvwgggVgvvwwwxxwvvefwwwwgwwwggwgvvgwwgfvgwvgfgwvxwxvfufgwgfwwxwwxfwwvvgwwwwxwwgfwgwwwwwwwwwggvugvugvwvwwwwvwgggwvvwvwvwxwxwhwwvwwwwwxwwwxxvxwwwwxxgwxxxwwxxxwwgwwwwgwwxwgwxxxfgwgwgfwffwwwvvwvvvgvwfWfgvvewxxxgwfgxvwwwwwgvhwvwvvwxguvfwgwfgvgwffwvhwxwgwwwwxwvvvwwgwwxggwvxwwxxvvvwxvvgwwxwwxxxgwwwwwxxxwwxhvwwgwwgwwxwwwwxxwgxwwwwwhwwvxxwwxxxvwxgwvwvwwwwwwwxxvxwxwfwvgvggvvgvwgwfwwgxgvfwwxVwvfwxwwwfgwwwwwxwxwgwfwwgwWvgvwwggvwwxwwvwwxgxwxwwxwwwwfwvwxwvvxwgxxwvwxgvgwwgwgxwxwwgwwxxwwxxwwvhgfvufvfWvwxvwgfwwwvwxwvvwvxwgwwgvxxwgwwwxfwfwvxxwwvwwxxwwwwwwwwfvwxfvgwfwvvwvvgxgwwvwWuvWevwUeVffvwwwwuvwwwwwWwfwwxuwvwvwwvwwwfwffgfwwwxwwvwvvfwwxffgvwgwwvwwwwwwwwevwwwwWvwwwwwwVvuvvwgxwwwwwhhwwxxwxwwhwwwwhgwwwwxgwggggwxwwfxwgwgwgVwxxwwwfwwwwwwvwwwfwwwgwwwvwgwguvgwwwwwwwxwwhwfvgWfvvuehVewgvvvffxfvgwfwwvvwffwfvwwwwggwfevwwwxwwwwwwevwgXfwhwwvwfvwvwxxxfWvwgfvwvwvwvwgwfwfwwwwwvfvwggwgwwwwwwvwwevwwgxwwwxwwwwgwwfxwvwxwwxwgwxwggWfVgwVfffgvwguwwfwffxwvgwwggvwwggxhwgwgWvwgvwgfgfggwvgfvvvwvwfvgwwwwvgvwhwvfvfgfWfuVfevwfgfwfFfwGevwUVUVugvgvgdfwwvfvFgvgggvgUguwvwvvwfgwgfwgfgwwvwwvgwWfewvxvheVvgvwwfgvwvwwvwwvwwfvwwxwwWfvwxwwwVgvgwvwgwvwwwwwwvvgwwwwwwwfvgwwwwwwgwfxwwwuWewgvfgvfwggwwggfgwwvgvWwwfgwwvwwWwwwvfwvfwvVgffvwuvwwgvwwvwvvwwgwgwgguwwvuwwVffgvVgvfgfwvffggwfggewvVffguvvgwfgwvggwgwegvgwwwggvwwwwvgwwwwgvgwwwwgwwgwxvgwwhxggwvwvwwgwgwwgfwvwwgwuxwwxwvgwwwwwgfuvvvxwwwxwhwxuwwwwwwgwvwvwwwwwhXwwwwWwfwgfwfggwgvxwwggfxgweggvwwwwwghggxxgwwwxwwggvgwwwwwwwwhwxwwxwgvwxfgfwwwwvxwggwwwwwwgvwgvggffguhvgwgwvwwwxggwwwfwwwffxgxvwvvwgxfvgwwwwwgwwxhwwwgxxxwwwwvwwgwwwgwxwwwvwvwxwgwwxwwgfwxwwxxwwwhxwwxwwxwwwggvwwhxvwwxxxeffxgwvwwwgwxvwXvgfvwfwvgvgwwwvwgxvvwwwvwGVVuVewgfgVffuwwvggwWvgvwwgvfhfffwwfgwgxwgwvwwwvwwxwwwgvwgfVggwwxwwvfwvwwwgwwgvwwwgwwfwvfwvwvwfwwwgwgwwgvwvwxgwwxwwxwwwWgggvwwgwggwvwwvwwwwwwwvwwwvgvwgfwVgVvxwvwvwewfwwfwwwwgwwfgwwfvgwfWvggvfwvggfvwwvgwwwxwxxwxwugwggvgwwwwVwwfvwgwvwfwxgwxgwgwxwffewVVvfgvwfxwwvwdguWVvvVwgwefvewgfwwXvwwUwfwuwwwvwvwxvxVVvggugfwwwvxuffhwXwfxgwwwxgxvwwwwvEggfvwgfwxFvVgefvwwvwwwfevvgwgwhgfxxhwwgwfxwwhvwwxwxvwggXfgwgvuvvvwgxxgwgfwxxggvwwwwgwvvvwwhgwxxwwWgxgfxwggwhhgwhwwwvvwxxhfgfwfgvvggwwvWvvdeufgFwWVuvggVwvvwWwghXxhwuvwwwvvghgeuvwvvfggwwwhggvuWghgxwxwvwhwvfwwwggWwffwwfvhgWwhgvwwwvwwvwxgvWwwwgfhwwvwwggwhxwwwwwwwwhgwvhfvwgvhwfgwvvWhwvwwxwwvvgxvwwwwvgwvwwvwhwwvggfvwwgwwvWhwfwwwvwwwxgvuXfgvvhvvgwwwwfgweWwuvgvgvufwuWgfvwgGwwuWhffwwuwwuwguffwfgxvvgwwwwvfgXexgfhvvgwwwwxfwfwfwwvvWgwvwgxvvXggufwwwwwghffvwwGwwffhvwxwwwwwWwwWwwewwxwwwwvweWgwvwvgvgwxfwxvvvghgwghvwwwxwxwgwgfvgvxgwxvggVwvgwwwgwwUgxvwwwwwwggwfhevghvfgvwvwWvguvWvwVwggugwEgfwwwwWwwUfxewwxwvwwgwffgvgwvwwwwXvgvhxwwhwwfwwxvwxvwwwwwvfvgwwvwhwvewxewwxuwgxVfgwvvWwhwhwwxxvwwvWwxhgvwwxhwghufwvvwufwvvWwgxwvvvwxwwwwwvvwwwwvfvfwgwhgxwwwwggfggwwgggxwwwwwwwgwxevfggwwvxvggwwwwewuegvvWWggffvgWwwvvxWghwxvvwxwvvwgxfgvwvfwvxvfwwwvwwxwhxxwxywvxxwxvggvuvwwxgwWgwwgvwwwvwwxxwvvvwWgxvwxwxwgWwgvxwxwwwvvwfgwvgwfvwfxgwwwwgvggwwwwfwwWvxgfgwwgwwvgwWffwvwwwgwWvhwgwvxwgvxwvwgfvwwwfwgvwwwfvwfuvfwWvwwgfxWvwfwwwWwXvhgwxwwwuxhfvvevweggfwxxfxxfxwxwwxgwxxwwvwxgwWfwewwxwgwWvgwvvwxwwxwwvxxwgwhgwxwxwwwwwgxvwgxwfVvfGgffffUfgfWfVgffgfvggvwwgegvwwgwxwgfgwfegffwwwwwfeewwgwwwXfVffgfggvwwwxvVfvvwwwfffwwfwgwfFUffUVUVefVVvffgwwgwgvwgVVfgUvfwwwxwwwvvfuffefggvwvwwwwwgwVggfwwwvvvxfgfvwwgwwwfdevwgfvwwWefefegfwgwwwwxwwxwwgwgvwgfwwwgvwwwwwwwwwwwgvwgvwwxgxwxwxvxwwxwwwhgwwxwhwwvxwwXvgggwxwgwwxvwwxhfwwgxvwwgxxwwxwwwwwvwwhgxvwgwwxwwwwwxwwxwwxwwxwwxwwxxwwwwxwxwwxwxwxwxxwgwgwwwghvwxfxwxwwwwxgvvwwwwgghxgwwwwhwwxwxwwwxxwvwvxgxxvvvwxxwxxxwgwxwxxfwxevwxwxwxgwwxvfwwwvwwxxxwwwwvwxwgwwvwwxvvwvhhhxvhwwxwwwxwvwwwgwwxwxhwxwwxxwxwxwxxwwwwxvwwwwhxwxwxwwwwvvwhhwwhwxxwgwwxxxgxwwxwgxxxxxgwgwgxxxgwwwxwxvwwwhvwVgwfxwxvxwxwxwwxxxwwwxwwxwxwwxxxwwxwwwwwwwgwwwwxxxgwwwwwhvwwwhwhwwwwwxxxwxwxxwwwwvgwwwxwxwwxwwwxwxwwhwwgxxvwxwxxwvvwwxwwxxhfffwfeuffuwgewWvwfgvwwefvwvwgfgwvwvwwwwfefVVvfvwvwwVvwufgfvwwWvwvfgwwfvfwfwwwVUefVfvfewWegefvvvTSfFFUUffTeefvFvwefVffwwWvwTevvwfffvweegwwFVUVUffevvwfwwefftwWUuwwWefefgvgevfvwgvwww5effUUffffFffTfVfgvwfvwfwxwefVffwwgUvwxgffwhffgwgUfwwgvwfwwxgxxxxxvwwwxhxxhwxwwxxxhwxwwvwWvgfhvwvwwvwwxwxwwwwxwgxxgwwwvgwxwwwwxwwwxwgwwwwxwwxwwwwwxwwwxxwwwwwxxxwxwwwwwxwxxwhwwxwxxxxwvwwxwwxhxgwvwhwhwxwxwgwhwxxvxwxxwxhefgxfeWfefffvvWgwVvxfffwvwwwvvggwggwwwevwWefggwgwvwwUfffwvvwwwWfggfxgwfwfwwvwwVUVfFVeeuvWVgVfvwvSdeVVdEffEUefv6VfUVeefffFgwEfwvffvgvvfewxVffWeefVvgwfgwdUUuwgfvwwWVgVfwgvVfvgvwgfwwEVfffvvgwwWffEVuVfgwvgvvgwwwUfeefffffvwgwwwgffwggfUwgwvgxvwwuvegggfggfwvewvfwvgwwevggvfgWwvvwwgwwgVvfTvevggVwvfuwgeWvfgwgtfgWwgwfwvvwhfefWuVfVwvvfwffggGVgvTfeuggVvvvVtWgfggvwgwuggVvwvgwwwwwvvxwewvfwvfgvggwWfgfwwgfxwxffvgwwwwgwwgwwgegffgwvggwtggVvvvvgwwwwvvvwheWvfgwgvfxxwwggxwvfvfgggwwxwxxwWgVwgfvggevffefEwggVxvgWggggffguwvwwwgxwwfvwfvgVgvwgwwVgffUwwwwgFwggVvvvgwgfwxVffgVwwfvwfgfwgvwedwVefEwgfVwvfVwgffwfvggGwgfVwvfwgwwwwvfwxWUffegfvgwgfgwfvfuwwfxwgwgwggwwffwwwwwwFvgefwwugwWwgfVwvgwgwwwvgxwvfvfvgwfUwxwwgwxwvwxwggvxgvfwwwwxwwxwwxwwxxxxxwxxwwgxwhxxwwgwwwwxwwwgwxxwgwxwxwxgwwxhvvgWvvgfvgwgvhgwgwvvwfvgVgvguvvwfwgxwwxxwwhvwwxhvvgwwwgvwwfvwghwvhxfgxwgwwxwgwwwgwvvwgwwfwxwxvhgwfxwguwwwwvwwvwxwwwgwwxxwgxwxwwwwwwxwvwwxwwwwwxwwwwgwwvwxvhwwwwwwwwvwxxwwwgvgwgwevxwwwwvwwwxwwwgeefvvgugvfvwvhvvvgvvgveggwxvvvwvfwwwwgwwwgwwvuvwwvuvwwwfwVhgguWwwgwvwvwfWwwhggwwxwxwvvfgwgvwgwwggwxwWgfwwgwgvvvwwvvwwgwwwvwggwwhwxxwxvvwvgxxxxxvwwvxwwwxgwwfwxvwwgvgwxwwwwgwxwvewvgwwwxxwwggwxxvgxxxwwgwggwwwgWvwxwgfwvvwwwxwwwwVffWgfwvfgwgxwgwgwwfwvfgxwwffwvgvvxgwwvgwxwwwVwvwvgwwwwguefvfegwggfvXwvfxgvgfwgxgfwwwwwvgwwwwggwwwwWfgvxwxwVwvwwwwwwgwwwwvwvxwxxwxwfxwvwwxvvwgwwwWwvvwfVffVwwgffgfvwwvvVfvwwwffgxwvwwwwffwwwefffwwwgvvwgfwfwwgfgvwwggvfwwxwwgvffvgvvgvwgfvgwvwwFvvwUUFUefwevwvwxfvwwwwwWevwfwfgvvwwwwvwgfUfffwgwVefwfwgvfUfwwghfvgvgwwVefwwvwwwwdwvgvvfwgfFUvvvfwwvgewwgfgwfgwwwwwwwwwvwwxwwggffwxwwwwxwvwwwwwwwwwgwwwxgwgwwggwwgxwxwvwwxwwwhwwxxwvwwwwwwwwxxxxfwwxwwgxhwgwvfVwhgggfwwwvwwggfWvgwwwfvwvxxxwxwgwxwvwvxgwvvxvwgwvfvwvwwvxwwhwwwwxfvwwwwgwwwgwwwhvwxxwfwwwvwwwwwxvwwgwxxwxxwxwwgwwwxwwhwvgwevgfgwwxgvwfwxhwgfgxxvwgwvhhwwwxVwgvwwfwwwwwvwwxwxwwwwwxvgvwwxwxxvfvwwgwfvwfwfgwwUgwwUfVUVfwvgvuwwgvwwwwWegwwvwgwugwwwvgfgwgwwvvvwgwwvgggwxwxvwvgwwffwgwwhwwuwwgwwwwwwWWwfwvwwwxvwwxgwwvwwwwxwwwxwvgwvwxxwwxwxwxuVgggwffwvwwgvgwgxwfwfwgwgwwvvvhxwxgvwgvfvgwvfwxwwwwwfwxvvwwwxxfvwwgwhfwwwwgvwgwgvwwfvWffvwwffwwwwvwwxwxfgvxwwwwwwwxxwvxvwwwwwwvwwxwvwwwxxwgwwvgwwwwwwgwwwwvwgwxffvgvwwwvwwwwvwwwxwwwwxhxxvhggxwxwwxWgvwWfggffwwffffWfwgwugWugwwgfgwwuwwxwwwgfwgwvfvgfwwxwgvwwwvwgvwggewgwufwwwwwgwwgefgwwwwvwwwwgvvwwfgggvVVVfwgwvvvwwwuwwwxgfewwxvfwgfwwwxwgVfgggfgvfvfgwxwwvfwhvwwwvgwggvfwwwgvvvvvwfwvgwWgfwgwwggfxwvwwwwgxxuwxwwwwwwwwgxfwwWhwwwwvwwwwwxhxwwwxxywxhwwwfggfwwwxwwwwxwwwwgwwwwwvwxgvvwwwwxwwxxwwwxwwwxxwxxxwwwxwwwwwffwwxwwwxwwwwwwxwwxxwwwwxwwxxwxxwwxwwxwwwwwwwwwwwwwwwwwhgggggfwvwwwvvwwxwwggvwgxwxfwwwwwvwwvwwvwwwgwwwwwwwgvxwxfwwwxwxwUVfwufgevvvgfwvwfffVTvWUwVwefffvfvgvwxxxfwVwefvVwwwwwxwxvuvxevggvfvfwWvwgvwvgwwxwgfffwwvgfvwwwffwfvgvvxewewwfwwwwefvwfvgvgwxhvwwwhwxwgvwxxXffxxwxwgwwwwgxwwwgwxwwwwxxhxwwwwwwwxwxxwhvxxwwgwwwwwgwfwxgwwxxwwwgvfvVfvwgegwvgvwvhgwvVvvfwggxvwwvgwwwwfgxxwwhhwvwxwvwxgWwgvwwggwwwwfxgwvgxwgwwwwwxgvwvwwwvgwwwgewwxfhggwvwxxwwvwwwgfwwxwwxxhwxwwwwgwwwwwxwxwxhwwgxxvwwvwxvwwwwwvwvwvwwhvwgwxwwwwwwwwhgvwfxfvwxxvwwwxwhwwwfwwfVefvfvfgwgvegwwfevefwvwgvgwvwhggwwgfugxgwwvgwvwwwwwwxxfdwfUfvfveffvwggwwgwvXwwwufwwvwwwfvwwwVvVgwgfuggvwgvgwwxwfwwwwxwwgfugxwwvxxwggvwwwwxwgwwxxwwwwwxwwwvwwxwwvxwxxwxwwwxwgxwwgwvhxvwwwgxwwhgwwwwwwwfgvhvgwxwxxvwvwvwgxwwwwgefeFfgvWVffvfefwfWffuggvvgwfwwvweVfgwgegggwxwfwvwggwgwvwggggVvgwvvvvwvfwwwhvXxwvwefwfwwwwwvwwwfVwwvvwhwwwfwvwwwwwwvwxxwvfegggwwwxxwhwwwxwwwwgwxwxwwwxxwwwxxwhhwwxwwghxwvwwwvwwwwwwxxwwwxxxwwwvwwwvwgvwgxwxwwwfgfvuvvvvwwggwwwvvwfufgwggwwvgvVwwwwvxwgxxggwvhgwwwvwwfuvwfvwvwVvwfwgvwhwwxgwxvwwfwwwwwgwfwwwwvxhwxxhgwvwxwwvxwwwggxgwxwxwwwwvxxxwgwwwxwxwvvvgvwwgfwvwWwfwxwgwwvvgvwwfgwfwwwgwwwggwWwewwgwwfwvwfgvhfvwxwWuwwwwxxwwwXfvgVgwgfgfwwwgwxVWffFwevgvgffeegfwwfxwfvgwguffuxxxwxwgWwvgwfvwggwvuxvfxvxwgwwgfwwwgvwwwgugfwgfhwgwwWwwwwffuwhvwfhwggxwwxwfwwwfxwxhfVwwwwxwhwgxxxwwxwwwwwwwgwwwwwxwwxwwwwwwwwwxxwwwwxxwwwwwxwwxwwwgxxfwwwvgwxwwwwgvwwwxwwwwwwwwwwwwwwwxwxwwwwvxwxwwwvgwwwxxxxxxxwwgwwfwvvwvwwgggwggffwwwwgfvwwxfwwvgwwvvvVufVwfvfxwwwwgffwwvwgwwgwwvwwVfffffgxwwhfvwwffwwvwwffvwgffuvvgwwwwgwfxwwxwwwwwwffwwwwgfffvxwwhfvwwffwwwwwwwwwwwxxwwhffvwwwwgvwwwwvwgwfxwwwwwwwwffwwwwgvwwwfvxgwwvwvgwwwxwxxfxxwwwwuwxwxggwfvwwwwfwwwxwxxwwvwgwxvwwxvxwwxwwwwwwwfgwvvwwvweefvgfwwwfgvfwewgwXgwwxxwwwwwwwxvwwvxvvwwvwxgwwxwwwwfwvwxvxwwWwgugwwxxwwwvxwwxwwwwhvwwxxxwxxxxxwwxxwxwxgxvvwwwwwxwhwxhxfwwwwxwwwxxwwwvxwhwxwwwhwvwwwwwwxxwwxxvvwwwwwvwwwxwwggfwvfuwhgWgvuwhxvgwxwwgwxvwwwxvgwxvwggwwgvxwxwxxwxxxxxhwwxxxwvwwwgwwvwfxwvxwwvwwwwvwgwwwwwgwwxxxgwwwwwxwxxwwwhgwwvwwwwwwxwgvvgxwvggwwwxwwwwxwwwwwvggfwwhgfwuvgwgwgwwwwxwwgwgvggvgwwwffvvwwgwwwvgfvgwfwwfgvvewvggwfwvfgwwwwwwvwgwxwwuwWvwgwfvvgwwgvwwgwwvwwfwwwxhvvxwwwwwwxXWwfveeXvwwwwwwgwwwwvvvgvvwwgwgwwvwggXvwfwxwxwwxvwxxxwwwwfwwvwvwwxgvxwwxfvxgxxgwwwwwwxwwxwvwwxggwvvwVwhwgwvwwgwwgwgwwwxwhwvvvfwwgvfvgvwgwwwwxgffvfvwwwfguvvgVWvhVhegwwwgvvwwwwwwvgwvwwvgvwvwgfwwwhfwvwwwwwwwfxwwxxgwwwwwfwgvgvggvgwwwwwuwwvwwvWwfvwwgvVxwwgwwgwvgxwwxwxwwwwwwwwxwxggwwwwwxwxgxwwwxwhwwwwxwwwgxwhfvxhgxvwwwwwxwxwxxggwwxvwfwwvwwvfvwwvexgfWvuvxwgxwwvhvwwwwwwwvvxwwwvgwwwwwwgwwwwwwxxxxxxxgvvxxwxwwwwghvxgwwxgxwvwwwwvgwwwxwwwgwxxxwgvxxxwvwxwwwwxwwwgwwwxwxxwwwxwxwwgwwxwxxwwwhvwfxwwxxwxwwwwxgwwgwxwxwgfwwwwvwxwgvwhvwfxwwxxvwwvxwwgvxvwwwwxgwwxxwxxxwxxxwwxhvwfxwwhwwxwwwvhxxwxxwxwwxxxwgvwwegwwwgwggvfwwgvwwwwfwwfvwwxwwwvggwfwwfvwwwvggvwggwwxxwgfwwgvwgwwwwxwxxvfffgeffwefffvVfvvgfgvwwwwxwwwxwxxwfwwwwwhwwwxwxwwwxxgxwwwwvwwwvfgfwWffwgwwxwwwxwwwxxxxwxwwwwwxxwxxwwwwxwwgwwwwfxxwwfhwwxxvgwxgwwwxwwxwwvwfgfwgwwwgwxxxwwxwwgwwfwfwgvvwwxfffggvwgvwVfgfgwvwwguwfffgVWufvwvwwwggxwwwfhvvgfwfvWuffxgvfvxgfUhfgvwgxwwvggxxxvxwhUxwhvffwwwwgwwggwwgxwgwgggvffutgfxwwvwgwwwfwwvwwxwfxxwfgwvwfvxgxxfwwwwwhwvgwwxxwxwwgxwxwxwwwgwhwwwwwxwxhxwxwwwwwhwvhwfuffwvfVvhUfvvgvwvgwUgeFfevwwxvwvwXhhxwwwwfgvfefwwfwwwvgghfgvvvxvhwwwwwwhwwggvwvuewwxwvgwhwwxwxwvvfgvuevvuWfwwwwwxwwwxhhwwwxhhwgggwwewwwwwwwgxwxxxwhwxwwwwwwxwwxxxwwxwwwxwvwwwwgffvwwwxwfxffuggwwwwwfgfgefwxxxwxxwwwwwwwgvgwggwvwgvwvxvvhwfwwvwwwwwwwxxwwghwgxwfwvwwwxwwwxxxwwwwwvfwvfwegwwwwwxwwxxwwxwwvwgvggggffVgvwwvwgwVfvwwgvwwwxwvwwwwwwfvvvgwfvfwwxwwwwxwfvwxwgwwwwxxwfvwwVfwgwvwwevfgwwgwwUWeffffvvFefevgwwvwXvfwxhwwfvvwwvwwwfvwvxgvvwwewgvwvwhvwfvwfwvxwwwWwwwgvxwwgvxWvfuwgefggwhvvvwvvvvgwvwwVgwwwvwwwgwxwWffxfwwxgwwwwhvwwxfwwwwwxwwwwwwwwwxxgwwgwvwwwwwwxwwwwwwfgwwvwwwwxwwxgxxwgwvgwwwgffgfwwwhwgfefuggvwwvwwvgvffwgvwvwwwvggwwwwwwgwfvggfwfvwgvwvhwffffvvwvwxwxwwwwwwfwxfwwgwwxwxwxwwgwwxwwwwfvwwvwefwvwgwwwvwxwwwwxwwwwxxwwffvxwgwgvgfhgfVVgvwvvwgwwUgvgvvgfxwvwgvvwwfxwwwffgvwgwfgufvgvgvggwwwwwwfxwwwwwggefwVfggwfwgUvevgggvvvUVVdefVgvTVffuWvfuvGfewfgvvfffvggwvwwvfvvwfwvwWvvvvgvgvwfeWgwvvgvgvxwegwvvgwwgvwwxgvwvvgefwfwvwgvvgvfgwugvVvgggwvgxwvwwwgwfwwgwwxwgwwxgvvgvvwfwfwvfVffvwwgwwfwffwfwvgwhwvwwxwwgwwxWefvgwwgfwvvuxWwgfwhwgwvxwgxwwwgwwvvwwwvwgwvgwfgwwwgwgWefVffwfvWfvgfvfwfvgefhxhfwvwwwwwwwwwwgfvwwwwwwvghwvwgwvwgwvvgwwvvxxwwwwwwwgwvgxvugWwvwfggWgwgfgwwgfgwwxuvvgvwwwvwvwvwwWggwwvwxwwvwwxvwxwvgxwgwffwwwvgwvvwvgxwwwwwwwgxxfggwwwwwwghxggxxxxwwxxwwxxwvvfwwwwxwvwwxxfvfvvwgwwVvwwvgwwvwffvhhvwwwwwwwwwvfxwwwwwvxvwwwwwwwwwwwwwxgwwwwwwwxgxwvxfvvwgvwwwwwwwwvwwwwwxxvvwxhhwwxxwxwwxxwwwvwwwwwgwwxwwwxxwwhgwxwwgxwxwwxxwggwwvwwwwwwwwxwxwwwxxxxhvuwvwwgwfwwwwwwgwwwwvwwvgVgfwvwwwxvvxgwwwwxxxwfxwwvwvvgwvwwgxwwwwwhwvwwxwwfhvwxwxwxwwwwwwwwgwvwhwwwwwxwwxwwvugwwwwwwxxwwwwxwghxxwwfxwhwgwwwgwwwxxvwhxwxwwxwxwhwxwwwwxwwwgwwwwwwhwwwwwxwwxwwVgwvgwwfwfwwvwwwwwwwvgvvfWwgwwvwwgguxwgxwwwwxvvwwwuvwwwwwwgwwwwwwfwwgwvwhwwvwwxwwxfwwwwvhwwwwwwxwvvwwgwvhxxvwxvvxwwxxxwxwxxxwgwhxwwhhxwwwwwwwxxwwwwxwwwwwxhwxwwxxxxwwxwxwvwwwwwxxwxwwwwwwwwwvvvxwwwwwfwgxgxwvwwwwwwvwwwwwxgwxxwxwxwwwwwwwwwwwgggwwwwxwwvxxxwwwxwwxxwxwwxwxwxxwwwgwwvxwwxwwwxwwwvxwwwwwwwwwxwxhwwwwwxxwwwwvxhvvggWfwfvwVwvXfwwwwxggwgxxxvwxwwwvfwgwvgfwwwvwfwwvgvwxwggwwwxwgwvwwxwwVVvwgfwWfvgvgVwwtUeVVfFEfeffvwevwUfvvgfwgvvwwugugfvwvgwvwfgvgeeWvvfvwgwVfffwgvwwWVwvwwVfwgvwdvwTfgvwfwguvgfvwvvgfvwugvgxfvwfgwwgvgfwhwwxxfWwfwwwWwfwwwwwwwxwxwwxwwwwgxwxwwwxwxwwwwxwwvwxwwwwwwvxwwwxxwwwxxvfggvwwwwwwgxwgwwwwwgwwwwxwwxhvxgwwxwwwwwwwwwwwwwwwgwggwgvxvxwwxwwxwwwwwwwxxxwwwxhvxwhwwwwwwwwwwwwwwxwxwwwwwwxgwxwxwxwwwxxxwgxwhggwWgfwvvvgwwgfwvwwvvvhwvwwwxwxxfvgWwWfwvxwwfwxvgvwwwgvwwwwwvxvwwwwVVgwgfvWevfggegwvwuTeFfeVTfVfvgvdfwduvvwwfggvvfevwWgvgvfwwvfwvgVvWgvfwgwVfwvvgfwwWefgwxewgvwxxxevweevvgwfgWvwwvvwggvgvevgwfvgwfwwgvgwfhwwgwVfwwwwxWfwwxxfgwxwvvxfggvgvwwxwxggwxxvwwwxxxwxwXvgfvwwefwgwWwwVffwgxwwxgvwwgwxwxhfvwgfwwfggwwwvwggXVwVuffefffvgfWvgVwvwfwwgffwwwwwgfgwwwfwgwwwgwwvwwgfwvxvwvxggwvvwwwwwgvgwvvvwxWwwVfvweghxgfwwgwwffwwvvwwvvgwwgwugXxwwgvgvwxxwwwwfgwwwwgvvxxggxvgegVwwffgwwwvvxwgxwwwwxwxwvggwgwwxvxxwuwvefvgwwwwggwxwwxwffwwwvwgvgvwwwwvveuWVgfVffffgfwuwVevvgwhhwfgwwwvvfguvwgwfvwwfwgwwvvgggvvwwgwwvhfwwxxvvwwvvwxwwxwewfuwvgvwwffgwwwwgfgwwwwgwwwufwwwwvXhwwwwfgggwwwwgxwwxwwwxxxwxwwwxxwxwwwwwxxxwwxwwxwwxxwwxxxwwwggevvwvxwfwewffugwwwxwwwwwgfgggxwwwwxxwwwwxwwwgffvgfwvwwvggUfgfvxwwwwwwwwgvwwxxxwwwgvvvfwwxxxwwwwxwxwgfwwwwffvgxxxxwwxwxxwwwwxvfWvfwfeffgwwhvwwgwggxfuwwwwhwvgwwwwwwfgwgwgfgvwvwwwwgvwwxwwwwwwwfgvwxwxUfffgfvWfwgfgfVwwFeffWeFvwfwefvgfvfvgvvwgfvUfwvvefvfffwUffgvwfffvwwuvwffvgwxhgxgxvvvfVwwwwwwffggvvvWffwUvfwxfwvvvwvvwfvgvwwxgvVffxwXevwwxxwxwgggxwwwvgwwwwxwvwxwxwgwgwwwwwwwwwwwwwwxwfwwwwwwwwxwxwwwwwwwwwwwwVvuvvfgvwfuwuwgwgevwvgvffwwfvvwwwgvwwwwwxvwwfwwwwvgvvwwvwgvgvwvwvwwwwvgwxwgwwvwwgxwhwwwwvwvwwvvgwfgwuwggwwwwwwwvwWfvvgwwgwvgwwwwwwvgwwwhxwwwwxwgwwfwvwvwwxxvxwwxwwwhwwwxwxwwwwwwwwwxwwwxwwwwwxwxxwwhvxwwwwxwwwwvfVvwgggwxwgwgwvwvfwggwvfvgwvvwfvwgwwwwwxwgwgwwwvwwvwwvwgegfwgwgVvgwwwghgwwwwwxwxwwvwgwvvwwwwvwggvwwwxwwgwwwwgwvwxwwxwvvxwwwwwwxwwwwwwxwxxwhxwwvwfvvgwwwwvgwwxwwwwwwwwgwwwxwwwwgwgwwwwwwwgwxxvwwgwvwwxwwxxwwxwwwwggwvwwwgWVvffeWuhwVvVvvwggvffvvvwfwwfvwgggvgvvggwwvgggwvwvggvwwvwwwgwggwxwgvvwvvwwwgwgxwxwvxwxwwwwwxwvggwwvwwwxwwgwwwvwwgfvvgwwggxvvwwgwgwwwwwwwwwwwwxwgwwwwwfwwwwxgwwwwwwxwwwwwgwxwwxhwwwwxgwwxwwwwwxwwwwwwwwxxwwwwxwwxxwwwffuvwfggvwvvwvwwwxWvwggvVggwvvvfvvvuvvvvhwwvgfgwghgvvvwvvwvfgfwwvguwvvwwfwwvwwwwxwxxwwvwwwwwxwwwwwwvwvwwgwggwwxwwvvwwwxwwgwwxxwxgwwgwvvxwxxwxgwwwxwfwwwggfwwfwgwwwvxwwwwwwwwwwwwwwwwhvwvwxhwwwvwxfwvxwwwwwwwwwwwxfwvwvwwvwvvwvwxwgUwfvwfffgvwwwfwgfgvwxxwwwwwwwwwwwvwwgvwwwwwgwgwwgxwwwvwxwwwxwwwwwwgwwvwvxwgwwwgvwwgwwwwwwwwwwwwfwwvwwgxwxwwxxwwwxxwwwwwxwwwwwwwxwwxwvhwxxxwgvwxfwwxxwwvvvwwwwgxwwwwxwxwwwwxgwvgwwwwwxxgwxxxwwwwwwwxwxxwgwgwvhxvwwxwwxwxxxxwwwxwxfwwxwwgxxvvwxwwwhwxwxwxxvgvwxvwxxwxxwwxvwwwwxgxwwgxgWffvfwwvfvhghwgvvgvwvwVdWegvhfewxwxwwfxwgfwwhuvwwhuuvvvWgfwweUfxfxfhvwwxwgwwwhgwghuuvhwwxwwxggwwxwgXffwwgfewhwwwwwxxghxwwwwwwwfgwghufwwxwwvhwwwhxwwwhwvvwwvgvwwwxwvwxwwgxgxwwxwhvwwxwxwvgwgxxwvgwwvvvwxwgvwgwwxgffggfvfgveXvhvvwgwegvufgfhevewwhgwwwwggwggwwvtuwhfvfvvfgvvvgfvvVggwvvwwwgxwvhgeXvxfvfxvwgwvhwwgwwxhxfgvhevewwwfvvvvhwhvxgwgwwwwwvwvwfgggxhgvxwxvwwxwwwxwxwwwwwwwwwwgwxwwxhwgwwwwxwwwwwwhgxgwwwwwwxwwvwwwvvvxwgfvfvfwgffhhfxgggvwwgvfwgvwgvwxxwwwwwvwhgvwwVwvwwwwwwfwgwwffehXvgwvvvwxwvwwwxhxvxwvwxfwwxwwxwwvwxvwxvhggvwgfwvwwvvvvwwwwwwwwwwvwwwwgwwwffvxxwvwxwxwgfwfgfeefvffffwxwwefwfwfvwwxgvxwwfvwwwfwggVewwwwwfvwfggwwxfwwwwwwfUfwwwxfwwwxwfVvvgfwwgwvggVvwgvVeEUUTfvgffVfvfefgwwvgfwwvgvxevwgwvvvvgegvwvgegggvVufgwgvwvfgUgvgvgvVvwgvwwwgwxwUFegwwfffwgvwffffwggvwwvgfgwgwwfgfwwvvwwwvwwwvggggwwhwwwwfxwxxwwxxxwwxwwwwxxwwwwwxwwwvxxwwwxwwxgwwwwxwfgfvfwgvvgwwvgwwwhwgewfvwgwfwwwxwxwwgxwwfxwwfvwwwvvwwwvfefwwvvwwxwxwwwvwwwfxvwxwwwwxxwhwwgvwgwvwxwvwwwwwxxxwwwwxxwwwxhxgwwxwwvgxwggwgwgffevgfgfvwxvwvwvfvxwwxwwwwvwwxfwwgVfvwwwvwwwvxwwgwgxwxvwvgvwxxwwxwwfVwvfgwwwwvvguggwWUefFfeggfffVvUefwwwffvvwgggxvwwgvvwfwwevvwwgugwvwfvgwwvxgwfvvwwwvguwgvwxxxwwhwxfVvwwwgwhgwfgvgvwwvwxvwwgwgwWffxwwwwwwwwhxfgxgwwgwvwwwfvwxwfgvwfggwwwxwxwvvxggxwxwvwwxwwvwfggwxxgvvwxxxxxwxwvvwwxxwxxgwvwgwwwwwwgwxwhfvffegwwwwwvwgffwxvwgwgwwwwwwwwwxwwwxxwgxwwwwxwxwwxwwwwxgwwwwxwgffvwvwwghhwwwwwvvvwwwxwxwxvghxwxwwwxwwwwvwxxxwxhfwwggfVfVevffvvwxwvffwgvwwvwwvwwwxwgvwgfVvgvwwxfUvfwwwgxwwwxwvfgvwgwwhwwwgwwwwwwwwwgvgvvvwVeVffeffwfwgfgUwfwwvwvggufgfgwvegwvwvwwwfwvfwwwwvfvfwwwwwwfwfgwwwwwwvvwxxwwxwwhvfVfwfwfxhfwwwwgfggvwwwwwwwwwvwvgWvwwvwwvwwwvgwwhwwwwwwwwxxwxvxxxxwwwwxwfwvwwwwwfwwwwwwwwgwwwhvghxxxxvwwwvwwxwwwwwxwwwwwwwwwgwwwwxgxgvhxvxwxxwwxwwwxxwwwwwxwwwwxxwwwwwwxvwwwwxwxxxwxxwwwwwwxwwwwwwwwwXgWfwgfUfwvwgevWwvVfwwWgfwwgvwfvwfwfwvfwvwwWUffwgfwwwwwwgvwwwwwWwgUfwwwwvfwvwwwwwedUfvuwfVuFfwUVvwweUefcffUUffTUuffwevWfvwwgUgfffgwUevwwTUewwuvgGVUffwUvvwwgwvgvwwfvgGfwUUvwwfwefvvwwffeVffvgvwwwgUVffTUeUvvwwvvvwwevWevwwhvggvwwwxwWefwwGUUwwgwwgfvwwvwwvvgfwwxgvggwwvwwwwwgwwwxxvvwwwvvwwwgwwwwwwwfvwgwwgwwwwgVeewwfwWfvexgevggvwvEuvffffgevvwxhwwvvxxxffWgwgfwvwhevvxhwwwefvgwggwwwvwwwvwwexgfvvwhwwvwwwvwfgwggwvwxxeeffgevfgwwgwvwwgggvwwxxwwwwxwwwwxVvwvxVfgwwxgwwwwwwwxxwwwwwwwwwgvwgvwwvwwfvwwwwgwwgvvxwxwwwgvxwwwwwwwgvwgvwwgWuffwxfxVfVfwgwwfwVvgggvvwwfgevVfguWvvfwwwwwwwwwwVvgfgvvvVvvvwvvwwfwUWeegvgffgwwwvwwwwfgvhfvgfgvvvgwwwfvwgvwfwwgfgguWwvvffwwwwwxwwwwwggfgwwwxwhefwhgggvwwvwgfwxwwgvwwwxwwgwvwwwwwwwxwvvgwwwwgwxwwwwvvgwvwwwvwwxwwwxxVwewvvxvvggvwwvgfUfvfuWVffufWvvwgwwvgUWuffgfgvvvwxwvgvgggffvUwvggwwwwvvwwwgwevvwfwfgwwgwvwwgwfxfvfgfwwwwfwhvgvvwwwwwwwwwgUvffwvvwfgvgvvwwwfgwwwxwwvwgwwxefwwvfggxfxwfgwwgwgwwgvgwxwwvwwggwwwwwvvwwwfgwxxwwwwwxhvvvwxxwwwwxhwwwgwfwvwwwwVeegwvwwvvVgwfgwwgvwfdvVffWgvfegwgggwvvxxWggfgvvwefwwvfewwwgvWUfvhwfggwgwwwwhwwWgwffwwhwwvwwvwvggwwxxgfgWgvfefgwwvxxvwwvwwwggwxwwxxwwXvvxwggVvwwxvgwwwwwwwwwwxggwxwwwwwwwxxxxxxgwgwxxwwxwwwgxwwwxxxffvwwwwgxwxwvxwggwfVwgvwwgwwvwxvwwxwwwwxgwxxwwwwwwfvwxwxwwwxxwxwwxxxvwwxwwxvvvwgwwvxwxxwwwwxwwxxwfwwwxwgxxwxwwxwxxxwwxxwwwxxwwwxxwwxxwwwwwxwwxwxxwwwwwwwxwwwwwwhvvfvwwwxwwxfgwxwwxxwwxwxxxxwxwxwwwwwwwxwfvwwwxxxxxwxxxwwwwwxwxwxwxwwxwwwwxwwwwxwxxxxwwwxxxxxwwwwwxxxgegfgwgeVwwvwgfvvwwfgwwwwgvvvxxwwwwhvvwffxwwwwwxwgvwgufewfgvwwvwxwwwwwwwxwwwwgggfvwwhwvxwxwwxwwwwgffxwwwwxwwwxxwwwxwwwwxgfxxWvewxfeffgvvgwvgfvwvwwfvwxwwgwwgwwvwwwgwwfggvwwwxwxfvwwwwfvwxwxwwvwwwweVffVevvfvfffvwwEffFgvggwUfefvgvwffgfWffwfwfwggwUgfgwwwfgvgfVVfvgwwwvwgefvvwxhfevwwvwwfgwwwffvgvgvvxwgggUfffffgefvwxwffgvwwxhvWffxwXefvvwwxwxwwxwxvwwwwwwwwwwwwxxxwxvxwwwwxvxxwxxxxwwwvwwwwxwwxwxwwwxxwwwwwwxwwxxxwgfvuvffgvggwugwwwwhuwwuwgfggfgvvvgwwvwwwgwwwwwwwxwgggwvwxwgwggggwvvwgwxwgvwgwwwwwxwwwwwxwxxwgwxwWgggvvggwgxghgfwvvwfgvvwwvwvwwgwwgwgwxxvvvwwwwwwwwxwhwwwwwvwwwwwwwwgwwwwvgwfvwvwwxwwwwfwwxxxwwwwxgvwwwwxwwwfwxwwgxwwwvwwgwwwwwwfuVvwfgwwgwfvwwwvgffvwggvgggvwvwwxvvwvwwxwwfwwvwwwgvvvwwvghffUggeWVvwgwwxvgwwwwxwwwwwvwwwwvwwgvfwvfvwggwgggwwvwgvwvwwfwwwwwwwwwwvvwwwwgwwwwgvwwgwwwwxvwwwwwwgxxwwxxwxxwwwxwwwxwwxxwwxvxwwwwwwwxwxwwxwxxwxwhxwwwwwgfWvvVfgvvhWvvvwwwwfwgvwgvfgggvwvwwghwvwxwwgwwwwxwggvwwxwggwvwfwwgvwwvwwgwhwxwgwwwwxwhwgwwwwwwgwwvwxwwvgwwvwgwgvwwwgwwxwxwwvvwxwwwwwwvwxwwwxwwxxwvwgwvwwwwwwwwvgxwwwwvwxwwwwwwxxxwwhwgwwxwwxwxwwwxxwwwxwwwxwwwwwgeuvgfwvwwwvwxgwvwVvvgwggfgvgvvvvwhvwewvggwwVwwvwwwwvvvwvwgvggfgWwgewhwwgwwxwfwwgwwwwvxgvghwwvwwwvwvwwwvwwwxwgvwvgwvwwwvvvwwwwwwvwwhxgwwwgwwwxwwgvgwgwwvwxxvwwvwwwgfwvwfwgwwwxvxgwwwwwwwwwwxxwhvwvvwwwwwwwvwvxfwxxwxwwwwwwwxwwxgfwwfwwwgwwvwwwhWewfvfwfvvgvwwvvwfgwxwgwwvgvwwwwwwwwxwwwwvwwvvwfwxwwwwvgwwwxxwwxwwwxwwxwwxhwvgxvwfxwwwwwwwwwwwwwwwwxxxgwfwwwwwwgxwxwxwxwwwwwwwwwxvwwwxwgvwwwxfwfxxxwwwwwwxwwwwvwggxwwvwwwwwxxxwwwwwwvfwvwwgvwvxxxhgwxxxwwxwwwwwwwxxwwwwwxvwxwwwxxwxxxwxwxwxwvggvwwvgwgwwwxgwwwxwxwwgfwvwxwwwwwwwgwfxwwwwwwwxwwwwwgvwwxxwwwwwWTefwufwFvvfvgfWffwgfvgUeffgVfvvvvwxwvwvwwwwwhVvwgvwwwgvvfwgvgvVfvwfxfhvuggvwgwvgwfvgfWffwwgwvhvuwwwvgwfvwwxggfWUfvvwwxwgvwgwwwwwwxxwwxwwwxwfvwxfggvwwwwwvwgwwxgwwgxwwvxwwwwfwwwvfwwwhvwwwxfwwwwwwvwvxwwwwxwwwxwwwwwfwwwwwwxwwgwwUEfggfwvefvhfgvuvvgvfffufgUVvvfgwxgvvwvwxvwxUVvwvfgwwvvvgwWgvgdvffwggefvwwffvggwgwwfgvuvfwvvefvwwgwgwwvwwwwfwfVvvfwxwwwwwgwwwwwxwwwwxwxxwgvvwwgggvvwxxwwvwwwwwwxxxwwwwwxwwxxwwxwwwxxwxwwwvwwwwwxxwvwwwxwxwxgwwgfewwvwWvgwwgwwgwvvwwWvfwwggvwfwwwwxwwxgfvgwvxwxxwwgvwgvwwVvwwxggwfwvwwwwwxwxwxgwwgwwhwwwvwvwxwwwwvwwgwvxgfvwvvxwwwwwvhwwwwwxwxxwwwxwwwwgfwwwwxwwwxxxwwxwxwxxwwfxxwwxwwwwwwhwxwwwxwxvwxvwwhxxhwxwwwxwwxwxwwwwxgwxwxwxxxxwwxwwwxgvwwwvwwvwwwwxxxgxxwwwwwwxxxxwxxwxxxxvxxxwwwwwvwxwwwxwxxwwxwwwwxxwxxxwwwxwwwxxwwwwggwwvxwxwwxwgevvwfwwWggwwvwwfvvwwWgfwwwfvfwvwwwwgwwwvxwgfvwwwwxwwgwwvvxwWgwwwwfwwvvwwxwwwwwwvvwwgwwwwwvwwwwwxxwwgfvvwwwwwvvwwwwwwwxwxwwwwwxgvgxwxwwwxwxxwxxxxwxwxxwxwxwxvxxxxxwxwxxxxxwxwxwhwxwxxwwwxxxwxwwhxwgwxxwwwwxgwwwxxwxwwxwwxwgxwxxwxxwhxgwwwwwwxhxwxxwxwwwwxxxxxwxvxxwxxxxxxxxxhxwxxxxxwxxxxwxwvwwxxxwxxxxxxxwgxvxxwwwxwwxwwwwwwxxxxxxwxxxwxwwwxhwxwxwwwwgxhwxwxwwxwxxwwxwwwxwxwxgxxwxxwxwwxwxwxwwxxxxwxxwwwwxwwxwfxxxwxxwxxwxxxwwwwxhvwxxwwwxgwxvwwwxxxxxxwwxwwxwxwhwwwxwwxwwwxwxwwwwxhvxxwxvxvwwwwxwxwxwwxwxxwwxxwxwxxxxvwwxwwggwvwwgvxvfuvUuVegfxuvvggfxfVuggvgegfhvvgvvfgwwwwwwfvvwvgvgVwgVfvwwvwfvwwvevfgvggfvggfhfUtgetgUfVgwvgfgffwvwfwwgvvgffVgWffVfvefeffefwfevvfvgWgvfvgfwvvfvwgvvgffVgVfgVfwuffwfuvvfgfffvwWvxwvvwwwgfwwwwvwwwvwwwxwwwgwwwgfvwvvUwvgfgvwwvfwwfgwvwfffwwwwvvhvvfgfVveVufdWeWgevvffggWvugwvegfWvvuVgvfvvggvwwvvvfvwfffgfgVgfvvvevvwvevvfwvefvvfggVfdfvueWfWgfVVffffgfgfwgfwfffefGfWeeUfedfUUfeveefVffffWVvfwvvwwfwgvvvvgwfgvwVWGfwfggvvewgvfevvefUwgwhuwfxvwvgvgvgwgwggfwxwwwwuwvgvefvgvvvvvegfvwufvfvewfvfVwfvfgwgxfgggfvuVgufFfUgVffggfgvvvVwvgWgUgvewvufwfwvvfgwwfwffvgfgvwVfgwggggewfwgTweewVefgggffuFfvUVgUguVfgefvffgfffwgvgffdeFgVgefVfeVefeVUufeUfffVgfegvfwvggvwwfwfvffffgwgvVvwvvvfgevvevvvgffuwfwexwfgvwgwfgwgfgwgwwwwwwuwffguwfvgffgfvWwvfWfufvvgugvfgvffxwuwwwwvvwwwwwwwgwwwwwwwwvvffgwwwfwwvwwwwwwwvwwwwwwwxgxvwwwxwwgvwfwwvgwwvvvfffwwwwwwwwwwxxwwwwwvwwxwwgxvwwxwwwvwwwwwxxwwxwwwwwwvwwwwgwwwwwwwwxwvwvwwxwwwwwxwwxxxwwwwwwxxgvxwwwvwgwwxwvwwggwggwfvvVefGVvTuevwvfwfvvgeggvvUfvwffffvggwfwvwwwffefWevgvffffffwfwVfgvgVvwgfguwgffgUwWUweffwVgvgvfgwffwwwwffUfVuvevvgfffffvfVffvfVvvgfvuvwwfwwgvfwwwfvgwwevuvggffvgwwwgfwwfVvvgffwwggwwwwhwgwwwwwwgvvwwwxvwgfvwwgUvgfwgffwwfgwfwwwvvvwvfwwwwwWxvvwwwwgvwwwwfwwwwvvwwvfgfwwgwwgwwwwxwhxxwxxwwwwvxwxxwwxgvwxwhfvwwvgwgwwwwwwwwwvhwwxgxwwwwxwwxxwwgwwxxhwwxgwhwgwwwxwwwxwxwxxxxwwxwxwxwxwwwxwwxwwwxwwwXgfwwgwwwvwwwwvwwwggwwggwwvwwfvvgwwwvhxwwhwwwwhxwwxwwxggwwwwfwwwwgvwwwwxxhxwwxwwwxwxgxxhxxwwwwxxwxxhxxwxwxwwggxxxxxwhwwvwgxwxxxwwxxwxwwxxwwxwwxwxwxwhwxwWgwgwvwwgvwffvwwwwwwwwxvgvgwwffvwwwwgwxwwxwwwwwwwwwxwgwwwgxwwwwwwgxgxwwwgwwgwgwwwwwwwwwwxwwwwhxwwwgwwgwwwgwxwwxwwwwwxxwwwxxgwwwwgwwwwwggwwwwwwwwfxgwxxxxxxxwwwwwxxwxwgwhwxvwwhvxxhwxwhwwxxwxgwwwwxxwhvxwXufggggfvwhfgvwxwwwwfwwgvwwwwwgWvVwgwfvvgfwwwvwFfgVfvwfvvwwgwwgfVvggvwwvwfwguffvvggwgfgvggfgwwffgwvwwwefFffEVefUeffffwwVFUefeeVfUvgvfvwvUvfvwwwvvgGvfffgwVfwwwwwwfVfvwvwgvgxwwfVgwwxwwxWfvwggwwvfwffgwwfffUfefUgfffwwvvxgwwUfVfvffvwwwxwxfvwhwxwwwvwwggewwhvxgwvwgwvxxvvxxfwgvgwxxwfwwwvwwxwgfwxuwwwhgwwwwgwwwhwxfwvwwwhgwwwwwwwgvwwwwwwwgwwwwvwwwwwWvgwxfwewvvwwxfxwgwwwwwxwxwwxwxwgwvvgxwgwwwxwwxxwwwwwggwwwxwxwvwxgwxxgwwgxwwgvxvVgwggvvwwwwhghwwgwwvgwxxxwwwwgwwwgvwwwxwwwgvvxghwwwvgvwwwwwwwwxwvwgwwwwwwwwwwwxgwwwwwwwxwvxxwxwxwwvvvvvwxxwwxxhgwvvwfwxxvxxwwxwxxwxwvwxwhxvwwxwfvwhgwwvwwxwgggwwxvwwfvxxgwwhwvxwwvwwwwxfwggvgvggwwwxwhwwgwvwwvvWwefxwwxwvugwvwfwvggwwxxvwgwwwgwvwwwgwwwwgwwwwgwvwwgwwxxwvgwwwvgwwgvwwwwwwvhxvwwxwvggwugwwxwhvwuWwfwfhghgvwwvwxhvxxxvwxwwwxuwwvwwvfwwxggwvwgwgwwwxwwggwvwwwwxvfwxwxwfvgWvewffvwxfgVvxwwvVvfwvwvwwwxwwfxwwhwwvggvwWwwwwvxwvxVwwvvvwvxwxggughuwfffwvfvvvvgvwvwwxgwwvghvwwwwwvfwvgwfxwwgvvwwvvwwwwfxwxwwwvgWvvgwxwgwvwfwwuwvgxwwxhwwwwwwwxwxwwwwwwwxxxwwwwwxwwWwwwxxwwxhxwWwwwhxvvwwwwwxwvgggwwwvvwwxvvwfgXgwwfwxxxxxgxxxxwwwvvvvwfwxxxggwgfvxxwwxxwvwgwxwwggwwgwwwwwwwwwwgwvwwwwwvwwxxwwwxwwwwwxxgwwxwwhhxxwxvwwwvxwwwwwxwghwvwwfxwwxvwggxxwwwwwwxgvgxwfwfwwwvxxwxwwwgwwwwwxwwvgvgwvxwuwwwwvwwhfgwwwvgwwvvwwhxwxwwwVgwwgxwgwwwxwgwxwvgvwgwwgwwwxwghwwwgxwgwwwwgwwvwwwwwxvxgxgxvwxxhwgwfwwxxxwgwwvxxggwxxwwxwwwwxwwxxwwvghwvwwwwwwwwxxgwwwwwxwGwwfefwugvfvfvwfggwwweuffufeVgfffeffgvvwugvwgwvfgwgwwwfvxxWwwwfxfexgwvwfxvefwfvgvWffwvfvvwwwwuxvWwffwwWwwxvWwwffvvwwwxvvvwvwWwvfwWwwwxhevwvhwwfwfvwxfwggvgwwwwvwwwwvwwwwwvwxwxwwxxwwwxwwxxwxwxwwwwgwwwggwfgvgwwwvWvggwffvwffgwxwxvwggvwvffvwwvgwwvwvwwwgwvwwgwwugwwgffgvvvwvwwggWwgfWffWvfgffgfvuffevfffuvwwgWgvFVvvffwVTVVffffeeuvgWvgvfwvvefvvwwvwwwwVxwgvgwvfwfegfwwwwvvwgfgwwvwwxwwwfwwwfgxxwvwvvgwwwwwvgwwwwfffwVwwwwweffwVgVvvvewfwfwgvgxwgwwxwgwwwwvxwfwxwggwgwhwwwwwxwwxxwwxwwxwxwgwwxwgwwxwwwwghwhxvgwwwfxxwxwxxwwxxxwwwwwxwvxwwxwxwxwwwxxxxhxwxxfxxwwfxwwwxxwxxxwxwxwxwwxxwxwwwgxwwxxwvwvxhxwwvvwwfwwgwgwxwwvvwghgfvxxxwxwxxwxwxwxwwwxwgwwwwvggxxwgwwwwwwgwwwwhxxwxwwxwwwwvvwgxgwwvxvwwvwwgwwggwwwwwxxwxxwxwxwwwxwxgxwwxwxwwwxgwwxxyxxwxwwwwwxwwxxwxxwwxwwwwxgxwwhwwxhwwwwwxwwwwwwwwwwwxwvwfwwwvgwwwgwxgwwwfvwxvwwhwwwxwgwvwxwwxxwwwugfvwvwwwwvwwxwwwwvwwwvwgwxwwwxwwwwvwwfwwvgvxvxwwwwvwvwvwfwwwwvvwwwwggwwvwwvhwuwwxwwvgxwwwvgfvewwwwgwxvwxwwwwwxgvwwxvfwwhwwvwwxwxfwgwwwwwxwgwwwvxwwwwwxwvxggvwwvwxgwwxwwwwxvwwwvxgvxwxxwwwxxvwxxwfwwfwgxvwxxxfxvwwwwgxwwwwwwxxwwxxwwgwgwvwwvxvxwwwwwxvgwwwwhxhxxwxwwxwwwxwwwxxfxwwxvxwwwxxvxwwwwxxwwwwwwwxwxwxgwwwwxhwwxwhgxvvwggwxwwxvvwwhxwgwxvhxgxwgvvwfhggwxwwwxxwxwxwwwwwxxxwwxvhxgwxxwxxxxxgvwwwxvwwxwwwwxwxwwwwwwwwxvwxwxwwvwwwwwxxvxwwxwwwwxwwxwwwwvwxxvhwxxvxwwfxxwxxwxwwxwxxwxxxxxgwxhwwxxwwwwwwhxwwxgwwwvwwxgvwwgfvwhvwvhgvwwvwvvwwxvvwwwhwwwwwwwhvwxhwwwxwwwwwxwwvwwxwwxwxwwgwwxwwgwwwwwxwggwwxwxxxxwxwwxhwwwhwwvwhxxwwxxwwwxwwxwxwwxxwwwwwxxgwwwxxwxwxxuwwgwgwwvwwvwwwxwfwxfggwvvvwgffgfwfgwwwwhwwgwwxwxxwwwwwxfvxwwwwfgwwwwwwwggwwvwwxgfgwwvwwwxhxggwxwwxwvwwxhgvxwwwwwwwwxwxhwxwvwwxwwvwwxwhfwxvfgwwwxwwxxxwxwwwxxxxxxxxwwhxwwwgxwxwxxwwxwvwwwwwwwwvgwxggwwwwwxxwvxfwvxvwwhwwwwxxxwwfwwwxwwwwxwwvwwvgwwxwxxwwwwgwgwwwwvwwwxwwxwhwxwwwwgwvwxwwwwwwwvwvwxwvvwwwhwwwgwxxwwvwwwwwxwxwgwxwwwwwwxxxwxwwwwxvwwxwwwwxxvfwwwvwwxwxxxxwvxwxxwwwwxwxvwwwwwwwvwwxwwhvwwvxvwwxvwwwwxwxwgwwwwwwxwwwxwwwwwwwxwwwwxwhwgwwxwwwwxwwxwwfxwwwgwvvwwwwgwgwxwwwwxwwhvwxvwwwxwwwwwwxwwwwwwwxwwwwgxxwxwwwwxwwwxxxwwwwxwwwxxwwxwwvvwxwwwvwwwxxwwwwwgwxxwxwwwwwgwwwgwVwvgwhwxwwwfwwWwvfwwgvwwwxgvfwwxwwwwwwwxwwgwwgwfwwgxxwwxxxxgwwgwwwwwwwwxwuxwwggwvwwwgwwwwwwghwwwwwwwxwxwwwwxwwwvgvwxwwxxwvwgwwhvfwwwwxxxxfwwwvwvwxwwwxwxwgwwwwgwxwwxxwwwwwvhfwwwgwwgwxgvwwwwwvfwfvhvhfwfvgvfxwwwwwhwvwxwwxwvwwxxwgwwwwwwgwvxwvwwwwfggvwxfvxfvgvwwwwxxwxwgwxwwwwwwwwwwwwgwgwwwwwwwwwgvxwwwwwwwgwwwxxwvwwwwwhgwxxxfwvwgwwwwwxwwwwgwwwxwxwwwwwxxwwxxwwwwwwwwwwwwwwvfwwwwxwvvevwggwwvxwvxwwvwVwwgghgwxxwwwwwgvvwwvvwwwwxwxwwfwgwwwevwwxwwwwwwwvwwvgxgwxxxxfxwwwwvxvwwvwxwvwwfwwwgwwwvwvhfvxwwwwwwwwxvvwwvwxwxwwwewwwxwhvxwwwwwwxwwwgvwxghwxwwvxwwwwwwwxwvwxwxxxwvwxwwXWgggwfgffwwggfwwfVxwwfgwWwwWvwwffffvgwvvwvwwggxgwwwvwwgvwwxfwwhwwfggxwwgvwwwVwggvwwvwfgwwvvwvwxgwxgfwwgwwvwwwgwxgwxwvwwwwwwvhwvgwvwxgxwxwxwwuwxwwwWwwwwxwwfvvgvhvwxwxwgwvwwwxvgwxwwwxwwwvxwxwvxwwvxwwwxwxgwwwwfvfgwgvgfwwwfwwgwffwfwfvWwfxwfwwWvffvuvhggggwwgwwwwfvxwwgvvwwgwwwfvwvwwuwwgvwwvwwgwgwghwwvgwgwwwvwwgvwxwvwwxwwvwwgwwvwvxwvvxvgwwgwwwWwwwxwwgxwwwwvxwxwwwfvwwvgwwwwwvxhggxvxvxwxwwwvwxwhxvxgvwwwwwwxxwhwwwwwggwvfwVwgfwwgvwwwvWexvfgWwggwguwwvfgexvgvfwvwwwgwwwxfwgvxwwwvgwgwgwxfgfxfwwfwwgwwxwuwwwwgfwwfwwxgxwwgxwwgxwwwwwxxgwgwxfwwwwwwwwwvwwwghxwxgwxxwwvxwwwwgwxwwwxwwvwwwwwvgxwwxwwwxwwvxxgxwxfwxfxwxwxvwwwwxwwwwwxwwghxggvwgffVwwfevfgeffgvfggwwxvwwwwwwgwvfvwfwvvvwwvWfVgvwwfwfVfuwgefvwgvgvgwgffgvwgffewwVfvfgfVfffefvgfevwwww7EUeVefVUfEUUdfffgVfFeVewwfffwvvvfwgvvgwwvWVfgvwwfwffevwgfVvwgvgvgwgfffVwwxwwwfevwwwwwxwwwwgwfVefVUfEwwVFewgfegefTfUvwgfffgwvVgvuvfwwwwxvgvwgwfxwwffgwvugvhgvfwwvwggwwxxwwxwxxvVwwvwgwwwVwgxvgxhvhwxvxwwugugggvgvgwfVvgwwwxwxwwwwfwwgvwgvgwgwvvgwwxwggxwvwggwggvwgwwvwwUwvfvwgvwwVggwffvvwwwwhwvvggxgwggxxvxwwxwwxxwvvwwwgwxgVwwvhvwwwwwwwwwwfwgvwfgwgwwxxwwvvvwgfwxwfvwgwwgwvuuvvhWxggvwvvwwwxwwxggvwfwwwwwWgwxvfvwxvvvvxgxxggfgwvuvfgwWwggvvwwwfwhwvwxgwwwgxwwwwhwwxgfvvwwwwvwwwwvwwwwgwxgWggfwwfwwggwghvuwvwwvwwgxxxwwwgwwwwvxwwwxxfgwgwwwfXxwxvvwgggvhxwvwwggwfxwwwvgwwvhwvwwvuggvvwhvhffwgxwwgwwwxwwwxwxwxwvggfwwwgxwugxggwwugxvxgwwxwgwegwvgvhgggwwvhvvwwwwwwxvvwfwwfgwwggxfwfvwwvgxvgvgwwwxwwwwwwvWwfwgWwwvghvvwwwwvxvvwghwvxwwxwvwxwxwwwwvfwwvWvgfvhvwxgwgwwWvgwxfwwxwwvwwfgwwwwfwgwwwwxfvxfwwwhwgvvgvwfwxvwvwwxwwwxwxwfvwwwwxvewxvwxvxwxxvwxfxhvwwwxggxvwwxwxwwwwwxwfwxwxwwfwxwwwwwwxwwvwwwwwxwVxwwwxwhgfwxfwwwwhgwxxxwwwwwxhvgwgwxvxgwwxfwxxwgwwwwwwwfgvvgwvwgfvwugggvWggwwgfvwwwuufwvvWggwwfgwvwwwwwwwggffwgwwvwWghwwWfwwwwfwxwxhwwxvwfvwwgwwxwfvwwxwwfwxxwwggwwwwwwwwgwxvffwwwwwwwwgwwxwwgwwwgWgvggwfwfgvxwfvwwwwwwvxhwwwvwxwwwwwwwvxxxxggfwwvfWhvgwvgvwwwgwgxwvxwxvvwggvwwxwgwgvufgwWvgwfevvwfwfuwfgwwwfvwvwwfwwvwwvgWffvgxwwwwWugwffvwwwgvvxvwxxwfvwgwgvwgfvwwwwwxwwwgwfwwvgwwgxvwvvwwvgvwwvvwwvwwvwxgwWvvvwhgwWvhvvvwxwwvxfxhvwxwwggxxwvxxvwvwvvwwwwvWfwggwfwwwgwwwxwwwxgwwfxwWwwwvfgfwfvvwvgfVgfwgvvfwwwVfvgfffVvgggvvvwgfgvxwwwxwgufwxwwwgfWvgvwfgvwwwxwwgvffvwVfvwggvffvggwxgvwwwwgvgvvxwxgggwwwwwwwwwwwvwwhfvfwwwwwxgufwxfwwwgfWvgfwgwwwwwxvwwwwwgxwwxwwwwvgwhwwwxwwxwwxwwwwxgvxwwwwwxwxwwwwhvwwxxxwwwwwwwxxwwwwxxwwgwxxgxhwxwxvwwxwwxxxxxxxwwwwwvwwwwwxxxWfggwvvvgwwfgwfwvwwgwwxvvwwxwwxhgwxgwwwwwwfxxwwwgxwwxxwxwgxwxxwxxhvfvwwxgwhghgwwvvwwgWgvhvwwwwwvwwwwwwxwxxwwwwwxwvwvxxxwxxxwfwwewwfvvwvwwxwwwwwwwwwwwvwwfwwwwvwwwxxxxfggfwevvgggvgvgwvVgvvvvwvgxwwwwgvwxxxfwxuwwwxgXwxvgvwwgvwwgwwxxxwxxxwxxvwwxweeufwggfgggwfwvfvggwwggwvhwfwvwwxxxxgwwwvwgwwwvwxwxwwwxxwxxxgwgwxwxwwhuxWvwxggwvxgwvvwwvwwgwwxxwwwwxvwwwwwxwxxhfwfugvegvgfggwvfxggvfwwvwvhwxwxxfwwxhwwVfwxxwwvwwxwwgwwwfxwwwxwwgxxwxwxhwwxwXfwfwvgegvggggwvvegwggvwxvgggvvwhvffwfgxvewgfvguwfgfvwgfvwedfWVfVuwevvwWffgfwgvwvwwwwFvwvffwwwwWuweffvwvwwwfwxxgVuffdwWfvgfvevfvwwwwwfwhwwevwWwwvfwwvwwgvwfvvwgfwwwvvwwwggwgUvfffvwwwwFfwvUfvfvvWevefevwfwgvwvvwvwwehfvwgvwewxwfvfvwwwwwwvfgvvwwwUffhvfvwxfvwwgfwwwxvwwwwxxxxfwwwwwxwwwwvwwxxxwxxwxxwwwxhwwwhvwwgwwwfgwwwwxxwxxxwxwxwwwwwwwxXvvfgwwwxwgvvvfwxgwvvwgwwfwwwxwxxhwgxwxwwvwwwxvxxwxwwwwxwxxhhggwwwghvxhwxhgwggfwwvWvhvhvwxwhfugwgggwuvvgvvWgxggxwgfgwduvWfuVgwVfvwgwwgvvwgvgwwwxVgwgwvwwwWgwVggwgwwwxfWwwuuvgfvggwVwhgvwwvwwwwwxVwwgxvwwwxhwwfvxwwwxwwVgvvugfvgwwwFfwfgfvwwwWfwVfvwfwwhwuwvxeffvvwwwwhgxgwxfvxwwwfwfvwwwggwwxwwwgwwwWwfxwxvwwVfwgwfuwggwvewfugwWgvvgWVwvdveuggVwwvegfVwggvgwxgugffgwfwhwtgfVwwvgvwwwvwuwvvggWvewvvgggwwvwwgvvwwwgvwwvhwwwxwuwwfwwwxvgvgvgwvwwwgwxwgugwvgwvwwxuggWvwvxwwwXvhgwvgfxxhffvgxwwwwgvgwgwxxggxxxwgxwwwfwwwhgWxwwwxhvfwffWfWevffvgFwggVwvffgwgeuwUffEgfgVxwgfffveguwgwgwwwVgVfUwgvggGwffVwvVvfwgfwvgxxgfxvvwevgVwgvfwvfwvwwwvwwgVwgwgvfgfwwwWwwgfwgvwwwwwvgwwVvwvvwfgfwgwwwVwWffwwfvwGwgfVwvfwgwwwwfwgxvfvggvwwwVwffwwwwwwvfgfwwwgUhgvwgwwggvwwwggwgvfwwxxxxwxxwwwgwgxwwvwwwwwwwwgwxgxwvwwwwxwwwwxxwwvvwwwwxvwgwvwxwwxwxwwwwwgxxwwwvwgxwvggwwwwxwwxxxxvwvwwwwvwwxwwwwwwwgwwgwwgwxgwwxxwwwwvwxgwgwwwwwwwvwxwgwxxwgwwxwxxwwwxwwxxxwvxvvwwhwwxxxwxvwgwwwwwgwwwxxwwwwxwwggwwwwvvwvvwwwwxvvwxwwwgxwxvgwgxwwwwgfwwhwvxwxwwvvvvwwwvwvwwgwxwvwfwwwgwvxxwwxwwwhgwvwwvwwwfvwwwvwwwwwwggwhwwgwhuwvwwwwggvwwgwgwgwfwwvwwwvwvwvwgvwxwgxwxwwwxwwwwwwwwgvwwxvfwwvffugwfwwwgvwwwgwwwvvegxgxwwwwvwwwwwgwugggwwwvwgwwggxwwvghxwwwvxvfwwwvwwhwwwgwwwwwggwwgwwwVwwvwwwwwxwwwwgwvwwwwwwgwwvwwwwxxwwwvgwvwvgfwwfvwwggwvwwvwwwguwgwwwwwxvvvgvwgwfhgwwwwwwfwvvwwwwwfvwwhxfwxxwwxxwwvwwwwvxxxwvgvwgguggwwxwwwwggvwwxwgfXgwvwgwgwvgwwwgxwwvgggwwwvwgwwwVwwwffWfvwwvwwxwfwwwwwgvwwwuwfxwwwwwVfvfgwwwvxxgwwgffwWwwxvfWfvwwvwwwwwxwgvwxwwvwwwwwfwwwwwwwwwwwwxgwwwwwffwwgwwwwwuxwwwwwvWfvwwwwwwvwwhwwwxwwfwxwhvxwwwgvwxwwxwwwwwwwvvxwwvwxvxwwfvwxwwwwxfgwwwwwvwwWvwvwxwwfgwwwwwxfwWvgxwwvgwxwxwwwwxwwvwwxwxwwgvvxwwfwgvwwxvxwwwwgwwxxwwwwhwxwwwwwxwwfwvwxwvwwwwxwwwwwwwwwwwxwgxvwwfxwwvwgwwwwwwwwwfwxvwwwwwwwwxwxwxxfwwxwwxxxwwwwvvwxvwwxxwxwhvwwhwgxwxhvwwgxwwwgwwwwwvwgwhwvgfxxfwffgwhwxwxwxvxwwxwxwxxxxwggwwwwwwxwxxwwvggwwgwgfwwwxwwwxwwwxxxwwwxwxwwwwwwxxwwxgwwxwwwwxxxwhfwwvgvxvwwwxxxxwxwxxwwwxxxxwwxwwwxhgwwwwwxxxxvwvvwvwvwwwgvWwgvvwwwwvvgxvwgvWvfvwwvwwwxvwwxwxwggwwxxvwvgvwwwvvwvxwwwfxwwwxgvgwwwwwwwwxxwwwwwxhwwxwxwwwxwwxwwwwwhwwxwxgxvhxwwwxwxxwxwgvxwwwxxwwxwwwxxxwxvvwxwwwxwwwxgwwgwwwwxxhwwgfgvggfwwwvVgWvgwwwggfwgfwwwfVfVvwwxvfwgwgwwvwwwvwxwvwxwwwvwggewwwwfwwxwwwgwgwvxggwwwwgvgvwgwvgwxwxxvwgwwxhxwxwwxxwwwvwwvfwwwwwwhxwwwggwwgvwwwvwwwvxgvwgguwfwvfwwvwwxwwwwwwxxxwgwvwxxgvwwwwwwwxvxxvgwwwwwxwxwwgwwxgvvwwwwxxwxgWwwwvfxwwwwwxxhxwwwxxwwxxxwwfxwwwwxxfwxwgvwxxwxwwwwxxwwxhxwwxwxxwwxwxwxwwwwxxwUfuwwVffvgwggfffwwwwwgffffxwwwwxxwwwwfwxvwxwxxwwwwwwwwfxxwwwxwxwgfvffwxxwwgwvgxwvgffwxxwxvwwwgvwwwwxwfwgwxwwwfgwwvvwgehfgvwwwvwwvwwwwwwwgwvwwwvwxhvvfwwwwwxvwwwwgvfwwwgwewgvwwvwwwxgvwwwwwxwwwwvwwwwwwgwwwfwwwwwwwwwwwvwhvwwfwwwwwvwwwwwhvwfwvwgwwxwgwwwxxxxfwwwxwwxwwwwvwwwvvxxwxxwwgwhwwwwwxwvfwwvxwggwgewvwwwvvgfvwwfgwgWuwwxwgwvwwgwgwwwwwwwguwvwwwVwvwfwfgvfwvxwwxfwvgxwwwwwwgwwwwwgwwvwwwwgwvgwwvwwwwwWvvxwwwvwwwvvwwxxgwwggwwgvgwwwwwwgwvwgfwwgwxwgwfwxxwwwwwfwxwwwxwgwvgwwwwwwwwwxwvwgWwvwhgwxxwgwwgwwwwgvggvwxwxwwxwwwwhwwwvwwgvwvwvwwfwggvvwvwvvgwwwvgwwwwuvfwwwwvwwwWgfwwwVvwwgvwvggvgwwggwgwwwwwwwvwxxgvwwwwwwwwvvgwwggwvwwVvxwgwwwgwwgwwgwwwwfvwvggvfvfwwgggwwwUvwxwwwffwwwwwxgwwwwwxwgwwwvvgwwgvwwwfwwwwvwwVvvwwfvwgvwgwwvwwvwwvwfhwwwwwwwwwwwwwgwwgggwvxgwxwvvvvfwwvhhwxwwwwgxhgwgvwvwwfgwwgwxfwwfwxgvwwwwxxggwwwxxwwwwwwwwwwwxwwwwwwwwwxwfxvwwgwwxhwwwxwwxwxwgwWwhhgwwwwvwwwfgvxvvwxwhwwwwxxwxwwwgxxwggxwvvwxxwwwwwxwwwvVwwwxwxxwwfwwwxwwvwfxwwgwxvWxwwwggfwwwuwgwwghwwgvgwvvwwwuwvxxggwvwwvvvwwgvwwgwuxwgwxwwxwggwggxwxwgfxvwxwwvwwvwvwxggwwvwvwwwwwwgfwwhvvvxxgwxwwwvwwwxwwxwwwgvwwvwwwwwwwvvxhvfwxggwxwwxwwwwvwwxxgwxxfwgwvwvxxgfwwwxwwxwwxgWwwwwwxwwwwwwxwgwfvwwxxgwfwvffwfVufVfFwfwffgwwfVfwgVgffFgfvgvgffeVxgfvUvwggwwWfffwwgfxwwufvgwwfvwwwvffxvgfgvwWwgwxwfwxggxgwwfvxgVxwwfgfwwVfxwwvgwgvwfwvvxxgffwWwwvfgfwwggvwgegfwwfxwvggfvffuxwwwhwvwgwvwgfwgVxxwwwwwwwwWwffxwwwxwwxwwwwffwwggfVwxxwxwwwwhwxwxwgwgwwgxwwxgxwwgwggwwxxwwxvwxwwwfwgxwwxxwwxwhxwfwwgwwxwwxxxwxwgvxwxxxwwxxvwxwfwwxxwwwxwxxwxwxxxwwwxxwxxxxwwwwVgvwwVfgefffffvvgffvwvxgwgfvwwgvfvvwgggguvwgwwWevfvgwvgfwxwwwfwwwvgvgfwwvwwgwwwwwwfvgfvwgwvgUeefgfggfvgwvwWdeEgeeegwvggffUfffvVvgfvgufgfgwwwwgffwwwvwuvggwvfvwvwwwwwffvwwwgwwwwvvfvvfwvvgxwxwxwvxwwwxwwwwvgfVewfffewffwVfwxwwwwgVvggwwwwwvwvxgwwxwvwxwxwxwwgwfvvwwwvwwwxwgxwxgxwwwvxwwxwgxwfwvvgvhwwfxwgwwxwwxwwwgwxwxfwwgwwwwwwwxwwwhxwxfxxhxwwxxwxwwwwxwxvxxxwwxwxwxwxwwwwwxwwwxwxwwgxxwwwvwvvxxxhwwxwwxxxwggwhhvfwvxwggxwwwwxwwwwwwxgxvvwgfwwxwxwxxwhwhgwwwwvvxwwhxwvwwwwxwwwwwxwxwwwwwwwwwwwvwwwgxwxwxwwwwwwxxwwwgxwwwwwwxwxxxwwxxxxxxxxwwxwxxxgwwxwhxwhwxwwxwhwwwwwxxwwwwwwgwwwwgwwwwxvwgwwvgvvwwwwwwwhgfxgwgwwgwwvxvwwvgXwfwfegvgwwwwwwwwxwwwvwwwwhwwxwwwwwwgwfwwwwwwwxwxvwwwgwwwfvwvfwhwwvwfwxgxwwwwhxgvwwxhwxwwxhgwfwufhvxwxwwwxwxwwwvwhwwwwvwwfwwwxwwwxvfwfwgwgwwwwwgwgwwwxwwwwwxwwwwwwfwwxwwwxvvxwwwwxwwwwgwwggwxwgxvwwwwfwhxvwxvwwwxvwwxwwgwwghwvwgvgwgwxwwwwwwxgggwxwgwvwwvxwwwwgwwwwxxwwwwxwxxxfgggxvwxxwxxwwxwhwwxxxwwxxxxwwwwgxwxwwwhxwxxxwwwwwxwhxwwvwgwwwwwwwxgwwwwvxxxwvwxvwxghffwwwwwwhwvwwxvwwwwxwxwxwwgwwhvgwwvvxxwgwvwxxwwwwxwwwvgwwwvfwwvvvwwwwvgwwwwwwwwwxwxwwxwwvxwwwxwwxwwvhgwwxyxxxxxxwxwwwwwxwwxvxwxwvxwxhxwwwwxwwwwwvgwwwhgfwxwvxwgvwggfwwwvxwxwwxwwxgxwhgfxwwwxwxwxxxwxwwwwwwgxxwxvgvwwwxwwwgxwwwwwwwwwxxxxwwwwxwxxwhwwwxvxwwwxwwwxxwxwwxxwxxxxwxwxxvwxxwxwhwwwxxwwxuxwwggwwwvgwfvxwgwwwwgggwvvgfvffwwvfwwwvwvxwwwxwgwfvwggvwwxwxxgwwwxhwgwwvwwxwvwgwwfwfxwvvgxwxxwfgvvwwwwwwwxwxwwwxxwvvwwwwwxvgfwwggvwwwwwwwwwwwwwxxxxwxwxxxwxxwxxxwxxwxwwxwwwwgwwwxwwxwwwggwwxggwxwvwwvwegvwgvwxwgfxwwwwxwxxwxxwwwxxvvvwwvuxwwwfvwxwwwgVwvwwwxwfwxfwwxxxwgwwgwwwxgwvvwwvgwgwwwwwwwxfgxwgvwwwwgwfwwxwgxwwvvxwvwwgvuwxwwwxwwxwwxfxwwhvwwwvxwvwgwwwgwwwwwxxwwwwwwwwwxxwxxwwgwwwwwwwxxfwvWwvvwxxwwwxwxwwwwxwxxxwxxwgwwvvggwwwwwgwvxwwwvvWxvwwwwgwwwwwxwgwwwvwWwxwwwwgwvhwgwwgwwwxwwggxfwwvvwwwwwvhxwwxwwwwwwvvhwwxwxfxwxfxwwxvvwwwwwwvwwwxwxwwxwwvwwwwwxwwvxwvxwwwwwwxwwgwwwxwwwwwxwvwwwvvwvwwwvvxwwwwwwwxwwwxxxwwwwwwggvxxwwwwxwwwwgxwxwwwwwwwwhwwwwwwxwwvwwgwgwvgxgwxwwwwxxwvhwwwwwxwwwxwxwwxxwxwwwvwwwwwvwwxwwxxwxxxwxxwwwwwwxxvwwgwwwwwxwwwwvxwxwwwxwgvwxgwggwfgwgwwwwwuwwfvwwxgWvwfgvvuwwwVvvvwvwhvwvxxwhwvwvwwxwwwwwwxwwwwxxwwxgwvWvwfwvgvwwwwVufvvwxwggvwwwwvwxwwwwgwvwfxwxwwwwwwgwgvwggvwwfxwgvwvhfgfxxgvvwfxwwwgwfwwwwwwhwhwgwxwwwxfxwxxwwwwwgwwwxfwwxwwxwvxwwxxwwxwxgwwwwwvwwwggwwwwxvwwwfwxggvxwxwwvwvwgxwxxxwhwwxwxwwwwvvwwxxxxvwwwwwwwwgwwxvwxxwwvwwgwxwwwvwvwwwwwwgwwgwwwxwwxxxwvvwwwwxwwwwwwhwxwxwwgvwwwwwvwwwwwxxwxvwwwwwwwwxgxwwvwwwwwxwxwxwxwxxfvxwgwggfggvgwwgwwvvwwwfhvwfgWwfgguvwgwefvWwwwwhwwvWwxwwgwxgfwwwwwwxwwwwwvgwgvgfwvgwfvwwwwefggwvwwwwgvwfwwwgwwwgwwgwgwvwxxwwvgvvvwxffvvgwvwwhwwvXgvwvxwgwvwwwggwuWwwwvhxwwxxwwvxxwgwvhvwwwxxwwwwvwwgxxwwwxxvxwwwuufggwwgvwggwwwxhgwwgwvgWuffgwwwwgfvwvvwwvvghwvhwwuwWxwgfxggwwwwwwwxwwxwwvvxgwffgfwwVfwwWfvwgwvwxfwgfwxwvxgwwwxwxvwwgwvwxwxxxwwwwgvvwwfwwgwvwwvwgwvvwxxgwwghvxwgxxvvwwwgwvvgwwwwwxxwwwwwwxvwwxxwwwwgxxxvxxvwxwwwwggvwwvgxvgwfvgfxwgvwwwvggfwfvxfwgvfwgwwwwwxwwwhxvvwwgwwvwxwxwwxxwxwvxhwwfwwwvwwwxgwfxwwwxwvwwgwwwwwwwwwwwvwwwwwwwwggwwxwwwwwwgwwhwwvwwgwxxwwwwwwxwwwvwwwwwwwxgxwwxwwxwxwxxwwxwhwwwxwwwxxwwwwwwxwwxwwxwwwxxgxwxwwxwxxxxwwwxwfwwwwxwwwwxwxxwwwvwwwxwxxxwvwwxwxwxgwwwwgwwwwwhwxgvwxgwxxxwvvvwwwgwvwvwfwxgxwwgwwghwwwwxxwxxwwwxwwwwwxxwwwwwwwxwwwwxwxwwxwwwwxxwxwwwwwwwwwhwwwwwwxxwwxwwwwwxxwxwwhxwwxwvxxgwxwwxwwwwwgxxwxxxwwwwxxxxgwwwwwwxxwhxwxwwwxwwwwxwxwwxwwghwxxwxxxwwxxxvgvghwfwwwxfwwhgwwwwwwwggwwwwxwxwwxxfxvxwxwgxxvwxwwwxwxwwxxvwvvwwxvwwwwwxwvwwxwwwwwwwwxxwwxxwgwwwwxvwwxwvwwwxwwxwwxwwxwhhxxwvvxwxwxwhxwwwwwwxxwwwxwwhwgvghwwwwwwfgxwwgwfwwwwfwwwxwwwwxwwxvwwwwxwwvwwxwwwwwwxxwxwxwwxgvvwxxwvwwwwwwwwvvxwwwwxwxxwwwxwgwvwxvwgggwggwvwwwffwuffggvWVwvwwwgwwwvvgwwwwwuvfewwgvfwxfwxwwwwfwwwvwgxgffvwugvgwgWVvwvwwwgwwvgvxwwwwvwfvwwwwwwxwvxxwwwxhggggwgwwwvwgwwxuvwefwwgwxwwwhvvwvwvwwwwgwwgxwwxggwwwwwgwxwwgwfwwwvwwgxwxvwfgwwwwxhwxwxwwwwxxgwwwwgvwwwwvxvgvxxxwwwwwxwxxwwxwwwxxwwhwwwhwwwwwxxwwxwwwwxxwxvwxxgwwxwwxxggwwvwwfwwwwvwwvfgwvgxgwwgwwfxwwwwwwxwxxwwxgwwwhwwwxwxwwwxxxwxxxxwwwwwxwxwxxwxwxwwwwwhwwwwwwwwwwwxwxwxxwwxggwwwwwwvwfxwgvxwwxxffwwvefVwvgefgwwwwgxwwgwgwwwwwwvwwvfvgvwgwgwwwwwgwxwwwvwwxvffwwvfvgwggegwvwwxwwwwgxgxwwxvwwvwwwwwwwwvxwxwwwwgxvgwhvwwwwvwwwxuvwefvwgfwwwwwvwwgwxwwgwwwwgvwxwwxvwwwwxgwxwwwfvgwvwwwvwwwgwwxxhwwxxwwvvwgfvwggvVvgwvgvvwxwgfvwWgfVvwvefvgwwwgvwwgwwxwwvxwWwwWffwvxxhwwvwwwwvwwvwwwwxgggwwfwwwwxxxgxwwhwwwwxgwvgwwwwwwwwwwxxwwwwwwxhwxfxwwwgxwwwwwwgwggfvwwwwwwwwgwwgvwvwwwwvvxvwvwwgxwwwwxxxwwwwwwwxgwwwwgwfwggwwgxwxvwwxwvwwwwwwwgxwffwgvuVVwvwwfgwwwffwvuWVwgfgfwgxwwfwwvwwwwgwvxxwuwwufvwxxvwggxwgwwwgwwwwxwvvvggwwvgwwgxwwwwvwgxwgwwwwvgwvwwwwxwfwxwxxwwxwwvhxvgwwvgwwwwwwwuwfuwvgwwwfgwwwwfwxvvvwgvgwvxvggwwwxwwwxwwxwwxwwvfxwvwwgxwwxfhwwwwxgxwwwwwwwwgwwwwxgwwwwxxxvwwwwxwxwfwwxgwwwwgfwwwwxwwwxwxwxvwxgwwwwwwwxwwwgvwwwwwxxxxxwvwgxhgvvvgwwwwggvwwwxwwwwwwwwwwwwvwwfvwwwxxwxwgwxxwgxwwwxwwwwxwwxwxwxwxxxwwxwwwwwwxwxwwxwwxwwwwxhxxxwwwwwhwvwwwvwwgwxwvxgwwwwxfwwwVvwwgvWwwwwvwwfwwwwwwwwgxvwwwwwgwwvfwwgxwwwwwwgwwwgfvWvwwwggwwwwwxwvgwxxfwwgxwwwvwwwwwwfwvwvxwwwwwwhwgvgwxwwwgxgwwvwwwwwwwwfwxwwvwwwwwvwgvwwwxxwwwwwgxwwvwwwxxwgwwwwwgvwwwxwwxxxxwgwwwwwwvwwgxxgwwwwhwgvvfvwwwwfvwwwwwwxwwwwwwwxgwwfwfwwxwwwwwvwxgwwwwwfxwwwwwwvwxwwwwwwvgwwwxwwvvwwfhwxgwvwwgwwvwvwvgwxwwggwxgwvwwwgwwvwvwfwwwwvwwvxwfxwwxwwwwwwxxgwwgwwwwwwvxwwwwwxwwwwvwwghwwwvxwwwwxwgwwxwxwggwwwxwwwgwwwxwwwwvwwwwwwgwwwgvwwgwwwwgwwwwwwvwwxvwwgwgvxwvwvwwwwwgvgvwwwwwhxwxwwwwvwwwwwwgwwwwwxwwgvwwgvvxwwvwwfgggwwwwwvggwwhwhwwggvwwxwgvwvgvwwwwwwxwgwgvwwxhwxxhwwwwwgwxgwwwwwwwgwwwwwxwfwgwvxwxgwwwwvwhwwwwwwwxwwwxwvvwvwwwwgwwgwwwxghgwvwwwwwwwwwwvhgwwgwwwgwvvvgxwwwgwwwxwvwwxwxwwwfwwwxvfwwwwwwvwwwwvwxggvgvwwfwvwwwxwgwwwwwwgwfwvxwwgxwgxwxwvgvwwgwggwwhwwvwwxwxwwxwwwxwwwxggwwwwwwwwwwwwwwwwxwwwvgwxxwwwwwwwvwxxwwwwxwvwhxvwwwwwwwgwwwwwwvwwvwvwvgvgvwwgwgwwwwwwgwwvwvwgvgwwwwvwwwwwwvxgwwfxgwxwwwwgwwvvxxwwwwgwvgwxwwxvwxvhwwvwwwwwfwxvgwvwgwvgwxgwxwvwwwxwwwwvwwvwfvwvwwwwvwvwwwwwwwhgwwwwwwwwwxxxwxwgwwwwxwxvwvxwwwghwxxwwwxwwwwwwwhwgwxwwwvwxgwfwwwwwvfvewwwgwvwwwwwfwwwUwwvwfvwwwwwwfwwwwxwgfwwxxwwgwwwwxwgvwwgxwwxwwwwxgwwwwfwwgwxwwwwxwwwfwvvgwwwxvvwwwwwwwwwvwvxxwgxwgxxvwwvwwwgwxhwgvwwwwwwxwwgwwwxwhwwfwwwgxxwfvwwxwwwwwwwxxwgwwvfxxwwwwgxxwwwxxwwwxxwwwwwwxwgggwwwwwwvgfgwwwgfwwxgxgxwwxwvwgvvvwwwxwxwwwwxwvwwwwwxggwwxxwwxxxxwxwwwwwwxwwwxhvxwxwwxwxwvggvwwwwwxwvvwwxxxwwwwxwwxwxwxxxxxwxwwwwxxwxwxwwwwwxfwxwwxwvxwwwwwwgwwwwgwgugvxxwvwxvfwxvxwxfwxwxxxxxwhwwvxxvvwxwwwwxwwgwwwwwvwguwwvwvvwxwwwwxgxxxwwwwwgwwwxwvvwwwwwwxwwwwwwwxwwwwxwxwxggxwhwwhvwwxvvwwxvvgxwxwxwwwwhwwxvwwwxxwwwxghwgxwwgwwwwwvgxwxwxxwxxwvwxwwwwwwwwvvwwwwvwwvgwxfgwvwxwwvvwwwgwgWhxwvgvwwwwgwgwwwwwfwwvvvfxwgfgwwwwwwwxwvvhwuwvwwwwvxwwxxwgxxxwwwxvvwvvwgwwvfvwwwwhfggwwvwwgvwwwwfhgxwwwvgwwwgwxxwwwwwwuvwxwgvxwwwxwhwwgwvvhwxwgwwwwxgwvwwvfwwwfgevvfwvwxwgwwxwwwwvwxwwgxvwwfwvwwvwwwwvggwwwwvvwxwxwwwxwwvhWvwwvfwwvwgwggwgwwwwgwwhwvvvvvwxwwwwwwwggvvwgwwwwwxhxvwwwwvwwwvgwvvwvwwwwwgvvwvgwwfwxwvxhwhwwwwwxwxgxxxgfwwwfwxwvwxwwwwvwwggwhwxwwwxwwwxxxggvwfwwwweggggWvwhvfgvwxgvwwxwwwhgwwfvvwvgwfwgvwwwvwvvwfgvwgvVffevwwwwfvxwwfvxwwgvwwwfWvgwwwwgwwxfwfvwwxwwfwxwxwfwvvgvVgvewwwwvvwwwgwwgxwwwhwgwwwwwwwwwxwfvwxwxvhwwxvwwwgwwwggwwxwfVvwxwwwwxwhwwfwwwwwwvwgwvxwvwwfwwwwwgwxwxwwwxwgwwwgwwwvwwwwfvwwxgwwxxwxwxxwwwvwxgwwgwwwxvgwwwwwhwwvwwxwwgwxvwvwxwwwwwwhwgwwwwwvgwwvwvwxxxxwwwxvgwgwxxwwwvwwwwwwwwxwwwwgwwfwwwwwwwvwvwwwwwwwwwwwwwxgxwxxxwfgwwxwvwwwwwwxwwwwwvwxxwwwwwxxwxwgwgwxwwhwwwxwxggvwwwvwxwwxhwgwvfwwwwwwfwvwwwwwgghwgffwVwvwxwwwgxvvxwwwwwwfwwwwwwxwwxwwwxwgwwvwgvwVwvxwwvwwwwwxwwwxgxwwwwxwwwwxwxwwxgwwvwxwwwwwwwffwxxwgvxwgwwvgwxwvwwvwxvxxwwwxxxwwxxxxxhgwwwxwxxwgwwwwwxvggwgwgfwfwwgwxwgwhwfvffvgwwgwwwwwwwwxgvgwgxwgxwvwxxwwwwvvwwvwwwxwwwwwwwxwxwwxwxxxwwwwxxxwwwwxvwwwgvgwwxwxxxwxwwwwwwxxwxwxxxwwxxxxwwxwwxwgxwgwwxwwwxxwxgwggwfgwfWufvvfwxwwwwwggwwwWuffvfvwwwwwwgvgwvwvvwwwwwwUgfwwwwwvxxwwwwwwgwwhwxwgwwwgvgwvvwwwwxwgwwvxwwwwwwfwwwwwwwwwwwxwwxwwwvxvxwwwwwwwwgvgvwwwUgfxwwwwxxvfwfxxwvwvwwvxxwwgxgwfwfwwwwwwwxxwxxwwwwwwwwwggwxvgvvwwwhhxxwwwvwwwwwwwwxxxxwvwwxwwwxwwwwwxxxxvwvxwwwwvxwwxxwwwvfguwwwwwwwxwxwwwwwwwwwwwwwwwUfevvfffVfggfffvfwwwwwgvxwwwxvwvwwwwwfwwwwwxxxwwwwwwxgvxwxxwwxwwxxwfvffgfggwfwgwvgwggwffvhgfwwwgewgwgfvwfufwvfvWdfgfffwefvwwWffwgwfgwxwfgwvwwWfgffefvfwwwwwfUffgfwdvgfeggfgwwvggvgvUfwwggwvwggwwgfgfwggwfewwfffwfvwgVuVvfgwwUfvvwgwgwwhffgwfgwfvwwefvfwgwwwwwwWvUfwgwfgwwxwwugffwwwwwwxxhfvwwXffwxwwxwxwguwxgwwxwwgvwvwggwvwwgvvwwVvwwwggwvwwwvwwwwwvxwxwwxwwxxfvvwwvwwvvxwwwxxwggwfwwVwwwwghgwwwwwxwwwvwgfwwwwgxxwwwwvvvwvxwwvwxwvvwwwwwwgvvvxxfwwxwwxwwxvugggwvwvwwgvvwgwxwwwxfwgfwxggwxwvwxwxwwwwwwwxxxwxWgwwfggwwwwwwwgxwxwwwwwwwxwwgvgvwwwggggwwwwvvgvwvgwwwgxfgvvgxgfwwfwwwwwwxxwgvvffwwVuwwwwvxwxgwwwwwvwgfwwwgwfwwwwwwwggwwvwxxvwwwwwggwvwvvwwVvwvwwvwwwwwwvwVwwgwwgwgwwwxvWfvvgvvvVvwwwvwvhwwwwwxfwwwwwggwwvwwwfwwvwwwwwggfgvwwwwwwgewwggwgwvvwgwwwwwwxgwwwwwwwwwwwwwvfgwwxfhwvwwxwwwwewvfxgwwwxxxwxfvvwvwwvvwwwwxxwwwwgwfwvgwwvgwwwwwwwwwgwwxxwxxwxwfvwvwxgwwxwvwwwwggwvwhwwwwvwwxwwxwwVvvfgvgwgwgvwxxxxwxwxwwvggwgwwwwwwwwwwxxxwxxxwegwwwfwgwfwwwwwvxggwgwwwwwwwvvxwwwwgvvwwwguwevwgwwwvwxwhfwvxwwwwwwwxxxxxvggwwvvfvvwwwwwwxgwxwvwwvgewvvwfwvwwxwwwwxgvgwvwwwwwwwgwxgwwwvvwwuwvgwvwgwwwwwvwghwwwfvgwwwwwXvwfgvvvewwvwvvvhwwxwxwwwgxgvgwvwhwwwwwwwxwwvwwwxggxwxwwXgwgwgggwfwwvgwwwxwwwfvwgvgwgWwgwvwvxwwfvwggxfVgvwgwwwfwwxfwxwgwwvwfwwwvxwwwgwwvwwwwwwxwgwgwgvxwwxwxwwwwfxwwwwwxvwwwwwwwxwvgvwwwgwwwwxwwwwwwwwgwwvwwwxwxvwxwwvvgvvwwgwwxwwwvwwwxwwwxwvwwgvxwxwwwxgwwgwwwwxxwxvwxvwwgwwwwxxwwwwwxggwwfwwwxwwxgggwwvwwwwxxwvfwxwxwwwxwwgxwwgwwvvwxxxxwwwxxwxgvxxxxwxwvfwxwwxwvwwwxwwxxxxwwxxwxwxwxwxxxxggwwwxwvwwwvgwwwwwwvwwgxxvgvwxwwwffwwwwwwwgxxwxwxxwvwwwwwwwxxwxwwfgwxwxwwwwwwwwwvgxwxxwwxggvffwwwwgwvwgfvwwwwxwwgwwwffxwwwwwgwgwxwwxwwwwwxwwwxwxwwwwwxxwxwxwwwxwwwwwwwwwwwxwwwwwxwwwwwwxwwwwwwxhwvwvwwwgwwwwxwvwxxvgwwVwwWwggwwfwvwwxwwwggwxwxxwwwvwwwvwvfwwwgwxvwwxwwwxwffwWwgWwwxwwvwxxwgvwxgwwxwwwwwgwgwwwvwwxxhwwwxxgvwvwwfwxvvwwwwhwwgwwwxxfwwxxxwfvwwwgwvwwxwwvgwwwwgwwwxgvwwwwwwwhgwwwwgvfwwwwwwwwggwwvfvvgwxwwxwwwwwwxwxwwwxggvgvgwwxwwxwvwwwgwwvwxwwwwwwgvwxxwxwwxwwwxwwwxwwxwxwxwwvwwwhwwxgxxwwwwgwwgxvwwxgwwwwxwwxxwxgxvwxwxwwwwwwwwwwwxwwxwwxwwxxxwxwxwwvggwwxwxxwwwwwwxxwwxxwwwwwwwwwwvwwwwwwwgwvvgvwwgwxfwgwwwwwwwfwwvggwwwwwwwgwvgwfwwwwwwwwhwwvwwxwwwwwxwxwwwwwwwvxwwgwwwwxwwwwxwwxwwwfwvwvwwwwwwhwwvwhwxxwvgwwgwgvwwwwwwwwvvwvwxwwvwwwhwgvwwwwwxwwwwwxwxwxxwwwwxwwwwxwvwfwxwwwwwwwwvwxwwwwwwwxxxwwwwwwxxxwxxwwhwvwxwxwwxwwxwwgxwxvxwwxxwxxwwgwwgxxwwxxwwwwxxwxxwwwwxxwxwwwxxwxxwhxxgxwgwxwwhwwwxwxxxwwwwxwgxhwwwxwwwwxwwwwxwxxxxxwvgwwwxxwxxxwxvvwwxwwfwxwxvwwwxwvvvfwgxxwvgwwwwwxgwgwwvwxwwvwwwgwwwwhwwwwwwwwwwgwxgxwwfwwgwwwxwxxwwwwwxwwwxgwvxwwgxwgwwxwxwxwwxwwwwwvwfwfwwxwwwfwwgwwwwwwwwwwwwwwxwwwxwwwxwwxxxwwwwggwxwwxxwxxwvwwxwwxxxwxwfwwvgwvgVuxwwxwwvwvwwwgvwWewwvgwwwwgwwvvwfgwwvxhwwwwwfxwwwwwwwwwxxxwxwwvgxwwxwwwxxgxwwwgvwwwxwwgwwwxwwwhwxvgwwxgxwwgwxwwwwxwvgwwwwwgwwwgfwwwwgxwwxxwvvgwfxxxxwxwwwwwggwwfxwwwxwgxxwwxwwxxwwwxxwwxwwwwwwwwwwxxwxxwwwxwwwwwxwwwxwxwwwxwxwwwwxwwwxwwwwwwwwwwwwgwgxwwvwxgevfwwwgffwwwgwwwwwxwgwvwxwxwvvwwwgxwwvwgfegwvwxxxwwgvvwvvwwwwwfgwwwgwwwvfvwvwgvwghwvwwwgwwwwwwwwgwwwvgxwwwwgvwWvwwxfhwwwwwwwwxwxgfvwwwwwwwwwwwwwwwwwwwwgfgggwwwwwvvwhwwfgxwwwwwxwwwwwxvwwwwwxwggwwgwxwwwwvwggwwwwwfVgwgxwwuwvwxfgwwwgwwguwvwxgwvwgwxwwgxwwwgwwwevwgxxwxxwwwvwwgwwvgwwgvwvfuxwwvxvwwwfwhgwgwwvgvgwvwwwwfehwgwfwwgwwwwwfxwvwwwwwgfwVxvwwwxwgwffwwwwxxwwwwwgwvgwxwwgfggfwwxwwwfggxvxwgvwvwwwwwwxwgvwwfwwwwwwwxgwwwvwwwwwgwwfwvvwevwxhfugwvwWvwxwggvwwwwwxgwwvvwwgfgwgwwwxugfvwwwxwwwwwwwwwwgvgwwwxwwwwwwwwgwxwgvwfxwwgfwfwvwwvwgefwgxvwwgwwwwgvwWvwwwwggwwvvwwgwxwwwhugwwvxwwwwwwwvgwwwwwvggvgfwvwwgwfwhwxfwvwwwwwxwwwwxfwwwwwgwwwwwxwgwxxxwwxxxxxwwwxxxxwxwwxxxwxxxwxxxwxxxwxwwxwwxwxwwxxwwwxwxxxwxxwxwvwwwvvxwwwwwvfwwwvgwwgefwwwwhffwwwvwwwwvxwVxgwfwwwvwwwwwwwgfvwwxxwwwwwwwwwwwgvwwgwwwxwvwwxgwvgvfxwwwwvwvwwwvwWwwgwxwwgxwwwwwxgxggwwwwgwvwvwwvwxwwxvwXffgwvwxwgvwwgwwwwxwwwwwwwfvfwvwwwwgwvwgwxwwwwwwwwwfwvxwwgwwwwwvvwwxwwwxwwxgwhxwwxxxwwxwwwwhwhxxxwxxwxhxwgxhxxwwwwxxxwxwwwxxxxxxwwwwxwwwghwwxxwwwwwwxwwwvxxwwxxwxwxxwxxxwxwwwxxwxwwwxgwwwgvwwwxwxwwwxxgvwwwwxxwxwxxwgvwwxxwxwwwxwxxxwwwxvxxxwxwxxxxxwwxxxwwwxwwxwxwxgwxxwxxxxgxwxxxxxxxwxxwxwwwwwwwwwwwwfxxwwwxxxxwwwxwwwxxwwwxxxxwxxwxxxxwxwwxwxwxwwxwxyywwxwwwwxxxxxgufwfwwgwwxvgwxhffffgvfffwvvgwefwgwvvwwwvgwwvwUfvwvwwgvgvwwwgvwffwwwwwwxxhuwgfwwwgxwvggeUfffffVeffeVwvveVwgfffgggwvwwgwgffvwwwfwewvgwvgvwwvgwwgvfUwfgfvwgwgvwwwwvwwvwwwwwwgVevvfffwvwfwwwwvfffvwwgwxwxwxfffwwfwwxwwwwwwwwwfwwwwwwwwwxxxwwwwwwxxwgxxxfwwwxwwxxwwwwxwxwwxwwwfgwwxhwhwgvwwwwgwwhwwwxwwwwwgwwwwwwwwwwwwxhvxxvxgxwwwxwxxxwwwwwvwwwwwwwwwwxwxxxwwwwxxxwwwxxwxxxhgwxwgwwgwwxxgggwwxwvgwxxxggxhxxvxwwwwwxxwwwwxxxxhwwwwxhxxvggwvwwvwxwwwwwvvggwxwwwwwwwvwwwwxxxwwvxxhhxwwwwwwxwxxwxwwxxhwwwwgwwwwvwxxwwwwvxxwxwxwwxxxwxwxwwwxxwwwwfwgwxwvxwvggwwwxxgwxwvgwwwwwhwhwugggwvwwwgwgwgwwgwwwwwwgwwwwwvgvwwgwvxvwvhwwwwvgvvwvgwwwwgwwwwwgwwvwxxwwwvwxxxgwuxvgvXwvvxvwvwwwwwwwwwwwgwwvwxwwwwfwfwfwfwwvgfwvgwwwgvwgwgwvxhwvxwgwwxwxxxwwvwxwwwxxwwwwxfwgwgvXvxevxfwwxwwgvwwxfwxwwwvhvwfwxvwwwfwgwwwgwwwwwwwwhwgwxwxwgvwvwgugwfgxvwxwvwgvwvfxvwfwfvgwfwvwfwvfwvggvwgwwwwwwwgvgwvwxvwwwgvwgvwgwwwwwwwwwvwwwwwwwwwwvwgwwwwwxvwwvwxxxwxxgvwwhwwxwwxxwwwxwwwvvwxwvwwxwhxxxwvvxwwwvwgxxxfwxwwgwhhgwwwwwwwxwxxxwxwwxxvwwwwwwxxxxvwvwgwwgwxwwwwwwwwvgwwwxwhwvxwwwxwwxxxxhxhwvwxwwwwxxxwwwwxxxfwgwgwwwwxwwwxxwwwwwvxxwxxxwxxwwwxwxxwxwxwwfvwwxvxgxhxwwwwwxxwfwhxwwwgvgvhwwwxwxxxxxxwwwwwwwxxxxghwwwxwwwwxwwwwwwgwwxxwwwwwwwwxwwwwwxxxwwxxwxwwxwxwvwwwxxxwwwwwwwwxwwwxxwxwxwxwwwxxwxxXwwwwggwwvwwwwwfwgwfwwwwwwwvfvgwwgwfwwwxwvwgwgvwvwvwwwxxwxwwxwggwwwfwggwwwwfwwwwvvwggffwwffxwxxxwwxxvwvwgvgwwgwwwwxwxxxwwxxwwxxwwwwxwxxwxxwxwwhvwwwxxwwwxxwwwvfwxwwwwwwwwvwwvwxwwwgewgfvwwxwwwwvwxwxxxgwgxvwwvwwfxheVvwwwffwfhvvgwhefvewggwxxwwxfgguvgvvwwxvvwwwwwvwhwwxxevvvvwwwxxxwgwfghwwwghffvfwwwwxwwwfgffgvgwwwgufgwfvgwwwwwwxxxwwggvwwwxwxwwxwxwxxxxwwwwxwwxxwwwwxxwxfwwfwwwwxwwhhwwgxwxwxggvvwwgffwgwvwxfvwfggwxxwxwxvwwvvwvvwwwwwwwwhxvxvwvwwwxwwxxwwwwxwwwuvvvwgwwxwwwwhvwwwxxxwvhxwghwgwwxxxgxwwwwwwhwhxgvwxwwwxwwxxwwwxwwwxwwwwwwwfwwgvwwxwwwxxgwwvwwxwxxwwxxwwxfffwwwggfwwgwwwggwggvwxwwxxwhwwfwvfwwwwwwwwwhfwwxwxxxwxggwwxwxWvwwwgxwxwxggwvwvwxwvwxvwwxwwhwwxxgwgwvxvvvwffwgwvwwvwgwwvwwxvvwgxexwhvfwwfwwxvgwgwwxxwwgxxwwwvwwgfvfgwuwwvgfwvwgwwvwwvwwgwgwwwwwwwgwwwwwwwvwxxwggwwgwxwfwwvwgvwgwfvwwwwgwgxwxwwwvwwwwgwxwwhwvwxwwwwwxxwwwxwwwwwwfwwwxwwwhwwxwxwwwxxxxwxxwhwvgfwwwwfwwwxwxvwwwwgvwxwwvvwwwwwwwxwwwgVgwhvvxxxvvwwvwwwwwxvwvwwwwegfvwwvVfgwfwfhVggwgewvgwxwffwguwfwwwwvwwvwwxghVwwxwvwwwxwhwwggxwwgXfgvgffvwxwwfvwgvfvxxwwwwWvwgfxgvwghwxwwxwwvvfwwwxwfegwfefgwvvwvWwwfgwfvggwvuwwwggwfwwwvvwvvghvwwgwwwggvuwwwwwvgwwwhwwwwhvUvffwuvvuwVwwfvwwwfffffgvfvvfwvwvgWffwfvfvufvgvggvgggwgwwxwvewvvggwgvfvvwwggvewwwwvvgwwwgwwxwvgwwwhgwvwvwvwvwwxwgwwhwwwwxvxwwvgwgfwvwwwgwwwwwvwwwWfvggUgfvWwwWvwegwfwffggwgwvwwwvWwgwwgwvgwvvVwfwfgwvvfgwvwxwwwwgwwxwVwwwwvXffgvWwwgvvgggwgggvgffgfwfvgvfvuvVggvvgvwvwffggwffgfwwvwxwgxgwvvgwwwvwwvwfgwwwwwwwgwwxwWwwwwwwvggxwwhwwwwwgwwxggwgwwwxwxgwwxwwgghgwhwwwwwhxxwwwvwwxwvvwgfvvfwvgvvxWwwwgwvvvvwwxWgwfwwvwvvwgwgwvxfvwwwwwwvwwwwwxwxwgxwhwvffvwwvwwvwgwwwgwwwgwvwgwwwvwwwwgwwvgwwgwwwxwwxwwwwwxwvxwgxgwvwwvwwwwwwxwxxxgwxvwwwgwxxwwwwwwwwwwwxwwxwvvwxwwwxxxwwwxxwwwwwxwxxxvwwwxwxgwgxgxxwxxxwwwxwxxxxwxwxxwxwwxwgwxwwwxwxwxwgxwwwwxxwhgxggwgwwvvwwgxxgwgwvxgwwfwwwwggwwwwwwxwwxwxgxxxwwwxgwwxxwxxwwwxgxwwwxfwxgxwgwwwwxwgvwwwxwxwxxwwxwwwwwwwwwxwwxxwhvwwxxxvwxwwwwwwxwxwhwxwwwwwgxwxwwwxwxxwhwwwwxwvxvvhwfgwwwvwwwwxwwwwvwwwhgwgxwgwwwwwwwxxwwxwwwwxgwwwwxwxxxxxvgwgwwgwvgwxwvwgvwxwxxwxxwwxwvxwwwwwxwwxwxgwgwwwWxvvxwwxwgwwwwgxwxhvwwwwxxwvwwwhxwxxvxwxxwwxwwwxxhwwwxwwfhhgwwwxwxwxwgfgwgvwwwwwvwwwhxwgxxwwgxwwwwxwwxwwxwwwwxxwxwwxxwxxwwxgwxxwgwwwwwwwwvxxgvwwwwwwwfwvxwwxxwwwxwwwwxxwwxwwwwxwxxwxwwwwgfgvwwhwwgwwwgxggwvhxhghwwwwwwhwwgwwwwgxwxwwwwwwvxwwxvgwwfwgwgwwhgwwwwwwwwgxvggxgwwwvwwwwxfwfwwwwwgwwwwwwgxhwwhwwwwwxwwxfwxwgwwwxwwwwwwgxwgwwfxwwwwwvwwwwgwxwwxxxwxwwxwwxfxwewwxxxxvwwggwwvwwwwxwwwvvwwwwwvwxwvwwwxwwwwvfwwwfwvwwxxwwxxwgfvwgwvwwwvwwwwwwwxwwwwvwwwvwfwwwwgwwwwwwwxwwxxxwwxwwxwxwwxxvwxvhwfwwvwwwwxwwwwwwwxwxwwwwxxwxwwhwwxxwwwxwwxggwggfvgwhwwgwwwwhvwwwwhhwhwwgxwhwgwwwwhvwwxxwwwgwwxwghxwvgvwggwhwwwxxwwwghwgvvwwwwwvwwxxwxwfwvwwwvxwwxwgwwhxxwwfwwwwxwxvwfwwwxwwvxwwfwvwwwwxfwwwwwwwwxwhxvwwxxwwxxwxxxxwwwvvwffgevwuwugwgwwwwvfwvwwwvvwvgwvvgvwvfgwwvvvvwvwgwwwgwwxvwwwxvvwvwwvxxggwwvffugffvwwwvwwxwggwvwgvwgwvwwwwggwwwwwvvwwhwwxxwhxwxxwwxwxxxxwxvxwwwxwwwggwxwwgvgwxxwwxxxwxxxwwxxxxxxxxxgggvfXgevgwgggwgxvfggwvwhwwvwvwgxvggvWwwVwgwxwwwgwvwgwwwwwwxwgwgwxxgggwvwxgwfwwxxwwvvwWgffwfffwwwwwgwwwxwwwhwgwwggwwwgxgxwwwxxxwxwwxxxhwwxxxgvvwxwwwgwwfwggwwwwwwggwwvwxxwxxwwxxwxxwxwxxxxhwwhwwxwwwxgwwwxxwwwwwgwxxxwwwwwwwwfvwwwxwwwwxfwwwwxxwwxwxVvgvwwwwgffffwwwwgefwffgwfwwwwwwxgggUwvvxwwxwxwwwwxfvwwwxwwxxwxfwwwxwwwwVevgfwfwwxwxwfgfffwwwxwwwwwffgfvxwwwwxxwwwwwwwvwgwgwxwfwwwxwwwwwwwwwwwxwwwxxwgfwwhwwxwxwwxxwwwxxwwwxwwwxwfwgwwxwwwwwwvwwwwgfwggvwwfwwwwwwwhwxwvwvxwwgwwwwwwwwwwwgxwfwgwwwwwwwxhwwvwwwxwwwwwwwwhxwwwxwwvwwwwwwwwxxwwxwwwxwwxwwwwxwwwxxwwwwgvxhgfwgwwgvwwfxhwwwxwhghxxxwwxxwwwgwwxwwwwxwgwwxwxxxwwwgwxwwxxwwxwxwwwwwhvxwwwwwwwwxwwwxggggggwvvvwggwgwxggggwwwvvwvxwxvwgwxgwwwxwwwwwwwxwxwwwxwwxwxxxwwwwwwxwxxwwwwwgxgwwwwvwwxwwwwwwgwvwxwwxxxwxwhwwwwwwwwwwwwxxwwxwwwvvwwwwgwwwwwwwwwwwwxvxxwwwwxwwxxvxwwwwxwxfwwxwwwxxxwwwwwwvwwwgwwwvfwvfwwwgwggwwxxwfwwwwwwvwwwwxwgwwwwwwwwwxwwwxhxwwwxxwwwxwwwwwwwfwfwwxfvgvwwwwwwwhwvwxxwxxwwwwxwxwwwwwwwwwxwwwxwxwwwwwwfvfghwggwwvxfwwwvwwwwwwgwgwwwwwwwwwwgxwwwwwwwxwwwxvgggwvgxvwvwwwwwwwxwwwwvwvwvfwfwwxwwwwwvVfvVgwfvggggwwweWvVgwwVgegevwgwfwgwggvvxwwwwwwwwwgxvgwghwggwvxvwvwwwwwxwvfwgwvggvwvwwwxgwwwwgwwwxxxxxwvwxwwvwvwfwwwxwvfwwvwwwwwWxxgWwgvwwwvwgxxwgwwfwgwwvvgwwgwwwgwwwvwggwwvvgwgwwwwwgvxwfwwvwxwgfwwwxwwwxwgwwwfgwggwxxwwwwwgWwfVfvvfwfgwgwwvwvWgwwwggevwwwwwggfvwwwwwwwxxxxwxwgxxwxwgwxwwwwvxxxwwvvhwgwggwwwwwvvxwwwwwxwwgwwwvwxxwwwwxvxwgwxwwvxwwgwwwwwvgvwvWuvfggwwwwxffwwfgvgwggwwwwwwvWwwwvvwwfwwvWvwggwgwwgwxgwwwwgwwgwwvwgxggffwgwwxwwwwgvwgvVwvfffvfgwffvwgfwwWwwwwgwwfwwwwwwwgwfxwwwwwwwwfwwwwwhvxxwxwwwwwwwwwwgwgwwwgwgwxgvwwwvwvvwwffwwxxwxvwgvwvwwwhwwwwwwwxhwxwwxxwwgwxwwxwwxxxwwwwxwwhxfwwgxxxxvwwgwwwxxwxggxwxwwwxxxwwwwwwxwxxwxxxwhxxgwwwxxwxxxxggwxwwxxxwwxxxwxwwywxxxwwwxwxxwwxwwwwxwwxxwwwxwwwwwxxhxxfwgvxwxxwxwhwgxwwwxwgxxwvfvvwvgfvwwwvWggwvwgwwwgxwxwhwwwwwwxwwwwvwxhgwvxwwwwxxxwwwwxxxgxgwgxfgwwvwxwvvwxvvxwwwwwvghwwhxxwgvvwxxvwxxwwwwwwxwwwvxwvwwwxxggvwxxwwwwwgvwwwwwvwvhvwgwfwwwwwwwxwxxxwvwhgwvwwwwvwwwVVvfgvfgwwvvfvfghufwgwvgwvvwxffvwwggwghfwwwwgghugwwwwgxwxwggxxwxvfghvWwgvggxwvvvgxvvuwxgwxhwufwfhggwwwxwwwwggxxwwxwwvwwwxxwgwgxwvgwwwwgwxwvxwvwwwxwgvwwgfwwgwxwwwgwvewhgvggwxwvxxwwvxxwwwwwwgxgwxwxguvfvgfguwgfwfgwfwgffggvxfxfxwvwvwxgwvwxwwvwgwwewhwwwvwwwwvvvxwxxhggevWvgggvwxfwvhgvwewwxugwwhvwgvgwwxwvwfggxwxwwwwwwwvfvvfefvvgwgvvwxvwwvfevwvWwggvwvwwwwwvgwWffwwwvwwwuwwfvwwwwwwvwgxwgwwwwxwxxuVffvWwffwvvwvwgfxwggffvfvgffvfwxvwwvvwwwgvwxwwwwwgwwxwgwuggWevvwwwvvwwugvfvwwwwwvwvwvvggwwwxwwfgvfuwvgffvgfgwvwgWwvfwgfwwvwwwxgggfxwgwwwwvgxxhwxwxwwxwwwxwhxvwwhwxwwxfwxwwxwwwwfxwwxwxwwgwwxgwwxwwwwgxwwxwxwwxwxxwxwgvffwgwwfvwwwvWvwhgxwwwgwvvgxwwgwwwwwxxwwhxwxfwwxwxvvxxgwgwhvxwgvxvwwwfwxwfvwxwwgwxgwgxhwxwwwxxwhvxgvwxxvvwvffwvxwgwgxxwwvvvgwuxhgvwgxxvwwgvvwwwwwxwgwwwxxxwgxxxhwwwxvffvvwvgfwwgwwwvhvwwwfwwvwwwwwwwwwhwgxwwwwwwwwwwxwwwxuwwgvvwfwwwwgwvwwwgwxgwwxwwwwwwxwwwwxvwwwwwvxwxwwwgwwvxwxvwwwgwwvxwwxwwxwxwxggwvggvffwwvfwgwgwwvfgwggwvuwfhxgwwfewvwwwvwwggwwwwwwwwgwxvwwxwxgfvvwvvwgxhxxvwwwwgfwgwwwwwwwwwwgxwwwwwwwwvwxwwwwxxgwwwfwvwwwwwwwhwwwwwxwxhwxwxxxwxvvxvwgwwwwwxvwwwwwwwwxxgwwwwxxxxxxwxwwwxwgxxxwxvfggvUffvwwffwvvWwgfvefwgvwwfwgvwWwwwwuwwWegvgggwwgwwgffggwwxwvWwgxvgwwwwwwxwefgfvwfvgwwgwgxvwvfwvfgvfgffwfgxwgggwwgxwwgwwxwwwwfwwvwxwuwwgvfvwgxgwwwwhgfgwwwwwwWwgvwwwwwwxwgvgVfWggfwwvfvfwvwvwffwfgwxwwggwwgxwvghvwxwwwwvwvwxhxwwwwwxxwxwxxxwwwxxwxvwxvxwxxwwxwwxxxwxwxwwxwwwwxwwwxxxwwwxwwgxxxvxxxwwwxwxwwxwxwxwwwwwwxxwwxxwwwwwwwwwgxwgxwwwwwhfhfgwwwxgxwgwwwwgxwwwhvfwwgwxggfwvvgfvwwwVfvwWUvWwwVwvwfvwfwgwwwwXfwVwvwwwwvgwxwvvwxVgwwfwwxgwwgvwwxivwUwwgwwfxfgwvvwvwwwXwwewwxfwvvvwwxwfwwgwxvhhxwxxwggwhwwxwhwvxxxwwxxwwhwwwwwwxwxwwwxxwwwwwwwxxxwxwwwxxxhgwgvvwvxwgwgxxwwxxwgwxwwwghwhfgffvvfvfgwvgWvfgvwfvgwxVvggvhvwwwvxwwwwwwwxxwhwwgvvwvxgwwhxwxgwxxhvgVwvwewwxfgfhvgwvvvxhvwwvxwxwvgxgwhwwvwfwxgwxwwwwwwxvwgwwwwwwgwwwhxwvwvhvwxwwwfwwwwvvwxwwwfwgevwwwgvwgvwwwwwwvvxwvwwwwwwwwxfefevwWefvgwfwfvgefgugxgvgwwwwegwwwvwwwgwwfgwwwxwwwfwgevwxxgvwvxvwwwwwwUfVdwffuggVefvgwvweffvwwvwwwffvugxgwvXwggvwWgvgxgxwhfwwwwxxwhwgwfwwwxwvgxwwwxwhwwvvxwvxwwwwwwvwwwwwwXvgghwvxwwvvgwvwwxwwgwvxvwvwxvwvxwwWffeegvfevwwgvGeVVgvfegggeevfwwvgefwfwwvwwgwwwwhwwwwwWvgghwvxxxvvwvxwxvwwwxwWvVfhgvwhwfewwwwvwfwvwvwwggvfuggghXxwhwwwWfvgvxhxwhwwwxwwxxwwxgwwxwwxxhhwwxxwwwwwwwxxxwwwwwxwxxwvwgvvvvxwxwwhxwgwxxwwgxwwwwwwxxxffgfvvffvgggwvewVvwvgvxwggvhgwgfwvwvwwwvwxxxvwgvvvwxxwgxhgwwxxxffguvgwvxggfwghwVwwwwwvwvwvxgvvwhxwwwwvwxwxxgwgxgwwwxwxwvvgfwwwfwfvxWwwwxggfggxhxwgwwfVwwgwwvwvwfwvxfwvwwWxxwwxxwxwwwwgwhWVwwVwVvwwWwwfugfwgwwxggvwvWvwwvwwwwxwwwwwgwhxxwxvfvwxwwwgxxwwwwhuwgwvwfxvgvgwguxwgwwwwwvwhgwwxvgxvhxggwwwwgxwgxwxwhwwxwwxwvwwwgwwgxwwwwxwxwwwwwwxhwwgwwwxwwxxhxwwvwwwvvxwwwwwwwwxwwwwwwhxwwwxhxwwwwvxwwwxwwgwwxwwxxhwwxwhwwwwxxwwwxxwwwxxwwxxxxxwhwwwvwwwwxxwwwgwwwwxwwwgwwwwwwhvwwwwwwxxwfwwwwxwxwxwwwwxxwwwWvgvwffvwwwgffvXfwwwwfvgwxgfffwvfwwxwwfwwxwwxxhvwwwxxwfwwwxxwwgewvwwgfgwwvgwUvfwvvwwwgwwwxwvffwwwwxfgxwwwwgwwwwwwwwgwwwgvwwgxxwxxwxwxwxgwwwwwhvwvxwwwxwwwwwwwwwvxwwxwwxwwwwxgvwvwwwwgwgfwwwwwgfwgfgwwgwwwwwvwwwwwhgwwwwwwwwxxxwwwwwwwwvwwwwwwwwwwwwhgwwxwxxwxwfwwwwxwvwgwwwwgwwwxwwwwgwwwwwxwwwwxwwwwwxwxwwvwwwuvgwwggwvwgwggwwwwuwxhgwgwvwwwwwvvwwgwwfwvwxxwwvwfgwvxwvwvwwwggvwwwxwxwwxvwwwwwwwwxxwwwxwwgWffwwvffeggwwvfgwwvwwwwvvgwwwwwxwwwwgwggwwwwxxvvwwvwvxwwwxwxxwvvwwxhvwuwvwwxgwwwggufgvgwwwxwwwwwwvxwxgwxxwgxwxxwwxwwwgxwgwwwwwgfvgwwgwwwwwwwwwxwwwwwgwwwwwwxvwwwvggfwvxwwwwgwvvwfwxwwwwwvxwxhvwwwwwwwgwwvwwwwwxwwxwwwwwVvfvggvgefgwwvwfvwwwwxwwvgwwgfvwwwwwwwwwfvwwwwxhfwwwwvvfwwgvwxvxwwgvwxgwgefUwwwwgggvgegggWefwwvwvvxwwvxxxwxwxxwwvgvvwwwxwwwwwxfvwxwggwwwwwxwgvxwwwwwwwwxgxxxwxwwgwwwwwxwwwgwvxwxwwxwwwwwxwwwwvxwwwwwwxwwxgwvggvwwwgwvggwgwvvgwwwgwvgxgvvwwwwwvwwxvxxwxvxxxwxxxwwwwxxwwgxvwwxwwwxxwvwgwwwwwwwwwwwwwwwxwwxxwwwwwxxwwwwwwxwwwwhhfvgwwwwwxwvxwxxwxwgvxxwxwwvwwxwwvggwvghxwwwxwwvwwxwwxxwwwwwxxxwwgxwwwwwwwxwwxwvggwfwwvvvvggwxvwgwwwwwwvgwwwvwwwwvwwwwwwwwxwwxxwwwxxwwxwxwwxxwwwwvvggwwwwvwwvwgwvvwgwwwwxwxwxxxxxwwwwwxwwwwwwwwxwffwwvUggwvgwwVwgwgvvwwfwggwvwwwVwgwwwwggvwwffhwwwwfgwgwwwxvwwgvgvvwwwwwxwxgfgvvwwxwvgwxwwwwxwfewvggffgfvffvgwgwwwgwvggwwgwfgvwwwgwggwwwwwfwxwwwwgxvxwxwxxwwwwwwwwwxxwhWwwwwwfwwwwwggffwvvwwwwwxwggwwwxwxgvwwwwwwxwwvwwxwwwwwwwwwxwgwgwxxwwgwgwfwxxwxwwwxvwxxwxwvvxxxxwxwwwhxwwwvwxxwwwxxxxwwxwxxwwwwxwwxvvxxwwxxxxwwwxxwwwwxxxxxwwwwwxvwwwwvwwwvwwwxwhgwhvwxwwwwxhwwxwxwwvwxwwwwxxwwwwwwxwxwxwwwwxwxwwwwxxwWWwvWffwwfffggwegwwwwvfwwwwffgwwwwwxhgwgwwhwwwxwwwwxvwwwwwwwwhwxxxwwwwvgwwgvwgwwgfggwwwwwgwvwwwwvfgwwxxvgwwwxwvvvvxxwwwwwxxwxwgwwwvwwxwwwwvvvwwgwwxwwwwwvwwxxgwwwxwxxwwwwxwwxwwwwwxwwwvwwwwwxxwuuwvefvwvfffgwgvgwxwvgwwwxfgvvwwxwwvgwwwwwwwwxwxgwxxwwxwxwwwxxxwgxwWwgwwwvfwgwwwfgfwwwvgxxvwwwxwwxwfgwwhggwwwxgvvwwwwwwwwxgwggvfwwhwwxgvwwgwwxgWgwvfwwgwwwxggwfwvfwwwxwwexfwwfxvgwwggvwwwxxwwwwxvvwwwwhwhwwwWFvffeUfvWfffwexvwwvfgugvWfvvwfwwwwgfwvggwwfwvwwxwwewvwwfwvgwwggfwxwxwwxwwwwxdgvwfvvgfVgvWVufwvwgwwwwxwggwvfgugwfwwwgfVwwvwwwfvgwvwwwwwvxwwwxwwxwwwwxxxxwwxxwxvxwxxwfxxwwxwwwxwwxxxxwxxwxwxwwvxxwwwwxwwwxxwxwwwwhvwwxxwwwwwwwwxwxwxwxxxxwvwwgvwwwxxwwxgxxfxwgwwgwwffgwfwxwwwwfwwwWghvwgwwwwfvwgvwwgwfxwwwwgugvxwhvxggwxfvwwwwwxxxwwwvvwwgwfxxwwxxvwwGVgffVffvgUewfvtvvwfgfgfVwwgUuwgvgwwwwfvwvwwggwwwxwwugwgvwggxfvwwwwwwwhwwwufwwhvwWfvvgefwfvwxwwwwgvwfwfgfgfVxwwwwwWfwwgwwxwvgfwgwxwwwwgxwwxwwxwxxwxxwxxxwxxxwwxxwxwwfxxxxxxxxxxxwxwxxxxwxwwxwwwwxwxxxwxwwwxxxxwxxxxwwggxxxxwwxwwxwwxwwgxxxwxwxxwhxwwwxwggwgwwxwxwwgvwxvxxwwwgwxxwxxwwxwwwgxxxxxwxvxhixwxxxwwxwxxxxwwxxxxxxwwxwxwxxwwxxwxwwxxxwwwxwwhwhxxwxxxwwxwwxwwxxhwwxwxwwwxvwxwxwhxgxxhxwxwwwwxxwhgxwxxgxwwxxwwxxwwwxwxxwwwwwxwxwxxgwxixvxwxxwwxwwxxxxwxwwwxxwxxwwwxxxxxwwwwxxxvxxwwxwxwxgxwwwwxxwxwxwwxxwwwwwxwwwxwxwxxwhxwxxwxwgxfxwwxfgwgxwwxxxwwgwgwxwwwwxhxwwwwxwwwxxhwwwxwxwwhwwwVwwwxxwxwwvwwfgwvwvgwwwwvwwwwwwwwhwgvvwwwwwvwxwxvwvwwwwwwvwwxxxwwxxxhwxwwwwwwwhxwwxxgxwwxwwxgxwwgxgvwwwwwwxwwwxxwxxwwwwwxwxwxwwwxwvwgxvwgxxwxwwwwhwxwwwwwxxxxwwwwwxxxwxgwxwwwgwwvXgwwvwwxwwwwwgwwgvwfwvvwwwwwwwhwwwxwhwhwwwxhwhwwwwwxvwwxxxwvwxxwxwxxwxgxwwxxxwwvhgxxwwwwwwwwwgwwwwxxwwvvvwxwxwwwxwwwxwwxwxxwwwwwxwwxhgxxwxwwwxhxxxwwwxwwwwxxxwwwwxwwxgxwxxxxwgwwwwxxwxxxxwxxwgwwwxfggvwvwwwwwwwwwxxwxxgxgwggggxwgwwwwwxwxxwvxwxxxxxwhwwwxwwwwwwhvwggwwgxxxxgwwvvwxwxvvwwwwwxwwwwwwwwwwwxwwwxxwwgggvgggwvvwwgwxwwwgggwvwvwgwwvwvvvvwxxxwwxwxhxxwwxxxwxwxxwhVVvvfggwxwvwfvufvggffwwffwwwwwwxxwwwxwwvwgwwwgvxweewwgwgwwwwwwwwwhwwwhgwxwvwgwwwvxgwwwwwwwgggwfwgvwwxwvgwwwvwwwwxwxxwxxxxwxwwxxwvwxwxxwwxvwwwwwxwxwwwwwwxgwwxxwxwxwwxwwwwwwxxghwwxwwxwwvwwfvwfwhgwwwgvgvwwwxvxwwvggwwxgwvwxxwwxvwwxxwxxwwwwwxwwxxwxwwwxwwwwxxwvvwvwwgvxhvwwwhwhwwwwxwwwxwwwwwwwwwxwggvwggvwvvwxxxwxggvgwfwwwvwgwvgvvwwwwgxwxwxhxwwwwwwxwxxXfegeuvgwwxwgwwwwvevggffwwffwwwgwwwwxwwxwgwwwfvvwvvwxgvwwwvvvvwvgxxxwvgwgwxwwwhvwwvvwwwxvwwwxwwwvxwwgvwwwwxfwwvwxwwxwxwwxwxxwxxwvfwwgvwffwwwwwxxwwwwgfwwxwxhgvwwwwgwwwxvwwfxwwwwxxwhvfwfgwwwwwxxwwggxgwgwwwwwwwgvxwxgxxxwvwvwwwwwwxxxwwhgwwwwxxwwwhwvhhxwwwwwwwwxxxfwxfxwwwwwwxwwwwhgxwwwwwwxwwxxwhxwxxxxwxxxwxwwwwwwwgvwvgvwwxhvwwxwwgggwfvwxxwwfvwwwwxwwwwfxhwwwxwxxxxxfggvvvwwwwwxwxvvvhwxgwwwwvxwwvfwwhwwwwwwwwwwwggwwxwwvvwwwwwxwwvwgxhhwwwwwwwwwwvwxwhxxwwvwwwxvwwxwwwwwgxwwwwxxwwxwwwxxxxxxwxwxxxwwxwwxxxwxwvwwwwwwwwwwwwwwxwxwxxxfvwwwggwwgwwxvwwwwxxhvwwwwwewfffffgwvvwxwgvwwwwwvwwgfefvgWWvgwwwgwwwwwxwwwwxwxwxfvwwwggwxwfwwwggwxwwwxwgUfvvffffwwxwwwwwwwwwwwwwwxxwwwvffgfwggvgvwvfgfxwwwwgwwfwwxxvfgwwgwwwwgwvVwwwwwwxwwwxwgvwxwwwxwxwwwwxwgwxwwwxuWvvwghwwgwvffvwffgfgfvweggffvwwgvwwwwwwwfwfvwwwuwwwfggwggwwhvwwgVwgwwvwwvwgvgwwxwfwwwvwggwwwvwfwwgggwwwgwwwwgwvwvwvfvxxwxwwwwvwwxwwxvxvvwvxwxvwwgwwwwuxxwvwwwwggvvvwwwwwvwwwwwvgwvvwgwvwwwwwwwwwxxwwwwwxvxxvwxwvwwwvwwvewwgfwwwwgwgvwwggggVfwuvgvwfvgwgvwwwxwwvwgewgwuwgwhvfwvwwvwvvwvvgwwwwwwhwxwwxxhgfwxwfwwvwwwwgwwwwgwwwxwwgxvvwwxvvxvwwvwwwwxwwwwvwwxxwwxwwxgwgxgwwwwwwwxwwgwwwwxvwwwxxwwwgwwwwwwwwwwwxwwxhxwwwxxwwxxwwwvvwwxwwwwxgwwwwwwwwwwvfggvwvwgvwwxwxwwxxxgwwwwgwwwwwvwwwwvwwxwgwwwxwwxwxxxwwgvwwwwwxxwgfwfwwwwwwgvwwgvxxwwhwwgxwwwwwwwwwxwxwxxwwwwxwwxwwwwwwwwwxwfwwwxwwfhgvvwwwwwwwwwwwwvxgwwwwwwwwwwwxwwwwxwggwvvgwxxxxhgxxgwgwgxwwxxhvvfwhxfwwfwwfgwwgwvggegWvvgvfwfVvuuVvggwgwwWvvwgVvvwggfwgwwwwwwgwwwwwwgvvgwwwwwxgwwwwggwvxwwxxwgvfgwxwwgxwgwwwwgwwvxwvwwwwxfwwwgwwxwgwwwxwxwfggwgwwwwvgxxgwxwwwwwwwwwwwhhwwwwxxwhwxwwwwwwwwxwwwwwxwwxxxxxwxwxxwwwvfwgvfwwwvwwgwwwggwfggvvwvgvwwvvggwggwwxgvwxwxvvwwxwvwwwwwwwwgwwwwwwwwxxxxwxvwwwwwwwwvwhwwwwwwwxwvwwvwwgwwwvwwwwwwxxxxwxwwwwwwgxwwwwvwvxgwfwwwwwwwwwwwwwwwxwxvwxwwwgxgwwfwwwwwgxwxwwwgwwwxwxwgwvwwwwwwwxwwwggwgwgwgvgvwwwwwvwwwvwwwwxwvwwhxxxwwwwwvxwxwwwxwwwwxwwxxwhwwwwwwxvwxwwwgwxxwwwwwhwwwxwwwwwwxwxwvwxwxwwxwwwxwwwwxwwwwxwwxwwwwwwwwwgxgxvwxgwgwwxxhgxwxxxwxwwwxwwwwwxwwwwxwxxxxwwwxvwwwvhgxwxwxxwxxwxxxwxwxxwxxxxwwxxxxwwxwwxwwxwwxwvwxxwxwwwwwxxwxxwwwgwwwwxwwwwwwxwxwwxxxxxwxvwwwxxwxwwggwwvwwvwwwwwwggwvvgvgwxgwvwwwwgwvxxwgxwxgwxwwwwwwwxwwwwwwxxwxwwwxwxwfggvgvxwwfwwwvwfwwwwwxwwxxxxxwwwxwwwwwwwwwwxxwwwxxxxxwwxwwwxgwwwxwwfwwxxxxwxwxxxwwwwxwwwxwwxwxwwwvwwgwvxwwwgxwwwffvgwggfwwgwwwvwvvvwxwgwvvvwxgwwwwwwwgvwwwggwwwwvwwwxxgvwwwwwwwwwwwwvxwfwwwvwvvwwwwgvggwwwwwvwwwxwxwwwxxxwxwgxwvxwwxwxgwxxgwwvwxvwgwgxxwxwgwhvwwwgwvwwwwgxwwwwxwwwxwxwwvwwhxwwvwxwxwwvwwxxwwwvwxwwwwxwxxwxwWgfwvVfugffugVwfvvwwggwvwvugwgwfuwwvxgwwwvggwwwxvwxwxwwvwwgxwvwwxxwwvwwxxwwwvguwwwWxvwvvvgwgwfvwvgwvwwwwwvwwwwwxwwwwwvwwwwvgggwwwwggwxgwwwxwwgxwxvxxwxvwwgxwwwwgvwhwwwwwwxxwwwxgwvwwwgwggwwwwxwgwwwxwwhwwwxwxvwwgwxufvWgffwfVegWvgwfwwggwvwgfwwwvgggwwvgvwwwxxxwwwxwwxxwgwvwwwgwhgwwwwxwgwwwxwxVfevgVvwWVfvggvVfwwvgwwgwvwvwwgwvwxwwwwxhwwwwghfwvwwgwvwwwwxxwwwxxwwwxxwxgwwvgvwwwwgxwwwxgwxwwxwvwvwwwgwwfwwwwwxgwwxwxxwwwxxwwwwxwwxgWfwveVugffvVggefexfVxwvUfvfgwVfvvwxgwwwwxwvxwhxwwxxvwvwwwgwfwwwwwxgwwwxwxxxvvvwwwfwwvfgwwwggvwvwgwvwwgvwvwwwgvwxwwwwxxgwwwwghgvwwwgvvwgwwxwwxwwxwwwwwvgvwgwgwwwvwhwgwwvgwxwvxwxwwwwgwwvwxwwwxvwxwwwxwwgxwgxfwwwxvwwwvevWgVfwfefWfwgwuwwwWwvgvfwgwgvvwvwfwwwwwwwwwxxwxwxwwvwwgwwxvwwxwwxwwwwxwgvvwwgfwwvgewgwfwuwwvwgwwwwwwvwwwwxwxwwwwvwwwgxfgwwwwggxwwgwwwwvvwwwgwwwwwwwxvfwwwwwwxvxgwwwwxvwwwwwwwwfwwxxwwwxxwwwwxwwwwwwxxxwhfwfvgwvgfwwwwgwvfwvwwwwwwvwxwwgwggwwggwwwwxwxwwxwxwwwwwwxxwwxwxxwwxhwwgwgvvwwwwwwwvvgwgwvwvwwwwwxfxgwwxwxvwwwwxwwxwxwxwwwwwwwwwwwwgfxwwwwxwwwwvgfxwgfwwwwwwgvxhwwwwwxvwwffvwwwxwwxxxwwwwvwwwxwwfwxxwwwxwwwxwwwxwwxxxwwwvwwxfwwwxwffxwwwwwwxwxwwwwwxwxxwxxxwwxwwxxwwxwxwxxwwvfvwwVvgvxwfgxvwxwvxwwgwgvwgwwwwwgvwxwwwwxwwxwwxwfxwwwwwwwvwxwwwwvwwwgwgfwgvgwwwwxgwwWewVffvgfffewwWgwgfvwwwwwvwgvgggfvuwwwwwwvgwwwwxwwwwwwfwwxwvwwwwwwwwwxxwwwgwgwwvwwvwgwwwwxgfwgvwwwgvwwvwwxvwgxwwwwwwwgwwxwfvxvvxxxwwwxwhwwwvgwfwwxwvwwxwwxwxwwxwwwggvwwwwvwxwwxgwwwwwwwwxhwxwwwwwxgxwwwwwxxwhwwvwwwvwwxxwwvxxxffVVgvvffwuvwwvwxwwvgwvwfvhfwwvgwgwwwwwwvvwwwwwwwxwwwwwvxwwxwwwxwwwwwwxwhwwuwggfvggwvfgxgxfgwfvwwwxgwwwfvwwgwvwwwwwwgwwwhwwwvwwwwvwwxwvwwwgwwwwwvxwxwvwwxwwwhwwwgwwvwvwwwwwwwwwwwwwwgwxwwwwwwwwwwwxwwvwwgfvwwgwwwwwwxwXvffvvffevuwwwffxvvwvwwwwwxwgfgwwvgwgwwwwvfxwwwwwwwwgwgwxwwwwxxxwhwwwwwxwwvwWvhwffgfwwwgwwhwwfvvgwvvwvxwggxwwwgwwwwwvwwwwwwvvwwhvwwxwwgwxwxxxxxwxwgxxhxxxwxxxxxwxwwxxwxxxwxxxxwwwxwxxwwxwwxxxwwxwvxwwxwwxwxfhgwwxwwwwwwxxwwwwxxwwxwxxxxwxxwwwwwwxxfwwgxggxwwxxxwwvwfvvwgfgvwwxwwxwgvwwwhwwwxvwwvxwgwgvwwxwwwvwwwwgwwgwwxxwvwwwwwwwwxwgwwwwXvfvghxwgvwhwwwguffegfVvWfvwwVvwggfufwwwwwvgffwvwwwwwwwwgwwxwwwwwgwgwgxwwvwwwxwxwwwxwwwvwwwhwwwgwfwwwwwvwwfvwwgwwfvwxwwwgwgfwwwwwwxwwwvwggvxwwwwvwxxxxxxwxwxxxxxxxxxxxxxxxxwxxxwxxxxwwxwwxyxwwxxxxxxwxxwxwxxxwxwxxxxxwxxwxxwxxwwxxwxxwxwwxxxxxxxwxxxxxxwxxwxxxxxxxxxxxxxxxxxwxxxyxxxwxxxxxxxxwxxwxxxwxwgxxxxxwxxhvxxxwwwwwwwwwwxxxxwxwxwwwwxxwxxgxwwwhwwwwwxwhfwwxxwwxxwxwwxxwxwxwwxwxwwwwwwxhxvxxxwxwghhwwxxxvxwxwwxwwxwwwwwwxwwwxwwxwwxwwwxwxwxwwwhgxwvvxwwxxwgwwwwwwxwwwwwfwwuffwfwwgffvwwvgwvvXfuxgffvwgggvwwfwwxwxxxwwwwxwhgxxvvwwwwwwwxgwgvwgvgVvgguuvwggfwwwwwwwxwwwwwwwwwwwwwffgwxwvxxvfwwgfvvwfvvfwwwgwvwwwwwfwgwwwvgWvwwgwwwwwwhgvwwwwwwwxwxwwwvhwwwwwwxwwxxUwgggwvwXvwwvfwwwvfvfvgggwVffffvwggvwwgfwwwwgwwgggvwgwxwvgwwhgffwgwwvwvfwvwwwgwwxwgfwwwvwxwvwwwvwwwwwgwwwwwWfgvvffwwwwwwwhwwwwwwwxwxxwwhwgxwgxxvwggwwwwgwhhhvxwxxwwwwwwwwgvwxxxwwwwwwwxwwwwwwwwwxwwwwwxxwwwxxwxwxxwgfwgwwwvwwwwxxwwwggfwgwvvvvwfwwwgwgwwwwwwvwwgwxwxwwxwfgwwvvvwwwwwwxwwwxwxxxxvwwxwwwxxxxxwwwwvggggxgwwvvvwwvwhwxwxwwwwxwwwxwwxwxwxwwwwwwxwwwwxwwwwgwgwwxwwwwwwwwwwwxwwwwwwwgwgwwwwwxwwwwfvfwwwxwvfwfxxwgwgwwxfwvxxxxfgvgwxwwwwwgwwwwwwvfwvgvVvVvwgfxwgfgfwwwgwgwwwvwwwxvwwwwwwffwfgwwwvwwwwwwfwfxwwwgggwwwwxvwwwxwggvvUfUwwgvVvVvvgvwwgwwgwgggwgvwwgwxwxwwxwhwwxwwwxhwgfwwxxwxwgwwxwwwwwwwwwwwwxwxvxwxwwgxwxwxxwxvwwwwwxwwxxxggwwwwxwxvwxwxwwwwwwwfwggwfwvfwwwxwvgvfwwwgwfwvgxxwxwwwgwwwwwgwwwwwwxxwxgwvxwwwxwwwxxwwwwwwxgfwwvwwxwwwwwwwwwwwxxwwwxwwwwxxwwwxwwwxwwwwwwgwwwgwwwwwwwwwwwwWwxxwwwgwwfvwvwwwvwgwwwvvvvwwwxxwwxwhvwvwwwvxxwwxxWggwwwwvwwvvvggwwwvggwvgvuvefgvgwwwvgwwwwxwvvvvwvwwhwvxwwwwvwvvgwwwwvwvvwwwwxxxxvgfgwwwgwvwxxwxvwwwvwvwwguwegfvvwwwggwvwwwwxxxgwgwwxvhwxwwwwwgwgwwvwwgvwvwgwfwwgwwwxwvwwxgwfwwwwxwwwwwwvwwxwxwwvgwwwxxwwwxwxxwxhvwwwvwwxwxwggwvwfwgvgwwwwwvgwwwwxxwwvwwwwwxwwxwwxwwwwwwwwwwwwwwwxwxxvwxwwwwxxwvwwwvwwwwghwwwwxwwxwwgwwwxwxwxwwwwxxwwxwwwwwxwwwxwwgwwwwxwxxwhwgvwvwwxwwvggwxwxwwwwwgwwvxxxxxxwwxwxwxxxwxwxwxwwxvggxwxxwwxwwwxxxwwxxxxwwxxwwwxxxwgwwxvvwwxxwwfvwgwwwwxwwwuwvvfhfwwwgwvwxwxwwxwwwxwwevgfwwwwfgwvwwvxwggfwwwwvwfvgfwhfwfdfeefWUfvvvwwwfwwfwwgdgWUvwgfWffgvvgwwwffwwwwwxwwgwxwwwwxevgfwwwwfhwvxwwxwvgwwxwwwwefgVfvvvfhvugvwgwgfwwvwxwwwwwwxwwwfvefvfggvwfWwwwvwwxwwxggwwxxvwwwgwwwvwxwwwggvVvhwgwwwxxhwwvfwwxwxwwwwwWvgfgwgfwvvwwwwxwwvfghxwvgwwfwwwwfvgVVeEfgfVvvfhwwwwwvwwWvhfVvwvfgvuvvvfgwwwwggvffwwxwwwvwxWvhfgwwfwvvwwwxwwwfgvwwwwwFfgUVvvvggefvwwgwvwwvwxgvwwwwwxwwgvfWggggvvWffwwwvwxwxwwwxxwxwvwwwwwxwxwfwwvxwgwwwxwwxwwwxwxxxxvxwwwxwwwwxvwwwvwxwwvxwxwwxwgwUffewgfvwfvwxwwwxwwfwfgvgwfwwgwwwvvwwwwgwwwhwxwxxwwwwwvwwwwxxwxwwwwwxwwwwwgwxvewggvwgfgwvwvwwvxwxwwwxxwxwwvwwvgwgfwwgvgwvxxxwwxwwxwwwwxwxwxwxwwwwwwwfwwwwhwvxwwwxxwwwxxwwwxwwxwwwwvgwwxvxwwwxwxxwvwxxxvwxwxwxxwxwwxxwwwwwwxwwxxhvxxfxwhwxxwxvxwywwwxwwwxwwwwwwwwwwfwgwwwwxvwwwwwxwwxxxxwvwwwwgwxwwwwxvwwwwwvwxwwwwxwvwUffuvgfvfwvgwwwwwwgxuvvfvwwvvwwgvvwwvxwwwwwxwwwwxwwwwwxwwwwwwwxwwxwxwwwvvwfvgwvfwwvwwvvwwxxxwwwxwxwwgwwgfgvgxgwggwxwwxxwxxwxxxwxxwwxwwxxwxwxxwwwxwxxwwwwxwwxgxxwxvxwwwxxwwwxxxwwxxxwwwwwwwxwxxxwwxxwxwxgxhxxwwxxwwwxxxwxwxxwxvxwwxhgxwhvwxwxwxwgwhwxxxxxwxxwxxwxwwwxxwxxxxwxwxxxwwwvwwxwwxxxwxwxwwxwxxwxxwxxxwxwwwxwxxxxxwwwxxwhwxxwwxwxwwxwxwwgxwwxxgxhwxxgwwwxxxwgxxwwxwxwxwwxwwwwwxxwwwxxwxxwxxwwxwwxfwxwwwxxwxxxwxxwxwxxwxxwxxxwwvwhwxwxxwxwwxxgxxwxvwxxwxwxxwwwwwwxxxwwwxhxfwwxhxxvwxwxwvwwxgvwgvxxwwwwvwwwwxxvwwwwwggwgvwwwxwxwwxwgwwxxwxwxxgwwxwwwwgwxgxwwxxwwwwgwwwwwwwwwwwxwwwwgffVwwWefffgwwwwwVffwvvvgfvfwgwgwxwwgggwwwgwwwgwxxwxgwwxwwwwwgxwwwwwwwwwfwvwwwfvggvwwwwfxwwwwvvvfwwwwwwgwwwwgggwwxwwgwvxwvwwwwwgwvwgewfwwwwwwxwwwhgfwwgvgwwgvwwwxwxwxgvggwxvwwxxvwwwwwwwwvwgwwwwwwwwwvfwfwvwwwwwwwwgVuWvfVffffgvwwwwwvwvwfwwvwfwxhwgwwwwwgfwwwvwwgvwxwxxwwwgvwwwwvwwwwgwxwwwwvwwevvvwwwgfufwwwwwwwwwfggvwwxwwxwwwvwwwgwwfwwwwxvvwxwfvwwwfwwggfvwwxwwwwvwgwwgvvwwvwwwfwvvwxwwwwwvfwwxxxwwwxwvgwwxxgxwgwwwxwwwwwwWvfvwwxwwwwwxgxwwefffVfeuggvwwvgvgvwwwwwwwwwxgwghwgwwvgfwwghwggwwwvxwwwvgwwwhwwxxxwwgwwwwwwwwwgveVvfwwwwwwwwgvwwwgwwwgwfvwvwxxwwwvwwwwfvwwxwwwwwgwxvwgwgxxxwxxxxwxwxxwxxwxxxxwxxxxxwwwxxwwwxwwwwxwxxwwxwxxwwxxwxwxwvwwwgwwwwwxwwwwwwwwxwwwwwxgwwgvwgwwwwxwwwwvwwwxwxwwgwwxwwxxwgxwxwwwwwwxfgvwhwwwwwwwxwgwwVffvuwVfvfvwwvfgVffxgwwwgwwvgwxvggwvfwvwwwxgwwwwxwwwwwgwwxwxxwvgxwwxwwwwwwxvvggwhvwwwgwwgvwwwgvwgwvgggwwwvwwhvwwwwwgwwwwwwgwwvgwwvxwwwxxwggxxwxxxxxxxwxwwxwwxxwxxhxhxwwwwxwwxxwwxwwxxxwwwxwwxxwxwwwwwwwxwwxwwxwxwwvwxwwwwgwwxfhwxwxxwwfxvwxwwwwxxgvhwxxxxxhwwxwxgvxxwwxxwwxxxwwxwwwxwxwxxxwwxwxxwxxxwwwxwxxxwwxwxwwwxxwxwxxwwwxxxxxxxxwwwwwxxwxxvxwwxwxwwxgxxghvxxxwwwwwwxhhgxxxwwwxhhxxwwxxxxwxxxxwxwxwwxxwxxwxxxxxxwxwxxwwxwwxwwwxwwxwxwxyxwxxwxxwwwvwwggfwxwhwwwwwfvwwwvwwwvwwWvgwwwfgwwvwgvfxwwwwwwwwwwwwwwwvwgffgwvwwxgwvvwgwgfwwwhwwwwhfwwwgeffFwwffvwWffuwwgvgvfvvgwwwwgVffvfgwVffuwwwwgfgxwwwwwwvwwwwwwwxwwhffgwvwwwgwvvwgwfvgvwwvgggfwwWffuwgwvffevwwwwffwwwwwvwgwwwwwffwwwefVwwwwwwwwwwwxxwwxwxvxwxwxxwgwwwgwwfxgxxwxwwwwwwhvwxwxwxgvwwwwxwxwxxgwwwwwwxxwwxwwxxgwfwwgwwwwwwxwwxwxxxwwvvwwwwwwwwwxxwwxvwfxxxwwwwxxxwwxxwwwxxgvwwxxwwvwxwwwgxwwxxwxwwxxwwwgwwwxxwwxvwxwwgwgwhxwwxwwxxgxxwwwwwvvwwxxxwxxwwxxwwwxvwwwwxxxgwxwghxxxwwxwwwwxwwwwwwwwwwxxxxghxxwxxwwxxwwvwhgwwwwxwwwvwvwwwfxxxxxxwwwwgxwxxwxxwwwxwwxxwwwwwwxxxwxwwxxxxxxxxwxwxwwwxxwwxxwxxxxwwxxxwxxwxxxxwxwxwwwxxxwxwwwxxwwwwxxxwwwxwwxwwwxxxxxwxwxwxwxwxxxxxxxwxxwxwxxwxxwxhxwxwxxxxwwwwwgwfwxxwwwvwwxxwwwxwwwwxhhwwwwxwxwxwwwwwgxxxxwwxwwwwvwgvwgwxwwwwxwxxxxwxxwhxwwwwxwwwwwxxxvhxwxwxvwxxwwwwwwxwvhxxwxxwhvgwwwxwwwwxwwwwxxxwxwxxxwwxxwgwxwwxwgxwwggvwwxxxwxxxvwwwwwwwxxxxhwwwwwxgxxwwxwwwxwwwwxxwwgxxwwxgxxggxwwwxwvxxxwwxwwwxwwwwggxwwyvvxwxxwvxxxwwxwwxxvvvwwwwwwvwxfwgwwwwwxwwwxwwxwxxwwwwxwwxxxwwxxxwwwwxwxwyxxxxxwxwwxxxxwwwyxwwxxxx ================================================ FILE: examples/games/.Tables/TwstChce.ptb ================================================ wxhvffwxwwxgvwgffwxgfgyfwwTfexwWfeXffUVfFTxxxvfwwhgvxwgwfffwwweVfwxfgeThfeeVeFUxwwfgwfefVxwwgfexgeVdVfUEwwxeefhwfVevgVfeEVVDfgvffffvvDUggffffTEgvfUDETxwwwwwxyfwwvwwxwwwwwxwhwwwwwwwwwfwvwwwffxwwxwwwgwwwvgvwwwxwwwwwwwwwxwwwgwfwwxwwwvwvwwxvvwxwwwwvwxfvwwwhvwwgwwgwwwvgwvwffvvvwffwwwwwxgfwwwwwwwxfwwwwggxxwgwvwhwwggwgfvhwvwxwggwgfvwwxwgxxxwwxwwxhwwwwxhwwwxwwxxhgwwxwwhwvwwxwwxwxwwwwxxxwhvgxvwwwxxwWvfwxwwggvffwwxxwwwxwwxvwxhwvhgwgfwvxwwxxwggvvxwwWfggvwwvwwwwwvwwffwwwwwfUfVfwwwwwefwxwwxwxwwwgwwxwwwxxwwwwwgwwwxwwwwxvfgxwwwwhgwwwwffgwffvfwxeewxxwxgwvwwgwwwxwwwwgwwwxwxxxvwwvwwggfwwWVgwwwefxwwwwwgwwwwxwwxxwwwvwVgWwggfgwwfewwwxxwfwwwxfvfwwffgvvweegwgwgfvfwwvwvvwgffwgeeuvvWVefvVVefVxwwwwwwxxwgvxwvwwxwwwwwhwxwwvwxwwxwwgvgvwwgVefvgfggwwffwxwwxxwxgvwwwwwxxwwgvwgvfwvwgwwwwwwgffvwWeffvwgfwwwwxxwwwfwwgwwwwwwwwwgvxgUfwgfffgffffvwwwwfwgvwgwgwgffvwgffvgwWVvgwvgffgfwvfwvfwvvvgVUefvvUeUefeeUfwxxxwxgwwwwwfvwwwwxwwwwwwwwxxwxwwwwwxwxxwwwwwgvwwwwwfvwggxxwwwwwwwxwvfxhwxwvwvwxwwwggwwgvgfvfwwwvgwvwffxxwwwwwwwwwwwwwwxwvvwwwvfvvwwxwwwwwwgvvwwwwvwffxwggwwwxhgwwwwwgwvgwgfvgwvwgfvxwwwwwwxwwvwwwwwwxwxwwvwvwwwxwgwwvwxwwwvwfvvxxxwxvwwwwwwWewVfxxwwwxwwwwggvwwwwxwwvwwxwwwwffgwwwwvvwxvgvfVVwwxwwwwvwwwxxwwwgffxwxxvvwwwvffvVVxwwvwVewxxxwwwwwxwvwgfggVvwvwvffgwvfwwUefUewvgwwgvwffffgffUexxxwxxwwxxxwxxgvvhxxxwwwxxwggVgxxwwwxxvfgwwgfxxxwxwwxxxwvwxwggwwwvgwwffxxgxwwwxxwwxhgvxxwwwggufwwfvxxwgwxxwwxvvwwwwxwwwwwwXffugwgVvwwwwwxwwwgwgefffwxxwwwwxwwgvwwwwwwxwwwfwwwwhxwxvwwxwwvwvgvwwgwwwgffvwgfffvwWVxwwwxwwxfvwwwhwxwwwwfwwwwfffwfwxgfgfwWegvwwgfwxxwwgwwvxwwwwvwgvwxwgwfUffwfffvvwgfwhwwwwwwfwhwvgfgwwWffevxgfvfwvgUeffwfvvvvgVewgUfUvvgeeffgUevvxxvwxxwwwxwwwxggvxwwwwxwgxwwhvexwxwxvfgwwwvfxwwxvxwwwwwxwgwxwxwvxxwxvgwwxwwwwwxwwxwxxxwwhgvxvxwxwxgWfwwwfgwwhwvxwwhwwggffxwxwvwwWffuwwgfwxwvwwgfvwwWfvwgxxxwwwwxvwwgxxwwxwwwwwfwwxxwwwgwgwxfwgwwwvwwwwwwgwgwvgffffffexwwxwwwhwwxwwwvxwwxwwwwgvwfwxwwwhgwfWffevfgfwxxxwwwgfwxvwwwwwwgvxfwfwwgwwgffffUfvvwwwwxvgfffwvwwwwgwVvVfvfffvfwgvvggfwfgveVeeVwvvffvggggUfUUVVVwwxvxvwwwwwwvxwwwwxwwwxwwwvxwxwwwwwvgwxwwgvfwwwxugexxwwwwwvVfwwxwxwwwwwvxwwxwwxxwwwvgwwwwggUxwwwfgvxxwwvwwwfVxwxwwwwvfgxwwwxwwffvwwxxvffwwvgwfVVwwwwggfvwxwfvfxvvwvgVVwwvwVfUvwfwgggfVeuwfgfvwfWeuwggfffVxxxwwxwwxwwwvvxwwxwwxgwwwwxwxxwgvwvgvwwfwgffwwwwhffvgwwwweeffvvwwxwhxvwxwxwwxwwwvwwwwwwwvfffwgvgwwvwwwvvgffVVxwxxxwwwgvwgxwwfggfxwwwgwwvwvvgVeffwwwfwwVfVwgwwwvwvgvvwgfffgvwfgvVVVwgwfgVUeeegvwfgggffUffgvveUwwwxxwwxwxwfvwwxwwwwxwvvwxwxwxvwgwwwwgwfffwwvgfeewgwvvwwvgfwxwxwwwwxwwfxwvwwwwwwgvwwwffWugvwxfvfwwfffwwwffxwwxwwwvwwgwwvwgffwwwwfffvgwwgwwfVVvgxwwwWffvgwgvfwwwfwwfffwgfwWeVugvfgfgffUewfVVegwfeegwfUvvfxwxwwxxwwwwxxxffwxwwwwwwggxwwwwwwwxwwwxwwwgvwwwxwxxvxwwwwxxwwwxwwwxwwwfwwwwwwfwwwwxwwwwwwwwxvvxwxwwxwwwxxwxwwwwwgxwxwxgggggwwxxwwwgvvwwwwwxxwwwxwwgffvgfwfwwwwwwwfvvgfwfwvwffwwgfwwxwxwwxgwxwwwgggxgxwwwgxwwvwwxwxwvfwvxgvwvffwwwwwggwwwwgwvgffwwxwwwwwwxwwwwwwxwwwxwwxwwwvwvxxwxwwgggwwggxwxwwwwwxwwwwvgwwwwwgwwwffwwwwwxwwgvwwxwwxxwvfwwvvxxwwvxwwwvgwffvwwwvwwwgwffvwwxwwwwwxwwwxwwwwwxwwwWffuwwxwwwxwwwffwwfffxwxwwxwgVevwwxwxwwwwwwwxhgvvxwwgvwfffxwwgffwwxwwwxxwwffwwfUfwwwwwwgffwwwwwxwvgwwfffxxxwgffxgvfwfvgCD4fwffffwffwfffxwxwwxwwwwwxwwwxwwwxwwwwfwwwgvwwwwwwwwxwwwwwwwxxwvwwwwwwxhfvxxwwwwwwwwxwwwvvwxwwwxwxxwggwhgwwwwwxwgvfwwwfvwwxxwwwwwxwwwwwwwwwxwwwggwwwxwxxwwvvvgffvffwgvwwvffgfvwwwwwwggwwwwwfvxwxwwwwwxwxxwwwwwwwwwwwwwxwxwwvgwfwwxxwxwwwwgwfwwwwwwfggxxxwwwwxwxfwwvwwwwwxwwwvwwwwwwvfgfvwwxwxwgwvvvwwwwwwwxwwxvvwwwvvwvxwwwgwvgwxwwfwwvwgwwvfvfffwwxvgwxxvgwwwxwggwgwffwggwwffxwwwwxwxwwwwwvfgwwwxwwwwwwvxwwwwwwwvwwxwxwgwvwwxxxwvwwffvvffVVwxwwwwwwwvwxwwwwwwvwxwwxfwwwvgwwwvfffgfVVxwxwwgwgwwvxxxwwwwwwxwxwwwvwggvfvvUfVxxxwwwgwwwwwwwwgweegvfVfwvwvwwgwvwwgfgfffvvggfvgggffVVeUeUUxwwxwwwxxwgxwwwxvwwwwxxwxwwgvxwwwwwggvwwgwwfvgvfgVeffxxwxwwwwwwwfwxwwwwwgwggvwwwwwwgvwwwvwwvwvgffffffexxxwwwwgwgvwwwwxgwwwwwgwgffvgfffgfUgfwvfwfwwwvwwwwgwgwwWfVffffvvfwgvvfwvwvfwvffgggveVefgvUfVUeVVUVwwwwxwxwwwxwwwwgxxwwxwwxwwwggwxwgwvgffxgwwwwwxxxwxwgwfwxxwwwxvwwggVxxxwwvfggfxxwgwwwwxxwwwwvgwxwggwwwxxwwwwwvfggxwwgvVvfxwwwwwxwwwwwwwwxwwfVefVvwwffffexxwxwwggwwwwxxwwwxwwwwwxvvwwwwxxxwwxxxwfvvwwwwgfwwwwwwwwwxxwwxwwwwwwhfxwwwwwxwwxwwxwxwwwwwfwhgxxwwwwwwwwwwwwgvwwwwwgwwwwwwwwwxwxwwxxwxwwfwwwwvffwwwwwfwvwwwwwwffgfvwwwfggfvfffvxwwxwwwwwwxwxvfgwwwwwwwxwwxwxwfwfffwxfffwwwwwwwwxwwwwwwwfUfwwwxwwwwwwfffffwwwxwefVwwwwwwwwxxwxxxwwwffffwwfffxwwxwwwxwwwffefVwwwwfffwwhvwffxffxgvffG4CdfvffhfxxxwwwwxxwhwwxwwwxxwwxwvvwwxxwxwfvwxfwwwwwfffxgwfwvwwwwvvgeefgxwwxwwgxvwxwvwwxxwwxwwwwgvefVxwwwwvfwgvwvfffwwwxxxwwxwvwvwwwwvwvfffxfwwwvwvwwwwfffVVvwgwwvgVgVwwwwxwwgwffffvfffvwfgwffgwfggfUfUeUgvvggvggvvVVVeVeewxxxwxwwvvxwwxwwxffwwwxwwwwwwwwwwwwwxwwxxxwwwxvwvvvxxxwwwwggwwwxxwwwwxvwwfvwwwxxwwwwfvwwwwwwwwxxxwwwwwwwxwwwwxwwxxxwwwwxgwgggxxwwgwvwwwwwxvgwwwwwwwvwwfwwgfvwwgvgfvvfwwwwvwwgvgfgffvxwxwwxxwwwgwgwwxxwgxwwwwwwxxwwxwwwggwgvwxwfwgffwwvwVVvwwwwgffffvxxwxwwxwwgvwwxxwwxwwwwgwwwfwwffUwgvwgffvwvwgwwgvfxghxwwwwgwgwwfgvfxwwwgVevwgggwwffvwwwwwwfffwwwwfffvgvggwgwgeuwvvgVUewfwfgfeUVVvgvffgvfVUwfgggfUxxwxwwwwxxwxwwwwfgwxwxxwwwxwgwwxwxwhwvwwwfwwwxfffffveVwwwwxwxwvgwxxwwwwxxwxwhvwxxvgwwfgfwwweVxwxwwwwggvxwxxwgffvwwfgfwwfgfwgwUVwxwwhffxwwwwwwgwwxffwxwwwhvvwwvWfuwhwvwwXfuvfWeeffxwwwwwxgwwgvhvvxwxxgwgvwwgwwwxwwwwwWvguvxxgvgwwwgvgvvwwggvGffFevwxfwwVwgvwvgvehwffhwxxvwVwuWwguhwvgeGfeVfuVvvvhwffGeVvfwwxfwwwvgwgvhvWvegegfeVuf6UxwewfgvgwhwvGeVtefffgvwfwfgwwvwwefgTfVweWvwwwfwSUUSUUfwwxwwvwxvvwwxxvxwwwwxfewwxgvxvwwwwwwwwxwwegewxvwfufwVVwxxvxvwwvfwefvwxwwwwwwgwwgwxxWgfwwwwwfVuwxfgwfgwdfwhvwwwwwVfvgwwhvXvvgfwweVewvgfvVUuDUwgxwgggwwvwwwffvwwvwwWevUfwwwwWffwhxggwwgeuwgffgffGTevvgfFfVwgwxxvwwvxwxwhvwwggvwwwuvvhWgguwvwxvwgvhwWuwgfvvvwhgvgfWeffvgvWefVfvvvgvfwvwgVvgwvvxwxxwwxxhvwwwwwxffgwwwwwgfvwwwvvwvGVvwvvwfvfWWwgdffWVfweefgwgFffgSUfFfwwfdUVVvxwwwwwffwgvwwgvgfvgvuWegGVvfvvUVvwwwweUgeegvVFffffSTVfgvvSTvwwwxxxwwxwwwwwwwwwxxwwwwwxfvwxxwvggfvwwwwwxwwwxxffgweegwfwUfxvwwhvwgfgffgUffxxxwwwxvwwfwxxwgfvwfveegffeUfvfwewwxwhfeVwwUffwwwwgwhfvwffwgUeUgffffefvDUwwxwwxgveVVfuvgffgfwwUfgvgwgffvwggwwvggfgwGEeegwGTegfVUVeVxwxwxxxwxvwhwwxhfvxwwwfwgwwgwwwvxxvwxxxhvxgwwwvwwhwvwWVevwgwgwwgfvhxhvvvvggfwgevwwfxwxhwxgvwwffwffgfgvvgwhfvgvwWvwvffgwwwhfvwgwvvgwvfwVfVwWDTUgfefffvWfhgwvwxggvwgffwhfvwxhvxvgvgeUfvwgvwwvxfwfgEDUuvgefffwfvfvxwwxwwwwwwwgghxwwwxxwwwfvgxwwwxwwwwxwwwgefvwwfgvwffgwwwfUwxwwxxwwwwwwwvfgxxxxwwwxwwxxwwgvfvxwwwwwwwwwwvfgUfxwwwxwxgvvxwwxwwwWffxwwggwwwVfffvfUUxwxxwfwwwwwxxgvfwwwfvwwxwwvfwhvvfgvVUwwwwwwxggffWefVexxwxxwwwwwxwxxxxxwffwwwWevwhffwxwxwwxwwwUffwffwwwwxwxgffggwgfvxxwwwwgvwxhwwwwxwxxxxwwwwwxwxwxwhvfvxwwwwwhvvxwwwwwwTTwwfffhwwwhwwgvWUevwwWevxwxfwwwwwhvxxwggwxxwwfwwvgwfwUUfvgwUffffwvvwTTwwxwwwxwxwxwxwwfwwwwwhvvwgwxfvwhxwxwwfwwwfvwhwwwwwwvvevgwwwefgwwwwgwwvxfwwwwwVgfxwxxwggffwxwwgvwWeggwwwffwgwfwwwgxfwwgvgwvwvgUgfgfvwwhvgfvwvwfvDfUvwwwwDfUffxhwxwgugwwwwvgfwwvwwgwhfFdVewvwwHdVefggWvwfffgfVfvfgggvxvwxwxwgvwwwvvvwwwxwwwwwfggfgwvwxfwwxxwgfvvewwxwwgweVgwwwwugwfvfVfeVfuwgwwwwWvwfwfgfuvwwvxwwwwwwvwewgvfFgfwgwvvfwvuWfufgvgUfwwwwhegfevwwwwwVefWvxgwfgvuvggfufeeFUgfwwUfUVwwxwwwvgfgvuguVVfvvvvveWwfvgfwTEVdVwvfhwfgweVVVfefTEwwwwxxwxxwwxwwwwxwwggvvxwfgwwfffwggwwwwwwwffvgvwwwwWffuwwxwwwwwfffwwwUVwwwwwwvxfwgfwfvgfwwwxwwxwxwwxgvgwwwxwxwxwwwvwwwwwUVggfwwfwffwfVfuvVegefVUTEuVewwwgffUEUTvgfUUxwwwfvwgvfwwwvgwwwfffwggUVxfvwWfevgVUUfffFTtwhffvwhfffeETdffwxwvwxwwwwxvwwvhwwwgwvffwvwwXwvwwwwhwwxwwxwvwgvwvgwwuwwhwvwwWwfwwwgwwwwwwggwwwwVvgwvfwwxwwxwwwwwxwxvwgwgwxvxgvfwwgvvwvXvgfwwwvwgwwhvfWgvgVvgwUVewUvwgvvwfWeUfvfWfvwfwwwwwfgwwwwxvgwwgvvwwwhwwffgwUVegvvgvvgwfggUVewxwewfgvegfwxvxxwwxwwwxwwgwwwwwxwwwwwwgwwxwggxgggwwxwwwgwvwwwwefVwwwggwwweexxwwwgxwgvggfffwwwxxwwwwwxggxxwvVffgffVWwwvfgwggffwwfWVwwwxfffwgfwgwwgffwwwfVfewvfgvfgTTweewwwwgefvvvwfgfxwwwwggffwgwfFUUtwwvvgffFEuwgvfvwwWfuwwWVfwfwxwwxxwwxwfxwwwwwwwwvvvgvfvwwgvwwwwwwwwwxwwxggwfvwggwgfwhvvwwgfgfxxwwwwwvfvvwwwfwwxvwwwxwwwxwwxxwxfvwvwwhvxwwwhvvwhgvfwwwgfvxhgwWfUWUefwUwfffvwwfvgVfeVvvvgwggfwffwvwwwfwgfgwwwvvwxwgUewefwffUffuwwwwgwUeewxvggvefewwhxwxxxwxwwxgwhhwwwxxxwwwxgvwwgwwwwwwxwwwwwwwwwwxxwwwwwvwfffggwwvwvwwvwvxggvwgwgfxwwwwgfwwfvvwgggwxgffwwwvgwwvwwwvgvwwwwwwgxgwwgggvwwgfvwggfvwwhfvwwggveeVffwwwwwfffvwwvvwwhffvwvfgffvvwwvwwwwwwwXUUefuwxhfvvwgfgvwgffffggwgvgvwxxwwwwgvxxgxxwwwxxwwvfewxgVuxwfVwwxwwwxwwhwvwVewfWfxfhwvwwgVfvvwWexwwwgvxgxxvwxxwhwxwwwxgvwfgfwwxvwgwvfvxwgwwxvwggwgUSvvEFfwgvxwwwefuwWfvwwwgvgvfgwxwwxwwvvwxgwwgvvgwgvFFVfffSUwwwgfxwgggffwvwwxwwwwwwwxxxwwwggfwgvwfwwwwwwgwwxxhwvwwvwvfffggvfwwxwxfvvgwggwwwxwwgffvxgvgwwgwwxwwwwwwwxwwwgfwfgvvwxwwwwwwwwwgffwwwwgvwwfgwuVveVefWeUfwvxwwfwfffgggfwvwwwgVggfuvgwwwwxffgwwfgvwVevwgffWUUueVeUfgwwhvvhggvffwwwwwvfxwxxwwwwxxwwvfvwwgvfgwwwxwgwgvgwwwwwwxxwxwwwwvfwvgwgfVVgwvwgwfwxgwfwwwxwwwxxwwffhgvxwwwgfffwwxwxwwwfvgfwwfffwwxwvfvwvwvvffvvweevwgwwwffvWVvvfffEEDggvwWeeuwwvfvgwgffxgvvgwffffgwxxvgwwwwwwwwwgffwgEEDgffvffVVUfwgfgfwwwvgwwwwwwwvwwxxxwvxxwhvwgwwwxwwwwwwwwfgfxwwwwxwwgwgfxgxwwwWvWhwhvvWggvwgfUgUfFxwwwgxwwvwvfWfxxxxggxxwwwhwvxwwwwwxvfWgwVfeexvwwwwvffgfxgxwwfgvfwvwWVfwvVgVVVVTExxwwwwwvwwwgfwwgwgffwfffwvxwvwwwggvVVfwwwvwweWVfveffDUTwxvxwxwwwwhvfxwwhwwwvegvgwfwwwgwwwgwvxwwwwfwfgvwvwwwwwhvWfufvfgwxwwwgwwwgfwwgvewwxwvxwxwxWwgvhwhfwhvfwfgvfgvfgwwwwwwgewfgvgwwwwfwfwfgvgvwwgwvWeFTDefeVwvwwxfwwvwxfxwwhfWvuwvgwwwgwgwwwUvegvfgvvwgweVfwgwwDETUfvwxxwxwgxvwwxwfwggwwwwwwvfvwxfvfwvwwxvgxwfwfxwwWwwwwWwgggFfvVgfwvgwefuefwgvwwwgfwwWgfgvwwwxgwgwvgwwxvwwxggwvgwfwggxvVvfwwwxffghUvfgwgvwhfwwvggvETfVfffvwwTVefggxvhfwvwggVvfgwVvwhweffvwvfxefwuvwwwXffgwfegwuWeTVfffefGTuwwgwxwwxxxgxvxwgxwwggvfgwvwwvhgvwxxwwvxwxwwgwxgwWgwuvfwwwgvvfxxgwwxwwwwgfvvxxvwxwgwwwwwwwwggxwxwwwwghvvvwwgwwgwwggwgvvwwwwwwwvvwVWefefvvvWefUfvvvwvwvgxvfwxwvwgwgvvvvvgwwwwwuvWgwwwwwVggugveUVVfgvvgUfVugffgwwxwwwwgvwxxxwvwwwwvwgwwvwwxxwfxwwfwwxxxwwgwwWuwwwvwwxwUwfwwwgfxvwxwvwwguggwhwwwwgvwwwxxwwwxgxwxgvwwwwxWvfgwfggwwwwwhfuggwfwuvvffwwhfvwwgVffdfgvvfwwwFfVvwwggwxwggwgWugvwxwfuUwgfwvvwhVfwvgwwwgewfwfDVvvgfffwGdVfggwxwxgwwwwwwxxgffwggvvgxwwxxwwwwwwwxxwwwwwgeeffvvfxwfgvgfvwwgxxggfxwgvffwwhwwwwwwvwwvwxwwwwwwwwgUwwxwwwvgwwxxwwffxwwgwffvvwwxxvwwwwgVETUUuwvwwwUfffvwvvwwwwwwvfvfgfvwwwwgffvvwxffeeUwwwffwwffvffUUUTEwfwwwevwxwwghxwwwWVvxxvwwwwwwwvwgvvgwggxxwwwfvggwxwwgwxggvvwwgwfggwwggxxfEfvvxwwxwwwgxwvwuWVfwxxwwwxxxwwxWweewxgvwxwwvWVvggwvvwwwwwwvfeVfvwvvwwhffffxfvfWVvgfggw54TvfxwwwhVgefwwwvwxgufgwfggwwwggfweewgwwwWCCegffwvvhwvvwgUdfwgfvgvxwwwggwwwwwwwwwwwwwwwwwWfeffvwwwwwwvwwwwwwfggvvfwwxxgwggfgfvfwvwvwwwvvwxvwwgffwwwxwwwxwhfwwwffwxwwxwwwwgwwvgfgggvgwwwwgfwffgvgwggfffUeexfvxgfvwgVUVfffVeuxwwvwwwwvwwwwwwwgwwfgwvgwggvfwwffveVffeUeeVVwvffgxxvfUeUfVffwxxwggxwwwwwwxxwxxwxvvwwwwwwwwhgwwwwwwvgxgfvwwgggwwwwwwvwgxwwwwwfwwvwwwwwwwwvvwwgxwxwwwxwwxwxwwwwwxwwwwwwwwwwxxwxxwwwgvwwvvwwfgwwwwwwwwwwwgfvvwfgvvfwwggwwwfwwwgwgvgwwwwwvwvgwwwwwwvfwggvvgwwvwwvvgwgwwwvwwwwwgwwgwwwwwxwwxwxwwwwxwxwxwwwwwwhwvxwwvgwwwxxvvwwxwwgffWevxwxwwxxwgwwwwxwwhvvwxwwggwxwxwhwvwgvffffVevxwxwxwxwgvgxwwxwwwxxwhvfvwxhwwgfvxwxwwffvxwwhffvwgwwgffWewwwxwwxvgwUfwvwwfgwUffwvffUVvxxxwwxxxwvfxvvwwxwwwxwwfwxxwwhwvwvwefvxxwxwwwwwwvgwvxuvfefweexxwwxxwxwwwwgwvvvwwwxwwwwwffvghwWgvwwwwgVufwVUuvvvFfxxwxvvfwwffvxwwxwhvwwwwwvwwwggfvvvvffgxwhwWegfwwwffvvwUefVevDUxxhwwwWwggwwWVvgfVwwgWeVffGTedVxwhwwfwwwvvwgwwxwhwxxwxwvwwwwwgwwwVwwwwgvgvWfvvhuwwxfvfwhvwwHfvfvWfuVvwgfwxwxwwgvhfvwWvgwwwwwwffgggwvwwxwxwuwwwvwwWfuvgVfefffWevwvvVegewwXffvhfwwwwfwgUfwXuuffgeVWvvWfvwwfwvwefwWevwWvfgwWefVfvFTuvvvveWwvwfgwfgUffvTEVfwgTfUffDUefvwxwwxxwwwwwfvxwwwwwxwwwwxwwwwwwwvfgwwwwwxwwwwxffvwwvfgwwweVwxwwwwwwwwxxxwwxwwgfgwwxxwgvfwwwwVffwwwwffgVexxwxwwwwgwfwxxwwxwgwgwwwwgvfvfwwxwgvwwwwwfUfwwgffVffUUwwwwhvgwwwwwwgfxhgvffvWUuvfUVfexxwwvwwwWugxxwwxwwwxwvwwwWwgwWegvhwxfwwwwWwwXugfwgvwWugfgwxxgwvvgfwwgvwwwwwwgvwggwvwxwwvgwgfwwgwwghvvwwFffuvhgwwwwwWffwgufvxwwvwvwxWfwhufVvgfvgvvwwwggvfvhUwfgfvwhfffv6SEdvwgfwfvvwUwffvvfwfxwwwvw3UDwwwfvTfVffvwxwxwwxxxgvwvxwwwxwxxgxwwwwxgvvwgwwwwxxxwfwffvwwvwvxxxwwxxwwxwwwxwwwxVfvweVfveggwhvgwvwvUfefvwwgwwffVeVwxxffwwvwgwwwwwxxwxxfwfwfgwwwwxfwwvwgwvwxhwvvhvvSUDVfwwwwxVufefwhvgwvwwhgggwhvgffFTf6UefwwwhffxxxxxwgwwwvxwxwxvvwhxvwwxwxfwxxwwwwvvvfgwWfffwwwwxwwwwfggwfxhvvwwgvgvwGVvwvfwvwvwgwfxeuwwvuwfWgxwuvwhfwfvgvVVfhgxgwfgeefvWfvwfvwvvvWWggdfwwwwwgvgfvwwwwhvvvfwueVvvGVvVVvfvdf5fUVVvxgvvGfVdVvgvWVvvvgUWffwfffTffSTwweVWwxxeeVfgSTvvvwwxxwxwvfwwvxwwhwxxvwwxwxwxwvgwwffwwxwwwxwwwwwwfwxvwwwffwfwwvwghvhwwwwfwxwwxxfwvfvgwwXwgwWgvvwvwwfwffwwwwfxwvxxxwvvwffwvgwvxgvwvwwvwvgxwvfwwffwvwwwVvwvgUewwwwwffVUffwwefWwwwWgvWgfvfWUefvwwgevwwwWvgUeffVvwxxxhxwwwwxwwgwwwxxwwxwwwxwwwwwwvgxvfvgffwvfgeegxvvxgVevwggwggvffwxvvwwxwhfwwwwwwwwwwwwvwwwwwwwfUfxwwwggvwwwwwggwWVveewfwwwwgffvWVvxvvffvwwwwgefxggwwwwgfvgvvgwwVfewwgwgffvxggvfgvFEufgvwUDUwwwwwffvUfwwffffwwTTwwwfweexxwxxvxwwxwwgwxwxwwwwwwwwgwwxvwvxgvvwfWfgwwwwwWvVhwxvWfxwfgwfgwdfxxgxxvwgwxwwwgxwgWwwwxwwgfUxxwwwxwvWgwfvVVxfwwxwwwwVgfwhwwwwggvfvxvwwggwwVwVwgweVxgwxwgvVfUvgxfVwvwUgUfwfTEwwwwgvevwgvffvfFUxxwvwxfgeevvGfffVwvwxwwgwfwhvwxgvwwwvwvgwvwwfvwwwuvwhvfwwxgwgvgwxvxwxfWwffvgwvwwxvvwxwfwwxvvxvfgxwgfwwvfwwugFfgufgwwwwwewfgvUfwvWfvvfvwxfUwhvvgggVvffgwgfxvwgegfefwwhwgwggDUfweffgfhwwgfVeTvwvgvfVgfufwVvTVeugwefwwfWfxfweffTEvxwxwwxwgwwwxwwxxgwxwwwwxxwxwwxwwwwwwwwgwvwvwegfwvxwwwvhvfwgwvvwwwwvxfgwugxwvwwwwwwxvwxwwffvwvwwgwvWwwgwwwxugwvwwfwvgwwwwwwvWvvwvgwvfwwvwfgvwfwwxwwvgwwwwwfgwwwwxwfgwvwWgvwwWufvvggwVvUVefwfgvUVeefwvgfVeUvvxwwXeUVwfvgwvgwfgvfvfgwVvvxxwxwwwwwwwvvwwwhwwvxwfvvvfwwgwwwwwgefwxwwwgwfggwwgveevvgwwvvgwvxwwwxwwxxvvwwvwgfwxxvvvgfwvvwgVgwgwxwwwxgfuvwwwwvwgvxgvggeewxxxwwxwxwwgxufwgvvwvvwxggfwfvwvFEewfwwhvvvggTTvwwgfvffwFEevvfgfgVwffwfFEewxwvffVgfvvvxxwwwwwwggwwwwxwxwwwwxwwxwxwwwwwwwvvgwxwwxwwwwxwwwgwwwwxwwwxxwwwwhgwwwvgxhwvwwxwwwwwwwvfvgwwwgwwvvwwwgwwwggwwwwvwgvwwwwwwwvvfgwfwxxwwwwwwvwwfgxwvwwwvgwwwwwwvggfgvwwwwwwwwvvfwwggwwwfwgvgvvwgwwwgwwwwwggvwwvwgwwwvwwgwwxwxghvwxwwwwxwxgfgwwxghwwxwwwfwwffxwwwgffvgvvxwwfvvwwgvfffwgfgwfwgvvwxwwxwwwwwxxwxwwwgwwwggfxgwwwvfggvwwwwfvgvwwvgVVfvxwwgwfwwwhwvweewwhgfgfwvwvgwvgwvgfffvwwwwwwwwwWVvwwvfUUfgffgFDEuwwwwffggffwgffDTTwgwwwffvfwfgeefgffeVwwwwwwwwxwwwfwwwvfggxwwfxwwhxvfgwgxwvvfVggwgvffgfgvvwwfggwggwfggugwwxggxghxxwfxwxxwwvwgwwwvxwwgVfewwwgwxwwgwwwgfxffwwxwwvfggvvwwggfvfwwgxxxxfgggwwfvWgVFTUtgwwvggvefggVffufwgvgVfeufvguFTUTfvgwwvvwfwfvvfhfgfwxxxwgwwwwwwwwgwwwxwwxwgwwvfgwgwvgfgvwvwwwwwuvewxwwwgwwwxwgwwwwwxwxxwwwvffggxwvgwxwwVVwwfffxwwwvfwvvhvgfvwffwxhwwwgfgvwvvgfggvffwwxxwwwwgggvwxgvfwwwTEvgUUUwgwwwwfeguwwgfvffxwfUUffUUUvffDUwwvvfxwwvwgufwwvwxwxwgwwwwwhhwwggggwwxgvgggwxvgfvgwwwwxvvvvffgwwwwvwvgwwwwfwwvwxwwwwgxwwwwxxwwwwwwwwfwxwxgwwwwwwwwgfvggfvwwxwwwwwwgwwhwvwwxfwggwfgwwfwwvvgvvfxvfvffwgfwwwwxwwgwxvfvVVfvgefvffwwwwwwfffwwwvwWUuwhUeffgffvvvggvwhfvvxwwwvfwfwvxxwxwwgwwfxwgvvwhxwxvvghfxwWvgvwvwfWvfxvxxWvvgwxewwXwugeWfuVfdVvvxwxwwwwVwwguvxgwwwwwfwwvxgvwwfgwvhwvwwgfdfwvFfuwxwfEffgvewhwvwvgwwVwwhvgEfvfVdegvvxwxgvgeWvwwwfgwvgegeeWff6UgvwfhvWvwwweWvvgwwfVgwgwdVU5UeVSUxxgwwwxwwwfgvwwwxwwxwgwxxxwwxwvwwwfvegvhwhfgvfwgWwvgfwfgvfgvfwwwwwwxwwwvvgwxwwhgvVwvgvwwwwwvwwwgvwwfgvgvfgveVgvwxwwxwwwfwVvggvwwhvwwwwgvwhwfvgwveWwwwwwwwwwfgwvwgvgvfgvVeeffDETewwvwvwwwvgwWfevwgUgvfgvegwGTDewWfuxwwwxxwwwwwxwwwwwxxwwxwwwwxxfwwwggwfvfgfxwxxwxwwwgwvwvwwwwwwwvWeuwxwwwwwwvvxwwwgvfvxwwggfxwwffffgvwwwwwwwwwwwgVevwwwwgffVeuwfwgfvgwfffuVvxwwwwvgwwwgvfvfwwggwgffVeuVevwwUfvvvWfeeVTEUfegfWTEUUwwfgeVfwxfffffvgfffUVUDEeefffDExxxwwwxwwwwxxxwwwwwwwxxxwwwgvwgwxxwwwxwwwwwwxxffvwwxxxwwwwwxwwwwwgfvwVefgfwwwwxwwwgvVefggxwwggfgfffwwwwgfwwwxwxfwxwgvwwwwwxwggwwwwwxwxgwwvwwwTTfffgvwwwUVVeVwwxfgwvxhffvwfgwvWeeUfuwvvwGEuxwxxfwwwwggwwwwxwxwwwxwwxwwvvxwwvgffxwwwwwwwvwwfgvvfwwvffwwggwwwwwxxwxwwwvwwwwwwwgVuwgffvwwwwwwwgwvfwvgffgvfwfgfvvwwwxwfwgfwvffwwwxwwwwwwwwwgwwwvgwvgwvgvgwwgwfgfggfffvfeUewffffeUUeewwvffgfvwwffgfvfUVVUffeVVVUUffVfvxxxxwwwxwwwwwwwwxwwwxwwwwwwwxhffvgwfwvwwwwwxxwxxfwfvfgwwwwwwwwwwxwwwwwxvwhvwwxwwwfwffwwwgvwwwgvwwhwxxgvvfffgvfvfwwvgwwwwwwgffwwwfwfgwxwwvwxwxwwvfevVgwfffgvgwwwWVvvgwgwwVfveVUVefffwgffwvwvwgUfvfvwxhfvggWUUeUVeegggffwwgwwxxwwwwxxxwwwwwwwgwxwwwxxwwvwwfvxgvxffvfeexfwfvfVWxwwhvvfffwvVfeUwxwwwwxxgfvgvxwwwwwwwvvxwwxwffgwxwwwwwwhwwffuUfuxffxxwxwgVeeewwfUVgewxwgwwvgvvvgfvVfwwwwgffVUUwgxwgvvfvfvefffFUtwvgvfffwvwggUEFTEwwgwvwggvfvffeVeUewxwwxxwxfwwwwxwfgxwwvwvwwfwwxxwvgwwxewwfwwwwwgvwwwvwwxxVwffwfgwwwwwvxgvxwwggwhwwwxwgwvwwwxwVuwwwwwwwwxwwwvWVvwwwwgvewwwhgvgwwWfwgfvWuwwwxwwwwggevggvWVwfgFffefvfwffwwwwvfFefwwwvwVfvwhwvGdffffvugwwgwevvwwhvgdTffgxwwwwwwwwgvxwxwwwwwxwwwwwxxgwwgfvwwhvwvwwwgvwwwwhfwwvwxhvvgwwwwwxwwwwxxwwwwgfwwvvvwwfwvvwggwfvfgwwwhfgvwwwwwffvghwwggvwxhfvwvvffwwfwggfwwhfvwvwwwxgvwwhUegwwfffwgufWUveeWffvwgeVfwgwUefWggwwxVVUwffwWwVVfwwfwvugefwwwwxwwxwxvwgwgxefvwxxwxwvwwfvxvwwwxwxwwwgwxufvweggvvwVVxxwwxxxwgfvwffvwwwxwwwwwffvgwwgWvVgwwwfVufweVeffvDUxxwwwwvwwfgwwxxwhwgwvwwfgwwwgfvvwwffvgvhWgvfwwwfgwwwVUuWevdfxwxhwwgXvwgwwgeuwXffwvwGffefGTUeVxxwgxwewwfwgvwwWgfwxxxwwwwwwwvgwwfwwwggwgwwxhxwewvfwhvwWwggvWWfFgffvxwwwgxwwxVvVfUffvwwwvgggvvggwwvwfwwwufvwvwwWgfVeVfVVfgGTuwwwwgffwVvgwwwwwfgvwgvvWggWfeeVWWWfevwxwwuwwwgvwgffgwWVfVWfVevgwggvvggvvvuuvUffgefevwfVfdTUDUEfxxwxxxxwwwxvvwxwxwwxwyxxwxxwwwxxhgwwwxwffvwxwwwwvvUfwxwxwwxwfwvxxxwxwxvvvwxwwgffwwxffvwwvwwfffUexxwwwxvwwwxwwwwxwxvwwwfvfffwxxwwggwwxfffwxfvfvvwUfxhgwwxwxxxwWevgvggggWUfwwgfVefwwwwwwxfwwfvwfwggfvwxwwwwxwwwwxwwxxxwwwwwwxwwxwwxwwfwgwwxwwwwgwWUvxwwwwfwgffwfgvfeWvxwwhvfwwggfffvVevwwUffgwgUVfVTEeUffvWTEUUuwwwxwwwwwvffgvxwwwwvvwwwgfgffvwgwvgfgWUvwwwfwwwwwwwwgffvwwwwgVeVUwxfvfffwwweefffgveVfUeUDTfffffDTwxxwxwXwvhwvvwvgevvwxhhfwhgxxhwxwvhwxvvvugxhggwegwxedfuguefuuwVvwxhwggveFwhfuvhwwhwvwwwwvwvhgwvWVgwegvgeffwwfeuvvw5UwwwxwwvWwxvvugwwxhgwweFwxeetvWfvfvvfvwwhwvhggwwwvvgxfdfvvwFeXwvWVggwvwwgfhwfwwW5UugwWSeWffUfTfwxwwhwwwxwfgwwgwWfgxwvxwwwxxwwwxwgfghvxfvvgvWwgfgggfgggwhvwxwwwxweggvwwwfgwwwvewhwfhfwwgwvwwwwvvwWfewFDEewVffffgguxxwgxwwggwgvwwxwwgvfwVWgwwvgwgxwwwhwwwwwwwgwvwWWffwffggfgwvwvwvweefvwvwwwwweWDTTfuvVefvvgwgwxwxxwxhwwwvvgvxfufxxwwxwwwwwwwvxhwxxwhwxwvwwwxwgwWegwxvvvwvvvfugFfhgwvxwwwwxfvewxxwxxvhwwuvxfvxwgwWUfvgwxfwfvhUvUvevETxxxgxwvwwwgwwgxgfgvwwwwvwgfwUwvgVewxwwwgUfwgfwvugwwweewwwwgfgvwgfgfVgVDgggwfgfvgwgdVVVwhvwxxxwwfgwxWgwwgfgwgxwvwgwwggwwxxgwfhwgwgvwwxvvwhwvhxggwWfwvwxxfwwwwvfgvvWvugggwvfvwgvvxwfgggvgDUwgeffgfxgwgvVEVfwwgfwvgxwwxgwvwgghggeggvvvWvvhwwhvfVfvwgwvggwdfuwufggwvxggwwwgUgvVwgefegfxuvwevTeeufwVfwweffwgfufETfwwwwwwxwvwwwwgeggwvwfwvxwwxxwwxwwwxwwwxgwwxwxvxxxwgfgwwwwgvvvvxvvwwWvvwgwvvwvvwxvgfvvvgfvgwwwxvwvuwWUvwwgwfgggfwegUeevwfvvUeeVfwwwxwxwxwwwwwwgvwvgwwwwwvvvwwwwvvvgwwuwwgwggwwwwfwfuwwxwwwvvwgwggfVUVfwwwwXUVvegvgfggfwgeggwwfgfwxxxwwvxwwfwggwfgffxwxxwwwxwwxwwwwwwxwxwgwwgfvvuVfxwwggvfggwvgVeffwwVVxwwwxgvgffxwwwwwwwwwwwgwwwgvfvVfewwvggvvwggvfffVTggxxwwgwfwwvvxVVffvxwwwwwwwgwvgfVffwwwwwwfUfxwwwgwvwwwwwggvgeuwwgwffvfvwwwUDUUfwwwwwvwvVVffffwEEvvwwhwwwvgefgwgfvgvxxxxwwvgwwwwxxwxwgwvvwwwwwwgggvwwxvwvvhwvvvvFVgwvgwgvfwuvwWggffdwwvevgWxwwvugFfgvfeUe6eFfxwwfwVVUfdvvvVVxxwvhwgwgweuwvgxwwwwffwvgwxuvvwwguevvfFVvggvfvfVVvgvvggfeefwVfgvgFfVvvfffVVWVStwggVvxxwvVWfUSdeewxvxxwwwxwwxfwhgfxxwgxwxxvxxwwwxxxwgwgxxxwwwwwwwwggfwwwwwgxggvwxvwvwgwxwggfwwxgfhvwhgwghwwVwwwfUehfgwgwwgVUvwwgevfwxxxwwvgwghgvgxwvwwwvxwvggfwwfwgghwwvxvWwwxufwhvwxwwwggfgwwgwWfwweUeWwfvvufwfwwwfUewwwVwvfuffVwwwwgwxwwwgvgfvfvgfeexwwwwwxwvwxwwxwwxwwwfggwfWfffxeeVwwvvgvvfWvwwgfgVwwwfeewwwxwwwwxwvfwffxgwwgUUufvwwfffwhfufvvfETxwxgxwfwfxfUxwgeWwfwwvffxwvvvwgVewxwwggfvwxwwveVxvwgwwwVewwfwVFUtwvgwfffVDuwgfvvgwfUuvggUvfVwgfwxwvwwwxfuwgwgxwwgfwwwwgwxxwxwxgvwxxxwxhvwwwwxwwWvwgggwggfwxxwwwwxwfvugvvwgwvwVwvwwwwwwvwwwxhVffFfvhfvvwfvwwwgfffEvwwwvwfxwxxxgggWuwfwvxwwguvvWVwwwfgwgwhxwwUwwwwwwwvxwwxwwVVwxwxwgDfwxvuvVffffvvwgwwgVddwwgwfefgfwxwwwwxwwwvwwwfvwwxfgwwvxxxxwwwwwwwxwgwwwwxwxvgxwwwwwfgvvvxwvwgwwwwvwwffvxxvgwvgvgvggwvwwggwvvVffvwWufwgVVfUVVfevgvwvgeugwwwwwwxwwwwgfwxgvvfgvwwffvwvwxwxwvwwwfgwvfggwwwfggffwxxvwvwfwWeeUVuwwxhWgvgffvggVVfevWwwewwwwwwfwxwwfvxwfxgvfxxwwxxwwwgwwwvwxwxwwwwwwwwvwUggxwxwwxgwwwwwwvwxwwffwwwvwwhvfvvffwxfxvgwwfgETwwUUUwgwxxwwwwfvVwwgfwwxxwxwwwggwvfvvffgwwwwwwgvvvwwgfwxwweewwfffggxgwxhgwvwwgfvffwffgffUUUVUVDUwwvwgxwwfggWfwwvgvvwxwffwwxwwgwfgwwgwggwvxfvwxwghxwwwxwwwwvvgfvwgvwxwwwwwvwwwwfwwvwwxxgwvwwfvggwfwwgwvxwvwwxwwwvfwfeevffVvwwwxwwwfffffwwwgwwwwwwwxwwwwvhgfwvvfgvwwwxwvwffwwwfvxwwggfvwggfwwxwwwwwvwwwwgwgvvwggWUefffVUvfvwgwvxxxfggfvfwwwhvwwggggwgfxwvfgWvwwvhwxwhxgwgxwgwxgggfgvvfgvgvvvxvgggvwgggggvexgffwwgxwgggvvgwgxxwwgwggfuwWwfTUDwfuffVfwgggfgwvewwgxxxwxvhhwxfwwggfvfxgggvxwhwfwgvwwwgeeVxxwwwvwwgwwgwfvvfwfTUDwfwegeeVVfwgvvfwwfgfwghfgvvwwwxxwxwwwwwwvfgwwxwwxwwxwwwwwwwgvwwwwwxwwwwxwwwwwvfgffvVexwxxwwwwwgwfwxwwxwwwffwwxwgwgwwwwffewwgfffUfUUxxxwwwwwwxwwxwwxggfwwwwwwfgfwwwgfgwxwwvffwwwwwffeeVwwxwwwwwwwgvggvwhgfgfgUfgvVfUUexxwxgxwgwwuwwWvVxwwwwwwxxwhxwwwWvWvxxfwgxwwwvwXvWvugwgWvWvvvxxwwwwgwgevwgfWvwwwggvwwggwwfxgfggewegfwgwggf6T5dfffvxwwwgvvvfwgwxwgwwwguwhgggufgfgfWvwwxgwgvwwvwvwgwvxgxvGffeggwvvfggwvvfgvfwewewwgwdfUwwwgwCUCfffgxwxwwwvwxfwwwvxwxxwgwxxxwvxxfwwwwxwxwxxwfwvwwxwxffvgxxwwxxvvwwxfgwwvwwxfUvxwVfVgfggvwwvghww5UfWeggwwdedVfxxwwwxwxwwwxwwwxxwwfwvwvfwwxvvvgwhfwhwggwwwwUfffVgxwwvefvVewwgvgvvxhgwwgvgwfGfEfffffvWSexwwxhwvxwxvwwwwvfffxwxxwxwwwggxwwwwwwxwxwwxwwwvvgwfwwwwwfgfggvvvwwwwwwwgvxgvgvffvwwwwwgVuwgffgfwxwwgvvfvfgfgUVefffffUVUUxxwwwxwwwgwwwwwwwwwwwvwvvgvwwvgwwwvwvwwwxwwwwgwfvfgfvfgwwfvfvfwggwgfvffwwwfvffgfUVUUVffefVeUffeevwwwxxwwwxfvgvwffvwwxxwwwwwwwwxwwwwwwwwxwxxwwxwwfgwwwfwwwwvvvxwxwwwwwwwfvgwwfgvvvwgwvfwvwwfgwwwVgwwwXvfwwVffVevfvfgvwfUeegwwhvvwxxwxwwvwxxwwwxwwffVgwwvgffvvvvuxwggxwxvwxgfgffvvwggvwvfvvwwvWfegfwwwxhfgvvVUeffWVVwvWUVvwwvvwwxwxwvgwwwgwxxxwxxwxwwwxwwwxxwxwwwwgffxxxwwwwwxwxxvfwwwwwwwwwweVwgfffgwwvwxwwwvwgwVTTVVuwwwwgfffUvxxwwxwwxgwwxwwgwvgwvxxwwwwwwwwxwwwwxWfefgfwvgwfggffvxvgfffwxvvwxvgwvgeeUEEvvwwwVewwxxwvfwhgvwwwwwfffffwxxvwwwwwwwwwwwwfgvwwwwhfgvfwwfvwgvwwfgvffffvwwwwwvxvwwVVfgfwvwvwwwgvfgvvwgfwwgeUVUvwwgffgvffwwgDETffwwwwxwwwwwwgwgxfwvgwwwwfwwgvwwwfffwwwwfvwgvgfwwxwwffvwwvwweVfwwvggffffwgwwwGTDevgfwwwwffvwWfevwgUfwwgwxwxfwwwwwwgwgfVwxwvhwwgggwxwxwwwgghwwwwwwvvfgwwhvggwwgxwwVVvfwwwwwgxwgwgfwfVVwwgwxxxggvggvwwffgfgVTdwwvwwwgwfEEfggffwxwxxxwvggwvwxxxwwxgvvggwwwgxwfWwwwwggfgwefwwwxxwwfWfvwwwwwggwhwevfffvfVTdffwfvefwwggVTdfggfxxxxwxwwwwvvwwwwwwxxwwwwwwwwwwwwwghwwwwwwwwxwwwwwwxwwwwwwfwwwwvvwwwwvvvghwwwwwwwxwwwvfgwwvwgghwggwwwvvwwvwvwwwwwwwwxwwggvwfwwwwwwwwgwwvvwwgwwwvvwwwwwvvgvfxwwwwwwwwwggwvvwvwgwvwfvgwwwvwwwgggwwwwvgwwwgwvgwgwwwvwwggggVwwwgfwwWvuwwhwxwxwwxwwgvgvvwfwwwxgwgvvhvwwxVwvfwxxwWwwgwhvwXfvWewgfwwfwwgwfUVeFUdwwxwwgwxwgvwxwxvwwwdfgwfwwXfufUVuuVvfGevwfwhwfgfgwWefvvvvwwfweVggfffWfefegeVWefFTuwwwwfwewwxwgggffwwXvvWfvVfwwvwvvwefgfvwewvvgwUfeffefDUwwwxfwwhfuwwwewuffwxxxxfwwxvwwxxxwxvxfvwxxwggwgxwhvvfwvvwuuwEfgwewwwwgVdvegegSUUgvgxwfwwwwxVwwwgGfffEfgxffvvweveuefUfwxwwwvfxeweuvwwgvwwggvfgfheudfwfefdef5UwxhwggggwwxvvweweuvvvwfwxwggWwgwwgggWdvWfgwxhhfgVgWSeegwxwwxwxwgwwVwgvwhffxwwwxxxwwwgwxgxwwxvggfxwhffxhffwffguwhwwxwxwVwgvwXffwfwxvxgffwguwwwwffgugvgffgvWffgwvgvwfwhggffwgvwxffvgvwvXffggffgwwguxwvgfvxxgwvggwwgwwhvwwwwffvwxwwwwwVwvwefvffvfwffvVwfwwxvwxxwwxhvwfffwvffvwxxvwvvwxgxwwxgwvwwxwxfwfgwxfufwwvvgvwgVewvgwXevgfvfwxTTVxwwxwwxwwvvwUfxwhvgfvvgfwwfffwxeeVeegUewxwwwwvgwwfffffxwwwgeWvvfwwUUewweegffgETwxxxhwwvvgwfvgxfvgwwwfvgwwwgUfvxgwgvgfUvwgUfffwWDuwwwVgUVwwWgwwwwhvvwggWfvwXgvvghwwvgwuggvfwwwwwwgwwwgwwxwvvgwwwvvwgwwwwfwwggwwwwwwfgvwwvwvfggffwWffvwxvgwwwxwwwwufugggvvhgvgvVfffvfwxwfgvfwgfvhgwwgvwfgwwvvvgfvWgffffgfgwwwvwhvvwwxvwwhvvxwwhwgfgwwwxwxegwxuvvvwfvgvwwwwwffvwwwffvffwwxvxwwvwfgfevwfwvwxwxwgvwwwvvwwxxggwvgwhfwwwhwvwweweuvvwvwvvwgwgwfvgwwVeffvUffvvgfgWvgfwvfvvvWVvwhwgwwgVwTfTffggvwvvvvgwwwhVvvffvewggfwwgfgwwVVfefdefvwvwgeefgxvwhggxfuwdfevwfxvwfvwwwwggWfwvwxxxgHfFevVVfgeggwwvwvxwghwvwxwwwfvxhwwvwgvgwgwwwvgwvgwfwWugvfwhwwxwwxwfwffvwfffwfxxwwwgufwwwgfwwhwwuffgvgVfwWefwxhwwwxwwwwfwfwwweffwfxxwwxwgefvwwWfwfvwgVfxhfvwgggefvwUffggwhfwfggefffvgfghwxvwwfffxgxvwwwhfffwwXfwvvvggvweffffvfvwfffwvggwwevvwwwgfgxwwwvwwwhgwwwfvgwwwvgwggvwvwffvwwwwwwwwwwwwfggwgwgwwgfwwvxvwwwwfggwwwffgVvvvvgegvwefgxwwxwwwvgwwwwwfefvgfvvwwwwwfwevgvvwwwgvvxwwewwwuvwfUgfffufgvgewvguvwefvfvevggwwwxgfwwwfwwwxwwwwuwwwwwwVewvffwXffwwgfwvwgwVvwwwgxXfvvwxwxwwhwwxxwfwwfghwxhgvwhxxwxwvwwwxgwxxwhwxwwwwxwwwwxwggwvxgwgwwgfwwhvwewwegwwgwVUVvggvwhwvwgggfgvewfgUfeWfgwWfgwxWfgwgwgewfgvwhwvwwVggWvfwxuwvfvwwfwWUVvwvwwwVggfwxwvwwxffvhwwhwwxgwgwwwgewfgvwUfegwwuwevvVvwwvvfwwVvwvvVvVvvwwgwxwwxwwgfwwggfgfxwwxwvxwwwwwgvxxwwwwxwwwgvwwwwggvwwwwvfgxvgwwwwVVxfvwgfggwwVVTUEgvxwwwwwwxwwxwgeeeVwwwxuVfggefVfgfeVwwwggwwwwffffwwwwfgffwwwwefVwwvggffeEExvvxwwxggvvwvgwxwwwvgwvgxvxwgffvwwggffVTwwvwxwgffwfgeeffwwwvwxxwwVwwwwewwwwwwwvwwgwwgwwuwwgwwwxxvwwwwxwxfwwwuwvwuhwwgvWgVwxwwghwvgfFfvwwfdvwgvgwvwwwwgvwwwwwgwwhUfgwvwwwfwwwwfWfevwxwwwfwwxguvwgwfwvugVgfgdfefuwvhwwgfFfUfwwwwwxwwUfwvwxxxwgvWfvwxwwvxgwwwvwwUfeffvwvgwwwvgwwwweVfVvwxwwwgwxwgvwwwvfwwgwvwwxwxwwwvwwwxxxwwwwvxvwhwwwxxwwwxwfgvwgwwxwvwwwwVfwwvwffwwwVfuffwgfvwwxwwgvvxgfvwgeWgvwwwgvfwwgwvwwvgvvwgfwgvwwfwufggfvwgvfwvwfvVgufgfwgwuffwxggwwhvggwvgwgwvwgxvwwvgvgwvgvfgfvvwwwXwfwwgfgvggwfwfgwfgwwwgwwwwwwxwwwwwwwxwwwwxxxwwxwwwwwwwwwwwwwxxwwwwwxwwwwwwwwwxxwwwwxwwwwgfvwffwwwggwwggvwwwwfwwwwxwfwggwwvwgwwwwhgvvwwwwwwwwwwvvwwxwhwvvgfwffvvvfwwvvwgwwfffgvfwwvwwxwwwwxvwgwwxwwwxwwxwwvfwwvggffwwwvwgwwwwvgwxwxwwwwwwxwwgfgwwwwvvvwwwwwwwwwvvxwwwvwxvwxwwvwvwwxwwwxvwwxxwvvwwgvgwwvvgfgvvwegewwvgwwwfwfwfeegeefffVgfwwwgfwwwgfvwwvwxgfgfevfWwvgfwfvvggVfvffuvwvwvgvfWuvfvffvwwfUfffVeUgwwffUVufwffvggvvfgwvfggvgffgwwUvwwevwfvvgwvwgwwVeVeUgvgffwwWggvwWfVvvfwwgvggvvvwvwwwgwvwxwwhgvveWwwwwgggwxwxvgwwwxwwwwwwwxgwxwwgwwxwwwxvggwvgwvvgWgwwxwxwgwvgwxvfvgfweVxwvwggVvfvwwwxwwwwwgWfuwwwwevfWfegfgfvwWvWfgwwvwvggwffxwgffwwfffvwwfgfffwwffVVgwwwgggvvwgfvwxffvwgvwwwwwwgwxwwwwwgwwfgveewxwwvvfgwggeuegvfffwwvgwgwwvvwwxwggvwXvvWwvggwwwwgvvwwwwvwfvfxgwwgwgwwxwwwwwwwwvggvgfvfvggwwwwfWfwwvvuwvwgvwUVvwwwwwWfeVfwwwxxwwgfwfwwvfgVgfVfevwwwfvvgvvggffwwwwgfvwwwfvgvfgwgfvgvVVegfvxwgwggwgvvgweVevgwwvwwgfgvvwwxwgwfvvwwwwwvwggwwgffffguvefeVgwwvwwwwgwgvfvwgwwgwgwvwwgwfgwgvvwwwwwwwwgvfffgxwgwfwgwwwwwxxwxwxwgvvfgggfvfhvvwwxxwgwgvwwwwxwxwguUVwwgeuwwggvwvgwwxwwwwwwwgvgeVfweefwwwwwwwwgwwwwwfwvfWwwxwwvwggwWWuffVffeeUgvvwggwvVffugwwwwhwveVwwvufxwxwwwwgwwxwwwwUVwweefvgefevfvgfwwwwwgwwwgwxwgvfwwwwggfwxvwfwwwwwwwwwwwggvwvwwwwwxgvwwwxwxvgwgffvgwwfwwvxwwwxxvfvfWefwvwfgwwwwwghvvhfvwwwwwvfwgfffgggvvwvwvwwwvvvwxfgvvwwxfwxvwwvUfVUfffwwgfwxvwwfwwwwwwgxwwgvwwhgwvwwxxwwxxVUuwgwwgffgwvwwwvwwgwwwxxwwvwwvvgxwxhfwugvexwwxwwwvwvwwwwxxxwgwgvwwwwwwwwwwwxwvgvgwwWvgWvvgffxwwwwgfgegeUwgwwvewwXwwwxxvvfvfgfwfwwxwwwegeUfvvVvwgwwwwefwgfvwwgwgwgwgfwvggvgegveWeUVvwwxfwfwggwvwwhwwwwgvewwwWvvwxhxwggvffwewveggwvggvxwfgUVeegfgvwwfwggwwwgwwwfwffvgfxgwwwxwwwfwvvvwwvvwwhgvgwwvwwxxgwvwwfwwwwgvfgvffgwgwfVgwwwggvgVwUffffxwwvxewfwvwwwwwvvgffvfvfwfvvgwUfegfffwvwwvgWufVwUgufwwgxwxgwwvgVwewuwwVfffvufffwwfwhvgwwgUvgwfvUvfwvfvwgwwxvgvhwgwvgfffgeWwvgvffWfffvgffwwwwgwxgwwwwvgwgwxwwgwwwwwgffwwgwxgxwxvwxwwwwwwuVvWwvwxwgfgvuvwwvxwwgVVwwwfVVUhwwwwwgwfwvwwwwvwvwvgvWVUvvgwhWfVfvvwwwgvwwffwfwwvxwwvwwgvguUfVfvwwwWVUvuwwwwxwwwwwwwvggfvvwwwWVUfvvwwgwvwfwxxvwvgwfgvgvvfuVguvuggVgvwhwwxwwwvfwwwffwhvxxwwwwwwwwwfvwwwxxwwwwxxwwxwwwwvfvgwgvxxfffwwwgffwwwwfUfwvVeffwfgwwwwgwfffgwhgvhfvvvggeefgwfgghwefVvwwvwgffwwwffvwgfwwwwhvvwwwgvffeVfgvwwxeVVwwggwxhfwwggweefwwwwxxffgvwwXVfwwwwXffuwgfvwvffffwgwvvwgvvgwvwwvvwxwfwwwwggwxxxxwxwgwwwgwvwwwwwxxwwwxwxvwwvvvgwwwwwggwwwwwwuuwwwvfWgwfvVWfwgwwwwvuwwwwgvwgwfwvvwgvfvgggwvfWgvgwwvwwwvfgvvwvfggfgwvwfgvwfufuUfgfvfgwWVfvwwxwwxwxwwgvwwghwggwgwwwwfwfgfvvvgwwwgvvwwfWfvfvvvgwwufwwwwwwwwwxfwwwxgfvwvwvwwxwwwxwwwwwwwxwxxwwwxwwwxxwwwxxwwUfwwvwwwwxhvVfwwWVfWwwfwvwwgvggvwefwwwffwgwgwxgVwfguvwfwvwwuwwwwxXfvgwwfwwwwwwwwwwwwxXfvEUvwvwwwwwwwwwwwwxwwwxxxfwvwuvwfwxwwwWevwgwwxxxxxHUewgWgwwwxwwxwxwfwwwxgvxwwwwwvvwfvxwxwwxwwxxgwvwwwxwwwwwgvgwwwgwwwwwwwwwwgvvwwgwwffxwwvgffffwwvwwwwwfgwvgwvgvfffffhwfgwwvvwwgffffwwwwwwwfwgwvwwwwwfffffxgwgwwgwvgwfffffwwwwwwwwgxxxwwwwwwwwwvwvffxwvwvgwvgwwwfffffwxwwwwvgffvvvgfffwvfwwwhgvxxfgwwvwwvwgwwwgwhwwfvggwxwwfwwwwwwffffwxwfwwxxfwvwwvwwxxwuffhfvwwwgffwwvgwwwwxwwVvfgvwwwxWevvgwvwfgwwwgvegwwwxwWgvgwhVgwvvwwvfwUUefgwvgfwwwwffvgvfgwwxwwxgfwwgwwxwwwvegvwwwgfvvgxXeUvvgvfwwwvggwwwxhwwgvwwwwwgfwxwwwwwwXefwggxxwwxwwwhvwwwxwwfwxxxwwgvwwwxwwwXevwwwwhggwhvVefgwwgfwwvgffwwwgUfwfgvwfwwwfvggwfgvwwwwgfgvvVefwwgvfvhfvwgfwgfwgwffvgxxffvwwvwGTewvwwwwhgggwxfvwwfwvxfvgfgwwwvwxgvvvxwDUfgwgwvwwwUfwwfffwfvwwwwwwxxvwxxvwwwxxwwwxxxwxvxvwwwxxxwwwwwvwwwffwwxxwwwwxwwwwfUfgxxhgwwwxegvwxvgwvfgVfxxwwwwwxxwwwwwwwwwwwwxhgwvwwvfgwxvvwevvefxxwwwhwwwwwwwwxwwhvggfwwwhffvfxxwwwwwwgvwwxffxxwwxhxwhwwwwxgvwxffwgfgvwwwffhvgffxffxwwwgvwxwwwgvgfgffxwffwWevgffwxxUfvvffvwwwxxffgfhffwwwWevxwwfggvwgffwwfwxvwhvwwgwghvgffgvwhvwxvvUfwffvgwwwwwgffwffWewxvwwffvfwfwfwffvwwfwffvUffwwwwxhvwvwvfwwxwxxvwfxvfwwxxxxwwwwwwwwwwfwhhxwgvfwxwhvfwfwTfUfxxvwwwffwSUUvwwwefvfwxxhhwfvfwwxxxhwfwwwwwwwwwwvwxhwwwgfwefvfwwwSUUfwxxwggvwxhgvwhvggvGeVevggvwhvwwxxwxWvwvwwvvgwgvgvvxxwwxxxxwwwfwxwwwhfwwxfwvvwwwwXwggwfwgwvgvwgfwgWvvvevgggxguwwwvvwffWVfwWefvgfgwwwfgfWegwXffffgfffvwWfwwfwgvgwhvgwwwxwwgggwhuvwxxvggvgwxgwwwwfwwgfvwgfvffWfvffvWevffwfgwwgwvfwwfweeUVfVfwUffwgfvvvxxxwwfwwxwwWvwfwvwwwwxxwxwxwxxwwwxfwfvwwwxwwwwwewfwwwvvwvwwwgfewxwxgvgfwvwvwwwfgVevvwevfvwgfwwwgwgwgUfewefwUffwwvwwvwwhfwwgwfxuvwwwxxwxwxhfwewuvwgwvvwvwwgwwfwwgvgvxgewdfeeffwewwevvvwwwgwgvwgvwwxgwwwwXfFVfVfvgwWVfvwwgwwwwhvwwwfghghwwwxwxxxxxxwwxxwwwwwwwhggwwwxwwwwwwwwwgwwwvgwwwwfwgxwwTVwgfWVfffwwfwgwWeUUfvwggwgggVVwwwwvwxwwgwwwwxxwxwwwwfwwwxwgwxwxwwwwwwwwwGfVVfvwwwgfwgdwxwxvvwwwwvwvvwUefEewwggwwwwwwfvxxwwwvwwwffgwwwxxxwxwxwwwwxwwgwxwwfwfwwwfwwhgwwwvvvxxwwwwewwevwwfvwgwwwwwfvffwgffwwwvvffUffgfwfvWfVffwwwvffwfvegveffefwgfwwwfwffvwvwxwwvgwwwwwwwwwfwwvwwuwwwXfWevwwVvwwwvwwUfwefwwhgWfvgfvvgWffVvvwwvvwvwWvgfwgfgffxwwhwwwwxxwWWfxwxwxwxwxwxvwxwXWvvxwwwwxwggwwxwxhgwwwwwwwvwvwxwwwwwXWfvvgwwwwvwWUVvxwwgwwxdTVxwwhfwxWWfvwxhfvxxxwwwWWvvhxwwvwwwwxwwxghwwgfxggwwvwhfwwxeeghwxwwwwGFeuwxhgwgwwwuegfwUeeuegvvwwuefwwgwueffvwwwwgwugwwwwxvvvwewfxxxxwxxwwWwfwvgwwwwwhvwwwwwvvwewvvwwvhwwwfgwgwgwwwwvxvvvvgvehgwdVwfwwgfwWeffgWvfwvwffwewTfevwgwwgwwXgvwwwwwwwvwgvggvwwwvwegwvwvvwwxwwdfgvgwggwwdVvvgvwvgfvvvwxwwgfWwGevfvgfggwxwvgwFWVfvvxwgwwvvxwwxwxwfwxwwxvWguxwwwxwwwwxwwxwXfuxwwwwwxxwhwvwxwhwvwwwwwggwwwwvXguwgvwwwgwwWeUxwxfwguVfxwwxwxvGVduwwwvvwgwwwxwwwWfuvxvwwwgwwwxwwgwvwwgfgwgwwxwxvwwwdEVxwxxwxwWfufwfhvvfwwwuVgvwUVeuVgggwweVgwwwweVgfgvwxwgWvwwwfwfwWvwwwwwxxwwwwwxvwgxvwewfxgvwwwwwwxgwggxvwwewvwxwwfvwwvxwwgwWgwwwwfVwxhFeggvwvwgwgvgdfwvwgvggwwFefgvwgvwwwwvxwvxwwgwfgwwggvwvgwggwgwwxwwvgwuvvwxggWefvguvvVwgwvwfwTfevfvvwgvwugwgvfvfGgVfwwfgwwfggxwGeufwwwwxwxwgvwwwfwwwwgwgwwwxwwwxwwwwwfxwwgwgggwxvgxxvgwwwvVwgwwwwgxxguvwgvvwfgxfwxwwgffgvfgwffxvvwWfVvguvwxWwufexwwwWgVfwwgwVgevwgwwfgxwwggfwwwwxgxgwxwwgwgwwwwwwwvgfevfwfwefvgvvWffvwWfgggfgevffggeffwxgwvufvVvwwvgvwwvffwvvfgVwvxwwwggvwfwwwxwwfvvgwxxwxwxwwwgvwxvvgwxwwwxwhwvwwffvxvwwxfxwwxwgvvvfwvfwwwvvggwvffwffvwwVefgvgVevwWUfvvwwwfvwfwwfwwgVVfwwvwwwwwwgvvwggwwwxwgwvwxwfvwwwwxxfgfvwwfwvwhggfvfwveeffffvgwxeVfvwvfWeVfevwwwwWfeuwgfwvvgeefvgvwwwwwwwxxwxwwvvwvgfgxvgwggwwxxwwwxxwxxxwxvwwvwggwvwwvgwwwwhwwwgwwxwwxxwwwwhwvwwwwfgxwgwggwwVVwwwggvwgwggeufgfwfffgeugfggwgfwwxgvxwwwfxgwwgggwwwvgxxvvwwvwwgwgwxwwwxxwwgvveVggefVgvwggwwwgffwwxgvwffffeeVwwfffwwwwfgefVwwwfwwwwwwwwwwwxgwfgwwxwvvwwxxvwxxwwxxwWvwwwwwwxxxwwfwewgwxwxgvfwgwhgvvvwwwwvuWeVgvgUfgwvgwfWffvgvwwggVffvwgwfwvwvvwwwwxwwgvvwwxwvfwvwxxxvgfwevfwwwxvufgvvwwgxguvvwvvvgwwvvwwwxfvVeVfgfvgwwgwwxvWeVfwvwwwxvwgvxwxwxwwwwwfwwwxxwwgwvwxwwxxwwfwwwwwwggwxwwwwwwwwxwgxwwxvwwgfwwwwvwwwxxwwwvUUwxwwwwhgvvxwwVewvfffxwxxwwwgwvwwwWfuwgxxwwwwwwwgwwwwgwwgxwxwwwwxwwwxwveVwwfffxxxwwwggwwwwgUvwvwwgfvwgfffgfvUUwwvxwwgwwwfwwwwwwwwgwvwxfwxwxwwwwwwwwxwwwwwwggwwxxfwwwwwgvwwgvgwwwwwwvwwwwwwWffwxwhffwxwxwggvwxxfwwwwvwwfefwWggwgvwwwwfgfwwxVgvfxwxffwxwwefgefffggvgfgwfvffvxwwvgwVfvwWvvwwwwwxvgfvfwwwgevXwwWffffVwwgvwwgwwxxwhwwvwwxwxxwwwgvxxxwxwxxwxwvgxxwwxxxwxwwwxvfwxxxxxxwwwwwwxwwxwwxghwwwffwwgfvxxffwwwfvwxwwwwvvwwwwxwwwxwwwwwwxwwxwggwwwggvfwwwxwwwwwxwwwxfvvwwfgwwwwhgwwxwwwwwwwxffwwvfgffwwvfgwwwwxwwxwwwwwwwxxxwfwxxxwwwwwwwwwwxwxwwxhfvvwwxxwxwwxgwwwgwwwvwwwwwwgwwxwwwxwgwwgwvxgvvwEeeVfxwwwxwwwwwFfvgvwwwwweVfdfxwwwxwwgvwgvwxxwxwwwwgwwwxwwgvwxhwxhvvgvwwwUefgggwvgweVeVVxwxwwxwxhwvwwvwvXfUfggwvwGeuxxwhuxwwwxxwgvgwfwxxwxxwwwxxwgwwfwwvwvfggxxfwwvwwwvwugwgwggwgwvfvvgguwwgxgvgvgvgwwggwgwgeefVfVvwwwxgwvwvgvvwggfgfVgffgfVegxwhwvvfufwWwwwwxwxwgxgwvvvgggWwwwwvwfgfvfgvvgwgWufffVfffuvwhwvwvffgwvvvvfwVVvwfvfuggeeefgUfxxwwwfwwgvwwwwvgvxxxxxwxwxxwwwwvwfwVwwwwxwwwxxxwwwxVwvwwwxvgwvwvwgfVwwxfvhvwgwugwvwvxfufgwUfvgvwfwwwhvgggfwFfegvVwuwveVfgwwgwvwfwfwvwwxwwwxwxwhvwVwvwwfwvgwugwvwggwwwgvgwgUfVwvwwUfvwvufvgwgvwvgwwwwwwgwgwgeVfeVgfwwGfevwxvgxwgvxwwxxwggvxxwwwwggvwxhvwwwwxwwwwwwwwwgvxxxwxwggvfwxgvxgfwVTEuwwwwwwwwwwfggvvwwwwGUUdwvxxwwxxggvwxwxwxgvwwwwxwwwwwwwwwxwwwwwgwFUUtwwwwggvvfwxfwvfgvfgwwwfvfgEUTvgvfgwwgvwwwwwwwxxwwfwwwwwxwxxxwwxwwwfwwwwxwwwxwwwwwwwvfwwhffwwwhvvgvwvgvxvfvggfffwffwwwggwwvwwfwgXfvVwvwffvwwwxwwhvfggwvwfwwwwwxhVwfwvwwewvfwvwwwgwvgwgwgvwXffewwfgvwwvwgffvgwwgfvwwhwwwhvWgvgwwxwXgvwxxxwwxwwwwwxwwxwwwwxwwvvwwxgwwxwwhgwgfgwwgfwvgvwwwwxwwXfVvfwwwhgvvwxxgwwxwwxxvwwwwvwgvwwwwwxwwvwwwwwgefgvvwxXfgwwxfwgwvvxffgwfUfwwvvxwwxwwwvvwwxxwxvwgwvggwxwxwwwwfxvgvwfvvgwwwwfgwxwwwwwxgwwwvwgwwwgvwwwwxwxgwffgwwWVvwwxgfwwwgwwvvgUffWffuwwwwxwfwffvvgwfwwwwgvxwwfvggwwwfwwhwvwwwwxvwwwxfwgwwwfwffWVfffvgwwxweegfwfgvfxwwgfvwwgffffVfeugfwwwwwwwXffuwgvwwwxwffxwwwwhuwwxwwwxwxwxwwwwwggwvxwwwwgvwwwwxXwgvxgfvwwwwwwgfwwxWUfvvwUefvggwwwwgfvWfwhwfwwvgwwwuvwvhvvwwxvwwwwvvgfwwgwhwfwxxgvwxfwwXvfvhfvgfwufgwwfvgvfwWffvwwgwwwgfwUfvwfvvwwegfvwUfwwvwwwwwugffxwxxxwgwvgxwwwwxfwvvwxwwxxxxgwvgvvwwwxvvwwwxxwwggwwwxffvvwwxfwwgwggwwwgwvwxwwvwgvfvvVfuwwfffvvvggwgvggfffgVVeefwgwvfffgwgwvvvvwwvgwvvhwwwwwggwwwxfgfvfwwwwgwfUVwwWfeggwwffgfeewwwwgwfwwwvwWeVVfewvwwWVfvwgvfwggVVvwwggwwgvwwxxxgxvhwwxxwwfxwwxwXwgwxxgxxwhwgwwxxwwwwwxwxwWgvwwhvwVegVVvxwxwwwxwgvgfVwwwwxwwwwwgwwvxxvvgwwwwwwfUwvgwwgffWevxfwxwfwWffwhwwvwuvfxwvwgUUggvffWUfFThwwvwefwwwxwgggwwggggUfgdvxwwvwwwwfwxefveewwvvvffvFfffvffDUxwxxxxwwwwxwvwxwwxvvvyxxwxxwwwxxwhgwwwwxffvwxfffvwvVewxwwxwwwwxgvvxxwxxwxxwgffwxwwvwwwwffxwxxwxxvvwxwwxxgffvwwwxwvwwxfvffvfUewxxwgwgwxxwwwxfvfvvwVexwwgwhggwxwgUvwfgwwxhffgwWUfUfwxwxwxwVwwwwggWwxwxwwgvgwgwwwxwfxxwggggwhvvwwwgvGffvwggvgggWdwwgxfEfhvvWfggwhgxgxxhxguwxvvVdvgffwwVVGfgwgfwfwwvwgvWvgVgwwwfwwxvvwWvfvWfWfgVfVVgWSXvwxvxuuwWvvXWfVvGVffgwgewwfwuffwxvwwfvEfewSUUwwwUfeuv5UfwvwwwwxwwwgwxwxgvgwwwwwwwwwwwfvfwhhxwhxxwvwxwwxwgWugvggUvUwgvgvugfdwwwhwwfwwwxfvfxxxxvvwwxwwxgwwwvwxfwfwxgvgwfvffxxwwgwwfufxvgxwggfgwgwxfeUwgfvUgeeETxxwhgwgwxgegwvufwwwVVxxggegvwvwwgwgUvxgVgvVwWDugwgFfeUwxwxxwwwxvwhgwxgwvfwWwvwgfwwxwxxwwhfgwhvwwwwfvvgvwwgfggwWWfvwwxvwxwwwwwvgWvvgvgwwxwxhwxxwxwwfwwxvwhvvxvggwVWgwwwxwwvwwwwgvvgVgwgvwfwwwfvvWevwgVffvGDEegwwewhuwvwhwvhfggvffggfgwfwUgvwfvvvwevvwwgwvwDTTwvgweefUfwwwwwwvwwxfvwwxwhvvxxwwwxfvvwvffwvhwgvwwxwvvwwwwwXwWvwgfwdfUfvvxvvwvegVfxvgwwhVuvxfgvvvxwgwvwxvvwgfgwxxvwggegegeffvhwwvvvgwwwwWgwwxfgfvvgfgxvwgwgffTETeevgvwwfeffvvwwxwwxxfwvwfewvxvvvvwfwvwWgVffgvwhWwvfWvfVfVEVFTeWwwvhevxwwwxxwggxwwwwwwgffwxxwwvfvwwgfwwgffwwwxwxwwwxwwwwvgefVwwwwwwwwgffvwwWUvwxwwvfgwwfgffwfeVwwwwwwxwxwwwvfwwfvvwwxgwvwgfffgwWUvwwvwfggfwffwvgVeefeVEUTgVuwgfwVfUTEufwVUxwwfwxvwwwwwxwwwxgwwwwxWUwfwwfffvfUUeeefDTwxfeVwfffffDTffvggwwxxwwwgwxwwwvwwgwwwgvwffuvwwxxxxvxwxwwwxgwfwggwwwwwxwwwuwevwvvwgwwwwwhfvwwwwgwgfvvwxwwwxwxwwwwwwwwgwfggwwwwwwwwvvvgwvgwvgwwxwvvVwwgvvvvwUvfvWUVvvgwwfvvuVUeevvvVfvxwvwwgwwwwwvxvvvfvvVwgwfwggwgfffwWUVffggfgwwxgvWUVfeguwxxwxwxfwxffwwwwVgvxwwwxvfgwvvwggwwwxvvxwgwvgxwgwwwwxuefwfwxWVfvgfgvWwgUvwfwUfwegwwfVfvwwgwwwwwxwgxwWewhfgueugvvwgeWwgWgwghgevwwwvggwVwfWfvWfuwwwwfuvxwfwfVVvwfWffWgVDgwwxugvdfgwvxWWffvWgggwvfvfgggdTUggwfvuuvFewgfeevvvETvvVfVevxxwxwwxwwwwwwwwxxwwxwwxvgfwwwwwxwxvfwwxwwgfVvwxxxwwwwwvfffvvfUwxwwxwwwxwwxggvwxxwwxxxwwxwwwwfwxxwwwwggfwwfgxxwwxwwwwvfgxwwxwwwWffwwwfgfwffewvvUUxwwxwgfgvwwwwvfgxwwwwwwUfxwggvvgggvfgWUuxgxfwwgVuwwWevffxxxxwxwwxwwxxwwffwwxWevwgffwxwxxwxwxxgvwUfwwvfvwwxhwvwwgffwxwhfvxxwwwwxgfwwwwwxxwxxwxwfwwxwwwxwxhvgwvwxxwwwwxxgvhwwwwwwEEwwfffhvwwwwwvWVUfwwWevwwwwwwxxxxwgfgvwxxwwfwwxvvwfweUevvwUfxvgwwwfffEEwxwwxwwwxxxwvwvxwwgfwwxxwgvgvxwxwwwxvwvwgwwhvvwwwxwgguffwxwugfwwwwvwgvwfgwgwevexwwhwvvvfvxwwxgvWwgvwxvwhxvwvwwwxwgwwxwwwvgfvegfwwgvfgfwgwfgTfTgwwwwTfTffwwwxfxwWvVvwwwvwvwvwvvfvfwwfgfFeFuwwwHeFevvvVgffffwfVwgvvffvxwwwxwwwxxxwxwwghvwwwwVewwwwgffwwwwxvxwwwggwwfwwfggwfwwfvwgfvvwvwgwxwgvwgvwgvwgvfwxwxxwwwwxwwgwwwwgwwvwwxvgwwwvfwwwwwvggwwgwwgfffgfvvfgwUVexgwgfffgVeUfgfWUfxwfwwxvfvxwwgvfwwwgwwwwwvfVewwUVegfVffffveewgUVUxffvfffegfwwwvwwwwxwwvwxxwxxvwwwwvwwwwwwwwwwxwwwgggwwgvfwwwwwwgvwvwwwwwvwgwxxxwwwwvwgggwwvvvwxwwxxwwwggwvwwghgggwxwwwwwvvwwwwwwwwwwwwggwwwvwwwwwwwwwwggggwwvvfgvwvvvwwwxwwwwwhwwwxwwwwwwwxvvwwvgggwvwggggwvwvgwwwwwwwwgwwvwwwvxwggfgxwwwggxxwwwwvgwvwwggwwwhwwwxvVVwwwgxwwvvvwgwgfFevgwxhwggwvxwwxwwwfVxwvwgfVwwwwwxxxxwgvxwwffugwuwfggvfggwxxxwwwwwwWxwvvVVvgfvwxggfffhgvfV44uhvggwVVwfvwwxwhgeuwwfwvggwwVVwwxwvvwgfgECSwgwwwgeugffgfTevvgffwvgwwwwwxwwxwxwwwwwxwwwwwwgxvggffwvwwwwwfwvwwxxwxwwwgvfgwvwfgwfVfuxwwwwwgvfvwfvwwwwxwwgeuxwghgwgffhvwwwwwfvfwgfffvwwxwwwgwwwgwvwwwgfvwwwvgfffwffwffeUDEtwwwwwgwgfgvfeeUffwwwggfgfffvwwgvfwwwwfgvffvfgvggVfeffvfVDETevgwwwwwwwwgfgvwwfgxxxwwxwwxwxxwxwwxxwwvfVwxwgVuwefvvgwxxxvwwwwwfeVvwfufxwxwggwffefgwWexxxwvfgwwxxwwwghwxxxxwgwvvgwwvvvwwxxxwggwxxvwwvgxwwwwggwvfU5gweddwwwxwwgvfVxhgevwwvgwxfvfxwxwwgxxxxvxvgxfffvgfdTvvw5UwwwvfxwgvgffhwvwwwgwgwwgxwwwwggvvwwwfwfwwwwwwwwwwxwwvggffvwffgwfgxwvvwhvvwwxwwwwwfgvvwwwvgwwvvvxwwwwwwxwwgfgvuwggWgffwxfvvwxwwvwwwxfgfvhwwvgwvwufgeVUvVUVfffwwfvwgvvfwfwgwwvggvvwgggwwxwwwwxwwwwxVUuwWUVVeVVWfffwvvgfgxxxwgggvvwvvxwxxxfwwwffwxwwwxwxwwwwwgwfwwwxwxwwwwwxwwwwwwwxwxgvwwXgefgfVexwvwwwwgUffVfVxxxwwwgwwxxwwwwwfwxfhwggUfgffeVWewfwxfvggfvVfVvxwwwwwvfvggvgWffgffffVeUETxwwfwvfvgfhgvgvVVeVgefuwwwgwgwvfwvgwffffggwffgvgwUfdEUUVDUwxxxxwvwxxgwwwwwxwwwxgwfwvwwwwggwwhvfvxwwwvgwwwwwvwwgvwgweUffhghxxxwwggwffvfvxwxfxwwxwvfxwwwwwxgfvfvffvfxxvwwvggfggvfuwvwwwfggvgWfWwvfvVfffeUDTVgxwxwgvggfggxfgvwvfgvfvvvvVwwvwfwxvwfwwfWVefvgfggfWwvfVEDevfefxggvgwwgwhwvWwWwwxxwvWgwvufwWgwxwxwwgwgwvfgwggvgvVfVfvghgWfVfeggwwggvWwwvevffFvwxfwwwwxwwxwwwxwwvfvgvwwWvVgvgWggvgfdewgfwwggfuvwggfgeexwVVvvvgfdvfUFffdwwfU5feugwxwxvvvwwwwwhgwwwggggfgduwwgguUffxweeuVVvgvfefff5Efdegg5EvxwwwxwwwwwxxxwxvfvxffgwvxwwvwwwwwxwwwwwvveevfwwwvwhfffffwwwfwxwwvwwffgffxxwvwwwwvwwwwhgwwwwwwfvgfgvvxwwffgfvwxvgvwvfgffggwwxxwwwwwvUDgVewfwwwUUUffxwhwwwwwwwwwvwwwwwxWeggwwwgfvfvvwXeeuwgfvgvWUUeuffvvwWDewxwxxwggwwgwvghxwxwvgwfvggwwxxwhwwwghxxwxwvwhwvweggvwvwwgWwfwxxxxwgwwwfwgggvgxvwxxwvvwwxvwvwvvwwgggwfggvwgwvxwwwfxwwgggwwxxwwwwwfffwUfVewwggWfVeevwwwwwvvwvwwwwwgggvxwwfwwwwWvvewwwwwvugWvgVefUfvvffeeUWvgvgxwgwwxwwwxvhvwvxwxxwgvvwwwwwwxxgwwxwxwwwwxxwxxggwuWewewwwwwwwwwwvfwwgfvgvwewegwgxgwwwvgwwwwwggwvgfWvgfwvuWuwewwxvxwgwuwxvwwvvgffvgwwwggffFffTefwwwfvvgwwwhxwwxwxugwwvvfvgvvvwwwwvvgfewVvwwxggwwfGfDeFfffvfVggwvxvxxwwwxxwvvggvxxvwwwwwxwwwwwgwwwwwwwwgwxwwwwwwvvgxwwwwwwwwwgwVffeewwwwvgxwxwgeeffvxwwwwwwxwwwwwwwVVffewxwgwvvvwwgfgffvxwfvvhwvwgffvwwwwgvffffwwgfgvvwggvfeVVThgwxwvvefVxwxgwfgfgvfWfefvwwvffffwgwvvTUEEEwwwwwwwwgvfvfVVVevwwwwxxwwwwxwwwxwwwwwwwvfwwgfwvgvwvwxwwwvhxxwwwxgvvvvggwwwxwfgfgfvvvwwwwwgfvwgffwwvgwxxwwwwxwwwwxfffvfwwwwwxwxvgwvvfgvxggvvwgvgwwwwvefwUeUvUvWffVwwwvvffVfewfvgwwgvvgwwxfwvvvwwwgffvWwwWeUfVVgfwwgwwfgwwxhuWeUfevwwxwxwxwxxwwwwwwvwxwxwvwwgvwwwwwxxwwghxvwxxwwwwwwwwwwwgffwwwvgwwhggvvgggwwggwvfxgvgwwvwvfhvxggwwxxxgfvwxggvwfwwggvwwhgwwgvfwxgwgxwwwxgfvfwvffvwxfgwwwvwgeefffwvwwgfVvvwfwwwwffvwgwwwvhwwwwwwwwfgwwwxUUvffwxefUwwfgvgwffffwvwvfwfgxxwxxwwwxwwwwvgwxxwxwwxwfwwvwwxwwwwxvvwhwwwxwwvgvwvwwfvwffxxwwwwwwgwwwvgwxxwwxwwwwxwwwwwvgwwwwwxwwwwvwwxvvwwwgvwwgvgwgwwwvwvvwffvfwwffxxwwwwwwwwwxxvvwwwwwyxwwhwwwwwgfvhwfwwwhggfwgfvvvwwwvxgwwgvwhwwwwgwwfwwWwgfVwWUUvwwhvwhwwwxvwfwvwcUVxvxhwgGVeexwgvwwwgwVwWefvWVewwwwwwxxxxWwwvwxguwxxhvWvfwwwxwxvxwfwWeVvWVevhvwfffwdUVWevwWvfWe4CSfggfvxxuwwwwgvwxwwXvWfgwxxwgwvwwvxUUevwwfwweUfweUfffwxxxwxxwxwggvwxxwwWefUfffvxxggwwxwfwwxxffxwwffffvwwvwffvfwwxfwgvwwwwfwfhffvxwxxwwxxwwxwxwwffxwwgfvfgvwwwwfwgvwgfxfwwwffvwfwghvgffxfwUfffvfwffvffvUfxwxwxxffxfvwxwwwwxfwgfvfwwwwwwffwwgwwxffwwgvgffhffWefffhvWewwhvxgwwfwxwwgwwgwgwvgvfvWfffWefgwwwhwwwwwwxvvwwfvwgwvwhgwwwWvwggvgfwwwwwwggvVegffwgffvwwxxxxwwggwfvwfwwxwwwwgvgwwwxwvwfwvfvWVfvWUefgfvvfffUffVUffWUeVfWUUUffVUgwwwwwwwhggvwvwwwhvwggwgwfgvxUgwwwfwgvwwfvggeffvgwfwfvffvfvwwgvwxwxwwvwvwvgvwvwwwwwggwgfvfvffvvfwwhxvwwwwwwhfghggfwfwgfvvwvwwfvfwwvvggwxwwwwgwwfvgfgfgvfvxxxxwwwwwxwwwxgwwwgwfwvgwfgvwvvvwfwwhwggvwffvwffwgvvgggvgfwgVVfvfUfUUfvvVUfffwxwwwgwwvwwwwwwwvwwwwwwgfgggfwffvvwgfvvwgvgfvggwwwgggfwwwxxwghvwwegxwwgggwhwwfwweggwfwgffvwggxwgggwhwwxvxvvwwwgwWFevwwxwGFeevxwwfgwegWvwwGVewwwvxhwwxxgvvxwwvwWwfvggwwgggwxwwfxggwfghwfwGFeugvvvxggvvwWvVv&$CSvfgwGVfefxvwwvvxgvfwfgwgwghwggwwwwxvxdTVvxvvwwwvxeTVffffvvvvfwgvwwwfvwwfvwwwxwwvwwggxvwwgfwgWwvfefUffwwwwwxwwvwfwwggvwwgwgvgvwwvwvWwfvfvgffwefvvvvgUevwvgVvUeVVfgvwwhwwwwwwfwugfgvfvwwgwwwwwWwvwvwfFfffgvvwffVefVevVfGeEeVfeefveVfevUfUEeVTUwvgvWwgfwgwvgfvgvwfgwVvwvwwfheWvfgvVvfWfVVfvwgvvggwWfgfvVfffwxxhwxwxxxwwhwxxgwwdfwwWeeWUfvwwxxxxwxwxvfwxfvwwwhwxgggfwwwwvvxwwwwwgwgggwwxwxxxxwwxxwwwwwxwwhhgwwwwwwwwwxggvggwwgwwTVwweefgvwgvwgvVUfvgwWTvwwxxxwwwxxwxxgwwvwwwwxvwvwwvgeefwwwFfxfwwwwvweewwwvvfwwwxwhvgxvvfxwwwwvwvWffgvvefvwefvxhvwxwvxvwvwfgfgvwWffwfgvwvwgufffvvwwwwvwfgvggfwegvxefvxxwhwwwwwvfwgwwgvgxfgwvwgwxfvvwwgggWfwhvwewwevvvUeWfVvWUVfUfvgefgvweefvwwVfwwwWwwXgwwvwwvwxvwgwvvVvgfVvvfwVfggfggvWfWfvfwwfwgfgvwvwxxgwwwwwwwxwwxxvwFfgWUvwWfUwxwwwhwxwxgfwvgvvxwwwwhfvgwggwwwwwwwfvwhwvxxxxwxxxwwwwxwxwwgwwvwxwwwgwvwwgwvwwwwEegweVfgfwwxwvgvWfUfwgGeuwxwwwwwwxwwwwgwvwwwxwgvxwwwgweVfvwwdfxwgwxwwvwvVVwxwwwgwwwxhvwxgwfwwvvfwwfevwvgVffvefvxgvwhfvvgwvwwwfffWffwWfgwvwfvffvvwgwwvgwgguvxwVwfwegvxxwhhwxgwwwwuwwWwvwwwxwxgwvwgvxgggfvwwvhVvfgefvwVwfeVeUeUfgwgvvwwUfeVfuffefwwvvgvgvgxwwxwwfvfgvvwgvvvfgffvfguWvfWggfvgufvffwwvWgfvgwvwwvvwwxwxwwwgwwwwgwgwwgvvwfgwVfwfvvUfVffwwgwwwwwgwxvvwwwvgfwfgvvvggfwwgwffWwgefgwvffFfgffvvwfffUfvwwvwwxxwwxwuwfwgxvgvvvwfgwVwggggwfvvWvUfvUVWvfwgVVfUTfVgVgTfefufvVfEeeUeVUVfVTugvvuwfxfvvxwwwgwwxwWwwwgwvwfvegUffvhevvevvVfwwvffvgwfgvvvVfVgwwggwxwwxwwwwwgwwwwwwwwwfwwvwwWeggwVveguwwwwwwxwgxwxwwwwhwwwvWfwwvfgvfVfwwfwggwwwwvfuwvfvwwfvfWvwxxwwwwwwwvwgwwwwwwwwwgvvgwwvgwwvvwgvvWuwwfwggvVVvVDfvwWdeffwgvfeFEfvvfwwVFUeVwwgvhwwvwwgwwfwwwwggwwwwwwWegfgvvWfgvggfvfwvVwuegvvgwwewuwgwhgwwxwvwwxxwhwxwwxwgwffvffgffvfvfvwwwwxwwxwwwwffwwfgffggfvwgwgwwgwwvwwwvxwxvwufggvgfuggfvxxxwxwxwwwfgwwuwvxwwxwwwgggvwxhugvfgffgwvwgffVgUfefvweVVWUvwgffvvfUUegggevhwfgvvwxwwwxgwwwgwwwwwvxfffgewfvffvffvfgvfvfwfwwwwwgffgwgwwwfwxwxwwwvwwxxwwwgwfwfgwgfvvvwfwvfwxwwxwwwUfwwwgwwxUfwxvwwwwwwwxwvvwgfvgvfgewgvefvwxwxwwwgwwgvwxggvgvvgwwxvvwwggvffvgvwfwvwgeDUUfffVgvWUUefufgfffvgffvfwvvwhvxwwgvwfwgxwwwwffgvfwvgvgfvgwwxwgfffvgvfwwgwwwxwwwwwxwxvgxxfwwwwwwxwwwffxvvxwwvfffvgvwwgwvwwwwwwwwweUVxfwwwwwgwFUUtwwwwwxxwwwffvgwwwvVVewwxxwwxwwhwvggggfffwxwwwwwwwwwxwwwffvvxwwfWVeugfvffff23#gwvwgffvfWVeeffffvhgvvgvfffxwwxxwwwwwwwwxwwwwweUVwwfffeUVffwwwwwwwwwwwwwwwxxwvgwwwwxwgxwvvwfffVxwWUUwwwfwwwxxwvxvvwVevvggvwwwwwvfwgwvwxwggwwwxxwwwwwwgfwwwwxwwwwwwwwxggwwxxvvxwwufwUUevgffgffxwfffffwxwwwwwgvvwwxwxwwwwwwwxwxgfwxwwhvfffwwwxwxwwwxwwxwwfvvwxhggwwwwxwwxffwggfwffvfffvfffggvwwvwxwwxwxffvwwffffvwwxwwvwwwxwwgwwwgwwguVgvfguewwggwwwwhwwWVwguwwwwgwgvxwvwxwxxvxxeevuwwVwffgwvWVUVffUVvfweUgffgvWvUeVfgvwwWggewwwuwwgwwvwgxwwwhgwXVufwewweWUfuuwvwfwfwwwfwgvwvwwvhwgxgwvxwwvvvgwwwgwgvwwvwgvVvfffxvwwwwVvfgwgxwxvgwvwwwgwdEVwwwwxeEffwxwhgwvwgvfvdEVxwwwxggwxxxxwgggxvwgwgvvgwfvvgxvgwwwwgfwwwwVwVvdUVwvvwvhfgwvwVvVvdVVVvvgwB#4fgxwwxvhvgwwwfwwwxWvfgwvgwvgxvxvhwvwwxHVduwwvhvvgfffwVVdevgvvwwwvxxvwxwvwwwwwwxgvwggvwfgfefvVfVvxxwgwvwvwxxgwvwvgvwwwggvwfWwggwvgvvwwwwwfwwfwfeevVVUwxwwxxwwwgxwwwxgvgwvwvfwgwwgwvwwvvwgwffVfeffvgffgfffefefufvVffVeUUUUVUVeuwvvwwgfwwwwwwwhwfvgwwwwgwwgvwwfvvwfuvufgvvfgfvvwfgefffgfwwwwwwxwwxwggwwwwwgwgwwwvvgfvfgfffggwwvfwgwwwfwwhfgxvffwwfgfggwvggfgvwvvwwvwxwwwxwvwwvgfffwvfvxxxwwwxwxwwwwwgxwwwwwwwxwgwvwwwwwwwwvgffwfvfwffwgfwwvvvfwfgUUfgfUeeefgvfUfffwxxwgwwwfvfwvgwvwfwwvvwfwgfvvfgffvvwggwfvwgvgvvfwvwggfwvwwwwwvxxwxwvwwgwwxwwgVewwWfeffxwxxwwgwxwwwwwwwwvvwwwwgwfvwxwxgwwwwwwgwwffxxxwwwxwwwwxwwwwwwvwwwwwwwvwwgwwwwwwffwvvwwwvwvwwwgVUeffvgvwwgffVUwwwwwwwwwwwwwwgwwwwwxwwwwwxwwwwwwwwwwggvfgeVwvgfwVewggfwxwwxwxwwwwggfwwwwgwvgfwvwfwvwxxxwwwwwwwwwwhffwwxwffvwwwxwwwfwvfvwgfffwvgwxxwwvwxwvvxwwwwwwfwvwgwwxgfggfvgffwwvvwffffffffvgfUefwfgwUVvfwvvvwwwwfgwwxfwwwwwwwvwgwffvwwwwgffvgvwwhvgwwvwwwwgwwvwwwvwxywxggwwxhwvgvwgiwvffvhfvwwwywggvgwwvwwwwwwwwgffvgwwwxgvgwwvvwghwwVfvfwgvfgwxwfwwwgvwxhgfgxfgxwvvgufwvgwfghgwwghwwVfvvvgvfvxwfgwwggwwwfegfVvgVvvwwXvgvwggfgfgwxvfWfgwvgwgvhgwwwwwwwwwxxwwwwwfffwvwwwvwwwxwwwxwwxwwwwwwwvvwwwffvgfgfffffvfwwvxwwwvxwvfvwwggfgfvwwwwwwwffvwgfwwvxwvwgffwxwwgvfffffxwxwwwxgfwvgwvwwxwwwwwwgwwgwvxWgfwxwhfevgffgvgweeVfUVfuvvwwfgwUVVUUfffefwwwgfwwWvwwwwxwwfggwwwewwfffgvffffvfVvgfwfvvffvwwggvgfwwwwwwfvxwwwwwwxwgvwfgwgfwvvgfggvwwwwxwwhwwwwwwwwwUfvwwwwwxXevwwgwwwxgwvwvfvffwvvgvgwwwwxxwwwwxhfwgwwwwvgvwxvwxwhhwhvfwfvgfugwVffWffVVfDUufweffefffWUewfVgvfvwvwfwwwwvwhwvhwfwvggwwhfwfvvwfgvfvvvwwwffwgwfvvwwvfvwxwxwwfwxwwxwwwwwxwvgwvwvwwgWvvvwUgUvvxwgwwwwwwwwwwwgwxwwwgwWfewgvwffwvwvfvvvwwwwxwVuwgwvvxvgfeuxxxwwwwwwxwgwgwwwgwwwwwwwwvhwvvvwvwwvVvwfvvwwvffuvVTevwGdfffwggfVVdUvgvwvfTdVewwwwvwvwwwwwgvgvgwwwwwvvvwvggufvfgfVufvggggwfgwuwVeggwvwVWwwwvxwxgvxxgwwhvfxxwwxwgvwwhwwwggVwxwWvWfvxwxwvgwhvwgXwugwhwvgvvHevwfuwwwwVwhvxgWvewxfwxfvwxwwxvxgwwfgwguhwvwwXvegwvgvwwwwgVvfeGe6UUuxwfwwwvfwhvgfHfeffgfeVte6UugvwwewdffvvgwXfuFeVuffffWewwfgwwvwwVgwTfwfWvgxegegvSUfgvxwwwxgxxxwwwwwwxwwwwwwwgwwwxfwewffvvhwwffxxgfvwffvffewwgwxvxffwffvxwxvxfwffvgxxxffgwvwwvwwvvwfwwwxwxfwewefvxxwhvgffwfvxvwwfwffvefvewwwwwWvgffxfwfwvvwewefvffvfwwwxwwwxwwwwgffWvwvgffgffgvWffWvgvwwxwvwvvfwgwwwhggxwwvvwwfwwwwwhggewwwwgvvXWgwXvwfwvfwxwwWgfwhwgXwwWewgvvwfwggwhvvgVfVvwxwwwxwwgwggvwwwwwuwvxwvVgfvwWgggffgevwfwvUfWfewGFUufvwwwvvuefWvfvVfVfffeVWVfFTuxwgwwxtffWfuWfggwVWWVWfVdgxwxuffwvwvwfgwxeffvvwDUewvVfUfxxwxxvxxwwxvwvwxxwwwxwwwwwwvwffvhwwgwwwvwfwwwwxwhwgwxvwuvfgfwwwwxUwvuvwwvwwwggvwvgfvwhxgwxwwwfvwwwwxwxwwvwxvwvwUUfwwwwwffgfvwwwfgvwweeUUfxwwwhwgwwwfweuUUffwwwwUffuvwwwxhwgvwwvwfwUffvwfxwUUffvwwhwgvwwwwgvwfwgfWuvgevWfgfwggWfgwxwxwwwgwxwxgwgwgwxwvwgwwxwwxwxuwhvvgVgxwwwxwwwhvwWvgwgwwwgwgewfgvvvwwgwWgvggfwvwwxWwvWwwwgvfwwxwvvwwwwwwgxgVggwwgewweggvvwgUVvgwwvwwvxWvfwWUVfvfVgggvgewhvvggwfvfWwvgggfwfUVvwwgewvgewvwvfvwvVvvwUeevwfvvvgVvfvvhwwwhvxhwgwfwvxwgwwwwfwxxwvvfwwwvwwwwwwgfffwwwfvgwgwxwwgxwvgwwvffwffvvwwwvgvevvgwhWegewUvufwwhwxfvwVwvvwwwfwghhwwgUgvwvgvUgfwvvgvwwwwgWefewfwfffwwgwhwxgwgefVwefgewffvuwwfwvffgwwwgfgvUffgvfvfwevfvvwgwwvgwgfffhgwggxxvXvVffffgffVgwgvwvhwxwxwwxxxwwwwwwwwgwwvwwwxwwwxfwwwxvvwwgvffgvxwwwvgvfgxxwwwwwwggwggvVVvhvvwwwxwwxwwvfffvfwwxwxwwwwwggvfgwhgwwwwwggwwfwwfgxeexwwvFUUthwvwwfwfffxwwwgefvwggwVffEEWVwwwwVfehgwwhfgvwWffUVvfUwwwfffvxgwwfffTTfvwwwxffwvweeffvwwvwwxxwxvwwwwwvwwgwwwwwuwvwvwwwWvwxwhugwwwwwwwwgvgXvwwfwwwxuwUfwvwwwvvwwgvwxwwevwfvwgwwwxwwfwwwwwwwxWevwgwwfwwwxvufvwwxvxfFffwwgdfwwfwvffvWfWwGeffffvxvwwewTefvwwwwvvwVevgwwwvgwwvgeefwwwwWevwgvwgwWfffwwgwwwWVfvwwwhgwWvvwwwgwxwgxwwgxwvwgwxwwwwwgwgxxxwwgvwwgwfwwwwxwwwwwwwgfgvwxxwwgwwvwwWfvxfgwfwwhvWgvvwffwvgwwwgwxxfvwwvwvgggwhwgfwgwgwwgwwhxwvwgefwwgvVfvvffwwfgvvwgvWfWfvfvfgWgvvwxVvvvfgufwgwgwffwwwgwwgwgwvwvwfvevwvwwwffgwwfgfvwfvwwwfwvgwvgvwhxxxwwxwxxvxwwgwwwxwxwgwwgxgvwxgxfvvfwxwwwxwwwwwxvwwwwgwvggfgwfwwhfxwwgvgwgWvxggxwwgvgwfggwwvwgffxwwwwwgwfwwwweghguwwfwwwVvUVevWwvwhegfvwwvgwgWvwvwwwUVefgxfvfugfWeVvxwgwwgwVgegvegveggwwvWvfgfwwuWeVVvvwwvvwwWvfvvVvVvfwwvwxwwwfwwwvwwwxhwfwwgvgwwfwwVvWvwfgwwwxggfvgwwvwffvgfffwwwxwwgffWwwxgvvxwvvfghxgfuggfwxwxwvwwwwwxggwgxfffxhwwxwfffvwgguvuffgwgfewVfVfwvwVfggefewvhgfwvffVfwffvvwwwfwvgeffwwwwwgwffVvwwhuvgwxffvggeffvvgfgxwwwvxgwfffVggvwwwwwwwwwwwxwwxwwwgwfvwvvwgffgwfwvwwvwwgwwvwwxvgfggwvvghwwggwwwvvffxwwwvwwwffwgfwxwwVwwwugwwxwwxfwwxwwwwgvvwxwfwwxwwwwwuwwwwwxfgegvvwVvvwufffevffVeggvgVfgvugfVwffwugwvwvfwWfvwggfvfwwxvgwwwugfwwxfefggwfVufwwgwfxwwfWgfvvwxWwgwwxxxwxxxwxxwwwwgwvxwwxgvwwwwwwwxvgwvvxwwwwfwwgwxwvvwxwwwwwwwxxwwgwwgfwwwwvwwvgxxwwwwvvwgvgxwwwggwwwwwwwwwgxwwwwgwwwwvwwgfvwffwffhwwgffvgfvwwwwfffwfwvgffxwwvfwwgfvgfvggvfffhgwfgffxwwgwvgfgvgwfffwwwwvvwffwfgwwggffwwwvfffwwgwwwwxwxwfwwwwwfwgwwggvvwwgxwvvghvwxwfvxvwfggfvxxwfwwvwwfwvwwwuffWgvgwwfevwvwwwwwwhfwegwwwwwwgvvwhwwxwgxxwwwwevvwfhvgwwwffwwvvufgVUevggwgffwwvvvfwfvwfwwwvwWevwhgwwvgwxwwfvuvvwwWUfwgfggfVgggxwgwgwwwxwxhwvgvwwwvgvvxxwxwwgvwvvwwwxwwwfwxxwwwxwxwwwUfxwgxxwwwwwwwwwWefvvxxwwgvVeffgwgfgwxhvwwvfwUfwvggvgwwxwfvwwxfwxwfwgvfggfvwgwwhgwwgffgwgvgwwgffffwvwwvwGTevvwwwwxhgwwgffwvwfwvwwWefvffgvwgwwgggvxvwDUvwwwxwvvvwUfvwwfffwwwwfxwwwwwwwwwwwwwwxwvwgvgffxfwwwfvfwwwffwwwwfvwwwwvvgfgfgvfwwwwwwfvfwgwxwxwwwggVwwwwwvwvgwwwfxwwwwwwwwwwwgUvfgvuwwwwxwwwgwxwwwWVUvxwgeewwgggvffeVVeWeeuvvwwgwfvefVggwwwvfwgUfvWfevwwwwwwwwgwwwwvgwfwwgfvWUVefVfefgvwwwwxwwwgwgwwwwwwwxwwfwwxxwwwwgfvwwwwwwxvvgvwwwwvfgwxgvgwwwwgvgffvwvwwxxwxxhvghwxwhxgvvffvwgvwgwwvfvwwwwgfvwxwfwwwvggwwxxwwxwxxxfUfwwwffgwwwwggffUVUfvwwfvwxwgvwwwgwwgwxgvffffwfggwwwvwxxvgvvgwwxhffwwwwwUUvggvwwvwwwwwvwwvwwxwwwwwwhwwwwwwwgvwwwvggfgwwgvvgwwwvfwwfVWwwggxvvgvfwwwvwggfffuvwVgwgvvwvwwwwgwvgwgfvgwvfgwwvvvwwwhvwvxwwwwfgwwwwfggwfgwwwwwxvwwwgwugeuWgvwwwweefgVUgfgvffvvvgvwUefwvvwwvvgvwffgvufVVfvvgwxvfvwwvvgfgvwwgvvwgVfvvfgWeffvUvxgfgvwwwvwwgwwwvwxvwwxxxxwvwvgxwvwhwgwvfwxxwhffgffvwwwwgvxwwwhwwffgwvfveVfuwfwwwxwwwfwwgffxwwwwwxwgwvxxwvwgwwwwwwfgwffwffvwUfxwwfffFVTxwwwwffVgewwwwggfvfVgeVUUFUhvwwxUfvffwwxwWgefgVfeeffVeuxwwfwfgwwgwfVeeVwwwwwvgveVfVevWTEuvgwwwwxxwwxwwgwwvwwwWgwxfwwvxfvWvwwwxvvvwwVfvvufgxwwwfggwvvwwwwwwwwgvgwgvwwwwffwwgfwwhfffwvgwxwwxxxwwgvxwwwvgfgwwgwwwwfvfgvwwwxwwvwwvgfffveffwwwgfgvgvvwffwvwwffffwefgvwxxwevwWgwvfvwfvvfveffvfwwwvwwhwwgegwfVvvwwwgffwxwxgffgfvwxwwwwwxwgxvvxgwvwwgwwgvgwwxxvggfwvXffwwxvfwwgwvgugwvwwgwwXvegwwwfvvwxgfgfheWwgvhfgvgffvgugvvwwvxgxhfvhdfwfwugxwXwfwwwhgwfUfgvVefvfwfvvwfwvwguvgeVfeVffwwFfefwuvwwegvwwfgWdfvvWvgvwGfVfwwwgggwwwxugfFfvgweVvvxtfevwegwwxwvvxxxwwwxxxvvwwwxwfwwwvwwwwwwxwwwwfwvgwwwwxwxhwwvvvgwwwwwwgwvwwwwuuwwhgggvwfvfggxxgwwwxvuwwwwwwwwxwwxwfwwwwwfwfwwvgxwwwwgfggvfueVgwfvwwfgwgfveueVfevvgwegfwwwfwgwgvgwvwvvfwwgwfvfWgfgwvwwfgfwvfgvwwwgvfwwgVwvufvvwwgvfvwgwwwwwgvxwxwwwxwwxwwwwxwwwwwwwwxxwxwgwwgffwwwwwwwWevxxwwxxvwwgVfwxffwuwgvwwwwxfwwwwfefvgwwwwwwwxgvwvggvwwWwvxwwefwuwgufwwwwwwxwwwxuwGUuwwgvvwwgvwwwwvwwffvxwfvgfWwwWvgwwWwvwxwUfwxwwxgwwEUwwwugwwwfwwwxxxxwxwwwwwxwxwgxwwxwwgvvwwwwwwwwwffwwvggwwwwxxwwxwvggffffwxxvvwwwgwffvwwwfffwwfgvwgwvvgfvvwwwvvvhfgwhwwwxgwxVVvffvwwvwvgwwwgVfuwgeVvfvgfvvwwwwwwvgffeeVvgwweefwwhffxhwvgggfvVVefVvxwvvvvgwwwgeUffuhwwwwgffgwfffffwgwvwwvwxwxxwwxwxwwgwgwwxwwfwxgvxwwwxwwwwgxvgwwwvwgUgvvwwfwxwwgwvwwhwwvwwfwwhvugwgxggwvvvxffwwgffwwwfgxwwwwwwwwwgfvwffvhwwwwwxwwgvgwwwwwwwfvfxwwwggUfevvffgwwfffffwxhffvvvgwwwWvefwwwwgwwVeegfwwwffwvgUVugffvfwgwfvfggwwwwxVVgvwvvgwwggfvxUWfvwffwwxwwwwwwxxxwwwwwwwwxwwwwwwwwwwwwwwwxxwwxwwwwwwwwwwwwwwxwwwwxwwwwwwffxwvxxwwwwvvgwxwwxxwxwfwxwwwwgwwvxwwwwwwwwwwgfvwwwggwwvfgwgggffvfgvwffwwvwgvvvfgvwgwwwwwgggwfwwvwwwxwwwwwwwwvfgwwgfvwgwwvfvwwggwvwwwwwwwxxwxwvvwwwxwwwwwwwwwwwxwxxxwvgfgwwxggwwwwgwwggvwwwwwwwwwvvwgvwwwggvwggegfggwwfWwggwvwwgwfvwgfvwfffvVegwwwwfgvwwgvvwgxwwgfffwfvvgwgvvwgwwVufgwWwfwwWfegVevffVffwggVUfffUfugwgfVUfvvfffgwVgvgwgfwveffvuvwVffvVwvgvgfvfgwvvgffUeeggUfvwwufwwwVfvfgvwwvwuvfvwfwwxwxwwwxwwwwwggvxwwxwwfggwxwxwwwwxvfgwwxwwgefvwwwfgfwwefVgvwUUwxxwxwwxwwwwwwxxwwwwwxxxxhvfwxwwwwwggwwwxvfxxwxwwwwwxfvxxwxwwwgfvwwwwwwVffgvfUfxwwwxwwwwwwwwvfgxfvfwwwfUxxwvvxgfwvwwgVuwggvvwWevfgWUefgxxxwwwwwwxwgwVVfffxhwwwwwwwwwwvwvggggvwwgffvxwxvwwwvfgwwgvggvfvffffeVFExxxxxwgggfwwxwwwwwwxwwwxwwvvwwwwwwhgwWVfefffgffxwwwxxwwwwgwxwwwwwwvvwxwwwwwwwwggwVffUVxwwwfgvfgxvhgwwvVffUVvffvwwwwwwwvwgvwfvfeefgfffwwwgvTUETTVevwwxwwxwgfwgwfvfwwwwwwwwwwwfvfhwwhwwwwfufvwxwgwWegvvgwUefgfvfVevETxxwxxwwvwwwvvvxxwgvxxgwxwwxgggwwwfwfxwvwgfwffxhxwhgwvwvgxwwfggwwwvhUvUgfwUvugFfvxxxwgVwxwvevxwvgwwweexwgVgvwwgwgwgdvffWvWgWDugwgUVVVhwwgwvfwuvwwuggggfdfvwhgxvxvuwwhWwuwvwefvvwgfwggfwgGffwdfvwgWVfgfTVVVvfwfSUVVwxxfxwvxgwgguwwwfwwwwwwwgvwwfgugxwwwwufuwwfvfvgVFxwxwxgwhwvwwgwfgvhggggfefegfwfefeVvwwwwwgvwwhvwwfwxwfwvfvVFvwwvgVfgfxwxVdfvvvvfUWfffTSWeVeeTSxwxwwwwxgggufUwfefgwvggwggvwwwwvgwgwvgwwwvWfegvwwwgwgVvveVvgVefwwguffugETwxwwwgfvwfxguvwwwwxwwvwwxwwwvfhxwwxVwvfUwwVvevfWeWgwfexwwxvwvgwwwgvwwwgfgvwgwxfeVxfeWwuwVexvgxxgvVwwvgwxfeWvWfdgvvgfvggfwgUffgwfvwfxfVfgWEetfwVDuVweEfUfwgxwwvwwefwwwwwefvxxwxwvwvgxwwwwgwvvwwuwxwgxgUfwhvvwfxgvwgfffW3DeggffvUfgfxxwwvfhgwwxfwwxwwwxxwwWwxwgvgWgfwgfwvwwefwwwwwwwwhxgxUfwwvvgwgxgwgvgFevwwfwvfwggwgwxxWevWwgwvfwgxwUfwwxggwvwvfVTfvwwwwhvwwvvf5CTvvgffWevfvwwxwwwwxxwxwwgvvxwxwxgvgyxwxwxwvgxwwxwxgfgvwwwwvwwffffvfVUxwwxwwwvwxxxwxxwwxxwwgwxxxwgffwwwffxxxxwxwwxxxwxxwxgffwwgffwwvggwgVewxwgfgwxwwwxgwgwvgVexxwxwfgxfwvgwfUuwgwwxgfvwgUfUfxxxwwxwvwwwggvxvwxxwwvUfwwWfvgfVwvwgwvxvwgwwgSUfwUfvggwxxwwggDfuvhVxxwwwwxxwwwxxhxwwwwwvgwgvwgwxxxwwwfwwxxgwvxwhwvwwwwxwgeVvgfVfgxxvwwwfVgvgwfVuxwvgxwwwxxwxxxgfgwgwvgwwfvwvgEdfvvvfffffxwwvgUSwwvwwvxgwwgwgfvgxwwgfgwxwwvgxwgvwwwfvghffxxxwvfwwwwugUfVwwwwwUfVfexxxxvwwvwvggwhxwvxxwwwxhwvwxgwffwfwvwgvwwgwvhgwwwvxxgxwwwgwvgxgwwwwwuwfvgwwvwvuggwwxwwgfwvwwwwwwwwxgvxwwxgvwwWfWefuwwwwWUfuVWwgewvfgfffWwvVwfwxwwwgwVewwwgffefuxwwwxwwxwwxwwwvvwfgxgfwgfgfefugvvwwfffffxhwvwffuwwfvVeUUExgvwxwwffwxwxxxwwwwxfwwwVeffgxxvwvwwgvweVfVxwwwxwwwwwwxxwwxwfVWxwxgvwwwwwgfvfVgfwvffUVxwxxgvvgvfvffuuWvwwwvvffwfwggUEFeUwvgwvwggfUfffvfUDxwwwwwwggfvgvwvfvgWfewwhwfvxwwgfwwfffwgvvhvwgwvgvvfwUfffUfUTEuUfwwvvfeVEUTvvvUUwwxwwwwwwvvwwgffwwwwwxwwwwwhvvwgffvwwvvwwwgvfwvgVUwxxwwwwwwwwwwwwwwgffwwxwwwvgefVwwwVUxwwhvwwwwxwxwwwwwwgwwVUhvwxWVffvfUUeffVDtwgffxxgffVfUDdffxwwwwxwwwfwxgvxfwwgvfxgvwwwwVexwwwgffwwgwwhgwwhfffhvwfgfgVVUgfvwhffvggeUufvfUxwwwwxwxwxvwwwwxxwxwwwwgwwvwwggvxwwwvgwwwwvwwwgwwvvwwxwxwwwgfwfwwwvffwvvhvvwwgwfvwvwvghwwfwwwvwxwwwxvfvxwfvvwwgggVevwUVUfvffeffgVfwwVVUxffgffVVfvxwhxwvhgfFuvwgvVwwwgvxwxwgwwgwgvwwwfwVgufwvVxgvhfVfvwwwfVvVwwvgguVUSxwwwwwWvwwWvgghfxhwhxgfTxxgwgTguwexgffxhvgwvggfxwwhwggvgwwwwwwgvgwfffFxwvggvgfTxvVxxwgeVfwVxfeWgwuWwvggexwwgUUUsxwwwvVgU5ugffvuwwgVfgfFugfwwxwwxwwvvgvwwggvwwfwvxxwwvwfwwwggvgvwwwvvgwggfwgwWffVUfvwfvgggvwfvggeUVugvwgwgvvwwwxwwwwwxwwwwwwxffvufwgwwhfwxwfgvwwewvwwxwwwxwwwwwhggfffwwvgggwwfwgwwfgvxwwwxwwvfwwwwgwvxwwwwwfwxxxgUUwfvffUVuVfvgwvwwVeUxwwgffvvvvgwxwvwfgvvwvvgvwwVwgVwwwwwvgwwwwxwwwxgWwwwggvwgfvvxgfuwwgffdfEfffwwwgvfwvwxwxwxggwgghwvwwgwxwxxgufwhWweuwuwwvggwfgwggwwxxwgwxxwwxgwvwwwwxwwwuWVwVxwxwwwwwwvWxxgwvfwvwwwfvgwxwxwwxwwvgGfddVtxwwxwfwgWffuvfffffwgwvfwgxxxxxxxwwgfwwwxwwwwxxwwfUwwgfvwwffvwwfxwxxwwvxgvTTwvVUVwwwxwwwwwgffvwwfVuxwwwxxxwwwxxxwxwxwwwfwfwggxxxxxwwwxwwwwwwxxwxwwwfUwwgffwgxwwvvwwfvwgfvxxwwwwfvfxxxwwwwxwwwwfwggwfVUVfffTTwwvgwwwvgfUwwwwwwwwwwgffvxxhwfwwwggwwwvvgvwwwvvvggwggfwvwxwvfwwgwweefUVeffeVfwfwwgvwuVVwVgfwwvwwwwwxxwwwxwwwxwwwwwwxwwwfffwvfwwwxwxvfwwgggfxwhxvwwwwxwwwggfgfvfvwwhvvgvwgvgxwxggvgvfwwxxwwwgwwwxvffvwvfgWVeefeeUeVvxwwwwxwWvfvuwwhwxxwwxwwwvVwvgxwwxwvgvwwfwvWxwfvwwggvwvfwwwxwvxwVgvgVuwfwfETDwgvwgVfvwwfgvgwvVxwwvwwxxwgwvgwxxwwhgvwfvgguWwxwvgwxwwwwwwwwwwxxwfgvwgwwwgfeWxgvwwfgvwwfgwwwgwhwwWvfgvfxxxwfgvgxvfgvfwvUwgETDwggvVfeVfUwggvfxvwwvxwwwvwwxxvwxwwxwwwwfWffwwwhxwxwgwWwhwxggwggfVvwxgvvfffwwWUewgfvWfeUUDwxgxvwwgxwwxwxwwwgwwwwwwxgwwwvxvwwWVvxgwgggfffUwwhwwgwwgxwwgwgxxwwwfWwwwwwfvUVVxxwxwwwfwxgwwgvgwgwfVgeefdxxwwfwvwwxgvffffvwwwwvfffFvffeeUETwwwwxwwxgxwwWVvggffvgwvwwwwvvfvwwvgwwgwwgffwfffvwwwfvfvfvvgfvwwwvWVFDEUUfefwxwwwwwwwwwwwxxvwxwwwwggvwvwwxhvwxwwgvgffvvgwwxwwxwwwwgfgwwwxgvgvwvfvvwwwwgwVVfvggvwwwwfgwwfwwwwwhfggvfffffgwfffggwwwwfffgffvfwwgweefwwwwwDTTfUgvvxwwwfwwwwgwwwxffffvxxwwffwffgwvwxfvxfgffvwgwgvwwwgwvDUVVvwwwxwUUUffxxxwwwwwwwxvwwwwwwvwwwwxxvvwwxwwgfvfvggwwwvffgfwwwwgwwwwggxwgxwvxxVVwfgwwwwwfffffxwxxwwxwwxwwwwvwwgwwwveuwvwwgfvgvwhgfvwgffgfWUUeWVfUuwWDexwwwwxvwvwgvwgvggegwwxxxwwffwwvvvwwwwwwfwfegvwgwwwvwwwvgfgVdVdgvfvVdVdfxwxwwwhxwxvwvgwgxwxvfvwfvgwgwwwxwwvxxugwwwxwxwwwxxwxwvwvwwxwwxwxwggggfvegvwwgvvuwwxwhvwggwgwwwwwgwwgufufvvgvgvvvffWvxwwfwWvvffEfEgfffvEfEvfffwxwxvggwxxwgvvvvwfvwgxhwwxwwwvwwfwwwxwwwwgvwffvvvgwwwxgwvwwgffeefffvfwwwVffwvxxwxwxxwwwwwwwwxwvvvxvfgwxxwwwwxwhvwwvfffgxwwvvfwgggfwxvwwwwvwxxwwxwgwwvwwffwwgwwwwwfvgwvwwwwwwwwwgwgvwwvxffvwgggwwgwxggvwvvxwwvwvgVUefvfffvgVefuwggvxwxwhwfwhgvUxggvfwwwxxwgvfwgvvvgvxwwgWwwggvfgvffvvgwwgfgFUdUVtgwgwgVfvfvwwvwwgwfxgxwvxvwgwwgxxwwgwvfguxgwwfgfgeffewvwwfwvgwwwwfxvxwfwwvgvxwgwvgwwgftfVuwuwgeWvfVwgvxggvxxwvwvWfvxwxwgwvgfwwvVfefgwwugxvfWgfVVdUUDvuggvfewhwvgwxwffgfgwwwwgwwwfwwgwffwggvvvWfggfuwhgVfefvwgwugfggvwfgEDUvexxxxwxvwvhwhwxxxfxwhxwxxhfwfvwwwxxvvwwhgfffvgwxxxwwgfgxwwxxfwwvwwwwwwwgwvwwgfUVfhvwxggvfvvwvfgwgwfgfggvgwewgwfvfvvfwvvWDTegvfwwgwvehfVeugfVfwvgwwwwwvvwxwvgfwwfgvwxwvgwgwwwwffvgwuwegvwwwvwwfgggwVvVeWVeUwwvwwfgvgfUVufwfVvwxwxvxwwxwxwwwxwwwxxwxwwwwwwwwwwwgvgwwxwwgwvfwvvgwgwgxxxxwxwxwwwwvgwWwvVwxwxwwwwwvgwvgwvgwxwwwvggvgxxwgxwxwgwwfgvWvvgggvfffwvfVeUgewgwvgwwwfVeUgfwexxwwwfgwvwwwwwwgvgwxwwwwvwwwgwwwwhgwwwwwwwwgwgvvwwggvvwvwwwvgvwwwwwwhvgwwxwxwwwvvwwwvhwwwwxwwxgwvvwwwwgwfwvwwwwgvhwwwwwxwxwwwwvwwxwwwwwwwwwwwgvvvwgwgvfwwgwvxwvwwwwwwwwwwwxwwgwwwxvgwgwwwfwvvwwgwwggwwfwwwwwwwfwvgwwwggwxvfxwxfvwwWVVuevwgvwwwwwfvwwgfgffvxwwxgvwfGfFefvwgxwwwvfggwggWgeeffwffWcV5EuxvwggvvwwWVVfuxwwxxwxgxwvffgwwgwxwggggvvfvvWVxwwggvvfGffevwwhgvvwfwxwggWgeevWwueVdV6EwweffwwvfhxgvWgWvvwgvggwggwggwwxfvwdegvWVwWgwefFffdeeewwfxwwwxwwwwwfUwfffvfgwwghgvefwfUUewhwvxwweVwxeefgggfwwWffufgwwfvvwvEUTvwwDTwwwxwwwwwwfUwwfeVxwwwwwwwxwwwxwwwwfwvgwffvgwwwffwxwwwwweVwfffxwwgfwgffvffwwfffvfEUTvwwDTwwxwwxwwvgvvwvggvgwwffxwwhffwwgffvwwWUvwgeVwwxWUffwVUUUfwwfgwwxxwgvgvgggwhwvvggwwwffufwVffwWffvvwwwhwwwhffwgfvgfwfffgfvwXffffWeffffffwwxxwgwgvggwggffvwxxwxfxwvwxwwfwxwwxwhfwvvwgwvwwwwggwwxvwgwwvvgvwVgvgVfwgeffVfeffffVfxwwvwwwwwhwwwxwwgxhfvgwwhwwvgwwfwvvwUwfwwfvvwUffwwwevffwfvevwwwwfgwwgwvfFwwvgVfgxwvvwwwwggvwwvffffwxwgXVgvveeWvuwhwfwgUgwwvuvFfUwgwhVefTSgghwvgFvwwvgVfFxxwxwwxhvuxxhxvfwufewwfwwgwggvhvvxwwWVwvfVuVwvfwwgwwffwvwuv5fUwfvgVefTSxvvxgwgfwfvwgvgvwgvgwfxeexvfwfdfvxxwwUvWFfxwvvvewWVvfwWFfVfhggfvwxwxfvvuvfWgfwgfwvggfvwUVuffFUevgfvvvwveVVfgwgfwgWfuefvweefWfewgfgGfVUffvwffwwhwgvvvvfUfVvwgfvvxwwxgwxxwhvwwvgwvxgVvfgeWvwWewfvfwvwuwvufgfwwgfvfgVuufvweVgWVewgefWVVTevvvgwggwwvwgwwggfvgeWfggewffwwwwuvvwWwuuvfvggwgwgfvEfegwxvwFevefvwhgvwwwvvgxhffgffvgwwhgvwwwgffvwwfffffgxhggfgvwgwwwffwhwwgwgvfUVUeeffwfwVeUwvgwvvgxhggvvwwvgwwwhhgvwwvvwwwxgfvgwhggvgvvfvfgwvwgwxfvvvwwwfwvvwfggwwffwxxwwgwgvfUeVeUvgwvwUeewvwvwwwgxwvgvvfgvwwvwgvgvfwwxgfvvgwwghfgvvggvvwfffffvfwwgxggwwgwxxwwwvuwwvhgwxwffwgwwxvvwvuggWgWUeuwuvwwgggwwvgwgWvvuv%DTggwhxvvgggSEvfvffvxxwwvvwvgWwwwvgwgxxxgwvuwwggwxgxwwwwhfvwwwwwwvvwwWggwwffggwvvvv6UdgWgxhfvWgWBDufwgfvxxwuvvwgfgxwxwwgwwfwwwwwwwwvwwgfvvwUUVgwvffwwgwvxwwgfvffwwwwwfvwwwggwwwhvvwffvgwwfvggfwggwfvvvgvgwgwhwwguwwwfgwvfvVfVgfevffvwwgwvdeEfffwgfwwxwwwwwwgvvvwfvwxxxxwwwxfgwwxvwfwvvwwwVwwwvgwwVwgwwguwvgfvwvfvffVgVevgfvwwfvvdeEffgvwfvfwwwwfxwgvvgwwwgvwvvwwfggfgfvggfvvffwfwgfgfvwwwhwgewwgwwhwwggxwwvwwvgwwwwgfwwwhwgwvgwuegwWggewvvwvwxwgwwfvwWVvwwvwUeVgvgwgUffwgfvvUggVwxxxwwvwwvggwgwwUwxxxwxxwwwwwwhvwxxwwwwwwxwwwwggwwwwwwxwwwwfwwgfwwvwVefgfwwWUfuxWUfufffVwxwvwgvwxwwgwwwvxwgwgvwwUeVwfvwgvwfvwfvwfvfvuwvxfvvufvwwxwwgUwwxwwwwfffwfwgfVvhvwwwfvVUUWevwwwwwweVfwfvhgffVTEuxwwwwwgwwffffffTDxwwwgUwwgvwwfVVwwxxxxxxgvwwwfgvvwwxwwwwwwwggffwWewxwwwwwfffwvwggvfVTEwwwwwwgggefVggfTDxfwwwgvgvvvwwwwwwwwwvgwffxwwwgvvvwgffveVVUxwwwwwWVuffVVUVewhgfgxwwfVuwwwfwwgvvhgwvwfUevgwVUfvWeevwfwwwwWfvwhgvwgfgUUvvUfVgfvgvvWfFdefvgfwxwwvgvwwgfwwgvwwvwwwwwwwwxwwgguvUgwwwwxwxwgvvwwgwwuffvwwgfvwwgwgwfWEdegDVffUwwgvwgfWeeuwwgfwgwwfvwfggwwwxwwwwgfwwwxxxgVgvwUggfwUVfwwvwwfwwwwwwfwwevwwfvwffwwwwgfwwfvwvgvffgvwfuvfgwfVwwwfeggwwgvwvwxfvfvfWwgfvwwXUfvvVvuVgfWfvfWhgVVeugwwvwwffwwxwwgvffwggwwxwxwwwgvggwwgfvvxwwwgwwwgfwgwvvwwWfffwwfwegwWevggWUfwvgvvVfeffvwfwgUfevvwwwwWgwVvvwwwwwwfWwgwvwfWgvWvvfWwvgffgwgvgfuwwwgwgfufwgwwwwggvwghgwuvgvwWwwwvvvwggvvvfwvvggfggvvgwvvwwvwwwwwvvfVFfffvfFfVgVwwwvvggvevuvffgvxxwggwuwwwwhwwwfwvwwxwxxhwwwwvwggwxwgwvwvxvwgwvxgwvvwfwggwxgvvfVFffevfFfVgVwwgvwfgfevvvgwgfxwwvvwWwgxxwgfwvwxxvwwvvxgfvvfWggvvfvggfgvwvffggxwwwgfgwvwvvVfeewwggfvwwwwvwwggwfVeevfffWVfffeeWwvggfvggwfvwwgwwfUUffVUugvgffwwffwffgwwffvwwwwgggvwwwffvvgwwwwwwxwwwwwwewwFFvwwvgwwUUwwgvggwwwwvvggwwwwwffwwgvwfffffffvvwgUUwwgffUUwfwgfgwwfvgEFvwwfwgwwUUwwwwwgwxxwwvvGFVUefvGFvuwgfvwwWUufvvvgwwwfvvwwwgwgfuhwgvffwvVgwvgfWwvvWfehwfvUEwwgetWvfweevffhwvwfWffWVfgeegfvVfegVEVuwvvwfFfvgvwxgwfdgffgwvwwfvuwxvwwxxxwwgVvvvwwFfVfwgvgfgwxwgvwwwgfwveggfggfwvfveVEuwwfdWwffVegfUUugvwwgVuvwggfvevvVfVvggvwfgvxwWwwwwwgefffFeUvfwvgGffwvvfVeegfgffwvgwwfvwffwwvwfgvwwwwufuffgvvffvUEuwgvVUffffgfVfvwwgvvUfffgweefVWUfTeuwvwvgvwUffeWWffwvwwvfWwgwwvVegggxgwwxxxwxwxwvvvggfguvvwfgggwvgwwVgewwgeVgwgwvvfvfggwfdfVfUfeeuwvwvfwgVefVVggfvfwwwvfWffuvevgfvhwwwgxVgegvgWggvdefWgvvfdVeVvggvwwvwhwuWwvwgwggwwvwxwweffwwwgfvwwwvgwhgffeUvwfWVuwfUfuvvfwwwhwvxwvwVfgfdEuVUeVwVvwwwwgwfTftvwfgvgxwwwfewwwgvwwgvvwxwwxgwwwwwwvfwwgggwxwwwggfwvwwwwxvvgvwwXguxfwfgVvUUffFeFggwwffgVefufwfgfwwwugwwgvgwhxwwxwwwewwxwggwfwgwggVVeVgwgvewvxwwxwwwwVvWwvwwvvwvvwwwggfvhgwwwwwwwgvvvfffgVfweevvfgwggggggvwwwwwweTTWVVVfuwfeefvggwvvgwwgwwwwwwgwgwxwwwvwwwwwgwxxwwwwxxwwffvwwwvvvxxwwxwgxwwgWVfwwwvvwwwwwfeeffffgfvfTTwwwwweefwgwwwwwvwvggvwwvwwvvwwxwwwwwUVvvwfwWffuffvwgwgfwvvwwwxxwwwwxxwxwgwxxwxwwxwwwwwwwvvwwgfwwwvwvuvfWVguvvwwvwwvwgwfguuwwwxwvfUVVwgwwgffggfeeVeeUgwwxwwwvwgwgwfvxwwwxxxwxxwgxwxgwwwwwvvwwvgwwwwwxwwwgwfwvvvwgwwwwfffgwgwgwueWVVeeeeeVgxxwwwwwwwwwwwwwwvvxwwggwwwgxvggggggvfwwggwfgfuvUVVvfuvvwgVexgwwgfwvfgevfgefwwvVfvwggdefwEUvVwwwfwvwgdfffefwgfwvwWevwwgdffvfUgTUVwvUUewwwwvxvfwwvgeeffvVfwwxxwxwwvwwxgwfWfwwwuwvwfwwffUfffgvwwgwfwgvgffVvvWgfgwvvhUfvwweefvfFfeegfvUFUfwgwggwgggvwwwwfwwefEffggffwffgfgwvgVfwvgeUvxgffdfgfvgvWdUfwgfxwwwvvgwwwwgffwwfffeVvwwvghfvvfffgfffffvwwwgffgwfgfeVfgvfxwffgwvgfffVS5efvwwWS5efvfwwwgvgfvwwgffeVvxwwwxwwxxwwxwwvfffwwwfvvgwgfffvwwggvwgwgffwwgffeVfgffwxffwwwgfffVS5ufvvgWS5efgvwwxwwfffgwgvvwwwwgffvvggfwgwvVfegwxVfefgvwVfefffffVfegfffwghwvwgvvwgwvfvwwgvghwghwvvwwffvwwfffffvgwgwgfvgwwggvwxhfwwvwwweUVVUffwgwUVevwwwvvvxvwgwfvgwwwfgvgxvwwwwxgwvwwggvwwgffgvwvgxxwwgwvhvfgfvfgwwgffwgfwgvwwvVUUVeffwgwVVUvwgwvwhggwvgvvvfggfvfgxhgvgvwwgfwvvwwwhvwgxgffvfffffwwvgwwfffvgWgvwwgwwgwfgWfgvfwuggfvwwwfeffgWgvfwwwwvvgggvxwfvvvgwvvvvfwgUVefeeVeWvgwfffegwwwxwwvfgvfwgvxwVwvxwwwwwgwxgxxuwwgugwfwwwvgwwwfwwwwgxwvwwvgggfvffvvefwwuvVwVVufeUVfgffwfVgvVwwwwvvxgfwwwwwwvggwffvvgwwgguvwffeguvgvxgegwvwfgffwwwwvfvWwvwvwwvwwwvvgghgfvwwwwfwgxfwwwwwffgvfvffwwgwggwgggwwvwfwvffwwffvwwgUUfffwfUUgxggwwxvwwwfggvvwwgwgwggxwwxvxxgvwwxwxwwwwvwwggwwwhwgxhvwwwxwgfvvvwvwwwvffwwffvvxfUUffgwfUUgwggvwxwvvwxwgxwxwvvwwwwwvvgwwgwxvvggfvvwgwvvxvvxvxgfvvwwvfgwwvwwxgwgwwgwxwwxwvvwwwwwwvwwvgggWfewwvgfvgfffuwvvwvwhxfwfffvWffgvefVffwgwggffvvwegfeffWvxxwwvwwgwwwffxwwxhwvwvgfgxwxwwvwwwwwwwwgwwvvvgwfwfgwggvgvffVfVwgvxgfffgffffffegvwxwvwvgfggwxxwvwgvwxwwwfwwvwvgfggvVwVVfVvfwwxwwwwwvegwfvfvewvvvwwgfgwwwweewwwwwwvvvgVVffggvfvegvgggwwxwwvwwwwwwfeeffFEevwfvfwwwwweeffgwwwwwwwwhvgwwwwvvvvwwwhxxxwwwwwwwwffggwwwwwwwvwgwwxwwgwwwxwwffvvvwwgvvUVVVvvwgeevfgwwTTVwggvwwwwgffggwwwwxwwvvwwwweVfgvwwWVfegvfwwwwwvvwvwxwxvvwgwxxgwwwghxwvvwvwwwhfvwwgwwwwgvfgffwvgfgwwgwvvgwwvwgggvwwVUegwUUfwwgfffvvvgffwgvggwxghgwwwwwvggggwwvwvwghwxwxggwwvvgwwgxwwwvggwwwwwwhwgwwwwwfhgffvwvVUegwUUfwgfffvvwgfvwwgvgvxxwwwwvwfwvwxwgxgwwfwwgggvffgwwvwfxwgwwwfffxwgvvvgwwwwvxxwvwvxxwxwwwwffgxwvxwxxxwwfwwhwxwwwvwUefwwxwgwgfgwwwwffgwwgffVewUexwvxxxxwwgwwxwwwwgvwwwxwwwvwxwwwgggwhwwwffxwwwwwwffgxwxwwwwwxwxggxwwwgggwwffwwxwgwWewwwwwfgfwwffgfvvUexwwwvwwwvwwvwWfvwggvvvwWVvvwWVfVVwgwfhWgewgvwfVfgwXvfwggvwwfWwVfgvWvfgwvwefvFeUwWfVvgvwfvwwfwfVevwgvfGfFeVffwWfvhvwwwwwvVVvwhvvwwvwwwwffgwfgwwxwhvuwvWwwvwxvwggVfeffwVfwwfvfwwWfgwgfvvwwvfwwfvgfewwxwugwWeVevvWfvgwwefvwffwWUvwgwwhfVTfeewgfwfvwwgvwUfffwwefvvVVfwwvwVefTUvwwxwwhwvvxxxgvwvuwefwgwffwxfwfvwxwgwvxwxVfvwweveffwwwxwwggwwvwfvefvfvgwUfgegwwwwwwxwggwggwgwxwwwwgwwwgwxgwhwwwwwffwwwwwwVvwewwwwxgfwwwfvwwwwwwwwwwwwvvegvwwwwvwwfvwfwhvWvwwfvffefffwfwwUfwffwhfgvvwwwwgvwWfgfgfvWefVffffgwWffwwwwghgvwvwvwggvwWVuvgfwwwvfvwwgfwwwwvwwgffgfvwWVuuwgwwwweUWffffgvvgfWWuevgfvwxwwxwwwwxwwggvvfwwggvwwwwwhxwvfwwgvhxwwwWVuuwwffgffvwwwwfvgwwgXVuwwwwwwvfhwwgfgvgwXVuevgffggvvfwgvhgfvwWWuugwfwVVuefvfwweUWwwwwwvfhfffveUWwwwffeUWffffxwwwwwvvwwwgffvffUWwuxffwxwwfvgwwfvwwxwwxgffgfgeUVvewwwwwwgvvgwfveeVvfvfgwvfgvwwwwwwxxwwwwwwgwwwwwwwwwwfwwwvwvwfwhwvwgwffeVeegvfgvwgvwvwwgggfwwwvfggwwwwwwwwxwwvvvffgfvwwwggwwvgfvvwhgvvhgffeVeeffffwggfgvggwhgffwwwwwwwwwwwWVUUfffvwfgfgwwggggwwwvgvvvvwvufwwggffvvufgewfwwvfwwgwggwgvuwuTVfgfwgVVvgfvwwvwVvwWVUfVTefwwgxgfwffwvwhfxwweegxwwwfwfvgvufxwuwwVgfhwwwwwgvgggefgUUvwwwwefvgVfwwwufhxvgvVgvffwffwwwfWgVfuxwvwwgweVgGfvwwwwfvwWfegfEVfwvfgvffgVvvvvwUffwwwgvwwvvfVfVVefUTwgwvfewxwwwwWgxwwwweUWwhwwvwwgwwwwgwwgWfvwwwwefUUWguvwwWfVVuuwwgvxwuUWVvwufwxxxxwghxvwxwwwvwwgwwwwwgwwwfwwwghwgwxuUWvewwwxwwwuveUWxwxwwwWWuuwvgwxwwwghfwxufwwvwWffewwwwuUWuvfwxeUWvexxxwWVuuwwvwWUuUgvxxwvvwgWVVuUgfWvxwwwggfwwwwwggvxgfwwghgwwwwwwgxggwvwwufwwXfvxgVfvgwvffvgVugggvwfwgxfVfvVwgfvwxxxxwwwxwvwvwwwgwvgvvgwwxwvvwwwvwwxwxwwwwwVgvwwgfwuwwhwvxhVwvxwwwwwVvwwwwxwwwwffwgwVwhgvvfwwVeggwwxvhwwgVgfgwwVvvfwxfvfvfVefgvwfexfvgwwwwvgvgfefuvwwwwfvgvwggwwwfvwxgfgwwvvwwwwwfwwwwwvwfWUfgvvvfwVfufffVeffgvvvffwgfwvfeefgwwfxwwwwwwwxwwxgwwfhgvxwwvgwwwwxwvfggwwwvwvwvwwwwwwffgwwvwvgUvhfwffwwWwugfvWefvgvwwffwfwwvweegwwvwwfvWVvfwfgvvfwwgwvwwVfvgwvwwWUvwgfggfgfwvwwgggxWUfvwwwwgfwgvwwgwxwhwwgfvfvxxgwwhvvwwWVvwwxwuwwwghuvvgVuxwgffgWeehgwfffufVfxfwwxgvvfgfvfuvWfxwwwxxwxxxvvwwgwgvxwwxvgwgwvvwffvxwxxwvwxvvwgwvwfvwvgfwxxfvwxfwwvvggwxwwxvvwghvvvvggwwggeevvfffwwwxhwvwfgfuvvgggvguwwfgwguVVfWgwufxgggwwvfggveVwwgwvvwfgvgWVvwvxffvvVgvgwfxwwwwgvgvffwwxhVUfwwWVeevUfewfvfUffwwwffggffwVeVfeVfgvwxxwggwwwwwwgwwfvvxwxwwwwgwwvgwgeuggvvgwwwwxgffUfwwwvwwufwxgfffwwwwwgwwfgUgvwfwxwwwwwwfwffgwwggvfeUvgffggwwwgwvevUUfvvwvwgfvfgfvgUeffWuvgwwwgffwwvgwWUUfggwwwwwwwvgfvgwwwfvgwwggVeVwxwWwfwwwwwwwwwwwwuUwgffgwvwFVeTWuwfwwwfwfgvffFVetwwwwgVeffvwwwwwwxxwwggvewffwwggwwwwwgwwwwgfUfwwwwwwwwxggvuwwfVuwfvwwvxwwwGfftwfwwwgwwwwxwwvFffhwwfgvefvffvwwfgdUFwwvwgvgvxGfftwwgVuwwffdUFwwwwwfUfffwwdfFxwfUvfWfffUwwwwwwxwuwwfwgUvwwgvWwuwwvvwwwgwwwwvwwwvffvfEfwwffEgUwfvvggfvvgwgvVdggfwvgwvEgfwxxwwxwwwxvxwwwwfghgwwvvgwwwwvwwwWvvwwwwfUwwwwvxxwfeWwvvgwfwffwwxgfwwwgwvwxwuwwwwwxxxWggwgVvfggfVvgwgufUwwgwvVwgfeVwwwggFevfvgwwwgTfexwVvwwvfwvggevvxwgvwxwgvvwgvvgwwugFvwwdffvhgfgwvwvfwwwwwwwfvffuuvgFuhgdVfgfffUfgVgefVfwgevvVwuwvuwwgvwwxwwwfhwxwxwfxgwwwwwwvwgwwxwwgufFwwfdfvwgvwwwwwwvgwxxgWwvVfvwxgvwfvvffwfwggwVgfvwffvvwwwwvwwvggWggfFvgfdfffgvgwvwgvffvfgwgffEfwVdewVwuggufguwgfffwvvwfgwfwwwfgvwwvvffggggfvfvvvgwgwwvvwuwheggwwvvwxvgwffgvvvvfgvggffefVfwvwVfvevgwfvgfvvwvwxwwwxwwwgwwwxwwguxxxfwwfvwggwwxwwvwvfgfgwfwvffwvwwwfuggXgxwvwWggWvvwwwwwgvvwwgVwvwgfvvwfxwvvfwwhxvxwfffVVvgwevweevfWgwvfwwwwwwwVVfgwfwfVwfwvuvwggggvwvwwwwvgwgxxxwwgxwvvwvexwwwwwgvffxwfvwfvwwwxgwvfvwffeUwvvwfgwfffuWVvfeffUUUwgxwvwfwvvwuvgfgvgwwffwxwxxwwvwvfxwfxxwxwgwvwgvfwvffVwxwvvwxgvwwggvvffxvxwvwwewuwgvgvggVfVxwxxwwwxvvvvgfggvggvvfeVVUVxwxvwwxwwvvwwwgvwvwwVUVwfVfVfffeUxwwwxwwvwwvvfgwwwwvvwWWVvxwgfewwggwuvvvgfVgggwvfvvWvgeFefxwgeUfwwvwffuVUUVVtfwvvwwwvvVvfwvvwgwwgvWvwwwfvgwgxwgWgvxwwfvwwgwvvvvVUewgugwvfwxwvvgfvwhwwGgffwwgefgwwwvwwUEvvwvggvvxwvvVwfxxvxwvffFEegfeWwffwwxwffWvewwwGEewxvwWUedVuwvwgwxwvwwwwgwvgvxvwwxhwvggxeewvvwwwgwwwgggvwwwvvvwwwwwhgffgwvwwgfwvwfffvvgeegggvwggwvwgwvwwvwwxxwwwxhwvvhfwwxfwfvwwvwhvwxWVvvvvfhwwgfwwwwwgwgwwxwffwvvwggfwwwggwwwffwwggwwwvwgfwxwwwxxfffvveegvvfggfvwwgwvxwvgwwwvvffgfwvvwwwgfgwwfvgwwwwwwgwfwxwwwxvwhgfxwwvvwwffVWwwhggxwwwwxgvfvvgwwfvwvgfvvUefVfxwXevwwwwwfvwggfvgwwUVVvgxwwwxwxwffwgwxwvvwgwwwvfgfwxgxxvfwgvgwwfggggvwwwVVfvfwwwwwwwfugffwxgwwwwfvvgggvwggfVfvfwfwwhfvvfwwvfegWweeggwUUUvfxfwwgwwwhffvvwgwwwgeefgVeeewWVuwxwwwuwwwwwwwwgggfFdvggfvxwwwvvvwgfvxwvgwWfwgfVwUFduwwhwwfgwwwwvwwgFdffvffWFdUfuwwwwxwxwwwgguvwwwwwwuwgwvwwxggwgvVgwwwwwgvwgfFdvwwgfvgwvwvwggvwWffuwwxwwgwwgwxwwwgguvgwwwWffUfuwwwffwwefVevfwvwwWwUFduffgfvwwwwvVgffwwefVeVwwfDfwwwffeDVeVffwwwwxffvhwgwfWvwVvfggwvgvvgwwwwgwwwwwxwwgXfEfuvffFfefgvgwfvgvggvfFffgfuvwvgdffvgwxgvhwwwwwgvfwwvwwwwgfvwvwgwwwvvwvwwvwffgvwgwffffggWvvwwxwwfFvwufwFgfvwwgwvwwxxwwFfggvWvwwwdffvwfwegwgvvuwgfeVeWgwffVfgWfevgvvwewvfgwfwgWvfgwfTfffVwvwwGeVfwVvwwxwwWVvxxvfwgggfvwvwgfxwxwwgvwvvgwgvvxffwxgWeUfuvgvvvgwvwwWVffvugwgwffffgvwgxwhwwwvwvwvxwwwWwhwevwhwwgwhwxwgwfvvgvvwvvwfgwwwvxggvfwxwvxxwxwggwvwvgwwwffgvgwgwveWvgxgffffvfggwvfffeVuwwegwfwwwxWwgvwegggVfVfUgvgvfvegwwxwwwvvxwwggggvuwuwwwhgfvfwwgvvhwwgwwxwggfggggfvfwfgwgfvffwgwwwgeeeewwwffWwgVwgwwgwwwWvwwwwwvxxxVeggwwwvvwwwvvvfwgWgwvfwwgvwvvhvwgwwwxwgggfgfffvvggwgvewgggwxffffvggwvwwwfgwwxUfwVgVgfwwwvffffvvffggvggwwxfggWvgggwwwwuwvxWVvfvgvvgwhvvwwgwwwgxxveggwgFefwwgfvwwufwwxwwgvfwwWfwvgghvgfUeuwGfewwwffvwfvwwffFEeuVgfwwgeWwxwwwgwggvfwwwVvwwgvvffvgggWfuvgegwwgxxvfgWFuefwwwwxvgwgxwwWfewwWVvvwvfgwwvwxwgffWUevgfgwxwegwxwfggeevwvfgWUeefgWvwwwTgvwvwUUvgwwxxwwggTTggwFVevggwwwwvwwwwwvvxvfwxhwfwvgvwwwugghwgwvvwfgwwfffvwwgfTffGUegwvfUffVfevwevvWfwvVwgwguvwwwwwwwgxxwwxwxwwwgxwwwvwwwwwxwwwWwgwuvwwwxxxgfwwwggwwwwgvwwwfUwfWwuwwvgUvVWfuvwwwwxxwwvwwwgwwwgwvgFefvTfvwfwvgwvvfggfgwvvwVvggevfEfvvWdefwvgwwvwwwwxwfffwwhwwwwxwxggwwvfwwvgggfvwgwvgggvgfwwwwfwwfvfwwwvggfvvvgfvgffeegwvggggwwhfvwwgvgwwwwxhwwvfggwwhwwwgwwfgwwwwwggvwwffwxwggwwvwhgwvwwwwxxxwwvwwfgWVvwwwgwwwfvwxwggfgvhWVvwwwhgvgvveegwwvwgvwwhfvvwwvvvxxvfvvggvffwwwfggwwvvgwwwwwxwfwgwwwxxwvxgvvewgfvwwfwwwfwwfvwwwwwwfggwwuVgffVwweUVeefufvwWwfgwwwgVVUeVwfgwvfvfwvwvvvxwxwwwwwvvgwwgfvwggvwwwwxwwwwgWufwvvgwfgfvwgwwwhvgwwggwffvgeeWvfxgfwwwgwwwgwgVVefVwgxwgvgwvgfUwvfgfevvfffUVfevffvghwwwvwwgUUUVugvwwvUwvggfffgffgfggfwvgwgwxgvvwgwwggxwwWVfvVETxxwwwwgwvwwwfgwwhgwwgffxwwwwweeghgwwgVeVVfffgeVVexwwwggxwwwwwwgffwxwwwwgwgvwwwwwvgfUfwwwwggvgvgeffffFEwwxwwxwxwwwwxwggvvwxwwwwwwggwggvfvxwwwfwvfgwxwggwwwwwwggvVVvxvwwwwwwxfffffwfvwgwweefffffTTvwfgwwggwgwgWeveVvgdTUggxxwwwvwwwxwfvwxwgvwwuguuvfwxwWWfvUfwgueuwwfuvvdfFewxwghwfwgvvwgvgfeewxxwxwwvgwvvvwfffvfgWVfvegwwVvevgfeeuefETwxwwwwghvvxwwwvvwgfgwxwwvuvvgvefwuvVfxxwgwvWwwwhwwvugvufvvgVexwwVgwggwwgxgUvfVfvgxgefWfVDuffwfgvvwhwwwwwfgXvvwXeVhxvwwxvewwgwwWwwfgWwwWfgwgvwxxwwwWvwvVeVfvfgfgffgewxwwwxwevwwfwgggvxvwhwwxwxwgvvvwvvgWvfwWfggwWUVfwgewwxwvxwggwhwxwxwxwvwwwgwVfggwvwwgwggexwwvwwhwvwwgwwwwVgwwwgewvwwvfwwvvwfvfwUeevvfVvguvfvVvvwvWwxwwfGfugguvVwwUSUwvgxwhwvxvgwwwhWwvwwvWhfegdVgxWwffgvwgwwWefgfeWfdfVewxwgwgxvWwwguVxxhwwxwvwvfhhvwwTfuvgvgffVwwfdVvvgUSxxgxgfwwxxwgwvWwgguVgwvggvggvwxhwxwfxvgwwvgwwuWwvgVdxxwxwVgvxvwewvfvxwfgugwW5ufwvVfEfwfWgvwgwfwvgvugWfuwgffghwxwvWgwfxwgwgwwwwvggfvwgfvwgwvfgwwvvwVfewgVfgffggfffwvwgxwgwuVvugVgexgWwvwwvgwvvwgwgWwvvWwwuwWfvgfgvvgVvfwwwfwxvxvgfwwvwgWvuvwhwfWvewfggwvggvgwwgwwfwwwwwwhvwgfgwvggffwwhwwegxvuwvwffvvgwgfefvvwgvfffffgvhgvwwwvwvvwgFffwwdfgvvxxwwwwfwvwwwwwwwwwwWvwwugwwwgfwwxwwwwhfweVeefvwwwvwwwwwvwwxwWgvwwvgfvwwgwwWwwwwvwwvwvugfWwwgwgffufUdfvfwvwVdfwwxgwwxwwxwxwwwwvgeVvufwxwwxwwxvwuwwhwgwwvgvgVugwwwwxguwwwwgwggwwwwwwgwwWfUVffVfvVvfwwwxgwxwghwwxwwveewwgfwwWUfuxhxwwwwhxghfwvwwwhwgwwfwwhwwvgvwUeVgwwfwwwgUfvfwgfwxxxwwfwwwgfwgfwwvwwwwwwgfgvgwvuevwVefhwvxwwwwWUfugwgWwvwxxwwgwxwwvwwwffggwwxwwwwwWUfuvxgfwxwuvvwWuvhwwxwwwwwffvggWwvfwwfvwvwVvggfwfuwWugwxvvgvwfuwvvwwefwwvwggvvwwwefvwfegwfwwwwwwwfwffwggvwxwvwwwwvwwwwfvgvvggwvwwwvwegfvwvuggwwxwgwvxwvgfgvegwgwwxwwwwfgVgfvfWvvvgwvvxvffegvvwwxxwwxgxfwwvwfwgwwgxwwxwvwvgfvwwfgxwwggvwwgvwwwwwxgwwwwxwgvfwwfgggffwgfvvgfwgfwwwxwvgVwwwwwgwxwvxwwwugvgwwxgVgvxwxvgvxxxgfgvwugwvgwgwgfgvWwvvgugfvfgwvwgVgvggwgfhvfwxxwxvggxxgfgxwwxxwwwwgwvvxvgfufhxvgfgxwgwgfgvVwxxwxfwwxxwxvvwxxvwgwwvgxgvgvfxxxvwffgfgfgvgfvhvVwwgwwfufwxfvffvfgvwfvfwwwguwwgvguwxwfwwgwgfwfweVeTEwwwwwxwwwwwvgxhfgfxwvgffgwfvxwWfeffwwxfUVvgveVvffVUwgwwwwgwwwwfffhwxwvgwgfxwgfVUVwwwwveVwwvffWfeUDxwxwwwgwvwfwwxwgfwxwffxwwwwfwgfvfxxwwwffwwxwfgxwfwwwffUwwwwffVuwwggffVUEwwwwwwvguffgVeVUwggfvhwwwvUfvgwWevwgggxwwwwwwvwffvvfggvfwwwgfvhvwhhgVVfwvvvhgvhwghffVefwgwvwxxgvfgwwwffvwwgvwwwwwgvvwwwwwfvgffwweefgvwwxwggVVevwwwwwwxxxxwxhgwgVVvwwvvxwwxwhvfgfvwwvxxwgfwwvvwgvwxxxwgffxwxwwffwxvgwVVfffwvwgwwwvfwwwfUffvwwwwwffwwwwwwwwwvvwwffvfgwxwwxfwwxwwwwwwwwwwwwwwwwwgvggvvwwvvwwwwwwwwwfwwwwxxwwwwwggvfwxxwwxwwwwwwwwwwvvwwgvvgvwffffvfgggwfwvvgwwwwwwwwwwwxxwwwwwwwwwwwwfwwwwwwxwwwwwwwwxwwwwwwwwwwfvwvvwwwxhgvwwhfvwwwwwwwwgvwwwwwwWWwvhwgwvewwfggvwgVvuwhgwwwwvuxxwgwwwwwvgwxwwxwgwvggvvgvggvggggwwfvewvwwvgwvgxgwvfvvwggwwfvvwvwwwwgvxwwwgVgvuewfgefggwwgwfgfVfugvwwwwxxxwgwwwwwwvhhxvxwfwwxwwwwwxxhwwwvvwgwvwwxwwwwxwgwxwwwvevggffvfgvggvfwvwfggWwwwwwgwfwwwwwvgvgwvvfVVffffVufegwvvwwwwwwwggvvwwfgvwwvwwwwgwwvwgwgvvgfvfgfgvgefefffgfwwugvuwgwwwxvVgugvvffvfwvwgwwwwgwgwxwvwgffVVUfeWwfffffvfweUgfgwugwvxxwvxwwwgeWwwggvWgvfgvgvvwffwfwwvgwwwwfggvvvgwvvVwwwuvvgvvwwfwwwffUfeWfWVugwgWwvfgffgvvgwwgwVvvgwwwgvgwvwwvewvfwffwwvwfVfvwwwxwfwwwxwxxwwgvvwfVxwvfWvvggvxwwvvghgvfeVfgfggWvwxwwfwvgwffwggvgwvwVwvfwxvgvwwwgfvwvgfeggffgffwvwwgwwfwvgwxxwwgxwwwgxggxvfwwxwvwvfgvxwwxwgwwwwvwwwvvfwwxwwgvgwvwwxwwvwvwwwwvVfvfwwgugxwwgfvfwffffwvwxwxwwwhvvwwwfwfVvgwwwfvVfgwxwwwwwwwwfgwwwvgWuxwgwwfwgvggfUwffVefvvwwwwWevwwwvggefwvwwwgfvwwffvvwfwwwwxwwwwfwwwgwvffffvVfuwwwwwvfgfgfffwvgwxwwwwwwvgwxgfvwwwwwwxvwffwwwxvgwwwwfgwwwwfwuwwwxwfgwwgwvwvfgwwwUfegvvffevefvxwvwwwwgwfvgwgwgwgvvxxvfeVfgWfuwvfgvwwfgvWvgwffvvfwfvefxgwfvwgxgWwVeFegfdeggwwfwwwvfwvgwwgwxgvvVwhgvwWfwvgwwxvxwgxWWfffVvgfdVwwvxwgvgvfVfugvgwwggwxxwxhgxwufFhwufgxwhxwvvgghwwwxwgvWvgguVwwvxxgxwwgwvhvwgwfFwvdeggfuVwefgewwvgxxwvwgxvwfefwwwwegvUwwwvgwwvwvgvgwvhfuwwvgxxwgfvwwwgxwvwvugggffvWwvvgwwvwwgwuwxvwxwwwegwfwwvgxwwwwxwwxwwwwufgGUuwwfwwwwwwwwwwwwwxwxwwwwxwwwwxwvgwwvwwWwvgwwwwwxvxxxxwwWfuwwvwwwxwxWUtxwfwWfuWwvvwwwxwwwwxwwwxwwvwxgvwwxwvwgffffffwwwwwwwgvwvggwwwwwwgggvgvvxwfwfwvggggvwwwgfffffffffwxwwwwgvwwwwvwwwxwwgvwwwwwwxwgwwwvwwgvwwwvffffffffffxxxwwwwwwwwwwwwwwwwwvwgwvwwvgfxxxwwwwvwxwwwwwwgwwwggwgfwwwwwwgwggvvwffwfgvgwwwvffffffffwxwfwxgggwwwwwwWevVVeefwwgwwwgwvgwxvwwXwvvuwgfvfwwwwwwfvfgvfwVgvfwffvvfeefwwwwwwwwwwgvvfwffvvvwwwwvwffgvwwfwwfwgvfwgwfwvfvvwVUUefffgfwwwgwxwwwgwwwwwwxwwxvwxhwfgwwwvwfgwwwvvvgwvwfgwwwwwwgvegwwvvvgWvgvffwgwwxvvwgwwwwwgffvvgvfffggUwwWffvvWuvwwwvwgvxfwWVfwwfffVVvwwwwxwgxwwwwwfwwvwwgvvfgwgvwxfwwwwwgwffVvwwwwgVfvevwxwvxwxgVffvfggvxgwwwfwwvgvVVwwvvxggwffvvffefVvwfggfVVvfvxxxxwgxgwvwxvvwhwwvwwwfffvwgxgffvevgwxfwwwwwgfffWwwvwwgffvfvxwggfffxwvfwfwwgwwvfefWffvfgwgfwwxwwwgwfvwwUVvwweUgggwwwwwwwwwwwfwwwwxggvwwvfwwwwwwxhwvwwgwwfUwwgvgwwwfeVwfwwwwwwxwvgwwwvewvgfgvwwwfffgvwWvfwxWguvwfvvfefUfffwwgVUVwwwxwwwwwxwwxwwxgxwwwwfUwwgwwwwxgfWwwxvfwxggwxwwwvfgfwvvwwwgffxwwwWVuwwwwhVfgwgvwwgUfvggfwxggvwgfvgggvvvwfvVvwfgeWfxwwwwwwwgvwwxxwwxvvwvwwwwgfvwwwwxwwwfwVfvWffwvgwfgfwwwwwxwwwvWwwggvWwfgvgwwggfvwvgwgfwewfuVwugffefffwVgvWffgwvgwwxxwwwwxwwwwwwwwwwwwgvvWwwwwwwwwgwgffwwxwwwvwvwwwwfgfwgwwwgwfeWwuvvvgwwfxfVvefwvwxwwffxwwwwWwffhwvgwxwgfffwwvgvwxxwwwwwWvvvfwwwwfgvwwvgwwwvfwwxwxxwfweVvuvvwwwvvwxxwwgvwgUgvgwvgwvwwwfvwwfgwwvwvfvgwwgwvfWffUUfvwfgvvvvvwwxgwvwxwwwwwwwwxxxgwfgfuvwwwwwwxwvgxxwwxhvgffwvwfgwvwxwgwgfvgwfwwxxhwXVugwgWgwfgfgwxwwgwvwwvwvVgwwxgfweUVuwwxwgxwfxwggwfvvwvfxwhxgwfgwvfvuwgvfgufwgwuVgfgvwwfUVvVvvwgxwfwwggvvguwwgwxwxwwxvvgwwgvVVeUvgwxwwwwwuvgefwvfxxwxxgwwwxwxvwwwwvfwwxwwwgfgvVwxwwwwwfgxwxwwwvwgwwwwwfvwwvfgfgwgxwwVeegevwgwgwwWgegufgegevvfeVwwwgfwvgwgffwwwvwwfgwgvgwffweVwwwwwwweVwwvwwwfvfwfgfgeVvwwvwvfffvwvwxwghgfwvvxhfgwgwggxwwwxwvgwwwwfwwFUdwfgwgwwwffgvgwvwhwwgwwwwxwggvvgfvfwvgwwvwwxwxvgvfvvwxwWfuwxwwwwwwgvgxwWfuwxxGUdfffgggwfwwgwwxgwwwwwfvfvgwfgvwgvfwwWfuwwwwwwxffgwwxwggwwxvwgvgwgvvwwvwvwgvgwwwwgfvfwfvvxwfvxxwwwwgwxgvgwhgvgwgwvgwwgwwwwwwgfwvweVwvwfwVeuwwgfvwwgwwgxwxwwxgwxwwwwwwgwvxwxxgvxfwvwxvwwvwgfhgwvxxxgwxhwwUUwvwwwwvwxffwwwfgwvwwwwvxwwfwxvgxwwfwwvgUefwfwwhwwxwxwwwwfvvhwxwvwwwvvgwwwwwwgwwwwwfffwgvwwfwVewwgwhwwfwwwvgUfUxwxxvgwxvvgwwwhxgffwfvfxVeffvveexwhwvgwwffgwwwwghffwwvwUvfwwfffefVUexxwwhvwwwwxgwwfwvvwwxgvwwfwwvwWVvwwfvwwwgffwwffgffvfWvwwgfvfgfwWUvwWvvfwgwvwvfvvwVfVwWfgwwwxWvwhfgggvweffwefvgvwwhvgXfWUVVgwgvwgWfgvfgffgWefwWfvvwwwhwvwhwwvwvvfgwxvwggfwwhwwfvWfvfwxhwwwufwxgwwgfgfgwefvxffvVvfhfgWvWVffwwvwvxxvwvwhwxwwxwhwwwwxxwxfwwxwwvwefvvwvwwvwefvwwggevvVfvvwwwfvhwuwwwwfvwvwdfTfgxwfwhvwWevfwfwfvvxwgvvxvwvwwwwxxwwwwwvxfWvvevwfwvvwgwwxvgwgwxfvwwwdVteegwwhwvwvvfgggwxXwVvgwvwvvffwuvegwgvwwwxxWvvwvgvwgwvwhvgwwwwwdVTfevwvvwfvvgxvwxhwfvvxwvwwwwxvwxwwxXwVvgvwwwwwwhvfgggvwwvwwwwwxwwwgGfuwhwwwvwvfvfegvfffwwXvvxeVvTfWfUwwfwvwwfwXvwxgwwWevvvwwwwwGefwgfggvwgwwwwwgwfgwwwugvfffffwgTfuwwwvwggwwwwwwgvfwxgwwgfvwwvggwwvewfwgwxwvwvvwhwwwgevvgvwvvxfeWgffwgdegwfVfeewwfwwvwwwwwwwvgwxxevwwxwxuwwwWwuwgwwwwwvvFUuwwwvggwwwwwggefwwuwvWVuWfVufegfvwhwffhvfWfvfgvwwvxwgfgXfvfgffvvwwffgwgfffwgefvwfvvegfweegwwwvgwVgVFTteUeffvwwgwwhwwvvvwwwweUgggvffwwUefgfvwevvfggwwwWwwVffUeffgvwgefgwWffvxgDEefeegeffvwfvvwuwgwggvwxevfggvUefvwfvwfvgvgffvwWwwwwhgwgfWfffwgwwwhfwwwxwwvfwwhfvwwvUUhvfgfgfvfgwwwvvffwfwggwxwwwvgwhgffvvgwxwwwwfvffVefevggwggvwwxhgfgvwwVVwwfgffwvwwwvvxxggwvwwgfwwvwwvwgvfgffggwwggwfwwgwxwwvvwxgvffvwgwvwwxwwgwffVffuwwgwvgwwwgwwwvxgwgggfwwwgwgvwwwwwwwwfvgwxwwwwwwvwvvfvfvffwvvgvgwwvwUevvwwvffvfgffvfvfvvvwfvwVevfgwUfeefvgwgfwxwwfwgvwwwgwvwwWUfvvwwvfgwgVefwwgvfvvwwwvffvwgwffvfUefwwxwxwwwwwwgwwwfgvvfvwwwwwwfvfwwgwvwwwggwwwvwwwfvwwfvwwggVVfvwwvgffgffeegVfvfwwxwwwwxvgxxwwwwwwwwvgwvwwwwgwvfvfggwxgeVwgvwwvwwwgwwuWwgxwggfWfvxhwvvgwgWfuxWVfvggwgvdfwugWwVwfVwvvgxhwwwgwggvufvgfuvgwwwgwgwwgwwgwwwwwwwgvugvgWfuxWFfwxwxwwwwwwhxwvvwwxguwhwvhgwgwvfwggwwwwvgwxgwvwfwggwweVwweefgwvgWwWwfVwvfwwgwxwvxxgvxxwwxxwwgxwwwugwxvuwvgfvwfvwwvwwvwgwwwwwvxvfuvwwvwfgwvgvvvgwxvwwwvwvgvfgwgugvwwwxwwxvxwxvvvggvvwwgwwvwvwvxwwwvwwwggwgWvvfgfgfuwwhwwxwwhvfggwwggegwwwwgwxwgxwwxwwwguvgVwfwgxxfgwgwwwgvxwwwxhwxgwfgxwwgwgwgwwgwwgxgwxwxwgVwfxwxfxwxwfwfUvxgvwvUfxwwwfwwWfevggfwffvwffWVffWefvwwwwxgwwgvwwwwxfffwvwgwfwxxwfxwgffvwwgwfgxwwfUewwfgwwWVewwwxwxxwwwhvwfvfwfgwxwhwvwwgfvfwvwwwwvgwgfwwxvvggfgUfvvUffwgxvvhvWfefffwwwwwwwwwwwvwxxxwwxvwxwwfwwvgwvvfgvfwwwwxvgwwxwfwvwvwwguUfwwfwwefvgffffffgwvweUwwwwWWuWffUfvwwwgfvwwwfwwwuwwwffwwgffVevfggewvffvwwvwvfwwwwwWffvgvWDDffgwvwgwxwwwwffxvwwWefffvwwffffwwffgwvvwwwWgfwgvwfUffwwufweffffwwwfUwwwwDDfUfgwvwwwwwVugfVvgwfwwwfwwwwwUwWugvWwwWefwwwvggvwwwwwwXuwvgwwwxgvWVuvgwfwfgeVwWvuwVgWwwfffgeVweegwVVfffxfgwvggwgwggfwWeuwwVVwvgwffgffwvfghgggwvwvxwWweVvVgxwggVUUvwvvwwwxwwwgwgfuvffggvfegvwwgwvwgggwwwwvgwffxvwgvgwgffwVfuvgffVfehfvwWVUvwgvgfVevvwwgwfvxvfvwwwvgwwwwwwxxvwwfvgUfeggwwfvugwxwwwwwvgwwwwxgwwfWfvwwvfuggvggfffefVwwwgfvwefwfgffvvfgwxwgwwggvvwvvvgwgvfvwXfvvwwvfvfveWufVgwgvwwvgwvvwefveVvvvTDWwwwggwwwxvvwwgwgvfgggfvvwwwvfvgwwffgwwWwwwwvgfvfWvvvvfwwwWfewwGEtuwgvvvfgwgvfwxwfeWxvwffggggwvwwwvfvVgwvvwxwwfgggffwuvggwwuwwwgfgwvwvwgwwwgvgwgvgfvvgwfveVdfgWfeffffgwhffgfgvffgwffvgxwffvgVwuwggwvWfuvgffwwWfuwgfgWweGvffgvvwvgfFvS5vffWfevvfgwwffffxwgfvwwhffvfffffvffgffvwwgwvfgvwxwwwfeVwffhffwvgxg7UcvfeVvdgWfefffgffvgxwwgwfwggffvggwwgfffvwxwwgfgxhfvffffgvvffwwwwgvvggffxwwwwvvgwvffxVuvfgvvwegwVgfffvvwvvvwwvwuwvfVgfvgwwwwxvwwggggvwwwwfeVfwvwwgggeeugvwxvwwvwwwgwwwUgwWWgvwfwwvggwgvwwwxxwudfffgxggxwffvgwwwwwwvvxwggwgwwwwwwxwteffvvwwgheUwwgvwwwwvvwxwvvwfwgwwwxwvwxwwwwwwUfVwwgwgwwxxxhwvgwwfwxxwxwxwWwgfvxxffvVUwwgfvwgvgfghvVgfVwvfwwggffgvwvvwxwwwhffgWfvffvgUUexwwwgfwvwgwwvgwwgwwhgvfVewwwgfwwfvgwwwxwwwwwwwfwfffffffxxxwwwwwvwvgwwwwwwgwwhggfgfggvffvfeVVxwvxxvwuwggfvgwvfwxxvfwwgvgwxwwwwwwgwwwvffgwwfgfffffewgxxwwewwwxvxvwevvwwxGfffxwffxwwwxvvwUUfVgwWefwwwwwggvwxxvgwwufgUefvVVfvfwwxwwvwfeVwwwwwvfgFWfuwwfUwwwwwwwxwwwwxxwvgefvfgwwwfxwwfgwwxxwxwgfvvxxffwwwuevETdwWVfvggxxxfffeVwwwwwffgwwwwwwwgwWevggwWfefgggwwwwwxgwwxgwvwxWfgvfwwwWfewffvfvggwwwgwwwVgvgwvggwwgwwwwvwwvwwxwwgxhVefvgffvwwfgggwfwwwwfwwwwhwwwWVffffvvwwgvwxwfvwwwwwgvwwhVfgfveVgwwfwhvwwwwxwxwwxggvfwwgwwhwwwxgUefggffwvwgvgwvwwgvwxwwgxvhgwwvwvwgvwxwwgxxwwxxgvvffwwwvgvwwwwwxwwwxwxvxwxvwxwwwWfvgVuvgwwgwFdfgwWwewfvwgwwwweffgwwwwwwfwffwUwvwwwwgvfwvwwVufgvfwggwDfVvwwgfuwvwwvgwwvFUffgwgwwxgwwggvxwwwxewwwwwwwwvwwWugwwfgffwvgwffuwwvvWuggwwwwgfwwvvwVvgfwfwwwwTeevwwwwwwwwwvwwxwgwggwgfwwggwwwwwvwwwwwwWvfwgvfwvwhvUwwVufvwWevgFevffwgffwwweevffffgVvwwfwvdfVeFffWwwwgwwwegvgvgwwwwwwfwvwwgdvwgvgWdfwWgffwwgwwgvVffgewffvveEVfgvwwwfwwvgvfwwgfgwgvffvuwwwwwwvegVvwvfvwvvwxwwggfwfVgwgvggwegewvgwvwgFffffuVfFfvewwwwwvwwwwwwwxxwwWwfggvwfwwxwvfgvwwvfvgwfwfftwgwVfdfwfwwgggwgwfwwgvwVfwfffgfwwxwfwwwwgfffwwfwwwwgvwgvwffwvwwwwwwgvwwwhfgUwvwwfwwwwwgwvwwgffffwUfffffwwxhwwwfwwwwwwwgvwwwwwwUfwwvwwffvwvwwwwwhgwwfwgwwwwwwwwwwwwxwheffwfwwUffwvgwwwwwwwxwwwfwwxUfwvxwwwwwwwwhvwwxxwwxhvvwvgwgwvWgvgwvgfvggvxwvveewwvgVffuwwwwxvgwvfhwVfeffxxgxxwwwwwwwwwwgwwxwggvvfvwgwwwffvwwwgfvwwweewhggVVfuwwxwxwwwxwwggwffwgggvwwfgvwfwwvgwvgvxwwfxggwwwwwwwwwwwvggwVVfffvxwwwWffwxhxwxwwwvxwwxwxwwwxxwxwvggvwwxgvgwwvvwvgwvwxfvvgwwwfggevfvvvwgfggWgWffvgwwwgfvwwwwWfwffgvfwwwvwxhwwgvwvwwwfvgfvgwvwwXffewwweVwwwwwwxwuwwggwffwWeVwwvwwWhxhgwgfgwxxvwwVgfwwwxgUfvgwwvfvwwwwgwgwwgfwwwwwvvgvwgwvgXUfvwvwweVgvgwwwxwvvxfwwxxvwwxwvwwwwwwxevfwwwwWgvwwwwxwXfewgvwwxfwvwwvuvwwuewWgwg6UuvvWfvgwvghxVfgvwhvwhwxWffvwWgwgxVgwwwwvvWfeUuffwwhFvvfwvUgfwww6UUvwWftggvgvwfvffwgwwvwxdVwxwvWhwgdfVVvvwgfvwwwfwwhVufwWgvgwwvgwwxvgwwff7EUUuvwwxhFvvwewwxxvwwwuvgvvvwhwxxgwhwdfffhwxvuwxeeffwWfvwwvuwwxfggvvwwgffwwgfvvfwwwvwvwvffwfwgvfvvfwwxwwwwwwwwwwxwgvwgfggvwwwwwvvwwvfgwxgwwxwvwwgfgvfgffvfvffggvgwxwvvwwwwwwfgggvwwwwwwwwxfvgwwwwxhwwxxwvwxwxvwfgffwvwgwwvwxwxffwwwwwwwwvggfwwxwwwwwwwxwgwwwwhwvvwffvvwwxwwxwwxxwwwwxffffgggwgFevvwwevggvwwgvfvggfwfvwvwgfgfxgvvwvwwfvgwwwgevgfwdVfvvewgfgwxWfugwwvwwhgfxgFfvgwweggfvwwwvvwgwvgwwvwwvwWuvffwwwwgvwwWVvvwwwwxhwvwgfwwwgwvgwgevWgwdVfvvvgvfvwwWfvwwggwwwhwhvwvwwwwfvwwwwwhgvxwfwwhfwfwvwefwwwwwwvfwwwwfvfwwwwwwggvfwwwwfWfeffuvgvfvwwwwwwvvwwfwvwxuWgvwwwwwwwwwwwwwwffgvwgvugwwwgffwvvvgwwvwwvwwvgwgfvVfueVvgvugwgwwwxwwxwweVgwffvgxwvgwwwvhwxwwwwwwwwwwvgwwgffwggvgxwvwvgvvwvgwwxhwffwgwvwwwxwwwxvgwwwxwwfwgggfwvwxwggwwgwvwwwwwwwwhxwwwxhwxggfwfvwwgfwxHdVuwhwwvhwwhwxwwvwwwgvwwGdVxwxfgwwwwvwwWegfvgfvguggfwxggwgwhwgxXvwwvvwwgfwwhffwxwxwvwevgxfwhfvgwGdVuwwhfvwwgwhwgwVfvxwwwwwwfvwgwwwwgvwggxwwxwwefgwwwxwgwFdVewwhgwwwfwwwwfvwfwwwwwgVgfffwfwUgfffwwwwvwgffvwxgvwfvegevwwwvwxwxwvwwxwwwgwwfgfgffgxwwwwwwwwfgffvggvwvvwufwwwwwfgwwwwgwxfwvwfvwwffwgwgevvgfvwxgwwhwgvwxfwvgfvwefefgfvwwwxwxwgwwfgwwfwvxwxwwwwwwwwvwwwwvvxvwwgwwwwgwgwfwwvfwwxvwfgufgvwvvgwgwfxwfwgxhwwwWfVgvfwxhXfvvwxvgwgwugfvxvxgUvwwWwWUVwgwwwwwwwwwwxwxvvggvgwWUVvxwwxwxfvvvvgffggwwvgggwwewvgvwwwwfwxwwwgfgwwwgvegwwgvgfwwgewwvxvvvwvgwWUVvxfgggVwgegwvxxvwxwwggwwwvwwwvxwgfgwwwxwwwwfwgwwwxwxvwwhwfwWUVvgggggwgfwwwvwfwvwwwwwWvwgfvvvuwVfwwgwgwgghvffffvvvwgGVfwwdeVvwxxvfwwgvwwwvgwwwwwwwWfwwevffwwfwxwxwggwwvwvvfwwgvvgwgfwwggvvvxwggvwvffvgwgwwffvvvefgfgwuwwwWwgvwwvvvfFefvvWvwFefvwwxggvvffvgxwwxwwgwvwwvvfvvwvvwgwvwvwuwwxhxgvwwwvfVugvvgwxVfgwvghgffwwwxfwvwhgffwgvvgfgfvwwxfgvfvwfWfvwwveffwfwgVvvvvvxwvfwwxwwwwhwwwwvfWfwfwgfvxwwfwxwwwfwgffVvwwggwwfvvwxvVguxwwgugxwgxvVwwwvfvffgfewwgwwWwwwwwwuwWvfwgggvwfVvwwwwwxxwxgeWwwwffxwwwwwwwwfwfWwwxwwgxwxgvvwwwxfwwWvfwggwvwgfvvgwwwwffwwvuwwwwxwwwwfgfegwvwgwffwwwwggwwwgvugufwg7UefwuwvvwvwvgxxxgwwwxuvwwVfwvwdfvvwwffxwxxwhvwuwfevwwwwwgvvfwwWFVfvwevwvxwggfggwegvwfvwwdewwWgggwwSUvwVvwewfwgwgwXFffvguvwvwwwwhvwxvfvvVfwwwwvvwwdfwwWggwwhevfgWvwdffvwgwgvgggVwgvwwxwxwXffVfgfwgvhgwwwwxwwgWfwwffwwvhwfxWefxwwxwwwwwwwgvghwwWUfugwfvwwgvwxxhxgfwvxxwwgfwvVwWwwwxwvhxwwgewvwugwWwwwwfgvwgwvgfwUfVwwwfwgxgfwvwwgfxwwwgxxwgWwxxxwwwwhwgwgvxwgwwfwVxwwwUfVhwwwvwwwgWwvwwfvwvxfvgwwwvgfvgfexgwwwxwvgwggvwwvwvvfgVGffwwxUfwwfwwwvvwggggwwvgvwgFfvwwhffvwfwwvewgvVvgwwuvvwuwfwvggfgwWwgxgdfxgggwvxwgfgwwvvwvfgWfewfvwwfgxwfgeefwgWwghgdfxgvxfffwxvxewwwwegfvwwxwxgffwggwwfgwwfgffwfvgfvwgwxhfWVvfgwgwxwhvwwxxvggvwxwwxgwwxvwhwwwxgwgvxxgxxwxwwhhvxwwwvwxwwwggwwwwwwgwgvxxwxgwxwxvgwxwwgwwgwgxgwhwvwvwwxwwwwwwvwwvwfvwgwgxxwvxwwwxwwwxwxwgxxwxxwgwwxwvxxgxwxgwwwwwvgxwwwwwxgxwwxwvwfwwfwvxwvwvwwwwwxwxxwxwwwwvfgvwxwxwwfvvfwwwwwwwwxwwwxwwwwxwwwwggwvgwgwvwggvvxwwwwwwwwwwwfwwxwwffwwwwwwvvwfwwwvxwwwwffwwwwwwwwgfvgvwwwwwwwwvvwfwvggwwwwwwffwwwxxwwwwwwxwwwwxxwfwwxwwwwhgwwwwwwwxwwwwxvfgwwwwwwwwwgfvwhgvvwwxwwwwwwwggvwwwwwvwwveWgvwvUVwgvVeuwgffwwwvuwwxgwWwvvvvhgwvfgwwwgufwVggfgvgggfgvvfguvvWgggvfgwggfvvWggvwwgfwxhwvwwgWffvevvwwWfvwwwwwgvvfVvgVeegvwwwvggwVeVvvgwvwwgWwxxvvgWfwgvvwwwgwewwwhWgwwgwgvgfwvwwwfWvffufgvvwwwxWffvgwwvgfWwxvuvffwvvvffWvgwuvvhwvfvgggwwxwwwfwffwwvwgfvwwwwwwxwwwwwwwwwxwwwxwwwwvhwwwwwvwwwwwwwwwhwwwwwvwwwwwwwxggvffwwwwgfvgwwwwgffxwwffwwwwwwffwvwwwwwwffwwwwwwwwwwwwwxgwwwvwwwvwwwwwwwwwxwwwwvwwxvwwwgvfwgwwwgwwxwwwwwwwvvwwwwwvwwgwwwwgwgwxwvxwwwwwxxxwwxvxwgwwgfgWgfgvewvfwwwgffgvwhwvxwxxwvxwxwwwwgvfwvvwwwhfVwggwvwwwvwvgwxWggVwxwwwwvwvwwwhgvwvgwfxxwwwfgvwuewwfhgwwwfwvWgwvvffvVwgvwwfwvwwvgwgvgwwvfwfxxwxwfgwwwwwvhxxgwwgwxwxwwwggvgvvfeVwwwxwgwxxgwvwwwwwwvuufeWwwwwfvgwwvvwvgwwwwvxwwggffgfuvwWggfwfWuffwgvgvfwwwvgfvvwwvxwfgwVgvgefgwvwfvgfvfvwwxWvvgwwwuwgwvvvfvwffvfvwgfgvwxfgwWWfevfvgwwxeffUffwwwxgffwgwvvfgvwwwwffwgfwgvfvwxfvfvwgwwwxgffwxwvwwwwwvfgffvvgwgffwwwwwwwwvwwwwwUfewgwwWwvgwvwwhgvvgwwxxxfwxwuvwwufvvwwVffvwggvvxwuvwwwwwggwwxwwhwwwVufvwggvgwgfvwwwwxgwVfgvwwwwxxgwwhvgwggwxgevwwgwwWfeeffvgfgggwwWUffwuffwfffwffwwwwxwfwhgwxgffwgwwwwffwwwwgwfwwwxxXVfewxvvwvwewVfvwwgwvwwwwwhgweUfwfwwxwvwxffgwwwfwwxxvwfvvvvfVWfuwhweewwwvwvvvvgfvwxwwwwwgwwVWfwgxweewgvwvvvfgfgwvwvfwgwvfgwxwvwwwvwvfgWVvwxwvvwwwxfggvxwwwfwwwvgwwffVegfUfuwfxfvwwgxwvgWVfxwvvwxwxvvvfffgwwwwvwxwwwwwwxwwfgWffwevwwwxwwgvgwwxvwWwxwvvgWfVvuuvwwwxwfwxwwwwwxfwfwWgvwgeevwvwfvgwwvghwfwwgwwwwvwgwwwwxefffwwgffwvvwgffWfgewfwvvwwwwwggvwwwwwwWwwwgVffwwwgwwhUfwwfwwgWevvXVvWffefwvwwwwwwhfvwwwvgxgfugwwwwgwwvwgvgugfwwwwxxwwwxgvwgefffgvwwgwwwvhvwwwwwxgfvvwwwwUffvwgvvxwwxxxwwwwwwwwgwwvwfwvgvFUtWfvvgwwwvvwgvfwwwwwwwwwwfVwvgwveVwwwwwfggwfvfggwwwwwwxwwxxxgwvgvWfugwfgwxwvwffgvhwvwwfwwwvTEfgVfuVgfgwwwwwvgwwwwvWfufgvgwwwwwwgwwwwwfgwwwwwwwggwgwxxvvfWwUfufgweVwwwwwvgxwwwxgwvvfggvwwgxvfgvvwvfwwwxwwwwxwwwgVewwxvvwwgfVeUvxwxwxxxwxwwgwwfgxwfwVUUwxxfwgwvwwWefggwwgvfgffffvgvvwwwwwwvgvfvxgwxvgwfggfefwwxwfwvwwxwwwgfvwvfwfVeUVVxwwxwwwwggfgfwxwwwwwxwgwwwwwwgwfvfwwxvgfwvxvvwgfvvgwwwVeUfVwwwwwwvwwwwwffvgwgvwwwfffwvfffggeUVwwgwfvfwwfvgvvgDUfvwwWfugxxwwggwwwwwWefwwgfvfwvwwwwxgvgvwwxVwgwfwuvvvwwwgVfvwfuwwgUffvvwwgfvgxwffvfwfwwwfwvwgegwwgUfwwwwvDUffvfwwwwgvwuwgUfegvwwwWwwvgvWwgwwwgwwwwfggwvfwwxffwgfVevvwgUfwxwwffffvvvwwwwwugwgvwwwWwgwwguggwwwxwWffwvwvwwvffvxwWUfvwXVvwwwwwxwxwwxwwwxxgwwgUfvXefwwwgffwwgvgfvwwgvwxgvwxxffvxwxhfwwwWevwwxggwgfgfvgfvffwfvfwxfgwwVefeuffgfvxwhVevwwxwhfwwwXevwwwfwwgfwwhvxwgwwwwwwxfgvwfvgfffvWevwwhffwwwwffwfwwxvwwffwfUfwwgwgwgwwwvgfffwwgwvgfwvvvgvwwwvwxxvwwxxwwhfwwwvvwwgwwwhwwgvwvgwvwvwwwxgwwwgggvwwxxvgwwvwvgwwwfgggwggvffgvggwwggwvgwvffgvxvvgwwgwxwvxwxxgwwwwvwwxxxwvvgwwvwwwgxwgwvwxhwwvwgwvwvgwwfwwgwggxwwvhgwwwfwwwwvwwxgfvgwgvvwwwvvwxgwwwvwwfdgggwwFegvwWvvuwwwvvwwwggwwwwvwxxgvwVefugWfvfgwgwgxfwwxewWfgfggwwhuwwxwvewvwwwWvwvwggwvwgVuwfvfDfUfvgwgewfwvfgwxTffvvgwWWvuwwfwxxwwwgvwwwgvvwwxvwwxwwwwwgfvwwgwxvwwwfwggfgwwUgffvgwXfefgwfwxhwwewwwwwwxgwwdVfvvgevwVwwxwhWwvwVVeVvgwgDfuvweVvfwxgwwxwgvwxwwxwwwwWffvvgeVwfwxvgxhwvxhvgeVwfwugwwwfwwwWweVvgfVfuwxvgwwvffVUfeffvVwevVuWvxgfvgwgvWeEVdfvWwvwwvwgwvgwVfuwxvgxwgvgxxxvgeVwvvwxxxwxfffwgwvgwhvVeVguvvgwvwguwwwwWfufggxwhwgfvgwgFfvvwVwwxwvwggwfgwgvggvvvwGEuvwwggvwxxwxwxwgwvgeevxhgvfwfwwwwvvgwxxggwwfwhfvwxghvgwhwwgfvxXVvwggffxwwwggfwvwffwwTTwwwgggfwvWVvwwwfwvxxffwgvvxXVvvwvwwxwwwxwvfgggwvwxhvwwxVVvwvvgwxggggxWVvwvwwhxgvfffgwgvwffwwxwwwxxgwgvfwwvxwwwwwvvwggffwwwwwwwwwwwwwwwwwwwxwwwwgfvwwwvgwwwvwvffvwgfvwxwwwwwwwwgwwwvwxxwwwwwwwwxxwwwwwwwgwwwwwwgwwgvwvvxgfvwwwxwwgwxwwwvgwwxvwwwwxwwwwwwxwwxwwwwwxwwwwwwwwwwwwwxxwwwfffwwwwwwwwwwvwwhwwvgfvwwwxgfvwwwwwwwwwwwvwwgwwwgvwvwXVVffVfvVfvewVvwwxwvgwgwwwwwwwxgwwxhgwwffwfwggwwwgfvgvvuwfggwwwwhwvwxwwhfvwwgwwfwwfwwwwWeefffwfffwvfwgefWvvegwwwefgvwwwggvwxfwhwvvwwvwwwwwfgwwwfwwfwfwwwxWwxxwxhfvvuvvvwvwVwgvvwwgfvgwwfwhvffvwwewfwwwvwxugfwwwwwwwwwxwxwwxxxxwwwxxwxwwefVhxxwvwwxxxggVgwxvvwxvfgwvgfexxxxwwwxxxwwxwwwwxwwwwwwwxxgxwvwwxxwggvwxwvgggufvvwVfxywwwxxxwwxwwwffxwwwxxfgwwwwfvwwxwgwgfvwwgfwwgwwgwxwwwxwwxhwwwgwwwhwvwvfwxFeuWVfwxxxwwwwwxwdfwwfvwwwwwwwwwWVfvxwgdvwwwwxwwwgvwxhvwxxxxxwwxvwwwxwwxgvwwwxxwxvgvvwgwwxwgUVwvfvhwhgwggVUffwwVVxxvxwwwhxwwwwgwwwwwwvwvwxUefwwggwxvvwwvvwEewwwwgwwwxwwwwvvxuegxfwxwwwvwwwfwUeexxxvwwxuegwwwwwxxvwvgdTVvxwwweegvvwwwwwwwwwvwuefxwxwxwwxwxxwhwggwwwwwwfvxvwwwwgwxxwwxwwuefxwxxwwwxxwwwguefwwfwdTVfvxxxhgwwwwwwwwvvwwwwwwgwVWfvwwwxWWvvwwwVWfVUVffWWvvvggwwvWwxwwvghwvwfgwXwvwvwweegffggUfwwwgwvwgfwwggvwwwfvggfvxgVvfwgfvvfwgUwwwvvvvXgfxwewxxxwwwwxxwgvxggwwvgwxwewvwxxgxvgwvwgggwwfwvhgvwwwgvwWguwffffgfVfvfffVwhwuwxgvwwxgwvgwvggvwgwgfweexgfwvVvggvwvvffVeVgwvfvgvgVegvwwfgxwwwwgwwuvvwwwwwvewwgGefvvVggvwxhvwhwvewwwwwwwfwgggwwgwTfvgfvvdffwwvvwwwxwxwgwwwwvwvxvvvxxxxxwxvwgwgwxwwwvgvvwvwguggwwgwwgxwwgwwgevwugfwgwgxwvgeVVdevgfvgvfugwhwwgxwvgwvwwwguvwwwwgvgwvgvWwwfxvgwxwggVGVffgwvhEvvwwvwwwgwxwwxwxvggvvwgfhvwxwwxwxweVwxgfffgvxwvgxwgvgvwwxxxfwfgVfefgvvvwwgfgfUxwwxvfvgwxwwgfhwhxxgxhwvwwwxgwhwfffgvxwghwgxwfwwwvgxwgvgvghvvwwwwwWfefgvgvgffgfUvhwwwffhwvgfhgvhfvhvwvgwfvfwwgwgvwxfvffvfVewvgvgvxwwvfwwxxgwwxwwwvffvfwwvfwfffgwwwvfVefwhwvxwwwwgvwxwwwwWgfUwvwwvwuwVvwVegfewwxwggwxwwwvwfvgxwwwwwwwxwwwwwwfwwwwwwwwwwgvwvwhxvwwwgwwgvggvffxWffVfvwwvggufvgfvgfuffewwhgwxwVwwwfwwwxvxvvwfuwwgfffwggwvwgVfffvxwvwvvggfgVwvVwVfhwxghxhwhgwxwvgvghwvwgEUvhxxwvggwhvgvhUSUxvwwwgwgVgvwwwfxwhxhggwxyxhxvgxwwwxxxwwwwwxwvwxhxvggwhvgwgfufhvwwwgxV5UuwwwfxwwxwwwxxwwwwwxwvgxvvgwwVTevvggvxvvgxvvggvxfvugwxggfxwvvwxvuwwwvggVgfgwweVvxfvwxhwvxwwwxfvwvvgGffwfVgwugwxguwvgeefgvwvwvhwwhwvvgwwvwxxxwxxxwgWwvwgwwvgwxvvwwxvuwwgwwhwwgwvugwwwwwveVVwfwwgwweVwwgvwvgfugwvwvwWwvwgwwwwxvvwxgvwwwxxWffwVVffwgVwvgwwwwwWFfvwwwwfwwgwwhwxwfwxwwwwhgvvwhwfwxgvxgfwVTEuwwxxwwhgvvwwwfwwxvfgxwxwwwwWETuwwgvxxxwwwxggvxxgvwwwwxxxxwwwwxwwwwxwxggvvxwwwfwwUDUwwxwwwxggvvwwwgvxvgwwwxwwxwwwxwwwgvvfgvgEUTvfgfwxvfgwwvfgwfwwwwvggwwxggvwxwgggfwvwvwvfwgffvwwgUffgfvvwwwxwwfgfwvvwwwwfvVefwwfgvwwwgwUVefevvvwwxwwwwxgfwwwwfwwxwwfvvwwwwwxwwwffvvvwgwwhwvxxwhwwvvwvgwgeewfffffgwxwvggeefvffgwxgfvwwfwxwxwwxwxwvvvwwfvfvgwgWfUfVVVfvfwwwggwwwwwWVevwwwwwvgwwwgfWwggwvvgWwhwuwffwVVwwvvfVVvwggwwghwvwfggwWvuwhfgfefhvfwgffvwwgggffwexwvgvgxvwfgwwxxxxwxwxwvvwhwxvvuwwvgwhgwxvxvgwwxwwwggvgfvwwwgvffgvvgWfvgggvgggUvwwWxwfgxwfwfgwwvggwgwwfvVVffeeexgvvevvvVexwfvgwvgfwvvgggvwwxwfxxwxwggwwwgwwgwgwwvvwwwwwfvweewwggggwwwgwfwvggeewxWVvfgvgvffwgvgxwwfffhvxxwgxvwwvwwwgvgwxxwxwvwwwwxwfvwwfwwxxwwvgwwwwvhwwwwwfgwvgwwhgvgwvwwfUfvfvvxwwfUfgvxwgwwgxwgvwwfwwxxwwwwwwggfffVeffvwwgVeufwwwwwgffvwwwwwwwhfgwuxxwwvgvgxwvwgwwwgwfveVwwgfvuxvggvwvWwvgxwvwwwwgWfevWvgvufWfuwwggwwvgwhwwvwxxxgvwgvwgxvwWwwwxwxxggwvvWwwughwwxwgwvwgwwxwgwwwwwhwvwggfgwufFvgfeVgwvxwWggwvVgggwvwwwvWxwvvxwxwgwvxwgwwxwwxfVwwfdVwgvufwvvgwvgfeVxwwwwvwwwxwvfvgxxfgwgwwvwfxgwwwwvfffgwfffvgwwwwxxwgwvwwwwufgVwfwwgxwffvwwvwwvwgwwxfgvggwwwgxxvxwxvuggwvwgwwvWwwvvgxwvwxwwwwgwwxwwufffwuvwxwvfwgwvwwgwwwvwwwxwwxxwwwwwvvgxxgwfffWwfwvgxwgwwgffWwvwxwxgwwwwwwwwvwwwwwfwwwxxwwgvhwvgeEwgvvgVfuwvfgxvwgwwxwfeUfgfeUxwxgwvwfvfwwfeuwwgxwwxwwwwwwxxwwwwwwwwfxxwwxxwxwxwwwxxxwxxwwwwwwfFwwfeVxxwwwwwwwggvwgFxxvgwwvwxwwxwwwwwwwwgwwvgwfeUwvgVTxxgxwwwvvxwvwwgwwwxwwxgfgvwwgfgxgwvxxwwwwwxffuwgVgwwwwvfgxwgwwwxwwxvwwfwvwwwwwwwwwwwwwxwwwwwVfvwggvwxwwgufxxwxwxwxwwgfvhggwVffegwwwhwxhwvwgvgwvwwxgwvfgwgwwwvwgwggVWvgveVgwWfegwwwvvwwxwxwwvhVfffgevvwwfwfwvfwgwgwwvwwwwxwwvfwxwxxwwwxwwxxwvgvvgvggefwxxxxwwxxxwvWxxwxwxgvvuwggVgvggwggvwxvwwgwwwvwxwwvgwwwevxwxxwwxxheVvfwefeVwwwgefxvgwwvwvwhvwwwwwvgwwxwxwwxxgwwwwwwwwwxwvwwwxUUvfgwwwwwwvgvvwxwxwwwwwwwUfvvwgwwwwfffUfxwxxwwwvwwwwwxwxxvwwwxwwwwwwvxwwwgwwwwwwwxwwvgwvgxxwxxgwwwwwfUwvgwwwwwffffUxwwvwwwwwwwwwvwwwvgxvwvwwwhvgvwwgwwggfffwfvgvwWUuwwgvvwwwwwwwxgvvwfggvwgvwwwgggfffvfVVvvwwwwhvwgggwwwgwhvgvvffvfwfVggfeVffVgfewxxwwwxwxgwfvffgvwwwxxwwwwwwwhwwwwwxwwwwwggwvhwvwwhwwhwvwwggwwwwWwvewwwwgwgveWWfWVfevxggxxvwgvwwwwwWgwgwvevwwwxvwvggwwvvufWvffwvfgwvgffefffVvvxwfwxxwxwwgwwvhwwvvvwwggwwwgfwwwVVvwwwwxwvvwwxvfwwwwwwvvwwxvgUffvffgvvwfUfgvxxwxgvwwwfgwwvwvxxwwxxwxxwwwwxxwgfwwwwxwfvvvwwwgwgwwvfgfwvvwwvxwgwvwwhVVfgvwfVVfvvfffgxxwwwxwxvwfwwwwhwfwwwwwwgvvwwwwgfvwwwwwwhffVefffvwWVevfwwxwwwgxwwwwwwwwwwfVvuxgvxwwwwvxwwgfUVuwxwxwwgVvwwxwwwfwxgwgVvuxwxWFetfxwwgxwwxwwxfWvuwxwxxwwwwxwhwvhwxwwggvwvgwvwwwgwwgwwxgWvwwgwwwxwgwVFetxwxgWfuvxwwwwvgxwwwxwgwwxwwwwwvwfeWwwwwveWwvvgfeWVeUgfveWwwggwgvvgwwwxwwwxfgwwwwvfgvwwVWfUvgeVwvgwxwxwugwxwvwggwwwwgwguvfgvwevvvvvwxwwwwxwwwgfwwfgxwwxxwwxgxgwvwxgfwwxwvgfevxwwwwxwggxwvfvgfgfwvgwhfVvgwvvgVwwgwwvwwwhwxwxwwxxwwgewxxVfewvvwWfuwwwgxwwgvfVvwgwwfhVfwxvvwwwwwwxwxVffvxgvvwwwwxxgvgwgwvwxwxgvgwhwwwxxfvwxwwwxvwWffffwwwxwVwvwxwwwghwxWffwxggwwwxwwwwwwwwwxgegfxvfxevffffgfvvxhgwvwwxxgvgwwwxwvwwxvwwvgffuffvwwxxgWgwwwwwwwxwwgwvgwwwwxwfgwxwwefwfwxxwuwxwfVwfwfffwwwuwwgvxvwvvxwvgvxxwwwwwwfwvwwfgfVuwwgffvfgvfwgxwxvgwwwvgfvfWVfggVfuwvwgwxvgfffffgwvwwgfgwxwwwfwfgwgxxxwfgvwwffvxwwxxwwwwwwvgwvwggvxwwwwfwvgggvfgVVeefuwwwwwgwfUvwggvgwwwwgfvxfwxwwxwwxvvwvgxwfgvwwfwWfeefeVeuwwgvvwvwwwwgVfufwwwxxwwwxwwwwwwwwwwwwwwgffwwffvwwxwwxwhvwwxxwwgvvfgwwwwxwwwwgvvwwxwwxxwwwwwxwwwwwwxxwxxwwwwggwwwwxwwhgwwwggwwwxxxwgwxwwgggvfxwwwwwwwxwggvwwwwxwxxwxxxggwwxwwffwwwwwxvfgwwffxwwwwxvfgwwxwwvfwxxwwwvwwwgggvgvwwVvvvgVtxvewvvgwwvwgwwgevwvgvwfwfggvvWeVVdefwwWfgwvxwwvwwvwwwgwwwxxxwxwwwwvwfWgwwgvgwvggwxwvxwwwghwwfwwwwwwfEwvfftwgvwfvggvfwgvwwvgwwwwhxwvwwVgxvgwvwwfwwwxwwgfvfEvuweghgGVvwgwvgvwfgggwwwwgwwxgvwxxwwwwwwwwhwvwwgvwwUfwwwGEevWUefwxwwwhwvxwxffwffwwwwwxwwwwgffvwwWevxwwwwwgwgvgffwxwwwwwxxxwxwhwwwxxwxwhvwwggwwwwwUfwwffvgvwwhvffvVUefgwGExwwvvwxxxxxwwxxwwwwxffvwwffwwvwwwxwwwwwUfwwwwfUfvwwxwwwwgfvvwfwwwgvwwgvwVefevUfeffxgxwwguwwxvwwwwgwWvWvwgfwwwvwdfTffvwwvwvwwxgvwgvgffvgeefxxxvxwwwxxwwwwxwwwwwwwwxwwvwwwwwVwwgwhewvgvvwwvwWwWwVevgevfwufvdfTefeefeggwwwgwwwwwwwxwwvwwwwwxgwwwxwwhwgwwwwwwwhwgfwwwwggvgwwwwwvfVvvwgwvxwfwggWgwfWfwwvwfDUVvFfFUVvwxwwgwvXwWgvgvwwxvvwgvffWffvgggWgvfewwwwwvgvffWvfwVffwxxwwxxwvwxwvgxxwgwwgwwhgwwvxwvwwfggvvwgVgvWgwvwvgevgWvevVEVfwfVffUgVDxwwwxvwwwxgwwwwwgwVwgvfwwfvvwvvwvwvgvxvvvgvvfvwvgwVfwfffvwwwwwfwwgvgvwfffwwwvfffgvvVVevfUVfffgwxwwwvvvwffvgfggwhwgvfgwvffUeevffvvUVevwwwwgfggffgvvfvggwxxwxxwwvxwvwggwxfvwvwwwvwwggwxvwgvwgwggffvfffgwvffwwwgfwgwgfvffUVevfgvgUeeffwwgghxxvwwvwwgvvwwgwgggwgvwhgwwwvwwwhwwvwgfffwwvwwghwggeGfvwwwvvhvvwwvfwggwwVfggwdfvefFfUwVVgvvvvfgwwxgwwhgvfvxfvwXfeWVffwfggggwwvwxgvuwwfVfwuwgEvvxwxxwxxxgvvgwxhgvwwgvwwggwgxwvwvxvgggewfVvgWvvugvvfuwWfewVFfffeEfVVggewxxvffhwwwgvwgvgwwgxvfwgewxvvvgxwwvxfvvwwgwwgwgwwFvdVhwwxuXwegfvfWwwfwggefvfvfFfefgdffdgwWwwgvvvwvwfvwSUwwWwwWwwdffgffwfgwvwfwwgwhwwfgwEVeudFwweugwxxxxwxuwwWwuwwwxhvfwxwwwfvwwwhwgfvfdffgvvwwdfvwgwwgxgBDffefgdffdgeugfvwwWwwwxwxwvwwwwwvwgxxWfvwwwwWwwWwwwwwgvgvvwwxxwhfwwgwxgwgwvxwwwwwwwwwwgfwgggwfvSUwvgWfewVDfwfwwhwvgggwgwUfvwUfvxwgxxfwggfevgxgfvwwxwvvvggxwxgffvwxxwwwxxxwxwxvwwwxxwxwwvwwxwvxwgwvhgvefvgFdVwxgwfwfwfVgffgV5xxgwxxwgwwxgwwwxgwwwwffugwwfexxwwwxwvwwwfUxvwvfgxwxhwwwwwwwwwwwvgffwwwffwwvwwwxwxwwwxwwwgfvwwwwwwwwwfwwwwxwxgxwwwwfgwxwwwxxxwxwwxwwwwxxwxwxwxwwwwwxwwxwfwwxvwwgfvwgvwwfgwwfwfffvwfwxwwwwxwxwxwwxvwhvvwxxwgwwwxxwxwwwxxxhwxhvgfgfvxwgwewwfggwgwxxggfWffggeVffffVVvvgewwvggwhwggwwFfvvxdfvwxVwgwfvwWwwvhgwgwxwwwhvuvvfgVvgvfvwwwxxwwxxwwxvwwvwxwwwwhwwxhxxxguwffgVvfvvvggVefvgfffwvFffvVVfFfffwgfvgvwwwvvwghwwgxhwghfxxvwfgfwwvwwfwwgfggvvwwgxvwvfeegwwgvxwwgwwwwgwvvffvVVvggfeefffffxwvxwwhgwfwvvwxfwwwWefvvwwwwvgwfvggweVfvwxxwwggfwwgfvgffUfxxwwwggwwgvwwwxwwwwwwwwwwwvfgvwwfwvfwgffffVefVevwfvfffffffgeUffgwwwvgwgvwwwwwwwwwwxwwwwwwgwghffvvgvvfwwwxwxwwwwwgvgwwwfWfvwwwvwfggwwxgewwwwxgWfwfUUufgFedwUVVvfggwhwvwWgWffvwUVeWefUgfvvgggfwFVFVgWwvwgwwvVfwwwgvvwgwgwwwxwwwxwwxwwfwwwvvwwwwwwxwwwwwwxwwwvffwwWvuwgwgggefUVvgdedgfvxgwfgvVVVeggguvxwvwwxvvvxwwwwwwwgwgwwxxwwvwwwvfwfgeeevvfgwwwgwxxwvwvfggwvveUfgxggvwhvwffvwxfvffVVeFWefTVUfdffggvwguwewwuwveUfWvfvWwgwUfwwvwgfwvwwvwxvwgfffgvgUwfwfwvwwxxwxxwwgfvhwwgwwxfvwwwUWvfgvgewfwvwwuffUeVeVvgWEfgvvwgUfdfefwwvwvfwgfvwhwwwgwwwxwwvwwwVevwgwwVeVvwfwxxwwvgwvvwxxwgwwhwwWwWVuxwgwvfwwwhgvwwwwgvgwVfefweVggVfeefuxvvwwxwwwwwwwWVvwwvwefVggvwwgwwwgvwvgwwgwwxwgvvUvwfggfwfVfxwxxxwwwvfwgvwxwwwwwxwxwxxgwwffwwfggwwwfvfWVuffufUeVggfwfVfuwgfgfVwffwxwwvgwwwvwwwwwwwwxwwwwwxvgwwfvwwwgwgwvgwwwwwwwwwgvwwxwwwwVdfvwwwwgwwWwwgfwwvfeweVVUfwGdffgvwwgwwwwwgvgwxufgfgvwwfgwefxwwxffvvvwwwwEVwgwgffUvgwvwwwwxwwwwwwwuwxVfwwgwwwfwxwvvgwwwwVVwggwvvfwwgvwdfgDVevffwgeUwwwwweUWevwwwwvwwfwwwxxvvxwwgxVfwwgwxhgfvwgwxwgfvxxwwwwxfeewwwfvhfggffwfvwvvgwheVwVgvgUeVfwVffgwwvfwvfvvvgvgwgVfvgwvwvvweeffggwgvwgwgwwwwhffxgVvwVffvwfgfwwwvvvvgxxfhhfffvwwgvvwgwvwwggvgxwwxhfvvfvfvvgwvvwWUUfvgefgvwUVVfefgfwwwwvfwghfvfwwvwvfvfgwwwgvxxxwwwXffefevwvvwgvwwfvwwwgwwwwwwwwwuvfvwwwWffwwwxwwwwwwxvwvwfUUuwwWUfwgffgwgvxwxgwwwwwwwfVegfefwwgwxwwgfwwwxwwwwwWgfwwwgfvwwwwwxxwwwwwxwwwwvwwwwxwwwwwwxwwwwxwxxggwwxxwwwwwwwvwvUUegVffuwfwwwvfWffwxwwwwwwwwwwwwwwwxwxwwgwwwwggffvvwwwwwwwwxxwwwwWgfwwxxwwfvwwwxvvwwwxggggVUUevvwfffwwvwvvfwwwwwwwwwggvgevfffwwvgwxwgwgvwwwxwxwwwgeffwwwfgvwwwwwwxwwwwxwwxhvvwwwwwwwxwxwwxxffgwwxggvwwgwWVeVUeUfffwwwwxwwwgfvvwvgwwwwwwgvwvwwwwxwwwxhegwwvuffwwvvwwxwwwwwxxwwwwwhefeVwwwfwvxgvwwvfwvwgvfffVfeVfveVfffeWfWfuhwvhfgwwwveVWfEUdWgweVvggvwvggggffwgwwweWUuWVuvgvffvgwhxwxxwwwgvfgwvwwgwwwwvfwwgxxwvxwVWfuWfueVvwwfwuC4ffUfeVfueVvgfeWvgvvggwfwgwwgwgwvgvwvgvgwwgxwwxwwwgvfwvfvwvvfwwggwwgwvwxwgwvwxvwxwvwwffvwwxwwwwxvgfwvwgfvvfvgeevwGUTUUwwwvvwxgwgwwxwwwwwgfvgwwgvfwvfwvwwVfWfvuxwwxvvwwwxgwwWUexxxxxwwwwwwxwwwxwwwwwxwxvvxwwwwgwffvwwwwwffffgwggfffffgfewUUUUExwwwwxxxxgwwwwwwwwwxwwwvgwwgfvfvfwxwwwgwvfffvfwgfffwUUfxwxgvggvffwvgwwgvUfgVefVefUfUfeefxwwwgvwffwwgwwwfwffVefwwwDUwwvvwUfffwvwwwwwwxhvvwgvVDUUVvfwxxxwwwwxxfvwwxhfwfgfffwvwwggfvwwwefUffwwfgwUeVefgvgUffwvww3DeffuegfwwxwwwwwwwfwxxwfwfwwwxwvgvwwgufwgwwwxwhvgwwggwgvggvwwggVevggwwfgxggwfwwgwwwvfvwwwwffgvwWefvwwwfwfwvgwgvwvwwfvwfgvfwhffwvwwgwgvgwwwwgvwfgwgfwfvWefwwwwfwvfwwgxxgvgfxgwxwfwwwwwvxvgwwwwwwwwwffvfvgfvvwwfvwwwvgwvffgffvfgffvwgfffwwwwwgwfwwvgwgwwhvwvwhvwwxfwfwwwfwvwvwwffvwwvwwwfwvxvwxvfevxwxwwwwwwfvvfwwxvvuwvffVVfWfvUfeVgvwhwwgxfvfwfgwwvvwwggwwgeefwfgweegwxvwwwwwwwggwggvvvfvWvwxwwxxwxxwwwwwxwwwwwwxwwwgwxggggfvgvvfwgvwfeeffVVvwwgvefvVfwVegwwUVfwwwwwwwxwwxwwwwwxvgxwxxwwgggfwwhgvvwwwhfwvvgwvgwxwvwwgwvfegwwgwwgwwvvwuwwwwwxfffwWwwUffugWeffwwwwwgwwfwWwwwwwewwwwegwwwegWfvwwWfugwwwwwxhggggWvvVfwegggvwxwwwwxwxwxxxwwwwwwwxwvwgvwxwwgwwxwwwwwhgvwffwfvWfwwwfdfgwvdVfgTeVUfwvGVefwffgvwwwwwwwwwwwwwhwwwwwxwhvwvgwxvwwxwffvwwwwvwfwwxffffwwvggwwffvfgwwhwvwggvgvvwgfffgwffwvwwgwvgwvwwvgwwwvghwgwxgfgvffvvgwwvvwxwvwvgffwgffvvgwwgvvvfxvwwwvwwwgvgvwfxvhwwvgwwwvvwgwvwvgvfwwwgvvgvfwvwgeVwxwwwwwgffeVfffvgwvvgvvgwgvwgwfxwgxwwwwgvxvgwhwxgwVfugwwwvhwgwwwhwvwgwggwvwwgxwgwUVvxvwxgggxwffvgwwwwWVvgffgeeffWVfVuvgwvxwgfggvvwfffwweefgwggggvwwGEugvwfvvwwxwwwVUUwwwvvVUfgvxwxxwxwxhffwvwwxwxwwxwwwwwwwwveegvfwggfvfwfVVfwvCCfUfwggffgvVVvvwgfvvwwwxwvvwwgwxwwxxwwwgvwwxwvvgvwwwvvgfwfgwgggvwxwwwwgwfxwwxvvffwwxxWfxxwvgvgwxvwfffUVfgffffffefVwggvwxwwwfgvwgfvgfgVfevgvvgxwweVvvfwwwwwwgffvgwfeVvggvxxxxwwwgwvwwwxxxwwwxgggvgwfvfvgwwfeVfffeUffueVwwgwweVfvfwvwvwgwwwwxxxxwwwwxxgfvwwwxgffvgvwwwwwwwwwwxwwxgwwwwxVffvgwgwwgfwwwwggvwwwxgfgwGUdVEUfUVVeefwgwvgggwwwwwgwwgUefvweffvvfVvfgvgWfvuwffgwwwggwgffgvwwefvgvwwwwwxgxwxwwxvwwwwxwwwwwxwxwxvvwgwwgwfwwgwWUVVefUffwfTeeVffwGfUfggefvwxxwwxwwwxxxxxwwwxXfffvvwegwwfwwwvggwvwwwgvvwwxvuwwwwwxwgwwwufwfufwwgWwwwewfgvxgwwfwgwUUfwwwwwxwfwwufwgwgwwVUffwwwxxwhwwvwwVfwxwxwwwwwhwgvvwwvwwvgxwwwewxgwxgvwwvffVUfwvgwvwwwwwfwffwwvfwwVUfffgwxwgfvwvfwwwvwffwfwwewhxwgvwhwwgfvgvgwgvwhwvgvhfvgwWfvwggwvwhwwwxxwwfwgggwwWgfvwvgvwwWvvvgfwwvwvggvwWUVwwvwwxvvwgvwggggwWUVvgwgfwwhwwwwwgwvwgfgwwxwwxwwwxwxwwwxwwwwwwwwwxwffgwgxhvwvuwwwWgeWUVvwvxvwvxevwwwvgggggUUVfgggegxffwxvvwwwvwvgwwggggfgguwgwxwwvwuvwwgwwwfvvwwwgwgvvVfVwgvvUvvvgggwxxwwUgwxfvgvefwgwggevfffvvwwvgwggvwVgwwfvgwwwgwwgwwwegwwffgfgvfwgvwwwvvghgvxxwwewwwewwwwwgxwvgxwwwgvwhwxgwxwwwwuvwwwwvhwggvwefwwefggwgwwwwwwwegwwevgewvfvuwwwvwwhfvhvvvwvgvvwwwevgwwwwgvvwgfwvwgwwwwwwwgfVfvvwxwXgwwvwwxwggwgvfwvwwwvwhVvvvgfvxwxvfxwgggfgvwwvgxwgwgDUvhvhwwwwxwwgDUvwwwfVvfggxxvwxwvxwVvwwwhwwwxwhwgwgvwxwwxwwwwfwwwggwxwvfxwggfDUgwhwwwwgvggDUvxgfwfVvgfvgwwwWvvxwfvffwvxgUfwwwgfgwwwWefwfvggvwwwwWfffvwffgvwgvwwggvfvwgfwfWgWfvwdfxvwgvewwgwgWvvvvfvfvwgFfvgwWufwwvvwvdfgvVgwvxxufwwfvwdfVwwwwwwvwwfWgVgwwdewxvwxxxwxxxvwwwwwwgggwfgwwfvwwwVvgwvVwggwVSUvwvvwwuggwWgwvxSUwwfvdeVvwvvwwwwWwwwwxxvwwwffevfwwWffwfgwgggfwwwxhwVfgvwxwXfwwfxwxfvvvgwgxvfdfgWwgvxvfvfxwwgfgwwgvggwggvwgffwxGfvfwwgvxvwfgvffffwvwhggwwgvgwgxvvdfwWwwvxwwffwgwggwxxVvwwwvVwffffwgwwxxvxxwwwVeVvxGfvfwwgvvxfwfvVeVVffvvwxfwwwxWwwuggVggvvfgWwvgxwgwvxwvfgwvwwxvvwhffgvweeggvwwgvvvvfvwgfwxxxfvffwffvfgWfvggwffvwfggwWgvxwhufwwfvgwvvgfgwhevvwwgwxuwUfwgvvwvfvwffwxwhfvwffwwwwwgvwwwgvwwwggwwwvgwwvvwwwfvvvgwvwvFVfwwgdewwVvwwvvgfWwWdfvvvwwVwwuwEffgvwwvwfggwwgvwvvwwwvgvggvwvvwwgfwwgfwffwfwfvvgvggfwxwhfwgfwwhwggwwgwxwwwwxhwxhgwwxwwvwfwgwwwwwwwwwgwwwhwwwwxwwwwwwgwhhhwwwgwxwxxxxwvvvwxwwwwgwwxwxxwfxwwwwvhwxxwxvxwxwxvvwwwwgwwfgxwhvwvwwwxwwwwxvxwgxfxwxwxvwwvwxwwxwwhwwfxxxwxvwvvwvwwwwvwxwwwgwgxwwxwwfgwwvwwwwwgvvwwgvvfvvfvfvwWgvvwvffvwwgvvgvvwwwffgwfgwgvwggwvgvwvegwwwwwfwwfwwvwwgwwgwvwwwfvwwhxxxxwwwwwwwwwgwxwxvvxwxwvwwwgwwWvvhgvgxfuwwefgvgwgfwvgwfeggfvwgwwwwvwhfvwgWwfgwwvvwxwfgwwwwwWffwgVvfvwgxxgwwvwgWvvhxwxhvgwgvxgvxwvwwfvwwxwwwggffvWfuwfvwfgvwwfefwfwwgwgvvwVUVxgwwwfwVeUxvxwwvwwgfvvfgWfvxxwwgxwwwwwwffwwxwxxxwxwwwwwwffxxwwwxgwwwwgvvffwwhgwwgUVwvvwwvgVeUxwwwgfwgfwvgwWVvwwweVvgfffxwwxfgvgggwvggfwfwwfffwwffffvfeUwwwwwwwwggwwvvwgwfwuUfvwwggvwwgUfvvxeeUfVfeWgffUfffuwfgWeVgvwffwwvwgvfwVefvWvwgVvwvwwffewvvwwwwuvwggvgwgUffvwwxwwxxvgwwxwxVevhwxfwxfwvwvwGWefgwgTfvwvvgfVwUTfffwwgVwwvwwUwTffvwwgwewWefvgwwfwwwfwvwgwwgffwXvwWeFfffxwwxgwwxhvgwvwwwwwwwwwwwwxwwwwxwwwwvgwwwwwwgwwwgwgvwwwwwwfwwwgffwwvgwwvwgxwwhffwwxwwwwxwwgwwwwxwwwwwwwxwwwwwwwwxwwwwwwxxwwwwwwxwxwwwwwwwxwwwwwwxwwwwfwwwwgfvwxwwwwxwwwwvvgffwvggxxwwhwvvwwwffvwwvwwwwwwhffwwxwwwwwffwgxwwwwwwwvxffwgwwwwxwwvxwwhvvwfwwwwwxwwvwwwfvffvfffwgvvwvvfgwggwgxgwvwwwwgvvgvggwwvvwvwwgwvgwwgwwwwwwwvgwgwwgwwvgwwwgwxxwxwvwggwxvwwwxgwwxwfggwwgwgvwvfwwvvvfffwwvwwvwvgwwwfwxgxvwvvwgvgwwvwwvwwwxxvwwwxxwfffwwvwfvwfwvvwwgwghwwwwxxwvwwwxffvwwggwgwwwvwwvwgwheUffffwVffewVffvwgfvvvvwfwvwwwwggfffgvvfwwVwWggwwgvvwwgwwhwwxgfwwvvwwwwwwxwvxwwvwwwwwxhWwgvwvgwgvwwxhgwwwwXUugffwfgfgvwwXefWvgegfxwfgfgwwwhgvwwwwwhfvgvwuwwwfgggwwhwvwxwxxhewugwwwvfwwwvwwxwfvgvwgvwwwwwwXevvffuewVWvvWfuwwvgwvwgfvgfwffgvgwvggvwvgwfggvwweVwvwvffvWfegxgeVfffvfvgwwgwwwwwwwgvfgvWfuwxvWwvwvwxwwwwwxwwwfgwwfwvfxwwwwggwvwWwwwwuvxwffgfGUtwgvgwwfTEwwggufwweVwwfvfvgwwvwvwwwvgwwfwvgxwvWvgvuvwxxwwwgwewfVgvwuwwWgvwwggwwwwwvhwwwwwfvgwvgwffeeggggwvvwgwfgwgvfxwvvwgfvvwgffvwWVvggvwwWVffvvvgwwggwxvWVwxvgxxxwggfeeggvwwwwwwwxwhwgwwhvvwwgvwxgxxwwgwwwxhfTTwwwgggvwvwwWVfvfTTfgwhgwxwwwggvvwwwwxxwgfvvvvfvgwxwwgwwxvwxwwwwfvvgffggwfvgvwwfxwxxgvgxwxvffwwgWfxxwvgxwwwvvfffffvgwvfgwgfwffVfuwweVwwwvwveVgffvffgvvgwxwwwwfvgwwwwwwgWfxwwvgwxwwwwwxwxxwvggffwvwgwxwxwwxwVWVvxxweVwwwwffffeevVffueVwxwfgfwfwwwwvggffwvfxwvgwxvfwwwxxgfvwvhgfVffugxwvwxwxxhwwvwwxWggvgwwwvvfgwwwgwwwwwxGfggGVeffTfffWwgwwWeefvwvWffwgvgWVeffffgfwwWfwvhfggwgwxgwwxhwwwguvvwwwgwwwwvwwvwgwwwwwvwxwgvgffwwgwwwwxxwwwwwwxgdegvwwVvvwwuwGVVWfgfvfwwVfvwxuwgvgwwwvwXfvwufvgWvwgwxwhwgfgwwxgTfwwWvwugewfgwxwwfvvwwwwwwwxxwfvxwfwwwwwxgvfvfwvggevxwwwggwgveufgwwvfxwwwvvfvevwwwhgwwwwwwfwvgwfvvwweVfwwwggvwwwwwxgvfwfgvxwwxxwvwxwwwgwwwwwwxwwvgwvgxwwwvfwwwgfvfuffvwwwwgfgwwgvwvgwvevfgwfVvvwwxWgwgwvvgwwwwwwfwefwvgwwwggwxxXWwwwgfvwxxggwvwwwwwWfufwwwwvggvgwgfvwwwfwffWefwwxgfvwhvggwwfvgfwwwxgwwgUffvWvgwwxgvwwwUfwwVeVuwwhfwwwgvgwxwgwwwxwfgfvWefwwwwwwwwwwwwwxwvvwwwwxxwwwwwhvwvwwwhvgwxgwwwfwVfFTewgfvwwwUfwwfvffwwwHTuwwWvgwwxwwfgwxwwgvwwwhvfwwhgfgxggwwwwggwfgvxfwwfwvgwvfvwxgwhgWvgwwWgwwvvwxWguvfWgvgwwwgVffwwufwwwwgvwfvuwwfgvevwwxwhfgwwwfgVgfefwxwwefvgwwwWgwwwwwwvhxgfuffgwvvwvvWwwxwvwwwwxwvgwgvwxwwwfvfguvvvggwvwwwVeuwfUVfvfwfwwwgvwvgwvgVfVeefggwvUfegwgfgwwfvfgfffWggvvwvgvuvvfvgwvwfffggvhgfvvgufWggwgwvVggwguwwwffwfgxwfvvwwWVvwvffwxwwggvvwgfgwvwwwWeefwXgfvwwwwvfwwxgwhVgvvwfwwguvfxwwfgvwwgvvwwXVvwwwwwwwwvwhfvvwwvwwwvvwwfxgfvwwhgwwwwxwwwWeevgXefwwwfgvfvxwfgUvwvwfwxXeefwffwwvvvwwffgfwvggwvwxvwwwwwfuwwxwxWwgwufgweVgwgwgwwwwxgvffwwwwxwggwwwwwwwfffwwggfvwwffwwwwwwwwwvwgwwwwwwwxwwwwxgwwvwvvwvgwwwwwwwwwwxwwxvffwwwwxwwwwxwwwwxwwwwxwwwwwwwwwwwxwwwwwwgwwxwwwwffwgwwwwwwwwwwwwxwffwgwwffwwwwwwwwwwwwwwxwwwwwwwwwwvwwwgwwwwwwxwwwxwxwwwxwwwwggwvxgwwxxfvfwwfgwffvwffvfwgwwxefwgwfwefvVefwwwgwwgeeffwfvwgwhvwwwwwgwwwfffffwwgvvwwwgwhfgvffvwffgvwgvxxvvxvwwgvvwvwxhfwgwxvwwffvwwwwgfwwxwwXwvgVevwgffwvghefgwvwwwwefVffvwgfvvgwwwxXVwgwgvgwfggvvvggvwwwxwwxXfvewfwvwwwxUfgwvvgwwvwwxwwffwwwwxgfwwxwwwwwwwwfvgfwwwwwggwwwwvvwwwwwwwvgwwwwwwggggvvxwwxwwwxwwwwwwwwxggwwwwwwvwgxwwwxwxxwwwwgwwxwxxxwxwwwxwggvxwwwvgvvgwvvwwgfvgvvwwwwvwgwwwwwvwgwwwwwwwwgwwvwfwwwwwwwvfgxwwwhffgwvwwwwggvvwwwwwwxxwwwwwwwwwwgfwgWwwwfvwwwffvwwhWgvvfvvfvfegVVvgwgufvvwwVfwwgwwWfvgefvvwwwevwwwwWevwwgwwhWwwwfvwwwwVgvwxvwwwwwwvwxwhfwwwwxhgvgwwxhufvvwwgfvxwvwhvwWfwevfwwefvxwwXfffwwfwxwwgufwwvwwfvwwxhwvfwxhffwwUevwgvwwwggwwwxgfvwwhwWwwvgvwwfwwvwgwewxxfWwwwUfuuggvgvggxgfvgefvwwffgwwgvgvwgfvwwgwvefwwwwgxfwwxvgvwwewwvwgffxwvfwwwwwwwwwwgwwvXvwxwfwxwwwwgvwxvfwwewfvwufgvWffvWfvvhWwwffwwwugwwvwwxVfvvwWwvwwgwwfgwwwvfwwxgvvwvwWfuwwgwwxgvgwggvhfwwwwwwwxwxwxwwwxwxwwxxwwgvgwwxwwwxxwwwwwxwwwwwxxwxwwwwxhvfwwxwgvwgfxxwwxwwwwwggvvxxwwxxwgfvxwwxwwffvwwwgefvwwvwfVeVUwwwxwxwwwvvxwwwwwwvfgxwxwwxwwwwfffUvxxwwwwwxwwwgfvvxwfgfefVfuxwfvxwwwwvfgeVwwwwgfgVegwfvfUUxwxwwxwwvgxVvfxwwxwwwwxgwwxhxvxwvwwwwwwgWugvvwwwvwwhfvfvvwVexwhwwgwggfufwhxvxwxwxguwxwvxwgxVeWugfxfwfwgfeUgegETxhxxwgwwvwwxxwwvfwwwxgvgwgfvUvuffdwxxwgWwwxwfvwwgeewwwVVwwwxfwvwgfgvgwgFvwgfgvhggffVgVDeeUwhwxwwwwUfgfvgUfxxwwwwwxgwfwxwwhvghvxgvwWevwgfvvwgeWfwwfUwwwfgwgfggfwfUfvxwxwwwwwxgfwwwfgwwfufgfvwgffvwWUUffwVDwwxwxxwwwwwwhfwwvvghgvWVfewVVvffwvVwxwxvwgxwwWVvvwgfvvwwgUvvwwwvffvwvvwgwvVevgTTVvvwUefffETfvxxwwxxwxwwwwxgwfxwwxwwxwxwxwwwwwgwxwxwwwwgwwwwfvfffwxxwwwvgxxxxwwgvgwwwxwwwwwwxgffwgfffffVUxxxxwxwwxxwxwxwwwwwgffwwvggvwfUwxxxwxgfgwwfffxgvwwvgfUxxwxwvgxwxwwwffxgwvfwfUuwgVeVeghxxxwwvvwhfvxgfwxxxwgxvxgxgwgwfwxwwwhfwxhfwfggfgvgwfwwwwvwvfvfggxgewvwxvwhwvxwgwgWfwuwwgfvgWffxgeffvGTUdgwfVvwwhwgfwfhxwvfwgvwggvxgfwfwvfwffwvVxwwwwwwvwgvwxhwwgwWVfugwgfxfgvwfvgfwvewvwxffwDUEfwwfveeVfegvxxwwxxxxgvvwwwwwwxxwxxwwxxwwwwwxwwxxxxvgvgvvwwxwwwwwxwwxxgwwwwvwwwxwWfuwwfffvfxvgwxwwwwwwvwTTUeVwwwvwfffVexxwwwxwxwxxwwwwwgffxxwwwwwwwwxwgwfgwwwweVfvfwwwxfvgffwhwfgwwxxgwvwgwfffVUfEEugwwhUvhxxvvvgwfwuwwvuggfggdfxxxwvgxwwwwwvwghwgwwUvwgwwwwwVuvgwvxwfwuwwffgfwVFvwhxwgwvwfegwgfwvvfuvwWgwwxewwfFvvfeeFfUfFvwxgvWVVcVufwVVwwhxgwwfwwwwwwwggwhwwxxvwvxgfwvfwVFvhwvvfvvVefhwxffgfUfvggVvwfwwVfgvvfffeeWTSgVfFwxvvVuVTSeewxgwwwwxgvgwwvwvgWefwxxvhwwfvgxxwxxxwgvwfwwxwwwgxwgvwwwWvvwwwwwwwwwfwgWffxxwxxwvfgfvwwvwfgfwfDUvvwwwwwvfFTefvgffxwxwwgvwxwgwwwwwwwgfxgvwwwfvgVevgvwwgggwgVvvwxwxvffewwwwwwgggvgVvffffgfDUfgfxwVvwwxgggDUffffwhxxxxxxgdVxvfwxgxwVgvxxghwfxhvwwugwwwxwxwewfGfuwugfvfxgwxwTfwgwvfxvfvxxwwwgvghwewvfguxwwvgxwxwgwwgguvgwwWefhxfwfffuxwVgugwV5ugwwxxvxwfwvhgxvWfeWhwuxgFfuxvgwvWwuVvwwvghfdfxwggwwfwvgwfEvWwwUSUvgwwwfegVewguVwvwUSgfgvVdvxwwxxwwxhfxwwwggffxxxxxgwhwwvwxwwwwgfgwxxwwwffwwwwgfxfwgwwgffxwwwgxgwwvgfVxxwwxwwwwwwgffwvwxwgfeewvwwWVfgVgVgffUDgwhgwwgxxvxxxgwfxwwgfWxwwwwvgeewfgvwwUUxgwwwgfgwfWgeufFwwwffxvwgufVVExwwwvwggftwwVVfVUwwwfxxwwvwwgfwgvfwwxxxwwwwwwwwxwxwwwwwwfgwwvgfwvvxwwvfgfvwwwfvxxwxvgvxxfvhvfvfvwgfxvgwwvgETvwUgfwfwwwwwWUUuwwhfvwwxxwwxwwwwwwwwxwwgwwxxwwwfwVuwwwgwwvvVVxxvvgxwxhvwwgffvwwgfvffwwvwgffUUUvgffuwxvffwweUeUDwwxwwwwwwwhvwwfwwfwffvwwwxxwwwwxwwwxwgwwwvwxwwwvgwwwvwfwvwwwwwvwwvwvgwwwwwwvvfffwWevwwwwwwfffhgvwwhffffvgfgfUeevwfvgUeeVUxwhgwwwwwhwvxwxwgfgwwvgwwgwwwwfvgvvwfvxxvfvvwwwgvvffwwvwwvfvwgvgWeVUUvwxWUVffffgfvffVffefgfgfeexgwxgwvwwvxwvxxfvvhwxxxvxgwwwwwwgvgvwfhwgwvwgwgwgvxwfvvwvvwwgvgwxwwgvwwwxwxfvvwffvxxxwgwfhfvwewwVUfxwvxxvwvwgUevwwgVvxwwxvwvwhwwwwwwwwxwwwfvwwwwvvgxgwuvgfgxgxwwwwxwgvuwwvhvfuwwVUfwugvfWfgffwwVUVwwwwewfWwfwewxwxgwwgggwwwwwgvgxxwwwwwwxxxwwxxwwwvvwvhvvwvhwwwwgwwwwwvgwwwwgvhwwwwwwwggwwwwwhwwgwwwwwwgxwwwvvvgwwwwvwvvfwwgvwwwggwwwwwxwwwwxwwwvxwwwwxwxxwxwwwwwxwxwxwhwwwwwwvgggwfwwwwwwwwwvfwwhwvwwvfwgwwgwwgwwwwvwvwwgvwwvvwwgwfwvwwgxxwwxwwwwfwvVxxwwwfgxwxwxgwxwwwwwvwwwwgwggvxwgwvwgfwvVwuxwwxwgxwwwxwvwwwwvfxxwwvfgevgwwVxwvggvWfuwwvgffVgwfwVDEtwwgwvfgvWvwxwwwxwfgwgxggvfhgvwufgvfggwvgvgwwwvggvfxwvwgVvuwwwxwfgvgwwguVETDwgwggvfwvwgfeVgufVewwwwwvwwvwwgVxgwwwwwVvfxwwwxxwxwxggxwwvvgwgwwewggWvfvvwgvgwwxxVvfwwxwwwWwgvwwVgVwwgvhwwwwwwvgxgfgfgfFSEshvwgwgvvVwVfffvfwwwwvVwVwwvwgvWwvwwwVwVvxwwVwVvvwgwwfwgWffgwwhwxwwgwggvgvvggvgWefdgvgvFSEcfvgwvxvwwwgguguwggvxxgvwwgvuVwgggvwfwvwvwwgwgxwxwgwvvvgwwwhwfwgggevVvffefwhwwgwfwvvwwgwxxwwgWwggvwwfgvvvfwxwfvwfgggffUDvfVdUwgxgwgwgffuwwvfvwvgxxxxvvwvhwwgwgvvVwxwvvxwgwwxwfggwvfFwwfuewxvwgwvwegvuWggVfvVwwffVgVVeEfufETfwvWwxvwfWfewfgwxgfwvwfgwfwwvvWwvuvxwwwwvgwxgwxxwxxwxxfgvwvvewgvwwfgwwUwWewgxwwvvwwwwvWvwxwgwgwgfgwwxwwwwwxwvfvfFfffdeffVwwwwggvfwwwwvxwgxxwxxxwxwwVwwwhwfvwfwgvgwwwxwxwwvvwwWuwwUfwwxxwwwwwwxwxwwfFdwgDVfVffffevggvxwVwwwgwgwvgwgxxxwwwwwxxwwWVvgfffvxxxxwwwwxwwwwhgwwwvvvwxxwwwggggwwwwwWVvfffefffgxggwfwwwfgffvxwwxwwwwwwwvwwwxgvwwvfgwwwgggvvffeVfffFExwwwxwwwwwwxwggwggwfvwhgvvvffueVeffxwwwwwwwwwwwwwwvvwgVevgvVVvwwwwwwwgfwwwfffwfwvgffgwgeeUDUfUTTvxwwwwwwwggxvweefgfwxwgwwwwxwwxwwxwwwwwwwwwwxxfwwwgvwfwwwxgvgwvfffwwwwfhwwwwwwffffffxgwwvwgwwfggvvwwwwwgffwwwfvfvggfeeVUVEEDffwwxwxwwwwggfwwxwxwwvfvwwgfggwgfggffffgfwwvwwvwwxwfwfwwvfwfwvffVVwwvvwfvwwwvwwwgfeuwgfvfffffwwWTDtgfUfxwwwxwwwwgvgffwgfgfeWvxwxxwwwwwwwwwwwwwwgggfgvwwwwwwggxwwffffvwwgwvfgfUwwwxgvwgfwgvvwgfxwwgfgwwgvfffvgUvwwVewfffVefUTEeVuwfVTEUUuwxxwxwwwwwwxwxwxwwwwwfwgwwxwwwgwgUuwwwwwwwwwwwwgffvgvwwgVefUwgvfVVwwwfffffgffffUeUEDfeVffEDxxwxxwwwwxvgwvfgwwxwwxwhvxwxwwwwwwwwwwwxgvxwxwfgwgwwxwgvgwvxwwxxwgwwfgwwwwwxfUvwfefgegwwwxhgwwggvUSVWfvwhxxFeFfewxgwwfwwwxwxxwwwwfxwgwxxgffxvxwwxhwvwgwffUeffwgwvggfVVewwwgvvvxhffvxwgvwffdedfvgwvhW5ewwwwghwwwgwvvggwvfgvxwwwwxwxxwxwwwwwvxwxwxwwxwwwwxwwwwwwwwwfwvgvvgwfwvgwwwvhwvwgewwwwvvgvwwvwggfvwvWwvvgvwwwggvfuVegeUVewvfwfUVeVxxxwgxxwxwxwwwxgxgwxfwwfwvxwfgvwwvVwwwwwwwwwwwugvWgvwvgwvgwvgwgwfgvfwgxwwwvggvffVeUwvfgeVeUgugfwwwwwwwwwwxhfffwwvgvvwwwxwxwwwwxwxwwwwwwwwwwwwxxwxgwfffgwgvffvvwvwwwxwwwwxgvgvwwvfgwwvwwggwvwfvvgvwVfevwgwvvwVffeUVfevUfwgWevwvwwwwhwxwxxwxwwvgvfgvgwwwwwvwxvwwwwxxwhwvfvfffvvvgvggwgxwvwffvvgvxwxwWwwVWVUUVfUffVfVwvgxwwxxwhwwxwgvVwwwhWfeffuxwxwwwwwwwgwwwffwwxgwvvguggvwweVWfexwxhwfwegvwfUweVfxxwwwfwwfxguwgfvewvfwvvwwwxwgwwgwwffUVfVwgwwgfvuwwfvufgUEtxggwwxgvxwwvxgvxwwffeWhvxwvwugugvffvdgvgvwxwwgfeVxwwwffxwwweVveVuwvvfVfVvvgvgUTFUDvvhvgfwgfeguWfUfTvgggxwwwfwxwvgvvwfwxwhwxvwvvwgfxxxwwwxxxwwwwwwwwwfffvwxwgwwvwvvfvvgfwxwxwwwwgffwvwgfwwwvxxwvgwwwwvwwVVfffffvwfwwwwvfVffwwwwvxwwwvwwxwxwwvgwwvwvwwwwwwwfffwwwfwgwwwgfvwwgwwvwxwwwwgfgwwwwvggvxggwWUeffffvvfwxwfwwwfgUeffwwwwwwwwwwgwwgwfwwggvfwwwwxwwwwwhwgwvxxxwwxggfwfvgvfwxgWvvwwwwwwewvwwwwhwggwfgfvwwvwwwgvggwfgvwwgefvxwvffwguggUvfvfgewwfUVugwwwxwwwwwwwwwfwwwwxggvwwwwwfwvwxfgvwvvgwgvhgfvgwvgwxwfgvwgwUUgffwwxxVeUwweVgfgWeVwvfvfvvvvwxvwxvwxwwwwwwffgxvwxxwwwgwgxwwxxgwwxwwxxwggwwwxgwwwwwgvxffvwxwxgwvwwVVVxxxwwwxggwwwxwwwgfvwvwwggfwwVgWfvfeUxxwxwwwwffgwwxwwwgffwvwwWVgwwggfffgeUwxgvwwwwwwwwgwwvvwffxwwwvwwwwvwggvVVvwvwwvwWfvvwgVVVVxghvxggwwwwgffwXuvwxwwvwwggggvwgvwwgfvwhwwwxvxvggwfvwwvvxgfgvWefvwwgfwgxvvvvgvgvVUfgWffwwwgfgvgwvwxwxfvwwvvwgUxwwgfWUevvwgvwwwwwwWfwwhfgvwfwefvwewwgfvhvgWVVUUevwgfxxwfvxvfwgwxwwhvWfffgwgfwfwxwwvvwUffwwwfvwwfffwwgUUfUevwwwwffxwwwgfwvwfgwwwhvwwvwwgwvhwwwfwwvwxxwgwwwvvvfgfwwfwwfwwweewxwhWewvvffUVfwXwwgwxvwwVfwvvxwhvggwvevffefffwVgwffgUfhwwgfwfvfwgwvwwxxwgwvgvveeffffwgwvefgfvxfwxxwhvwwwvwfwwvfwxffwvvwwWvgvvwxgfwgfWvguwWefVfgvggwXevvwwwwxxxwwwvuwxwwXVuwwxwwvwwwwgwwvwxxxxhgwwwwvvxwwgwwvvxWWuuvgVwgxwwwwgfegVvwWUuuvwwwxwwwwvwggWwwwgwhgVvwWVuuwxuvVWuUfwwwgWwwWVuuwxwwwuUWfVvwwuvfWWVuuvgVwxwxvwgwxxwwwWWuuwwvggWfwweUWgwwvvxfuwwUUWgwweveUWfuevwwwvvxxwxxxhgvgvwvggwgwwwwxwwgwwwwvwwwwwxxgwwwwwwwwxwwwwxvwuwVvwfgfwwwwwwxwuwvwwgfffffdVEvUwfwwhgxvgvvgwwvvwggWwfuwfffUfeVfvVgwVvwwwwwwwwgwvvgeVWwuvvwgwgwvvgwffdVFvVvfgwvfvvwwvwwwwwwwxxewUfeVgvwgwwwwwwgwWvfevfwwwwgwwwwHeVdefvvgvgfgvghwwvwvwxwwwwufwwwwgffwhwvgwvfxxwxwgwvwwffxxxwgwwgwwvvwhwggfVfvwxwxggwffvgvfwvvfeUwgfvgVfvwwwwfvxvfwwfvwWVvxvwgvwgfVfVUUugvfgwVwgfwwgffxwwwvUwvggwwgwwgVegVUfuxwwwggwwfwgwwgwwwwvfvgUfvxfwgffwgfwwwvwUeVxxwwwwvvgfffVefUewwvwgfvwhvfwwwwwgwgxwwwvfeUWwxwwvwggvwwvfwwwwwxxwwwwwvfhxvxwwwWVuuwwvfgvhwwvfhgvhffwfvggfvvwwwwffeUWwffxwwfvwwwwwwvwffgffvvwwwweUWfvfgxuUWffwgfwwwwvwveUWgvfwwgfVWuuwvfgvhvweUWgvgffwwgfwwgvwwwwvfhwfgxeUWffxwggVVuefwwwWVuefvwggvwwgfVVuefffwwWVvxwvfggfwwfvwwhwxwwwwgxWwgewwxwgwfwwhxwvwwfvghwxwfgwvfwwfwggwwgfvffvvvWguxgUfwxwwfwvvgggwveewwfegggwxxvggwgffvgwffwvwwggvwfwvhwffvgffgXgvxwewfggVffgvgUvxvvwwgvwgxwxwxhwwffvgwwfwugxgvvugVeffvwVewwWvwxwxwgvgfufvwwuwwwwwwWevgvwfwwwWwuwfgwgvwvvwgwwwxwwwwvxwwwvwWfuwwwwwugwwgwwvwfeWwwwwvvfGefgffffwwFUuwhwwxwwvwwwwwwwfvGefvgfggffvwgwvvwFVvgwvvvhvggwvgggwvVvWfUvwgwgffvvgWvvwfeVWfwwwfgXwwxwwwvwwwgvwwwVvwwwGfewgffWvvfwvgwwggwgTfuwwgwhevvfwwxgxggwxwwwgvwWwghvuvxwwwwvvwwwwwvwwwwwwhxxxhvwwwvwwwwwfggxgxwwxwwuvvwwWwfwgfvfewgVwwgfevvgvxfwwwxxvgwwwwfvwvfWfxwxwwvffgeuvgWvvwfvwwxwwwxvvvwfxfffvfVfwfwxvuwfguuvvvgfvwwwvvwfWvwwxwwwwwxwvwwwggvfvxfgwfvVVffggefxwggwwwwuffgfefvwvffvwwwxfvwwWVvwvffwwfwwwwgwwgvwfvvwwxxwwvxfwwghwxwwgvgffwwggwgwvwwffewvffgvwwgfwgEevgwhffvuFfevwwwwggwwwwwxffwfdfgfffwgvwfggvvufFfwvgfwgGfwwwgvuwFfvfugVeVffuwwgfwvWwwffVveVfgfwgwwgdvwgvgwwwwfxxVwfFfwwwvwfuwvgvgWdfwugffvwwgfvewwfgvgeTVwfvwgwgfvwwwwwfvvwwgwwgWffuwxwgxwwwffwwggwxwwxwwwxhWvvhwwwwwwwwwwwvwWffuxwgwgWvfUvwwwvffWWuwwvgVFdUwwwwgvwwwwwwwwuUwffgfeDVwwwfwffwwWffuwwgfvwvwwfvxwwwgFdfgfvwwwggfvwfvwWFduxwwwgFdfUvgvggwwfDfwvwwwwwhWvvgvgfvffwweDVwwwwfDfVewwefVwwwffvegVeffwfxwfwwwwvvwwgwwxwfvfvgwwwwwfgvwwwfwwxwwxwwwwwgwwwvfwhwwwwwwwvvgvwwwwxwffgvwwwvvvvfvVUvwvfVgewgvwwwwwwwwxgwfffwxgffvwffvVeffwvfgxvfVVgvgfwWevwwffWwuwfvwwggvvgwfweegvfwwgwvVgfwwvfvwhgfvvvwgvVeggwwvwwvfVWvwwWUvvfvhwwwgeeuwgfwwwwfvfgwvvvwgwfwvhvwxgffuwfgwvwxwwwwfgwwvgwffxwgvwwwwwwwggwxvwwwwwvgwffwfWguwfwvwvfxvwwwxgvgwVfeVvveXVuwgeVuwwwwwwfvxwvwgfWvVVwgVUVvWvwwwvfwvffvvgwgwvffwvvWVvxvegfWfueVffVfeggvvfevfgvvxwfvvgwhvfVVwgfUfgwwwwwwwwvfwwxwgwUVwwVUUffgffgffvvvgWvWwvwwvgfgwvwvwgvvwxvggwXVvvwwwwwwwwwvwgfwfgvwwxhggxxwwfvxweewwgfwwxwvfvvgwvwwwgxwvvfgwggfvfvwwgvwvggwvwgwwwwwxxffffgwwwvwweewffvwwfgwwxwxwggwgfvfvvwwwxvfffffgwwwgeevvgwfwfgwvxwwwwvvwwggwvwwffwwxwwfvwwhwgffggvwffwwwwvwwwhggfwvwwwwwfgwwwgwwffvxwwgvegwvggvwgfvfwgxfgvehwfxwwwufgeweewwwwhwfwvgwfvvVUfUwwwxwfwvwgvvvWwgVVgggeWVTgwuvgggffVewvfwgvwgwwwwvvgfvfeeUEVVwgwwwuvvgwfvwwfgfwvewvhwvhvfgufFvvffUVfEwwwwwvvvgfvgvfgfVfgfwuvwgfeVxxxhvvvxwWwvvwgWvwvvvVVfvfVfVVefUTwgwgxwwwvxvwfewvwvuvvwwFfVvwxvffwwwwwwwgffgggwufvvVgwgggfwwvewwwgwevvFVeggugvwgwwwgwvwxwxvwvfVUfxgVfTwwwgwgggvxwwfuwwgwvvffFEeffuVwfvwxwwffWgewwwVWfvxwweewwgvwvvvVUegguffeewgvufGvVwwwgwvvvVUefwffwwvwwwvvWwfxwwWUuwhwvGEUdVfvwgvwhwgwwxvxvwgwwwwvfgvvwxggffgvvgggfwfwwwwgfwwgwgvwwxvwxwwwwvwWvwwwwxfwwvwffwwwfgggvfwVfgxfwwwwgggfvfwwfggfgwfwvevvuwfgwwwggfVfufvgvveVgfvfwwgvwwvvfwgguvwuwxwggwwwgffvvfeeVwwfwWVfuwfgvwwwwwwwhgggwvfvggWfwwwvwggwvhxvvwgvveegvgvvwwwgfwwwevVwwgvgwvgvwvxgWVvwgfxwfxgvgwfufWvxfwwwwwwwggwffvwggwgxwwgweefgwxwxxvwvwgwuvugwvfgfgeVfufwggffefwwggwuVTfVehvuwwggvfufWvwgvvwgUfvfwwwfvgfvfdgggVFeefgvwwgfwwvfuffgwwvwwWUvvwwvfefggffWggFUVvfwwwvwheWwwwwvfgfgwvfgwVUeefwwhfgwggwwWeffwwgwvvgeeVffefewGUuwXwwwwwwwwwwwggfwGfftwwwwwwwwwwugvwwwwwwxwwwWgvvxwwwwvwgwwvvVgvfwvwwGffdfvwffvugvggwwWefFVetwvvwwffvwwwxwwxwwgwdfFvfvwwwwgfFVedvgVevwwvvvwwwggfVevwwWwfgfwwwwwgffVevWevgFVedfvwwwwwwufgwvwwgwwgwgVevwwWevwwwwufgwwwwwdfFfffffUfxwUfdUFffUfwwffwvwvvwwvxVVvvvffVgvxwwwhwfvwwwwgwwwwwxggwwwgxwggwxwwvwwxvwVVfgwfgwwwefVvwxvvgxvwgVUVfuUfVVexgwvwwwfffwwwxwfvwvfffvvffvUfgwUfVfgVfevwwxxWgvggvffwwwvfwvwwvwvggguVVfgffuwggUVVvwwgwwwfwwwwUvfwfgwwfgwgfvwgvgffvvvwgwwgvffwWeeuugvffwWeUewggwwwffxwwwwwwwwxggvvvvwxwwxhwgwvgvvgwxwwwfwwwxwxwwwwwwggwwwvwwwwwfgegvfgwxwwhvexxgVfffuxwwwwwggwhwvwwwgvwvfgwgwgffvevuhvvweffefvxvxwuxxxgvfvggvxwvhwvwwggfevuwwwvvffuVwwwxwwwwwwhwwwuvvwvwvfvvWvxwvfgffwwwwgfgwvvfgwgVfVfegvgvefevxwvvwwwwgwwggvffvvwwxxfwwwwwgwwvvxwxhgfxwwwvvxwvfwwggwxwffwwwwvvwxwgwwgvvwwwwgfgfffvwfwwfvxgwgvfwwwxwfgvggggwxgeeffgwvffggvwwwwwwwwgwgeevvwwggvvfwwwgeevvgwwfffvwgwwwvwggggvhwfvwwwweegwwwggggfvgggwwwwvwwgfffvwwwwwwfvwwwwwugvwwxwwWeevwWffvwwwwhxxwwgvewwgfwvgwwwwfugwvgfwvwxfgwwvfwwvgWUuufgggwwhvgvwxufgWhwwfVdvfWVuwwvgvvfevggggvewfVfwvvwwwVVVUeteggwwgvefvvwgwwGffvvhVvwwwffvwffwwfgFEuuVffvwweWvwxvwgvvxwuvGUvvgggwwhxefwwwTTgwwwxgvwwwUUvwwFeewvwvgggvwwwvvwxwwwgfvxwgeVvfWwuwwwwwwwwwwwwwvgwxgxwwwwwwwgwwwwvgVefffuewfwwwvvfgwggwgwfgvgffwwxgeUgfWfegwfxwgfvwwwwxwwwWVffwefvvgwwgwvvffgvgwvwwwfgvwgvwwwffwvfvfVefffeevfwhwvfffvggfwfwwwwgggwgfvvwwwxwwfvfwwwwwwvggvgxvvVVevvfeeugvwwwwwwwwwwvffgwwgvwggwwwgvvwwwVwWgwwwwgwwhgwwUvvwxggwwwwwwuggwwxwwxfgwwwvfgwgVgvgwvhhgwvwwvxvghgfwgvvgfvvfgfgvvgfggwwvvwwwwwhgfgeeeewwwfwgfwwwgfvevwewwwxfvfwvvfggffvwWufwffvfggffWfWvwvgffvwgvgwgWgffvfffxwgggwewhwgvvwwwwgufvvgweefgwfwgwvvWvwwwwwfgwvwwwxvwvgxwvgwWwvgvwwdfFvfwwwvwwwwwgwvwwxwgxxwgwxwwhwgwvWvfwwwwwwwwfFffFwwxwgvvwvfxvfveWwffvwdVFfevggfgwwwwwwwvwgffvgWffevfgfeVVfuewWwwWvwgvevgwggxwvgfvggvuvfgfgwvgwffFffFvggwffvfgvvffwwffffvwgvgguvwwwvwwvwwvvfWfdeVtwvwgfffvfgwufgugwuWvfgwfwwwggvxwhgfvwWVvwWeegwwwxwwxwvvvfWVvwWVuhwwwvwvwhhgvgvvgggvvgfvWVvwwfwfwwwgFfvgedvwfvwwwgfwwgffvgwxuvvwUffgwwwgfvgfgSUfvg6EvfwwwfFfvgevvxwhvffgxhVvxxvvgWgwwfvuggwxwxuvvwUffvggvwvWwgdUVeg7EvfwwfwVwwUwgefgggggwwxdeFffeedevxxwxwvwxxwwxwwwwwwfwwwwxwxxwwxxhwwxwwvwvwfwgwxgwgwxwxgwwwvwwfwwvwwwfvwgwwgwwfwvwUgwwWgwgwgeufwVfwwwwwgwgvfvvfvUUfvfUUfUffevwxwwwwwfwvwfvwwwwwwwwwwwwwwwwwwfxwvvwvwgwgwWugwvgwwffgeeUffUUfevxwhwhwwwgffgvwWggghfwgfwgfWUeVggfgxwwgfwwwUfwwwwgffwxwwwxxwxwxwUfwwgvWVfhvxwwgvwwgvvwwggwwwwgfwwfwwwwVexwwwWfevxgvfefgfwwWUVugfwwwwxwvwhffgVTEuwgfffffFDuwwVewwwwgffvxfwwwwwwfwwgfvwwgwvwwwgfvwgwwwwwvwgvfgVTEuvffggVeFDwwwwffwxwwwwwUewwVvefffUUfvfUeUevxxwwwvwwgwwWgwvvfwfxxwwgxxxgwggwwwuvgwvxvwhwwwwwwwuvfwwwwwwfggwwwwvxwwgWwwvvvgwvwWgwhgwvuvvUUVwuvgxhggvwvuvv$UDvvfvg5fTffxwwxggwwvvufwfxwxwwwwwwvvufvgwvwwwgwgwwvvwhXggvvvvvvv5fTvugwg$UDffwwgwgvgvwxvgwwwgwvgWUeeffvgvwgfvwwwxvgwwwwvvwwwwwvwwwxxwwwwvwwwgwgfggxwxwwhwgwgfwvwwwwwwwwggwggwwwvwvvxgvhffffwvwuefgwfffVfvgVvvwvwffffVfvgefvvgefvegfVwxwwvvwgvgvgvvwxwwgwwwgvggfvhvwxwwwgvhgvwvgfffgffvgUffgfVffffffwvwvwfvgwwwwwwwfufwVefWevfvgvvfufvxwvwgwffwwwgggvevuwffgxwwxxxxwgwwwwxvhwgWgvUfvwfvwwvvgwfxhfwgfvvwVfwvwVfugwwwwggffvwwgfVfVevvffgvgwVGUuffUVffgweegwgwwvwfUeevEeVVeVvffeWwvwfwWVfwfvvvffwwwwvgfxxfffefwVewwwVfuvwxwfwdfgwgwwfvgUfefUefUffvveeffvggVgWdgfwwvwvvwgXggTVffvgVvuWwgwwvgwwwwgwfvdfwfxgvwgevfwhvxwwxwwwdfwfwgvwgEffXgwvefvwgxhvxxVwvxwfvfwggwxggwheexwwhgwhfVuuwvfwwwggvwgffvvWwvuvwFeexgwgvufuxgefufG5uweewwhgvxwUfuhgwfvgvgxgwwfvvggwvfwVVvggvvuwv6UewgwwgvgvhgefufvF5wfggFffvWwgfvweeVwWwwxedgwgfeedvwvvvvvwggvvhwwfwwwfwwwvvghwhggwwwvwwxvgwgxxvfvgwwvvwgvfwhvfwvvwwfxvwwvwgwwvvwwwgghwgfvgwwggffxwwffwwfffvfwWVuwWUVvfvvwwffUVevwwvwfggfhxfvfgwwvvwfgfggfgwvvwgwxvfgvggvwvffWeewWeUvfvwvwgffUeevwwvwgfwwgvwgfffffffgwwwxvvggwxvggfvvgwgxwggfgfwvuwwwWwgfwwwwwxwwxxhwwwvuwwwgxwfwvvwwfwwvvwwxgwgvwwxgwfvwwxwggfwvwwvvwwwwgfwwwvvgvfggggfvvgFVvwwevfwwfgfffTffgffggUwffgwgvwvvwxgggfvvwvgwvgwwxggwewwxhgwwvwwhFVvwwevgfwfgVffTffgvvggevvfgvffvVvwvfwwffwwvvfvggfgvwfvgwvwvvwxwvvvgvwgvwwvvvfwwxwxwxxxxgvwgvxvwvvfffwfwhvwwwvwwwwgwwgfgfwwgwvwwwgwwvfgfwufwgffwvfefVfwfvwwhfffegvwfffffvfffVVfvfwwwwwwvvgwwwwxwxgwwwwxwvwwwwhwfggvwgwgwgWffefvwvwfVgveffffVffufwwwgvvfwgwwwgeeVgvgwwweeggfvvVgfgvhghwwwwwvvffwwwgfvwfeVfhwgwxwwwwxxxxvfvwfwgfvwgeVvwwwfgwwgwvhwwgfffwvwwgffffwwwvwvffwwwggvgfeVfgfffvfffgfffvvfvffff5USffvwvggfVS5uwwgfvvffwgwgfvwgeVvxfwgfwvwwwwwwgffvwwvggfffgvffvffff5USffwwwwgvVS5uvggfvwwgVfewvfffVfeffgwVfexfgVfeffgfgwwwgwffwgvvgfwfwvwffgwwwvwxxvgwwwxwwxwhgfwfwwwfggwfwwwwhwwwwwvvffgwwgwvfwgvwgwevgwwxwfwfvfvegwfWfgggwefwwfwwvfvueVgWffwUewffwvfUfeVvewghfwgVwgvwfWwwwwwwwwxwwwfuwfWwgwvegwvufufefggfevUevvvgwwvVVegfwvvvfWggfuwfwwwWvvfwWggvffvgwWfvfwgwwwxwwwggvwwfxwvwwwwwvvwxxwxxwxwxwwwfwwvwgwgwewuwwwwwwwwxwwxwvxxxwwwwggwwgwxwvwvxgwwgvwfwuewwfgWwgwevvWVvwvgvVfVwgwwgUeugwugefvfWvwwwwwxwwwwvwwwxwxwwwgxghxvwxwvwwgwgfwwwfvVUVwgwhgefuxgfgfUeeWwwvVUVwgffgggvuvgwggggvfwwhvuvfvxfwwwwgwggwffwwwwxwvwxghwwvxxvgwwwwwvvvvgvwvvwwwhwvwvvwgwwvvwwwwwwgwwwfwwwgggvvwwggwggffggvfvgwwgwvUUgffffvwgUUgwggwffggvggvwwwgwwgffvgfwwwwvwwwxxwvwghwvwgwgwwwvvUUgfffvvwgUUgwhgwffgfvwwwfffvwvwgfvvgvvvxgxgwvwwvvxxwvwwgwxwwwwvggwxvvgffwwwwwgwwwwwwgwxwwwxxwwgvwwwgwwwwwwvvwvwgffgwwwxgxwwwggwgvvgvvxwwgwwwgffuffvggWVfvvgEEefveefwwWVVVvevggwvwwvwwwwgwwgeewwggwwwwfwwwvvwxwwggvvwwwxwwwxgVVfwwTTwwwffgfffvVVvwwwfvwwWgweegwgfvwwfwwfeggwVfvvwwwwwwwwwvvvwvfffwxhhfvggwwvwvvgvwghwvvvwwxvfgvxhxvwwvgwwvfvffgggvvwvvwhgxwvggfgwxwvwvwfgvxhhwvggwwgffvxwwffwwfffwfffUegfeUuwvwwwgffVeUvwgwvgwgvxwwgfwvhwgwwvvffgwwvwvwwhwxwvgvfgxhwwffVUfgfUVuwwwwgwfVVUwwgwvgfvxwvgggfffvfwgfvwwffvvwvvwvgwhgwggxwvwggffwvwwwwwfvwghxwwwvhgxhvvvwwwvwggwfwgwgwwwvwfwwwxwxwwwgwfxgwwhvwwwvvwvvvgwwvvwfvfwwggfffwgwwfffffUUgfvgfvwvwwWUuvwwfwxxxwffwwgwggwwwwggwwwvvwwwgwxxwwggwvwvwgxwfffffUUgvvgfvwfwWUuvwvfwhgffvwgwwfffwvgwwvwwfhvwhvwwgwwwwxwwvgwfVvgguffvvgwfwfWvwwgwwxwwxfgfvGfvwwwffugwefvfwgwvfvwwvvFefwwwvvggvvwfUvffvWVwgwfvfVvVUdhwvVFwwvvWgeefgfVeUUdeegfwfwgffFgvwgvfgvvWgvwfvffuggffvfgwwfgvwfuVefwwwwwWwwfTUfgVfUUVudfwwWvvvgefWwwwwwfffVfTVegffwfeVeffgfdgvgwvgwgwvfwxxwwwgwvwwwxwwwwXfeffvwwwxwxxwwwwwwwwWfeVfuwwwvgwvgxwxwwwwgwvwwwfvfffgvxwwxwfwgVefeuhvfgwwgwfVVeUwvvwwgfggfwwgfgVefwwwvWTEEEtwwwxwwwxgVeffwwwfwggwxwwwwwgwwwfwffvxwwwwfffffwgfgfffgvwvWTEEExwwfgfwwxwwVgeeUwwwwwfffeUgfgeUUUvvwwvUfggvwgfggffufWgwvwxwwxxvwwxwwxxwvggvgffeeuffvwgwvgxwgwvufuwwfffgvVVfwwwgVfgwwwgvgfffdfWgwfdexwgEUgvuggvgvffgFVfveVewwwwwUTUVUWgvwwwwfwfvgVvffufwvwgwvwwwwvwvvvggfefvvFVfvgfgwgfWVFfffUfgggweeTUefwfvgffgfgwvgffvvftffwVfVeVfwvwwXdUfffwvwwwffwwfUvwwgvgvwwwwwwwvwwwwwgfwwwgfwvvwwwwxwwwxvgXvguuwwwwwhvvgwwvvvwwwwwgvwwhVfwvvggwfUevfWUVeevgfwxwfffgwfgWUeUefVfvWddfgvgwwWffwwgfvwwvwgwwwwwwwwwhfgfvwwwwvvvwxfvgwwUvggwuVFTVddffwwwWUefgfwvWfVVwwwxwggwwwgvwxwUVfvwggwwwufvxxwwwwfvwwwxgggvgvvgfgxwvxwxxwwwxwwwwwwgwvvvgggxxfwwxwvfwvvgwxwwwvgWgwwwwfvwvwwwghwwwufgwwggwffwvvfvgvggfvvwgfwvggvefeVfgedgfwFVfvgwvwgwWgwfwugggxgvwwhwvgwwwvgxhwwwgggwgwgfvvwgfwvffveffVWgedgwgFVfvfffgggvvffwwgvvfwggvfvffvgwwuvvxwggwwwfgwwwwfvvwwWVvwwwwwxwwhxwwwwwwwfvwggggwwwwwxwwwwfggfwwwwgwxwvwwwxwfgwxwwgwvwwwgwwwwfvvfeeVgfgvfwfVVfwwvfwwwFEefvfvWVvwwgfvvwwxwwgwwgggfvwvvxwwxgggfvvwwwwwvvwggggvfeegwwUVVVvvwGEuvwvevwwWvfefwwwwgxwwgvweegwgWffwwfwwwvwwxwwggwgwwwgefvwwffvwwwhwwwwwwwvwwwwxwWfvwwvgvvgwwwxwxwwxxwwvffvwvwwwwgfgwgxvfwwwwfgwwfgvwvfwfVVuwgeUVeVVvfwwWvvwwgvUeDVUVwfgvwFdVfvwvwwvgwvUgggwwwgxwwwwwwegvgwwxwWugwvgefwggwfvffUUFdVvfgvgVUffvvxgwvfwgwwwxwwxwwgvufwgUfeVwUvvwwggxwwxvffvWvffvvwggWvfvvwgwwwxwxxhwwggeVgvvvwWfffvfvwwfwefWfewhxgvwvwgfweufvwwffvgfUxwvvggVwvvvWffwVUvfWEefvvfVuwvfUggfwggVffeeFvfvgeeegvgvewwuwwgfgfvvvgwgvvfWfewhxgwvwggwvvvevvwwVfuwveUVgfwggWVfuVVfvwWdeewwwvvuWwufvgwxFVevwvugvwgfggwFgVwefgwwvwwgveggwwxwvfufgugwwwwwwvwwvwgggvggvwvggvWwwwgvwvgwwwugvWwwwwgugvwgffwvgwwwwvffvggfVvwwgvevvgwgvvwefUVeUVvvvvvgfwuffefwvgvvwwgvwgwgfvfffgwwwwwwwwvgwwvvfwgwfwwgffgwvufvfvUVeeVuvuwXggvfgfVgfgwefwfWgfvewvwwgfgvggWgfwuvvgwVvvgwgwwwwxXfVVvwwwgffwwgwgvwwwwxxxwwwwwwwwwxwwwgvfgggfvvwguwgUUwwwxwvwGFvvgvwwwgvwgggVVVvwvvgffwwgfwvwggeevffVVffvuggVUewwfffggVUeffwwfffvfvvwwwwwwwgwvwwgfvvwfvgfUUwwwwwuwGFvvwvwwwxwvgggfffwwUUfvfffffvvwWUefwfwwvwwUUddfggUUgwvfvgwwddfggWwwwwfvgwwwwxxwxhwwwwwwvvwwwxxywxxxxxwwwvvwwxwxwwwxvvwwwxwwwwwxxwwwxwwwwwvgxxwhwwxwwwvwwvwxwwwwfwwwgvgfvfwwwvvgvvffwxwxwwwvgwwxwxxwwxwvgwwwwwwwxwhfwwxwvwwvfwvwffygfwxwxwwwwvvxggvgwgfvwwgggfvxxwhwvwfwhvvvFFexhwxvxhwwwxxvxwwwvvxhgwwhwfwvvwhvvwghwwvfgwggwwwwgwwwwwugWvfvVFeuwvwwfwWvfwfffvWvvegggeTfWvfggwgv&$CcgwgfwwwxXvfwgggwxwvgwwwwXvgggggwfgwghwgvwxwvwvxdTVxwwwxwgwGVfegwwfvxvxvvvvxfffvvwfwwxdUVgvdTVfvwwwwxgwwxxwffwxwwvvwxxxxwwwxxwwwwwwwwwwwfwwwwwwwxxvwhwgwwwwwwvvwhwWeuwwdfUefwfgwwwgwwwvgTVUefvwgvweefEexxwwxwxwwxxxwwwwwwxvvwwxwwwwwwvxxwwwwwxfvvvfwxwvfvwggwhvgwwwxxxwwwwgwwfwWVfVVvgwwwhdvwwwwwwgwwwvgveeggfwVUfwwxxwxwwvwxwwwvwwxxwvgwvvwhgwwwfwgxwvwwwwwgwgwvwvwvffgVuvfffvwvfveffgfvgUffWgvvffffefVVefWUUefVUfeUfVUvwwfxxwxvwgwwwwwwwgvvvfgwwwwwgwgvwvxwwxvvggvgwwVwwwfgwgfwgfggwwffvvxwvgwvwfvfgfefgfwfvWuggvfvwhwvwwwvwwxwVwvvguffuvxwwxxxggwwwvxxgwxvgwvvwwxwxwwwxxvwuwwfwwwwvuwvvggvgwggVvfvfvgfufwgwgWfffgeffufvvwgvWwvgwgeVefeefeUfegUeeVfxhgvggvgwvwwxwxwwwxgfgvwfvvvgwfwgvgggevgwwwwgxwfgfvfvffgwfwfufwwVgfvgffgfvgvgfgwwXwfVvfVgwwvVvvgwfwwwxwwgwugweVgwfWVfxwxwwwxwxxwvgxgwwgwwWwxxxgwVwgVgwwwxwhwwwwwxvwvgweVhwuxVVfuwuwwffwwewVUVuWfwwvgfuvWfef6CcwvVgVFeefvxxvgxwwvgwwgwxxwwgwuwuVgvwxwgwwgxvwvwwxfwVFeuwvgW6eufwxvxeeVxwvwxwgeeVUeUffwvwwgvwggvvvvwgffffwgfvdfUffwxwvvwvxwwwwwwgwwxwwwwwgvwvvwgvWwgewwwvggvgwffwfvwwvwwvfvUVufguwgeVVfVwWfvgfwvuvfVeffufegFeUTefeeufVUeuffeVVdeUTwfwwxwwvgwgxwwwwggvgxwwwWwwWggwwgvfwvwvffwgwgfwvwwwwffwwfwvWgfvfewwgvffvfgegwgVVffwhvfwvVgfVvVgfVgVvxxgwvxxxwwwwvgghfwffgxxwwxxxwwwxwxwxhgwxfxwxwwxxfwfhgvxwfxwxwwwgvhvfwxxwwfhvgwwgwffgweVhWfugfgvgwveVvgfvfgwfffgfwffgffhfUvggwxwghwhvvwwxwwwxxwwghwgvgfvhvfwxwffxfvfxwxgxwgfgfvhvfwvgwwffwwfvffwfVewwffwwgvfwfVewwxwwwwwwwwhwggfvvgvwfvgwxxwwwwwwwghwwwxwwwwwwxwwwwwwxvwwwwvwwwwwvxwwvwvwfgvvgvvvgvwvvfwgfvggvffvvvfvvUUfgfwVefuVVvvfvvvvefVfvwffhgvwhwwwwwxwvvwfggwvhgwwgwwvvwwvgwvwgvvffwggfgvvfvvgvwfgwvwfwwgwgwfffgfggggwgfvvwhgffwvvwwggfvwwwwwwwwxgwwwwwwwwfwgvgxwxxxwgwxwwxwwwwwwxwxwgwwwwwwxwwxwwvwvwwwxwwwfvgvvUfwwgVuwgffvwfgUUvwfffwfwwwwwwwfffvgwWUwxwxvwwxwwwwwwxwxvwwwwwwwwwwwxxwwwvgwxxwxwwvvwwwfwwwvgwwwvfgwwwUfwwggxwgvwwwfUwwwwwwxwvvwgffwwwgfgugevvwwxxwxwwwwxxwwxwgxwwwwwwwwwwwwgvwwfgwwgwwgwwvwwwvgwwwwfwwvgwfvwgwfwuWevewWvegwgegwwVuvgfweeFfDfFeggwwwvvdUTVefvfUfwxxxwwxwwwwwfxwwwwggwwwvhvwvwgwwwwwvwwvgwvwwgfgwfewxwvvwgwfvvwwwvguWvUvWgvfgggggwvgvuwUvfgwwggfvvgvwwwwwgwfwUfwffwwfggffxxwwxwxxwxfwwgwvwwgvwxwwwwwwwggwfgwwxgvwfwwwwwfwfgwVVgwfwVVVegfgwfVgvvgfVVfVeufgffeeUgvufVUUeffVffVVfUuwwxwgxgwwwwxvvvgwhwwvxwwwggwwgwvwwwvwwgwxvwwvgxwwwvWgwggwvggvfvvvffefgvvwvuugvwwgffwfvgfwvwgfgfwxvwggwwgvweVvwvfffgwwwwxwwwwgxvwxwwwwwwwwwwvfgfgwwxwguwguwxwwffvvgvwwvffffvffvgfvvfffffvWUVwwWeffffvvfVUVUwggvgeUffewwwwxwwwwwxwwxwwvwwwvfwwgxwwwwvgxvwffwwgfwfwgwwwwwfwvfwwwvffxvgvffvffggvwwwVfwwwffvfvffvgwffgwgvwwxwwgwwvvvgvvfggvwffwvxxwwxxwwxwxwvwwwgwgvxwfwwhwwvgwxvvwggvwfwxwgwvgwwfwwwwgwvgwffxwvwfggvwffwfggfvvvfvfWVffgggefVWUuvvfgfwVfVuggfffxwwgwwwwwwwwwwwwxwwxwwwwgwwwwwwhwwwghvfwgvfwvwhvvvvgggvvgvvwgvgwvgfgvvfggwvgwffwwffgfgwwvgwvffxwwwwwwxvvvgfvwgffvvgvvvvwwxxxxwxxxxxwwwxxgwwwwwxwxxwvgvvwfwxwwvvvgfgwffffwwggwvgvgwggwvwgwwgvvfUVfwfffgggeUffvvgffgvggfvwwwwwwxxwvgwwwwwgwwggwfwwxwxvffwwwwwwxffwwwvwwwwwfwffvgvwwwwwwwwwwgfvgvwffwwwwwwwxxxwwwxvwvVwvWwwggVFeuxxvggxxwwwwvVwxwwwvfwvxguvgvgwvgxxwxvfwvwwwwgvgvxxvvfwfwwfgWFetwvVwwfwwfwfffvgguvVvfC2$gguxvgwfggFeugwvfvwvvwwxxwgwvhgwfvvwvgxwvwwgwgwvhwvwwxwwgwgeeFxwwxwwwxVFetgwvfgweUFgfffeTFgfggvgxxgvwvgwfwwvwwwwVfvfxwfvfwwgvgwvxwwvgxxggwwwwfwgfvwWgfvfgwgwfgvfwvgwwwwwVfvfhwgvfwwxvvvfffygffxwwwvegffvvvVfwvVxwwvvgevwwwwwggvwyxxwgwxvffwgvevfgwgwgxvvfwvgwwwwwgfvwwfgwwxwxwwgvvxwwhfvwghwwwgwwwwwwxwfxxwxwwwwxwwvwwvwgwfvfwfvWfvgwfVgvxwwxwwxxxwvwwwxwwwwwggvgfwwwvvwwxgwvgwvxxxwwhwgwfvvgfwggwfgvgvgfvfgwggwvwfgwVUUefVTEvegefffugfffffgfWwvfwxwwwxxwxhvwvvgwgvxxgwvxxwxwwwxWfuweVwvwwwwxwwwwwwwgxxhfffgvvfvffvvvvwwvgwwgvvfxwwwwwwwxxxwwwwwwgvwwwvvffeUVxwwxwwwwwwwwxhvwwwwfwwwwxwgvwwwwwvvwwwvvwxfffwxwwwvwwwfwffeUVxwvwwwvvfffffwwfwwgffffvfwffeUVfffff3"3ffwwwxgwfwwwwxwwxxvvxwggwwwfwwwwfffwxfwwwwwwwwwfwwUDUwwwwweUVwwwwwwwwwwwwwwWVewwwwwwgffvwWVeuwhfwvvvvwgvvwvwfegUeUfUfVwwwxfwxvwwwwwxwwxwwvwfwfwxwvwwvhwwvwwWwWwwgvvgxgfgwvgxwwffgfgwgffffdfVuwWgwgfgfevfVVffeUfgfWeeffveveUUVVdVEeEVVTuwwxwwwwvwwgggwwwfwhwffwwfwfggwwugWvggvvwwwgwgfwuvwgvvwwgfvwfggvffgevwwfxvvvegwvgfuvWfvfvfffuvVfVefgfVfxwwgxwwwwwwfvgfffgfffwwwxxxwxxwwwwwwwwwwxwxxwxwwwwwfgvwwvwvwwvvwgggwwwgeevwffgvffwgvfgffffffgffgggwwgwgggWeUefUVUfUffffUVVfxwwwwxvwwvxwxwwwwwxxwwfgvfvwwwwwwuvWvgwwwwgvvwwwffwwwfwgfwvvffggggffgvffvvwwgffwvhfvffgffwvwVfwwgvwxwxwwvxwwwwgxxvwwgwvwwxwxwwwxgxwwwwwwwvxwgwxwwwwwwwwvwxwwggfxxwwwgwvxwwweUxxffdVVugwvwwgwvvggVVdVVuwwwwfVfeExxxwxwwwwwwwxwxxwgvwxxwwwwwwwxxwxvwxvfffwvxwwwwggfgwwwgwvvxxwvwxwwfwwgfeVVVwwwwwfdwgwvwwvvgfgwffwwvgfgwfwxxwwwwxwxxxwwwwwwgwxxhvwvgwxvwvhwwwxwwvgfvgfVwvwfvgfufggwffwgfgvwvvgUffVfffffgVUUefffwTEvegvuggvwxxwwwgwwwwwvwxvgxxxwfvgvvwwwwvgxwxxwwwwwwwxxxeVwxwwweVwvwwwxfffwfwwgvvfgvgxwwggffwffwvwxgwwwwxvgwwxwgvvwgwwwxxwwxwxxwwvwxxxwwwwwxwwwgvvwwwwwxxxxxvwwvxxgggwxwvwxWhwweUUvwgffwxfefvvgwwefVUefffwxwgfgvwwxwgwxxxwwwwwxwwwggvxwwwwwxxwxvwwwgvwWfegwfwhgwxxfgwwxwwvfwwfvfwwwwwwxwwwwwvgwwgvwxfwfuWVvVwwxwwwxwwxxwxwxwxwwwhwwwwwwwgwwwwwfggwgwgvwgwwwwvwwggfgvwwggfvWgvVvfguwwvuVwwguegvveVVedeUdwfwwgvwdFEfFfvffUvwwwxwwwwwwwwwwvwgvwggwwwwvwgwwvwwvgwwwfwuVfwggwwfvvgwgvwwwgvfwwggwwWVgfuuggvfwffvvgWguugufgwwwfwvgwgwvwwgfgwggvfUewwwWgvgwxhxgxxgwwwfxgwwxxwvwwwgwwxvvewWwvwggwwWwwhfwwVwwwVwVfvfvegwgffgvfffgfwffgVUufffUVvvgeWeffUVVVegwfgwvwwgwhwxvwwwvwwuwvvwggvwgwuxxwwwfwxWwwxwgwwffwwvwxwwwwhfvvwgfgvwWvgUgwvvvgvwgwuvxfvUgvwVuewwguwfxxgxwgggvgvfvvfgugvgfufwxwvxxwxgwggwgxxvggwgvfwgwvgvwwwggvfwwwgvvvwwwggwvfwuwxfWgufvfgvgfuwgfVfuffeVwgVeeWfvwgfVfeVvWwvwVeUfexxwwxxvggvwwwgwwwgxwwwWwfwxxwwugggwvfwwfgvgvggVgffvfwwwwfufwwfveweWfffvgvgWfwvwgvffvVgfwwfgwwfwwwhwvwhwvxvwvfwhwfgWVexhwwgwxxxfwwwwxvwwxgwxwvxvwwhwxhfvwwhgvgwgvfgvfvgvfvVffgVDTuwwwwfvWwwwWgwvwgfwvweUffggvhvvgfVDTeffWfwxvWgvhfvwhwvwwvwggvwhfvgwgefffvgfxxwxwvwwhwwhvwwwhfvwxhfwwffwwvwwfwfVfwvwewffwevfvxggwxwvwvwwfgvwwgfffffwwvwxgxwvwvvwwwwhxvwwvvwwxwwgxwvvvwwwwwvwfvfggvegvgwfWufefUfeffwwwwfwwVwfgfvffgvwvfffgffUvfwvgvUfefgvfvffwvgfWufewfwuvwwvxgvgvgfggewVwfwvewffvevffwwwwwwwwwxUvvvgfwuwwvvwgwwgwvwgvgwwgfwvgWfWgvgwwgwgfffvwvggwwhwwfgwvghvgwWVfwhwwxwwwxxwgwxwwwwwwwxwfvvxwwggwwwwxwwxwwwwWvuwfwgeVgvfwFDEuwuwwvghwvwgVgwgvvxwwfvvWvVvGDEuwVWgWWffUvvxvgxgwffgwxwwxwxfvvgvgwVffvwwvggfgwvhwwxwxvvxwghfgwwgxgfgwvwwvwevvxwfvvfwwwgvvfvwVwvvwwwgwwwwvfwwuvfggVVvwwdfEvfwvvwwgwvgwwwfvwgwxhxxgwgvwggwxwwxxhwgfwwwwvggwgvwgfhgfwwffuvvffgUUVfeUfFeewgwgWfgfwefffwgvfwgWgfevgfeTUEeVevVewUeffewgwggUvwwUfWwuwevwxWefeVwVeffVvffvVfufvvwvwuwwhwwvwgvvUVfeWvvvwxeefwghwgfffvvxwwgfwwwgfffvffvvggfvwgffwwwwhwwwvwwffgvvwgfgwwwxwwxwwwwwwwxwwwxxwwgwwxwxwwwwgwgwgwwxwfgvwwwxwWvfwfgvffgvvggfgvwvwwfgWfgvgfvgffvwwvwfvvgffvfggVffVffgwgfvwfgvgvwwvfWgggwvfwxwwgvVvgWfvvfgwvwgvwxgvvwxwwvwgwgvgggggwWvfwgwwxvgvwvvwwwwwwwuvfefwwwgwvegxwwwxwwwgwwwwgxwgvvfgfgvvxhwwwxxwvwwwwwxxwggwxwwxwxxwxwxxvgvvgwfgwwwxgfffwgwfevfegvffvwgggWXvvffvwffwgfgvwggwfxgfgegfvfffuvwffwghvfgfvfwwvwwwfgwwwwwwhegffuvwfwwwwwwwwfgwxxwgvfvwffwwwwwwwwggwwwwxwwxhfffwgfvwfhwwwwwwgwwggvwfgwugwvgwgEevhwxwxxhwwwwfxwxvwfwhwwwvvwgvwxwwwfwvxvwUfwgwwggvwffwufgwWwW3DuwfvxvwgvgwfgwvWfvguw5CTggvwgfwvwgFevfwgfvvvwwxwgxwUfxwwwwwfffhgwweffxwfwvUfgfwxwwwwWevxwwgxfwwwxwwwvwwWffwwvgVevfvwgvwwxwwWevvvvvwWwefwwwe7UewwwdfwwwwwwvuwwwwgXwuwwuwwuwhWwwwwvwwwwwuWgvVwwWwvWwvwwwwwxwgvfwfGfFggfBDvwfgwggvfxgffwwdffFfevffvgUVwwfgefgwwwwggvvwwgdfvwfvwvfWgvfwwgwwdFwxfvwdffdggwvwwwFffwgvwwwwfgeugxxGfugfxWffFvffwxvwxWVwxwhgwgfxwwgvwwggWWffwdewwHffVwwgvwxwwwwvwxwwwhhwwuvgvWgwwxgwgwwwwggfgwwwhwwxwhwVffwvweSUegVfgVfwguwvvwfggvffwg6UuvwevfevFVfggewGffevwewgvhxwwvewvwGffgwwfvwvwwfwWvffxgwvwxhfwwwxWwwwdfwWfgwwvXgggwwvxwhwwugvvwvgwxvvwwvfwvxfvwwwvwwwgwwwwvvwggvwwwvwfvfffgwwxwwxwvwwxgwwwwwwwwwgvwwxgwwwxwwwwvfvwfwwwwwwwgxxfwwvwgwfvwefvvfwfveUeffwWfwfwwwwgfVewgvfwwXVVfevvwgwffgfffgwvffUvugvwfufvfwffvwWwwfgufvvvwwfvwgefwwwweVevwwvvwvxwggvwxwwvggwfvwgwvgwwwghgggvgvwWfevwwwwwwwfvxggvvgwgvwfgffeffvvvUfwwgVfuvgUVvggvvxwwvgggwfegwwwfwwwxhwwggwwhwvwwfgwwwhwggvgwfwgwWwwgwgfffEUvVffeefVUFfgfgwfgvvgfgfwfffTUfvUUeWvvwvfgffVEVefggfvvFfwwgeugfFggdvfwVgfwugfvxWfFfeuffWfVvvwwwwdevgvUfhvxwwwhwgFfvwwhvwefwxufveVvewufvwwwgvugwwfwfegfwwwxwwvvwvwwfWefgfwUfwwfvvxvvvwwwwwwwwwwwhvwwfwvvwgwwwfwwwwwwwwxwwwxxvvfwffvfgfgDUvwffwfWuwgvwfgwwvvvVwgvVefvgwDUwwffwUfewvfwvvwwWevwwwfvwwwfwvfwfvgvvwwwVfwwvwfwwwwwwwwUfwwgvwwxxfwxwwfvwwwfxwfvgvfwwhvwwwhwwxxvgvwwwwxhwwxfvwwwwggwwvwveVgwvgfUguwwxghwwxwwwxxwwwwxxwwwvwwgwwxwwwwwwwwwguguwwwwxvggwggfwffweVwwgffUvvwffwfgxgwxgfgwWfuwwfffuVWguwgfvvgwVwvwwgfvwvfwwhwffffwvffvgvvfffwfwfffguxwvgwgxvgwxwwwfffvgxwwwxgwvwvwwwwgwvgvvVfgxwwwvwgwvwwgvgwwwwvxwgwvwwwefvgwvwxVgffgwgevfwvvwvvwvvwfwwvvgvvwvwwwwxxvwvvvwgwwggwwwwvwwxxxfwwvgwxfufgEWfVWvfTEfgfvvfgfWwfgVgwwvwtdfUefwggwhUVxfwveVffvwwwwwfggfxgvgvxwuegfVuvvgwgvvwxwwwvffeVgwxwvfffvgwwwwxvwxxwwfvvvwgfwwwVefwggwgfvwwwghvfVfuxxwwgwwffvwwvfwggvwUUfWwfffgvvvwgwwwgwvfvwwxxgwgvggvgwwwwgwwwwwxWwfwgfvgvhxgxwWuegFWvfFTTgwffefvVgffffffwVfffwWDUvwweVffwUVFeeeffwgvvwfgwwgXvwgwWwgfwwwtgvwwvWwwwfvgUeVufwvvhwgxwwwfwgxefwwwfvfvvWggwgfgwvxwgwwUffUgwgwwuvwwffgfwvvwwwvvwxxxvfvvwwvggVVvwwgTTwwfwvvvvvfwwhgwwwffgfwwgwxxvvwwwwvwggvvvvwwvfxvwvffwfwwxvvvgg54dwwgeevwgvgfgfvwxfvwwwwwwffUVVVefvffvxwwwvwffwwwwwwwWVvxwxffwwwweeffVUeVevvwxwgwxgggvgwwxggfvWVvwggvwxwwwwxWVvwgvvWVfVufgvvwwxwvwxxwwwwwVefwffwwfeefvvgeVfvgwvwWfggvgeuwwwfwvwxgvvwguwewgwwwhfwfvgvwfvvVwwvwwggwgwwwwxwXgffUTDUfvVfVeffvfgUfgwwwfWfgvwfWVeFUVUVVfvfgvwwffWVvfwgvggvgeffwvwfVvwvvWVvVeVffeefvguvvewggvwwwwwwwhVvWfvfwvvggwwxvUwgVvgwwwfgvhegvgvvwUffvweefgwwfguwwwwgvgfwwfwvggwwwfWvfVvueWwxwuwvxwwfwwwgwwxwwgvwvfvwhwxwhwxwfWgvwwwgxwuWggvwhwwhwwwfwfffWfeWfufVffwuvvffvffvwwwfgfffeVWveffVgfeVvffvgwfgefgvwwvvgfvgvvwxffwwwfeVggfffgwgegwggvgwhwwwwwxwfvgwgfffgwwgvwwxxwxwwwWvewffwvxffgggwwwxvfwvfwwgxwwxvgwwwggvxvgwvwwwgffVfuwgwxxwwvwwwwwxwwwxxwxwwwwwwwwwwvxwvwwwwwfgfwwwwgwgfvvvggwfggfeUDEtvfwhfwggfvfffwwwwwVVfffwwgfgVfeffffVDETfuhgwwfwxwgvvffvwwwgwgwvwwwwwvvvgvfgfVUugxwwgwwxwwwvvvwwggwfgvwwxwwwwwwwxwwfvfwwwfgvfggvwwfffvfffvwffwwwvxfgfvwwwffffvfwxfvxhwggwfgvwvwvxwwxhxvgvwxwwxgwffvwwwwwwwvffvwvwwxwfUvfvffVfgUfUfvfvwwvgvfgUvfgfgvggvfffffffgVvwwvwUfefvvgwwwwgWugUfVvvvvvgwffffgwggUvfwvwvUfvfvvvvgwgwwwwxxxwUvwvwefevfvwwwwwwwxhgfffgvwwhvWwwgwgwWvwwvwxggvwwfgwxfwfDUwwWefvwwwgvxfwhfwgvfvggwwxwwfwwghvwwgfgwwwfvffffgfvvvxfgwgxvefggwwgUfev6CdwgfWgwgUffvWffwgwWevgxUfvwgevWeVvvWUewwWVfvwwwfwgUfwwWevwwfvwwxUfwwfwfefwgWeuwwXWfvwwfxwwUfwwvwWefgghvwxggvwgwwffwwwwwxxvwgwxUfvwwuefwvvfvwwvwwwvgvwwwvvwhWVfvgeewfgxvgxwwxwwwwxxgwvhgwwvvwxfxxvwgxwwxwwwwffffvvwgfggvvTTgfgvfgggfgvvvffwwgeewxWVvvwffvvfgwwTTgfgfgwvwwwwwVVvwvvfgvggwfgxxwwwxgvwffgwxgvgwxwwwxwvvwxggvgwveewwgvvwxgwxvgfwwvwgwwwwwxhgwvvwvwgxxvwwwxxgvvwwvuwggvvFVvwwgfVfvvwgwvgwwwxwwxwvgfvwwgvwxxgwvwvvwwwgwvwgwwwxgVwwvxfTfvgwf5VeUv7UUefwWvvefvdVgfvwwgdffwwTfffwSUVUvwwGVeevWvgwwxwwxfefvwgfvgxxvgvwwvggvevVfdwgfwwggEvvfxfwwwvggvfVfgvwwwgfvgwwgvwwxwwvVwvgwwwwguwxeewfwwwvVdgggxfxvghwvwfwvVfuwwTEwvwhxvgggvfwvvgwwwvgxxxgwwvgwwwvfwgghwweVwvwvgwxwvgVgufffv6DsvgeVgvvvgwfVfuwwffgvwWTEwwgwvfggfVeVfefffwvvvvfgvwxwVfuwweVwwWeUxwgvwxweVeVveWwwxwwwwwwvwxgwwxffeVvvgwwwwvwxwvxWfegwvxxxwxXfugggVfufwwgwxwvvgwgvfwggvffffwwggvfvewxxwvXwghwgwwhwwwwvwWvwxfgvvvfhgwwwWwvvvwwwxvwxWgfVVwfffveffgfffwfeUvwfvVgfgeuVVevwvfffggvWfgfeeffgvwggvvwwWfvhwwffgVefwwegvvwffvwgvwgWuvwffwfwhfwfvxwwgwevfwwvwhvwwwgffvgUfvwgvefgggwvwwgfggfwvxwVegwwfgxwwwxvvugwvwwgVfuwwgeVugwvgwvuwvwWgwwwvwwwgwvXwwvgwwvvwvggwwvwWwwwwwwwwwwwxxwwvwvgfFUdfgfffvgfufgwwwgwwffvgwwwveVfvFUdfgfeVvwgwvfgfvfgugwvfVvvgwveVvgguwufggwfvvgggvVwxwvvgwgwwwwugfwfwvgwwvgguweVwwvwwwevfwwgwgwvggwwxwwgugwwwxwwxgwwwwwwffgfvgwgVvffvwfwgwvvvwwwxwwwgwwgwwwxxwwwwxxxxfvwwwuwwwgggwwwgwxxwxhffwgfffUeeUfefvvwwfvwvvwfggwwvwXUVffVfVvvvefffvvvWfefvgwwgwgfvwfvgvwggwwxhfgfwwfvwwxVwfwwgWvwgxwwwxwhvwwwxvwvxggwwhgwhwwwwwhvgfvvwwfwwvwxufwwwgwxwwvxwxwwggfwwwwvwwwwvvgwwwwwxxxwgvxvgvvvwxxwvgwwgvwgfwwwxgwxfwvvfffwgvwVeffwSUDefwfwhhvgffwwefefvfvfgwDVfSUwxxwwwwwwwfvwxxxwxwgwwwwxwwxwvxgxhwgwwxwweVffVvwfwwVufffxxwwwwwwwxvwgwwwwgfWVfuvwgwWffvwxwwfXgvwwwwfggvfwWffwwgvwxxwxuwgwvwgWwvwwxewwxxwwgwwwgwwwxxfgfWvvwfwveggffvgVffvdfvegGUdwWEVvgvwfgfwUfvWufwWffVgGUVfVvGTuvxvhgwfgWwwwwwvvwggwwgxwgwwwhgwvxxvvfwxveghvvggggvfVffgwgewvvvwfwvwvvVfvgvvvvvwgwfvvfvfwwxwxVvvvgvgfewfwvevgwwwxxxwxxwxgwwfvvvwvxxgvxwhwvvwfvvwwvwghxgedfvwwwfugVfuwTfgvWvgGefefdfeevwVfgvggWVggUfewTffegdefevwVvwgwgvvvvwfxvvwxwwwwhwwxfvfwvwvfvwgvwgwxfwhhhgwwUfvfvvvfveeffvwggghwwxwhwwxvxvgfgfggggwvWvwvvxwwwxwgwwwwvgwxwggwwxxwxwwwwxxhwvgwxxxxxxwwwwxwhgwwwwgwvxvgwvwxwwwgffvwvgwTTwwWfUUfugvvwwwvvwgwVfUUfuwwffffgFEuwxwwxwwwgwxxxxxxwwgwwxwwwxwwwwwwwxwgffffvxwwwgfwfUwwwwwxwxwwwwwwvwfvfVexwwwffwwwvveffhvfGfvfgvwvvwwwxxxwxwgwwgwwfguwfwwvwxwxxvwuwfwwwwwwwxgdTfgwwGFdfUVVweewfFffgvfTffgdfgfdfgffwWVvwBDwwdfgdffegvwfvwxwgguVffUwfvvwwwwwxXfvUwfvwwwwwwwfggvVwwfwwdfwwvwwSUfvguwwgwgwVwgfwwwwwxxwwwXfvfwVwwgwwwwwwxwwxwwwwwxwvgwwwwgxxxwxwwwxxwxxwwwwwwxxwxwxwwwwgxwxwwxxwxxvgvvwxgfgwwwwwxwwwwvffvwgfvgwwgwwwwwfvfffffvwwwxwfwwfxwwgwwxwwwxxwwwxwxwwwwwwxwwxxxwwwwwwwwgfvfwwwwxwwwwwwxwwwwxxfgwwwvwgxwxwwwgwffvgffgfwffvwgwvwwwwwgwwwxvwgwwhgwwwwfvfxxwgxxgwwvfxwwwvwgxgwffvfffgffgwvfvvgwgfWeuffgUefgfffvfvfffgVUVfvfwwfgwvgVeUvwwffvffvgwwvgvwgvwwfwwwvxgvwvwvvgwxvwwvwgvwvfvfffwgUVuwvwfvvfgUeegvfwvgwggwvwgwgffvvwwgggwvwwwgwxfxwgwwhwwwxwvggfffgveggvVwwvgxwwxxxwwwxwxgvwwwgvWwfgwgxwwvwfhhxgwxwwhxvvxffffwfgfugfvVgwfwgfffgffUefvVVvfFfffgfffvgFffvgfwWfUVfvfgwfwwwxwvxfvVwvgxgwwwwxwgwwwxxxwwxgxxhWwgfwdfvvwWwgwvHfvfwwgwgxfgvwffgvvwgvwwvwgvwgvwwgwgxwwvwvwvfvwWwvwuwvvwgxwwxxgwwxvwwWwwwxwvwxwwxwwwwwwxwvwwvwwwxwvwxwfweVvgvwgfvgvgeeffWfuWgveVvgfefvdfgwVvWVfvufuwUdfvwvufVuggevgwwggwxwwgvwwwwxwwxwwxxwwwwwvwwwwxwwxwvdfwwWwvgwwvgvwVdfxwwguwwvgwgwwfgwxwwwwwwwwgwgfwwgwwwwwxgwwxwwxwwgfvwfwwwxwgggfvvxwwxxxvwwhgwwwgvwxwwwwwxxxxwgwvwwxwgwgfwwwwvxwggWUfevDUgwwWVfgVUUugfwffffUUUxgwwgeuwwgffffvFUtxwgwxxxwgfvwwwwxwwwwxwwwwwwwwgvfggwfeuxwwwwwvwwwgvffvwfuwxfwffvwgwvffvffwwwwgwwgwwwffvfvwgfwvvfwwffwgvggvvwvwwwwfwwxgwgwwfvwwgvwwwwfwfwwwwfwvwgwhwxwwfwxvwfwxvxxffffgvwgfvgffvwfwvffffwwfffwwvwwvfwVevwgvgwffwvwvUffffwwwgwfwgvwvfggwvwwggwvwgvhwxwfwgwwwfwvwvwwhvwggfgwggwwfgxwfwfvvwvwxgvwvwwgWefwggwwwwgvwwggxhwwwvwwvwxwfffwfwgfvgvgfgwwxwwxwxwxwfgwwwwwhfwgvwwwwxwwhwgwwxwxxwwxxvfffgfwgUfgvgfvvghWfffffffVVfVevVefwwVVvwVefffffWevvwgVefwwxfwxfwxwXevwwwwxwxxgvwwwxwxwxVefwUfwwwfvgfggfgvwwxffwwwwwffvwwwwwxwwwwffwwwgfvwwwwwwwwwwwgguwfgwffgwvgvvfwwxwxwwwxwgwvggfvwgvgwwwwwxxwvwhwwwwwwxwxwwfgufwggvggwfvvvVwweVfUggfuffffeWffUfgVVfUfefuffgwweeVvgwwwwwwgfwggwwwwwwxwwwwwwxxwwwwwgwwwxxwxveegwfgwgwweewwgwxvvgvgxwwwggffwwwfgvgwvwwgggwvwvvwwwwwwgvvgwwffwwvvwgfwwwgwgwwwwfwwwxxvwgwxvwwwwwvwfvwgwwwxxwwwwwwwwxxxwxxhfewVggvfffvwgvvwwWTUVUeeTfEeffwGEeVfeeVVffUeUffVgWVffwwffwwgwwwfvwwgwvwwxwxwwwwxwwhwwwwxxxxwxhVfVwfeffvvfVfwwuvWfufggfgwwWfwegfwvvfwxgvwwwffgwvwwwwxwhwwwxgveVwWfuVfvwwffgvwxxxxwwxxxwwwwgfvgwwgwwxvghwvwwwxxwwwwgvwwxxxwxwxwUweVuVeuFUfgwgvvgfVfeVfueVeVeefVC4fwVfUWvfeVeVfefwgwvwvvggvvgvggwfgvgwwfffhvvwwxvgvggvvxxgeVwwWfugxwTEfffvgvgvvwwvwwwgwfvufggwfgwwwxwwwwvgwwggwfwwwwwwwwwWVvvffgwvgfWVfvvgwxwwwwxxgfvxvfwwxgwvwwwwwwwwwwwwxggwwfwwxvwWwVVfWeUgggwwWUegvffeewvfWVffVfvuVVfffCCffgvgwgwvwWVfgvVffuwggwvxffwxwvvwwvwwwwwvwwwxgfwwxxxwwwwFEefveefgghgwwgwwffvwwwfwvwwwfvvggvwfwwwgvgwwvvxwwfwgwwwwggxwwvgvvvgfgffgwvvfwwgwwgwvwvwggwwvgxggwfgwwwvvggwwvvgwggwvfwwwvwggwwwwxwfgeVfVfufwvvgwgwvwfWfewwwfgwwgvwvfffffvgffvvfwwgvwvggvfvvwvfvwwfvwgwhwvwfwgwwwwvwwwvwvhwvxvgwgvwxwvwwfffvvfgwwxvwvgwvgwwwgffwvfggwvgwwgwwggwvgwwgxhwwxwwxvvfggfggffufvvgfwfwwwvwwgwwwwwxwwxxgvuwwvwwwwwwwwwgwwwwwwwwwwwxxwwwwwxxXfggWUfvvvvfwfgwwwXUeVuwvgfvwgfwGFUFeUTfffvVfuggfvggvgwffvxwWgwwvwwgwwwwwgwgwvgwwwwwwwwxwwwxwwxwwwwXWeVefegwwwggwwgwwgwwwwwwwwxhffvwwfvfwwwwwwvwwwwwwxxxxwwwwffwwwwwggwgvfffggwwwxxwwwwwxwwwwvvwwwwxwwwwwwwwfwwwwwwwwwvwwwwWUewgvgffggvVueVfwVevffWUfefVVfwwwgvWfWfvgfvffffvUeeVfUUffvxwwwgfgwwfvwwwwwwwwwxxwxfvwxwwwwwfwwvxwwwwwgwgwwwfvwwgfweevwwfUfvwwwxwwwwxwwwwgwvwwgvwwwwvvwgfwgvwwwwwwwfgfvwvwWUfVeVefwwwwwwwwwhwxxwxfggffvWevwwwwfwfwwwgvgwwwwwwwwhwwvwhfUevwfvgfwUUVUefvwffffUfVfVeVfuvfvwfwUfggvUefefgv7CTfuVfevwvhfvwwwwfgvgwwwwffvwwwwwgvwxgfwwwhwwwwgvwfwDUfgfVeVefvvXefvwWggwwvfwggxgfwvgwvwvwhfgwwfwwwfwgwwwwggwwxgwufwwgVuvwwffwvvwwwgwwwwwwwwwxwwgvwwgfgveuwxxwwwwxxwwvwwvvwwwwwvvvwwVgvgwwwwfvvwwfVwvvvfuWFdufgUUeeegfgwwhvggggffUVeUefVwvfeddWfwvvfguwxggwwwwwwwwwwwwxwwvgwwwwxxwvvwwwfwvwVufWWgffUVeddvgvfvfUegwwwgvvggwwxxgghwvgwwwwVVVvffgwvwffwwwwwfwwxwwgwwwwhwwwwxwwwxwwxxwxxwxwwxwgwxgwvwxwwwwwwwxwwxwwwxxxwwxvegfwwwWvfwwggvwwWWgwgeVvwWUefvvefwfvxwwvfWUeufvgwwwgVevwwgwwWwwwxggvwwwwwwwwwwxwwwwvwwwwxwwwxxvwwfvwwxwvgUfvwvwwxgegvwwwwfvwwxwwwxwwwwwvxxwffgwwxwwwwxghwgfffvgwfUwVvgegwvwhxwhwwwxxwwxwVwvvWvgwuvwwwwxwxhwgffwvwvgxwwwvwxVgeVvfwfVwuvgffgvvvVfEEeeeVeVfdfUeVwgVfufwWeFeVfdeffwfwguvwvgwffvvgvgvxwhxwhwgffwvwwwxxvwwwvgvwgwvgxXeVegwvweVwfwwuvxwvwVfugxwwwwxxgxwXfugvvVvwgwgvwwwwwwwwgvVwvgwwVfvfvWwgvwwwwwwxwwwwwwwwwwgwwgfwwwwwxwvwwwxfggwwvxwxwhTfgfgfwFVeufWwgwGffgedfewWUvgwgTUfwwfgwwwTUFUVugfvvwwgfwwwhwwevgwwwwwhxxfgwwxwwwufWgvvwwwxwgwxffvxwwwUfffggggvvxgvghwwfvwwwwwwxuffvggvwwwxxwwggffwfwwxwvggfvvgvwwxxxxvgwvwwwgvvwxwwxwgwwwwgwxwwxgwwwfgeevwffgvwwffefVvffvWVffveefffgfffgVfUVfuwffffgfffffefVgfwwwwvwwvgwwgxwwwwwwwwwwvvwwxwxgvwwwwvfwwWfeVfwwwgwgvgwvggvgwvwxgffwwvwwwwwfvvwwwwxwfwhwghwwwgwfffwhVVvgffwfwgffggwvwgwgxvwgvgggxghhwvgfwgggfwvghfwfvvvwwwfvvwwhvvwwwgxxwXVfwgUfvfgwfffwwgheefufwUefvggwWfwWUfeffwwUVfvwwvWVeffgvwghfggfvgfwvvfwxgffgfwgwwgvwgwgwwhfvwwwgxXgwfvfvwwvwffuwfwwWffgwggwwwXvfvvwwefgwwfwwwwffwwwwfuwwwwwwwwwggfvwvwwffwwxfgvwwxxwwxxwwwwwwwwwwvwwxvgwwwgwwhwwxwwxvwwxwwwwfWvwvvwwefgwwffwwxvewgefVvweUggwWffvwXfewwWwweUggweVwwwfvgwwvvwwvwvwxvwwxgwwxwwxxwwvvxwxxwwfvwwgfvwwhwvufgvwvgwwgvwxvwWfwwwwwwhgwwxWvvwwwfwwwxgwxgvhwwwwfwwwwwgffvxxwwwwwwwwwggwwwwhwxxvgwxwxwwwhvwhfvwgfvwgvgfwhwwxwfvgfVfEEexxwhgwwxwwwwwffggfwwWVvffVUVeeVGTwxffxffwfgfvxwwvgeegwfvxWVeVfeffffvVUxwwxwfwhvwhgvwwWffgvwWevwwwwwwwfvwgfvUfvwUffvwwewUffDUUfuxwvgxwwwgvvwfgewvwwxwwgvwvwggvfvxxwwvwxwwwwwvwvwwvvwwvxfvfVvxwvwwhvwvwwegugUeewxwxwvwwxvwggwgwWwWvgggwwxwwwegUeevvffvxxwgxwfgvgvvgwgwgvfwwgufugfuvfgfuvVeeVvxwxwgwwwxwxvwwwwvfwwwwfvwwwwfwggwwwwhVggegvfgfWwwgegUVfegegxgWwxwugxvhwvwwWVgwhwvxvgwhwvwwvxwxwxhfhwXwvxvvwwgwWVgwggwgggwfwwwwvegvegWftwW5UwxvgxwxgwgwfhwwedfhvfwVffvwWVFggwVSuugxwwgwegWffgwwwhvhuefXftwgVVgwefgfFffUhwgxwxuuwxvhgwwgghggwgTwxwxevvwxvvvVvwxfuvwvw5UvvufvFevxwvwwvwhxxfVvwvffvgxwwwxxwgwwwwwwxwgwwvgwwxwxxwgxgwvvwfffwgwwffffuhwfwgwweVvwfffVefgwwgvwwvfwWevgvvwhwgfwvvvefVffvvffwVeffvwwwwvwfvfgvvwwwxxwwwwwwfvgVffwfwwfeffuwwwwgwwwwwfffWvfwfxwwffffvwwhwwvwwxwhfgvggggfffVffVwgvvgffwwhwxxvxvhgwvhfgwxxwxggwvhfgxwwwvwxhwxxwwxwwgwwwgwfvgvfwxwwwxvggwugVgxxwwwxwwwhvgwwvwgwvgfgfwfVgffgvewwxwvggwuwffgvgwvvgxwvggwuwgVgfwefgffhvfxhfwfxwhfgvwffhfvhvewvwwxfvfwfvfwwgvwwfufwwwWvfvfgvWvwgvvghwvwwwggfvvgfgvvwwwwxwwwwfwwxwwxwwgwwxwwwvwxwwwxwfgvwfvvfgwwwvwwwwuvwgwggfvfgvwfefwgwgvewfwwwwwffwwwwgwwfffgvvfvgvefvvvgwwxxwWffggvvvegfgwwxfgvfgevfefwwvvgwegxwwwwwwwwwwvfwvvwggwwfvwvwwwwgwgfgvwwwgwwwXvffgffvgffWgwwxwxwwhgwgwwvvwxvfwfgwfUfvxhgwwwwxwxwwxwfvwwvwwwxgvfxxxwvvvgfegwwwwwVwvwgfgvVwgVvwgggweVwfUwwfwVEetwvgwwxwwfwvggevfvgVefgfvwgeWvvfVfeVvUDuwwwvfxgwuVwugVwwwgufxgfwwUvuxgVveFvfEgxwwvWfugxwwfxgwvWwggwfUwwfefwwvgfegETxguvwwfewwVefvvwvvfxwgggfgveggewwwxvgfghwfugvfvvvwhwwxvvgxvvhGffggfwuwwxxfuwfwwvxfWfuhgfeVvwfvvwhwxwvgwxwwuvwVffgVVfvfVwxwfwvgedfwfwgggwfxwfVwfwwvggEfewgggwvWxwvvvVVdfwvwgwwvwVwvxggwwwxxwwvgeuvwfxgwGfvggwggWVgfwwvxgEvvxxxvgVvgexwgfwwwwxwwwugwwgvfWwwwwwxfwxwwxxwwwwxwwwwxwwwwwwwwwwwwwwggvWwwwwxgvwwwhwgvffvwgegwwVvfVvvwffvvwfwfwwgwgVfffwfWfewVwfffggVveWwggwvvggwwxwgwxwwgfvwfwvwvgvvwwwgfeVvwwwwgfvvwhgwgwwvwgfgfxfwwwwwgxwgwwwgfweffegggwvffwwuVguwwvwwfwxwwwwwvxwxwgwwwwwvgwxxwwgwwwwwvwvgxwwwxwwwwwwxwvwwwgwwwwwwwgwffwwfwgfwwvwfffffxgvxwxwwwwwwwwfwgwgffffvxwwvgwwwwvwfffffwwvxwwwwwfwgfxgggvgffffwfwwwfwvvwfffffwwwwwvwwwxxwwwwwxwvwwvggfxgvggggwgwvgffffwwwwwwwgvvgwffffvxwwvxxwwgfwwxwgvxwggvxxvwhwxxwvggvwxxxwvwhwwwwvwgwweeUxwwwwwwwggfvwhwfvwxwwvgfwwgeuwWVVuwwwwwxwvxgfgvhwvVWwweeUgwwwwwwfVVvgwwuvwgwwxwvwvggwwwvvgwwfeexwvwggxwVVVuggwfvxwgWwwffvxwwwxwwwvVWwhxwuvfgwxvuuwgvvewvvWfwwwvfwggwfvWfgwvwwWWxxvwvfwwvfgxvfvwggwxwwuwwgwwwwwxwwwvhxwwwwwwvgwxwvvwwvwxwxxgwgwgvfgvwVgwwuefwgvwxwwwgwxwwwvfgguevVVfffWwvvwfwfevvwwwwxwwxwvgwxvvwwgggwfwfwwwfgwgufvvgvvvvvwgwvwwwvvggwwwwwwwwwxgwvwwgufvWwfgvfgggvgwwgwfffwwwwwgfgwvwwwgvggvxwwwvwwgVxxwwffwfxggxwwwVxxwwvWwwvwwxxwwfwwwwwwvgwwwwfwvfguxwgwwvwvVvwxwvvVwvfxwwgeVuwgwgxxwwxwgguwgwgVeUggvwvfgggwvxwvVxwWvfxwxwfguwgwvfgfgwgfggeVuwwwwffvVhwwwwguvxwwwgwxwwwvwwwVvwgwfVeUxhxvwguvgfwxwfgfvggewggfgevgfVwwwfhwVwwwvgwwwvgwwwgXfvvgvgxxwwwwwwxwxvggwwwwhwxvgwxwwwwvuwwwwwegwVwwwufwxwvwwxwxwwwwxwuwwWUtwwwwwvfwwwwwwwvvwwwgwwwxwffwvwvvggvfwwWwwvWwxwvwffvuwwvxwwWfxwxwwxwwwwvxGUuwwwWfeWwwxxxwwwggwxxxwgwwwugfvgwgwwvVfWwgwvgwwwwxfgwvVwwwwwgxwwvgwwwwwwgwwwwwwwggvVgvxxgxwxgwfgwwgffxwgwvgxfwvfgwwgxwwwvwfefvwwvfgvgfwVUuggfwvhhwgwwwxwwhfgxhwvgxwwgvwwgwwxgvVfuVwvwwwgwwxfwwxvfwvwgwffvgwwxwwwwgUVwvwwgwxgvfxffvvwguggvxwwxvwffwgfffwwwvfwwwfwxwwwffvxwvwwvvgvgxxxwxwxwwVVfgffvvwgxxwxwggvwxwwxwwwfgVuwgwfUwwfvgwggvxwwwwwwwwwwffffvfVeewfwwwxwwfeVwwwwwggfxwwwfwxwffgVVfffVegxhwgwfgvggwgwvwwfgfwwgffwxwxwwwvgxwwwgfvwwgvVVffffVevfvxwwvxwwgwwgwwwggVfuxghwfvfgxxfwfwgwvwxggvgwfwvggxVfwwwwwgwvwhwhwwfvfvggfggwvxwxhwvgwwgxxxwwwfffwwgfwvwwgwwwvgxwwwwwwgvwgTEffvvvvwwxgwvgwvgwwgxweVwwwwgwVfevffggffwwwwvgwgwvfvvgwwxwwweVwwvvvxxwwwxxwxeVwgwvwTEfffwvwwwwwxgvgvgxxfwfWvwwvVvegwueWwhvugvgggwvWwhwhwvwvfvwxxxwgwwvvuVwwfwffwwuVhgvvhfwwvwgwwwvgvWfegwuvgwwfffwggwhwwwxwvwvfVWwvggWfvvWxfvfwhwuwwwggvwgffgwvwwwwwffgeVggffffwvvgwggefwwwvggffwvwfxwwggfvvgvxgvfwwwwxwgwgggewgVfvwvfffffffvvWwvgwvfgxgggwggvwwwwwxwwggwwgffvxwwxxwwhwvwwwxwwxwwwwwwxxwwvgxxwwwwwggwgwfgvvgvwwwwVVxwwggggVETxwwxwwxwwvwgwwwwwfffewwwwwgvfwfVefffVTggwwhgvwwffxvvwxVVgffxwwwgVevwgWfeeVfVwwwwwwwxwwwwgwvgfgvfgvfexxwxwvfwwwwfffffgwwgwwvVVfffffEEvxgggxwxgfvvwwffggwfwxwwwxwwwwwwwvfwwwxxxwwwgwxwwwwwwgfvwwwvgwxwvffwwwvvwwwwfwxwwwvvgUfgfvfexwwwxxwwfwwwwwxxfffvfgfggwwwwwwffeevfffgwwvwgxwwUgwfvvvwwwgfwwggwgUfwwgeuUfvfffevgwwwxwwfvwwgwfwwwwwuvvgwvgwvvvwwggvfvfggfwvxwWVVwxwwvWgVffvvwwwwwwwwwwwwggwwgufgwwwwxwwwwwwwgvwwwxxwwwwwwwwwwwwwwwwWefwwgvwwXgfwwwwfvwxwwVVVvwWeewfxfwgwwfvffvggwvvvwxffvwwevfefVeVvewgWVUvwwwwwwfghvvwwwvwwxvgwwwwwWefwwgwvwwWVffvwwwwxggwwwgvfvvgfgvvwxhffwwxwwfwwwwwwvvfwUVwwwfeegweefgfgwwwffxwwwwwwwwvvwfgxwwwwwxgvwwwwxxxwwwwwwwxxwwwwwwwxwwwwwwfwwwwwwwwwwwggwwwffvfgwwwxwwwwwwwwwffwwggwgvwggffvfgvfwfwvvgwwwwwwwwwwwwwwwxwwwwwwwwggwwwwfvfgwfwwwwwxxxwwwwwwwwxwwwwwwwxwwwgfvwwwwwxwgvwgfgwvwwwwwwgvwwwxwfgvwwwwwxgvgvxgvvgwwwwwwwgwwgffvvxwxwwwxxgwvxxwxxwwwgwvxwwxggvxfgwvwwwffgvwVfuwwwwwvvwgwvwwwwgfwvwffwwfwVVuwwWfugwwgwvwxwgvgwwfgvxwwwwwvwvfxfwgffgggwvgxggfwwwvgxxfwffvhxwgwwgwhwwffwwxwwxwwwUUwvwvfwgwwvwxgwxghwgwwwgwwwgvuwxvgwvfxxwxwwwfwvwwwwwwwxxwwxxwwxvgxxwxwwwheVfugwwwwwwgwwwgvvwgffdwwfFgvvwwwwwwuwgwgwvwfffvxfvvgwwvWfWfdUwWwvwfdewwwgwguwwvWwwwgwfwwwwxgwfeVfeVwxwwwvwwwwvgwwwxwwwWvgvuehwvwwuvxwwwWfeVfuwwxwwggwwwvgwfVffewgwwwxvwwwgvwwwwwwfwvfwwgfvfwvwhwxvgwgwwwxwfwwwwwxgvwgwwwwggvxwvfwwwwxwwwgwwgwvwfwvgwfgwWgVwwwwwWVfVfugvfgvwwwwwfvwwgfwgUefeUwgvvgwfgvvwfgfvgVwwWwvvxgfwgvvwgvwfffvgwwgWvgvffgfggVfuwgfuvwgvgvvugvwgwfwwwwwwgfvfwwxwvfgffwwwwwffVwvvvgwwWVgwwfffwvvUwwwfVwwgwvxwvgvfvegwwfwwgvwwwwffxwwhxxwwwfxwwhvwfwvggvwgxwvwwgwwvfwhwwwgggfuwwwvfwgvefwxwxxwwgwwxwvgfvevfWfvvfwxvgvfvegwvgxwgwwvxxwwfwwwvwwwgvgfguggvwwwhwvwvfgvwvugwvwwwgvvwghwxwxwwwwwfwwwwwggvwvggfvvggvWgvwwwvfgwwxwgggffvwwgwgfwvwxxwwffvvfVvevvgwwwwwgwwwwvfwwggvgxxwxxwwwwggvwwffwfwVgewvgwfvfVwggwwwgwgvfUfWfffffegufwwfvwwwwwxwxwgwwfffUVUVvfvffffvgvVfeWwfWwwvwgwwwwwvwwwfwggffevfwfvuwgwffegffvvgvvWwvgwWvvfgvgwvggvwwwVwggggwwgvwwgefffvfgUVwvwvevgweVgegwvwgwvuggvwwwwwfvxvwhwxwwwwvvUwfwfvwgvgwvvwvfvfwxwwvvhfxwhwxwwxwwwfwwwwwxUwfwwwwvwwWwwgwwevff3UDwxgwwwwwvxwwWugvvwwfgwwwVgfffffvwgwwwwvewfgTfVwwwwWwgvwwfvfwdfVefffw3UDffxxxhwWugwwwvgwvwfgwfwwvwxwwXugvwwwXegfgwggvwgwvgggufvwgfwwwWuwhwfwwwxgvggfgwhwwwwwfwgvWwWfgwwwwxxwgxwwxwxfvvxwwgwwhwgfgggxwvwxhwwvfwwfgWefwFDEwwwwwxgwxxwfwwxfvvgwvwvgwwgVfffgwvvwvggvgvVVfvxvwugwwuefWvfWWggvFDEefgWexxwwwwxwxwwxggwgfgwwwwwvvwvwfvwfvvgwwwfwvwwwfuvWvgvwwwegwwxwvvwwwfwfguvvvwwgwvWgvfgvwfvgxxwwxxwwwxvwwwvvgwvwxggwvwwxuggfgvvvvwwwwwwwwgggvffffgffvwxwwxxwxwwwwggWwvxwfgfgvgvfwfwuffwwwwwwwgvvffvwffvweffvfwggwgffwweffffvfvfvvffwwhwwwwwvwwfgvwvwwwwwWgwwXgvfwwwwgwwxwgvWffvwwhgwwvwwxwfhvhwwxwevhxwgfwwgvwwwwwuwggvwgWvwwgxxwwgwxxxhwwgfwvxxfwwgwgfwgvgfvveffgfvGTUtwxxwxhvwwhwwfvggfgwgeffwgfwfwwgfwvvfwgwfwWVfehfvgvwfvfgggwFTUthwfwVVfeVxxvxwvxgxwxggwvgfwvgwwfwfvgwxgxgwwVvgwvwfufvggufvfvffwwwwxxghwvfffgwvwwvwwgwWffvegvvfvgxxwxwvvwwvwgwwwxxfvwwfgfvgwwwwwVgfgWvvfgfwfvwhxxxwwwwwwwvvggfvwwwxegwwwwfgvuwwwwwwgvvgvvfgvvvxfffVvfggfwvfgwwvuwfgffvfwffgggwwxwfwwwwvfwwgfvwwgwwwgfwvwxxwgfwwwwxwgggvwfgwvvWwgwvwgdfwwgvffwwwwgxxfffwgvvwxwwgvwxwWwwwwwfvvvwxwwGfVVvwwxxfwwxWWffwvwdBDffGfvfwvxuwvwwWuwwWwwwGfvwxvwfFdfvFfvfuffwgwwgwwwwwfdfuw7UuwwgfvfxfgwwwTeEefVvffvwxhfwvwgwuwwwfugvfwwXuwwxXwwwwwefvvwwxfwxTfeewdfgfvfvwgwwffuvgwvwwWfewwwfUvwWwuwwuvvWffgwvufvwfvgvhwwhxxvwgwgvvvWeewWVfvvvxwvxuweVggwwwgwwfvUVfegVfeUvfEfewgwwwfwvwfwgwxwvfgfVfefgwfUwVveufVfvVvevwgFffxwweevvFevvufFUUfWUfvfewvUvgfvEUfVvgefvwgvgwgvwwwfghwwggwfvwvhfvwhfwffffvffwgfgwgfvvwhwffvfwwwwgwVfvwhwfwdfwwVwvwggwwwggggfgvvvgwWwgfwwguvvgVgwwwxWgwvwdfgWgvggwWwwvxwxxxwgwVvufufv6UewWfgfwwwwwwwxwwhgvgegvwfvwgwwxxwxhwffwxwxxwxWdfwwEVffVfwgGffvvufVwwFVfwgew6UeewWfgvfxvwfvwwwwwwxxhwggwwwxwhfvfwvwewfvwvvwwwwvwxwwvvwwwwgvegwwxvfwfWwveWgvvuwwvwggvvgwuvwwwffvwwwhxhwwvwvghwwggwwuVwwwuwxwfwwgvwgvWfeWffeWfwfefwgwwxxxvvwvuggwewfVfwugvgfvfvxgvvfvvgvwgffwvgvggwfffveVfwfffggfuVggfegwfwvfvffffwwwhxwwgffwxvwwvwwvwvwgWgfwffffwgwgfvwvwwgWwvgwwfwvwwggwgvwffvwgwgfgwwgwvwfvfvwgfwvfghfvgwfwffgxwwwxwwwwwwwwwhfgvxwwhwgwwvvvxwwwwghwwvVVgfvwfgvGTDewwxwxwxwwwwfwwwwgeVUwwhvfwwwvvvvggwvwffwwgwgvWfevgfvvfVVDETxwwwgffvwWfeffffVexwwwgwwwvwxwhvfwwwwwwwwwgvwxfffwwgwfffvffxwfgvwwvfwwwwwwwvveevfwgWevxwgUfwwwwvwggffwwgUffwfwwxhvwxwvwwwwwWefvgwwwffwwvwvfwwwxffwgVevhvW3DfffwvgwwwhvwfwfvvgwwwUevfgwwxUfwxwxUeuVgwwwwgFTuxwwUffwvwwvffUefvggfwVfwwvwvDUefffwvfwvfwWeffgwvwwwwxwfvvwwxVevxwgWeVfevwwxwwwhwgwxwhgvgvwwfvwvWwwgfwgUffvWvVvwwvwwwwfwgffgwwwwwwwxwwfwWwgvgwwVevfwwgvgvwwgWvWvwgwwwwwvVvgffwfffffGTUffwgvwwgwwwwxwhgvwwxfgvweegvgwvhvfwghwggwhgewgUfwwWefwvgfvvvwDUegwVefvfffWevvggffgwWvwwwwvwwxvwwgwwwxwxwwwvwwwWWvfwvwwvwwwwwwwfgvwwvwvwwvwwwwxxfffffwggfwwgweewwfgwwgwwvffggggvfvvgvwggwxwvvfwwwwvvxwgfwvweewxxvvhvgwwwfwfFEegggvvwwfggwxwxxwgwwxxvwfffvwwwwwvwgwxgvgwxwwwxvVVfgvgeewvggvTTffWVvfwvvfwfggeegwwggwwvwwfwwxwwgwxgwfggwwvwgwwvwwwwxxfwvwvwxwxvwwhxgffwwwwhfvvfwwfvgwwwxxgfwggvwfvvgwgwwvxwwxwxwxwxgwgwvwwwxfgwwwwwggxwghfgfWeffeUfVVffvvwwvvwwwxgwxwwwhVwfvwvfwwVvwwgwwhfgwwwwwhVfwfvwfwgfwvwVVeVffVfwvweffeffwVVvvwfggwgwgvgvwuwwggwwwhwvwwwwxhevvgvwxvfgwxvfwwwwvwxwvwxxxfwuVfvxvggeWfuuWwhvvvwwvxfgvfWguwfwggvfgxwgvxwwwwefxxwxwgxwuVwwfevhwwwxfwvgfVfeVfeufgfvvfwgwgfvvxwxwvvfeVgwfgfggguVffvvfwgwvvwvvgwwgfvfffwwffvvgfeVvwgfvgwvvVfffufwfwwfvfwwffwwgfvwxwwfwwvvwxwwwwwxgwffvVwwwwggwwwwxwwwWwgffwvwxgxfveVVxgxgVVexvfwwggffwggfwghvfWwevfWgeevegugwwxwxwwxhffvvgufUffwxwxwfwwwwwwfwwwwggwgvffvvfeVgfffvwuvwxwwxgwgwgggVVuffffwwwgwgvxgfwvvwgvwfxffvvwwffffgvgggffvffvfguVwgwfwWfeefufvvwwwwgewfvggwxwgxxgfwvwwvgwvwvgvhefUfggfgwwwxxwgwxgggwwgxuvvfwwvggWfuwwweVvgwwvwvvfUfvgwfeVwgwvvwgwvxhwvgvwgvvgVfUfegwvwwwwxwhvvwwwxgvge6DsgvfeVwwwfvggwhvvgvgvvwvUVffUfUWffwwxwwvgwvvwwwwgWfexwwTEvggvwuUUWfUfUVfvvgwhwvweVgugwfwwwfggfvwfvgfggxvfffvwwvVfuwgggffVWfvgvgwwwwgwxwwxwwgwwwGfWfvgxgvffvwwWfvgwxXgwwGVffuveggfgwwwwvvgvwhwgvwxggffvgfwvwgWgvwhwwgwwwwgvfwwhgvwWcSUuuggVufgUgvwwwwwvwhvwXgwgEffwTfggvvwgwxfwgfwvghvxdffvwwfgeggVw6FUFeUdVguvVVuwgewffvwwgfwvwxwwwfwvvevwwwwxwxhvwwgwwvxeewwTfgVvwwvewwgwwvwgwwfvgwwhwgfvwwwgffgvwwwfvffwwwvvxwwxwgwfgfffvvxwwxwwwgwwwxxgfvwwwwwwwgwwwwvgwffwvxwfwwwgfvwwgUfffUfgxvwxgwwwwwwxwvffggwvxwffwgwvvffVvfffvwwwfggvwUfvwUVvwwvwwgfvwwwUvwwegwUfffgeVvffwwwwwwwwwvxwwwwxxvwWVvwwwvwwwwxvggwwwwgvwwgvgvvwwwgwgevfwgwwwgffvxvwwwffwwxfvffvwwwgwwwfgvwwwfffffvfhwwvfwgwvwwwffwwwgwhwwggfvwgffwxgfvwwfffVfVeVeVwgwwwgwxfvwwgvwgwggwffwwVvffgwwXefvvggwwwvwxfUgVuVvVwwgwfgfvfffwwVeVuVvfVeffvWffgwwwxgwwgxwWugwfwwhufvwgwwwxggxwfwfwwvfwUgfgwfvvwffwvwwxhwgffgwfgwvfeuwwfFfvdfffgvfwgvfgvfgvvfxwwgwwwxvgvvwxvwwhvwwxwvgdedffwwwwufVgvfgVfvffffeefVUEUedwwefhwggwwvvwwVVwwhveVVfffvgfwffFfedgvugwvwwvVevgweVUfegffvvggffgwegTUTUefffgvUeUffxfwgvVwwwfwwwwvvfwvvgwwwwxwvWeVfvvwxwgWgvwWfVgvWgwvfgWgvfwwwvfvxfgwxwffwxWVvwwwwgvwwwwgvfxgfvwwxxxvvwwhwwwwwwwwxwxWVvwwgghgvhvfggWvwfeeww74dvvwhffwwwfggwgvwvvvvxwUUwwxgwgffvvWVvvWffuvfgwwgTTwwWVvfggewwwUewwwggVVffwffvwwgfvvwwgfvwggwgfgfgwwfwwggwvwwxweewwxwwvfgwweegwwefWwwgvgxwwxggvgxvvwwwwggvwweVvwggwwwwwwwfvfvguWvwxhgwgwvxvgwwvfgwfwvvgwwwweVwwwxwwvvvfwgFUdvffgfvgwvwwxwwwwwwxgvgwwgvvwxgfVvgwwwvgwwwwwwwwwgVfevfeVfvvweVwwWfufggTEfgguvvWfvggvvwvwwvwwwxxwwwfwwwwxwwwvwfwvgwgvvwxwgxwhwvfwwwxxgxvwwefvvvvwhxwffwvgfwwxvwgwwwefWvgfgvgxwwvvwvwvxxwxfgvxxvwfwgfwgwfgwgfvxwwwxwwgfevgwfgEDUUvVfffgwgvvvfwvvwvwwhffwwxgggweggUVfeVvvwwgwwwgwvgVuffwgffgwgUevwvwwwwTeUfefgFfvfgggxwwwgwvwxvvwfwwwgwvwvgxwwwhfgffvgwvwvwhxeVeVfwwwwxvvwwwxwvvfwvwxwgwggVWfvgfvfwwvvgwfvwwwvwufUvgwwwwxwgvwwgwwwvfwgwwwgwvxwgwwgvvgwgvvgwwvwwwgUUvggvwffffefwwwvxwwgwwwwwvgggfveVVuwwwfwwwwWwgegfgwvwggvgwwwwfvfffwffvwVVfgfvvwwgvgfvffgfeVVuwwxwwwwfwwgvwwhwxxwwwggfwvwwgwvfwfggvxfVfufgwwwvvgggwfwwwwVWefgxwwwVffwxvugwwwgggwgfefvfwefffffwwfvwwvggvwxwwhfwgfgefgxgvvhfggwWwgwwwwwgfvwwTVfvfwDEefgfvfvwwwvgvgwwwhgvGVUVwvwgwvwwvgxfWfvuwwwwweffuewVfewggvVgwGTVUffwvUVvwwfwFVeefffwvwwgwvvwwwvwWvwxghwgfwvxxgffgwvvweVvvwuwvwwwfwgwwefWwwwwhfWVfVwvxvvvweVfvwffgwxgfgwvefweVgwwfgwwfegwwfwguwvwwWfevvhwvwgfvwvfvwwugUwwvfwgfUfwfeffdUVVvTEgvfgfvWwvguwfwwwVfvvvffvwwWWvUfwwwegVwweefwufwfeVffwefwvgFeevwWeufgWfvUVfwweVfwfVvfgvfvvvwfwwwxguwfwvwwfwwwfvvwvfWfevvgvwwhWVfvfWvVvwgfwwxhgwwwxvwxwvwgwwwfwhwwwgfvxhvwxfwwwxwggvwwvwxwgvggvxwgvxxxvwwxwwwfwggwwgwvfwxwwwgfwgUUvwwwwwwxgwgfgwwvwfUfxwwwgffvwgUfgffVUfwwwxgvwWUfwvfvvxxwxWefvxgffgffVVwwwwwvwgxxwwgvwwwgffvgwWewwxwfwwwwwgwwffxwfwgfwwfvgvwffeevwfvvvvwgvvxwxvvwfvgxffxhgwwwxvvwwgwwwgfwxfwwwffgwxggwwxfwvwvwwvwfvwvwxwwvvfwwffwwvgVVvwffwvhwghvwfvwwvvwwwwgfvgwwwfwwvgwfwfUfwwwwxhfghvvUUwwvvfvwgfgwgvwwfgwwvwvfffvvvwwvwvggfvwggwvfgwvvwvwVUfwwwgwwgwgwwgggvwwwvwwggfwwxhvgfvgfvwwwwwwwvgwwxwwfwwgvgvwgvwwxxwwxwwwxwxhvwwhvgwwwwxxwwwxwwhgwwxwxhvxwwxfVfvxwgUffvWvGVfvwewgewVvGfVfvwWvwwxwwfwwfvWeVfvgwWgwWVffwwwvUfwvgvWVfgvxwxvvwfvgwgvwwvggwWvwwwgwwwfwvwwfwWfgwwggwwWfgwwxfwwwwwxfvwwewvwwfvwvwuvwgwvwvgvvwxwegxwwggwwvwvwVfgxwvwwwwggwvwwwwwwxwVwvvgwwvwwwwwxwwwvwVwgwwgwvwwgwTfvgwggfvffewEVfwWwgXevdVUffgwwfwgwggewwffveVfvgFvVeVgfwvgvfgguvfvwfvfvwwwwhvwwffvggwVvggwvgwwwwvggwwwwwwwdVvvvwweVfvvwwwvwggwxwvwvwwwwwwwxwXwWdWuvwwwwuWwgxwxwwvgwgwwwwwwgvwgwwwwwgwgwxwvxwwwwgxwxgvfxwwxwxgxwxefwwwfgffgWvfwWfwgwwvewfwgvfwwxvwwwvxwevVvgvgvgvwhwxxwxwwxgfwfvfvwgwwwwwwwxwVvfwgvwhvvxhgxwxwwwvwwwwfwgvfwxhvgghwwwwxwwvwfvwfwwvwevwvwwwvwwwhgwufwgfwwwgwwwxevffvwwffxxxwgvwvwwfwxwWwwxwwfvvxwxwxwxxvxvwwvwwwwwwgvugggwgVfefgfgfegvWwgWfvvwfvfuvvugghwgvgegefeefvhfvvfvfwgxwgVVuvgfggegwvgwxwwgxxvffgfegggwfwwfwwvwufwxgwfWwgvgefUeevggvfufgvgwgwgVgwwwhwgggggwfVgfVgfevwhwvvwwwwgwxwfgvwwwxvwwwgfgfwwvvwxwwwvwwwxwwwxwfwvgwwggvwwwwwwwwgwvxwwwwgwwwxwvhwwwwVVugfvwffvggfVUfvfeeweVggWfefvwgfvfwfvVvfwwwwWVvfgffvVVfvfgfvfwvfffgfffgwggfwwfggwvxxgvfwwwwwwgvwvwgVefveUfgvwwwwwfwwgwvvwfvfgwwwvvWwufwwwxVvewwwwgwwwvvfggwvvgvwfwwvgxhvwhwugwfwwuwggwhwvwvwggwhwwhwfxwwvwwwgvwgvxwxvwwwxfwwwwvfgGevwwwvgwudewhwvhwveVvgfvvwvwGefwffgwwwvvwwVdewvwggGfvhwwvgwwVdguvfgWvgvwwvwxgugwgfvgguvwwvwguvwggwwvxgwwwvfuwwwgwhvvxwwWvwfwwwwwwwgggwxwxVfwvwwxwwgvwghffvffweUWfVwgvwwwWwwxvwwvvgwgwwwwxxffvfgWffgfgwwWVfgfvfvwWgfwgfwWwgvxwwhfggWfvfefuUeGTTfgfwwvwfgVffvfwgWffefeffvvGTdwgfwWfVVvvfwxwXwegwevVfVUffwwWgvfgfgfwWVegggvVUffwgfwwwhWvvvwffeegWffwwfxgfffggfwwwxefuwfvwffwvxvvwwvgfvwwwwgvwwfvxwwffwwwwwggwwxgvwwwwfvxxxxwwwwwwwwwwwxgwwwwxwxwxwwgwwxwgwwwxxwvffwgfwwgxeeweUfxWevhvwfvfwfffwwWVvwgVevfwxwwwwwfffvgwwxwwfgxvweewvfUfgwwwwfhwvfvwwfwfvfgvgfwvgwwvgvvvgvfvwvxwxwwwfwgwwxwwggwwhgvgvgwwgvvgwwgwvxwgvwgvwwwwgvwwwwwwfwwwwwwwwwwxwwwwwwxwwwgvwwxwwwwwwwwwwwwwgvwwwfwwwwwxgfvwxwwwhggfwvfwwUfWeffVgvwfUwwwxfvwwgvwwgvgfwfvvwgwwgwxhffgwgwwxxvfvffwfeVevgwwgxwwffwwgvgvwwXefwghwwxxxfvgffVgvwwvvwwwwhvfwggwwgwwfwfwwvwwwwvwvwxgwwwwwwwvfvwwwwhwggvfugwgvffwwwvwevvfvvwwvfwwvggvvwfwwghwvwgwwwwgvvwhwvwwhvgwwwwwwwuxwwvwgvfwdVfuuvffvugffTfevGffWfudfvguvwgffwwWvFffvfwwgWfevgdffguvVwuvfvgfwwffffffWgwwwvwwvwWfgvfewxwwwvffgvweFwwgwffgvfFwwwvuwwgvvwvwwwgwfvfeFvwwxhggvfgwffGvgwwfgwgxvwvwwwwwwfwwwwhwvxxxwwwvxwhwwgvvwxgwwwwwwwwxxwwwwwvwxvfxwwwxgwwxxwwxhgvgffvfgvfgfgfgfvffvvwfvfwggvfwgffvvwvfwwwvwgfwwwwwxwvwwwggfvhvfwwgfvwwwfgvwwfvwwxwwggwvwwwwxwwwxxgfgvvfvgwwwwggvvgwwwxwwwwwfwwwwwwwxxffgwvwwggwxwwxwwxwvvwwvgwwwfhwvvwwwwwwvvgwxxggwvwwxwwwgwvhvvgvgwxweVwxwwgxwvgxwwwwwxvvwgggffWfuvffffvgfgwfwwwffwwwwwveVgwvwwgwvefwwgwwwgvwwwwggvvgfvufvggvwwffwwwwwgxweVvgwwwwwvwwwwwwvvgWwewvhxwfgwwwwwwwvwwwwgvfwfWwvwwggwwxgxwwwwvwxwwxwvwvuwwgfgwgwwwfvgwwwwwwxvfwgwxVfggwgxxxhwvwvvwvwwxxwwfwwwxwxfwgwwwwgwwxhegfWvwwfUfgwgvwgwgvfvufggvwwwwwWVevvwfwwwwVfuwgvvgvwgwgwxWgfwfffWgggwwwgffwfwvwwVfUfwgwwwwwxwwwwXVefugfwwwwfffwvwwgvwwwxwxXUfevfgwvwwwwxfgwfvwwwwwwwwxwxvwvewuuggggwwgVfvwUgwvxvUwwwxhwwvgwfwgwvgxvwfwwWuvwgwwvwwvwvxwwwgvwwwgwggwwwwuwvfgfUtwgwwvwwffgwVfvxwwvwvggvgwvgfgegVEVvwwwwwwwwfwgwggwvvfFxxwwwvgvgwwUwwwguffwwwgwwwwwvwwwwgvwvggWevfDevwxwgwgwwgvfwvgwvwgvxwUfvwvfWuVgfUwwvxwwwwwwwwfwVgWfghxweevwxWfwxhwwWWgwgfvwvvwgfgwwvxguuvwwwffvhwWgwWfgvwvwwwwhwwvxwwwhWwwgsEfvwwVUuwgwfgefgwfvvxhwwgSTfwdfgggvwxxgWUvuwwxgcefvwgUWuvgwvGgfFeeVwfgwgfwwwwgWvvwwvgggfUfwwdfgwwvxxWgWevewhvgeewxuvwdfVwfuvwwfvgwffhwwvhfgvvfvgggvwwwgvgvwvwwggvwfwwwvgwxvwgxwvgwgfwfwwvwwwxfvvwwgwgvwgvgvwgxxwwwwwxffvfedfvfggwwvfwwwffgfwwgvwvgfvVefufFefgwggvwgwwwvgwwwfvvwudfgfwfwwufwwwWeefwffvwxwwwuvgwwwwwwwweUfegFevvvgvwvgvwwvgwvfvvwffWfvwwgwfwgvwwwwhwvwwwwwwxgxfxwgfvfvxxwfvwwwvgffwfxwxwwwxwwwwxwxwwwwhggfgwwwwwhfwwwwwxwhvvgwwefvggwgvfwwgVufewgfvwwwefgefffwwwfvvgwvvgffgfffwvugVeevwxwwgffvwgUuffwwwffvwwwwhfvvvwgvwwgffvwwwwwwfwvwwvwgfvgvWfffvWUVewwwwwwwvxxwfffvxwwwggffvxffgugefwxvwwvwffwgwgwfvwfffvfwvfwwwwwwxwwvvvwwwgwwhwfwfgvvfhwxwgwwxxwgvwwwwwgwvvvfgwwfUexgfgwwWfWUfUeUwVVvgvgeeUffvfxwwvwgfVffufffwgfvUfeeUVfegggwvWWufvWfgvuuwwxvwwvvwwgvgffvvvfWwvgvfegwwggggfeeggwfwwwvvUVfvfwwgwwxvvwhgvwwggfWwvwfwwwwxwwgUVvvwvwwggfwffgfwgffgfVefwwxggvxffvwwgfffvwxgwwwUwgvgffgvwxwwfffwgffffffgfwwwxvwgfvgffvwfgfUfdf6SevgwgffvfwfffvfwwxffvffUfwwvVeffgww8SeffGgvfvwvffdUffvVeffgfgvgffffwwffgffvfgfvwwgffwwwWuwwwffffvWefvGgvVeffggwwxvwfwffvfwffwxwvwfffffgfvwvwfwvwwfwhhgwwgwvfwxwggvwfwgwgwxvgxwxxwwwwwwwwgwwwwwgvwxwxwwxxwwgwxwwwxvwwwwvgfUvvwwfgwweUeeVwfgvVVvffvfVefgvghggfgfveVfeVvfggVefwwwwwvgvwweVfeVxwwhwvgwvwwvfffgvgwvggvgwwwwwwxhwvwwwwffffffwwfwfwwfxgggwwvxxfwwggwvgwvfgvgwgwwwwwwgwwwwgwwwwwfwwwgwwwfgwvwfwwwwgwwgwwwvvwfgwwwwxvwwwxvwxvggwwwhwwwxwwxUffwwwUgvUfgwgwxgvwwvfwUfwvvwgvwwwwwwwxTUfvfwgWffvwgwwhwvwevfeffvgggwvwwfwvweffgfwgGfvwwggwwhfwgewwwwwVVfvgwwWevggwgXfwvwwwuwfwxwwefvwwvwwxxhgfgghvwvxffvfgwwwhhwxwwwwwwxwwwxwxfvwvgwwhwwhhwwvfgwxwwwgVvwwwxdUfwxUfwwwuuwWUfVvwefwwwWffwhwwwwWggDEeVfufwxeefwwgdfvwxffwwxXgvxgwWgvffgwwfwwxwvwwxWvwwgvvwwWvgeVeVffgwweefwwwxWefwvwhgwwWfewvgfgwwggwwxwwggggwggvvfvwvvfVgfvwwwwgfwwwwwvvwxggwvwwvvwvwgfgwwgwvggwvfvvwwwgggwgfvewvvwwfVgfgvUDTwvvgVffvuwgVfvwvfgfggvvggfWfvDTeVgggwwwwgVvvvwuwggwefwffefgfwewwgffvfffWwwwgggwvwgfwvwwvwwwwVfgfveffwwgfwxwewffWguvvwgwwvfvvwwwvfgwxWwwvxfvwvghwxgfWwgvwwwwwgwwwggwwfwwwxggwfvwwwgwwwfwvvwwwvwwwwwwwwwxvwvwvwwwwwgwwxhwvwvwvfwxgVfgfufgvwWvfffwwwvwwgWfwfwwvwgvgevgffwwhvgggwweVwwwvwwgffggfwVvfugwwwfwfwVevwwgwvfxufwwwgwwxfwwfggfvwwgvvfwfwxeVfwwwvwwvwgvggffxwwwwggwwwgwwwwwwxwwwwguWwuwffWVegwfgvwxwwgwvxffwwwwwgwxxwwwwvgwwgfvWwwfwvwwffwwgwVwuwxwwxxVgwUweWfUgffWDDgwffvvgWweVuffWwuwwgwwEDtwwffgwveUffVffewvwxwgwwwgWffwffgfffvvgwgfvffffwvwffVfuvgwwwwxwfwwxgfvgffwvvgvvwwgwgfvVgWffufwwweVgwvvgxwgwvxuWwwwvwwwwuwWugvxhxxvgxwgwxxwwwxwwwwwwwvwwwwgvwwfgewgwwwwWvWvwwvgwgwfgfwgweVxxwxvwwvwwgwxfxwxwwwWvxwwwhwuwwwwwwWVfgfweewfgwvwgfWfwwwwwxwfwvxfWgwwVgVwgffFxhvxwwwVuVuwvxwVfvfVVVfwfTEwwxwvwwgvfvwffftwgvevvWVfvfFUdfVxwxwxwgvgvgxwvxwxwwwwwvwwwwgfVeffUwfwwgvwwwwgwwVefuVfgfVfwwwwwxxxwwwxwwwxwxwwwwwgwfwwxwvwgxwwwwwwwwhgfVgeVffvwgvwffgffUxwwxffvggxfwhwfvfVgeVfeewvwvwvffWfwwwwgwfffVUUfffFUtgwwwgwvgwvgwffgeVgvfffvgwfgdEUTEUVuwwwxxxxwxwwwwwwwwwwwwxxxxxwwxwxwxwwxfwvwxxwwwxxvwvxwwfvvfgxwxwwwwwwxvfwxwxwwvfvwwwwwwxwwwffewwggfvffVewwwwwwwvfgwwwwwwggvvwxgffwwwwwwweVwwxwwgffwwwwfUfwwwfffeUUwwhgvvxwwwhxfgUwwvgvgfVUuwwwfVfexwxwxwwwwwggwwwwgvfvwwwxwwxxwwwwwvgggfwgfffuVvwwwwwwvgxwggvvfvwwwvfffVVwwxwxwwwwwwwwwwgfvwwgfgffwwwwwwwwwwgvwgVevwwwwgffVVuxvgwvwwgfgvfvxwxwwwwwwgwvwvwxwwwwvWVuWfuwweVgfgfVeVVTEeVufwVTEUUwwvgfffxwxxxfeVffvffVVUVUTDfffffTDxxxxwxxxxwggxwvfwwxxwwwxwwwwwxwxwgVVwwfffwwwwwxgwvVVwwffegggffwwwffxgxxxwwwwwwwwgwwwwwwwwwwwvwwxwwwwwwwwwwwwfgwwfUfwvgVVhgwhwwwwffffvvxwwgwvvvwxfUfvfveVvfgffwwwhwvggvvvfwgfffwwVfevfgEEggvwgffvwwwwwwwwgvwVETuwgVTtfffVeeexwwwxwwwxwwwwwwwwwwwfwwxxwxwwxwwwVVvvwhfggwvxwwwwwfwfvgffvvwvgwxwwwgwxgvwwwwwwwfgvgwffvwwwwwvfggwwwwwxwxwwgfvgVfevwvvvvvvwwwwwffxgvwgffvwwwxwgvfggfgfffvwwfgvggggvgfvwwwwvwwgeevVDEdvfVUufgfffvwvffeVvwwwwwwwwwffETDffveVgffwfwwvwxxwwwgwwwxwxwgvgwwwxwwwfxhvxgxwwwgffwwwgwwffwwwwgxwvwfgvgffxwwxhgxxxgwwgxxwwxwwwwwwgffwwxhvgvUUxvwwWVvvwfWgvgfdxwwwwwggfVxwwwxffwxwwggwwwwwfVVVwfwwwfVVxvwwgffwgfvUgeeUDhwxwefvxwvwuffUExwwwvvwgVuwwfeeFVxxxwwwxwxwwwwgwwwxwwxwwxwwvwgwgfvwgfgvwwwfvwwfvgggxwwgggfvvwxggvxxwwwxgwxxwwvfggfvxvgwwxxeevvvggxwxwwwwgffvggfvvvgwggvgfgvxwxwwwwwgwgxwwwwgewuwwwfwvwTEvwevewwwxxwwhwVUUuwwgfvffwwfvgffUUUvwgfWwUUfwwffgUDwwwwwwwwwxwxwwwwvwwwwwxxwwwxgvgvwwwvgffvxwwwwxvwvgwwwgwvwwwwwwwfwvgwgvwwxwggwwwwWewwwwwwwfffwvvgvfggwwwvgffwwwvwwffgwvxwwvvwxwvfffhwwxwwfvfxwgvvgfwwwwwwwggggffxgwfffvgwvfUVevfvgfUVeeUvwWeVeUvwxWUUfffvfvffefVVfgfvffVfxwxwwwWvxwwwwwwVfxwghhwxgfgfFewhwwwfvvevwegwFefgfxwwfvwvwvvfEegvwwhvxwgwwwwfvxwwwwgwfwwvgxgvwwfFfxxxwvvwwwffwvVftwwvgvwVwfwvfxVwgevVVgwwwuuVwwvffdeguwwwgvgegVewwfwwvfwveeffUUgvwwvVfguwwwU5UeVxwghfwgweFgWVvgU5xxwggvxwvxvgwhvwVuvvwxfxwwwxxwwwvuwwvvgfgWffdxwwwwwfgvUwwwxwvgfgvgfvwgVVFwhwxwxvwhwxwwgvxvuvxwWgwhwguggwfvfgfUgffwgvfVegffVvwwvgvvgwfVwvfwhvwwwwwxgvxwxwgfwwvgfwwfVFgVVwfffdeFeVVwxwgffFUfSwfwVVwvvwWgeugffffgVVTfgvUuwgeefVTTsvfxwxwwwhxxwwfwgwxxwwghwgwfvfwwgvxvwvwfUvxwwxwfwwhwvwvVwwwwfwxxwxwwxwwwwxwfwfvwwhwfwwvwggwxvVfwfwxwwwggewwwwwxwwwwvxgvwwfVvwwwwwvwgxwgvhfUwggwfvwfgwfwfwgfgwVEdwfwgwfvvgUDvwwgfvfffwVEdggfgfvVfgfhwVEdwxwfgwVvffggxwwxwwhfvxfwwwwgwVwxgwwwwwvwwwxwgvwVvgUvxgxwffVwVewwwfveVgfxgvWUwxxwfwgVfVxxwggwwfwwxwgwvfvwwwwggwggwwvwxgvgfeuwwwvVVwwwWgfffUwwgwwwwewfvfVwfwxwgfgewexwvfFfwfgwwVgfwfUxgvwffVuwwwwggVwgwfVvfVUDwvvfVVTtwvwfffVUEtvvweewgfVwffVefewxxxwwwwwxwwwwwwvhgwxvwvfwggwwwvfwggxfwwgvwgfvvfwwwxwwvwwgffgvfwwvwwhwwwwxxwwvghxwwwwvxwwfwwwwwxwwffwwwgwwwwxwwwvwgfvvwwvwwvwggfvxwfwfwgwwgxwwggfvwwgvwwgwgwwwgwggffVVwwfffwfwwwwwgffVvwwwwvUUxwvffgffffvgwvgxwfUexwwwwgvfgvgwxwxwwwwwwxwgwxwwwwxwwwwwwwxwvwwwvfvwwwfwgfxfgwgfvvfvwwgVwgexwwwwwvwxxxwwwxwwwwwxwwwwwwvfvgvgvwwwgggxwfvwgfwgffggfxgwxwggwwwgwffvwfwwgwwfwwwwwwwwgfwgfxwxwwwwxWgfvxgffwgVgeeVVVUwgvwgwffwgvwWUeeUwxwffvwgUfvfvfUuvvgfvvvwvxwgxwwxvgvwxwwwfwwgvwwvxwxwgwwvvfWewxwfhwwffwffgegefVfwxxxwggvwfwwvwvxxwxwgvvwwxwgvvgfwggvwxvfwwwgfdgvVWfwWwwxvugggvuwvffuwvuwwwfwwvfxgwwvgvfgWwxwgwwvvxgfwfwffUDffVFUwvxwwvgfffuwvggfvewwfWfgeVVEffVTExfwfWxxxwfwgWfVggwwgwxwxxfxwwgvwxvfwwwfwwwfxwgvfwwgguwvfWwwwwvgvfuvfwxvhwvgwwUxwwwVuxxxwwxgxxxwxwwwgvvxwwwwwwxxwwwwvWuvwfUwwwwwwwwxwwwwvwgwwwvxwwwfwxgwwwWvgfxwxwxwwfwwwgfwwvffffdvfVFfhvxwwwwfeggfwwwwgffuvggVgFdfffeDvfwwwvwwwgvwevwvxxxwxxvwxgfggxwwwwgvxwwwwwwxxwwwfVwwxwwwfvVvwfuwgwVwffxwxgvVwwwwfvwwwwwwxgvgvWuwwfwwwwwvwwvvwwvvgvwefFxwvwwffwwwgxgwvvwwWxwwwvwffWuwwuwfwgwwfwxgvWxwwgvWuvvgffgvfDU3wvwgfffxfvWuwgvfvgfwgDU3gfwfgefEffwgfwUwwwgfwxfwwwgxwxwxwwxwwwwwgxxxwwwxwxxwwwxwxxwwwgwfwwwxwxwfgfwwwwwwgffwwwxwwwxwwwxwgfxwwwwhvfxxwwggxwwgvffffUwxwwxwwggxxwxwwwwwwwgvwwgggfffUwwwwwwwwxwxfffxwgffgffeUxwwwwwwwvgffxxwwwffVuwvfVUVexwxgxvwfhxxfwwvwxwxxwffvvgwfwwwwxxxvwxvgvfvffwffwwwxxwwvvgwfwwxwwfwvwwvwxwwwwwgwwvwwvgvWfeewwgwgwvhwvvfvfwVvwggfhwwgvwfwgwfvfvwffwffwuwggWwVgvgfgvvgwvfeFUEdfVfvufwgwwwfvvVwvgffhfweVVvwvvgTUDfVfgxxxxxxwwxwwwxwxxwwwxxwwxxwwwxwfvwwwxxwxwxxxwgvwwwgvxxvgwwwxxwwwwwxxwwwwgfvwwVefgfwgvwxwhwvwwwVevgfwwxwfgfffwwwxgvwgwxxxwwxwwwwwwwxxwgffwwwwwwwfwwwwwwEEfffgwwgweVUeVwwfwwvhwvwwwfwwvVfUUfeffvWTtwxhwvxwwxwwwvxwwwwwwwwwxxwwxwwwwxwfgvwwvwvvfvwwwxwwwxwwgvwwwfvwwvgwwfvwvwgwxxwwgwwwxwwwvffvgwwuvwwxwwwwwwwgwgvwvvWwwvvvuvwfxwgwwvwwgguvggwwwxxgwwvwwwgwvfvwffwuvgwwwwfggfufwVfeUeWuwffeUefuwvwfwggxvxwwggfvgffVVUgggvfVVUvWvVwxxwwwwxwwwxwwwwxwwwwwxwwwwwwwxxgvfgwwffvgwwxwwxwwxggfffwgwwffgvwwfwwxwwwwwwxxxfwwwvwwwvfwfgvwgvwxwxwwwgggfwwfgfwgfffvwwwwvffwwwfwwvxxxwwxwgfwgwgvwwwwgfgVgvvwgfuwgVgUVUgVuffvwfVfewgwgfvwuwgwwvgfweUeweffUvwWeUvffuxwwwwxxxwxwwwwxwwxgxwwwxwggfwwvwgwwgvxwwwxwwwgvwfvxwwgvwxwwwxxwfxwxvwwwwwxgfVxWfeegvwwwwwvvggVuffugvwvVffVfuxwwfwwvwgwwwxwwwgvffxxwwvxvvvvxxwwwwvvWUcfEdwxhgVWffuxwffffwwwvfxwwfwggfeDU5gvgxgffxxwwwwwwxgwwggxwwwwxvxwwwgwwwxwgeggvwxwxxfvvgwxwgvwhwwfwxwwWVwwwwvwwwwggfxvfhxwwwegggxgvwwwfwvfwwwwggfwvwxwvVVwgwwwwgwxwgfggVxxvwxgvvfwuxgggfggfggfwfwgvwwgUfffuwwgvggfgvwggEEDwVwgwUvvfvgwwVTDtwvgwwwvevwffeuwWfuxxvwwvwwwgxgwgvwxvxgxwwvxwwgwxxwgwwvgffxvgwxgwwwfwgwwxvvgvwgwgfvwvxwxgxwxwwgwwfwwgvvwvwwWwfwffwxwwwvwvgvuwwgwvgxwwwwgfvwwwwwxgwwwxxwwwxgxwxwwgfvgvxwgwVfffUexwwwwwggVUvwgffuwWwwwfefWggffUeffwwwfWwwwwVfUUwfwVxwwxxwwxvvwwxwggxxxwxwwwwwxxgwwwwwgwwggwgfvgwxvwwwgxwwwgfwwwwwwggwwxwwxwwvvwwxwxxwgwwwxwvwwwwwvggwwvwwwfwgfwwwgwwwwgwwwwgwwwwwwwwggxwvxxwwwwwwxwwwxwvwwxwwwwwwwvvwvvwgvwwwwwwwgfwhfwgvwwvwvvwwgvvwwwwwvwwwgvwfvwgwwvwwvwwwxwfxwgxxwhfwgwewxxgvvxfwwwwWvwwwhwwfXvexvxWvvgwwwxvgvvwwhwvWvegwwwwvWvwhxVwwgfuwxwwxfwwvxwvgvuWwxwxhwvwghvgwvGfuvVvwwwfEfeWUSuwfhwgweVgxVwwgfdfEfvffeeWfwwfgveFfxwwfgwvffWdeWff6UwwfgwwgxegvegwVgwwgwdVfWvfgSUvwwgwxxxgxwwgwvxfwwwwxwwwwwvgwxxwwwwwwwfwfffxwwxwwwxwfwfwvfvvfvfgwgwxxwfvfffffgwxwvxvgwxxwxwwgvwwxvwvfvefvvfwUfxxwxgUvfffgdEUgvwwwwXgevVexwvffvffffeUfUVwwwwwwggfvffwwVfufgUVUuVfDUwwxffwwgwfwwwWevvWfVfwwWeVfVFTeuWwxxxwwwxwvwwfwwwvvwvgvgfvwwwxfvwvgvWvgxwxwxwwwwwvgvfvvwxvwvvWvwwvxwgvgfvgwvwxwwvwwhwwwwxwgwwwwwxwwwwhgvgwwgvwfwgWvgewwWeUvhfwgwwxvwwffwegeUvefvegveWvvvuwgwvwewvfewwhvvfwWeUvwwgvvgwwvfWvwwwwfwwegfvVVeuwwegffwegegvwwwwwxxwwwwwwwwwwgfwxfwwwwwwxwwwwggwwfffwxxxwvggwwvfgxwwggwwwwfwwwvxhgxwwgfwwgffxwwgwwwgwgxwwxwxxwwwfwwvfgwwvfgwggeewXVvwfggwwUDUeexwhgwffwwwwVfewwfVWfUffUxwfxwwwgefvgvwwfffwwfUfwfgTTxwwwhffvxxwwvvffggffvvwGEuwwffVVfwwwxwwwwgwwwvvggwwgfwwwwwwwwffgvvgfvwwgvwgfvwwwwwwgfvwhwvxfwwwwwvxwwwgvgwwwwfVewwgvvwwwfwwwwxwwwgvwwvwgwwwwxwvggvWvvwgwwwwfvfWefwgevvwwwfgwwvgwVevwgfeWeffvveegwggfwffffwffvwgfffwWfewwwgwgfvwffwvvfvvgwwvxwwUfgwwxvwUVvffvwwwwwwwwwxwwwwwwwxwwwxwwgvwwwwwwwwwwwwVfwwvwvgwxwwxwwwwfwUfefwwwwvwwwwgwfwwwwggfwfvwwwhvgffvfvwwggwwvvxwxwwwwwfvfvffvfvwxgfwwxwwgUUfwweefvwggvwxwwwwwgvUfeVfwwwwwvwwfwgffwwhggwwWVuefUUffvfwwfUfwwwwgvgvvvwxwwwXUVfefeeffwwwggwwxxxgxxxwwwxwgxxwwwggwwwwwwxvvvwvfwxwwgvwxvvvwwwwvwvUVVxwwwxwwwgfvvwwggvxwwwwvwvxgwwwvvwwwwxwwgwwgvfxwwvuwvffvxgwwxwwwuewwWgwvvfwwWVvwWeeuwwwgvwvVVfxgwxvvwgWeeuvvhgvxwweugvUVVwgxxwvwfgeevwwWgwwvwggwfvVggVWwufwwgfwwvwgggufvvvwvvxxxxwwxwwwuuxwwgwwwwuvwwwwfgwwhfvwvffwwwwwfxwwwwwwxwgvvgxggwgwvxwwwxwxgvwvgwwgvwxwxwvwwwwwwwfgwwgwvwwwxwwgwvwwwwwwgfwwwgevfweVgwgvwfgggwwwgvwvvgwfvfgwefwvwwfvVVgfWfeffwwxvgxfufVvvgwwwgfgvgvgWfgvvWfwwwwfgvfwwwwwgffgwwwwxxxwxwxxwwwwwwvxwfxwgxwwwwwvvxwfxwwxwwxggwwwwwwwwvgxwwwwgwwwwwgwgfvwxgvwvvwfxwwwwfwvfwwwxwwwwwwhwwwwwwwwxwwwwvvxxwvwwwggvwffwffwwggffvgffwvvfffhvwgfffhwvwwwgfvgfvgwfwfffwwwwgffvwwvggwgfgwfwfffwvvwfgwffwwggwwwffwwwfffvwggxwgwwwvfxxwxwhfwgfwwwwwwhwwfvgwvwwfvggffVegvxvwggevwwwwwWvwwfgfwWffVwwggxwwwVwxgfwWVwwfxwxwwwwgfxguxwvgwegvwvggxwWwwhveVwfUvwfwwvfUeEExwwwgVuvexwgwvFfwfvVVwVUeFvgvwfvVffUvvvwwvVVfffVVVgeTEwvggewwwvffeFUwxvwvgvvveWfefewwvxwwhwxwvxgwgwfvgfggfvewfgvvwvgfwxfefxgewwvfFfgvgvvxhxugwewvwwxxvxvgvwffVwxvwhwwfwwwvgwwWvgwvgwxfwxxhvwwWvewvgwwfVegwgUvffvfWwvgFevvfgwwVwxwvwVgfTvvvgwgwfVVfgweVfwfwwxgvgVVfdvgvgwggwwwFfeWfvgwvxwvVvwxvFeegvwwwwwxwwwwwxwwxxwwwwwxwffgvwwwwwxwwwwgfwwwWvvWwwwwxxwwwwwwgfvwvwwwxwwWwwxvwfvvvwwwwxwwvvfvwgffwvggvgwwgwvgwvwwvwgffxgwwgwhvxhwwwwwwfvvwfewwvVvvVfggvwwfgwvwwwfevffwwxwvVvwxffufvgefgegVuffvggWvvWwfggvwfggefgfgvwwggevwUffwwvwwwwewwwwxwgxwwgxxwwwhvwwgVvwwfwffwwwvwwgvgfwfwhgufwfwwvwgggwgwhgvwgwvwwvgwwwgwvwvwwwgwwwvwwwwwgwwwxfvwwghwwwxxwwwxwgvwwwvfewwvwfvwgfufwVvwfwvgggwfvghwuvwwwfwwvwwfgfwfugvfVgwfvwxwvvffguvwvxwfvwvgWggfggggggwwwvffgwxwwwggvfwwgvwwwwwxwwwwwwhwwgvgvwvwwwfvwwgfgwwgffgfgVugfwgwwffwwwfvgvgfvgvvgwWevWvwggwwvwfvvwwgwgwwwwwfwwfwvwwwxwwwwgwwgvgfgewwvvggwwwfwfwvgwwWvwwUfVgvVffeffwgvfwfvffVfwuwfvfewWggvwfgffgwgfUeWUffffvgVeffvWwffvWgwfgvwVUffffugevwvggvfwgUfwuvwvwwwgefwfwwwwxvwwwwwwwwggvwwxwwwwgvxgvwxwwwgwfwwwfwffwwwfvwfvwfvwgfwwwwwvwwwfwwgwwvwwvwvvWwuwfgxwvvgvfwgfgwvwwwvgfwvfgwvevVgwwwwwfgffvwwwwwfwvWwvewVVwwwwgfeugfvxwwfvgfgvvfefeuwgvfwgvvwgWeuwvwfVVVwfffgfvvxwwgvwvvgvwwgfffVwwwwgffwgggfffweegUwwvwgwwwxxvwwwvfvxgwxxvgwwvgfugwfwgxxWvwgwvfUwwghVuguvWgwgvvgwUfwfwhxwgwWevhvggvvwwwgvwgfvwwgwwgvgfgwwvwxwwgvwgwwgwwwgfgfvwwxxwgvgwxwggfwvwfUvwwggvgufffgffwffUfwfvwwwvgffgvwgggVfwgwwgvegVffuvwxwwgguwWwfgfvgwgwvgffvVvffffeffgvvwvvxvwuvxfwfwxwwxwxwxwwgwgffwffggwwwgwwffvffwwwvfvwwgvgxffVVxwvffwgwwwwgwwfxwwfwxwwvffwxgvwvwvwgfwwwwwwwwwwwwwfgwffffxwxxwwwwvxwwwffUwwwgVuwfwffhffVVfvfUfxgxxwggwwfwgvwfgfwffwffUVvwwwwwwgffeuxwwwwVVwwfUffffffwfgvfxwwgwwwwvgwgwwwwgfwhgwxwwxwgvxxvfvVevwgvgUvhvgvxwwfwffvvwgvvvwvgvvfvgwgfvgvxwggvwgwwxwwwwgUvxwwwwxgwwwfwxwwwxxwwwwwgUvwgvvwwwxxwxwfgffwwwgvwvwgwffvwffUvffvgvwvwgwwwwffwgwxfffVDuwgvvggvwgwwwwggxxwwhWDugwwvgUfffvwvwwwwwfxwwwfxwxxwhxwxxwxwvwxwfggvfgxwfwfhvfvwgwhwwwhvgwxwvvwvgwxwwwwxwwvwVwfgvfxxxwwxwwgxxfwfxghgvwhffvfVwvwxwwVwfgvevwxgvgvwggwVwwgfvVgvffvefwvxxxvgwgwwfwhvfvfgvefvfVwvxwwwxwgwfgffgfvgwwfgfwwwugfWfvgugwwwxwxggwwwwwwxgwwhwwfgvwxwwxfwwwwwwxgfggvffvgwwwxvwwwfvgwwgwfvwxwfgvwxwwWgxwgwvvvvVfvVgwwvgvwVwfvwwwwwwwwwwxwwvvfwfwwwggwgvgwwwwwvwwvgfvfffVfxwhfwvfvwwVgwVgfvvggfVfxwwwwwhfvwvwgvfvfgwfffVgfggvwwwxvwwvwwwwgvfvgegvuggfwgvfvgfvwwwwxwvxwgvwvwwwwvxwxxwxwvwwwxhxggfwgfewfwxwwhwvwvgffvwvwggfffvwfvwwwwwgfhfwwvfwxgwwfwwwfvwfUwwvwxwwwwwwgfffffgwwwvVfvvxgwWffwgffefUvwwwxwwwwwwgvfgfevgvwgfVfvuvvwxggvgfwvfeffUvvfgfgfVfvvxgwfgfwxxwwvwgggwfgfVffgfffwffWwxxwwwwvxwxwvwxwghwvwwwvwwwwgvwwwwwwwfwwfugggxxwxfwwwwwVewhwwwwxvWfvxwwwvwwxwVgwwwewwwwwwwwgwwvwuwgwwwwxxfwwwxgvgWwwuwgwVWgwvvwgfFfwwfdggvgwvwwxgwgxwVewgwwfxwwfVVwwffvggfvwvwwufuVFfguwgwVFVwwwwgUvvvwwwwgfeuxwgwwvgfefwwwvvWvvwwwwwwwwxwwwwgfvxwxwwgwxwggwwwwwgvxwwxxwwwwwgvwwwwwwxwwwwwwwwxwwwxwwwwwwwwwwxwwwwwwwwwwxwwwwwwwwwwwwwwwxwxwwwwwffwwwvfgvvwwwxwwwwwwwgfgwgvwwggvvwwwwwwvvwwffwfwwffffwvfgwgvggvvwwwwffwfwwwxxwwwwwfgwfgwwwwxvvwwwwwwxwwwwwwwwfwxwxwwhwgfwwwffwffwwwwwxhffwxwgvwgwxxwxwxwwgvvfwwwxxwxwfgvwwvfvwvgvwwxwwwwwggvgwwwwwgvwwwgwvffwgwgvxgwhwwwgfUfwvfvwwwwgfwvwwwggvffffwgwwhwfgwgffvxfwwgVeVUwgwgvwgwwwwwvwgfvwwwwwxxwXUuwvggvgwwwvwgwgxwvwwwgwwxwwxwfgwvfvhxwxwvwwWvwuwwgwxwvwgWfwfvwfwxwwwwwwwwfwwgvhwwvwvfeguxwgwwuxwxwfvvfwwvwwxgwwxwwgvgWvxwwwwwxwwwvwvggwgexwwwwffeVwfvxwwewffwxvvffvgvwwgeVeguwgwwvgeVVUwxxgwwvffwvvvfeguwfgWvwvxgwVVUvfwwxgvgfvVwfgvfvVvgvwwwxxwwxwxwwwxffewwwwxfggvVfwhhvfwXgvwwwwwwwwvwfwwxwwwwxgvvWwxwxxwwwwwwvwxffxwwgwxwwxxwwwwxxwwgUvwwwwxwwgwwxxgufwwwXWfwwwgwwgwffwfwwuwffwwgguvWwwgwxwwwUEuwwwwwwwwwxgfggwwwwwxgUvwxXTewuwwwwwwwxvwwxvvwwwwwwvwxwxwxxfwwwwwefvxfvwwwwwwVvvwgwgWgvwhVwwvwwwwxxwgwxwwwxfvvwwxvevwvfwxwwhgvhfwvwggfgwwvwwwwgvfvwgvwgwwhfwwxfwwvwxhgwwhgvwwgfvvvwgwxwwfwwwwhUvwvffwwwwevwuffwwffwgfvfWUuwvvfwwvvvxwwvUeggfwvxwwgwxffhwWfwwvgwxvgwwxxxxwwwwvgwxxwwxxwwxxwwwgwvgwwwwxwxxwwwwwwwvgwwwxxwwwwwwggwxwwwgvwgwxwwgwfwgwwgggwgwffwxwxwwxwwvwggwwwwwwxwwwwwxxwggwwxwwwwwvwwfwwwgvggvwvggwfgfffxxwwwxwgwfggxwwwwvgfvvvvvffvxxvxwvgxxggwwgwvxxwwwwwvxvxxgwvvgfgvGVdwfwgwvgwhgwwgxvgfgwvgwwwwwwvwwgwgewwhvvwwgwwgvgegvgffxvxgwwwdEVxvwwhwvwwGfeuwgwvwwwwfvgeweWVduxwwgvwwwxxfwvhwgugwvgvvgvwggwVvVveEfgfwvhwvge'4BcwvgvggvgwgffffgwfwwdEVwxwwdUVfgvgxwgwxwwwxwwxwxxxxwwvwwwfgvgwxxwwwwwwwwxxxwxwfwwxxxgwwwxwwwhwvxgdvwwUeeVewxxwwwwfgvgvwwgfggvvwvxwwwwwgwvgwxwvxwwwwwwwwwwwxwvgwwxwwwwwhfgwwwgwEeeVfgvwgveVeTVhvwwwwxhwwwwwvwwvWfeFfvwfwgeuwwwxwgfwwgvwgwwgwwvfgwfwwvwwwxwwwgweVeVUfeWefvwfwwwgwwgfwugvfwwwvWwwgwgwxgwwwwwwgwwwvvwwuvwfvgVfgfeefgvwwvwwugwwgwwwffgfgvvvfvVfffvfffdgfvggefuwghwfwgfgwWwfwvvvgwuvfvvgwWfVgfveeeVffEeVgeTfVgTeeUUFUuVvffWvwwwggfgwufgffVefWvefffgvfefxwwwxwwwwwwwwwwxwwvxwxwwxxwwwgffwfffwfffxwwxwwwwgwfvvgwwwvwwvwwvxggwwxwvwwwwwgwgfggffffffgffgfvwwwwwwwwvfwwvffffggwwfwvxwwxefgwfefffgwwwwxwxwxwwfvgWwwwwwwffwugggwwwgggvvWfUVffUVVUfffUeUefgfgvfffwfvwwgfgfgfvfegffgvwffwwgwwxwwxwxwwfxwgvwwwwwwxwwxxwwwwwwfwffwvvwWVexgwwwwwwvvvfffvwwxwwwwwxwwwwfwxwgvwwwvvwffxvvwgffvxwwwfwwwwxwwwWVeugvwwWETuwwxvvwffhvwwWVeggwwwwxhvgggffxwwwwwwwwxgfvwwwffffgfff6#2cvgffVVeefvwwwweUVwwwwwwwwwwweUVfffffwwwwxwwxxxwxgvwwxvxwfwwwvwwwwwxxxxxwVevwvvwvfffffxwwwwhvwwwwggvwfwwwxwggvgwwwwvwwwvwwvwwwvffwwgvfvfeVVfxgwwwxgvwvxwvgggwwvgggWwvfwffwwfwgveeUVVwxfggwvwwwwwwwwwggggwvwgffffWUVeeuffvfVVffufVfUUUeUgwffuuwvfwvgfefwvwwwvwfvggvfffgfgvxwxvwxwxvwxwxxwwwgwwgwwgvgvxwwwwwwwwxxwwxwwwwwvwwwwwxgwxxxwgwvUfwwgVuwgffxxwwxwvvwxxwwwwxgwvwxgwvwgwwvwwwwgvgvxwxwwwwwxwwwwwwwwwwgwwgwvwUUvgfffwgwwwwvgwfffvwwWUwwwwwwwwvfgvvwUfwwwwxwwwwvgfUvgwwxwwvgwxwwwxwgwwwwwwwwwwwwwxwwwwxxwfgvfwewfvwwegvwwvgvwwgwvwwwwvwwwvwwgggwwwfwwgvxwwxxwwxwgwwgUgwwgVvgwfWuwwewwfgvfwwvwvwwfVgfwggwwgvgvwwUwfwgUgfwwwwgvxvvwwvggwwwwwwwfwwwweFdWffvGdfeFUwwfgfvvTeeggwUfgfgUgvvWvgvvWuggwgVgfvvvfgvwUwfwwwxxwwxxwvvwxfwwxfwwwwwwwwwwgvfvfgvfvwxwwfwfwwggvfvwwwfgwvxxwwvvwwwvwVexhUfhvfwxffwwfgfwhgvwgvfvvgwvwfgvwwwfgvfvxwxxwfvwwwwxwhgwgvgvvgwvwfwVegvfgfwffhfvfgvffvfVfuwwwwfwfgvfgffhfeVwwfwfwhwwwfhfeVvgxwwwwwxwwwgwgwwwwwwwwxxwwwwxxwvwwvggvffvgfwwwwwwwwwxxwwwgwgwwxwwgwwwvwgwghvwxwxwwgwggwwgfvwvvffgfffwgfvvwffgvfvggvwvgfwgwwgvvwgffwwvwgvfvfggwwwfgfgwvxwxwwgwwvwggggwvgvgvvfVUUfVuggggvgveeefVfgvffwvfffgfvfgwvgfvwwffgfwwgwwgwfvwwwvwwwgxvwwgwwwwwwwwfwvvvfgwwgwwwwwgvfffFffvvvWfVvwugfwgwvguvwfgwfwggfwwfvwvwwffwgwgvwwwwwvwVfwgfwvevffUfwvwgwgfvgfwgvwwffwwwwvegfgfUgVUgVewgwVffVuwfwwwwwhwfwWwvfvwwgwwwuwVVTfgfWfeUdvevefeTfeefeeUUVUtgefvVVfwwvgwvfffgxfgWfgWffVwgffWfVwwxxwgggvvvwfwhvwxvwhwvxvwwwxwxvvffwvfwxvgefWfggvwwxfvgvwxwwvghvxwwxwggfggwwwvwwfwxvwgvvvfvgVvwvfefWfwgfwgwfvgvgwwvffWfvewhwfgfwwwfwfVwwgugWfwwwwwxgvwxwuwWgxwxxwwfwvvgUevgfUffuvgufeVVUwvwgwfVVfVffvVgfugVwgvgfufwwgvvfvvefwvffvxwvwwxwwxwwfwxwwwwwwwgwwwwxwwxwwxwwwxwwfvWuwgggvVuwvwwwwwwwwwfwwggvwfwwgvwgwwgwgwwwwwwwwwwwgggewwwwUvgwuevwvWwgefwfvxwwwwwvfwvfvwfgwgvgfvguggvwwvfuwwwwfwgvgwwvwvwwwwwwwvvwggvWVEvfVggVeEfDvwgvfvgVfFtwfgVugfWfvffwVwgfvuuwgWewgfggvwfgwUwgwwxxxvfgwvwwgwvwhwxwxxwgwwhxwhvvfvueVwwVwwgggwwwgwwvvWgWvwWwgwxwxwxvfwvvwghwgwwwxwfffgwfggffffgfvffwwwwxvwwffwwfgfxwwwvxwwwwuwgeVgfvwevgwWxvwvwgwfwwguwWwwwwgwxxxVUeefVegwvVVUffvgggUvggVVewwufWewvuwfgwwvvvwhvVuweguUvwwfgwwxgwwgwgewvxwwwwfvwwxvwwwgwwwgewgfwwwVWVduxfwgvwewggxwgwxvwwxwwwfvgvgwwgggwwwwvvwgewgvwgwgfffxgwwvwweVFgwwwvvwWVdtxwgwwgfggxgwgVVdxvvwfgfwggxxxwwwvgwwvvxvvwwwfvgegeC#$wvgwwvvVfVduwvfgxvxweEFxvfffeUFvfxvwggxwwwwgfwfvgwwgwvwwwwfxvwwwfwwxgvwwxxVffgxwggfwvwggfvvevvgwvggfxwwfwgghwwwggvwywxwvxxhxxvfffwhffxwwwwwgfvwwvfwwxxxwwggvwxwwVffgxwggfgwhgwgfvfVgvgwvggfxwxwvwgghhxwvvvfffewfewggxwwwgegVvwxwwwxwwwxwwgfvwvwvwxwwwwxxwwfwwwxwwfwwgwxwwxwwwwwwvgwwxwxwxwxffwfgvfvwVgvefwwgfwfwvgwwxfwwwxwvvgwwfwxwwwwxwhfgfgwvwfwggwvvgUvxwVewgwwwwwvwwwwwwwfgvggfvfwgwgvwvgggvwvgxxfwwwwwwxwgUDUfeUUvVgeffVfwufffvfvfvfwfgffvvgwfffgvfggwxgvwhwfggwwwwgwwwxxwwgwwvwxgvwgwwxxwwxxwwxxwewwvxgvVeeVVxxwxewwxWwwgxgvwxwfWvwwwxvwwgxgvwgwwwuwwfwwuffUVUxgwwxvxwwwvgve5VxvgweEVvgwwfgwguVeeVVxxwxfwwwxwugwguxxgWfwxxgvwwgUfvewgvffeEVVegWfC4ffwxvxwvwXfeuxgwwvWeUewVfeugfvxxwwvwxwvwwwvwwwwwwwwwxwwxwgvwgvvffeUfUuwgvxwvgwvwwwwwwvvwgwwfwwwwfxwxxvwwgvvwwwgfvfwvffeffUwxxwwwvggwgwvgwfgvgwvwwegvvwgwwvvfVeffffwxwwwwxwwwgggvwvgvwwwvfwgwgffgfWffVffffvffUfUUfUUUUUegwwwgwvvwggffvfgfvwWewfvfgfVfvgfgwxwwwwgwwfwwgggwxggwxwwgxwhgxwwwvevgvWvfWvwxwwwxwxwwWwvWwgwwhwfwgggggvxwfgvvggxwwwvggeffvVffWfgwwwvguvvwfvfgfWffvwfwfgfwwwwvhvfggfVvfWfwwwwwxwggvgwghvfvwfwfgvvvwWvfvwvwwvgVUVfUVeVevVfeVfeffffvgvfwevgvgffwwewgefvegwfgevwvgwxxwgxxxxwxxwvwwwwxwwxwwxwwgwgwwvwwwwwxwxwwwwgxwwwwvvxwwwwxxwwxxwwwxwwxfdggUeeewwxwxgwwggvvvhwwwgwfvvxxwhwwwggvwvvwwwxxwxwxwxwwwwgvwxwwgwxwgvggwwwgEefeufvwwfeeUVtwvwgwwxxggwwwfwwwfVVfFwwgwweewwvgvxxwwwwxwxwggwxxwwwwwxgvfwffggvgwwfwvfwhgwgvwwwgwghxwxwwgvxwxwwwwvwwwwgwfgvvgfvgwvggwwwwwxwwxVewwhwVewgwwwwfvgvvfgwfWvfWfvwvgvwxwwgvwwwfwggvgwxVffeefffvfVETVfvWgUUvVgvfvvgffwfwvgfvvffwwwwwfvwvfwfvwgwfvxwxwvvwxwxwxxwxxwwxwxxwggwwxvvwwwwwwwxxwwwgfwwwwwxxwxwvgwxxwwhwxhXwwfffuwWUewvvgwwwvvgUfwvvwhwvxxxgwvwhgwwwwwwwwxxwwwwfvwwwwwxwxufgffwufWUevfffwgffvwwxfvwxwxwxwgfwxwfgfwwwxwwwxxwwvwvgwwwwwfwvwgvwwwwwxxwwxxwgwfwwgggfgfvgfwwfwvgwvwwwwgwgfwggwgvvgwwwwwwxwwwwvwwwwgfvggwfffvwffgfvggfwwvfvvvgwgfvwfgggwwgwvfwgwwvfffggxwwwwgwwwwwwwgxwwxwwwgwwwvvvffgeUffugvvvgggUUUfVggfffgggfwfvvfwwvfvvvwgfffvvvwwwwgfvxgwwwxwhgwfxxxwwxwxwwxxxxwxwhfwwgggvfgffwvwwwwwwwwxxwxvxfwwwgvhgwfwxxxxwxxwxggwwwwvgwfwvfwwwgwwffwwwwwhfwwwvxfgvfvvvwgfvwvvwxwwgvwwvwhgxwwwwgvhfffgvUefgwffffvffgUuwffwvvwgwwffwwwgvwwwwfwwwffwwwgfvwfwwwwwggwwwwwgwwxgwwxgwwwwxfvwufvxwfVvffwwwwxwwwwwwwgfwWvxwxxwwffvWwxwwwwwwwwwwwvffvgfvgfffffvwfgwwgfvwfggfwwffgwwwwwwfwggfvvfvwwwffffxwvxwxwwwwgfwggwxwwwwwggWUfwwWUffffwvfeeUfggwgfUeUfVwfffvfegfwwwwffwwggvffvffvgffgvxvwvxwwfvxwwfwwwWeVfevwwwxwxwwwwwxwwwwwWefffwxfwwwwwwwwwwgvgwvggggfwgwwxwwwwwwWfeffvxvggwwfvfeVeUwwwwwwgwgwggwffVeffgvfWTEETtwwwwwwwWfUVfvwwxvgwwwwwwwwwwgwfgwggfgfvwwxwwfgwgwxwwfffffffffVTEETxwwwwwwwwwvfvUVwwfgffffUVVgeUVUUvxvwwwggxvvwwgVVfxuUfxvfxxxwxwxwxhvvxwwVVwxeeugwwwvgxwggwvfvgfvvvvvvVVwwvgghvghvwfFwwvfewgvvwwwfgwwfffgwwuvWfVfWwfweguwgVedvv5ExgvwhvwfFwwfdefxwvghggWxxvuvfVvwgwvvggwgwwuvWfVvfgwwfwfgwVUcvfv5EhvWwWvgwWgwggefggfFvxwgduggfeedexxwwwvgwgwwvwwgwgwwxwxwxwwwwwwwwgwgxvwwwwwhwgwwhwwwwgxvwwgvwwwwgwgvwwgwfwwWgvfwguuvggVwwvwgwgwewugeuwWVUvfWfVfgffuvwgwwgwgvwvWgWwxwwwxwwwwwgwhwwwwwwwwvvwvwwwwxfvfwfvWfVvfVVUVVUfuwwgxvwvwxffvwwWggheUevgvfgvgvWgfgwwwwxgvwxwwhUvwwwwfVVwwwxwxwwwwwwgUwxwwfffwgvwwwwvgvwwwffwxwwwwwwffhxgfwwwwgVxwwwfffwfvffugvwwUeUffwwwwgffvgffgEUTwwvwfffEDwwwgVwwffeVxwfwwwgwwfwwwgfxxwwwwwffwvfxwggwfgvgwfgEUTwwwvwfUfEDxwwwgeWvwwgfgfUuwwgffffVUuwwgUeUewxvwgWevvwvVVfffvWfvvgxxxwwwvwxwwvfwvfWggfvfWgvwfgvwxwwffvefVVvwffgWwwwwwvWfvwvgfffWvfvWgvgwdevgFUuwWgwvfeefgvwdfffeegvgVeFUUvggwfwvwwvfFgffvgWgvwwggvwxwwgfuvfVFvvgvfggwvfggfdfgvgufVVUtwwfWWfUUVuwwwwgfffgfvdfgvvfvvwgvVfUedvvwgwUfeffwxxxwwwhwfgwxwfvvwwfwwvvxgwwxwwwwxwwwgwwxwfvgwwUgvvwwwwwwwwxhwwVwvvvwhwwvuugwggvwvwwwefvwwffwwgvgwgVeevgUVeeefUgwwgvwggWfgDVeUevVwwweddgfwwwwgfuwxvgvvgwwwwxwvwwwwwfgwvfwxxwvfvwxwffwxgvfgggfVUUeddggvvfUegfvWgvggwwvwxgWVwwgwvggWVVvevwxwwwvghgxwvwwgwvfgwwwgffvgeVfhwvwxxwxwwwxxvffwwvgfvwgeVvwwwfvwwgwvxfwwhffvvwwwgfffvvwgwwvffwwwgffwgeVfgffgffffvfffvffvffff5USffwxwvggfVS5uwwgfvvffwwfwfvwgeVvxwvvfvgwwwwwwxgffvwwvggffvfvffvffvf5USffvwxwwgfVS5uvggfwgwvVfegwfffVfeffvwVfexvfVfefffvgwwwgwgffxwwwwgfwfgvvfwwwxxwxvxwwwwgwgfwwvwfwfgvffwwwwgvgwwwwwggvwfwwgwvvffgwwgVghgvvwwvgfWvuvgfuvwwgVfggvwvvggUffveVfvwgggwfvUVVeevvwgggwwgvvfgvguvvwwxwwwwwwxwhxWwuvvwfgwvvuvgxuWgVgfvVffwgfwxvgUVUfevfvVwfwvuVggfwvwwgWfwvwuVgffxgwvgfgvvwvwwwwgwvvfwwggwvggffvxxxxxxwxfwwggwfvggvwgvwwfwwwwvwgfwwgwwwhvwvwwvxwwwggxwwwwgWwvgvfVwwfffVfvfevwgwvffegevgffVvwfffffWwevxwwxwgxwwffgxwwxwwwwwvwfggvwgxwwwwvwgfvwxfgfefhvvgfVVfwffffffvfvwgwffeewwwwwgvvWfwgvvfgeugfwwWfgfwvxxfwwgvwgdvxwwfwffFevxwwwxwwwgfdxwwwfwfvfeVfvwufwwxwxxwgvxfgfwWfggwggwgewgfwwgVUwwfvwwwgfwwfffwwgwvuffU5vxgwwwffwgffUfwfE5gegggwwvUVfgwwvvwfwgwwgfwgwgwffVVggwwvuweeExwwfgvwgffUgvUE5wfggwfwgvwWffFfewwgvxwgedwWefeedwwwvfhwvwggwhxfvgwwgwgwvvgxwghvwwvvxwwvfvwwgvwvgwgxwgfvgwfvvwvwwwxgxvvwvggwghwvwfgfhxvffwwgwvffwwffvwgffvwvgUeffUeegfxgwwgvVeUfwwvvwwwghxfvvvwwggwvfgfgwfgvwfvwxfxvvwfvxgwvwwgVUfwUVegfgwwgvVUVfwwwvwffwwffvfgfffvwvgwwxgwvwvwwvvffgxvxxwwwwgfwvwwvgwwWwwgfwxgxwwwvfvwwugwwWwvgvhwwwgvwgwvwxgwxvxwwggvwvwxwwgfwfwvwvvxwggvfvwwvvvfvgggfvvvgVgvwgdugfggfVfvfegfgwvfVdvgwvvwwwwwwggvgvhxwxfwwggwwxxggwvxwvgwwguwxgVgvwgdewgggfffvWegffgvfVdfgvffvfgfwfvwgwVwwvfwfvgfvwfwfvwvvgvwwwvwfuvgfwgvwwfvwfuwwvwwwwggwxwwxvgvwWfxfwwwevgvwwwxhgwvwwwwuwewwwwwfwvvgfvwwfwgfggvwfgffvfVvggwfuwwwgfgUUfufgVfUwfwwgfvvuffgWvgewwfwgfwwwgwfvwwwwwwwgwvwgvvfgfxwwwfwgvwVgUefegwVVewevvvwvvvffevgfwvfgvgWfgfgvwwwvfVwggWwVfwfwgvgVwgwgwwwxxefVVwwwwffvgggfwwvwwxxwwwwwwwwwwwwwwvvwwwffvwvVwwVUuwwwxgfwFFvwvwwwwwwvggfeVVwwwwffvwwwgwwfvfeegffVVffgwufUUvwgffvffUUffvwgffvgfwwvwwwwvvfvvwwffwwvfwwVUugvwwWwwFFwvwwwxwwwfggfffvwWUeggfffffwwvUUfvfvwgwwWUeddwfVUuvggggvwgddwfvwWwwgggvwwwxwwvvfffgVefVfwwwvfgfvwwwwxxgwxwxxWwgfggVvwvvvgfvfeffwwwWfewwwgvWVfhfwxwfvwvgffwgVwfgwwwwegfVwffvUEgwVVegfvfUuwgVefvegeufUVFuwfwgWWfvvgwfUvfWxwvwvggvvfvvgwgWfewvvwvgVvggvwgwwwfVuwgfUgvfgfdfeVVuwvgfgVfufvfggWVedwgwvWwugwgWfvTwffVfwgvhwvwwwxwwgfegffvwgvwwFfvWfxwgwwvxwwwwvVvvgvgvffwfWvwggwfevfgvxwggvggwwwxwfVdvgvwfUgffwwfvwfWfvWfvVEuxwgedgvvgWfVevfVTUeUugvwwwwwFfufVgguwwvffwgvwvVVffWfgwgwffvvfvxwfWwwWhwwxwfVewwffUwffeeUUdwvxvwgvVVffFfwfvgvfffeeVeffwffeEefvfvwvvwvwgvFfwvwgwwvfgxwfggfwgwvvwgwwwvfvwwwggwvvxwgffgvhgvvwggwvffgfgvvvwwvvxgwvvfghgvggxwvvwfwgggvwwgfvffwwgfvwgfffwfvUVffVVUwgwwwvwgUVuwwvwfwgfvxwwvwggwvvvfwgwvwwwvwwxhwvvfxgwgwfveUffVeUgfvhwwvwfeUuwwvwvgfxwwgvfffffgwvffwwwwfgxggffwgwvvwhhgwwwgvvfwvvwwwwwgvwxghwwwwvghvffvwwwwwghwfvwgwvwwwfwgwwwxwwhvxwhwwwgwgwwwgfvwvvgwxwwwwfwfvgvvffwvwgwfUUgfffvvfwUUwvwgvffwwfxgvgwwvfwwwwgggxvvwggwwwvvwwwggxwwwvgxwvxwwhwfUUgfffvffwUUwvwgffwwvwwwxxffvvwwggffvgwwgwvwgvwgwfwwfvwwxwvvxwwgwwwwvgvfwwxxwxxwwwwwwwvvwgwxwhxwhwxwwvwwwwvwwwgwfvwfwwvvxhwwwfwgvvvgvvggwwffufgeffevxfwxwgffffwffvgffffffeffUfvvwwgxxfwgvvfffvwwxwwwvhvwwwwgvwggfwgvwvwgwfVffffwgvwvVffefVffVfvuwwgwwxwgwwwwvgffWfwggvgVufgfVefWfgxwxwwgffxvvwwvgUfWfvgvxwgwxwwxxwwgxwwwwwwugVggfvffwhxwfwvfwfggwgwwwvfgVfuvfuwwggffvwvwvvVfgVgvfvwvfwWUVffEUvffwgwwvgdvgfgUfVfeVfUffgveVefgwvwgvvfeVfVvffvhxwgvwwhffwwfwwwfVVfuvVuwfwgwwvgeuwgfeVVgvVVUVfgeeVTwgwvwuvggwfvxgWvFvvuvuWggfwggeEvwffuwwwxwvwxgwwWgxwwvvvgwwxwxhxxwgwxggwwufvgwvgwwwwwwufggvwwwwgwgwwwwxwvwxwgWwwvvfvgvwWgggwvuvVVUuxuvxhggvvfwvuvFT%tvvwgVd6efxwwwggwwvvuvgwwxwwwwwwvvuwgvwvwwgwfvwwwvvhxWgvwvxvvvVd6uvewfFT%dfvwwgwgwvwwfwfwwwgfwfeUUffgwvwwffwgxwwggwvwwwwfwwwVfvggwxwwwwwvwwwxwwwweffwwffvwwwxwxwwwwxgwgfwffwwwwwvgvxwwhgfvwwvVuxwwfwhfvvfwfUewvVUfVUgggwwhevxfvgfUUfUeffwgffFTfgwwwvgvxwgfwgvghwwxwwwwwwwVwWewwxxwwgfwgWVvvwwfvwwgwfVDfFTgUwgvfUUfgvvwfwwwwwwwfwwgVwgUffUuwvwfwwgvewxvwgvvwwwvggwwvwwggwwwwwwxxwwxvggwfwvvgfwvgxxwvgvwwvvgWwwwvvxgwwwgvfwwwvwWvgvwuggvwgggfgwvfvvwfffvvwwfggvffedffVFvfuwgfWWvffwwwvwWwwwfggwwfwxvvwvwwwvwgvwwgwvxhwgfvvwwfggwvfedfeVFvfugfggVvfgfgggvvffgwwvvfgwgfwvevfvwgwffxwgwvwxwwhwggwxwwvvfgggwwwwxxwwxwwvwwxwwwwfeewwggwwwwwwwwhwgfgwwvggxxwwwwwxgwggwwwffvggwwwvwfwvfvffWfVVwgfvVVvfvvvwgWEEVVwfuVVwwfwwvwwwwwvwvwwwgwwwhwwwxxwwffwvgggxwwwwwfgfvwgeuwwgVVffvffEEwwwwfvwwuggevwfwfwwwwwheewgwfVvwvwgwwwwwwwfvwwfwwgwwvwvwVuxwwxxwwxwwwwfwwwxwwwvggwwwwwwwwwwwwwwwwxwwgvvvwwvwwwwwxwwwwwgvgWVwwgwvugvgVvgvvwwfgfUUwwfVUuwfvfffVufuxwgwwxwvwfwgwxwwwwwgxwgwwxwvwgvwvgwvwgVVffUwwvwggfvwvvWeVUufxwhgwvfwwgfffUUgWxgwgwvfgfwwfgWgfvxwhggwwwvvwwvvggwwwgwhhwxvvxwhgwwwwvwwffggwwwwxgwwwvvxgwggwxwwggwwwwwvwhwgwwwwwgvfffwwwfvggfvgwgfggfwvwwffffVUuwggffvwwwwUUgfvxvvxxgvwgwwwggggwvvvwxwwwwwhxxgwwxwwgwwfwvwgwffffVUewggffvwwvUUgvvwvvgfffvwgghfvvgvwgwvwvwgwggwwwgwwwwwwwvvvxwwggwwwwvwwwwwwxwwhxwwwwxxgggwwwwgfvwvwvwwwxvgfvvwwxhwvwwwvvfwwwgggwwgeuwwgffWgVVvvfvfgggVTdwwVVwwwfeefvgfgvvwwggfvwgwgghwgwwwvvwwwvvvwxgwwwwfvwwwwxwgwgeeefgEEvwvwvfeuwggeuwgwgVwwWfgVVvwvvwwwwwfxxfVwwwffuwwwvvxgwwfwxwgvxwhvwwgwvfwxvwxwxxwwxfwvfwxwxwgwfwvffxwxxwfwwwgvxwwwwwvggwwgvxhvxwwfwweVewwwwvwxwwwfgvxwwxwwhwwwwwwwgwxwfffvwvUfxgvwwvwfwwVUexgxxhvfxwxwfffxwffvefeVVxhxvwwgVewwwwfffwwfVufffUVxwxwgwwwwwwgvgfvxwwfgwggeewgfffvfxgffhwvvwfgwwgvwhgfwhvggwwwwvvwwgwwfvwxwvvgwfvxwggwwgvxvhxwwvgwfgwwwwgggvfgwwVUefgvvggwwwfvfvgwvwxwgffgvvggwvwxwgfgVUfwvwgwfgvgwWVfwggfwxvwfggwvwvgfvwgwwgfgvfgvwwvwwwxffwwvwwgvwwwwhvgVefgwwwwwwwwwwgwfggfwwvwwwvfvwxwwffwfffwwxxfwwggwxwxfvwgwvwwwwwwwwwwwwwwxwwxgvwwfwvwvxwxxxwwxwwwgvxvwxwxxwwxgfVfwwgvgvwUfeVfwgugfdvVwVwufvwfwwxvgwwgfVgegvgwvwwvwwwwwgfuwfwUfdVfxwwhvgwvgvwgwuwvfwvgwvwvwwwwwwhugwgggwUfeVffwugwufvgwxwhvgwfwxxwwwhuWwvgwfwvgwwgwwvgwggvgwgfvwgwfvgvwvgvvgwwwxwwwggwwwgwwwwgwvffxvwfgvfvvvwwwxxwgwfvvvxwvgwwwgwwfWeuvvwvfvuVWeguugwVVvUfgeevgvfvWVvgfvvfgwWUvwwvwhvgvffvvhwwfguUffVwwWeUeggwwwwwwwfVgffevvfwwvfvvgwggfwwwwefVWefvgeVffVeeuffggwfwvvVgvwgwwgxwvwvgVVewwxvwwwwvwwwwvfwhwffvwwgfvfwUwvfwwvffhfvgffffwwwxwvhvwVevffffvwfwgfvwwxfgffwwvffwwffvffgvffggffVeFfvUffgfvgffgfgfffwvwwffwwWugffwUffwvwUffgvtfgvwwgfG6SeffUffwvvfffffvwwwhffffffvfgwwwfvvwwgUfgfffvvwg3UfgtfgUfffvvwfwgffffwwhvwwxggvgffffvggwwhvgfgvwwvggvffwxwwggxwwgvfwgvwxwwxwwwwwwwvwwwgvfffxwwwwwgvfggxwxxwwwvxugfvxwwfeUwwgfvffgwfguefgvvwgffwgvwwwwvwwfeffVeUuwggfwgvwvgwvwgfUwwwfvVfwgfwwvwwwgfffffvwwwwggwwwgvxxwwvvwfvfffVeewwWggfvfvwgwwfffxwwwwgwwvffgffVfwvWvggvfgwgWvhwfwwwwwweggvgwvgvgwfwvwvgvwvwvwgvwvvwwfgegvwxgwwghvgwxwwwgwwwwWwwvgvgFeveggfvwwfefffwfdvwfgFfVeugwwgvwwgEfvfvwwwwwgwfdggvWgwwweVgwffvWvffTfegvwvwWgwgwwfvffgwuwwwVfgvggVvwwgfFffvgvwvgWvfwdffWfeewwwhfgvvvfwwhdVfwvfgvwxwvgwgtffwgwvwwhvvwwwwwwwxxhwwwwwgfxwwwxwwwwwwwggxxgwvwwwxwwxwxwwhxwwxhwwwwxwwxggfvwvgwgfeewgVevUffwgvfvgffvgwwfvwgfvfwwwwxwwwfwgvwxwwwwfgwwxgeuVVevhvwwvwvvwhvvwgfgvffgwgvwfwwwwVVwxfUfwwwggwgvgffvwwwwxfwwxvvvggvwwvfwgvwvwvwwvvwgwwwwwwwwwwwwwwwwwwwwwwwwwwfwwxwwgvwwwwwgvwxwwwwwwwwwfwxwgvwwwxffwwwwwwxwvvfgggvfVefeffwwgwfWugwwwfwwvwvfevgffvgwwgfvwwvwwvwfwwxgwggvwgfvUfUfufwwffwwgxwwxUffwvwfwfwwxxvfggvgvgxwxffwvwgwvgwvxvwvgvgvwgvwwwgwxwhwgfvwwwxwwwwwwwwhwuwxwfwgwwgvxvxwvxwhvwgggwwvwvwffwxwewvwgvwhvwxwwgwxvhvxvxvwxwwwwwfvvFfwwwfwvggTwgvgvgUvfgvfwxwwevgwvgwwwxwwwvhevwfgwwvEfwhwwfwwWetfhuwggWgvwvwgwxvewvgwfvwevwwwfwEfgwfgvvxwvwwgeTfwvgVwwwwwfvwgvwwwwwxgVvwwxfgwvwwxwwwWwvffgfvwffVffvvgwwwfwwvwwvwgwggwwgffvwuwVfVUvwvxfggfgUewfwWwgwxWfvxvvgvfgvvVfweegWeuVfVgvgvxwvghfgVffvwwwffvvgeWgevffgwvgvVffgvwhvwxfgevguVDTUVvgvwfvgfwefwgxUVggvgvVUvgvvfgwxvVffefefvfwVfgwwgDTuVfvgvwxgfvugwvgevxvgwfwwfwwfwwgvfwfwwwvvwwvwfvxwfwgfwwwfwwwwwwwwwwwxwxwwwwwwwwfgxwwvgwfwwwwwwgwvwwxwwgxwwwvwwwwvgUefgfvffgvvffvfgvVVwVewvfUfgfggUfgfUfvvwwvwwgfvwwggwwfwvfwfgvffwwffVfUfgfwwwgfgwvwwwgfwgwwwwwfwwwgvvfwfffgewfvwWfevwggfVgefwvfwggVgewwwwWwuwwwwvvfwggvwwvwggxvwwgvvWWuwwwwgfvwwgvwWwwwwwgfvwvxwwwwwwgfvufvgveVwxwgffwwwfwwwwwWugWvgvxwxwuWwVVeuffvgfvffffgwvweUvwwWWuffwgwwffggfvvvwffwwefVfvgWvwgwvgvefvefvgvDDgwvwffgfffvwvgwwVewgvffwxwgwvxWffwwGDtvgWgvffwgweVwxwefVwwwfgUvvgwwxwvgwwUwwuwwvgwvwWwuwwwwgvfwwfvwggwgwgvvvwwvvgwvvwwwwggwwvvgwvfgvffgvuvvwwwwvvgfggwxwgfvvvwgwwvwVwggVfwfvgVfufggvffvwVWffgwgfgvvfvxggfevfgVgvwvgvwwwggvVWvvwVvvWuDEwffgfuvvwWggfvgfffwwugvvvvwgwwvwgwwgwwWGTdfgfguefgfuwwwWwvvggwwwvxgfggwwugfwvwwwgfgwwewvwwwgggwvfwgwwwgwvwwwwwwvwgwwxvgwwwvwfwvvwxwwwwwvwvggvvvwxwwwwgwwwwwwxhgwgwvxvwxvxWffvfvvVveggfgvwwwvwwWgvwfwgwgwfffvvvwwwwgVefwwgwggvwvwvwefwVfffgfwwwwfUfvfwwwwgWfgfwwvhwwwwxxxeffgvwfgwwhVevvvwwgvwwwwwxvfffvwwwwwgxgxwxvvwwwwvwwwwwxxwgwVuWwewwgvwwwwgfwvUgwwfuwwwwgwgvvgvvggvgwXfvwWgWwwwwwvxvwwfwwwwwwgwxwwgvwfwwWwwffgfDwgxwwwwffwVfgvwvwwwwfvgfwgUgvfEdwwwxwwvwwvfvwgvwfveTwwwwwvwfgfvwWvwwwUgffxwxwwwwwwwvwwggwfwfvgegvUFewwwwwgwwgwgvwwwwvwvxwgWfwfWgVgVeeVwwwwxwgvwxvwvwwhuugwwWvufwxffwwxwuvVgfvvwwvgfggwwxvVguvgVgwvwwugwefwvgwwgwwwwvwxvvuww6feVgwgWUwvvvwVffgxhfvxwvwwVevfFgfvWgxxwvufUwwfw7FefwwgUUwwfvwtewdeeffggwgVwwvffwwvwwwvfwVStwGgfvwgwwwgfuVUwvfdvwXwvgeevWVwvwghfxhwfvwwvvvvgfwfwggwfgwvwwfwxwgvvwfwwggwwxwvwhwvfwvgwwfwwgwwwvvgwwggvwvwxvwwwwfwwwwhxgfvfFWfgfWfvwwfwwwgfgfvgvvvwwgwfXVdVgfUfwvvvfwfgvfwvwwvhwwwHVfffgfwwwvvwwgefvgvVVwxwwwwuvwwwwxwxwgXUdfvfVfvgwvfwggvfgwvwwwwwwggvVfwwwfgfwgwwwwxgvwhwwwwwwwhxgwwffgwfwwwwwwWvfgvwgWfxwwvwxwfwwfwwwxguvwgwffvxxwwwwxxgwwhwgwxwwgwwxwfWvwwwffggvVUwVfwvuwgvfgwVffWvwgvwwefwuggvVffWfgvghvUVevggwvgffgfvVevVfwwwwfwvxvvfvwfwgfwfwvVfwgwgxewgvggVffgfVvfgveVfwvwwxvwvvwvwwgvewvvfwwgvevwgvefgWfvwwvwgexgwwwfwegwwwgvvwxwwwwwwvwvvwwwwwwgwvvwvggVvxwwxxxxwwvwwxwwvggwWvwwVdvgfvwgwvfvVfvfvwWwUffTVefggwwwwgwgvwwwgUvvvwwgTfvfgwwwvwggwwVwffffVVFvxxwwgwvwvwfwfwwggfvvgwvguvwvxgwfwvguwfwVWffffvFUVffvwwwxwwwggwwwwwfwxWwWwuwwvwxUgTwhwwwxwgwxggwxwxwwwwghxxwwxwvwwwxwxvwwwwwwxwxwhwhfvxwxgVgwwwwhfvwfvfwwgwwvggfggwVwvwwwwwvwwwvhfwfvvwwgwgvxwxwgfwvvgVvfvugvwwxwwwwxhfvgwgVvxvwwxggwwwwwXfwVwvxfvvwwvwxwvwvwvxwghhgxwvwwvgwwxWwfwwvwfwwvfvwwwwwxwvwwfvvwxxwwwwwwwwxxwwfwwwfvwgvwwxwxwwwwgwwwxxwxgwwgvgVuwwwgVexwwgffeewgfggfgffeefUvwfwxxwwwwwwgfvgvwgvwfffvgfgwwgVUwwvVfewfwwwggwfwfvwfvwwwvfgfvwwvvvgvfgfvffUffUwvgffeuwwxwggwgvwvwgwggvwggggfwwwggwwgwwfgwwwgwwvwgwwggggwxwvwwgxxvvgwwwwwwwwwvvgwwwxwggwwwxwwggwgwxwgwxwxgUfgwvvWfvWffgffgwgvwWgggVgfwwwfwwfuwvwwwhUffwfwwVVgwvwwwwWuvWVgvgvxwggxgvwwwxXFfgfvgffwwwfwwxgwwvwwwwxGVffvxUVvwvfwwxuuwvwgvggwwwxwgefwwwhwwwvwxvvwxxggvhvwwvffwxwwwwwwxwwwxhxxgfvhfvwwvvwwwxfvwwwwxwgxevvgxwGffvwhfvxwWWwwUVfuvgevwwwefwwgwwwwefgUVfevfwwwXVfvwwwxFUfwwXfuwwugvgxwevgfvwvgwvwxxwgwwxuvwwffwwwueFDUfefgwxxXVfvwwUfvgwxwvvwxVevgwfgvwwvvwwwwxwvgvwgvwwfwxfwgvhhwwvgwxwwwhwwgvwxwwwgwwggwgvwwwwwwwgUvwwwxwgvxxxwxxxvvwvggfwwfwWfffwgvgvfwwwgffwwwwwwgvvUwfwwwwwwwxwfvwgwwxwwxggfvgffgfVevgfwwwwwgfvvwwwgvwwwVewgwwhwwwwwwvfgUvwvvwwwwwxxVfwgvwhvwwwwwfwwgfwvvgwuvvwwwwwxwwwfwwxvvvvggvvwggwvxxvwwvwwwwuwgwWhxvvgfwxxgwwgwvwwfwwwxwwgwxwvvxvxvwwxwwwhgevfWfwgggvuffvwwwffgwwwevgfwwwgfvWWvUfwwwfvwfwwgfvwwxwwwxVwwgfwvvWevwvwvvgfwfgwxvwguvwwhUvwwwvwwfvWgwUfwwwfvwwgwhUvwvgggwwXgwVgxUfwxwvvvxfvwwwwwwwxgfwwwxgwxwgwgwwxwwwwxwwwxwwwhwwwwwvwvxggxwwwwxwgwhgfwxwxwxxwgxwwxxwxxfvwfvfvvffwwgfwwwfvvfwfvgwfgwgvvfgwvfvvwgwgwgfwwwwwxwwvwfvfvfvvfggfvffgfgwwwfvxwwwxggwwwwwwwwvxxggfvvgfvwwgwxfgwwvwwwwwwwwwwgvggfvwxxwwwwwvwwggwwwwwwxvwwfxhvewWwwgwggwuvxwwxwxxxwxwwwwgwgfgfWffvxwxwuwvxwwwxwxxwvwvwgwfgfewggwfwfhwuwfFfwgwVDeeWeTvxwxgfwvVghfwhwvgfgfefvvWfvwfwwfwfffegfewxwxwvgwwwxvwvvhwwwvgwgvwfvfwefuwuvvggeWeGeUVffFTwxgxggwwfwvfxwefgvfgvvgwfwfgwfgvwwwwwvVggwwwvvfggwgwwwxxxwwwxgvwvhfwegugfxxxwhwfxwvxfgxhgwvwgvwwgeFfwwvwfvhgwvvvgwwfuggdfVfEfeVvxgxhvgwvwfggfvgvUfeVffgwvxwvwgvuwefewtfewxxwwhwwxffwwfgvwgfwwvwwgggvWfVvegVvVwugvUfdVfdfeegwwxxgxvhwwhwwhwgvVwgfvvwwgvfggwwwxwwvfvwwxgvwhvgvvwwwwxxxxwxwwgxwgwggwwxxgxxhgwwwvgvwwwwwwwwwgwfwwfwf5UgvWeFfEvxvhxgvwwvgUfvUvwgwggffefvxwxwgggvwgffwxwxxwwxwwxwwgwgvwgfwffvgvfeFVFvgggWffWSwwwwwvwwwwwgwwwwvVgfVfwwgwVefwwwvwgWfxwwgfwwvfwVVwwgwwxwwwwwwxwwwwfffwwUvggwwxwwwxwxwwgwfgwwwwwwggwwwfWgvvwgxfgwwgewxwvVvwVUUfvDeUVfvUvwggvguuggvUeVUfffffwEFfvwwwwwfVvwwfvggwwwwwwwwwwwxwgvfgxwwxxwwwwwwgfwwgfgvvgfeUeEFfffgggUUfufwwgfgvwwwvvgwwvgwvVeefgvwwvwhgfwxwwfgvwwwggwwwwwwwwwwwwxxxwwwwffgwvvfggwwwwwwwwwgvgwwwwwwwwwwwxuWeuwwvfgwwgvvwwgwUfeVfWefvfVVvwvwwwwwvwwgeuwgVefvfwwwgfwvwwfwfeWfwfvVVfvwwwwwxwwwwgvfwgxwwwwxxvxguvfwwwufvVeefVVUfvVVffffgvvwwwwvvwwxwwwwwwwfwvgvwvvwwwwwfwwgxxwwwfffgfgVevfwfwwwxwwwxwwwxwwxxwwvgUevUfUfvwgxfwgvwgxwwxwwgwvwgfwwwwwwxVfUfgvvgvwvgwwvwwfgffVefVfUfuefwDUgvgvgfgfUfUfegwUfvwvvvwvwgvVVUuUVfwvfvvwwgvvgxvxfgfwvwwwwwwwwwgUfgvgvwfgW3DefeefUfuefvfwwvgvgggvwgvggwwwvghfgwgfwgwwwwwxwwwwwxwwwgfwgwwwwvvwgvwwxxxxwfwggxwwwggfwwxwwwwxxwwgxwvxwwwgwgfvxwvwwwggfwfDUggfgeuwWUUgwwfvfwVVvxwwwggfwwwgvvgwgWvwwggwwwwVfUwxwxwxwwwwxwwwwwwwwgfvfffgUUUxwwwggfvwffffWVWDuwfwffvwgwvffvffxxwwwwvwgfwwwffwvvwwfwvvfwwgvwgvwfwwwwwgwfwvhgwwwgwvwvgvfwvwvgfwvwwvgxwwgvgwhxgwfwxwwwwvwffffgfwxfwgfvwvvwwffffwwgffwvvwwwgwfvvggwvwfwwgfvfgvwwwfwwgvvgfffwfwvffxwwgwgwwfwvwvwxfwfwwgwxvwwVefvgvgwUfwxwwwffffffwwvwWefwgwwgvgvwwvwwwgvgwwgxxwvwgwwwwwxvgfvwfvwfgwwwwgvwxxwxxxgfwgfggvgvfwwwwwwwwwwvwwwxxxhwwxxvffvxfwxUfxgvwxwXgfffVVfffffVefVevwUfwwwfvgvvffgvwwhfvwwggfwgffgvWevvgwwwwwxxwgvwxwxwxwwhVVvwwUffwVefffVeVevwggffwvwwwffwwwwwwvwwwffwwgfvwwwwwwxwwwwhwwvwgwwvwvxwwWwwgwwhwwwgwwvfvwwuwhwWvvgwxwwxwwwwwwxxgwwgwxwwwwgwwvgVewvvwwwwgfwgvgfUvwfwVeWffVfwWvvwgdvwvwxgwwWvgvwhwfFewgwfvwfwgvffeVfxxwwwwwwwxwwwwwwwwwwgwwxwVwvfgdVfevgwWwvWeWffWgeFevVwwvwwwwvwwwwvfwwwvwwwwvwgwfwxvwwwwwwwwffvwgwhwwwwvfvfvwwxxwwwxvxgffwgwfffvvvgwwhxwgwwwvvgwwvgggwgfvffgffwgwwfwvwwfwfUeffvWeevffffwvgfffgVVUgfvwvfvwVeUfvfwwffgfgggvfvvvwgvgwwwfxwfwwvwvvxfxvwwvwxgwfwfffffgUVevfwwgwwwffeUegggfvgwggwwvgwfffwwvwgggwhvwwwxwwvwggxvxwwwggfvwvwwewfwhwvgwwwxwwxwwxfffwwugfvVvgwvwgwxwwhfwwhwxghxxgfffwwwhwewfvgwhfffVffwUfffuVfvFffvwugwvwFfggwWwwgvxwhwffgvuffvWvwgvwxwxwwvxwxwgwwhwwxwxxfffffgdfwffVefwggvFfeVfvgvvggfwvwwfgfgwvggxvvwwfgwhwgxwxgwwvffvggvxxvwwggwvwxxwwxxwxxhwgvwvfxfwgwvwvwwwwwwxwwgwfwwwwwgvfeuxwwwgvxwwgwwwfgffvVVgvfeeffvgUvwwgffVVxfwwwwfwwwvvwgvwvgvfgffxwwfVffuwwwwwwwwwwxvvwfxxwwwwgfUvgfffeVVgfffVffwgfffgffgvwwffwffxwwwwvwgwwwwghwwgfwgxxwwwggvwhvfeVwwvfwvfggfwvgffgxwgwvggghhffvgvvffgwvwwvfgwvvvfwwgfvwwwhfvwwwwxeegwffggfgggvgvvxwVfeVgvWUffwvgwvgwufvfwwvgVfwvvgwfevgwvwwwxUfvfvvgffvwgfvwfvgvvgwhffgwwhwwwwwvweVfUevvgwgWVUfwvwvVVffvwvwgeevvfwgwfvwgwwwxwgffwewwxwwwwwxwwwvfvvwwggvwxwwwwwwwwxwwwwwxwwxhwwwgfvwwhvfwwwvvwwwwxwwwvwwwxwxxxhuvvggwwggwwwxgwxWggwUVUvvgfvggwfffxgwwwvfwevwfwwvxwxwfwggwwVffwwgvvxwwvwwwwxxwvvwwxwwxxwheUvwxffvwweUfUewfvwwwwwggwwgwwVgvgwwwwwwxwVvhwgvwwwwwxxwggwvvgvgwfwwfgwggwwwvwwgvwvwxwfgxgwhxgffvwwggfgvwwvwgvvwvfwwfwwwwvxwgxwwxvxfgVefvwwvgxwvgwgwgfUvwwgfvwwwgvvfvffvwwvfwgvghhwwggxgwwwffUvvgwgvgvwgwgwvvwwgwwwwgvgxgxgwwxggwwvfwfffffffvgvwwggxgfggfwgvwgwfwfwwvgfvwvwvfwwvfwwwvwwvwxvwwvggvfvfWwwwwwwwvwwwwvvvvwxxxwxwwxwxgfWfvgwvfwfwgwwwwwwwgwwwwwwxwwwxxwWgvvfWwwwwwvvwwwwWUVewwwefvwfwfWgeWVfUfwwwwvwwwwwwvvwwgwwWUfgvggvfwvvwwxwwggvwgwwwwwwwxwwwwwwwxGVdFVUEVffvvfvwfgfhUvwvfgfwwgfwgwxffwwwgfwwxgwxwwwhwwxxvxxwwwVVvgvvwwwxgfwwvwxwwwwxwwggfvfeufgwgvvvwwwwxwwwwwwxggwvxwgvwxewVVvvwvggxwffwwffeugfvVVgfufVfVVgvVTdggffwwwgfggwwwvwgwwufUuVUuwwvvvfggwgwwwwwwwxxffwwxxxwwwf44gffeegffVVwgefVwgvfgwwvwwwgvvvwfvgvwwwfgwwwvvwwgwgfgwwxwwwwfxwxgvwwwwvxxwwwwwwwfgwvxxwwgwvwxwwwwwwfxxwxwwwxwwwvvwgvwVewwWTTfUwwxwwwwwwwgffwfvwwwwgffVfuxgvxwwwwwvgffxxwxxxwwwwwwvwwwwwxwfvvgwwwgUfvfvfwffVfUUTxxxwxwwwwxwwwwwxwxxwfgfffwgwwweVwvwvvVfwwvwwuwfvgwvhvvwxxwxwhffwwvgfvFfvgwxxwwxvxxwwWwwwgwwwwvxgdEfxwwWWugffevvgffdfgfgEffvtffwWwgfgfwwfw5UwwuwwFfvgfvwwvwgwwgVvGUeDfuVvwwwvwxwXwwUwwxfgwxvgvwxggwfffdVgewFfwwvw$DvVftfffgwwwuwwwwfwwhwfwhevwwWwwwwxwfvwvwxxwwwwwwwwxwxwwxwwwwxwwxxwwwwwwxfwvxwwwwwwwwxwxwxvxwffwwxwhwwwwxwwxwwwvffvwgfvwvwwxwwwxwwgfvwwwwwwwfwwwgwwwwhfwwwwwxwwwxwwxwwwwxxwwwwwxgvwhwvwgfvwfgfwwgfffwwwxxwxwhfvxwgwwxwxwxvhxxhwgfffwwwvfwguWvgWwghxwxxwxwwvfWeeggvWvwgwwxwwwwhgvffwgwwvxwwwgwxfWVevxvfwgvffgxvfUfeUFVeEefFfvgvwwwfwvXVeVvgWwVewfwwgwwvvfwfffgvWuggvxxwfhwwffxgwwvxxwgwwxWVeugfUvwfWffVegWvVdwfwVFfwgvwgUvvxgwwxvwgUvgvwgewwwgvvwwwwwwwgvvewgxwgwwwwgvwwwwwxxwwwwwwwwwwgwwwVWwfvgvfwgwwwwwvwwvwxvwghVtfvgxwgwwuwwfwhFfveUVuvgdvwvwvwwwffwhefgvfvggevxgvvhgfwEWwfwVfewwvwwwggxuwxevxvhwvwwgwgdfgwwUVwwwdfWdewfWeuwwWvWvgwwfghwwwwwxWfwhwgvvgfxwxxwxwwgwgwwwwwfxwwvwxwxwwwwwwxxwxwwwvvwwxwwwwxwwxwwwwxxxwwwwwwwxwWggfvwwwufvxwwwwwuewgVUuwwVevffgfgwwwxwwwweVfgevwxxwvwfwwwvwwufvwwgfwwwwwwwwwwwxwwwwvwwwwxxwwwwWfghvwwgwgUUfUfvgwwwfvewwwwgvvwwwwwxwxwxwwwwggfvwwxxwxwxgfUvwwwxwwwfgfvwgwwwwxwxxwxwwxwVegffwwgevwfwwgvgvwxwwxwxwwwwxwwfxWweUvgfwxgvffwfwwgfVegVefUfUVfevfUvwwVewhwwfgfvwvWDewvgwfvwgWUehwvgfWDewvvwhfvffwxwxxxfxfxvfgeUfgv4CuVgvggUfwvfUvwvgfefwvgvfuwxwgvvgwggvwwwvwwggwwxwgwvgxwxwggWwwwfgwvxggfwgfwwxwwwwxgvfwvvfgvggvwvwxwwwvxwwwxwwxgwwxwvwwfgWfwgvwwwwwgfwwfeUfgfVWfgfvVVwggvfgeuwvwggwwxwwVVwgfwvxwwwfvwvvfgggvwuwxwwwwwxwwwwwwxwwwwgxfVVvffVefUeVVffwwwfWvgewwvwwwffvvxwwfvwvvwwvwvvvwwwgxwgvvwvvwvwfvvwvwwvfwwgwwwwvwwvvxwwgxxwxxxvgwggwwwgvgwwwwxwxxxwwwwwxwgevfgwwwwgvwwgvvwwXTUeTEfeUfeewfWfefwfVffgvfUvvgvfgfuvfwgWwwgWvgffvvwgfvwwwwwwwxwxwwvwwxxxwwXeUFfVEfffeeeeevffWUfwfgvewxWgfVvwgvfwxwfwvwwffwhwwxwxwgwvxxxwgwwgwwxwxxxxwwvxgwxwwwwxwwfxwwwwwxvffxwwwwgwvxgvwwwwwwwvffgwxxxwxwwwvffxwxwwwwvvwxhxgwwwxvgwwwwwvwwwffxwxwwgwgfeUwwxwwwgffwwwwvffwggvfweeVUwwxwwwggfwwwwfgfwgvvUgvfVUxwwwggvvwxwgwwggeuwxwgwwggeuwggfeeVxwwwxvwwxgfgwwwhgfwgwwwwwffggwgvwwgxgfvwWgWwhwwgvvxvgvgvxwwggWfVvfvgvvhggwwwwwxguvwgvfwxwfwgvvggwwwfgxwvfwgvhwvwvWffvwwhvvvgvvggVeewVffvwvwVfvguwvgeuhwggfVUUevggvvxwwfgwxvgwgvxwgWfUVUvwwgvwgwwwwfwefegwwfgwweUewgwfffUVwvwxwxwhwxwxxwwvwvwwffgvwwwvwgwvwwvwxfgvvvwwxvgwwwwggvwvgxwxfvffwwwVVwvwgvvxxfgvwfxwuwwwwgxgxvfuxwxxhvgwgwgxgwvfvhwwvvwvggxwwgffggUgeeewwwwvggwgfwVVuffgggwvffffgfwxwvfwvvfwffvffVgvvueffUfwhugwfwwwxxggggvfugvgWfVVefwWwguvwwwwwwwwwwwwwXgvvWxwwwwwuwwwgvwwwwwwwwgwwfvwGfftxwwwwvwgwfggGfftgwwwWgvffvvgfvwwgwgfvwwvgVevwggwwgfvwwwwwwwwwxufgwvwwwwwgwgVefwwWevuvggffwWewGVeTggvwfwwwwwwWefFVetwgvgfVeffvgwwwwwxdfFffvwgvgfgFVetwwWevwwwwdfFwwwwwufgffffdUFxwUffUfffUfwwwvwggwwwwwwxggwvgvfwwwwwgwwvfwwvwgwffvggVVfvuhvwwwgwwwxxfveeefVgwwwwvvvgwxvgvxwggfVvgfwwwwwxfwgvwffwwwwwvgwwhwwwwwwwfwgfvUgvvvvvxwvxwWVeffWUVVeevvwvwgvwvggfWeeeeUvWwvgfvfgwwffgggvfggfUfUfVfefgvfewwgwwwgfffgfvgwwgggvvWUVUVefgvvfWWwvwvwfwwwvgwxwhvVVwwwgggwuVvvwwwvfgwgvwvgwvvhvfWwfvgVgwgwxwxwwvvfvuVVfvwgfVgwwevvggfvwwwfWwwfvfgffuwvfWhwvwgVggWvvwxwwuwwxwvffUUvwgggwgffeVffgveEwwuwfUfvWeuwwwgwwgfffeVEuwvgWfggvffWfuwwvgfvvgfdvfEVvwwggvffgevggfgefewxwwvwgwwgffUfeeEUwvvgwVfwwwwwwwwxwwxwwwvVgvwffvwwwvvwwffwwwgvvwwfgwwwefVwwwwwvwwwwxwwwvVgwvwgwefVeVwXwwwwvwwwwwfgfDfwuwwwwwwwvgwwwxwwgggvgFdvwwwfwvwvVgwwwffggfvugvwvuWeDVwwvvwgfvffwxwwwfDfvfwwweDVeVWvfgfVwUFduwwvgwwwwwefVgfvffwwwwgFdffvxWFdUfuwgguvwwgfVffUfefvwwwwwxxwwxxxwgwggwxvvwwhwwwwwvvwgwvgwhxwgWgvwwwwwvwvvfxwxwwwwvgWvhwxegwgfvwfgxwxwwwwggvvvgwwxgvwvgwwwggwwfuvwxwwwwwwgwwwwwfvfVwwhvugVfvgvvffvhfefgwvwgggwfWWvWggfvwwvfgwwfufhvxwvhwwgWVvgwfewfgxvvffgfeevvvVfwfvfwwwgwwvvVfWfvwfwwwwxxxwwvwfwwwvgfgwwwggvfgwwwvwwvhvWvwvegwvfvwffhvwwgwwgffvwvffvwewvvwwgwgwfwggdvwuvgwwfftwvwgwwwwwwgwgwwGfvwgvgwewwfwwwwwfdfxgweWdfwvuffgxVfdfVfVevegwWwffwgvfevfVgewwufwfgfFffvgffwgWwfwggvgfdfgvvfwFefwgffVvgWwgvgwwwgfEVvfwgvgVgwegvwwxwwwxwhxwwwfwwgewwwwWwvvgwVwgfgwwfwgfwwwgwhwvgfxfwxwfwwwfwxfwvvwgfvgwxxfwwwfxwgvwgwxvgxwwggxwgvwvxwvvwffvwhwwffwxwvUvvffUxfwffgvvffxvwggvweffevwVVfuwwgVVgvvVfwvwwvvvfffvvggvvWvxvgvWvfVeggveVwwwgfwwfgwgufWwhwwxwwwwxwwwxgxwxwwWwwvvwvwhgfwwwvwWevwwwfwfwWwuwwwgUvvwwwwgwwwwxWvvVVwwvwxwwggxfvggvgwwvvxwvwxwwgwwwwwwwwugfwwwwwwwwxgwvguwgvwxgVdfwwgffffVUtwVwfUVvvwvggwggwfufffVVguvwwwfwWdfvfvfggwgwgwvfffetgwvgxgewvwwvgTvwffffwwvvggVvwwwgfEewvwxwwwwxwwxwxxwwwwwghvvwffxwwwgfxwwfvwwwwwgwgfwwvWWewwwwxguUVwwwfvxfvwghvvxffffwhvvwfgwwgwwwWWeewfgwwhvvwwwwwxwwfgwwvvxvwWWeuwghgghvffvvffgffwwwwWWeuffvwwgfuUWwvwfvwfwWWeuxffffgfvfggwvvvgvvwWWuughgWWeeffggfuUVwwwwwuUVffwwuUVwwwfffgffffxwwxwxwgvhwwwwxgvxwfvwgvwvwgwwwwgwwxxwwwuwfdwwwffgdvwwgwvVwwwwwwfdggvwwxwffFwgvhgffuwwfwwgevgfwvfvwwgwwgwwgwwffvggffgfwwgvwgwwvwgwgWvwguvvufTvhwffVfdffggwvvegwggvfdfgfwfgwfffFvgfVfwwfffgVfVwVewguvfwwuVfuvgvggEffffwvvwfeVdwvVwvfwwvuwwvfewvguwwwwwwwwwwwxwwwxwgwwwvvwwwwgvwwwwwwxvwffgfgUvwwuWwgfvfUwgveVvfvvwgvgvwgvvwvwfhwfwgfvwwwvwxggfwvvgwwhvvwwxwwwvwggwwvffgvxwwwwwgwgwwwwfvfgvvfgUwweVfgfffUfgfeVffvwgfwffwfvggvwgvvVVwwgfewfvwwvgwfgfgwvgwwwVUwhfeUgfvvfwvfwfwwgvfwwwwwwwwggwwfwvwxwwwwwwwwwgwWvxwwggvvwwuvVxwggwvxvfwuvWwwwwwwggfwwwvvwgfggwgwxfWfwwvgxwvfgfwffgfvggggvwvffgvwwvwwwwwvfffvvefwhwgwgwwwwggvvvxgwvwvffvvvgfgvvvWgfeffwvfgfffgVfwvgVvwvwvwwvVVfeevvwwgfffgwgugwwfuwwwwxfeuvfwgvefggwvgvwvfggwwwwwwwVwvwgwfgxvwwgVVxgwwwwwffwggfggVhwuxwwgvvfewgVgwwwfvwfgfvvVfgwgUfUwwwwwuwwgggvwfffUgwVvggVxxfwfwvvfuggfwwwwwfwvgwvwggWgfgfVVwwwgwwwufggvfUgeEfgfwwvweefufVugffFVfEwgvwwvfvwgvgvggffugUufVffeeTwwvwwwvwvgfvgWvfvgfggfVewgffUfeeUExwxgwxwwwgwwffVwgwwwwwxhgwfvwwgVwwvwxvvuggfgvvwvfWfggvvuFffuwwwffxvwwwfggeTuvfvWvwwxxwwvgwvgxwuwgWfevxwwVVwwwgvgwfvxwwfWwwgwvvfgVUuvvffwggwxxwwggwewhwwxfVeUxwgfEwfwvwvggVUuvffWfWfxxwwwVVggTgvwvwvffVTdffeWwffwxwxwfgWvexwwwxWTtgwgWUUeFfgwgvwvwgwxxwwwvwvgwvwwwxwwwwwxwwwguwvwwxvfffwwfxvwwwgwwggffgfgwvvvvwfwffvgwgwwwwfuvfwfwvfXwwfvxwwwvfgWgxggwwwuwwwguggvwwuvvxwggvfwgggwvwvvwwggguvgxwgwxgfgfwggwfvgvwfvfeegfffvwuvffeuwwwvwwwgwWvWgvffWffggvugffvfgfvuwwvwfwxgggVVwfvggwwwwgfwwVggxvwgfxgvwuwxwgxgwwwwwxxxffwgwxgvvxwfwwxwgfwggxwwwwwwwWfffvxwxfgwvwxgfvgggwwxwfVffgxgfvxvvgwwwffwWewwwwvwvvfgwfvxwvxfwwwwxvfwvgvvvfwgfVefgwvvvfvgwfVUfVfxwwxfvwgwxwgfvgwfUwwweVUvgwgwwheuwfwwfVfwWvffggvUUUfgxxvwwwwwwXfUuwvfwvwgfUfvfffvgWeuwwxxxxxgxvwvwwwwgwvwwwwwgxwwwwxwwvUWewwwwgwwwvwxgwwWWuuxgfvuhwwwxwwwwvuWWewgwwwvwwwwwgwwgwwxwvxwwwgxvwwwhgWWueuvwwgwwgfefUWUuwwwxwuUWvvuwwhggfUWeugWfvugwwgWwfwwwWWuefugWVWeeuxxxxgwwwwwvuUVfWwwuUVwwvVguUUfWVgwwwwwxxxwxxwwwwgwwwwggwwwwvwwwgwwwwxgwfggwfwwwfxwwwwwwxfvWwwwwgwvwvvguwxxwWwwwwwgUvgvgvWwuvwvwxvvgvghwwvwwwwwwvwwxgwUfwwwVwwwvuefwxwvwgfTfffffUgTwgvvvwvwvgwgfFefgvffgwvfgTwhwWvvvvvgwWfgeUfvwwffgwVeefwwwvgegwwwvwwwggVvWdfvffggwvWVFvfvwwwwxwxxwwwwwfwvgfvwxgwfxfwwvgwxwwgfwwwwggvwwxxwwwwwwwvvvfuwwwwwwwvfvwvvxxgxwfwwugfuxwwwxgwvvwwwgwwwxwwwwwwgwwwgfwvwvgWvguxwwhfVwwfeffuwwxgfhwvwwwfvffuwwgwfgVeguwfvwwfwwfgfffffugvwgugVefvwgfwffwwwwgffwggfwgfffUfVwwfgVfVvwxxwwxwxfvxvfwxwwxwgggvwgwvvwwwwwwwwvwwvvffgfwwwggwwwfvhwggwwwwvffwwwwxxwfgwwwgwvvVVgwwwfwwwwgfwwfwwgfwvvvgwVVwwwwfgwwwwwwwgvvgffgfvwvfwwgwfwvxxgffggwwvVVvgvwwvxxgggvvfwvxgffffwwwVVgvvgwvwwwvvfvwgwvvwwgvgwxgfvgfwwwwggfwwwwwwwwwwwwgfgfwwewwgxvwvxwwgfgwwwfuvgwxwwVVfwwgeewgwvfvxwggwwvvVUevgvwfwwxfWwwvuvfwwwFfVggfvwwgwggggfvvfuvwVfvvvxxwwxxwuvVdufVgwwwxvgwxgXwwfVUfwVftwwvffvxwffwwffVTtuVvfvwxweWvwvvfxxVgwwwvvVUufVfeuvwfVGgwwxwEEwgvwhxwwvwwUUwggVVdvgvwwvxwgwgwggwxwxwwwwggxwxwvgfwwwfgvwwwffwwxffvwWgvwfwwwwwfwfwwgvgvwvwwwwWewhfwgfxwvggvggfvgwVVggggewwwwwgvfwwwwvwvWVffgVevwvwwxxwgwwgfwwwwgfeUwwgVUgVVfUwfffUfUfeVvgfvvwffgfwxvvfewggwvVVvfeVUegvwwgwvwVgffwvgwggfvwwffVUvfffUUuvvfwgfvwvwwvwVuwvwvwwwxxggfgvwwxxgvvgwwwfwxfwvfwxwgggwwwvgeuwwgvvwwVVwxwwvwvvvhxfvwwgxxwvvwggwgwgvffvxwwgggfwwwwwwwxxwwvvwwggwwvgvvwwghfvwwwwfgwwwwfvffvwfgwvfffffwwwvgvvwwheuvgwvgvwgvwgggffwwvwgvgxwgeuwggwfwfgggwwvffwwwvwfwxggggvwwwwvgfwwwwxwwwwwwwwwwwwwwwwvvhwfvwwvgwwgfwwvvwwgvvwgwvgfwgwwwfvwwwwwggvffwwwwwgvgwwwggfvvgfvwwUfWwuwgvwwwwwwwwxvwwffwfvvggwwgeVveVvggwwwvvxgvfgvvfvwxUVVvewgfwwgvvvgwwwVVfvefwgwvggfwwgffwgffwgfgfeVfeVfggvvfvvgwVeeVVuwwwwwfgvwgvvggvgfvfwwwwwwvfxwvxwvxwwhxwwwxwwxwWewwwwWwgvgvWvffwwggvwwhvfxwhwfgvxvwwhvwwgvfgwwhwwxxvgwfvgvwfWfewwwwwxwvxwwwwwxwhvfwwhwvwwwxwwvfwwgvWeffGTDuxwwWvvweVggfwvhvfgeGTDUvuWexwxfwwwfgvwwwwhvfwfgfevvggwgwwfgvwwvgvvgwvwwwfWvwwvgfwvugwwwgwwwxxwwxwxwwxvwwwwVvwwfwwvwfvWfvgffgwgfwfwwwegwwwxwfwvvvvwfvwvwwgwfgwuvgwxwwwwwwwwvwfffvffvxwwwxxwwwxwwwvxwxwwwwwwgwvwwfvvwxwwwfgfgfffvffvvgwgfgefwvgffwwfgvffffweffffwwweggwfwgfwgvwwfvefgvfwwxwvwgwwxuvwwWgvvwgvgwvwwwWfffwwxwxgvxvwxgxwggwhwwgvvwfwwgfxvwfggvgxggxwwwWvWxhwwwwwwWvWwwxxhwgwwwwwvwwgwwfvguwgGfVuwwxxxvwwwvwxewexvwwfwgwwgggwxgxvwwWwwffguvv7T5txuwwwwwvwvgefv7T5dvfgfGffefxwwgxewexwwwgffvvffWfgggvwwwxegexweweggwgfvevvwfgvwvwwgggfffvwgfvwxwxwfwwgwvgwgwffgwfgfwvgfvfggwgxfFvwweeFgfwfwxwvwwwwwFVefWgvwxwdffvgfgefwvgwfUvvwUfUfewWgvxwgvvgvgwxfvxxhvWwwwfwwwwwwfwvggggwwvfffVEefeeeEVefgfgwgffvfwffEUUVUVvfvvTUeffwfuwWVfeeffdgvWgvffFVffwfvwwwXefvufwwwWgfvwgefvuVwvvwWgvgwfwvwwvvwwwwxxwwwwwgwvgvvwxwffgfwwfvfwffwfgvwgvggfhfxwwwwwwwwwggfwwggwwwgwvxfwwwwvgwgwVefvWVVgwxwwxwxwxwwwwwwwwwwvwvwxwwwwwVVwxxwvwwffvffWevwWgVvgfvwwwgwwwWevwWVfWufgfVgggffxvvvfwxvvwffvgffvgfVfwvgwvwggwwfwwwwwwwwwwfwvfewwwgwvvvgwgwwwvwwgwwxgwfwgwgvgvfffgwfgfvffwwfvfwgffgfvfvwwwwwffxwwxwwwgfgwffvgxvwvwxgvfwgwwhfegUvUvuwwwxwgvwwfwwvwvwwwggxwhwevgvvwUwvwvvwxwgffVefUfefewwvfffvfwfwggUfUvefvUfvfvevfgwvfffwgwxwwhUffgvgwVvvvvvwwgvgggvggwgwwXeggfgvfwwhggwvwvwgvvwwvwwwwwxwwwwwwvgfvvfvggvxfgvfvfffvwvwfwwgfggwwwwfvvxwxwwwwxggfvwwwwhwvwwfffwwvwwWVfgwwxxwwxwwwxwgwvwwwgwxwxwwwwwgfgwwwveegfwgwfvFDEuWVvgfffDTTxwwwgffvwWVfffffVuwgwwwvgUeVwwxvgwwwggffgwfwwwwffvvggwffffffwwwwwwxwwfvvwwgfvvgwfwxhvwgwwxwwxfuVgggffgvgUfwwvwvgWefxwUfwwwwfwWevwgwwwgwwffvfwwxxwgfwfGTuhvwUfwwvwwgwwwhvvfwfwvvwwfgVefvggwwfgwwwvwwxxwxxfWeVhfv3DfwfwvufwVeffffvwDUwwfwvefefffwwfwvgWevwgwwxUVwwwUfuegwwwVevxwwXeVVfvvwwwwggvwxhvwgvwwwvwwwvuwxwxwfwwugvgwwvgvwwfwgwwwvgfvwwgwfwfVvgvWeVwgwfvwxUfwxgugvgwwgvWwgwvwwwwvfuggVwgUfwwWefgwgwgwwwuvwwwxvvWwwwwvwwvwgwwwwwwwwxwgffwfDUfvffVffwFTegwfvuvvVeffgffWevvggffwvwgfgwfwvwefgvgvwWvfvwhgwxWgwfwwwugwwvwwwwfvvwwfwwwvwwwxwwxwgwwwhwwxwwhhwvhwfVvggfwwwwgwguffvvvfwgwfVuWvvWwxwwvxfgwvwxwwwxwWeghgwWwvxwwvwgffgwggvvwfffwwvwxhxvgwxwwvwwgffgwxvwhwwgwvwwvxwfUfgvgVuVffVfvffvfgUfvvfwfvvffgWegggvVfffwgvvVwegfewggvfgvWvggvfgfvgwvxfggfwevwvgfffwwwwwgwwvwvgwuvwfwfwwwuvwvvggwhxwvwwgffvuvgVfwgwvevfgwfvwVewgwfVuwwuWwwvgUeggeVfwuwxwgwvVWfvxvwgwwgvfvFfggfeuwgfEwwgwwfwwvgwvxgwxvwfwgwvwfxwgwfwwwggghgvgUVevgffUefUeFfgufEUWfeVegvvwfwVffUVEVwVfevgUvffgffgvwevguVfVefVguVvvffwxvgvffvffvgffggwvffwwwvffgwgvwwwggwgvvwufwxWggvxfwVfvffwwuggwggvgvwfdfxwgWvwwvgwwFfwvwuvgxWwxwxWfxvgwwwwgvugdVgfvFVxwugvwvwwwwwwxwxgwwgvwxvwgwxxxwvgwwxguefwvW5UfgegfvWfvvfdfwWg5UgwegfFVvguvgevhvgwfegvgwfwgvxxwxgwvgwxwxfugvgwvgvfwfgwwwwgwvwxwxgxwwwwwwvvgwwxwwwwwgwwwwgwgwfvvvfwWfwvwwWwVvwgvugvXgvffvfvwwwwggfwggwvggwvvxwwgvwwvwgwwwwwgfwfgwwwvgffvwwvxwwgwwxwwxwwwwwwwgvwxwwfgfwvwwxgwwVvUVwffwgvfffefgeuwvffffggvwgfeuvggfvwfVvugVwgfgvVVVwWwgvgfvwwewvwwwwvgggvfVVwwvxfwgfvghvggwfwwwwwgwwggvvgwvwwfwvwwwfwgvwUufgffeVgfffffwvgvegffxvwuwwwwfVfffwvwgwgwwwwwfvewwfgvwwffwwVgffwvWVeVwvfggvwgwwwwggvwwwwvwfgwwxgwxwwVwvgfwEWfFgvfEEfwvfftUfUTvvgvgWFUwwvgfVVffewgfwwtewVVevgwwxvgwwwwwgvufVgwwwfUfwWvwgffwvgwvwxwWgfuwxwgwgvwwvffwgwuvxVgwfgwwuwvwwhuVfVgfgVfvwwgvuvwfgvwVffwvgfuxggufwvxfVgwgvewffgvwvWwWgwwgfUfvgWgvVVffvgfuwvfvfwvfwuugwwwwhvvgwvggwxwfvgvgvfwuwxwhwwwWfffEETVvVfuvffTUfwwVVggveUVUfvVfvfvgfwggwfeffvvfgwwweeWeVfeVwfwWwwwwgfwVeeVfvggxwvvvvgVvvgwvgvvwuwvwxxxwvwggwwgvwwfwwvgvxgvuvgfefefwgwVegvggwggUvwfwVewwwxwvVefUvfgwvvhwwwwxwwfhwxwwggvggUvxfgETwwwgvgwfxfgvfvvgwwvffffgvggfwxwfvffvxvgxfE3dwwwVefvgfwwVeeUVUUfevVewwfwgvwWfwgwwwvVefVVUVfugvwwxwfwggwwxwwwffvwwgvgUVfufvvvvwwwwwxwxwwvwvwwWgwwwhwwxvgvxfwvvwxGgfeVFffwggufvfuwwwfffwwfevwgwhgvggvffvwgwvwgfgwevwwgwwwgfwwgtffvggvVvwgwevwwwvfwwwwxxwvvfwwwugvgvwwwwwvwwxhgS5UwvgeVuegvUFfT6VUEVgWvffvwgwffUuwwgwVvggvWTfgwtfegwvwwvghfwfvgxwhwegwwuwvVVgwwtfevxwwvvwwxwwvwgfxhfvgwuhwvvexwwwxwwxxVgfVvffuUvvgwVvfUeVfuwfwwgfvgvgWfvfgfVfVvwwxwwgvxwwwwgvwwwvgwfgvfgvfffwwvvWwvwxwwxhwgwvfgguwwwggfghwfwwvvwwxgffVgfffWgfvfvvfffvvffgvVVewgwffvWffUwgvwwuffVvuffgfwfggwwfwwwwvvvxvvhfevwvgfvwVgVvxfvwwvggvgwfwxxwwwgvwvxwwwwwggxwwhffwwwwwwwwfvugguxxxwvgufwfwxxwxwwxwvwvwwfgwffwgvwgggwvfgvWfexxxxxwvgwgxvxxwgwwwwwwvvgwffwvfwgfgvfwvffeFUEtxvghvfffgfwvfWfeuvvwfFUEdfwxwgwvgfwvwvgwwgvfwfffVfvxxxwhvhxhwvgfvhwwvgfwgwfhvgevWfWvwvwwvwwxwxxwggwwxvfffwvwvvVVvffvgfxwwhfgffgvwgwwxvvwwxfvxwfgvgfwwwwwwgfwwwfvfvgwhxxwwwwwwwwxwvffwxwgxwxwfwvwwxwWfvvgvgfvVvvgvfggfegffwfvfvwwvwfvffvvWwfxwwffvfwwwxfvwwwxwVvvWwwwwwwwwwwwhffwfvwvxwgxvwwwhwfgwwwwwwwvuwxwhWwwwwvwwwwgvfwhxgfvvwhfvwxggwgfvwwgdfwfwvvwfvwwgdvwfwwXgewxWgevwwwe5UvwgdvwwwxWwwwwVuwwWwwwuxxgwwwVugfWwwWvwwhwwxwxggwfFfdvFBtwffffgxfvwwwdfVdfwfVUvwhgevwwvwwFfvxVfgfgwwGdfwfGgfvvwwVfvhvwxvgwEfvgtffvwuVvwxfgwwgwwwggxxvvwfwxgvwxxgggvwwwgvUwgvfvvhwwwwwgUvwwgfvwgwgvxxffxwvVewwwxgvwxwwxwxwwggwwwgfUfgfVefgvvwwwxwwwwwwxxvwwwwwwxxwwwfxwwwwwxwxwwvvvgffggfETvgfwVewwgUvvfggufvggvETvgfgWvwggfvwwwfwwggvgvwwwfewhwwwwwxffwfwvwgwwwwvwwfwvwwwwwfgwwwvwxvvwwggvwwwvxfefwgwwfgfugfVwvwhhwffgvwhvwwxxvvwgfvwfffvfwwwvwwgwvwwgefvwggvVffvvwefwvgwggvvwfwgvwwxwvvwgvxfwwwwwwwvgxxhgwwxgfvEVfeeGTevfwuvgwUfwwwddfUfvWUvvfgvfvwwfggwfgwxveeWfewwwvvwwWVfvwhgwffwgfvxxvvwVevgwwwweefwwwxwwfwhggxwwvwxggwwggfwwwwgffvwgfwwwwgeuxwffwwwxwwxxxgfVVvfgxwwwwfgggvvwwfeuwwEEggvgffwvwggwwvwfwvvwhfvwxgwfgwwvfgggwvwgwuvvwFCcwwVVvvvWUVxwvwwwwffVVvffgfwwwvgfwwgUUwxggwxwwVVffefVgwwvvvvvvwwgeegvvxxwwwgeuwfVgfuwwwgwwwwwwvhxvvxxhwxxwvhvwxwhwvUvffvwwvvgvUvvfvggewwvUgUfvvwwxwVfwhwgxwwwxUvvgfewgwvfwwfffffwwgffwvvwgwhwvvhfwvvwgfvwwffwxwwwhvwwwwwvwxvvwhfVefvfvefUfvvffffwwVewggwgfffvfvVvvgvevwvffgvVefgwvggfvvvwUvvvgvvfwwwwffwwwgvggwwWvxwwwgwffvwWwwvwxgwwwfwwvvhvwggxwffffvfvfwvfgfggwgvggvvwwwVVwgvvvxfgwwwvvxgwggwxvvwVVxxxwxxwwfwvfeewgVVfwvvgxwgxxwxwwxwvwwwwwgxxxwwxxfVTdwwgggggvvfvVVfvVTtwfvVVwxwvvgfwwvvvfwgvwwffvgvwwwvghxwwgwwvwvwvvwvwxwwvvwgwwggwvwgwxwxwgvwfwvwwxwxxxwwwwhfvvgggwggwvvwvvggfggfgwfvwwwwhwvwxwgwwwvwwwxxvxvfvwxwhgfvVffwffgvvwvwwgvvgwwwwwwwxwhwuwgwfwxwfwwwwwxvvxwwhUfffffeeUevwgWVfVffUfwgweeUffvvgfvwgfwfvwfvffgwWvwxwfvvwwxwgugxwgwwxggfgvvxVgwvwwxfwwgwvxwwwwxxxwgwwgwxxwwwwwxwxxgwwwwwxwwvxwgfwvwfwgveVfxxxwhvfxwwwxwwwxwvgwwwwwVuxwvxfwwgvfgvwwuwwwgvgvfWvwxwxvgwvxhfgvwwwhwfgvvwwgvwvfwfvVeDETwwwxwgvfwwwgvfgvfwgwveffvwxwwwvhfgvfwwvVweVgVveWwDETeVwxvgvfwwwWvfgvwwgwvgwfgwwvfwwWvwxxvwxwfwwwxhwwwxvwxwfxxxxwwwwfwxgwxggvfgvWVexvxwxwvwwxhxwwggvggfgvgffwwwevggfwwwwwwwwugvVwvxwxxvwwxxxvggfgwggggvvgffefvVEDwgwgwwgwwvwggfwfffVfgfgvwvwfwwheUffffgffwvVEDegggewxxxwwwvwwvfvfhhxvfvwfxvfuVgVwvwwgxwgwxwwxwwgxfvhhwvwxxwvwwgvgwwvgwgffwvfwfffwwxxvwvwwwgxfgfgxwgwvwwvxwfVvvwgfgvgVwUvugwwwwwffwewgwfgfwwwwwxwwxfwgvgwUguwwfvvxwvfgWefVfUveffwfwgvwvhvfgVwewegfVwffvfwvfwgfffggwffvfUffwffwUgufffvwffgvwvhwfvwgwwwwgwwfuffffwwgwWgvgvwvgvwwvwwwfvwwwwxwwxwwwvvvwwwxwwwwwxgvwffwwwvgfewwwwwwvwgwgwwwwvfvwxwwgwgffxvwxfvwwgvwffvvfwgfvxffvgffwhxwwwwxxwwwwvfvwxvvwggvwwvgvgeewfvgVTDtgwwwwgwvwgvwgUeuwwvfvggvgvWVwwwwfffgffvVTDtwgffffeeUvwwwfgfwwwxwwwwwwffffgvvffggfgfwwvhvgwwgwxwxwgvgxwgvfwgxwxwvgfvgfwwgffvgfvffwwvfwwffwfwwxwwwffwwwwwxfwwgxwgvUgwgwhWvfUfUwfgwwgwgffgUgvgfvvwxwwgxwVfwxvwUgegfvwwffgfVefUfVgffwvfgfffwgvwgUffwfgwUgffwfwwvwfffgffwfffgUfwwvvwegefvvwwxgfvwwwwwwgvfvwhvWwggvwwWwwgwwwwgvwvwvvxwhwfwwfvwwggvwfwgfwhfgvgwvwxfwgUfvwGTewggwfgwwffgfvvfgfwxghvfvvufvvwfwgUfwwWevwwXgvwfVfgvWefvwwVevwwfwwxfvWefgvwwwxgvvxxggwwe3DgfWefvwvVewfwwwVUVfVfuvfwwwhvwwwwWevvUfvwgUUUeVfefvgwwWggwwgwwffvwgwwxwwwwUfffweVgwgvwwwxwggwvfvfffvwgvwwxgwwvgwfvfewwwgWfgvvvgwgWefgwwVewvVVefvwwwfwwwgvwWwgvfwwvfwwvwffgGfvhwxeewwFfvvffwxgvfvwfffwwgvgduwgVugwwwwfwfFfwwfwfFUegffeeefEVewevfvGffugweexwUffffgfvEffvwffgWTefVUUvffwvfgvVvUFUggfffgUvwXfvgefguWfvwwwgggevwwwgwufvgvwxvvgwwwfwxgggvwxwxwwvfxwwwwwwwwwwxxfUfwwwVefvfvfwvwwvgwwwwwwwxwwwwwxxgggvwwUfwwwgvvwwgvwfUwwwwgfgvgwvxgvwwwUfwxgvvxhvgvwwwxwwxhffvvgwFTevfgfggfgfwfwwwwgvwwwwwXfvwwgwwxwWeffvewfwvWevwgvgGTUvgggfwvgfwfvvwfwwwvwwvwvwwwwwvwvvxwgwwwggwwwwwwxwxwfwwvgwwwwwgwwwvwwwwwwfvgvvgwwwfffwwwwwxfgvwwwwvwvwfvwwwgwwgfgwevwgvfgveffvwguvfgvwwgwvVuwwwgwvfgvwfgwgvvwwwvwwvvwwugfvfUufgvgeffwevgwVwgggvfwfgUefwwwwwWvggwgVVwwfVVfvffvwffggwvvvvffUggvwvVVfvxhhggvwwwwgggwgfhvwwwwvwwvwxvwwffxhwvwfwwwvwxwxwwxwwwwfvwgwgwwegVTvxvwggwwgvxwxfUwwwgwwfvwvwwfxgghwxwwwwfUwwfgwgvhvwvgwvvwwwwwgVuxwwwwfwwwwwffwWwwvweVD3xwwwwwfffvwwxfUwvvwfvfVfvwuwgvVfE4SwwwwwwfwffVdfwfffxwwwfVuwgwgggfefgwgVuxwggwgvggwwwwvWwwwwgxuwwgwwwwwwwWVfwwwwxugwwWuwWwgUSuwwgFfwwwwwWwffwUwwugwxxwxwguwhwwxwwffwggfgwvwFfwwvgvggfgxhffwwxvgwgdvwgwgwfvwwuWfxgfdfwvG$DgfvvvwgwffgVwwvwFfwwhFdvFfvgvwgffvdTfffgfgfvwwwwUeuffwxwxgevwhwfhTfgdffgwwgwvxXwefvvwwgvwwwvfhwwWggvwuvwxwgvwxwxvwwwwwwwXWffwFfwgdewegwwwxxgwxwxffwwxwwhwvwgvgevhwwvFfvwgugwvgwWwvfvvvvvgwfwgdvwWwwxwuvvwghufwvwgxwggweVgufVSefewvvwxxfwwxvfgegwfwvwwhfwwfufgw5UfVvfdvvvwVgdegVgwVgggvWvvgwwwxwvgwwxgfwgvgvwxgwxxwxwwvWwwvwwwwfwwwgvWwgvvWvwwwwvWxwgwwxxfgUfwewVewwwggvgwvwwwwgWwwwwxwwwwxwwwwwwvwgvffewwfwVegvwWvgwwwwfwffgwwwwvgvwfwewwvwVexwxgvgwwwWvwwfVDevfgffgffWfwfvufgfwvvggvwwhwgewhgghwwhvETffgUfvfffvgwwWfVefgfgwvwgufwvwwgfwvvwwvwxwWvwvwwwwwwvwwwwwhwvvwxwxwxxwxwxxfvfvwwwggwwwvwwXfgffgvvvwvwggwvuwwwfwwxwwfwvwwxvxxwgfvvgfgwfggvwwfwwhvgwvgwvvvvwwgxvvgwwwxwwvwwxwwvvxwgwvhfffUffeUfeuwggfvfwwgfwwfuwvwwwxewvwxvwgeVVfeVVfgweUfffwwgffgfwggwvgfwfgwhgvwgvwwWfgwwvxwwwwwhWxgxfggwxwgguwwwxwwwggwwwvuvgxwvwwvvfvvffwwffgfggfxvfggwwwWvwwfwwxwwfwevfVugvffVfgwwvgvVVufhvvvWwfveevVgwwwgwggfffwfVewxwvwwwwwweffffffggVvgfWffwvwffwwffggUvgfwwwgwwffxgffuwVefggffggfvfgwVvwvfeewwvwfefggwvwwvgggvwfhgggUvwxwxwgwwwwvwggfwxwvxvxggwvfwfwwxwwwwxfwwfwfVvgwfUgUwwuwwwwfwfuwhwggwgwUwvwwfwhwffvgffwffwwhfwwwggffgwfwwgfvffvgfvgwfgfgfxwwwwwvxwwwfwfVewfffVfUvvuwfffgfVevgwvgxgwwgewvwwfvwxfffVuVefWfvgvfvwfgUvfefwfvwvxvgvvggVufgvvgfwxvxwxwgvxwgfxwgxxggwwgvwwvxggxwwxwfvggvvvwhfvwwggwfvfgeewwwEEwwfwvwvvwfvvwwgwffxwxgfwfwfwwxvvgvwgeuwffwxwwwgffvwwwfgxwwwwwgeevfgvxwxwxwwweGCcwvgVVwwwgfvUUgffeeVevvvwwwgwwgfwvvvuVUgeeffgffgwxwwwfgvfvwwwwwgeuwggvfeeWefggwwwwxwxwwwgwwwvVwvhgvgwfgwegwwvwuwwXfufgggvggvugwuwwgeVfufwffufggwgvvggvgvfgvvvfwwwwxuwwvwwwWfgVfeffvwvgfuvwxgWefvvgfwfuwwfwWfvgfgVwvgggfgwfwwvwwvwwUgWTDUffffVuVffgWffVVeVveVfvffgwwwwWvwwwwVwGVUVUeUfffufeuwgvgwfvwfwffgvgUfgveVfVvvgvvgwvwwfwgfgwfwwWvxxwxwxwwxgwwwwwwxwwwgwxwwwwxwwwxwxwwwvwwwwfvfffgfwwwwxwwxwgwwgwggfwgwwxwwVvwgfghgwwwgvfWwwwvwgvwVgfvvfvwxwwwhfwwvwggfwfwwgwwVgfgwwxwffwwwffvfffgfwxfvwfwwwvvVwgwgfvvggfVgwxggwvwgffvfwVffvvgwfffVffggffwwvwvwfwxwhwvwwufguvwwwwgfevgwwwvwwwvwxxwxwwwxvvwwwwxxwhxwwwwwwwwhwwfvgfgfgxvwxwhwxxgfwvvwwfwwwxfxfffxfvwwxfvgffwwwvgggweffeggfwwxxfvxwvwvwxfvwggfxwgvVgffegfgwfwwwxwwfvwwfvgfvwgewwWwvwwgvvvwwfvwhvfffeggfgfWwvgvffvwwwwwxwwwxwgwffvwwvfvvgvwwvhxwvgwwwWggwvwhxgwwvvwwgfwwfwwvwwfgwwvwvvfdfwwVVegdxgwwwgwfwgwgvwfvwwffwwfwhffWgwwvwWefwweVWwuwwvggeffwVgvfvwgwwxuwwggggUeeVfggwwvVVwvvfvVUeffVUVVVdwUfwgufeVwfgfffgveVVfufgewggWfwwvffgVgVgEUeVefVvVueVTfVwgffwfwvwwggfvwgffgfggffvfgfvgvwvvfwvvxxxgvwwvwwgvfwxgfgwwwfwfwwvfxgvgETwwgUvwvwwfvxgfvfgUvwvvwwwxxwvgvuevhxwgVewwgUvwwggvgffvwgUvwfwfwxgwxwwgUvwvgfvwhwvvxgXffgVewfG3tvfugvwVUwxwwwgUvvgUwgguuwwufwwwETggvfffUfvvfVvvvgfefwfxVewxwxwxxvggVegwwfVVwwggwwvgxxgvvwwwwfwxvvwggxwwwgvwxwwwwxwwvvggeegvVVwfghxxwwgwwwwxxwxvxxffffwwwwvfvwgVVwgfvvvfwffggfgvwvgfwwvvwvvggwwwvVVwxxvvwgVTdggggwffgwwwgvwgvgffwwwgwwvwvwgVVwgeuwgfEEgfvvvfgwffwwvgwvvwvwxwwgvwwwgwvvwgwwgwggwwvwxuvwwgvgfwwxvwxhvvwwggvwwwwwggggGffvwWvVgfwwvvwxgvwwwwfgwewwwwvwgwdfevwwfffvwgevvXwggdffevevvwwwvfwxwgwggffffvwgvguvwvwwwwgwwf55UeuWfUfVwvfwwwwfgxvuvgEfgTffwvgvwffTdfwwffvfvcTUeUvgWeegVwwwwwwwgewWvwwwwwggxVVvFegwwvxwfwvhhwwxwwwggxwwxwwwwwvvgwwvwwxwwwwwwvwwgfgvVefWUwwwwxvwwwwwwwwwxgwwwwfwUwgvwgfwwfhffgvwwvgfwgfwwwgfvfgvffwwwwgwfxwxwwwwwwwvwgggwffvgfvwwVevVehggwfgvfffvxwvfwhgvggwvfgVwgwffwwgUfveuwgwwwwwWewWfvffffwxvfwwvfwwwggVvwvwwwvwwwwwwfvwvwvggwwgwwxgwwwggwvXfvfggwvwggvfwgwwxeffvfwfuvvgwvwwvfwwwvwwwgvwwxwxvwwvvwgWffwfgfgxvfwwwwffgvwwUfgwfwwhwvgfwffwwgvvxxgfwvgwvwwwwwTVfvfvUDeegvfgggWfUVvwgwvfvwxwgxvffeuwwwxWwvGUfFfvgfUwxwwWUfffgvgwwgffgwfwUfwwwvgwfvwggwfVVwwwhgxwwgggwvwwvvwfwgvxwffwwwvwgvwwfwwgxvvvwefVWvUfvfgwwwwwvwwfwgwwhwWvhvfvwUWgfvvwffvwwuxwwvefffefgvffvgvfVfwxvwwwggwfvwfvfgvgWwwwutfvdVfgvEEvffGguwwwgvwwggveUwhwfwgxvvUfwwGVeuwWdegfWgwEeggvVVvvvffewwvgWevvuwwwwhWevwgffwvgwvwwgfwwwxgxwfwgvxwwwwwwgffvwgxwxwvwvwfvxxwgVefVUdwwwwwfvfVWxwwwgfvfffuVfUUEUwwwwxxwxgxvgwxxwwwwwwwwvwgvfggxwwxwwwgwwfvvfgffxwxgfvfgfxwwgfvggxwgwwvwwvvgveVfwwwfgeVVxgvwgfueVefvfffVVuwwwwwwvwgwVVfugwwfwfgggeVVVfeVTEuxwwxvfxxwwwwwwwvvfffwwwgxxwwxwwgxwwvvxxwwgeuvfvvTUEwwwwwwggwvgwwffewffffefVEExwwxxwwxwwwwwwxwwxwfwwwxxxwwxwwwwwwvgvvvfgwvggvwwwvwwvffvfxxwwwwgwwwwwwwwvgvfgvfgVVggxwwwWffuVVxwfvfwwVfeveVVewwggvxvwgwgwgeuwgffvxwgffffVTdffxwwwgwwwxvgxwwwgwvwgwwwgvwwwwwwwwwgwffgfvxgffvwfwwwwvgwgfvggffvwgffvwwffxxxxxwxxwwwwwvghwwwwgwvxwwwvwwwwxwggwwwgwwwwwgfvwwwgggwvwgggxwwxxwwwwvwwwwwwwgwvwwvfvxvvgwwwgfvfgffvfgffvwvffgvxwwgfwxwwwwwwfgwvfffvgwffwvgffffwwwvwxvfwhgvvgwwffwVfVwwvvwwwwgxwxwgvgvWfugVuwfwgUTFwvVwwgfveVfwfvfVfVggfeWfeVUDxxvvwwwxwgfwhvgwxhwwwwwwfwgwwwwwwfwuwfvvffWwwgwWgfffewggwwwVwguWvwxvwwVwwgfWwfwfgwwWfUweVxggwfUwwwwgvVwffGfeWfTxhwxgffxwwvvgeVvxgfvugwVEwwfgfVewwwwwwhwvwvfwvggfvwwfwvghgwvwvvvfwwvwgvxvwwwufWWVvwgVfugwvgfwxwvgVUvwfVVegfgfvfwwfwwgwxwwwwgwwfwwwwwgwfwxwwvvggvwwwwwgggvwwwgwwfwvwgWwvvwwWgfwggwfvevvwgvgwgwgvwvwVvwgfvvwwgwwgwvufwwvvggfvxwfvffgVfuvfvwwvfwxfvfvvUvggwwwwwwfefwwwwvfffVuwvwxxwgwffwvwgffvwwvfvwghwwwwwwggwwwwwwwvgwwVfuwweVgfgwvgvxgwvwggfffeeVwwwwwfeVwwxwwxwxwxwwwfgfvvvwwgvghwxwwvwgvfeeffgwgwwgwgvxwwffvxvgwvwvgwxwxwwwfvfffwwwxwvgwwhgfwxvfxgffeeefVvggvwgvgwvwwgffgwvxhgwwwWVVffeffvfvwwvwwgwwwgwxwgwvefggvxwfvfxwfwwgvwvwfgwguguuefwvgffwfefeggwfevvVffwgxxfvfggefevvfgvxwwwwvwwgvxwwwwvwxxwwwwwxxgwvvwfffxxwwvhgffvvwgWvgwwwwggfvvgvwwwffgWvfwgxwwwgwfffvwxggvwwwwfvgVffwwwxwwgwfffwwgWvwvwgwwvvffVfffvegffxxxwvvvgvfgvwwwwwffxwwwvvwwvvgwwwwxwwwwwwwwwwwwggwwwwffwwvfgwffgfvvfgvvvvwwvwgvfwfgvwgwwwwwxwwwwwwwwwwxwwfwwwxwwwwwwxxxwwvwgwwwwwwwwwwwwwwwwxwwwwwwxwwwwxwwwwwwwxwwwwwvvwwwwwwwwwwwvgvwgvfgwwgfvwwwwgfwwwgwvwwwwgwwwxwggwvxwwwxwgvggvwfWwwvxwvxwfvvwwvxwgxwgxxwwwwvfxvVxwwgUVvgguwgvfgufwwvwfUVwhwwgvvVhwwxwxwvwwwvwfwvWwxwvxwwwuwwwfwhgufwgvxwwwwxwfwwwwvVvfwWxxwwVgxgwwxwwgxwwwvguwwwwgwwVvgwuvvvgVeehgvxgfwxgfgvwwwVvvgwgVeUxwgfgvvggexhgwVwggfxvwgegfxwwgwewgwWvwwgwgWVwwwwgwxwwwgwvVvvVvwwfEUU5wfxgvfffewwhffVFwwwfgfWTU5xwfwgwhgfvgvxxwfxwwwxwewgwwvexvwggxwwgfwggwfwxwvWvvwVvfVwfwwvwvxwhwwWWxwwggxgffEgwvxwgVdvVuxfxgvVVwVffFgfffUwwwvewwwwvvfUUwwwfggguwVfVdgfwwwwwxwwwvgwwwwwewwwvvgwfvwwgvffvfvwgveVVwwfUuwgwfgwvVVfgfefVgfwwwvwVUfUuwfwwwwwwwwwwwwwwwwwwfwwwwwwxwwVewwwgwxwxxwwfgwevwwwwgfwwwvfxwwwxwwgfgfvwfwvwwwwwffvfwwxgwwwVewwwgwwgxwwwgffeuwwgwvgvwwwwwVUffUwwwwgwwwffxfVVfggwwwwWWvvwvwvvwgfvgfvxwgwwwwfwxwwgwwwwvfwwfvwwWfvVVggfvwxfuwvvgfWVfVVgvggfgVwwwxggxwwxxwwuwgwwwwwwxxfwwgvwgxwwwwwwwwwwggxxwwwwxwwfwgggwwwxwwwwwxwggwggxwxxgwvwwwggwwvffwevwfwfwgwwfwggwgfwgwfwefwewgvwwgvfvwwfvvfwwfvwwvfvwwwvwxwwwxgfvwwewwwfvwwwvuvwfvgwvwffvgwgvwwfvgefwvwVvwffvefVfffwewffvfufgvvuVugvvwvuwwxwwwwwwwxxwwwwwgvxwwwwxwwvfwwwwWwwwxwwwwvvwwwxgwgvwwwwwxgvvvvggwvfwwwvgwwgfwxvwwwxvwgwgvfVwwfgWwgvxwwvvwgfvwwxgfegvffWvUwwggwWwggfggxwvwhggwwwwwxwwfwfwfgvgffgfgUwwggwgfwwwgvgwwwwwgfffVufevVfVgwgvfffffffgwfVUVUvgffUwgWwfWwgwwwwxhwxwwxwwxvggvwwwvfwwwwhwvfvgfWugwvffwwvwggfwggggWwwwwwgwwgwgwwwgvwgewwwfwvwuwfgfwvgvvvwgwggwwffVgfugfgffvgvfwgWgfwvWvvgwvfffVfgvfVuwwffwuwfUewfuwwvwvgvuwwgvwwwgvwfegwVvgUwvVugvuwwgvxwfwvvxwwwwwfgwVwfUwwwgfffvffuwwVgffgwwWfgfwvgwwwwugvxxfxgvgvxwxwwgwwwegwfwxvwwvfWugvUgwfwgvwvvvhvwwvvvwvgwfwffwwwwggggwvwfwgvfhwwwgfvvwwgxwwwvggVuwgwffvVgffgvfvvwgfgvgwvgwwvvVffVgwvgwvWwfwgffffvfffxgxvxvvwwvvgwfwffvxwgfwfwggwwvuwwfvggvguwwwwffvwgwwvgfffVwffwfffvgfvwwxwwwgwfwgfvfVwgwwwwwgxwwwwxwgwwwxwxwgvwxxwvwgwfvvfxwwxwwgfwwgxwwwwgVwxgvvggvfWxwwwfgwwwvvwwwwwwxggwgvwvvwwxgfgVwffffuwgvfwwvvWwfgwwgwwwffvVfvvvffffwwwwwwxwwfuxwxwwwwwfgxwvwgVwwwgwwggvwwwvwwWwwwwwvwvwwfffFvwwfftwwvgfffvgVwVfeEvfvxvwwvwefVtwwvwwxwwwgxxwwwvwfwwwwwwwwwwxgvfUxggfWxxxxwwwwwvxwwxvgvWxwwguwwwwwwgvwfwWwfUwwwxwxvwguwwwggwffUvgfeVwwwwxwxwwwvwxwwwfUwwfeVwgffVwvgvVwwwwfwwxwwwgwgwwwwvuwffVvfugwwwfwwwgvwffwwwggvwwvgvwfgffwwwfwwxvgeffVUugvggvvfwwgvgwfwvgwfxwwwxwgvxxxwxwwwwgguxfvwwwwxwhwvwggvwwfguwwxwwxwxwgxwgxfvxwwfxwgvwfgfvgvwwvfxwwwgwwwxxxwvggVufvfwuwgwwwxxwwvgxwxwgUuwvwwffvfwuwvvgvwvfgwxvwxwwhxxwgwgvwwxfvgwvewxwgwxxwxwwwgwvwvwwxgvwWvVfeUewvgxwgwwwwwWwgwvewVvgffeUegxwwxwwwxxxwwgvwwwvvggwfxwxwvwvwwfwxwwwwxwffvwfgwvxwwgvfvgvxwxwxwwgwxwxwwvwwwwgwvfgwwhweveggVwfvgwwvwffeVuvfeguwgwwwgvgfwWwvgfvVwvggVwxwvVVfUvVvVvxxvgghwwwgfvggffvwgwwgvwxwwwgvwwwwwhwvwwwgfgVevfewxxvwwvwwwggfffvgfffffffWVwgwwwwwwxxwwgxwgxwwwwvfwwwwwwwwwwgvwvffxwwwwffwhgwwwwwvwgwwwvgWewgfwxwwwfxwwgvwgwwvwwgwvwWfwgwwwvwgUfvWuwwfvwggVefgVvffwgwwvvwgwwwxwgvUuwvffwffvfwxfgUvwffvwwwvvwxwwfgwxgwvggvwwwxwwwwwxxwwvffvxwwgfgwwgeeVUwgvxwfwwwwwweeVUuwvwwffVuvwvxxxxwxwwvxwvxxwxxgvwwggvwwxwwwwwwwwwwfVUuwwgggfvfvwwxwgxwvwvwgwwxwwwwwxwwvevfvwxwvvWuvuwwwwgwxfwwwgffVuwvwgfVUufvxwgfwgUwwxxwvfggwgwwfwfegVvwfwggVvxwwgvfwhvfgvgefwWxxvwwhxwwfxwgggvfVewvfUggfWwvwgfewwfvffefVVwfvwgfVFgwwvwxhwvvhwxvgvgfgvfwewgfgxfxxWwvvvfdgggvxhggWwwxwvgvvgfVxwgwwvwwwwfwwewggwfvwhgWVwggggxwguwgVwvfTwgfvVwwgVfFwgwgFvwvwwgevtwfgwwwfeuxfvvgguwxwwgfuxwwwfggvgfgvuwwwvxwxxwwwwwxvwwwgfVwwfgfgfuwgvxwvfvgvfvfegfegvgwfgvwwgwvwxxvxxwgwvwwwwvggfvxwxvwvwwgwwgvgvwvggvwfwvwwxvxwgwgwwgwvwwvwwwxwxwxwfwgvwwwwgwwvxwwwvxgwwwwgfgewvggfgvgvuvwvgwwgvfwvfwgxwwgwfwvgfwvVwvfwwvffwwvgvxwvgffUggfgfwvwfvgwxwwwxwwgvwwwwwwwwwffffwwwfwwgfwwwwwxgffUDwgfwfwwgwvgvxwvfwxxwwwwwfvhxwwgfgwvfUfwwgwgwxwgvgwfvffvgwfwxhwwgxxgVuwwwwwhwwwwwwfUwgfwwwxwxxxvfUwwvwwwwfgfvffvfwfwwgfvgwwwfVuwwvxxwXEtwwfffvwwfwxgvwwwgxxfxvxxgvffvwwwwxxwwwwwxwfwwwwguffgvwwfgffwxxvwwvgvffvffuguwxxxvxxwwxgxwxxgvffgwwwwghwwwxwffwgwvgvwwfwwwwvguffxxwgffxxxffwwffffvguwgvwwwVgfVxwgvgwvgffvffvgvxwwvgffwwwwwgfVwVwxwwgffwfgffwVwfwwwwwvvfgwgvggfwwwgvgwfwvgwwxwwwwfwwwgvfvwwgfUwgwwwfwfVVugvwwwffxwwfUwwgwwgxgwwwwwxwwxwfwxxgwwxwwgfffxwwwwgvwwxwxxwwvggxxgwgvxxwvfwgwwwffvgvwfwxxwgwwgwgxwwwffvgwwfvvfwvwxwfvgfxwgxffvwwwWUewvvwwvwvwwwwxwwvwxwwwgffeWwwhwfxxgvwwwwwwwxwwxxwwxwwxWWwwgwfwgWvwwvuwwxvfwwwwwWUtwwwwwwwgvxwgxxxwwwwwwxwhfewwwwgvgwwgvxwwfwwwwgwwvwwwwvxxwwwwvxhfvwwwwwwwxwgVxwwwwgwvgvxwwVwwgwgwfvwwefvwvwvxwxwUTwwwxwxwwwfxfUxwwgWwwwwvwxwwfwgwxfxwwwwvffgwwwfwwwxwwwvwggfwxwwfwwvvgUfUwwxwwwgffwvefVwwfffVgVeUxgvxgxwgvwwvggxfwwwwwvggxwxxvwwgxgxgwgwwwvvxwwfwwvgVVVwxwwxwvvwwwwwfwwwwwgfffeVxxxwxgeewggfwffffgfeexwgwwvwvvwfvggvwxvwwwwgfvvwVVfffghwfvxgfwfvxwvwwgvfvWgfvwwwvfveeffgvfvvvfvgwWfuwWvgvxwgffgwvffgfwxhwvgfWVfUvwgwvxhvwwwggwwxffwwwxxwwxwwxfvwwwxwxwwwwhvvwwhwvffwwVeuwgvgvxwgffwwvwgwfwwwwvgVfUUevvfwwxwwffwfwwgfxwvgwfffvwwwwwwwwwwwfvfvxwvxvwfffwvxffgefewwwwwwwwffwxggwfwwwwwgffwfwgUvgvfvfffwgwxgfwweeeVVwwwxfwwwwwweeefVwwvgwfffwxxwfvxxwwgwwwxwwxwwwwwwwxwxwvwwwwxwfwxwxwwvvwgvwvweeefVwvwwhwwwwxgwgfffvwwwwxgfwwwxgwxwhfgwwvfwwvgwfvfwgfgvfwwwhggwvvwhwvwwwfgvvwwvgvwvvwwgwwgggvwwgxwvwwwgfwwwvvvgWVuwfUfeegVeggvvvwffvfvfffwgeeugfvwwwwfVWgfwfweffgffeefvvgfgwwwwwfvgggvwwwwwwwwwwxwwwwwwwwwxwwvxxwwwvgwvgwwwwgwvffvfffffwvfvXfuwwwwgwgVVefgvfgwgfwfvwggwggvvggwgvfvwwvgwwwfvwwwwwwvvwwWwuwwwxggwwwgvWfewwxwwffwfwwvvgwvfwgvvwggwffgffevwwwWfvfvggVffwvffvgwxwggWEDuffefWwwgfvwwggwwxWDTfveVgefWwwfwwvxwwfvwwgwggwwvfvwvgwggwwwwvvwhwxwvvgggwwwvvvfxwwffgwwWvggfvgfvgVVfvfvWwgvfuwxgfwewffefvggwfvgwwuVgvwwffgggwwvwgffvfWwwfvgwwgwwwwggggvwwgfwvwgwvffgvuwwvgwewwwgwwwwuWvvWgvwwgvvvggefuuwuggvxwwvfewgvgwfwvwvwfUFwwgwgfvvwgvwwwwwwfgfgeeUtwggwwfvwgwvXguwfwwfwwgwvugugwwwhwwxwfgwwxvwwwxgwgwwwwvfwwwwvwwfwwwgwvdFhwwwwfwvwgvwxwgvwwfVgUdftwwgwvfgvgwWwxwwgwwgwuwgfgvwwwwwwwvgvwvgVvVwxwhwwwwwggvVguefUwwwfwgwxwgevgwvxvgwwwwwvwvVfgvwVdfUvwWwVefTfgwvffvwgwguffEVfwgvgghfVfevxvwvWggwfeVgGefvgwwvhwWxwwwwfwgwwggwxwwwwwvwwwxxgwwwevwwwxxxwwxxwgwvwvfguwfvwvvfgffwwfgggFuwvwwwwvwwwfUwwwggfvwxwvwgffvVgwxwwggwwfgwwgwvvwxggwfwwWwvwwTUvwwwwwwwwwxwuWwxwhwfwggfhwwwwvfwwfwxwfwwfWfuveevvfggfffefevvvvwwWVuxgVeewgffUwfeVggxfffgfeffwwwwwxgvwwvwxwwwwwvwwwxwxwwwwxxwwwwgwxwwwwwwvwxwwwvgwwwgVuwgVfuwwwffvgfffwgvxxwwwxgwwggwfwxwwvfwwffgxgxgwvgvfwvgwvwwvvxwfwwfgvfwvgwvwgwgwvwvgwwxwwwvwvvwwghwwwxwwwgfvgvgfgfggvfwvgwgfggffgvfvfvffgfffffwwwwwwvfwvwwwwgwwwwwwwvwxwwwwwwwwwwggggxwwvwwxwxvwwgwwwxxvfwwxxwxfhgfgfwffwwwwwwfvggvwwvgfvvvgwwwvwwwwwwxvvfggwwwvwwfvwwwwxwwwwwxwfwwxwwgwgvwwwwwwgfvvwxxwwwwxgwwgwwwwwwgvxwfwwvvggfVvvguwgufFvVgvuvvVewvVwfgfduwVgVegvfWgwwwwvvwggfeuwufwwxxfwvxwwfwxwvwwwxwwwwwwxwwxvwxgxwwwwvvwwxwgVewwfwvgfeuwggfuwvwgwwfwxwvfwvevwvwwwxfgwvgvggwwxwwvvvwvuwwvvgvwwwwgugggwgwvwxwgggxxxwWgvwwgvvffwgffhgffwfwVeffwhwwfffwvfggffgfffwhwgfUvwfF5SffggvvffffgUvvwVeffwwv5SvFgfgfvgwggvvwUxwwffgvvggxvwwhfvffffxwwxwwgffffvfvgvffxfvgwwwxwffgdUvfffVegfgffwWuwfgUfgtvffwwfgfVewhwggfwgggvffffgvfgffffwxwfffgfwwwwwgfvfgwvffvvgffgwgfvvwwwhfvvfgwvwfwWvggvwfvwgvwgwwwvefvgFegfUwfdwgfFvwufvffeWggfvWfeTfgfvwggvVvewVvwgfdvgvvgefdfwevvgwwvWhwfxwwwwvgvwgwvfwvggvwvvwvwwwwwwuwwxvwvfxwwwwxgVwfVvfghfvwgffvgVtwwfFwwewgvwwffvwwwwvvgvwgvugfwWvfewvwwggwwggfvwwwgvgfwfVfdwfwwggfdwfxwwffxxwwfwhvwgwgwwhffwwgvvWVuffvwufeggwggfevfwgggffewgxwUUffVvfuEDggggfewgWDtvvffefeggffegxgfVWwwwwuwvfvhfvvffewggwggwxgwwvwvwxwweUwggWvvvfvgfgggwuxxxhgwvfugVwwVfUefegggggewggVvwvffwvfVWffgggggfwwveggWVegvvgfgfghwUeggggggwwWgVvvvvgwwwvvvxgfvwvvwvxwvwfgvxWvwWuwwwwuUfwffggvgwwWwfVUWffwfUwwwWuwwVuDDvffgfvgvvgWGDTffUffUfgfvwwvgwgvwwwwwwwwwgvwwfwwwgfvwwwwuwwwffgwwwhwgvwUwfxwwgfvwwwwwwvgwWewffuffgfffvvgwgfvwwgfwwggfvxvwgfffVevvgugvgfffUffgwvgfffvwwvwwvwwwxwfUwwgwvwUwwgxwwwwwfgwvxwwwWwfwUggfwffvwwwwwvfgwvwfwgwffvfvvwgfgfwfwvghgeggGfffvfwwwwwefevwfvwwwWVdfgwggwfggfwwwwvvwvfvgvwggwvwwwwxfgwwvwwwvwgwfvvvgwgvwxwvwwggwwwwwxwwwevgFgfgvewwwwwVVevgvgwwvWVdvffwwwfggfwxgxueegWwwwvwgffwfxwwwwxwwwxxfVffwwwwgvwwwwwxwgvwwwgfwxwwhvvgwfgwgWvwwvxwgVwgvffwvWfgfewwugfwgwvfuffUgwvvfvfffvuvWffegefVVghhwwgvffvvfvvwwgfvwwewxwwwvfwgvxwxgwxgwwvxxwwvxvwwgxxwxwwwwwxwfeUwwwfvgffwugWffewfVVUwgvxwwvugvffvgvgvwgvgfvfffWwwxwvvfwwfwwvgwwvwvggVwfgfVgfVfVxwwwfxwvvvxwvwwggwvwvvgfggffxxgfwwwvewvUeVVwwWfewvwwwGWevxhVexwwwwuffUDtvVfevwvxwwwvefVVwxwxwgwfwxxwfwwwwwwwwwwxwwxwwfgvwwwxvwwwwGfffxwffxwwwxuwveVugVfevgfxwwwwgffVVwxwwwfweffvwvwvgwgvwwgwxwxgUvxgwvgVuvffwvwwwxwvxxwvvwwfvvgWwwwgfwfwwwwwwwwWvffgWgfgfvwwwfwwwWfVegwwwfwgwwwfeUfwwfUfgwwfwgwwwwfwwwvggwgggwvwwvvxxwwgegfxxwwhxgwhwggwvwvwwwwxwwgwWfffvgvgggWwwwgeUfwfffwwwvfwWvwwwfwwwwgffgfufUwwgwgwfwwwwwwwxWfuVefgwgfwwwvwfwwwvxxxxwwwwwwwxxghvvwfvwwxwfvwvvgfggggvvfwgwwwfvwggwwvggfgwvVVfggwwwwwxfgwvwxwffwgwgvwxwefVwwxffxwgfwwgvffgxwwggwwwvvgwwxxwxxgwwvwwvvgwgwvwgxgggwwvfgfwwwUUwffhwfwxfvwvvwwffwfgwvxwwUfVwxwvwwwfvwfwwvfvggwffwgwggfvwwwgwwfwwwgwffwvwwwwwgfvwfvvvwgfvwvgfvxvwwwfwwvffvgwffvgVUvwgvveefUVVvffgwwwfveUvfeUUuxwwgvfffwfffvwgVefUfeVfVUuvvwvfwxwvwwvxfvfwgfvwwwwggwwwwvgwfwwxwwwgwwwwwgfvvgwwvWWeggwvfvguwVuwvvwwgvwhfgeegvwffUugwffvwvwgffwfwgfvvvwwwwwfegVvgwvwvggxxwvfwwwwwwxwgvggewwvwgVfUwgwgwwwwwwwgvwwwwfwwwwwwxwggfvwwgvUgwwgvggwwgUvvfwffVevWgwgvwwgvgfvgvwhxffwhwwgghwwwwwwwwwwwwwwwwxwxwxwwwgvwwwxgvwwxxgvwwwxwffwwwwxxxgvfwffgVeVfwwgvgvvwwvgWfffwgwgfwgwwgvvwwhwfwfwwffwwwxwVewhwwhvwfwfwvwvwwwwwwwgwwfwwwwgwfvwwwwwgwwfxwvxgvxxWfwwvwggvxwfxwfwgfVuvfvwwwgVdwhwgfgUtwgwwwwggwgfEvvfvhwwwfeVtxvvWwxxvxwvwfwwxwvvvxgwgfwwwxvwxwfxwwvggwwvwwxwvgfdwwwgfevwgwxvhwgwwwevwvvwwwwgwVvwgWwwwvgvWvVggwvvwwvvgufvvwxgfwwwwwxwgfwguwwwgwgwwfwVwwgwwvgwwvwwwwxgwggfvgwwxwvegfwggwwWgvgvwwgfvwWfvWffvfwxwvwfvvvgvxwWffgvwhwfUwgwwwwhwvwwwwwxwwwwvwvxhgwwgwgvwvwxwwwwvgwwxwvwwxxwvhgwxhwfvgffgWwevfwwwfwwvfggwvgffvvwwwfUwwgggwxfwfgvhxgVewfwwwvegwwwwwwvfwwwhgwwwvwxwgfvwwwvxxwwwwwwufVwhxwVfuwxhVwwvwvuwghwVgfwxfhgww7FevwWUewfwvwwxwvfxxvfG5eftfwwwgUuuvuuggwwwWvuwhfwggwvfwvwggfvwwugwxxwgxugwfwvwgwwvwhgwg6feuvWWewvwfgvwgxwvwgUfftfWgUufwvdfvwxffwwwteWVfvvWgfvwxvwhxweewWgwgfgwfdwWgWfvffhxwwxwwvwwhwwxxwwwwhhxufwvvvVwwhggfwvwhwgvfvwfvwvgegWgvwwuVwfvvwxvwxxxgvxhwghwwwwvxgwwwwxwxxhxwxxwvwwhhwhwfxwxwxxhxxwgwfwwggvgfwwgwwwvfvgvwwwwvxxhgvwgwwhhwwwvgwVvvwxwwwxxgfwhhxxwwgwwwgwvwvuvxwgxxwwwvxwxwwwgwwvwwfwwwwwgwwwXgefgggvgwwuvfVwwwUfwwwuggVwvgvwGgfUewgvwwwwwxgVwvvxgwvgggwvwwwvwggfwwgxwgwwwhwwgwvvwxxxwgwxwgwwhVvfwwvufgfvwffvgggveewgwvwwVwwgUvwfwwhwwWvfffwgvwgxfhFvvvwwxWwvgvwxwfexxwgwwuwxhgwwwwgwwxwxwfwgwvvgvwwvwwvwwwggwgvvwwvgvwwffwwwwfVuffvffvfgfggfUwwgVvwvwwwfwvgwwwwgwgwwwgwfhvwgvwfwfxwhwvgwxwwwwxwwwfUxwgxwwwwwxgwwxwwwgfvvfvwfvegwggwfwwwfwwwwfwUwgwwxwwwwgwwffwgfVwwvwwwwxwgwwwwwwwgwwwgvfvgvuwwwgwwwwwwwghwwxwwxxgwwgfwwwggwwweewwwgvxxwwxwwwwwvwwugffVWCCxgwwvvfgwxwwweewwgfffefggvgfwgxgvgxvvxwfwgvggvggwvhxwwwggwxgxwwwweewxwwwwgwwvwfvVgUdvxvwwwgxxxgwxeewgwvvgvvgwwwwgvfvfEfwWwwwvvgVVCCevvffwwWVvvwvgwggwvvwwWVfwxxvvVfvvfwwgwwwwvfvxvfwhfvfvwwfggwfwwxgwwhwwwwwwxwwwwgffffVeVVgxwwfgwvvggvvfgvhwvffffegfvwwwvvwwxwwwgwwxgwwwwxffgfggfxwwwwwvwffwwwwwwfggvgwvxwvfwgvwwvVeUWfwwwwxwwwxwwwwvxwwvwwwUwfvwwvwwwgUgvuwffwwwwwVeeWfffgffwxwgwwxfwwwgvvgwgggwwvwwwwgevfwgwwvwwgwggfxwwvgfwwvgfffwvggxxwwxwwwwwvfvgVVwfgvGTDugvwwwfgvwwvwWVUvwwvggfwgvwwgfwwwxwwwwwwfvggfwgvgvffvxwwxwwgvxvwgvfwwxwgfwwwwxwwwffwfwgWfevwwfgvwwwwvwwwwwwwwxwwwgfwwwwfffgeegFTDuwgffVfefUvxwfwfffwxwwfgvfvwwfgfgvvffwwwwwwwvvwwvffvuwvwwgVuwveVWwuwwfvwgvwwgwgvwvgwxuVffeVevfeUFVewvfwwXfueVvfUffggfveWfeVgfvwwwvuwhwgwwvgvwvvgvgVvwvvegfggvvxggwwvwvVUfVVwugwweVggwvwgfFvvveeFgVxwvxxxwgfwwvgvgfwwwgggfwwwgvegwWfveuffuUTVVVfvWfgEVVefxwhfvfvvgwgfvfvgfvvvffvfgffvvwgwwwwwwwfgvvfwwfugfuvffvvwwwxxwwwgwxwwvwwwwvfeUegffwfffuwgvvgwwwwwwfegfVVuwefwfgWwgwwggwwwwxwwwgvwvwwwwwgfggWvgweuvggvgwxwvwwwgwwgwfgwgvvfwwwwwwvwvfgfwwgffwwwwwfwgxxwwwwvwxgfgwwwwgwgfvwwvgvgVVvwfgfffgVfefvfWuwfwwgvgvgxwwwwvvvfeVhfwwfwfgwwvwgXwvfuefvhgVVevvfwwgggwgwvhwugwvwwwwgvfgvffVffevfgggvfwgwwvvWffUvfggfvvwgfwwfgfwvwwgwWwwwxwVWwfhgfvUfwVegfffwxwxwvvvewfVVfwwgwgwwwwwwvwgffgfvfffgxwwwhxwwwhfvgufwwfvgvfwxwgvfewWvwvwffffvvfgfUfvgVefwwfwgwwffwhwwwxxgVffwfeuvwgfwgvxwwxggvfvwfuwwwhwfvvxwfwxvxxxxwvvggfexfvvfggVDTwgwwvfvVffxxxxwfvvgwwvwfvfgvxwfwgwxwwxwwwwwuwwwwwggfwvxxxwwvgfgxxwxxwwvvwfhhgvwvvwgwgfVexxwwvwfggxxwwwwwvfvvgffvwfvvEDUwgwhvfffxgVeufwfVwgfgwwwwgWfgvehwhxwhfgfgfwevvvvvvgvwgfvxxxeewwwwfvvvwwwghffwvvvgfwfVVVwgwCCwwfgwvgggfvggvvwUUwxwwxeefUfgwxggwwgvxhgwxxwvwwxwgggvwwgffxwwwwWVvxwwwwwvfvfgxfGEewwweewwgwfwffgfgfwgvwggxxxwwvgwwwwfxewvWVfgvfvvUexwwwffffgwwwwwWVvwxwWVfVuvvwwwwwggvxwwfwvwxwfgfffvwvwgfvwwWVfvvwwwfwxwwxwwxwxhgvvfTTvwgggfvwfwvwvgwxvwgfvwwgvwwwvwwgwwwxwvvwfggwggvvvfvfgggvvwvggwweexxhfwwwvgggwvxwxhggvveevxWVfgvwwgxwxxgwwwxxwxxFEuwvfffwVVffwfwVVfvwwvwwggwvvvgwwfwwxxgvwwwvwwxgwwgwwxwxxwwwgevwwwxvvgfgvwWfwxwwwwwwxxwwxxwvfvgwggffffgfwggvgvffwvvxwevwvgvwxwvVfwxwvxwwwxwwwwgwwgWvwgvwvgfgfgwvvwwggguwwwfwwfgfwgwwgfwwwfvwwwwvfffgfwwwxggvfwwxvwwxxwxwwgwwwfevwgfffefwvgfwggffggfvgfffwwhWgguvfwgfevwgwvwwwwwwwvvxwwvfwwfvggfvvVVxggftwwfFffgevhxvwVgwwwvvwvffVVvffVUdfeeEugeewfffgfvwfuwhfVeftvWffFuwffvfwwvwxwwgwwwvvwgffwvffvwgfvxgwedwffFfwfwwwwwgWewwwgfvVewwggVuvgeUvxfwwwgvwwfxfwwuwfwwwwgvvggfvUTgeUFUfgvvwvffffUUevfgfvVegwfVgfewVgvWgwfxwwfVwwwwwfVwwwfxvwwuwvgvggUfwfggegvgWwvvguuwhwgwwwwvxwffffvfgETfvfWfggvufgegvwgfxwwhwgfwgvwhvwvwwwwwfwxwxgvwuxgxggfvwfwwwwvwwwvVewfwfwwgwgvxxwguwgwgWwwwfgUfwVwVewwvgwVwwfwwwwwwwvwwwxwgwwwwwwwfgfvffUfvfvETwvfWwVefgfgwvvwufguwwvwfvwfwwvwwwgwwwwwwwwvwwxwwhgwvVfgwevwfgvwVuwvuwwvxwwwvxhwwvfgfewfUvfwVeffuvWvwfwegffwgvgevfgwvfvvgvgvwgwxvwwxwhvvwwVggfwwwggvfvwgvwwvUwwWxwhwwvxwwggvxvggwwffvvwgfffvwwwvwgwxwwhgvfvgwvwwwvxvfVeggvUffWffvgvgffwfgfvggffvwfvefffwwwwgwfWwfxvfggwwgwggwwvwwvfewxvfuVfVWffwvgffwvgwxfUgvwuvgvfggvwuwxwFVeVffVUDVvgvfefveUfuwwwgffggwwwgefVVWgwwvfgwewgwvggwvwuxxxVWfWgfggfwwwvvueffgvgwwvgwfgwvvwevggWWwfUVffwgffegvwvgfvvvfwWwwvgwvwgxwwgvggfwxxwdeeeUefwvvgVUwwgwffUWffgfvwffVevgvvwVvvvvvuwxxfgfewgwgvwvvwvxwwwgtfVfgwwgffwgVvwfvwwwwwwwvfwwxXWwe6USgvWfuefuugwwwgfwhxvfgTfetfvwggwgfxvuvwwgxgwfxfwgxGWufeffggggvwwwffvwvewgwvfwgvgvwggvfwwwwxwgwwFfffgggufvuwwwwwwxxggwfwvuvfxxwgwxfSEfwweUWfgdFUVuvgefvfvvwwwxwwweeVFgwwxwwwfwgVvgWwwwvgvgwxxvwwuvgwffgFvwgwgfwwgggwWfewvwwxWwwwWuwWwfD$twggfdfvgvgwfdvffDfftvwvxwhhwWfwgwgggvwwwwhwgwwxwuwwwwwfffvxwgfxwxxwvgfgFvwgvuuwvxwwgwgxxgfFvwwWUSwwwwwwvvfvewvwuwxwWuwWwxxwwxfgfdEfUefvegfwwwwffgfgxxwwgVvwxwvfEfftfvuegwvvwvvwvxwggwwXgvfffgvvffwwwhVvfwggvvvvvvwvgTETwgfeVvVvvffffWUfvveVfwvwvwwVvwvwwwwgwwwwwvwvvvwwxhVgVwwwfgfwwwfggfwfwvwggwgwfvgfwwwxwwwgevewwfffvgwwvvwgfwwwvvgwggwwvwwwwxWfUFfUVUgffwgwxwwgFwvvvgvwgffgfvgwfUwwweVfwxwvwfxwxwggwwxfxxvfwvUvfVugguxgwUwgffwwfgvfvwgxwxvwwfffVefVefgvewffffUfffWugfvvfwfwgfwgwwfwwfwgwwxvwwfwxhwvwxxvfWuvfvwgvggvfwfewwgWevfwwxwggxwxwgwggfvgffffwwwfgwffwfwxwwgvffwwxwwxwwwwwxvxffUgffguffeffwwwvgvggffxwgwgfvgvvwuwgvfvwwuwvwwwwwwgvwxgwwwgwwwUwxwgvgwfwvfwgxxwwwxwwwvwgfggvwgfUVTDwwwxwwfgwvwwfwvfvwwvffffuwvwgwxwwwhxwwwwgvwwwwWwfwvewxwwwwhwwhxvfvgwvvvfvwxwfxwvwfvfgfewxwwxwxxwwwwwvfvwvvwwvwxvgewWVwwwWfgeufvvfVTDTfxwwwggwwxwggvwwwvggfgggwgggVwfwVwxvwwwfffwwwgffffgfwwwwfgvhwwwwgwwgvggwgfevgffVeVewWvghwffwVvvgffgwwxwVewggfgwxwwgwwxghxwhwfwvgwwwwgfvgffffffvxwwgwgxwxffwwwwvffgfggwgvUvwggeWewWwwhwgvUwvwwwggwWfwhwggwwgfwvUfUffegfffvggwVefWffggvwwvxvxxwxUvvffvvwwfgwvvvvwhvvvgwvfwfeVwxwwgVevwhUvwgvfwxgvgwwgfwfgwvwxgvfVeefF3tvfwwwxwVewxevgUvvWUvwWguvwwvgxwxgvxxxgwxwwgwwgffvfgUvvvwwwxffwwwfgUvwvwghwvvwxwwfETwfgUvwvwvfwxwwxwgfgUfwvgfxwvwxxffvwwVfwgvufgUfwfVDuvfgfefwfxVewwvwxwgvwVewxweVfwwvggxvgxwxwfgvfevwwgFfwwwewggwwwfwxwwwwwwwxxxuefwfWfwvUSgVfggvwxxgwgwvgegggwfxxwghgwwwvvwgfgWgwvuxxxvfggwfvwuwvgggwvuxgWvwvvfdwvhxwwuxxwhxxxwwxWgFVffedgWgvwwxwxwwfvxwgwvxxxwggwgfdvgWFvevfvevvWgwUSgVfWggfvfgfwvwwwwwwxxVwwvvvvvxwwvvxwxwvwwwUefwxxweffvgwuwwwhfvwgwwfgwwvwgwxggvEVfdfGEefvvvfwwwwfgxvteWeuvgvwwwgVuvwwvvgwwwffwvwxwfwgggvffeefffvvvfvgwxgfggffVvfvwgwwwwwewwwWguVffvggVegvvwgvwguhwwwgwvwgwwfvvwugWwweegvgdUfEuvfWFufvfefvwggwffwggwwxxwgfwxfUwWvwggxfUgwwwwxwwwfWgvfwwwwfVuwffUxwwvxwfxfvvgwfwfwgguwffF4cwwfUvwfgVUwwfwwgfUfVvVVwfxwwwwfwwgwvvgxwwgvwwfvxxvwgVfVfwgfUwwfgwfwwwwwxgfUfUwfgfwwxgfwxvwwfVuwfUDgwghgfxfvwwgffggvvfxwwfgfwWUUwvgvwwvfUfUfVVfUvwggvWwwvwgVugfvwwxwwwvxgffwwfgeewwwwwgwwwvwgvffvhwfxwwfffvwwvwwxwwhwwxwwwgggeWfvwfwfvvvvvgvwwgewxwwgfvwwfwwwwvuwwwvwxxwxwwwhgwwVffwvggwVvfvvvxwfvwxwxwgwfvwfvxwgfwgfwgxfvwwfwgvxwwwwhgwwgwxvhffvwwgfwgWfgwVvfvvfvvgvffxvwwffwwgwwwxwgggwwwwxxwgfgwghgxxvvvvwfwggvwwwfUwwwfwwwvvwwgwwwwwwwxwfVEdwgggfvfgfgvwfvgffuwwwgfwwxwwwfwwwxwgwvwwwxwgggwwfwwwgwfvwwgwUwfxggwvfwwwgwwwwfxwfxfUxxwxwwwgfVuwwgfUvfggfwwgwvwwwgwwxwxxwwwwxwxwfUvfVEtvgufUwwgwfwVgwfgfgwvvgvwvwwvgwwwvwwfwwwwxwwxxwwxhfvggfwwfvvvgwfwgvffwwxwgwvwwwgWVVeVffffVVvvwgvWfwwguwhwfgvgwwgfwwwwwxwgvgwxwwwxwxgfvvvwvwgwgvwwwggxwvvwwxvgwxwwwwwwvhfwvegvffwgwfwwwfwwwvvxvWwgwgvwwwwheUVVfffgfgeeffvwwVVvwfvfwwggwffuwgxgvxgwwwwwvfxhwgwxwwgxwxxwvwwvgxgvwwwwfwgVUewfwxgwwwwfgxhvxwwfwwfeUwxwwffvwwxffUxggvffffVVwxvgxwxgwwwwvffwwwwwwwggvfwwxwvwwVVvwwwwfffhfUffffVUxwxwwwwfwfgxxwwwwwwwvwxxvvwvvggwxxwwwgffvxwwwwfwwvwgwvwfUxwwwhwgwwwwwgggfxxgvwwgvfvwggffeewgguvWgvvvgwwgwFUvwggfgWuwxfxwwwvgvgwwwxFdvvgggwxwwwwwwwvwWuwxwgWvgffwwwwfWwgwffewwwwvvwvwVuwwgwwffewfggwwgegwwvwfgwvwwwwgvfEVewvwvwwfwwvhgwvwwVWwwwxvwwwvwvgwwwggwwgwgwwgwwwwwUgwwfvvgwvwhwgggfFEfgwwvwfwwwvvwUvvwwwvwwxfeuwxwwfuvVevghghwwwfUfwwgvvfwwUVeeVxwvgxwxwwwwwxwwwfvwwweVeefxwwhwfgwwwwfgvffvgvvwvvvwwgwfgwwgvvwxwfvwvwgfvfeefgfgfeeggxhvfwhgvgeVeefggfvffeewwwwxwwvwwwwvvxxxwwxwwxwwwvwwwwgwwwfwwgvxwwwfffffvgwwwwfwfwwhwfgwwhgwwwxvfwwffgwvwggwvwwwvwvfwfWftvvWfffeWgffeVdfwwvggvwwvvfwwvwgvwwuefffgfffffXwwwwwwwwfWggfevvggwvgfvvfwfhwwwwggfwgvwvfgewfFveVgfdwvgwuwgvwwvgffFfffwgeVggefftVgwWvwwwewhwvwwfgwwwwwvxxwhxwwwuwwwvgvgwwfwGfvwwwwgvvGfuwwewgwffgvgwwwwvgvgFvfwxwhwgwvvfFfewvwgvfvggvwvwwwwwVweVwgwVEDdffffgwvwwvgwwwwwwffgxwwgffgfVffffgwvgffgfvwwwxwffeVgwvffwvwwvvxWvuWwgwveUvfffgwwuWwUgfveVwwwvwWVewwgwvwxWDDffefVffgwvwvwwwwwwwgwvwwffwuwwvgwwwwxhvguWwwffwwguvWuwvfggfvVgwffwwwvwffgvwefVgvwwWwuwxgwvxxWwwUWfuvgwgwwwwvgwxfwvvgvevgwefvfgeVwwfgfWfvwgfvwxxwfxwwvgvgxvggUVxwggfWfwgvvwxvvwfwgwfgfWfvxgxwgvwvwwvgvxwwwgwxwfufffwwgvfVwwufvVgffguhggvfgwefeVfuxvgvgfgfwwwwvWxwwwfgwxxxwwwwwvgwwxwgxwwfwvwxvggvgvefeUVewvWwfVgvfwwgvgfufwgwgwvvwgguffuffegvwggwwwvxwwvgVUvUgwwwgffUUeUvwwfwwwwwwwggwwgeVwvgWuwvvfWuggvgvwWgfgwwwffgvgvvwwwVfgwvwvffxvwvgwvwgfffvfwfeuwgfVVfUfvfxffvwgVUUfuwwwfgfvffefVVfevvwxgvxwvwgvffvgwwxwwwvggwgvwwwgxwfvgwvwwfgvVVefgvvvwwhvgeegvghwwwvxwfwwwwgvvwgUVvgggwvxwwwwxegvgwgwwxwgvwgvvvvgwwwgVtfEvewxwuwgwgwvvwfghwvvgwggftwgGVvwwfggvwvvfxvugWgwguwgvVgwwwwhwvvWwgxgwgvwweVvghwfwvfgvwwwfEwhVdewwwgwfwvfgvgwgwwfgxwxgwwxxvxwgwwxwwxwgvhwhvxwwwxvvewwWfgxwwghwwwgwvwwwgvfxgvgwVwvvgevwvwwwwwxwwwwwwxwwvwwgvvvwfgvvWfuffffvvfvwvgvwwwgwwxxwwggvugfvvfvgwvvweVwwwwwgwwffvgwwwwwwwwwwwwvgvwwvhwvvwwxwwwfgffwwwvgwwwwwvfVgwvwwggweVwwwvwwvvwwxwwwgwvhvvgvgwwvgwwwwwxeVxwxwwwwxvvfWwuwwgwwvgwwwwvgwxwwxwggvwgwwwwwfwwwxwggwfWwwxwxxwxvwwwgffwgfvwVVwhwwfwgVeuxwfwxwwwxwwwwwgwVVwvwfwvgVevxfvwwgfggfxgwwgvfwwvvgfgwvwwwwwgvxwvwwwwwgfwfgVugfffvwgvVVwwfffwwxwwwwgVevwvvxxvxwwwwwwxgxwhvxwwwwxwwwwwwwwvwvfwwvwfwvwxwwggvfvxwwwwggwwggwfwwgwwfgxwwfgxwwwgfvgwwwvwggvefgWgevwvVEDffwwuwwgfwwwwvvwwggvwuffgfvfVgfwvuwgwfvvfvwgwffggwwvffwwuwwvwwwvfggvevwvvgfffwwwgwffgvVgffgwvvgguffevwfwgfwwwwEDvVVwwugwwfvwwvggwgvvwwgwgvfffgWwggggggwwwwvfvwgfvfvffguegVwxvvufVwwfwwvwggvvffgwgvvxggwWwwvvvwwwxghfwwWwxvwwgvwwvvgVdwffvffwwvgefEuwwvxwgwggwwwwwwwgwfgvegggvwffgvgfvwwvggwvxwfwVvgxwwgvwgvwggewwgxwgwwwwfgVfweFfUwweVuwfvgfvwgvgevdwgvffeuxvgWfgeugvxvghvWxwwwwwvxwwwwwwgwvwwfwWxxwxwwWftwgeVgvfgwvvvwwvwwwwwwwwwvggwWUvTwwwwwWwuhwwxvwvwwvwwxwwxwxwwvwffvgffvdfvfVuvfU3gwfvwwfgfwwwffffwwdfgvfVufffUfvffgfffffvwwwwfffggfffxwwgffwwwhffwgffffwffUxwgvffvwgfffvfxwggfUgfV5sfffffgfxwgfUgwwvfGwfwgfwWwwffwfgwffgfvfwwwwffgffwfxwwvffwfUwwgVufgvwUwfvfGffgffxwgwvwgfffvfffvwwvgvwgfvgvwwvwwwffvgwwwgfggfUvTDwVUffufuggvwwwuxwgwggwwvwwwwgfVugVggeUuggvWeuvfVUwvfgvuvfgvfgwgvggwgwhfvvfVvUVgfvwuwgfgfVvfxwfgvxwfGEdfVfVveVgfuwvggffufgggwgxfVwvfgffvvgwvgvvfwWwfWeuwvggvfvggxxwffgfuwgffgvfgguwvghgffWfuggwwfVvgwvfffvwwvvxwwWwvfwwxwwvgxwgfhWwwwVvgffwwVfVuwwwfwvwggwgvwwfegwxhxwvwvUfffwfggwwwfeVwgvwwwxggfgVwvwwgxwxwwxfvwgvwwgfwvwwwxwwewgfggvgfwwwwweeVwwvgvgwgfUwwwgfwfwwwgwvvwgwwvwgxxwgwgwxwxwxgwgwgwwwxxwefffwugwwgfUvgwwwwfwwwwweVegvfvwwvwxwwwxxfuwfvwwwwxxwwwwffgwgvgeewwvvfvwvgfvhfvwggxxwxvvwwwggwUUvfxfvwgfwvggvgfffgvfxwvwwvwvwvwgvwwvwfgxvvwggxwggwgggfwgfwfxwvwwgwvwgvffwffUfwwwwwvvxwwwwwwwwwfxwfvwggfvxwvggwgwvfxxwwwwwggwxwvwgggvffwgfUehwxwgwvwggwvwxwwwgwwgfgwwfvgwffffwgwgxwwfwwwwvwwgvugVuvww6VUewwwfTwwggguuwgfwffwwfwgwgwv6UuegwgfVwvwggtffdeeuvwgwffwwwwwewgfwhvwVwfuxxggVxxwwgVfgfxgvfwwvfgVTsvWWVuwwwxwwfvfFxwwvWfffwwwgWwguvwegvwvwhwwgxwgwgxwwvvwfVuvUgVufgxwwwwvfFgwffeugggffdvWfhfvwwxwgwwwgwxgwwwWuvfVWgVWgvwwwvwxfvwwfvwwhwwxwwvxWWffffgwwvgvfwvefvwffFwwwvwgvvvwwxgwwxwwwfwwwgxwwwwwvxgVgVvwfwwggwxwgdUuwwfVwwfvwggvvwvwwxxxwhgggvwgwwwwxxwvvwwwgwwvwwwxxwwvxxxhfeewVfUvwvwvgvwwvwwwwvwXwffVwwgwWwfwwgxwgxwwxxxwwxwxgfwWffwwwwfvfwvUfgVvxxfvwwwwwwwwwvwwffvwwUegfvxxwhvwwwwwwffwgvffwwgfffwwghvfwwwfvwvgffwufvwwggffegffhwvwfvwewwwffffggfwggeUfwfwwwwwxggfvfxwwgfwwwwwwwwwgfghwwwwgfugfvwwffwfwwfwwgUeUwgxwwvwvwwhgffwuwwwwgffwxfffvxffuwwwvwVeuggwwffvffffVVuvvwwxxxxgwwwwwwwfgfvfgfvffvfgvhwwwwwwwgvfvwggggvvggwgvwwwfvwwwwwgwwwfvggvvggweVfeUfugfvwwwwffgvffgfvwgWfufffWfVfufwxwwwvggvgvvwwwwwwwwwwwwwwvwwwvgwvhwwwwggfgwwgvWevwwggWeuvffgfwvvwwwwwwvwfwwvgfgwggWwuxvwxgVvewwvgvhwwwvffwgwfffvffggfvffwgwxwxvvfwwgwwxwwgfvfgfffwwwwwwwwwxwhfgggwwvgfwwwwwxxwgwgxxvvwwxwxxwgvwfwffggfgwvvfwwwwwwwgffgfwwwfgwwwwwvwwwxwwwwwwwwwwxwxhwwgwxwfgwwxxwwwvvvwwwxgffgwvgfwwvwwwwwwvwwwwwwwxxwgvwwwwfwwhgfwwwwwwgvffuhwfgfUwwgeVfwgwwwwxxwxwwxgxwvwfUwwgfVfvgxwvwvgwgvwvwgvxwgwvwguxwvwwvxwwwfxwgvwgvgwVgwVwgeftgfuvgvwwgwvWwgeVugfuwwwgfVfuwxwhwgxxwgvwwwwxwwwwxvxxxwxwwwhwwvwvwfwwgwwvfuwwvgvwwvfguwxwVwwgwxwvWwvwfwwwwvfwgwvfwwgfgfxgfffggvwWvvFfffgwwwggwggwgvvwwwwgwxvvvwWfwFgffWwwwwwwfwvwxwWVVgWwwvffwwwwxvfvggfwvwwwwfwgwwgfvwfwwgfgvgxvffgvefgwvwwWfVvwwwwfEwvggvfxwvvwgfwvwgwgwwfvgwwwwwxgggwgxxvwgwwfwwwxewgevfwgwgfUvgwwgfEwgvgvfwvffwvwwgwfvwvgxfhfuwwwwwwxwwwxwfgfvuwvgwGVegVuwwvxwxwwwwwxwwwgxwGffvwhfvxwufwfxxwufgfvwggvwwxgwwxvvwvxxgffggvwwWWwgUfVuwgfuwwwegwwfWxwefFEdfeuwvwwgVfwwxxgwfgwvwvwxvwgvwgwxxwwxewvwvfxwwuwVfefeegvwwgVfuwwwxeVwggwwvgwfUwgggvfwwwvgxwwxwwwfvvgfggVugVuwfffwfWwwwwxwwxwwwwfxxwffVvvgvgffUwvwwwfwwgVvwvfwfwwffxwwxwgxxwwwwwwwwxwwwfwwxwwgvgvwxgwUwwwwfwwgvgffvgwvwfwxggfwgxwgvwwwwwwwwwwwxwwxwwwgfxwwwfwxwfxwwwwwwgwvfffgvvwfwfwwwvewwgwwgwgwgvgwwwwwvwwwfvvwwgwwwxwvwvxwwwwvwgvegfVfgfwwufgfwwwwvwwwwxgwwfwvwvxgVfgfvgvvfwuwwgvfvgfWwwwwgvvxhVuwwwwgwwwvgwgwvwwxvwvfwwwWwfwgvwwgvgwwfwVwfeVwwwfwfgwwgfwwvwwhwwwgwxwwwwwxvwwwwwgxgwwwwxwxwwhvgvvfggeVwwfvwwgvxgffvwwwgwxgwwggwwffwgwwwwwfgwvwwwwwxwxxwwVgwgvggufgvvfwgwvVwxwgwwwwgfwfgvvgvwwfwvwhvVwwggxwwwwgxwfwwvgxwgxwgwwvwxwwfvvwfwguwhvfxwgWvfwwgwgfwwwVwfgwxgxwwxwxwwwwxvfxxxxwhwwwxwgwgwwvghwvwwvfxgwwwwwgxwwwwwvgguwhvgwwwwxhwwwhxwwvwvfgxvgwxfvwwwwwhvvwwgwwwwwwwwwwwwvwwvvwwwwgwwvvggwvvvwwxwwwwwwwwwwgvgwwgfwwwwwxwwffwwwwvwvwvwfwwxwwxwwgwwwwgxxwxxwwgvvxwwwwwwwwwgggwgwwwxwxwwwwwwggwwwgggvwgwvgwwxwwwwwfwwwwwwwxwwvvwwwwwxxwxwxwwwvgxvwgxwxxfgwwwwwhwfffwfUegfvwgfVUevgegggvUfwwwwgvgffefvwwxvvfgfgUffvufwxwwwgwgwwffvfgvgwegugwuvwwwwgVfxgewfvfffefvfghgfwwwWUefgvwwwwvvwwggwwffwwvwgevfggugwvwwwfgWuffffwuvfwgwwwwWwgwfgfgvvwffvvgffgvwwwwwwgwvgUvwwugvefufwvvgfwwwwwxxgfgwwwvvwwgvgwwgxwwwgwggwwvwvfwwvggvwwwvfgwwwwgwwgvvwxxwfwgwvwwwwxwxwwwgvfggxwwwxwwwgwgghwwwwwgxwwwwwwwvwwwggxwvwwgwwwwwwwwxwwwwwgwwvwwwxwwvvwwggwggwwwwwvwwwxwwwxwvvfwgwwwwwwwxwwwgwgwwwwwwggwwxwwwwghwwxwwwwwwvfhgwgwwvxxwwwwwwvvvwwwwwvwwwgwxffUUefddwwwwVUuwffffggffUUWUuwwwUUwwgwvwwwwffvwwUUfvgWwwwwwwwwgvveefggwwwwwfvfwwfeddwwwwVUuwwfffggvFFfgffddffWwwgffwwggvvgffffvwgwvgwggwwwwwgvwffvwwUUfvggwwwwggwwwWwweefgfwwwwfvgwwgvwwwgffvwgfvffgwwffgwxvwgwwwxXVfvwwxxvwggWVvvwwugwwwvwfgwwvgWfvfgfvvfvffgfUvfgvvfWeuwweUVggfvvgwwwffeUVvgfwfWfwgfvwwxwfwfvewggfwwgWwwgwvvgvWfewuVvffgwfvwVvvwvgvffgfuwwgwwggvvfxwvggfvwwgvvwggfvVwwvgfgveVfvfggWwfWvuwwwxfuwgfuxgWwvwwgvfgwwfghvvvfwwvvwgguxgWwwwvWwvgvwwwvgwwvwwwwvxxwxwwfggvwwvwgwvwvwvwwgWfvgVffvvgvgWVfvfwwvwwgvfwvxwgffewwwxwvuWwgffefvvwwgvfwwwwxwxgffvwvvvvwwwxvxxWvufvggWfffugvvwwwfgwWgffvwwgwxfvwgxwwxwgeevwggwvgwvxvvwvgwVVfeewvwwvxvvwwwxheVvvffwwwwwwwxwvvggwwxxwhffvwvwwvvwwwwxggfwwvvwxwxxhwwvwwvwhwwwxxwvwwggvwgwwvvxwvxwwwwwwvvgwvwwwxwwwwwwwvwgvfwwwwwwwwgwwggwwwvvgwgxxwwwgwvxwwwwwwgwfhwwwwwxwvggwxwfwgvwvgwwwxwwwwwwwwwgvwxwwwwwwwwvwwxwwwxwwwggvxwfwxwwwwwwwggwwwffhwwwvvxwgwxwwgwwhvgxwxwwwwwgwxwwxwgvgxwwwgwwwxwvhxwwxwwvxXvuffuufvGVefwwxeevwvuegWgwggwgefwwwwVWffxwxUfxfwwefwFfewffgwfgwwvwfwfwwwvtvgWgVfxxwUVwgwvGvfwxwgfewwwvwwVevvgvgwwwwxxwwfvwwWWfVwwxdVgvvvvfVVvwwuwfffwwwvgevvwwvwwWeuwgfgwwfwxwvwVffxwwfvgwwwxgwgfwgwwwwgwwwwxgwwwfvfgfeffgffwWfvfggvvwxguWvgwvvWvvwwWggvwWguwfeggvggwgwwefwwwwwvwWfvwwgxxgwwheVwfgvvffvfwVwgvwWgvwffwgwgvvwwwffgwwfwwwvwgvwwwwwwwxwwwwxWgvgfvfVwgfvwwwewvwvwwfwgfvwxwwxxgwwhVvwvxvvwwvwgwfwwwwwxxfwwgwefwwvwwwwwwwwxgvwxxxhvgVUwfVevvfggggfVevWgvwfewefvfvwwVUwgwwvfwwgfVufffVwwwwvwgefgvwxwwwggWegWgvWgvgvgffvevwvfwffVUwVfwfevwwwgvffwgwwgwffgegwuwwwwfwgfwggwWgwwgfewVvfvffvfggwwwwwevwuvxwvvgwffwfwwffwgwwwgfgffgfvxwwgWwfvvgwvfwwgwwwfvwgvfwwwvvgwwwxwxwvwwwwvwwwwvgefddfVUuvUUwwwgfvwggfgfeddgffvFFfffdtwWwvUUwgvgfvwggfggffffffwfwwvwwwwfwfvwgwxgwwgfVUuvffwwwWUewvgfvwwwUUwwWUuvgWwwgVVwwffvwwwwwwwvvgfvwwwwwvffwwwWUuwwgffgvfffwgwwvgfvwwxggfvgvwggwwgwvVVVwwvfvwwwwwwwwwwffvwwxwwVVxxwwvVVgwuwvvwwxxwgvggwwvwwgghfegfguWvfwvVwugVvgvvwwfeVwfgfWwvggvgwwwwfffVgvgfgWwwwwvggfvwwgwggWvgwxwwwvvwxwfvfgVffgvfwgfggwwWwufwvvggwwwgvuwwfevhwwwgfwwwxwwwwwxwfvugwvfgffwwgvfgvvfwwwwwwgfwwwxwwwwwwwwxwugwffvwgwwwfwwxxgwwwxwfevvwwwwwgwgwxxwwwwxwxwxfwfVuvgfegffwwfgwvVewfevgffwffwfewwwgvwwfwffgfehguffgvvgfvwwgfvggwwwfffvxvwguwvvggvWVegfUvvfxvfgvgvUveUwgfhgvwwwwvfVvxwvUwfWwwwwgwvvxwgwvggugVveUvgvwgffffwuvVxwvfwvWwgwfvwvuwgwwvgwvwggWvwgfffvgwwwwwgwxwwvfwwvgwvfwfwwfxwwwgwwgwvwwgvwwgwgxwwwwwWedgvedWvEffVwfgffwwwwUefgfvfGuufeVwwvUfvFwegfVvxvvdgvUfewwwxgffwwwwwfwwwwxwduggUffVwvfVewwwwwVffWffwfexwwwuwwfVvwwwwwfvwwxwwwwwwxwwwTVwUgvgffwwwwwefveffwvwxgVuwxwwwvvfwfwxxxwefvfgfwwwwggewwwwwvwgwgwxwxevfwwwwxwwwwvwxwwgwwwwxxwxwwwweudggdevWWvvVUfvwgfvwwgdUvWffgWVfvwhvvwxWWfwFffvgfvwwwevvxwwwwvwgevwwwwwwwwwwWeegVGvgVffvwwWuwwGeuvffUvwgvvgUufwfgwwwuvffvffwgvxwwwwxGWewVfevxfgfwgeegwwfgwwwvwvfvwfwwxwwwwwwhdffwwfwwwufgVuwwwwwwwwxWgwvfwwwwgxwwxwwwwwwwgwwxwxwXuvgetvgvWeEvwxxfewggvuvffVfVvwwwwvwvxwwWfUuxwefwgwvfgvVVffvvfuwwwxwwfvVwwwxwuuvfWfVuwhfewgwgFWffxwxvgwwxwxwwvfUevgefvwwxwxxwwggfxxwwGVVfwxfUwxwgvwveEvffvgfgvwxwwwfggfxxwwvwwfVuwwvvvwgxwwwgwfxwvgwgwwvwgvvvvwwwwgwwwxxwwwUVufVGvvfUffvwwtUwgvwwGVfwfFVeVwwfwvvuggUeVvwwefvvvwwWfgWffuVfwfvfwwwggvwwwwwGVfweEVfvxvuffwugvUeffwxfgfgwwgvgWfvegfwwvgwwwggvwwwwwwgTffvweffwvwwWfvGVeffwwwvgwwwxgwvwwwwgwwWefvfwwwwwxwwwxwwwwwwxwxWwwvwwwwgfvwwwwwwxwvxxwwwxwwwxwhewgVevwfefffwguggggwwweffgufffvwvwxwgwvvfeewfvwwvgwvwfVVvwvwfwgwwfxgwgwxwgwwxfwvgefVegwuwgwfwgffVfwwwwwwgffUwvvwfggvwwwxwgxwwxxfeVfgvvwgwWxgfffwwvgvgwwggwgwwxxwwwxvffvwvfvfwvwgwwwwwxvwxwwwwvfvwgwwvwhgwgwvwxxxwxxfwwvwwvwgwwggwwwwwgfwvvwhxgwgwwvwwwwgwxwwwwwvvwvxwwwwwwwwwwwwwwfwwwwwgvwgwwgvxxwgfwwwwwfwwwwwwwwwwwwgwxvwwwwgfvwxwvwwwgwwwwwvgwwwwwxwwfvwwwwwwwwwxwwgwxwvwwwxfvwwwwwggwggwwwwwwwvxwwwfwwwggxxxxwgfwwwxxwwwwwgxwvwwwhfegfwfgvgvvWwugefgfvxweVgwwgvvWffgwwvgvvggvWUfWvwwwxxvvwvvxwgfwgwxffwgwwxwxvefwwvwgwfgVVfgwgwhvwhwwgefwwvxwvxwvvwvwxvxfgwwwwfffgwwwgvvfwvVffVwwwwvxwvvgvgvggwgxwwVVwwfwwxwxvvvwwxwggwwUfvgfvwxwvwxvwgwwhvvwgvwxwgwwvuuufvveewxwVVfwgUvwfwvdvghwxGwfwwgfuwwwxxWVfwWdfvgwwwwwgwvwWUfvfgwwhfVvwwveffwxGVewgeuvwgwwWgwvvgevwgfvwgxgwwxwufWdfvfgfwwxffwwxxWfVvWUvvgwvgwwwwvwgUvvfwwxhwfwwvwggxfwwxwfvfeugWgfvwwhveggwgwwgwgwvwwxgvwwvgvwwwwwwhwVwefVguvvWgffVgvfvwwwgffvwwwweWgvvvvgwgvvfgvWgvvvfgwggwwwwxgxXwvffwgwgvxxxwxwxfVvfwvgffgWwugewgwwvggvfVwvwfwwwgwwgwwwgvvgvggwwexwwggxwfggguffwfvfwxwgvwwwwWwwfewgwvfxwwwwxfwwwwwwwwgwfwfwwwvfxwwwwwwvgwwwxxwwhVvwwwvvxweetWfUefgggUfvtWVfvvvxdeggvwVgfufffuwggwwTUwufgfvwwgvvgwwgwwuffvvwwgguwwwggwxgetgfgxwEffugffvwwgewwfwfdWWevvhuvgwwvgxwtgVevwwhfvwwwwwwhgwwUffeggVuwwwvwwxwwwwuwgfuwwwfwwwwwwgevgwggwwufffvwwxVuwwwffwwXgwwwwxwgxxwwwxfvwxwwvwwwwwwxwXGgwfWgffwwUVuxVfgwvWWfgwwgdefxwfwwvwwdeexeVwwgwwwxwwxhwweVwvfvwgvvxWgvVuwweVtxxfVgwfvwwfefuwwwgwwfffwvfwwgwfVVgufwwwwwguxvwUfuwfVwvvggvwxwwxxxwgeUffewwwgvfwwWvfwfwwxgwgfEgfvwfwwgvfwxvwfwvwwwwxwwxwvwwvggvwxgwxwfwvgfweVgWwegwvvfgUvwgvufggwwhxwvwgewvgWgugvvfggfvwwwvwgxwVewhwxggwwwgxfvxgfegfgvfgwvuWgevgVwvwwvggfvvwfggwvffxwwwxxgwwwfwwwxhgfvwwwvgVVvwwvvgwwwffwwxvxwgwffwwwwfwvfgweewgxvxwgwvvgwwwfwxwwvxxwfvxxxgwwwwvxxhwwgvwwvhefwVvfgfffvfwgfwWggwvveffgfewvwwfvfwgwwwWfvfvvfvfvgxwwvwwfwfvvwwgwwwwxwwvgwwwwwwxugvWfuffwweffwfwwwWvvvwwwgWggwvvvwgefvgwwwwwxwxwgwwgwwfegugwfggwWwwgfwwvgfwugvwwgxwggwwfwwwvwwefevvwwwhwwwwwwgxxwvwwxwhfuwgwwxxwwwxxwwfeufWVfvWgwxvwwvwwxxheewvwwwggvwwgwvxgWwwvwvwwxgugwwwwwwuwgvwxXVvgfgwwuwvwwwxxvfwwwwwgvwwwXvwWgvwvwxwwwxwhgxwvwwwwwwhugwwwwuwwgwwxXvwWvgwvwxwxwwwhgvfwvgwwxxwfwxwxixgwwVUewwxgggfvUvfWgxggwwxwwwwxvfwffgfwffVVUwwwwwwwwwfwfgwwwggffwgwwWffwxwwxwgvwWwwffwgfgffUeVVfxwwwgfwwvwwwvvfwwgvwgwWVvwwwwxvwwwweffwvwwwwwwwxxwwhxwxfwwugwfwhvgvvwwwgvgfffffwwVfeefwxwwwxwwxvwgwwwwwvvwwwvvhwwwwwgVUuwwwwffgffwggfvwwxwwwxwwwwxxxwwwggfvffVfVuxwxwxwwwvvfgfwgvwvwwgwwvwwggvwwwwxwwgwvwwffgvfgeuwfffvwwwvwwwvwwggfwwwxwgffvhwgvwwgwxfxgwvwgwgwxvwxgggwwwxwwwwwwgvwgfwgwvvfgvwgvfgfffVvwfgvvwxwwwwwxwwwwgwvvvwgwgvggwvwwwvwgfDUwwwggvgfwfwfgwgvgwxwvgxxwwwwgfvffffwvwwwwwwwwxwxhwwUfvwwvwvwwvxwwfUfxwwwwwfwwwwWefgfgDUfvfffwwwwwgvwwgfwffggfwvgwvwwwfwxwwWevwwgwvwwxxxxxgwfwvwwxxwxxwUfgvwwggggffgvfgffvvvvfggwwwwgfgggxwwgwXefwwwwwxgwfwxfwxwuVUugffwffwwggvffwwwwwwxxwxxgxfvvvfwgfggUVuwwwwgvfxwvwgvwxwwwwvwvwwuVfuxwwwvxxwhwfvfgvefVeggffvUfwgvwwvgwwwgfwvfvvxwwwwgwvgwwwwwvVwwwggfgxwwwwwxgwfwwvwwxggwggwwwWvggffgfUVuwwfwvfgfgwwwwwgvgxxwwwwwwwgwwwwvxxwwwggfgvUdeVfeVfgfWeevvfgwfffwwvvhvvvwwwgwvVgwVfffUVvweeffgwgfgwwwgffffwwwwvggvvwwgvVeegwgwguegfvuwewwUfgFWeVUVfwfvwVfefVgwgwwgVegwwwwfefwwvwwfVwVVvfeVfwvvwwvwvwWwWuwWVvuwVwwfwfwfwwwufffvfwggvWTEfweefefVvffvvgwfefwvwvwwgvwxfhvwfgvwwxwxgwvfwwxvwvwgeVfwwwwfffvwhwwwwwvwwwxwwwxwhxvwVeVvwgffgwwwwwwxwxvwgwgwwwwwxxwwxxwuVvvwwxgwwwwwgwwwggvwUeUfgWgvfwwffwwwwwwxffgfvvvwwwwfwwwxwwwVeVwxhwvgxwwxwwgwwwwwwxwxfvvwwvgwwefVVefwfwwwwxfwwwwwfvvwwwwwwwwvwwwxggwwwwxxhwwgvvvffwVUeggwUUwwgwwvvvwwwvwwwxgwwfxwgWUugggUUvwgwwvvvfgfggvwwwwvgwwwwfwfwwwgffwgfvgxwffwfxwgffvwwwffwwgvvvwgfvwwvvwvgwxwwgwwvxvwffvgggffwvgwwwwvwwgwwvvvwxwvwwwwxxwwffgfgggvgwvvwwwwfffwfgvwwvwwghxwwwwgwwgvwgghwwwxhgvwvxxgvwvwgVUfuwvggwwffffwwwgffwwgwwwwwwwwxgeffeewVfVwfvgwfwgeVfwwwwfwgwwhwwvhwwwwgWfgvgwvwwwwwwwhUefvfweffvffwwwwgwvffwwwwwwwwgwvwwwwwwwgvwwvwwVwfgvwwwwwxvgwwgxgxxwhwwxwwwxWVvWvgfffwwffvwwfwWgfwwwfgwhwwvwxxwwgxgwwxvwxwwwxgvxwggwwfgUUvwwvfwvwwvgwvwwxwwxwvxwwxvgwfWfwwvwwvwgvwhffwwgxwwxvgwvwwxwvxgwffwwwwgwvwxxwwffffWeuvgffwfggvfwwgwvfwvvgwgwwwwxwxxwvgvvgfvwxvgwwwxwwwwwwxwwxwwxxxveVggfvvfvvvfwwwvwvgwfgwvwwvgvfwvwwwwwwwxxwwgwwwwwgxxxfwggfDvgfegvwwwUwwfuwwwvxxwhxwxwvwwffgxguwwvefeFtwwwwwvwwwwwfwwfwwwgwWuxfwgexxfxwwgwwvvfFfwwwwUwfgffxgwwwweggfwwxwxwfwwwwwwwfwffwhwxwwwggWwwwxwwwwxxhwxwxwwgwfwvwewwgwfefdxfwwgwfwgvWuvgfvfxwfvwgvwgxxwgvWwgwxwxwwwwwfwwxXgfggfeVfgvvgwvWVfwvwgvfeffvfwgwwggvgwxWfefgfgUVffugvvfwvfgggwvggggxvxgwwgvvxwxeefgffvggvggwgfwxwWfvfwvVVegvwwvffweefggwwggvxvwwxgfwgvwxgwwVVffffgVVwwwwwvvwvfgvwwvgvwhxwvwwgwhwufgeUfvgwvggfggwwwfffgfwwwwwveggwwvgwvwwvxvwwggxgwwxvvvwgfeUuwwwfggvwwevwvguewwwwgwwwhwfwVVefvfefvgvwwwwwwxvwheuwvwwxhgwwufffgwwwgvwxwwXVVgfVfvfwfwgvgvffwwgfwgwwvwvvwwwvwxwfhggvggvwwhfvwgwwwwxwwwxwhvvwwwwxxwXueVvwffvwvfffvvwwgufwwgwfwwwwfvwgwwwwxvxgwxwvwwwXfgwveffUgfffwgfgfvfwgwVfvfwvwxvvgwwxwxxwVffVfggffffgwvffwgVuwwvgggvgfxwwwvwwwxxxefwewvgwwfggwwvxxxefVfwffffwwwvgvvfvgwfwwwwfgwxwwwvwgxxwwwefgfwWgwwwvgxgggvvgvgwwwwgwxvxhwwvwwwxxxxevefgvfvvwffewwgwvvfwwgwwwvgwfvgwgwwxxxfwvwwwufvgWTufVVwwefwdfgfwwwffwwvxWwwwwwwXUfvDffUvVewwwgfvgfvggwweuwuvwwfwwwwwwwxgeuwgfwwfwvvgwgwGUefefUegffvgwWefFfvffwwwuffvwwwWuwwwwwggwwfvgvgggwwwgvwxwxwwwwgwwxwxwwwwxGdfVefUfwwwefeVuwwgfvfwwffwWVwfwwwwggwxwwwwwgfxgvwvxwwwwwxxwxgwww5gVVufgfeUewwgVwfwgwwwwwwwwwwxwwxxwwuvwvTetwwffvdegwVwwwwhxwwwWfwfexxwvwhvFgegggvggfvgwgvvwsFfEfUevgwfgwwfVevgfevwfgegfwwwwggwwwwwvgwfeVtggvgwuvvfwhwvxwvhwggggwffvgwfvvxFU5wwgffGVVffffgwVwfwufwfwxvwwgfufVuxwxgxfwwwgfuwwwxgwvwwgGfeUfVfdfwgffvVvwvfwvfvwwwxwwwhUVUgwvvggggVfuvggfwgeggvwxxwwwwxwwwwwwWgffvwwvgvvwgwvfwVFVewwwvfWfuwwwefffvfewhgvwwwvwwggvwwwwhffUwgvffggvgwvvfwwwgfwwwggggwghvwvwgfVWWfUDfgfvgwgvgwvgvwvfVfwwxwwfwgggfwhwggfwwwxxxwxwwwxwhvwwgduffVfVewwwggwwxwgvwwgwwvwwwwwxxwUVeTwvgeVwgfwgfggvvwgfggvwwwxwwwgwvwwwxwtuvgvvfvxwwwgwwxwUfUuwgffVwwwwwvwfffvgvwvvwgwwwxwwwwwwUVfdwwwvVwwwgggwwwwfghvwwwxwwwwwwufgfVufefgvwwxxwwwwWwwwwwxwvvvvvwxwfvggfwwwwwwxwwxwwwwVfwWfvvWefgffwvwwwwxxggfwggwwvwwvwxhVggfwwvwwwwwwgvwWwwwwwwwvwwwwwwwxXfvwgfwvfwxwwxwWVffvvwvfgwwwgufgvgwvwwvvwwxwwwwxwxhVwvfwwvwgwwxgwhwwwwwwwwwxXvvWgffgwwvvwwxwwwwwwxgwvgvxxwwvwxwwwwwxxxxwwwvgWUewwwwwffwvgfggfwgwvwwxxwwwxwxvwvvfgwfffwgwxxwgfwwvwwwwgfwgwwwwwwgfxwgffxwwwwgvhwufffffVeUUwWfwwwwwfwvwgvwwxwgvwggwggwwwvwwfwfvgvvgwwwwxhwxxwwxwghxxwgvuVfVwveffvwwwgwffwWfgggvgwwwvwwwgfvvwwvwwfwvwwgvxxvvwxvvwgwFTefgwweVfuVgUvvuwwuwwwwxxxwwwwwwxfgwVgwtgVdeWevwgwwgwxxuvgfvwwwfvwwggfwwwfefvvfwggwwfwvgwvgVgwffvTVUTfwvgvvgwwffwhweffevxghVvvwvfwwWWvgfvfvgeugfgvgfwWvhwwxfgvfwfwggggwwvfgwgUfvfvuWgfvvuWTdWeffVvwgwwgwxwwwxvfgwgfxwwvgvwwvffwwwwXhgfggVVVwvfVTdggVVvwvhgvwxvwwwxfgwwwwwwfeugwEEwwfxwwxwwvvwxwwfWwwwggwvwvxxfwfVwwgewxggwwwfffffffgfVVffuwgwwxwwvwggVVwfvwgwwwwwvwwwwwwfvvwwVVwvvxwwwwwwxwwggwwwwwwwvxggwwgffwvgVVfgvffggwwvwfugwwwwvvwwwwwxwvwwwvvwwgggwwwwwwwwwvwvwWedVwWxwWgfvwwfvwwvwwxxwgwxxwXgvgWfefgWVevvvuwwwwvgxxwwwgwxwgvxwwwgfdgvgwwgwwvwxfgGfufvfugWFuvvwvwwwwwuxgxvwWVuvgvWxvvhgvvFffwwWVuwwwvwxwwfxxxvwxfvwwxwwwwtfwwweVgwwvgfFvwffgguguxwwwfvhwwwwxxwxhxguxwgwgwgwhgwwwGUeFwwwgffewgfWgvfgfwwwwxvwxvxvgwfduUvgeVwwewwwwwwwhwweFwwugwgvfxVgwVwwwgfwvwgwgwwweffFfgVgVffgevgwgwgwwvwwgvVfgwvwfVgvfxvwwxwwwgevfwfvfwvwwwxwwxxwwwwWwvwgxwwwwxVggvgggvwgGvVfVwvvfVwwewvvwwwgwvwgwgxwwwwvvwWwgwxfgwvvvxgeevggwVfvvwwfwwwwwvwxgwwwxggVffvwgwvwxwwxwxvwwgwwwwwwwwwwwevggwwVgvxwwwgVvweuvewgWvwwgfwgxwwxxufWfwvwgwvwwwxwxhgwxfgwvwgwxxwwwwxvxxgwwxwxwuwfwwvgwxeffWwwwggvwxwvwwwhxwvwxwwxwxxwwfwxwwwwwwwwwwxxxwugUTvuwwgvwwwfwwwwxxwwwwxwxwuegvvgvwwwVwwfgwwwwwwwwwxfewwwxwwgxwwfUwwwwwxwvxwvVUtwgwfUgfwgWwwfwwgvwwwwwwxgwvwxwwWwwwwwwwwwwffwwvwwwxwwfxwxwxggwfwwgWvwgvwwwfwgWffwwvwgWwwwgfuwwwwwxwwwvxwgvxwxxwwxfgwgVvvgfwwfwwvwwwwwXffvggxwvxwwwwhUfwfwfwwwwwhvxgwgvgwxwwwwxxwwwxwgVuvgfwwfvwwwwhVwfvwwffwwwwwhvwhfwwwwvwwxxwwwwwwgegwewwegvwwgwgwgwwxxvwvxwxwWuvWffvfgwwvvwwwwhgwvwwwwhwwwwvwwwxwxxxwgxwxwwwxwwhfgwvvvwwvwwwwxgwwwxxxvfwvvwgxvwwwgwwhwhwgxwwwvgwwwxxxwwvvwfgggwwvvwwgwwxwxvvxwwwwwwwvwgwwwgwwxwywwwwwwfwwwhwwwxgwwvvwwwgwwggxxxgxwxwxxwxxxwxwvxggvxxwxwwwhwwwgffwfWfwwffwwffwgfVggwwhfvwWUVxwwwwwvvfggwwhfvgwVUVvgwgeuwgwwwwwfvwgfvwwxwwxwwwwvwxxxwwwwwgfvwwwggvwvfxwvwgfwWUVhgwwwwwvffxvwxwvwgVUVvfggfuxwweVxgvgwwxgfggwfffvvggffwwwwwwwwfffgwwwgwwfffwwwvvfvfUVwvvwwffwwwxwwwwggwwvwgwwgfwwwwwwffvvwwwwwxwwfgvgvvgwwwwwwwwwwwggwwvwgffvfwvwgwxwwwwxwwwwffwwwwwxxxwwwxwwwwxxxwwwwvwgwwwwwwwwwwvvwwwggwxwwwwwxwwwxwwggvfgwwwwwwwwwxwwwwwwfwwwwwvwgvfgwwwwwwwwwwwwwwwwwhffgwvwxwggvvwwwwwwvwvwxwgvwWfwvgfwwwfgwwvffgvwwwfggvfEEgvxwxvvfwwvvgEEwwwxwWfffvwgvwvwwgxgwgWfvfwxxvwwxwxwwvwwvvxwwwwwggwxxwvvwwvgxwwwfEEvxwxwwwwxgvxgEEvwwgxgWffvvhwwwwxgeegwfgfggvfWwwwwfwvwwffuxwvvfwvvgvwwfeuwvfffwvvxwwwggWvgwwvuwwhxgwwwwfvffWWgvgvvwwffuwwfWwwwwgvgVVuwweUfvfwvgwwggvvgwwffeVeewfgwvVfUwvwwvuwxggwwvufvWgwWwggwvvwgwhwwwggvfwuwwwwgfwwvfwgXggwvwwwwVgvwfvfgegwvfxwxwwxwwvefefgfwwggfVwvgufgwgwvVwfvfvvwvgvfffggfgwvfwgWvVwvxxfwuhgfffwvvwfggfvvgwWvwwggvwwwvwwhwvgwwvwwggffgvvwwgvfWvgfvvggvvgfggguwWgvhwvwfvxwvfgfugWfvwvggvghwwwwwwvwgwvfwwwwfgxwxxwwxwxwwwwwvwwwwxwhwvxwgwxwwgwwgwvfggvwggfvgwvwwwwwggvwfWvvgvfwwgvgvwhgffvfwwwvwwgwvwgWwvwwwwwfVwvegwfxwwfxhwgvefxxwwvwwvwVfufgwwvwwwxgWfefgugwvwfgvgwggfvfvgvgwvvfgwgGUdfgvgwwveVwwgwvvwgTEwwfvfegwvvwvwxwevwVWwwgWfuvVvgwvwwxwggwwwxwwwwwgwWwwwwwvfvwgwvvgwvguwwvwwggvvvgeVwvwfeVvxgwvwxwfffffvfeVwgwwvwwwuggwwxwwvgvggugvgwwwwwWwvwwgwVwwxxwgxwgwfVgvwwwgwVwwgxwgwgwvwxxvwvgxwwxwwwwfgVwgffwvVwwwgwvgwggvveWwwwwuxfUVugwwwgegVeUgwwfwvxvggufwvVvwxwgwgxwwwxwxvgwvwwwwxxwwwxwxwwvwgvfwxwwwwwwwgxwgfwwfvgxwvxgUVwgvwgwgVeUwxwxwfwvxwgwvgwwffgwffwwgvgxxwxwvgwxwgwvfgvWvwvwwgvfwgwvWgvvfexxwwwwwwvxwwvwewvffwwhgwvxwweVwwwvvffgggfgwfffvwfwfWWfexwVVwxwwwveVVVfgfvgfffwwxvfefVwwwwwwhgwvxweVxwwwxwwxwwwxxwwgfvxwxvgvggwwxwgWfewgeVwwwvwvvggfvwgggveVwwwvffvfwwwwwvggffvvwwvgwxvgwvxxgfvwwgfVffewwvwwxwvhxgxwgwxgvgfvwxwwwffwvxwwwwwxgwfffxwwwffwwgfvwwwwffwwwwgwwwwwgfvwwffwwwwgwwwxwwwwxwwwwwwwxwgwwwwwgxwxwwvwwwxwwwwwwwwxwwwwwwwwwwxwwgxxxwwwwwxgwxwgxwwwwwgwwvvwwwxvgwwwwwwvgwvwwwxwgxwwwwwwwwwwvwwwwwwwxwxwxvwgwwwvwwwwwwwvwxxwwwwgvwxvwwxxwvxwxgfwggvwfwwwwwfggfgggVwwfwvvwwWVwgfwvfvwwggvWfgffwgvwwwfuwfwwgwgwvgfgggVfwgwxwfwfwwxwgfgwfxwvxwxwwwwwxwwwvwwwvxwxxxxwggwwwwvvwwghvgfwvVwwwwwfvwwxwfwggggwwwfVVwwgxwwvugvgfuxwwwwwgwwgvwggwwwvvvwwvvuuwwggeuwwxwwwwwwgfwwwfgwvfhwfvggfxwvfwwgffffvvvffwgggfuwfwffgVFvwwfetwwgWvwvvgfwWffTwvvwwwWvwefFuggwvwxxfvwgfxxwfwgfvwwwwwfwwwfwwwxwwggwwgvfwxgwvwwvgwwvvwvgfWxwgvuwgggvwwwgfwWwfUwvwxgwfgVhgwwvwwvggvgwvvhvwggwwwgwgvgwwwgfhwvfgfvvvwvfgfwwvvfxwwgfwfxwfvvfwwwgwgwvwwvwgwxxwwvfvffvwwfgvgffggwgfgwfgwvwgggwwwfvgwffwwxgvgggwwwvwgwvxvwgwwwhwxwvwxwxxxwwxwxwgwwxwwvwwgwwgwxxxwfwwvxvwwgwxvwwvgwvvwvwwgwvgxxvwwwgwvwwvwwvwgwgvwwwvwgwwwgwwvxwxwffvwwwvgfggwvwwwwfwgxwwwwgwvwfgwVeghwvvwVwwgvwwwgevgfewffwfewwvfvwwfwfVvwfxwvwggfugguwgwVgfgxgwwggguwwwwwwwwggggwvvUwwhwxggfvgxwwwwvwwwgwwfwwwvWwwxwwwwxgwvevwfwwvwgggvgguwgvfwfgwwwwggfvxwwwvggwwgxwffwwvvVwwgwvgwxgwfvwwwwvfffvfVwwwwgwvWwvwwvvfwwxwwwwwwxwwvuwfwvwwWwwfwwwggwwwwvftggfvfFfVTfVwWwwgFfgewwgvVwwwwudfVegvgvwwfWVxwwwugfwwfwvxwvvwgwwvwwwvfwwwwggwwwwwvwxxwwwffvwwwwwwfwwwwwvwwVgfUwvgfVwggwfugVffvwvwxffUxvgvfvfwwfxwgxuwggvuwvfgfwfwwvgwvuwxfVtwwfgfwevguwwwwwwgWxwwgwwvfvwffggffwwfvfvwfgxhuvwVgfUfgfwgvwvxwgwfwUgVgwvfvggeffwxffgwvufffuwgvwvwwwwhvgwffwgfgfvwvwxgvvfwwwwxfwwxgfffwgfwvwvwwwwwwxxwwXgvgffVgwwggwgffvwwvfwwwvwgfvwwfwwwwwhwwXvvfvwwfxwwvwegvvggwgxwwXgffUgwvwgxwwvwxwVwfwggxwwhuwfUuwwgffVuwxwwffxwgeefUUfVegffgefffwWFfVtwwvfUwgvvgfweeEuWefVdwexwwwgffwwgwwgwvwwwgfVuwxwwfgxxgwgwvxwwwxxwwwffVugvvwwxxxvxxgwegfvwgvfUwwvwgfgefVefvvguwfwwwgwfwwVwgwwwfgVugfwwwVxwwwfvwgxwwgfvxwwwfVefftvgvgwvwgxwxwwxgwvwVgwwwffWwwwvwvxxwXgggfVfggfgvvfeugwguffvwwwfvwggefVwffVwvfvwwwwxfuwgggXgwwwfffwwvwvxxwwvvwwxwwwwwxxwxgwffgwvwxxwxxhegVvwwwfvwwwwVugffVfUwwwvgvxwwwwvvwwwwwxxvgffWvgwvvwwwxwwwwwxxgffvwwwvVUvwggfvxwwwxxwwwgwhfwgfvwwwegedwwvfWwwgfwwVvwvvgguwggfwvfvUUcgwfwWwgwvgwU5wwfetgWvvWwwxvfgWvwvgxwwgwfegfdvgvgWxwgwwwxxxwwwgfwvvggWvwwwxxwvgwvgwxxgevuwwffFwwwvgvfWggfftwWvfFwwwvfgWxvwwxwvwgwwefffgwwwxxwxxwwxwgfewffguvvggvggfgwvgwxxwxxxwwgxwwxxwgwxgxwwwwgVfxfvexwxwwWwwwguvfvwgwxwfwfffVUvwwwgwwwfwvgvgffwvwwgVUffvxwwwvxwwxwwwgvxwwxwwwwxwgxxggwxwwwvwxgvwwwgxwfxwgxwggVUxgwwvwwvxwwwgvwwxwgVUvgwxgwgwffgvvwwwwwgfvwgvggwgxwfgwwwffwgwwxwfwggxfwffwffVghfgwwgwggvfhVVwwwwwfggxvwwwvgfgffwwvgwvfwwgEEwfwwvggfvfvvxgwVVwxwwwEEwgfwwwxxgwvggwvfhVVvgwwvxwwxwxhxwfwvvvwggwwxwwwwwvvwwxggeeggfgwwwfwggvffegxVVwxwggwwvwvxhxvvvwwwfwwwwggvvfwvwxwwgvwxwhfvwfggggvggwxxgggvwvwwwvfvwfvvwxwgggwgeuxwwvvfvhwwggvwwwfvwvvghwWVVwwgVuwwvwfwgvwxfvfUvwvwfgfUuwvvvfxwwhggwgeuwwgxwwwwwwgfvwgwvvxwggwvwgfwwwvxwwwwxgxgWVVwgvuwgwvgvwwwwwevwffvvxwgwVvvfvwxggxwvvfvfvxgwvvwwvwgwwwxwWwwgfxwvwvwwWfwwvVVxwvwuxwwxwwwwwwwwwwwwwwwwxwwgwwgwwwwwgwwwwgwwfvwwwvwwwwffwwgwvwxxxvwwffwggwwxwwxwwgwwwwxwwwwwxwwwwwwwwxxwwwwwxwwwwwwwxwwwwwwwwxwwwwxxwwwwwwwwgvwwffwwgxxxwwwwwggwffxwgwgwxvwwwhgwwwwgfwwfwvwwxwwffwwgxwwwwgfxvwwwwxwwwxffvxvwwwwxwwwwxvwvwuwwgvwvgxhgwwuwffvxxfuwwgvgWgwUfewvxhwgwgVvgvwfvuvhwuwgwvWwwefffvwwgfuvhwwwvwgvwvgxwgwwvwvgwxwxwvwwvwvwwwxwwgwwwvwwgvwwxgwxggwhvwwWffvgffvwgwvvgwwwwvfwffxwgfvwwwwgvgvwgwwfgwwuffgvwwgwuwwwfgwhwwfgxwwgwwwwwwxeVwwwwvfwwgwfxwwhhvfgxwgwxggftgwWvggvfwwgfgvwwwfwvgvvwUfuwwfFwvvgvfwhgxxwvffUfeVwfxwvvxwgwwgwxffftgwWfvwwvvgvwhgxggvWxwwxwxgvVffwvfwhgvwwwgfffwgfFwvvwvfxwxwhwvfffvvfwgfwvghwggWgwugxwwWvfgvvvWvvwxvwgfvggwwxxgxhvvvggWfufwgwgvwfwwgvwwwvgwfxvfwxgVuwwfwvgvhwfgwwfwvfwwwgfVwwfvwWEtvwfgvwwUDwwwvgvfwwgVwwwvgwgwfvfgfxwfwwgVwwvwwwwxwwwwwwwwwwwwvxwwggwwwgwwwwvgxwgwfgfUvwwgwwvfVuwwgfwwwwgvWwgVuwxwvgxwwwwwvfxwgxwgwwggwwfvxvvvwfwfwvvxwgfgwwwwwxggwggfxwvxvwwgwxgxwwxwvxgwwwwwgvwvwwwwwgwwwhwwwwwwgwgvvwwvwvwhxxwxwvwgwwvxwxwxgwwwwxwxwgxwxxhwxvwgwwxhwxwwwgwxwwwwxwwwxwwgwxgwwwwvxwwxwhgwwwwwgwwwwwvwhhwxwxwxwwgxxwwwvhxwwvwwwhhwwxwhhwwxwxwffvwwgwgvwwvwgvwwwxwheefeVvgVffvgffuwgfefgewfewevwwWfvVvgfgwwwufvvwwggugvwwxhwwwfgwwvwwwwwwwgwwwxwwxvwwxgwgfwgggxwwwwuwhwwxxxhfvgvwgvvvwwwwgvwevfvfwwwgfvvuwwvvvwgvwwhvvfwgvgwwvgvvxxwwuwxwhwVgfwvvfgwwwxwwwxvWwwwwvvwwwgwwhwgefgwxwxxggvgwgfDfwwwwVugfwdffffgvwwwgUwVffWwwwwvwwwfwwwwwWvwwfgvvwwwwvwfwwwwwwffWfghwwxwwwwxxwwvwxwwwwwwggwwwfwxguwvggevvfFFexfwwwWvgfvwwwvWVvgvggvFeffvxwgvwwhvvwwwwwwgwWVwwwwvxvwwxwhvvhvwwwwgwvvwwxwwwevhwvWgfvgxwwwxwxgvwXwwwVWeuwfgvffVeevVfVvggfgWvuWgfwxwwggwxwvvgvwwgwwgvVvWfwwwwwghwwvwwwwwgfuwfgwxxxwwxwxxxwwwwwwwwxwwggwxxhuwfgvgfffvWeUvwwwfwvhfgfgfvwgggwfeVfgggevxvgxxvvvwwwwgvfwwwgfwwwwwwwxwwwwvwvwwwwvgwxwwvgwgwwvffxwgwxxwwfwwxvuUVfgffWeVUUfvegwwgfgwvwfvwwfgvwfwwwwwxwfwwwvgwfwvgwvwwwwvgwxgvwgvffwwwvvwxxwxwxwwwwhwxxwwwwwwwwwghvgwfgffwvvwwvfgwwgvgwwWffVvegwVgvgvegvfwwwgfwwhwwwwwfgwwxwvfgwwwwgvwwgwwhwwvvwwwgffwvhwxhwwwwwvggvwxxwwwxwwxxwwggwwfWUuvgfweewggffffvwffwffwwvwgfvvwfvgwwwwwwwwfffvwwwvgwwfwwwxwgwwfwwgwwfwwwwwwwwxxggwvwwwxwwwvwwwgxwfwwvvvvfhfvwgUevhwvwwfvvfffwfeffwgvwwfvffggggfwgfwxgwxwwwwxwgvwwwwwwggwwfwxwxxwwwxwwgfwwwwvxwxgwwvgfuffvwgwggwwfvwvwvgvvwFteVffvFfUUTVvwvvweVfVgugUfwwuwveffVffwwvgVfwwvwfffwvvwwwuwwggvfgwVeeewfwgxwxwwwwwwwwxgvgwffggfwvggwewgvgwVgwGvfgdUvwefWuWwfffvWwggTTwvefWeVVfffvgwwuvwgfvxwwwgfvwwwwwvwfvgwwwffwwwwgwgfwwwxwwwgfvvxwggvvwweeegffggggvgfvwffgwvwwheVffwvvUUffvggvvwgwvweefvvgwgvwgfvggvgwwefWffvwwvvwvxgwwwgefffffgVeevwgfuwwggwwvfwfwwwvwhvwvwgvvgvwwvgwfwwhwwhwfgVeUffVffVwgefwvvvfwwwefVefffgwvwwggwwwgfgwwvgwfwgvgvwwvvgxhgwwwhvewgwwgwvwvwwvvvwvvwwWvgfevvfwWVxxwvvwwwwfueeffffffgeeffVvffGEehgweevvgvwwvvWVfwgvwvwvwwwwwwgwwvwwwvwggggvwwweewwgwggxwwxxvfwwwwggwwwwwwwwwwwwgwwxgWVvgwwTTwwggwveefgfwgfvvvvwgwwffVwgvvwwvwwgWvwwwwvvwwxwvvgvwwggwwwwwggwfwvwwwwwwwwwwxxgwwwwwwwVggffgwwwgfwwwvwwwwxhVVUfVefffwevWgfwwfvvvvwwWfwwgwwwfwgvvfvwwwfwwwwxhfgvwgwwXWvwvffwwwxfffvwvwwvwxwwxwwxxwxvfwwwwwwwwwxwwwxxheUfvvfWffwvffgefVvfevwwwUgvwvgwgfffwwfwwwhwweewwvwwwwwwxxxwfwxxvwwwwwfgwvwvwwxwwxwxgwwxgveVgwwxwwwwxwwvgwfvTEvgvfGUtfgeVfffvgwfgwvvgwwvvvvvggvwggfwvgwwvvwvgwvwwwvgfwvwwWfuwwvwwwwvwwhwgxxwxxvwhwwgwxwxxwxfggfgfvvgwwwvwvffgvWfeffwfgvggvgwwvfvgvgwwvwwWfuwwgwwwgwwwvwxwvwxxWfuwwgwgvvwwxhwwxvwvvwwvxvxVggVexwwwgwxwvwgwfVgWUefUfwgfffvefvUuwffwwwvffffvfvxfwwfgvvgfwwwwwwvwwvvwgwwvwxwwwgewwwwvwwwffwwwxwwwxwfwwwfwxwwwxxwxwwvfggfgvwvfvfeUugfvgfgfVVUxwwwwwfwwvfvwVvvwgwwwwwwfvwxwwwwwwfwvfvwwwwwwwgwwwwwwwgfwgxxwxwwwwxwgfdgfwvwwgwwgwgfvwwxeTVgfvfVwvGFUVgvwvWgfgwwWfvwvxvwwfUuwwvfwWwwwWwvgvxwwvwwFffvwwgVUggwwwgwxwxwwwvwxffwgxwwwxgvwwwxwWeefwvfVUwfvfvvgvddfvgvvwgfwwxfUgVuwwvwxwwwuvwwwxwgvwwwfwwwwwguwwwxhvfwwgxwwwfwxwxxvxwefueggvvwwfwvvwvvwvwwhfeUfWfvfffvwgevwvfwgvffvvffffwwwvfwvwgfwxwvvwvgxwgfwwwwwWfvffWWwfwwvvwfvwfxvvwvwwvwxwwxgwggfwvxvvwfwwwwvwwxwwwXfggVffffffvvggeefwwWfgwvvfvfvwvgfwwwwwfgfvgfvvgwxwwvgUvwwwwwwxvghfwgwvxwfvwxgxvxgwxwwwxxhufguvwwwfwgvwgwwvwwwwwTufTdufVfVgfffffwVfgVfwgwvewwggfvgefgvgwwwvfegwggfwvwxgwwwwfvwwVggfwfwgfwwhwwgwxwwxgwxxwwwwWwwwvwwvxwxwwxwgxxxwFVWVwgvfUwfWgwdgeeVfgwvwffegwWgwgfgwggwwxvwwgFuwwuwwvwwwxxwwggfwggwwwuwwgvwwvvwxxvwvgvwwxwxxUVvwgfwvgfgwfgwvfwwwwHUefWFVeUgfefffuwwVVvgdfgevvwwwwXefWvgffwxwtUgvvwwgfvwwwwwxgfwwffwfvgwvvvwwwwwuwwgwwwwxxhvvhwwwxwxwwwxwwwwwxxwwwHTffUvVUvevvwwWdVFVeffwwwefffuwgVfevgvwwwxWVwfuvvgwwfvgvvwwggwwwwwxwWfvugfxwvggxxwwwwvvwwwwwwwwwwwxhUfvVfvfwVWvggvvwWwgwuvEVfUtUfUUVevggfwvfvfvVfeUggVfvvvfUfewgevwwgVfVgwvvwgwvwwvwxxffvgefgefVevgwVwvgfggwwwgwvvxhwwuegwwuwvgWgvgwwgfvwWwwuuxwefffUVuwgwffeVUUDgwfffVfefVvfgfewggvfvvgwvffffwfwwwwwwffggwfwgxwwggwwffwVfvvfvxvwxwxgwgwwwvvvvwgxxwgvGgfgewwwgwffhwfwggwvgw6gUVF6UevwfvfgVtwggUUevwwfVwffwwffegfvUfwwwvgwxwwggVvwwwgfhwwwgeVdwvvwgvgvvwuwwwwwwxwwwwwfgwvvvgfggxgvgvwwfgvgxwTeTwwwffvggevTffFffUSgWvwfwwwvveffwwfevtxvwwgevguVggxwxxwwwwwwvhvwwwwfWgfewwwVWfwxwxxxgxxgwfhuvvVwvwwgwwwwwwgwwwwweffWUfUewvfgVwgwwffgffwwwgwwwwwvfgfffvfwgwwvwwxwwwwwfxwvwwwVgVuwwfwwgwwwxwwwwwwwvxwwwwxwwVfVexwwffwgwvgufffUegvgfvwgwwwwwfwwfwwwvwwwwvwwgwwwxxwwwwxwxwwvwwxwgvfwgwgwwwwwwxwxxwwxVfwvggwgefwvxwwwwxwXVfwVfgWewguevwvwwgefgvwwfvwwwwWfvgfWwgwwvvgvxwwwwwxwxwgwxgfvwvwvvwxwwvwwxxgwgwwwwwxwxxxwheffvwwvgwwWgfVWgwvwwwvfvwwwwgvwgxwwgwwggwwwwwwxxwwwxwwggvwwwwgwwwwwwxwxwwwwwwwxxwxwwVewwxxwwxwgwwwwxwVEUwvvwgUffvUTvWwxvfwwwWgvwwwwwxwwwwwfwwxgwwxxgvwWwwwwwwwwwwwwxwwffwwgwwwwxxwwwxwxfxxxwxwwgwxgufwwwWgugfggwwwwvfwfgwuwffwwgwwWfvWwggwwxxfevwwwxwwwxxwwwgwwwwwfwwwxgVvxwwwwwwvwwxwvwwvfefvwwvwvggwgwggwvwhvgVTevWwwffwdVUevwwgfwvfffeegdfwvgwwWwvffwwwvffvvwwhevwvgwvxgffwgfwffgvffUvwvvwwxwwwxxwvfggfwxwwwwgfgfwwgxwwwxfgwVgwuvVUffeevvggvVgwggufWfgwvWDefeeffwxwgwvgwhwvwhwvwgewwwgvgwwwxwwgvxvgwxfvxxwvwwwfgvwwwhwvffwwfwwwvgfvwxffwvggffwwwwfffwwffgwfvwvvWUewwUUwwvhgwxwvxgwwwffwwvwwvwvwhggwgwwvfgffgwffwwvwwwgwwwxvwwvggvvwwwxhgvwwwwwwwwvxwwwvfVUuwgUUwwvwggwgfvwwwfffggfvggwwfgvvwggwwvvvvwggwwgfxvvggwvwvvxwvvwwwfxwwwwvwwgfwgwwggwwvvutgvwvgwhwwwwvvwgfwhudfvWgvVfevwWUvwwggwwWvvvwgUvvwvgwxwgvwwvwgfvwwwfgwvxwvggWwwWgevwgFwwwwwwwxhwwwwwgwvvwxwwwwwwwwgfvXWvwVfUvgWFugfwuwwvfwwwvWgUvwwgVwwwffvxwvwgwvvxwwvggwwwwvfwwwfvvxgwvvvwxxvvwxxwwwfvwwwgggwvwwwhWfgfwvwwwwwwwgwwgwVefUvfwVefVvffVwvfgwwggfvfgwfwwwwwwwwwwwwgwfgwwwwffwwwwwwffwgvvwgvgugfwwwwwwwwwxgwwwwxwwxhwwxwgwfxwwwwwwvwxefweefewVffgvvVffvwgwuwgVgVwfwvwffgwfwvvxvwgvwvwvxhwgfUhwvvgwwwwwwwvwvwwxwwwwxxxwvgxgwxwgwwxfUfwwfvwhfxfwwvwwwwhefwggwwffguwwfwwxgfwwfwwvwwwwxgvwgxwwxvwgwvwwwwwxwwhfewVfwwUgfvwgwxwhgvwvwwwxhvgwxwvwwgwwwxxxhfxVwguwgwvwxhewWwwvwwwuvffvwgwfvwwwwgxvwgwwxwxvwwgwwxgvwwxxxhwvwwwwwxxwgwwwwwwxwgvwffvxwwwwgvwxwwwwwwxvfUUvVVuvgfffffvgggvgvwwwwfwvwwgwwfvgwfvwwwwwwwxwfxhwgfwgwwwwgfvxxwwfvfwwwwwxwwvxxxwxwwwxwwwwxwxxwxvfVwwwwgwfwwgggfwwgVuwwvwfgfvggvfwwgvgfwgwwvgvwvwwwffxwgwgxwgwwwggvwwvgvwwwwwwvwwwwwxwwgvwwhxvxwwwhgvvggggvwwvvvgwwxfwwwvwwwxxhggwwxxvwxwwwhwwwwvwwvwwvgwwwwwwwxxwwwwywwxfwwvwvwvgwwgvwgggwwxwwgwwwwwwfwwxghwvwwwwxgwwxwwxgwxwwwxwwxwwwhfVwwfWwfvxgvwhxwgwwfVvwvuwffvWwgffwwfewfuwgwwvfxwxfwwwgvwwhwwwfwgwxxgwwxxgfwgfvwgvwWwggwxwvvwgwxgwwwxgwwwxhwwxxwwxwfvwgvwWwwvvwwwVwwwgwwwXwwfvwwwvfwgwwxfwwvwwwxwXwwwwxwwwwwwwwvwwhvwxwwvwxwwwxvxxwwwwfwwwwwvgfvxxwwwwwwwwxwwwgfxwgwfvgvxwxwwwxwwwwwxwxwwwgvvwwfxxxxwxwwwxwwwxwwwvxxxxwwwwwwxfvwwgwfvgvxwxwwxxwwwwwxwwwwwggvggffwwvwvwvvwwwwwwwvwvwxgfxwwwwwwwwvvxwwwwwwwwwggwwgufwwffvxxwwhffxvwgufghwwhgvgVffwvfvgWevwvwDUwwvvwwwwvwwgwwxfvwxwwwfwufwwwwgeffxwwgxgffwwgwhwwhgvgVfvgfvvgvwxxfwwvgffvwwgWefwvgUUvgvfvwxwvwwxwwggwwwwVwvgfvgwwxvwwgfgwgwwwfwwvxvgufgvvwwgvxhvggvwwwwxvgwwvxXffgvwgfvwVexxwwwhvgwwxfffxwfvvwhvgwwwxwwWWfgvWgVvfvwwxwwwwWevvwxxvwgwwvVevxwxgvwxgvwwgwwfwwgwgvgvvwwwxwwwxwwhwgwwwwwhwwwwwwwWWgvfWfVwfwxwxwWevwvxvwwhvwgwfuwwvvuwfffgvgvvgfWvfvgwwxxfvwxwxxgxfwwxvvwwgxwwwhgeufvuvvhggwffwgvufgwggeewwwwVVffffvfgwfggfVVfvffffwgwvvwwwwwvwfvvgwwwvfggffxwwfvvvWWgvgwwvevvWvwWwggffwvevwwwwwwwggWwvvhfvwwwwwvvwgwXvwvgggfffffvwfgwwuwvxgwwvwggvgwWfwvvfwwfgwvwwuvggwxwvxvfvwwWvwfffwvwwwwwfgwwwwwwxwwxgfgvvwwwxwhvwwwvgvwwffvwwwwvvgvwxwgweffvwwwvfwfwfggxgvvweffVeffvwwwgwwvgwwwwfwwgwwhgwwwwwwwgffgwwwvvgfxggwwwvvwvggfgfvwgwwwxwwwwvwgwxwgwxgvwgwvwUeVUgVfuwwwwvwwvwvfgfvwwwggvwwgvwwgffgvwvwfweffvgwwWwvvwwgwxwwgwwwwwwwvxfgwwwvwgwwwxwWWwvgVuUgwwWVuvwgwxwvvggvgwwvffvvwwwvwgvvwwVeegffwuvgvfvwgggwwfgvvgwhgwwvxfUvvUgwgfWuwwwgvwuWwVgfvvWwwVuefewxxwgwVffVeexwxwwwwfgVVewwffguwgwwhhxgwgfgvfvvgwwgvgwwfwufwgwwWwwfWvgvvgwgwuwfvfxwwgwwgwxxxwxwfgwgfgvwwwwxwgwfgfwggwvfwhvfwggvwvfgwffvgffxwwwwggwwwwfeevffgfWVfvvvggfvgvfgwvwwwwwwwgwwwvwwwwwfgwvvvxvvggvwwvwwvvvhwwhggvwwwwxgwwwwxwhgvwvwxwvhwwwwgffgvvVVfffvwvggwwwwvwwwhgggwvwggwwwvwwxwgffgvfffwvwwxwwwwXVvwwvvvwwwvvwwxwvwxggwwwxwxwxwxwwwwwffxxwwxwxwwvwwwggwxwwggxwxggvvwvvvfwxvfgwwwhfvxwwwwwxwwwxxwwwwwwffwxxxxwwxwwwwwxwwwwwwwwxwxwwwxggvvggwvfwvfgwwwhfvxwwxwwwwwwwwwxwwwwwwwgvwwwxwwxvvgwfxwwvvgxxwwwwxwwxwwxxwwwwxwfgfvWVgvgffwvwwfvwhwwhUVffgfwfuvwvgwwwwGvdVtffGfewwwwgVfgfwvwfvvffgwwwwhwgfgwwwXgfgffvwwwwwgfvwwwwvfvffwvfvwwgfgwwgvwwwvwwwwxwgvwwwwwwhXfeVeeeWffgwwwgfvwwwfwwvwfgwgwvwwwwwwvxwhggffvvwgwgffvwwwwhwfgwwfwwwhfvvwwwwfwfwwwxxwwwwhwwwvwwwwvgvwwffhwvwxvwxwgwuegvwvewxwggugvwhwgffwwwgffWvvWgxwffvvwvwwwxxxfwxxwwgwwwwffgwwxxwvxwgwwwvwxwwwvwwwxwxfwxfxghwxxgffvwwggfguvWgwwwffvgvwwxxxwvwhwwgwwxwgvvfwgwwvwgvvgggwwgwvggxwwwxwwfwwwwfwxwvxefvvgwwuwwwwwgwwwvwxhFeevggvfgwefgvvhUVewgweefdvwvwwwgvvgvggwwvwvwwxvwvhvhgwfgfgwwwwwwwwwwvWvgwwwwfwwfxwwwwwgwwxwwwwxxwwxwxwgVVVfwgeUefvwvwvvWgvfgwgwwwwwwxgvvvwvvxvvVWfffwwvwwwwwwxevwfwwwwxgwgwxgfwwfgwwwwwwgwwhegfWfvggWguvwwvfWggwvuggVVwffvfeuwwgfwgfvfffffvggwgwgfggvvwvvwgvwWwvwfuwgwwvwgfwguvgggwfvfvggfWhwvVguvvfvgwwgwwwgfwvvvvwvwwwwwwwwvWhvxvxwffvffeufgffvwfgggwwgvfvfwggxvwwwwwvwvwxfwhwgfwvffvvgvgWwwwvuwxvvwwwwwvvvfvwfwwwwwgvxwxwwwwwwxxwxwxuvwggfvfvwwwvwfgwgvwwgueVugwfgguwwgwwgfVeVffvggUvgfwfWwwvwvwxwvwwgwwwwwwwvgffWfxwvwwfwxxggevewgvvgwwwwwgggwwfxwwwxxwwwwvxWVvfffUvggVufwvvgvxwwwxxwvgggvwwwwwwwwwgefVgffUwgwvgwfvwwwfwwwwfwvwgwvvfwwwwwxwwgwxwvwxxwwwxxwwxxwhvfwfvefgggvgwwgwgwfwwwUffVvwggvvewfwgwwwegfUfeeeVggwwwfggwwwwwwwgwfgwwwvwfwvwwweuwffvgfwwgwfwxwgfffwvgvgfwwgfwvwwvwvgvwwwwwwwwwwgxwwfdWfDgfveFwgwwwfgfvgvwvfgfgVwgxwwwggvfwwwfffvffwvgwvfgwwxwwwgvwvwvvxwvfvvwwwgvghvgwwwwvwwwwgxxwwxwuttwWfvgWWwwegftwgvwwwxtTfexwwVffwwwwwww7VeVeffegwvvggveUvwwwwwwwfgwwwwfwwwxwwwxgVvvWGwwefvuwwgwwgewwvwwvwwwwwHfgGwwfwwwvvvwwwxgwwwwwXVggcffUfeggfwwvvvwwwwwxeUvwwvvwwwwwwwwHffFffvfgvwffvwwxgvvggwwXVewggggwwwwwwwwvwvgvxwxwwwhwwfegffvffxxwwwxwwgwewvfffVwgvxwwfgfgfVUuwgwfUvggfggwvwgwWfvvwwwxwxxwwwwwggwvggfwffwwxxwgffVwgvxwvggvfwwfwgfwvffwxxwxwwgWEtwgwfUwwwvgwgfwgwgvgvwwwwwwwwxwgwxwwvwfwffwfgvuwwxwvhwgwwgwvgxwwgvggwwvgvgvvffugxwwwxggwwggxxvvwwgwxxwhgwwggwvvwwvvwwxxvfwwwwwgwwwwgwwgwvvwwxwwwxxgwwwxggxvgwxwwggfgxfgwxxgxhffwwwxwwwywxvgwwwwwgvwxwwgwwggwgwwxwwxwvwwwgwwgffwwwwwwwxxwwwwwwwwwwvgwwwxwxxwxXeexweVgwffwWvwhwwwwxxeefffewwwwgwwwwxUdffufgfwffwwggwwewgfvwwgwwxxwwxxwxfvwwvvwfxWwwxfuvvvwgxxvwwwVgwgwvwXwwwwwwxwxduwffgfwgwwwwwffvvwwgvwhxwwwxwxwxVgwuvffvxvVgwvwxwvwxwwwwxwuwgfvwwwwvwwwvwwxxwxwxxvwvwgwffhxwwwwwhfvwwwvvfhwwxwwvwwfwwwwgwwgffvfWUvgvwwxxwwwxxwxvwxwxfwxwgvvwwwgffvxxxwwvwhfvwwwgggwwwfggfvffxxggxwhgxffxggvgffvwgUugvwwxgvwwxvxxgwwwwwwwfvwwwwwxffwfwwwwfwwvgfvgvgwvvwwxgvxxvgwgvxggvwggwwxwffgwggghgvvwvvggwwwwvwfffxwwwwwgffggwwwwfeuvvfffffvwfggwwwvvwwggggwwvgwwwwwwvwxwvgghwvwfvvwfwfggvhxvvvwwggwfwwwfgwwwwvhgwwwxwwwxwwwwfwfvgffVVVVvgfwwwfwvvwwwfgwwwxwfggwvwwvwwwxwvfgeugwffwwxwwffgwfvgvwwwxxvwxwwxvvxwwxxwwfwwuvwvgffuvxxxvfwwvgvwwxeUevwwgWvfvwvwwgfgweUfevVefggwvvwwwwxwfvgvvwwwwwwxwwwgfffgwgwfwwwgvwwwwegwvgvfuvwwwwgwhxwwvvwwwgvwwwhwxgfgwVfffUfUvfvwvwwgwwwwxvufvwwwxvwwwwvwhvvWfvgvwwwefffwwwWevwvgggwwggwgwxwwwwwwfgwwwwwwwgwxwhvhwfggfUwxvwvwwfgwwfggfwwfvxwfwwgwvfweWwwwfVfgWhwxgwwfUxgwwxwwffwhfUxwwwwfxwgwwgvwgwwfvfwwwxxwwwwxwxwwgwwgxwwwxgwwwgveVwwwfWfgVwwwxwxwfUwhwwxwwwvwgggfwwffvfewewfwgfggfwWwvwwwxgwwwxgwfwwgwwwxhwwUVvwhfwwgWwwvwfwwXVffvfxwvwwuwvwwxgfvwdfgewwwwwwgwhwwwxxvfvwwxgvwwxgVugWfwwfxwvwvwwxffwwegwwvwhuwgwwugwxhwwwxwhewfUgvdffffwwwWwgwwxxvwwwwgfvwwwxgugWvvwgwugwwvwxhffwwwwwwXwwwxvwwxxwffwwwwxxxwgwwxgxhxfVwwhuvgxggxggwwxvwwwwwwvvwwewfxffwxwgwxwxgxwfgwxwwwwwwwfVwwwhuggvvvuwgffVwweVxWwvxwXgweVwwwwwwwwvgewfwwffwxwgwxwxgxwvfwxwwwwwwwWwfwhgwwxWfweVwwwggwwwwxwhwxxxwxwxxwwxwwefvgggwfwvwwwwvgwwwwGfeVfWgfgwvvfgggVUefvwUVffvwvwwwXgvfwwgvvgwwggvwvwwfxxgwWwwwwwwvwwwgxwvwwgxwwVwfvvwwwwwwwwxwwwxwgwwxwwUfevwveUfFvwvwwggggwvxhxwwwgwfwwfwvxvwWfufuggwfgwwwwgfvwvwwxwwvwwxwfvwwxxgwwwvxxxxwwgfwXWWvffuhwwgwwwwWWffxhgvhftfgvwGffwwwwwgxfhwwfwffxwwwvfxfvvwWwwgwwWfvwhwfwwxwuwwxwxwwwwfdffvwGgvwwwwwgwwhfhwfgvhwwwewwufwwwwwgwwwwwwwwwwwwhvhfxwwgwwxwwfwvwgfvvfgwhwvgwwvvwwhufffgvgwwfwwwvvxVWfWVeVwwVfuwwwfvvwxfgwwwwgwgvwwwwxvwgvxgvvgfgxwwvgwwwwwxfffgwvvwwvgvgwwvwwwwvgwwxvwwxxgvwXffUfffwwffvwwwwfwvgggwwwwwvwwwvwxwwwwgeffwgvWwwvvfvgvwwvwvwhvgwxxwwvfxwwwwwwwwwxwvxwwwvwvxgxwwwwxwwwwwwxwwxwwxwwwwwwwwwwwxwwwwwwwwwgwwwgxxwwwfUfxwxwxwwvxvwggVwwvgvfgfexxwgwwgwxxwwwwxwwwxxwwffxwxwxwgwwxwvfggwgggvVfVxxwwxwwwwwgfxwwwvgvfvwwwwggfxwgwwxwwwvxwwxxxwxxxhwwwwwwwxwwwwwwvxwgwgwwwwxwwwwwwwxwwwgvwwwvvvwwwWUwggvvwwVewwggxwwwwwvgffvwwWfwwwwgvwwgwwwxwwxwxvwwwwwwwwggvwxweVwwvghwxxwwwwgffvwwgUvgwgwwvwfffwwvfwwwgfvwwgfvUUwwwxxxwfwxxwxxwwvfgxxxwwxwxvfgxxwxwxfwwwwxwxwwwwwwxwfxwxwwvfgxhvwfwfvgEUTwwwxwwwwwxwgvvfgwwwwwTUEvgwxwxwwvfgxwwwwfwwwwxwwwwwxwwxwwwwwwwvgTUEwwwwvfggvxhvggvhgvvwwgfgvVTEewfgvvwwfwwwwwggwwwfggvwwffvwxwwxwwwxwwwwwvfwgwwwfvvxxwxwwwwwwwwvwvhvgwwwwgwwggvxwwxwfxwwhwvwvvvvffggvwgefuxwwwwwggWvwwevuWgevuuvfVvwwwxfxwwwvfwvwxvgwwwwxxggwvwuxxwvvwfWfggvwfwwgvVfVvhgffugvffufvfVvffwwgggwgwvgvwvfvvffVgwwffgfWgewevxxwgwvvwxggwvwwwwvwgwxwxxwwgfgwvgvggvwxwwwwhwwvffvfwwwvgwwwwvgwvgwwwhwwwfwvgwwwgVfevfffgvffvfwxgwwvwvveefeVwfffgfffwvwwwggvvgwwvgwwxxwxwwffggwwwvgwfxwvfwwwwwgwwgeUvfVefeVgvgwfwwwvwggvvwfwvwwwfwwwgVUVfeUfvwgVfuwwgvwwxwwwwvwwwwvgwxwggwwxwwxwgwwwxwgwwxwwwwwxwwwggwwxgwwwxgvhwvfxxvwwvxwveExwffVfwwwwwvgvfVVeVVwwgvgfwfewwwxxxxwwwxxxwwwwxwxvwwxwwwwwwwwwwwwwwwwwgfdVfuwwwwggfFwwgwvgxxxwxwwwvgfeUVTxwwxwvvwwvwwewgwhwwfgwfwwwxxwwxwfgwgvveWwgwxggwvgwvgwhwxxwWvgvwwexwxxwwwwfgggwWVvwgwvvffVfVwvfwxgfffvuwwwgfgwvgwgffgfUwwgwgvwvvvgvgxwvwgvxwgwvwugwgwwwgvggvfxvfwwfWeffvwwvgwgvffvfffVvexWVfvwffvvggUfegvgxvwvevfgwfwvgfVuxwwwgwwwwwwwwwxgVvxwwxxwxxwwxwwwhxxvwgWvuxwwwwwwfxvwgvwvwwwgwvgwhwvwwxwwgVvuwvwwwhwvwgUVuxwwwvwfeWxwxggvxWFewxwfvwwgxxgWvuxwwwxwxwwwgwwxwgwvwwxwwfwweTFxxxxwwwxgWfwxwvvwvwwfeWwfVeUfeWgfwwveWxwwwvveWggwwwxwwvgwxwwggvwwfgvwwxwxxwxxwwwvxhvwwwgvgwwvgwvxxwwwwwfwgwvgxwwwwwvvvxgwhgvvgwgwvgwgvvwwweewwvwveeggvxvfvweewgvfwffffwwxfwgwxwvwwvvgwggwxwwwvwwvwgwwwwwxwwwwfWfuwwffvvfwwvgvvefVwwwfgffgVffuwgffvwwwwgfVVfuwwwgvwwwxwxwwwwvwwwwwgghguxwxxwxxwwwwwwwwgwwggeuwwwwwwghgxgwwxwvhwwwwxvvwvwfxxwwwggguuwgwwwwfwwgeUxwwwfwveEFwwggfuuwwggwxwxxwwggexwwwxxxwxwxwvvwwwwvvwwwwwgwwvVVwxwwwWVdvvfgvwfwwvVVwgVVUvVVvfwwvVWxwwwwvVWvvwgwxwwgvwwgwwwwwxfwgfwxxwwxwxxwwwgvwwgfwgvwxxwfwwvxwwxxwwxxwxwwggvwfwwwwggwwvwwxwwvvggwgfwwwVVwwwgwwwwgUvgvffvggwxwxwgfefVwggwfxvwvxgwgvgfwggxwfwgwwwwwwwxgwwwvwgwwwxvvffeugfwwfxwwxwVVfffggffwwwfvwwgffffVffuwgfvwwwwwxWfeuxwgvwxxwgwwgewggxgVwvvwWvxwxxxxwxwwwxwfxwfxwvvgvwvvwxxgwvwwvwVwxwxgwvwguwwgwggxwvgvwfvwVVwffwvvwffVuwVwvgffffwfwfffuwgvfvwgvfwwwfxwwwggvwwfwgwggxwwegwxvwwvwgvfvgfvxwgfvfVwwvwggfwwwgvgffVuffVVfVUwgwvvwfgfwhwgfwfefUwwfwfggxxxwfgwevwvgvwwvwgWxxxwxxxxwxxwgwgwwwfwwghwgwwgvwvvwwewwgxwxxwwgWwgwwwfwwgvwwwgggwvggfWvxvfUggggwfwwWvvwuwffdggVwfgxgfVVwvwwgwgwwwwewwwxwwwxwwvvxwwewwgwwwxgwgwgfUwwgVuvwfwvwewwgwfwxhgfWwvwgfVffeuwwwgfewwgwwwvfvuwwvwvxwggxwxwwggvwwwwwgwxvxvfwvxwxwwxwwggWwwvwwwwwxwwwfwgwvgwwvwvwfuxwgvxwwvgwuxgwvwwwwfvgeweFggWgxwwgvwgvfUwVVfEvgvwvgffxfewwwvgwwfwvWxwgwvwwwwwfxwwgxwwwvvguwwwgxwwWftwfvggvfgftvvggwwvgwvxwvwwgfvgVeGwfgvfvwgxvwWvfExgfwwwgwvwwwwwwfwwffwwvggvwwwgwxxwxwxwwwggwwwxwvvgvxwxxwwfwffvVwxxwgwvfwwwggwwwgxxufVUwgvfUwvwggffevgvgvvwffugfwgwwfgwwwgwwxwwgwwxwwwwxwwwwfvwVxwwxfgWggvggwwfWwggvgwwwwwwgwfgfVeggugvwwvwggfVefguwwxwwvgwwwxwwwwgvxwfxwwwwfffvxwfwwwwvxwfvfwwwxffxgfwfgffwwwvwvxwwwgvgvwwwwwfwxwwffwwfUxwgfvxwffvwwwfUhfgffxwffwvvffvwwgVuwwfwxxwffwgwwfhffxxwffffffwwwghvfUwwgffhgwxxwwxwffvffgVwwfgffxwgffgfffUhwgxwwwfxwfwfwfxwwwwwwWffvwggfwwxwwwwwwwwwxxwwwxwxwwVgffwwvfwwwevfefvfvfffvfwxgfwfgxxwwwgwgvxxwvxxwgwgvxwwfwxwwvgvfVvwgvfvwwwxwxwggvWxwwgwgvwwgxxwwwwwgvwwwwvwwwxwwgwfwxwvwwffewffgvwvwxxwwwwgVwwxwgVvwgwwffefffwwvwxwwwxwwwwugvxwxgvgfgwggwvxgwwvxwxwxhgwvggvxwwwhvvWvwwwVwfgxwgvwwxwwwxwwwwwwwfxwxwwwggwfvffvgffvwwwufvwvffwwgvgwWwwfwvwwxwwfwwwwwwwwwwwwwwwfgxxwxxxefvwgvfwwgvvwgwxwwwgwwxffwfwfWffxwwwfWwwfwwgxwgxwwwgwwxwwwwvxwwwwwwvwgwwwwxxxwxxwwwwwgvggwxxwwwwxwwxgwxwxxwggwwxwfxwxxwwwwwwwggfwVTfVVxxwxwwwwwwwwfdgggwwwwfVVfFghwwgfwwggwwwwxvwwwxwwwwwwgwwxwwxgwwvfwVUvgfvfwfwVVVeexxgvwwwvvxwwwgeeuvvwvvxWVtwwxwwwfwxwwwwwwvfvgfvwxwwxxxxwwwxwwwwwfvgvffvwxxwwwwwvwwwwwwvgwwgvwvwwfvwwwxwvxwgvwfvggwwwvfffffVuwwgwfgfggVvgwvgfffuffeffefuxwwxxgxwwgvwgwwgvxwwwwwvvwwwgwvwgufuwxwwwwwgwwuwwgWvfegVugVefuxwwwwgvffgwvwvfgfggwfVwwvwVffVvVffvwxxwwgggwwwvfggvggwgvxxwxwwwwwgwwgvvwgwwwwwhwwgfwwwwwwggfgfwgwggvwwwwwgvgfwggwwwgfffgfVeggfwwwvwgvgwwgVegfwfwVUwgffVewwwwgvwwxgwggxwwwwxwwwffgxgxwwggwxfwggwwwfvxgwwfVVfffggvfffVVwgvfwfvwfwwwwwwwgvwgVefeefUvgVfeuwwwwxgxgfxwfxhwgvxwxwhwghvgvxwwxxwgvwwxxwwwxxwwxfxwwvgvwfwfxwwgVeVhwgwwwgvgVUUsgwwwwffugwwvxwhvgvxxwxxwwwwwxxwwwxhwfwwwxwvgvffuhvwwWUUsgwwfwfgwxwfgwwwwfgUfEwfwfgwwfxwwxwwwxxwwwwwwwwwxwwxwwwxwwwwwwwwwwxwwwwxxggwwwwwvvwfgwwwwwwxxwxgvxxwwwggffwwffwxwwwwwwxwwggfvvwwwgfwxwwxwxxwvgxxwwwxwwxxwwfgxwwxwwwwwwxwgvfggwwvfwwwwwgfvwwwgfwwwwxxwwggvvxwwggvxwwxvwwxgwwxwxxxgwwxwwvwwwwvwwgvwwwwxwwwxxwwxwwwwwfvfxwfvvgwwwxxvwgfuvfuwwggvwwxwwxwxwwwwwwwwxvwgVfgvvwwwfguxwffwghxvgwfwghfUfwwvgwwxwwgfxwgwxwwwvvuwwwwwxxwwxwwwwgwxvwvwgfwvwgvwwwvvxvwvwxwvhwggvWwwgguwgwfwwwguwwwwfEvxgWfvvgwgwgvwgfEvvfvwvvvwwhfdwggggwwwxwhwxgwwwwgfwVxwgvhwwwxwvvhwwwwwgwVwwwegVugfeVdhvwvxwgwfvgegfgwgwgvfgwwfgvvffgUtxvWwwfwvwgevtwvwwxwhwvgvwwxxwwwwfwwwwxxxwwwxfwvwwwxwfvggwhxwgvxxxxwgxwxggvfwwvfvxwxwwwWwgWfUwwgeVugvgwvvwfgfvuxgwwwwgwwwfVwvwwfwwwwwxwxwvvxhwxwxwwxxgvxwwxgvwgvgfwffVwwfvgfgvwfvuwgwgwwwgwffUgwwgfwwgfgWffUxwgwwwwwfgVwgwxxxfgwVvgvwgxwwgwwgxxwxwxwxwgwvwvwfwvWgwfxxwgwgwvwwVwvWwxwwwgwvwwwfwwgvwgwwwgwwwvwwvfVeggVwvfgfUwwgVuwgfwfwVwfVwggwwgwgxxwwwwwfwvfwxwxxwwgwvwwVwwfwwwwwgwgwVwxwgvwguwffFfeVwfwfgvVwgwwgfeVftgvwxgVfuxwwvwgvgfuwvwwwwwgwwwvWxwxwxwwvgwuxwxwwxxxwxwwwxwwxwgwguvxwxwvwgwxgwvwxxwwgwWwgfWwvxwvwfWeeugwuwwwVwxgvfxwwgvvWgxwxwwwvWefuvwgwwgvwwgffwWefxxxvfwwwwwwghvvvgwvvgvvVwvwgxgvwwfggwgwwwgwWefuvvgfwwxghwwvvgwghwgxvfggwwxvgfggefvwwwgvwfvxxwxxwxfvfwggvwvfwwxwwxxwvwwwwxwwxxwwgvfwfgvxwxwxxwwvwwwwvgxvgwwwvvfuwwwggvxfvvvgWgxggwwwweufwfgwxwfwwgwvwvvwwwwfveVfwgwwwwwwggvgevfvfgfwwvwwwxwwwvwvufwwgvvgwfWgwwxwwgwgvwvgwfvwwvgxfuegffgwvwwhgwgwwwwgwvwwWWgvvvwwwxXfuvwgwwxwvwwfvwwwfvxwwwggfwwxwwxwxxxxwxwgwwwwgfgwxwwwwwwwgggwxwwwwwfvfvgVwgwwgvwwvffUUuvgwfvwwvfgefhwxggvwwwfwwgUVuwwvgffvVfvwwxffxwgggUVuwwxwwgvfwgfVeffxwvgwwfffvxvwxwwvvfwgvwgUVuwwwvfvVVwwvgfffwwwwwwwwggwwgfffffUewwvwgvwfxxfvggvvwxxgfwfvfgghgfvwwfwwwwfwwwwxwwwhgfgwfvfggxwxwwwvvwwvvgwvwwvgwggfvwffvfwwxgWfwwvegfgwggwfVvwvffffwwvvwxxwwvwwfvVfgwugxhVWgvwvvwgWFfwwedWggxvgwxwgwgwvwwvvgfwwfwgggwgwwvvwwggwuvwwufvFVfwugwgFVfwvwwgfwfvhxvvvxgfgvvwfwfwvvvvxggfwwwwwwgfwwffwwwwwwwwwxwwwxxxwxwwvvwwwwwgvwxwxxwwwwwgvwwwwwwwgfwwwwggwwwwgwvwwwffwvvwwwwwwwwwwwxggwwggvvwwwwwxwwwxwwvfwgvxwgvvwwwgvxwwwwwwwwgvwhgvvwwwwggwwwwwwfwgfvwggwvwwgvwwwwwxffwwfgwwwwwwwwwwvfgwwwwwwwwwwxwgvwwffvwfwhVVvwfvvgwwxwvwxwxwwwxwhVVvwwvfwwxgwxgwhwwvvgwgwwwwwvggvvvvwxhffwvweeggwwhwgggfffwwgwwweewxggwvgvvfvgwweegwxgvwwgFEugvvvgwwwvgxwwwhvvvvgfgwvgwxwxwweexxggwwwgTTvffgwvfwwwgwxgwvwwgvfwwwwxhfvfvfvwgwwfwwwxwxwfwwhgxwvxgvwwxwffvuxxhwxwvxfwwwvxxwwfvwwgwwwwwxxxvwvwwwwvwfggwgfvxwfwwxgwwWdVtvfwhgwwwffwfxwwwEfExwxwwvwgfvuggfwwvfhgvwWdVtwggfwggfgxhxwwugvxwwwgufegvxgwvwvgEfExwxwwwxgvvufvffwwgwVvVwwgggVvfffwgwggfgwgwgwwwfwvvvwvfvhfgwxwxeewwwwwvvfwwwwwwgffwgwwgggwwwxeewwwxvwwffvhwwwvvwwxxvvwwwxwvvfvWWVvwxgvewggwggvwxwgfvwwvgwwwWfwghvvwvfwwxfwVfwwwxvWWVvwwgVevwgwfvffgfwvwvvwwgwvvgwwgxwwwvvfWefvgwwwfvxfwUVfxxvwWfwwxwWwWfufvvwxwwxewxxfwwwwwvwwhwvfwvwwwwxxxgwwvwgwwwwvxxxwwwvwgvwwxhwwvwwwgwwxwxwxhgvwxxvwwxgvffvhvwgwvwxwgwgwggvgvffggwggvvwvgvvwwvwvggwwfgwwvwwvwwwgwvwgvvgwgvwvvwvgwwvwwxwgwfwvwxwwxwvwxwfgwvwvwgwwvggfvvwwxxvgwgwvffgvwvwxxwgwwgvgwwgvgwvvwwwwhggggggVuwwwvxxwWeghgghwfvwxwwwwfwxvwwwvfxwwgugWwxwxwvwwgvwhwwwxwwWgxvgfevvfwwgwwwWfgfgwfevwgwfvffwgwwwwwwwVffvvxwwvwgwgfgwgvggwwvvfwgwwwfefVggwwxgvgwwvxffffwwwwwwgVgwxgwwwwVvfuvwwwvwwwguwWwvgfwwwwfvfvffvgfuvxwwwwwwwvwwwwuvxwwvvwwufWwgggxwuwwgevwwuvwgggggwwuwxfwwwgwwwgvggevwwwwwxwvwfwvwxwgfwffVwwevwVgwgvvgVwgvwfvwgwfuffewwwfWvwwwwwwwWfgfffVgfwxwvwgvewwwwfvVUwwwgUewvfffwffgggVwggwfvwfgfvgfwfvwfuwvwfwVfwfVfUwfwwwvgwffeUvvgwwfffwgwffWfwgvwgVggxwvffwgwWfvWwhwwwwwwwwwwxwwwwxwwwwwxwwwwwwwwwwwwwxxwxwwwxwwwwwwxwwwwwwwwwwwxwwwwxxwwxwwwwwxvwwvwwfwwwwffwwwgwwwvwwwwwvwwggwvwgfvxvwvwwgwwwwwwwxwvgvwwwwwffwwxwwvgwvwwwwwwffwwwgwffwxwwhwxxwwwffvvgwvwwwwwxwxvwxwxhvxgfvwgwgfvwwgwwwwwwwwgwwwwgwwwgwwwfvwgfwwwxwxgwvgvwwgwwxvxxwwwwwfwwvwwwhwvvvwwxwwwghwwwwwwwwwwwvwfvfgvwgfwgfxwwggfvfwvevgvggvgwvvvwfvwvwfvfWwfwwwgvwgwwwwvfwxvfwgexwgvvvuwgwwgfwggxwgfvgvxwwggwvwwgVwwfffWwgwfwvvvxvwvvvvwwwvfeffWxwxhvfWwgvwwgxxgwgwgxwvfgvwvwuwwgwwgwggguwwgvwvvwwgwgwwwwxwwgwwWwggffxvwwwfwxwwxgguxwwwgwgxfuwwWfffvfwffwwgwwWgwWgVewfwfhwxvwffVfwwgffwwwwwwwggwhwxwVwgfwggvewvhwvefvvfvwwwwgwewwwwwvfgwfwwxxuffefvwwwwgfexwhwvwewgwxwwfVuwwwwggvvvvxwwgwvfwwxxwwwwwxwvwwvuvfwwwwggfwwwgwwwvwwwwwwgwgxwwxgwwwWvvwwwgwvwwwfwxwwvwgfvvwwwwwwwhtfgWgvwVfewggVvvfGfVdefevWgfwwvgeUvgfuggfvfffvvvwgwvwvwhgwwFgevwwVvuwgufwxwvxxwgfWvuwvgwwvfvwhTVgwfeWwwefwfvvvwfwvwwvwhwwVdWwgwwxxggfxwegxwgVvwwwwwwxvwwvgfffFvgxwuxvhhxwwvgvfwwhwxvwvxhwvfFvgxwuxwhxxvgeffvWvvvvwwxhxxvhxxxxwxvvgffgffwgwfdwgwgfwfvxwwgvwwwggwgfgfvfvfvwvwhhhxwwggwhvWfVuwwgfdwgwgwwuvffWwvgvwehxxwewwhxwggwgffUvfffeugvxxhgfgwgxxxwggvxwvggfffuuvwvgvwwwvxwvhxxfwvgffwggffvfwvvgwghvvfvgwwgxvwwvfwgfgffwvvfvwxhvggwwffwwwvgwgfwwXgvggVfewwgvfwgvwfVfvwgvvggUvwgvwgffffwgwwwvwwwwwfvwvwwxWefuwwfgfgwvgguWggfvvgwvvgvwwvfwwwwxXffWfeffggwvgwxwwwgfvwwvgxXgufvhgwVevgwgwvwvxxxxxwxwwgxXfWguVgvfvgVuuVvwfwwwwgwwwgvwwvwxxwwxwwvgVeggvwVxwwwgwgfwwvwwvgwwfwghwgwWwwVwwwxwvfwfvfgvwgvfUwwwwgffgfxgvwfgwgwggfffffVuffffUxwxggwfgwwxwwwwvVEdfgvwfwgxwwwwfwgvguwfuwfwgxwgxwxwxwwwfUDwwgVuffvvVwwgwgwfwwgwwvwwgvguffuwwwwwwvvwvwuwgwwvxxvwwwwwgwwvgwwwxwgwgwwvvgwwxxxwxwxwwwwwwxwwwwwgvvfvwwwwxwwxwwxwwwwwwwvvffwvwefvhwfxwvwwfgeUugwwwwfwvwVvvvvwwxwgvwgfwwgwwvvgwwwfeUegvxwwgwuggWeeUwwxwwggwvwgfvwvvwwvfvwffwuwvxwwgwgfgwgwvufguwffeUeguwgwwxwwwwwwggfwgwvxxwwWgwggwfvWfVggwfvwggvxwfwvwgVefvwhwwwwvwxxwwxwwwwwxwxwfvwgVegvwgwwggwwwwgxwvwwwwwgwggvwxwxwfgvggUfwwggugvwhwgwwgxgffvgvwxwwgvvUgUvwxVewwxwwfvggvwwwxwwfgwwgETfewgvxwfwwwwwgfwwwxgfvgfwhwxgvffwfvwwVewwwxwETgWvwwwwwwvvwfgvgwwvwvfvfwxhwfvwvvwwwweUvwxwggvghUvvxwugwxxxwwwxgvwxgxwggvfhUvvwwgvxvhUvvxfxwfwgeeUvWgvgVewwgfvgvgWffVVvfffUvgewvfgxVvwgwvfgUvvugfwvwvewwwgwvGVevggEvgvvVgvxwwwfgUvgvwfwgvwwgvegwWvwgwefVTvwvwUwwvgedvwvwffgWwxwwgwxVegxfFfwggvwxwgxwwwgwvwwwwxwwhxxxwxwhwwhxhwgwvgwwwwxxhwwxwgxwxhwxxxhxxwxgwvxwxwwwwwvwgxwvwxxwgwvwvwwwwwhxgxwwwwwxxwvxgwwwxxxwxvgwwvwwhwhwxxwwwwwvxgwwvxxhxhwhwwwxwgwvwvwwxwwhxhxhwwgxgwwxvxwgwwwwwwvvxwxwvuwwgvgwwxfwvwgfvwvuwwwwgwwwwwwxwwwfwvwgWvwwxxwvwwfggwwwxvuffgwwWfvvwgVwwvwfvffvvUVfgvwwfufWxwgvwwwfggVvwwgUvwvwwwggwwWfvwxgfvwwwwgwgvxxvwgWvwvwgxvwvgvwWwffwweVwfwvvgVvwvvvhwwffxxwgxxgwwxUewgwwfwfwfxwxxxwwhgffxxwfVuwwfwwwhhwwxwwwwwwxxwxwwfVuxwwfxwwxwfwxwfffwwvxwxxxwxwggffvxgfVuwwfUwwgvwgfffvwggfgfvgfUwwgwwwgfffgffwwxwggfgwwwxwUVvwfUwwwxwfxgvxwwfffhwgvfxwwwwwfffwgVxwggfVVfUfgfxwwgfvwwwgfvgwxxwhfwwfVevwvgvxwwwvgwfgwffgVgvgvuxgFwvwwvwxxwwxxgwgWwvgvewWFvwwwwwwfvxxwwgfgwwvvxxevvxhwvVwwwvffduwgWvwvvggewwvgfggwvvvfFvwwveggggWwfwgFwwvuvwxggwfvwuugW5uwvvwwwwvxxwxwWwgfwfevxwwWvwwUSghggWwgWFvwvvuvvxwwffewggwfxxxgVfwvvxxxgggxgWgwfwwxwwvgffwvgwwwxwwgwwxwwxwxwwwwwwwwwwwxvwxwwwffxwwwxwwwwwxvxwwwwwwwwxwwxwggwfffxwwwxwwgwwvgwwffvxwwffwwwwwwwwvgwwwwvvwwwxwwwfxwgxwwwwwwwwxwwgffwwwwwwwwwwwwwxwwwwxwwwxvwwggwwwwwffwwwwwwwxwwffwwwxwwwwwwwwwwwwvwgvwxwxvwwxwwxwxwwwvvxvwvggfvwggwwwwwhwwwxvwxwwwwxvvwwwwggwvfwwwwwwwwvWwwwgvvgvgwggwwXVfVfgwvfvvvwwgvwwgefffgveVvgvvvwfffvuwuwgwfgwfvvvwfvwvwwwXfgvUwefgfgvwgvfgvvvvxxxvWwgwwwgwwwXefgvvvfwxwuVvgvvvhgvwwwwwgweguwwwfvgwggwgxvfwgwwwwxwwxwxwxxxwxwgvwwwwwwwvgwxwwwwwwwwgvwvfffwxxwwwwxxwxwgwxwwgvwxwfwwwvgwwwwwgUvgvTTUVVwwwxwwwwwwfffggwwwwwfffeVwwwwwgvwggwxxwwggxwwwwwwwwwwxfgffwwwVefgfgfwggUVVTTwxwxwxwwxwwvwwwxxwgvfffvwwwwWfuwwxwwggfwwwvwwxfvwwwxxxxwwwvvxwgwWeewwwwxwwwwwwxwwwwwwwwgfwvvwwwgwxwgvwveegfvVEtwWUUxwwgfwwvfwwwvwwfvvgvfUvgwguwwvvwgvwgfvxvwhwwxwwxwwwwwwwwxwwffvwfffgfvwgfvfgVUUuUvVDuwwwwxwgwvwwwffwfgffwvwfvgffffgwvvwgfeexwwwfwwwgwvwwwwxxwwwxwwffffgfvefVwxxwxxwwwvvggwwwwwwwxwwwggffxwwxwvhgvgwwggvggfWVfffeefffgvwwwwhwvwVewwfgwfveVffwwvwwxfggvvgvwvggwwxwwxwwvgwghwwwwwxwxxwwvffgfwwhfffVeffefVffeVVffgfgwwwwwfwwxwwwwxwgfffvgvvgwgwwvwgxwxwwvwgvwwwxwwxwwwvvvwxxwxxxwfwvvwxwhgffxxwwxxxwxwxwwvwwxwvvgxwgvxwgvwffwwfgUSwgfVedetwgwwgwgxggUfuegwwVffffvwwwvwxxwwvgwxxwxxxwgwvhggvvwgvgwgfVfTftgvffvffU5xwwwgwwwxwxwwwvwwgwwfgefewwwxvVevxvwgueewxwhwvfvwffwwxxwwwxxwwwwwwwWVUeUeggvfgwwwhvwffwwxwwwwwwwwwweewxxggwwvffvgwwgWVfgffeefvefWffggfgwwwgeewwfgwTTfvgvwgwwgggvVVvffvwgvgwwxwwxwwvvgwxwwwwwwvvxfeegffwggvfCCvwefVeeffggwwwwgvggwwwgvwwwwwwhggvvgvwvvvfgwwwwwwwuffwwwVfvwwwwwwwwwwwwwwwxxxwwwwWfvvwgfwwwwwwwwwwwwxwwwvwwwwwxwwxwvwgwwwgvwwwvwgwwweUUuwfUffvvwwwwgwxfgVfeufvwwwgvwvwwxwgwvwwwwwwwwwwwwwwwwwwwxwxwxxfwwvgwwwegVUeVefgvwwhegvwwwwvwwwwwwxwvfwwwffgwwwwxwwwxwwwwfffvwwfgwggffwvggwwwwxxwwxvxggffgfggfvvvfwwwwvwwwgwwvwgvvhgxfwfwgwxwwgffwwwwxgxwvvvfgffWVuvffVUvffffvgffffwgeUuwvwfgvvfUVeggfvwwffvwggffvfgwvxwwxwwhxwvwvgxxwgwgxhwgfgvffffWeUvfvwwwwgvfVVUgvgffwgggwvwggffvvwgwggwvwwwwxwvwgwwhgwxwxffVwwwwwwggffwwwwwwxwwxxxwvfwvvgfggwuwvxwxwwwwwxwwxwwwxwwhwwwxvvWgwvwwwfgfgvvgVfuvffeUffWfuvggggveefgwggwwwwwXVvwvwvwwxfgvgvvvfggwvwvwwwwwvwwxwwxwxwgxxxvwxwgVVffvufVggVVffvwwWeVeevvwwwwfvvvwxxfvvgwfwwwvfwwxgwwvwwvwwwxwwwWweUvwwwggwwvfwwwwxwwxxxxwvfwvVguwfvffeVwwwwwxwwwwvfgwgwwwxwxvfwwfwwwhgwwwwwwwugVefVvfUvfVefweewwggvwwvwvwwfUfwwwwggfwwvwgwvgfvwwvvfvgxwwwwwwwwwwwwwfwwgwwxwwwwgeUwgfgfVfuveffVUVwwgfWgffvfwwwgvvvvxwwwwwwwgvwwgwvfwwwwwwwwwvwfggvVvwgvxvgfwwuvxwwxwxxwgffwwfwgvVffewwwxwwgxwgwxfwwwvvvwxfxfVwwwgxwwWwvhwuvfETwwvfFvVfeTuxfvfvgffVfwwxwvvgguvwfffuwgfwwvwwwfvffxwwwwwgwgwwxwvwuwggwvgWwgfgUVVEwgvgwfuvgvefeffUEwgvggfwgwfwgfvfvwgvwggwfwxffVwgwwgwvgfVegwvgvgwwhvwgwwwgvwvxwfgxwwvhxgwfgvvgVegvwgwwgvvwwggwggwhvggwwwwwgxwxvvgvgfwwwfwgvwvgwwgvfvwwgVewwggwvgvffvghwvwgfxhvwwggvwgwwgffwwwgffgvgwwwwwfwgwwwgvgwxxxgvggwgxwvgvffffgvfwwfwwgvfffffggwvwwfwfwwgfvwvwwvwxwfwwvwvwxvfgwgvwfeUvxgvggvghfvxvvwxxxwxwwggvfffvfwUwvfvwwxgwxvhfvwvfxwvwxgvffvwWvggvwwxVwwegGVeVVefUfEefdfeUvwwVewfwwfwVvwewfvwwvwWggvWgevfwVwwvwvfwxgwwwwwhfvwvwwwwvwwefVfwFewfweUfUvvegUvvvgfTfwgwwVewfwgwxxwvfwwwVexhwgVwwwwhwxvwxwwwfgffvwfvwVwxwxvxhwwwwxwxxwwxxvvfvfWggfguggwwwxwwwwwvwhwxvhxxxwwgfvwwgfwVwwvwwggegVevfffffffVWvfdvgvWwvvwfdxvwgxwuwgghxxwgvffwWggfgegwvwwxwhwwvwhxxvhhhxxhhfVevffFffeeffwfggvfdfgggggvgwfvgwvvwfvwvwxwgwvvwvxfxxwvvwggevfwwwwvgvwwggwwwwvgwxwxvwwhhgwwfgfewffvwwwwwxwwwwwwxgwwwwwhvvggvgwwwfwwwwwwvGTVeUfTeUUVvvvVfUffwefggvfVvgwvffVvvfvewwwwvwwgwvwgwgvwwvwxwxxwwwwwxwwwXUVFefVUgggeUfVvffgFeefvvevWfvffwhwwfwxxgwvxgeggwwxwwgwfwwhxxwwVffUgwfwgvvfwwwwgwxwwwxwhwwxxuWVuVUuvfwfgfgvvfggvwwwwwwwfwwghwwvwwxwvgffwgvfVugffwwwffVffVufffUfeWgfUwgfVuvwvUDfUwgVwffvfhvggwvgVueVuwvfUvwgxwwwgvgwwwwfwvvwghwxwwwwxwWD3wgfVeVvefUfVfeVwfgvvwfggwwgvffvwvgvgwwwwwwvvwgvvwvwgxxvwwxgxwGvfFUgffxwUwwwfvvfxwxwxxwhFVUgwVwwgFtfuuuwgxwvfxxwwwwWwwwxvvvxgggVvwgfwwuwgwgwvfffTvgffFvfffvtW5ugffdfggwWwwwwwufvvvwwwvwvfgfxwvvffFvwvwwwxwvwwwwwxWwwwgwwgFfffDBfVgvgwwwwfFvfuefvdgvwwfewwwgvxxwfgwwwuwwwwwWxwgggwwvwwwwfffffgvfvvwfxggwwwggwwfvwwgwhvwvxwgffffvgwwwwfgwfvwfwwwgvwgffwgwgwgwxgxwvhvvwfwwgvwgvwfwwxwwffffwwgffgwwwgwwffgvfvvfvwvxxgwgwwggwwxwvgwfwgwvfwfwwgvwvwwwwwvvvwfwxhwfhgwxvfUfVeffffvwwwwwwwfgwfwwfwggVugvwwvgvwgvwgwwvwvwwxvxwwgwwvgwfXVvggfgvfggvvvfwwffvhwgvvwwwxhfeffewvfgvwwgfffwfwwwwwvwvgvgggwwwXfvWvgfvggvvfwvwWUfUvwffVvgvwvffVVfvVfwggwgwvwwvvfwwvwwwvxgfvffvvvgvvwvwgvffvvgfwwwvgwwvwfwxwwxWUUVfUeegfffVvgvvwvgwvwvgwhWfeffgWgfvgwwwwwwwvvgwgxxxwxwwwwwxgwwwfVexwwwwgwvfvggwxgwwxxwxvwwxxwfwwfgwffffVVxwwwwwwwwwwwwwxwwxxwwgwwwvwvxwwwghxwwuwgwggUvwfgVefufVfwxvwwfwvwguwvgWwfdwgwVFfvwwwghwWgwfguwggxxwwwxwwwwwvwgwwwxwwwgwwxwwvvfgVgwevwewuVWgfdfVVVFVegwwxgwwwgwwwwvvfwgwwwwwvwxwvfwwwwwvwxWeUggfwgvvgvfwwwwwxxxxwxwwgffgweUUDewvggfgvwwfwhfvwwvfwhwfUwgvwwwwwgfvvwwfVefVefUfUffeuwfwwwETwggfUffvwvgUvvgvvvwwwwwgffgUfVvvvwgvwwwwwwwwwxfwwvvwhvvggvVewgweUfUfwvF3dguefefwvgvgwwwxgvwggwgwxxWfwxwwgvwggvwwvghwwgwgVgvwwgvvvhwVvwxwwgxwxwwwxxwwwxwwwwwfevwwgfwgvwxwwwwwwwxwwgvgfwwxwwwwwwwwgfuwvwfwwwfwVewuffVUewVVDfVUfgvwvgfvgfvgUVUfUewfwWefFTwgvwwffvwwgUwgvxwwxwwwwwwxwwvwgfxwxxwwgvwwgVfwxgffwfgwfVUfFTgfwgffUUfWwwwggwvvwwwhwwwwfvfffUevvwfwwfvfxwwwvfwxwgwwwwxwwwwxxwxwxwwxwhwwwwfvwwwwxwxwxxwwwwwwwwwwwwwxwxwwwwwwhgwwwffwwgfvwvwwwwxxwwgfvwwwwwwvvwxwxxwxwwwwfvwwxwxwxxwwwwwwxvvwwgfwxwwwgfvvvwfwvgfffxxwgfxxxwxxwxwxwwxxwgwwxhwgxxwxwggffxxwgVuwfwfxwxhxwwxwwwwgffffwffUhwvwwxwxxwwfxwxwwxxwwgwffwwxwggvgfwwwfwvffVVVffffffUffwfxwgwwhfUvfgfvfUwwwwffwwwwgvfgfwfvfxwgxwxxxwxwwvxwwwwxwxwgwffUwwgVuvwgVVfffUffUxwfgffwvwwgfwwwwwxwwwwxgfvwwwffwwwwwxwwwwwwevgwwxwfwvvwwvwxwwwwwxwxwwxwwxgwwwVffvwggvwwwxxwwwxvwggwwwxwwxvfgvwxggvwwwwwwWgwvUUevggfvfwwvfgxvwxwxfffVwvvwgwwwvvwwwxwfgfwwggvwwvwwwxwvgwgwwwwwxwheUvwwwwwweUVUfvvffvwwvfwwwgwwgexhxwwxxwwwvewggggwwxwwwwwxwwxwegfdwvgwgvwvggwggxxwwwxxxwxwvgfuvWgwwwVVfGwfxwggfwwvwfxwhwxwgwwfwgvVvvggggwwwvwgxvfVvgFfwefTgVVxvfhgVefeuvfvgggwfwggwgfgvgvhwwfvVfgWxwwggwwvvfxhvgvwhwwgxggewgfVefetvvweggWfVgWVVfFvVwxggfvwgwwvvfvxhvwwfvwwwvwvwvvwwggWfgwgwvvwwuwwwwwvfgwxwwwwxxxwxgegvuvvegfgwwwwwggvwwwwwwwwxgwwwwwwwxggffwvwwwwwvWwgwwwwUffuwweUfwwvvVwgWfevvwwwwVvwwwwgVuwwwwwvxhfgvvwvfVwfwgwwwwwwwwwxxxwwwxwgwwwwwHffGUeVevgwfFewfvVFuffvfvvwgwfwvwxffwwwwhwwvxxxxwxwfvwwxwwwweFfvwuwwvwgwgvhwwwwwwwwwwwwwwwxxufwftWgwfeVwxhWxwwgwvgwwfuxgxvvxxxgwwxgfguwwwwvwgwwfxeuggVVEgffdwgwWgfwgVvxgwwvfgwfffhwwgfvvgfuWwwwvfgwggwwhgwhwwvxxwwxhxxFgfvwWVuwwGgfeTgggeUwwwVwVwvwgVvwwhvvvggwvvxwwwwxwwwggfvwwgwwwwvVVVuxwwxwxxxwxgwwwwgfwwwwwwwwwwwwxwwwwwwwgfwwwwwgvvfgfvvVVfwwWEdvVUUuxvwffwwfffwfvwwgUffVUUegfFUtggxwxwvwwgvxwgxwxwwwwwwwwwwwxwvfwwvfwwgvwwwvwgwUfvgfVfwwxxwwwwgwvwwwffwfgffwgwvwgfffffgvwwgfVVxwwgfvvfvffefVxwxxxxxwxwwwgwwwwvgvwwxxwwwwxwwwggwwwwwwwwvvwwggffxgwvwgvgfvvvgwvffgeeffVVfffwwxfvffffffffffvffeVeeVefVfvwxggwwvgvxwvgxxwwwwxwwwvwwwgwwwvwwwxwwgwfgwwfgwwvwveVeefvvvgwwwwwwxxwwwwwfxwwgffwwfggwhgfwwwvwwgwvwwwwggwvwgffwxwxxxwwwxwwggwxwxwwwgwwxxxxwxwgwvxwxxvgxwwxwgwvwwwwEEgwVfUVVugwvwxwwffvggVfUVVuwwgwffgVTtxxxwwxgwfgwwxwwwwxxgwvwwxwwxwxwwwwwgffffvwwwgggfUwwwxwvwxwxwwwxxwwwfvfVewwwwffggwwWfvgwwwwfgvwwefgvwwwvwxwwwwxwxwwwwxwVvfwvvwwwwwwwwxwwxxwwvgwwwwwxwwgvhwwgwfWwwwfWuwwffgvwuggfVFdweUUVeVgffwWfffwgvfeUVUVwfgvgFdVfugwwgwwvfWegxwwxwwwwwwwwggvwwxwgvgwwgfffwgwvfvvwfeUFdVvUWugVUfwvwwwwfwwwwwwhgwvxggvfwgUfefwfxvggfgvwwwfWfuvgvffwgfwfVfvwwwgxwxwwwvfgwwvwwggwwwwwwwwwwwwwgwwwxwxwwwgwwvwwhvvWvgvwugwvveVvfWWfewfVffgvuvgwgfuggftweFVugeVfeWWfewwwvwWwxwvgwwwwxwwwwwwvgwwwwwwgwwwhgwvwwxwwgftwfFVfwugwwWgwvwwgwgwvfwxwwwwwgwggvvwvwwwwwwwwxwgwwwWueVwhgVFUdeUvwvvgwxxwwwxxvhgfgwvwfvgwwvghgvxhffvggvvwwwxxfweVwwwwffueVffwvvfWfeVfeeVeVfeVfeVfwfwwgwWC4eVfefeVveWvvggvwhwvgfvwwwwwwvxwwhwvxwwxvgwwwvvwwxwwwwTEwwgwvgwfeVffvvfeVwwwvwwwgwfwwgwgwvgwvxwwxXgvfgwfwwfwwxwwwvwxwgfggewffwvVwgvgfVfvwgxvxwxxwwvggxxvxvWwvwxwwwwgwxwwvgxxwgwvfggvhvuwvfwvfwwwwvffevTEvvVgftwfEVugWuvfgWVeEwgvwfffugvfVuWfVEtwwvvxxwuxgWwvxxwwwwvwxwxwvwwvwgwxwfwhgvfgvffefhxwwfwvxgWvvgwfVwvggvgxwgwfgvfgfxgggwvgwvgvwfewfwwwvggfeVggwffwfeVvwwvwgwwgvhwwvwvgxggwgfxfwwwwvwvwgwwgwfwxgvwgvwvwwwwwvwvvvgfgvfgwvffwwwwvfggfwwweVwwwvvvfgfffwffgwffwwwvvwffffgvxgwfwvwwwvvgvgwwvvgwwvwwwxxwvgvwwvvgwvvwxvwhfffwfgwwwwwvvfgvvhwwwgffwvgwgwvgwwwxwgwvfgwgxwxgwwvvvweVfewvgfuWfwffvfggxwxwwwxwxvggffwfwvhwfwxwwgffvgwgxgwwgvfffWvgVvWgwfgugwGgeVVeEVfUfeFfVEfufwffwfwUfUfeEfVfuggwVgwvwwuggvWwgwvVwwfwwxvgwwwgfvgwwxwgwwxUfewweVwfwgwfgugwgwgxwVwwwhvweVvfwwwxwwfwwweVwwwevgwxwxwwxwxwwwWVUvvfwvfvwfWefVVxwwwwxwwvwwfvwwgfwwwwwwwwwwwwxwgfxxwxwxwxwwfgvgwfwwfwwvvwwffvgfweVuvfffUfVfVeggfwgfUefeuwwffgffgVwfVfUUgfwwxwwwwggwwwwwwxwwwwwwwwfwwwwwwwwwgwwgfwwgeuwwvwwwwwfvwgwwgfUfwgwwgvwwwwwwwwggvgvwwwwwfwxwwvvwwwwwwwgffvfvfgfggfvvvfwgwwwwxxxxgwxwhwxwvgvwgffvwvggwwwvwwwgwvwgvvvxggwgvhgvwvgffwffvgfgfvwvvgwfVUfgfWVegfffffvfffvgUeewfvwwwffvfUVuwwffvwwwggwwvffgwwwwwvwvvxhvgwwxhwggwvgffvfVeUwfvvfgvwVUVffgwvwwgggwwvwgfffwvgwggwwvwwxgwwvgwxwvwwwxgffWwwfvwvvfgggwwewwxxwwwxwxwwgvvgfwwwwxwwwwwxwwwwwwvwwwxwxggwWfgwfvvvvgggwwfefvUgvfeVffueffWffvfeegWfUfffwwvVVeeewwwwwwvwgvvvghwvvvwgxwwwwwxwwwhwxwwwxwwwwvVVgwvvfggwVVwwwvggwvwwwwxgvvvfwggvfgwwxxvwffwwwwgwwwxwwvwxxWvfftgfefwewwwwegVtwwxxwwwxwgwwggvvwwvhvgwwfvwwfvwgxwgvvwwwxwvggewvfxwfggewgxfggegfVvfEwgeftVfufVuwfvVfeFgVvgefVtvvVgugguVvxgfwwgwwvvhwwwwxvwgwfwfvwwgxwfxxgVggffeVwgfvvfwxvgwvgggwggfgvfxwxwgvwVxvgxwggvgwvwvwvwwgggggfuggVfwVwvVgfggxwwwwwgwxxwwwxxxwwxvwwVwwgwwwwwvwwgwvwwwwgwwxxwwwwwwwwxwfvfgffwfgwffWwgwgwUgfVwvWeVwwwvfdeVTeevfgwgVEgwwfffEgffxffwwgwwgwwvwWwwwwwwwwwwwwxxwwgxxwwwwxwwxxuggefuwvwwwfUwwwwgvVwwwwwwxxffvwvgxwgvwwwxxxwvfvxwwxxwwwwwWdfvfWgvFVevgvwuxxvwwwwxwwwwwwwwwxxWwwwfvgwwwgwufwwwxvvfvuwgwwxxhwwxffwegwfWgfvwwwuwgVVwgdfFfgfUugwgdUewwvfwwwdUeUdvWegvwwwggwwwwwfwfwwwwxxvvvwwvwwwxhwxxxxefuwvfwxffvfvfwvwgwvghwwfWvvfwwxwxgfwwwwvvxwwxxwgwffffffffvvgfwwwggwfwwwfwvwwwwfxfxwgfggffwwvwvwwgwwfvwwgvvwfwvwvhwwxfwgwwhxvvwfwvfwwgfgfwgwwgffffgwgffwwwwgvfffVeVeffvwfxwgwgwwgwfwwwwvwwgvwwwwfwfxwwwwwvwwwvxgvwfwfxxxxgxxfgvvfwfvgvfgvvwxwxwgwvgxvwwwgvgvvwgVuvwvwwvgwgwvwxxxwwvwwffwVVvwfefffwvufvwhwwggfwggwhgwhffvgfvgfgggwwxfvwgwfffwwwvfvwwwvgwvgxXfvgefgffvwvgvvvwgWUfUvwfffugvgwVeeUfUUVgffvwvgvwvgfuwgvwgxfwfgfvwgwfwhwgfgfggvfwwwfwvwwwvwgxwWVfffgfVwvggwfwwwwvwvgwwgwwWfgffwwwfVwwvwufwwggxwwwwwfwwxwwvxwdgfEdVVufFtwwweweVvwwwxxwxxvefvgWwwwUxvfVgfwxwwwxwwwwUwvfwwxwxwvvfVfggfgfvfwgwvgffVdggffFvfvfFvD$gfffdWfffFwwvfFwgweVxwggfwggvwwvwgwWwfwwgxwwwwwwwgwWxfwxxwwwfFggVUcggvvfwwwwgwWwvvwwWwvgwffeggwwwxwwwwwwuggvwwuwvwwxwxwwwwwvgvxwfwxgwwvfffvwwwwxwxxwwwwwwxwwwggwxwwxwwwgwxwxwwwvvgxwwxwvwwvwwvvgwfgfUwgVUcVFtwggfwgfwgffuffugvffffETUxxwfxgwvfwxxwxxwwvxxhwwwwxhwgwwfxxVfUffvwwwfVWffwwwwxwwwwwwvwgwwwwwVvfeVwwvgfVvxwwwweVVwwwgfgWUVUUvfgxvwxxxxxwwxwggffgwvvwwxwwxhwwffwxgwwwwwwwwwwVVgwfvvvwffVVwgfggeegvfVVffufVggwfffeegvfVVgwwwv44vffefVwwxwwgvfgfgwwwvwwxxwxxwwggggwwwwwwwvxggvfffvwwgEEwwvwgVVvgfvvvwwgvwvvwwhvwwwwwwxvvvfgwgvhggwwggwwwwvevvwwwVfgwwgvvwwwwwwwwxxwwxxwwwxWwwvwgvvxwwwwwwwwwwwwgwwxwwwwxwwxwwvwvxxwgwwwwwwwwwgwweeVugWUegfvvfwgwwwwufVUevVvfvwwhVevwxwxwvwwwgwwxwwwwxwwwwwwwwwwxwgwxxwwwvwgUfwgvfvxwgfWvwwwwgwwxwwwxwwgfwwvffwwwwwwwwxxhxwggffwwgffVewfffhwvxwwxwxwwwwgvwffUwwwxwwxwwfxwwwwxwwwgffwwgfvfvwfgfxwgvfffffVffVVfUfgfUvwgVuwggfUffgffeehwgfUfwgwwwwwwvfgfwfwxwxwwwwwgxwgwxwxwwwgwfxwgwwhfUgfgfgfUwwwgfvwwwwgfvwwwwwwwwgfvwwvffwwwwwxwwwwwwwwfuwvgwwVgfvwgfvxwwwwxwwwwxwwxwwwfvwvwwwvxwwwwwxxxxwwvvxwxwxwwxvvfvwwggfvwggvwwfWwgVffuwVeuwfwuwgxweVwwwefVeuwfWfuwwfggvwwwxgwwwxgwvwwwwxwwwvwwwwwwvxwwhvvwxvgwwvwfvugggfwwwggwhwwvVwwwwwxwwgVwwwwvvxwwvgwxwwwgwvfwwxwfgwwwwwwwxwxxwxxwvwwwxwwxwwwxwxxwwwwwwwxwxxwxwwwxwgwwwwxwvvwwgfvwwffwvwgvfwwwwxwvgfffffwwwwwvvhvwxwwwwwxxwxxwwxwwwwwwxwxwwwwwxwwwffwvvwwxwwwwxwxxggvwxwxxxwxwgxwgwfwxwvwwgfeVuWVUgwfwfVUugfwwwxxwxwwwvxwxgvwwwvfvgvwwvwwggfgfxwwgxwgvxwwvwwwvxgvgfvgfUWfUwwfVewwfffVgfUfffVegeueVuwfD3vVVvgfVvgvfVuvfgfeewwhwfgfggfVuwwwwgwfwwxwwgxwwvxwwgwwgwwwwfVuwffUwwfwgfVwfVEdvfvfwewwwfvfxwwwfwggvwfwwvvvxxwwfwxgwgwwwwwwwxfgffvfgffwuvfgWwvvxwwwwwwxxxwfgvwxvwvWxwxwwwwxxwgwgxwwxxwwxgwfgfggfggevfwWgwvgeVefffffvfveVffFfgVfeVfefFwfwvfffvvfgvvgvwwgvwfwgvWwvggwwwwhwgwhgwgfvxvwWvgfftggwwWgvfFwvgvwhwggvwxhggvgwvggwwwxhwxxwggvgwvvwwffewfgwweffvfggvwwwwvwxwwxgxxwxxwwwwgfvwgwwwwwwwwwxwwwwwwwxxwxhvvwvvwwgwfwwvwvwwVDeVUVVUVeVtggFUVUVfVVwvfeVdfuVgVfefVvffwwxfvwwwwwwwgvgwwwwxwxwwwwxxxwwxhfeVfweVgvvffuwvwVgfufgvfgvwWwfffgwvfgwwwxvVgwfwwxwvvwwwxhwxwwgWVewwwwgwwwwVvfgfxfwwxxwxwwxwwwxgwxwvwffwwwxwxgvwxwwwwxvwgvvgWUUfvwgggvffvUVewffgfffeveVUVvxwwwwgffvvwwfvfgvfvVgwUVevvwwwggfwffffffvwwwwvwwwwwwfwwwwfgvfwgwwwwxwhvwwwwvwgvvgwfwgwwffwvwxwwxwhwwwxwwwwwwwwwgvvwxgwwvwwvwggfwwwwwwffvfwVgxggxwwwwxxvxhwggwwwwwwggwvwwwwwxwxfgfGftgwvfWwfVwFeFvvuWvvggftwgffvxwgwvgewegvwwgvggwefFeggvfvwwuWWffwVggwxwwwwxwwgwgwVwWvwwwgggwvxhwwwxwwwXvwwxwxgwgfgwxwwvggwwvwvwxwwwwvfegwxwvvgwwwxxwwxwwUfwwwgfvwwwwwwvxwxxxwxwxwxgwwwwwxwwwxfwvwwguTUwwwWfuWfvfwvwvwWefgvfEUvwuvwwffwwwwwwggevfwuvwfwvwvuvwwwxwWgvgwwfwwwwwwwxxhwwefvwwwwwwwxwxvwwwwwxxfwwwuwwfwwwwwwwwwgvgwwwwwwxxhefwwgxxxxwwwwxvwwvugfvwwwgfexwwwvgvwxwwwwxwxwxwwvgwwxwWwwwxxwwwxwxwwwvwvwwwhwVguWVexwffffhwfgVUVfwffveUggfgfUfvgfvwwwgwgwgfwfeVvhvfwfffgVfxvfwvUxxgggVwvwwwwwfvvxwwgfvwvxxwwwfwvgxgwwwwwwvwggfgwUfwxwgwwvwvwwwwwwvvwxwwwwwgwwgvwwvxwxxvxwggvfgfufffggfgfgUfvgvgwwwvwxwwwwwxwgwwvvvvwvvvwhwwwwgggvwffgvvgwvgwwwwxVdeVVgwWfggUVvweVffgwFgUVeVwwwwwefwfvewggwgDUfweVfuffvfvgwwxfffVVvfdfgwvvwvwxwgvxxxwgeggwwwwvwgvvvxwwffvggvwwwxWefgwvwwffvwwwwgvvwxwxwgxxwgvgfgwwxggwwwwvvwwgdffwgwwFUefggfvwwwvwwwxgwwwwhwwffgwwwwwgxvwwwwxfvgvvwwwxwwxhxwhTUgfwvvVUeufWfffwVgvwdTeVgffwfwwffwwwfwgdUFfVugfwvvwgggwwhwwwUfgwgvvgxxgvwwwwwxufgwwwwwwwxwxwxVwwwwwwxVwWUffwwwwghvgxwwugfwwwwwxxvfvxwvwwxhvvwvgwffvgffgwwffvvgwwwwvgwwwvwxwwgwggwgfvwxwffwggwvxwfgwwwwwvwxwggwwwvvfffWUuwgwUUvvgwwggffwwwffwwggvwffggfggvgvvvwggwffgwfwwwvwwVUewwwUUvvgwwvwwffwwwwvvvvhwgvvgwggwwwwwfffwwvwwwxhwvgvwgwxvwwgghvwvwwwwfvxwxhhxvwhwwwwghwefefgVVvgfwwvvwefWwgvxwffwgwwwfwxwxwwvwxhwwgvvwgwgwvwhgwwfwwgwwwfwgwwhwvwwwgxhVVefUffffffffgwvggfffvwwUffvfwvgffWfvefvwwfvvwwwwWfgvwwvgwhffgvfvgffvwgwwfwgUfvgwwwvwgvvwxgvvgwwwxhgwgvwfwwvxgvvwvwwhfwwwxwwxhvwvgwvwwwxwvxfgxwgwxgwvwgwffwhgfgwvwwvgwvgwvwxwwwxxwwxxxwgwwxxwwxwwxxxwhgxxWgeUvgvgffgwvgwvwvVfUVUufgffvuveffWvfgfWgwufwwfvwvgfuvwvwgvvgwwgvvwwfgfvvwwwhgvwwxwwgwfgvvvwxwwwvwxwvgwwgwfgwwvgwwvvwwwwxwwwgffwfgxwwwhxwgxwxwvgwgwgwwxwwwxxwwwgwwfvgvwwwwwgvwgvwwxxwwwwxwwwwwxwxwwwwgwxwxwxwwwwhhhgwwwwwvwwvgfvWUewgfxffwwwvVfVuwVVggwgfffgfffgfwfwfffewwwwggwgwfvfgvfvwffwwvwwgffgfvvwxwggwwwwgfgwwwwwwgwgvwwwwwwvfvfffwwgwxvwwwwwwwwgvxwvvfgwxwwwwvwgwgwxwxwwvwwwwgwgwvgwutgvWfegwwWFewwxwvgwwwwwwwgwxxwwwvgxwgfgwwwwwwwwwwwwggwxwxggvhfwudffVeUfwvWFUwgfwgVgefwwWUVfwwwwvWwUevwwwwwVgxxwxwgffgfwwwwxWvvfwwgUfwwvwvgwvwvwwwvgfwxwwwggvgfwxwwxvwwffvvwwwwfwwxfwvvwwwxfvvvwwwwvfwfwxwwvvwwvxxwwwwfvvwwfeuggfwWfvwwwfvgwwvwwwxgxvwwwxggwggwwwwfwwwwwvwwwwwwwuwvwwwwxxgwWudTVggvGVevfweewWWFVgfffefffwfegdefvwVvvwuefgevwfwvvwgwwfxgggwgWfwwgefvfwvwvwwwwxwwgTfvfwwxwWwxfevvwVvfgvvvwfvwvxvwwwwwvwwvwggggvwwwwwuxwgvwwwgwxwwvxxhffwvevfvfvVwgfgwwwwwwwgwwwwwgwwwwwwwwwwwgwwwvwwxxwwvwfwhxxwwwwwwxwgxxwUfVeVeVfvVgffwegwfUffVwfffewfgggefuufgfvwwfffwwggvwegwgggwwvgfvfgvgvwwwwwfwvgUvgwggwfwvwwwwvwwwxxvgvgwwwwwwwffwwwwwwwxwxwwwwvwwgwgwwwwxwxgwvwwwwwwxevvggeuwggvwfvvvwwfwwwgvfwwvwwWwxwwwxxhfvwffwvwgwwwxxvwgxwvxwwvwwwwwxwwxwwXUdvVEgeEvUegffvwwWUfveffdVVevwvWefFfeVfggwdVUevffgfvwwwwwwGVvfevfuwwgvwxgewfvfwVwwwvvvvuwwwgwwwwxwwHUuWvffgwwwefvgvwwhfvwwwwwxWggfgwwwwVwwwvxwwfwwwwwxwwwwwxhWwwwVgffvwgVfeuvWvfwfvwgvwwxwwwwwxwxxwggwvvwvwfwgwvgvvgxgvxwvhwvWvgwgfwfgvfxDgfUdfvgeUtwgwgvUfdVUVVVdwgvfwvgVEEwvWwgWeffUffffevgwffguwwwuUwfVfewwfVguwVfgwwwwvwwwwgffwffxwxwwwwwVefvwgfvgxgfffVgvvwgwwwvxvwgvfgfvwxxwwxwwwfgvvggvwwxxwwxwffvgVfuVfVVefwfvVwVvwvfvfwvgwwfgwwxvvvgggvfWwuwggwuvweugvwwvVfwfwWwWwwgwuwuuwvxGVeUfUVUgwvvfgfffeUEVUvwfefgVuvvfeVVgfETVgfwgwgvvfffvgvffeuwVfeeuvvVffgvfwvvfgvfffggvvgwgvwwwfwgwwwgwfVffufeVgwgugwwvwwVfvwwvwwwxhwgwfvgwfVvwvfgvvgxvxxxxwwwgwxgwWefffeegfVfeevwgfevfwwwfgggvfwfwwfwvwwwfvwfgvfwfwfwwfvwfwvggwwwwfhwwwvwvweffVVfUegfvfVvfwvVUVfegwvgfggwwveffUfevffgvwfggwwwgfwvgwwwwweffegwwwgwgwvvfwgfwvvvggwvvxgxgwfwvgxgxwefgffewvgggvvvxvwwfwwgwwxwwvwvvxxfwugwvwgvggwhxxxwwwfVvgVevwVUfvfwwvwvwwgfwggwxvwwvxxhfwwfwwvwxxxhvwggwgwwwwxxwxXfvwfewvewwvgxwxgfvfuwwfvwwwwWfgWffwggwwefwwwwwwwvvwwwhfwwfwwvwwwwwhwwggwwwwvfwwxwxwwxxgvwgwfwwwwwvwwwwwxxxwhwvgwwwwwwxwwxwxwwwxwxxgxwwwwgffwwwfwgfffwwwgwwxwwgwwxwwwwxwwgvwwwxxxwxxxwxwxwwwxxwwxgfUUxvwwwgggvVewgwgvfggffffVUvfwwgvffgfggvwgfwwwgwVeffwwgwvwwwwwvfggwgvwgwxxwgfwgwvgvxgwwvwhwwgwxwxwwwwfwxggvgwhfvfgwwwwvwwwwwwxxfvwxwvwxfwwwwwwxwwwhxwwvwwftVvgggWgvvfWdvwewwvwwwwxwxwwwwwwwwfgvwgwwgffvwvwfggvggwwwxvvvfvgvgggfwwVceuwwwFffuvgTegTfGgvffwcEVeuvwwevgwwffvWvdfffvgvWSegTVvggggwwVVgefWeugvwwxxwwwxxvwgvuwvguwvggVgfvvgxweggwwfefvvwwWfevwvwwxwwwwwwxxufvvxVfwhwwwwxefuvhwxXghwvwfVfwwwwfeuwwgfwgvghgfwvfwwxwwwwwvvxwVVwwwwwxwwwxwwggwwvwwwwwxVgVVwwwvVTtwwVVvwvffvffeeffffgfegggwgeuwggffgfwfuwgwvgvffwgvvvfeuggEEwwfxggxwwwwwggWfwwfwwxwwwwxxwgwwwvvwwwwwVVwwvwgwwwfvwwwwwvvwwwwxxxwwwwvvgwwwfvwwwwwwwwwvwvwwvuVvgWgvwwgUwvwwwxwwxxxwwwwwgvwwwwwwwwwwwwxwxgwwxwwhfeWfhwwWffvggUvwvfWvvVfuvgWUvvvwugwwwffxwwvfWUvvvwfwwgvvvggwgwvwwgfvwwvwwwwwxxwwgwwwwwxwwwvwxvvwwwvfwwvwgfvvvggwwfwwxwwwwvwxwwwxwwxvfwwwgvwxwwgwwhWVwvgWffwwxgfffvgvgwwvggwwwxwwwwxwwgwwgwwvgxwwwwwxwwgfwwwwxwwwVfUVvvfvefewfeVfwfffwVfwVgVfVwfwegVuggfvwwVffgfwvffWwwfwwwxwvvwwfvuwwggwvwgwwwwxxwxwVVwfwwwvwxvwgvwwwxgfgggwvvfgwvwwwwwwwwvxwwxxxxhgvwhwwwxgwwxwwvwwfwwgwwwfgwwwwwwvwxxwxxwgwwxxwwwwwwwxffwgwxfwvvfwwwwggwwvvvvvggwxwvvgxwwwxwvggggwwwwwwxwwwfwwvwwwxvwvfwvwwwwhwwwvwggwxwwxxwwwwwxwvwwxwwwxxxvgwgfwfUwwwwwvwwfUwwgvwwwxxwgwwwwwgvwwxwxxxxxwwwxwfxxxwwgfgUDvffvvgvwwgfwwgvVEtggvfUvffffgvfwgffvwfvwwvgfvgfUwgffvfwwvvgvwgvwwwfgvggwvwwwwwwwvwfUwxhwwwxwwgwgwfwwwgvgwvwffwwgwwwxxfvgfwghgVewvwwwwxwwwvhggfwwxxxwvxffwggVvwgfwwewvfwwwwxgWvggxwvxvwwwxhfwxfwfwwwggwwwwvwxxwxhVvwffwwewwvvvwwwwgfvguwvefvgwwxWvwWfgwwwwwvfvwxwwvwgwwxhewwfwwufvgvwWvwgwwwwwwvwwwxwwwwwhvwggvwwxewwwxxhwvwgwwxxxhvwwwvwwwwwvgwwwggwxwfWvwvwhfwgxwwgxwggwxxxwwxvvxuwgwvgwxgwxxxwxwvwxxwxxwxxwVVwfvvwgufgffwxweugWVfgwvvuwwwVfvwwgfvwWgvuvgwwgwwxxwwwwvvwgewfwvfwwwgwwwxwwgwvwwwwxxxwwwwVgvgwvwwgwwvewxwvxgwwvxgvwwwwxwwxwwwgwwwwwxxxxwwwxwgvwwwwwwwwffwwwwwxwwwffxwwwxwxxwwgvwwwxwwwwffwwfwwffwgffF4CtxwxwwfffxwwwgffvwgffVffefxwxwwxwwwwffxwwwxwxxwwxwwfffxwwwWffuwgfffffffwwwwvfgwwwwwwfUfwwwwwwhgwwvwwgwwggfgvvfvwwwhgwxywxgwwggvfggfgwwwwxxxwxxwwwxwwwwwwwxwwgfffgwwgwvgVvgvfwvffVhuVffevvwwvgwffvfgvggfvfwvgwfvewfvgwwgwwggwfegvwvwxwxwvwwwxgwwwfwvvgfffwgvggfgfwvvwfgewfvvwwxxwxgxwwwwwvxwwwggwxxgvxwwwxffvgwwwwwwgxvxxxgwwwwwwggxxxxxxggfxwwwwwwgxvwxwwfeffvgefVewwwwwwvwgvVvfwwwwwggvvwwwwwwwwggxwwxxwwwwwwvwgfggvvwwwwWfgwwwwwwgwvwwxxgwwffTTwggWWfwffwwgwwwgwwxwxxwxwggffggffvvgvwwwwwwwwxwwwvvwwwwwwwxwwwfVUUwvggVVvvfgwvwweVUeVUETTTeFeeveegWVwvufWVdevFWvffWgegwvwvvggggggffvvwvgwwwwwvgwwxgvvvwwfgwxwwgeefgfgfgvgfeUvfWfffeWveWfvgvwgwwgvwwhxvgwvwxwhgwwwvewvvwwwwwwwwxgUUevwwwWffwfgwgwvwwwxhwvxWvwvgfvfgwwwxwxwwwwwwwwwwgUUfuwwwWggvfgwfwvggvfTDEdfVfefggfffwwfwgwfUVfVfeffvvwWfevwwwxVufgvgvfgwwxwxvgwwxwwxwwxhfvfwwvgwwwUeVfVVfffvgwWVfvwwfgvwwwwwxwxwwvwwwwwwwwwwxwxwwxgwxWgfgwwwefvwwwwwwwwxwwwfwvwwwgwwxwwxwxwwwwxwWgvfwwwefvwwwwwwvgvfVUuvfeVfvfgvvxwwgwwgggUUfffgwwwvvgwwwwwfwvwwvwwwxxwwxxwwwwwwwvwxwwxwxxwwgfffvfwxwxvvgwwhwwwxxxwvwxgwxvwxwvwwheVUegffwvvfggggwvwwfxwwwxwxxxgfvfwggwWVvwwvwxwwvgwwxwfggwwwwfwgwxffFEegffgvvgfggwvvGfTTfeTUUUUedUvVfVvfUeVgufgffwefgVfvgfefgwvWffwwwgggWvvwwwwwwwwwxwwxwggwwxwwxwwwwwweffevdVVvuwVgWvvgWVvegwTgfwwvvwwwvwgwvvwwwwwhwwVgwwxgwgwwgwgwwwVvefwgvgggvwwwwwfwgwxxxxxwwwgggvvwwwwuwxwxxwxwwwxwxxwxxwVvfVvwwwgvvwfwwwfweVfVgfffVvgfffvfffwfwfffwffwwfvfvggffwvwwwvwwvgvvwwwwwuwxwxwwxwwwxxwxwvfggwfwwVwvvfwwvvgwgvuvgvvgvwwwwwwwxwwxwwxxwxwwwwwxwwwxwwvwwwhdEfVfuvvfuwggwgfvwwwxwxwxxhvwwgvWfwfwgWwwwwxxwwwgwvwvxxwxwwxghdUVfvgwfffffwvgfv7UeVcee5EevvefWUUgfgffVUgVUegvvwWgVUuvvwxwgffvfffwwgwgWwwwvwwwxwwwgwwwwwwxxxwhUfffguvfdgUfdwwfwVgfFvvgwhhwwvwwvgwxxwvgvufwvfgwxwvwhwxwgxvVVfwwwwwwggwgfwWwwgwwwxxxwgvwwwgwwgfwfwxxwxwxwwxwxxwwxxxwvVfewvgwwwwwwfvwWwfeefwfWfefffffwgwvfgfwwevwvwwggvgffWwvggvgwvwwwwwwffvwfwxxwwwwwxxxwwxxxwxvgvvfgffffwgvwwwgwffgfffgfwwwxwwwxwwwwwwxwwwwwwwwwxwwvwwwheddvfwwfgwwfwVgwuwwwwxxxwwxxhVWgwgwvwfvehfwxxwvhwvwwwwwwwgvfedeeffgggwvwgffwuW5VeefvSSdeufVguuffvVfvFfuevvwwvhEfgdvwfvfvwfvwfvfffgfwwwwxvwxwwwxvxwwxwwwgefVfvUWvUevevfvwgXUUWUvwgwwgwgwgwwxwggvgWfwgwwwgggwxgwhwfVUUvgvvfeegwwvwwgwgwxwwwxxxvfffwvvggggvvwxgvwwgwwwwggfwwwvxwghwxvffEEugfvwfuggwwwwvfTTTVUeUUVEVedVFegufffuVwVVgVgWdvWggugwvgwvffvvvvfgggwvvwwwwwwwwwwwggwwwwwwwwwweUVwffefeWgfVfgffugffwfgfugvwvwvfwwwvgwwwwwwwwgfgWwgwgwwwxxWeeUvgwfWgfwhVwwvwwxxxwxhwvgWgvwwwvvgwwwxwxwxwxxgwwxwxWeeVewfwWgfgwgwwvFGffVVeffWDtvffeffwwfUwgwvfgVffeufvwwgfeuwwwvgWwvwwgfvgwwxwwxxwwwwxxwwwhfffwweVgwwvgfVfVfefvwgVfuwwxwwvwwxgfxwwwwxwwvwwwwwwwwwwwhwwxwFVVVfvffffvwvwvwffwwwxxwwwxxxfwwgfffgfwgwugwwwwwxwxxwvwgwwwwwxwxwFVfFfwvWwefgWwgffSUT3feUeVvfgfueUUfgfveWUUWUfgwwvffvUexwvwwgfwfVwvwwwgwugwwwxwwxwvwwgvwxwwwhVdVfgfveGfVfVwgvvvgWvdfxvwhvwgvefwwxxxxgwwgxwfgwwgwhwwfwvwheuvggwwVggvwxwwwxwwwwwxhgwxgwfvwwxxvwxxwxwwwwwxheugggxwVvvvwwwwwxWVfveVeuffUvwwgeffwwvvwwweffUvvwvvwwwxwwgwffwvxgwxxwxwwvwwwwwxxhvfwwwvwwwvfgfvwwwwvwxwwwhwwwwwwxwwwwwwxxxxghxwfgfffvVvwgwwwgvxwfghwxxwxxffgugwvwwwghwgxwgxwgwwxxwwhxhwxfwvwwwfvvvwfvwwgfwwwueffhWfffgVwwgfgfffvffvguwvwfwgggvgwfwggxwffgwggvwwvfwwwwwxwwwwwwwwxxxwwxwwwfvffffgfvguvgwfwvgwggwfwvgwxwwwwwvwwwwwwhvwxwxhwwweeuf7GwwWVVuuwwffvwwgeewvxwWwwxwwXVeWvwefvwwwxwuwwwwwwwwwuwxwxxH7wwWfffuwwuUvxwwgcUUwwVUuwwww7VeGUUffeVfvVwxwwgfffexxwgVffuxwUguwwwxwwwwwwxuwwwxwwwwHff6UUUgeefffvxhWeVfuwwwwWwwfwwwwwwwwwwwwwfxwwxwwwwwwxfffwgwwwvvwxwwvxwxgwwwvwvwvwxwwxwxwxxwwxxwxxwwffwwgwwwvwwxwwvfffwwfffwvwwwfgvffwgwwwggwwgxwwwvwxwxwwgwwwvwwxwwwwwxwwxxxwwxfwgfvfwvwwgwgwvxxvwwwxwwxwwwwwwxwwxwwwwwwxxxxwxwwwxvefwxwwgwvwwwfwwwwvxxwwWwwwwgfvwwxxwxwwwwxwxvufvxwwggwwwwfwwwgfvgVevfVUevfwwwwgwwxxwwhffwvvgwwgvfvwwxwwWwwwwgfvwxxwxxwxxwwvwvwwggwwfwWUewvfgwwgffvwwgwxwxwwvxvxgwxwwwxgwxwffEEwwffvvfffggwgvwgwhwwxwxxxwwvvwwWffVgwwvwwwwwwwxwwwggxxwwwwwwwwwwVfUUwvvfwvfffggwggfUUEVdeEEUUVVdgfgevfefvgffVgfgfuVUWgegfevgvwwvfwggfVVvwwvwxwwwgwwxvxgggxvgwwgwgvxwWvvfeeufWWffVggwveFWvefutwgvwwwgxwvvggwgwwvvwwwwVvxwwwvgwwwhUUevggVfvwgvvgwvwxwxxwwwWgwgwfffgwwxwxwwwwwwxwwwwhUeUvwxWfvfvwefwvgggfTVedfFDevfgvfgwwfvwwweffeVfeVevwvWfevwwwwwVgvgwfgggwxwxvwxvwwwxwxwxxxxxhfvgwwffwwfffeVVfVfuwgWVfvwwwgwwwxfvwwwwgwwwwwwwwwwwwwxxvwffwwwwwwwghxwwwwwwvgxwwxxxfhwfwwvwwwwghvgvffuwwfefUfhwwxwwwwwwwvfggVwwxwwvfgwwwwvwwwvgwxwxxhwwxwwwwwwwgfvfgwwxwwgvVwwxwxxwvgwxxwhfvwwvxgwwwwwwwwxvxgwwwwwwxwxwxwwwwxxwxhfvgvvwgwvwwwvxhgffvvwffvvwwwgvgggfgwwxwvfgwwwwxvwwwwxwvwxgvwwwwwxxwxxwxxywwwwwxwxxxwxxhfwgvfwgwwfwwvwxxhwvwwwwwxwxwwxxxwwwwwwwwxwwwwwwwhfvwwFGffvxguVfffxxvfwwgxxvxgeffvVxfwxwwfxxxGFffvheegwffxuugVRDUfwTEfffFgehfGVvETVFeffxfUfvgvheffwegvhwfwxwGffhgxGffTEfUfegVdegvvwgfwwxhfvhfffwvxxfgvwwgeTVvfwwfwvfgffvwuvwwxxxwwxxxxxhfvfgwgvwffvfvwwwwwxxwwwgxwwwxwwwxgedFfvgvgwvvwwewwuV5TSegfcUVVvefgeVggfFefFgeWwgwvgVfftfvvgxfvwvwveWWgffwxxxwwwxwwxgwwwvgvwhgfVWgfUUVUWefffvwWWeUuvvwwwgxwfuwgwwwxxvgvwhwvxgxhwwvgwvgxxwwxVVvwvvwhvgwwwfxwgxxxvvwguwgwxvvwxwhxwxgxwwxwwwwVVwgvwgvvgxwfwxeevVVfUvfeVwwwggwvwgwvwgwvffwwwvgwxwwwwvvxguwgwwggwxwhxxwxgwwwwwwwVggvwgfvwwWvveVwwffwwwwwxwxwxwwxwwxwxxxxwwwWeUfuggvWvvwwgwvwvxwxwxxhwwfWfWwggvgwvvxwwxxwwwwwwxWeeVuwgvWffwwwwvwvFGffVTDfvVfufgffUfwwffwwvffffefeugwggfeuwwgfwVwgwxfgvgwwwwxwwwwwxwwwgeVewwffwvwfgffeVfewvwwgVfuwwvfwgwwwwxxwwwwwgwwwwwwxwwwxwwhxxwwxwvfxwxxwwwwvfgfxvwxxwxxwwwwwwwwwwfgffgxwxwwwwxwwwwgwwwwwfggfvvgfUwwwvwwffVVUwfwgwvwvfgffewwwwhggvvvwwwwffwfwwgVVUVVwhwwggvwvvgVUUxwwwwwwvfvwfUgvgwfgwvfffffvvwxvgwwwwwwwvffvggwfVVUVfxwwfwwwwwwwwgfffgwwwvwgffvvwffvgWeewwvwwwhxgwxwwwggWxwxwxwwwwwwwxvwwwwxgWwxwxwxwvwwxfhwxwwwwhgwefwfuvgwgwgfvVfVewwWxwgwuwgfgwwwwvgwhvvfwvwxxggwgVfVuwwgfwgvghwwWVVugfxxwwwwwvfggvwwgggggvehwwxwwvughwwwxwgwWfVuxwwfwghwvwwvvwwvhvgvvfwwgwvvfVfgvwwvfwwfgwxwhvwvgwwfvvwvgxwwvwwwxwwwxxwhvwfgwxgvvwxxxxxwwwgvvwwvwwwwwvvfWwwwggvfVgfwfvfwxvvgvwVWwwvvvwfwxvwwwvgwfWwwvvvfgevfvwgwwwwwwvffgfxwufvwxwwwxwwwvggWvufgwvvwvwvwwwwwhwhgwwfgwxwvwggeefwwwwwwvwvfgwwxwwwxwwwuUWfvwwwvgggvwwwwxvvwgvwwwwfxwwwwfgvwwvwxxwwxwxwwwwvwgwxvxwgwvxxwwwwwwwgwxwfgwxvwwwfwugfvxwwggUwxvweUVewwwwvVgwwgvggvwgwwvxgvgwVvwfUVuxvfwvWgvVfxwfwvgxxwwfUVuvgwwgwvxwgfvfwvxwfgvgwvVwhwvwwgvgwwvwfUVuxwwwvgwvfvwwvwgvfwwwwwwwvwggwfwugfexwguwvgwwwggwvgwhgfgwveVwwvwwgfgwwwwwwwwxwwwhwffvveVwwwwwwwwwgggwvvwwwwwwwgvvwxgvvgwgwfgfeTEwwgvwgwwghwffgwfwwvffvfwvwxwTEwwwwweVguvwwxgWfegwfvWwwwwwwgwvwwxwvfwwwwvffvghveVWwewvwxxfgwwwwweVgvvxwwxgwfggwwvwggxwxxwhggfwwxxwhfgwgwvuwwvuWfewwfeVgfwvgxwvwwxxwwfxwwwwxxwwfeVwfwvgxxgwxwfwVfufwgxgxwheUfewwgFeFwwVfugvVgffVeVffVvvVvgVwfwxugwvwUwEeeFVffvgwwgwwgWwvggffwwWfugvfwxvWxwwgwVfugvgwxwgvwwgVvvxvgwvwffVfuVggwgwwWgwwwwffwvwwhwuvxeVgvvfdfwvvxwxwhwwuvvuwfwwgwgxxfvwwfegwwuvwggwVwwwvvgvxxhgwxxwuvxgegwwwwwwgvwvvfxwgugvwVwgfwwvuvwfgVVuwfweUwwgfffgfewwwgVwwwwwwwfWffwfeVuvfwwgwvvgVeegwvwvggWvwwwvfvgfvWvvefgggvgwvwfwvgvWvffvgffgwvwvfWgvxgffuwxxwwfgfufwvwwvVgvgwfwefvfwwfvfgwxwVwxghfvvVwgwwwwwwwwwwwwwxwwwwwwxwwwwwwwwwwwwwwxwwwwwxwwwwxwwwwwwwwwwwwxwwwwwwxwwxwxwwhwwwfvwwwwwgfvwwwwwvwwwwwwvwwggggwwffwwvvwwxvgxxwwwxwwxwvxwvgwwwgfvwwgwgwwgwwvwwwgfvwwgxgfvwxwgwwxxxhffgwwwxwwwwwxwwvwwwwgxxffwwwffwwwwwwwwwwxwwgwwwwwghghwfggeWxwwfwuwwvhwuvggvvwwgvwwwgwwwwVguwxwfwvwxwwxxwwwvgwugxwwwxfwfVvfwvgfwwwgvefvWfvgfvfgwgwvwwvVxwgwwWfvvWwgfvgwwwuwwwwxwvfwvWgvwwwgwffhwgwgvwwgwwwffwefxwwwvfvxwwvVwwwwggfvvfwgvvgwwwfwvwwwgffgfWfvwwxxwgfwwwwWwvgwwgwwwwwwwwxwvxwvwgwvwfwguwhwvxxwgxwwwwwgwwvxgwfgfwwxwgwwwxxgwwwgxwwwgvvfwgfvwgfwwwfWeFwgfwwwvwwffvxfwgwwgUfDwhwgfvgggwwgfvxwfwwxwvwWeFwgwvfwfwffwwwgfWvwwwvWvfwwwvgUfDxwhwxvwwggfwwfvwwvwfgewwwvffgUffwxwwfwffwfwwfwwxwwwvgfwvfggwvvwwVVwxwwwggwwwgwwffwwwwvfxvvxwwVVwxwvxgffvwwwxwggwxwggwwwwvvfgWgeewweVwwwvwggvgxwwfgwwvvwwfwVevffwwwfwxfgeeegwWgeewvgVxwwvvfgfvfvvxgwggxwwvggwwvwvwwwwhguvwgggwfwwwgfvfuwwgxwuwgggguVWfvxwwwwwfxxwwwVwwvwwvwvvfwwgwggwwvwwgwwwxwxxxwvwwwwxwgwwwvwwwgwwwvvwgxgwgvffvggwgfwwvwvvgggggvwwgvvfffggwvvwgwggwwvvgfvhgwwvxhxxgwvgxgwgwgwwwvwvwvwvwgwwxgwvgwwwvxwxwgwwvvwxxwfwgwvvwvwwgwwvwgwxfwwggxffwvwwgwwgvwxvgvwwgfwwwwvwxwgxwxwwfwffwgwgfvwwxwxwwwxwwwxwwwwwwwwwxwvwwvwwxwwxvxwwwwwwxxvwwwwxwgwxwwwwwxvgvffwwwwgfvwvxwwwwvgfvxwwffwwwwwwffwgwwwwwffwwxwwwwwwwxwwwwwxwwxwvvwwwwvxwwwwwwwwwwwwwwwwgwgwwxxvvwwwwvwwgwvwfxwxwwwwxwgxwwxwwgwwwwwwwvwwwgwwwwwwwwgwvwwgfvwggwggwwvwwwwxwvwwvwwxvwwwwwxwxggwwvwwxvwwxxxfwvwwwWxvvvwvwxwgxwxXVffeVvgVgfufvguwxgeffewfffewvgggufVggfgwwufvgvwwgguwwwggxhgwgfwfvwwvvwwgvvfggvgwvgvwwwwwwwwhvwugWffwvwfgfgvwwwvvgwwgghfgvWwwfwVwwfwwwxgfwwwwwwxwvwxwhgwwwfwfguvwvfetwgVvwwvvgwwwxxwwefwvfftwgWxvwwfgwwwwxwxwggwfewfwvgxxfwvWvvgVWUcwgwWwvgvgguwvvfgwgwvfwU5wwwgughvVFwgwvegWwvgvxwwwwVvfewwfFwvggwgwwwwxwffwWgefwwxwxwggVwwgftggvfFvfwvugWxwgxvxwwgffuVfvgxxwgwwwvvWgvgggxxwwxuwwggvufvgfUwwvWvfvwwfufwugwvxwwxwwwwgfUWwwwgfguwwvwwwwvvfgwvwWwgwwwwgvvwwgvxgfwgfgUDgwvvgvfwwgfgfvwvgvgvwgvfVewwUDgffwgvwwvwwVvwwvwgwgggfwwwgVugvwwvwWvwfwfgvWwxwgwwgwwwvwgfVuffffgffvgvxwwgVuwggwvwwwwwewvgwfwwwgfVwvwuwxhwwwwgwWwwvxvwgvfvfftxxwwWhvvwwgfgwvwwvgxgxwffftxxvwWhvvwVfffgugggwwxwxgvwxvvvfVgVewwfFwwwwfgfgvxwwvgwwwvgvvfWfegfVfuvfwvgwwfhxwgffvwgfFwgwwfvgWggvwuvgvwVxxxwgwVwgvxvwvfgffgvgfwwwhwgwvgfxggfwwwgvffWfuvgwgvwwxxwgwwhwfvfgfgvwffvffwwfgvwxhvwgfwwwgvfwgwxwxgffgfwgvwvwxxhfffwwwgwwwfvvxxxwwvwxxxXfwwfUfWwgvgvvgvvhWffgveVwwfwvxwWffVfVfgwvvffwwvgwwvwxwwwWffVvwfgwvgwwxfuvfvfwWgwvfwvgwwxwgvwxwxgfffffwwwvwggvwwwwwgwxwvwwxWeVfggwvvWvvwxvvxwgwwgxwxwxxxwwwwwffxxwwwwwwggwfwwwwwxwxwwwxxwxxwwwxwwffwwwwxxwwwwwwwwwwwfwwwwfgwwwwwwfgfwfgxwwwxwwvvffwwwwwwwwwvvgvwwwwwwwwffwfwvggwxwwwwxwwwwvvvvwwxgwvwwwwwxwwwwwwwvfgwfwwwxxwwwxwwwwwwwxggwwwvfgwwwwwwwwgfwgvvwwwwwwwwwwxggvvwwwwwwvghvvwhxggfvwgeuxwgwwgxwxwwwwwfxgggvgfeuwgvfwxwxvwwvvwvvwwwwwgwgvvvgwwgggfwVTtwgwgwvwwffvfvwgwvvxwVVwwwvfvfvxgWTtwwgggwgxxgVVvvgvvggwxwwgvwvwvvvxxxvvxgwgfvwwvvxwVVxvfeevvhxvvxgwwgwgvwwxwgvwwfgxxffwgfvwvxxwffwgwhhgfgggggwggvfwxfgvvfxxfgwgwvwwwfwwwwwwgvvxfgvvfxwwxwgwvwwgggvfwwvvwgwvgwffgfvvwggedwwVFwvewwvvffvwgfVvfvwggwwwvvgWwwWfgfedwWwwffedwgwgwfuwwgVwffwwgwwfwwvvwfggwwfwwwvgwfvxwwwwwvvxgwwWfgvuewhfvfegwxfvvggvwxxgfwgvvggvwfvffggwwfgvwvffxwwgwfwxgVwwwwxwwwxwwwxxxwgwfxgVuwwwxwfwxgfwwxgxwvwwxwvffvhxwWfUwgeuwwwgwfgvfvggfvffwfVewffxwxfgVVvffggwwgVevwwgwgfUvwgVuwwvwgwfwxwfffvwwwgxwgxwvgvwfUxwwwwgfvgffgwwvffvwwxwffxwxwhwvffwfwfUfwwxwgwwvwxxxwgwwgwwvwwwwwhgwwhwwwxwhfwwwxwxwxwgwxwxwxvxwxwhwwgwwvwwwgwgwfvwgxwvwgwwwwwgwwxwxhgwwwggwgfwwxwwxwwwvwxwwvwxwwwxxwwgwgfwxxxvwxwwwhvhxxwgwwwwwwxvwwxwwwxxvxhvhxwwwxgvwwwwhwwwwuvwwfwwvwwwfgVvxwwvxwuvwwwwxgwvwwwwxxwxfffvxwwvxxwwxwxxvffwvwwvwxxxufgfgwwWffwgvvwhgvgfegffeuvvwwVfffxwwwwwefewvggfvuwhvgghgwwVfWwwgvvgwggwvwwwxvgvfuwgvwxxgwwXewfwvgwwwVfefuwwwvvgwwwwxhwvffwwvwwxxUVfwfwfwxwwvwxxwwwgwwvfwwgvwvwwwgwvfwwwgwxxxgxwwwggwwvwxwwgwfxwwxwwwhwvwwwwwgwwwwgwvfggfwfwgvwvVwvVwvfuwwfgfvgwvfxwfwgfegfuxvvgwvfwgxwfwvfwwwggwwvwwvfvffxvfwwwwvgwffvggwwwwwwfWwwwwfwwfgfgvuwwwxwgvgvwggwgvgwxgfegvuwxfgfwgwfwwxxvwwvxwggvgvwvWwwwvwwvxhefvwwxgvwvgwwwwxvwwwwwwvwwvwxfwuwvxxwgvgwwwxwvwwhwuwgvxxhWvwwewfvwgvfuwvgwugwvwfugfVxgWwwWffffwwwvguxwwhfugwvgwhuffgwwfffwvwggvwWvffgwwwvfvwwxwwguvgvwwwgwvgfVwfwvwwwxggfvggwwwwhgfwwfUwvfwwwwwwgwwwxwwxgvvxwwwgwwgWvgwvwwuwvwwggwwvwgwvwwwwvgwwwvwxwwwwvwvwwvfxwwwwwwhwhwwffwwwwwwwwvxfGggvvwgdgewwvVwwufTfdfvVwWfVwvwFfVvguuwWWvgvfwvwfgwvwvvxvuvwefewgfVgvvWwgwhwxxxwggVgvfwfxwwwewxWfWfWfufgfwgffxvwvfwwwvvxvwWftfgvwxxxwWvwguwwwVfwwwhwwvwgvwwxxwxwwxwgvwxwwwwwwwhwwxxxwxxwwwxwxxxxxxwgwgfwfgwwxgvwwffwxwwwwwxwwwwwwwwwwwwxwxwwwwwxwhvvfvwwwgvwwffwggwwwggwwwxwgfvwfwwwwwfwgfwwwwwwwwwxwxwwwwwgfwwxxwwwxwwwwwwwwwvvwwwwwggggvffwvwwxwwgxwffwwwwwfffwwwgwvfffvvfwfwxwwxhffwwwwwwxxggvvfwfvvfwggffwwgUefwvwgxxwgxwgfwwwwwwvxxvvwxwwwwxxwwfwfgwwwwwggffgvgUVwwvwgwwwgvwwgwwwffwvwgffvfwvwgwwvwfwwxxwwfwwwxwwvvvwwwgvwxhvgvgwxhwvhgwwwwwgfvfvxxggwwxggwwwwgfvxwwwgwwwgwwwwxgwgwhwgwwxhvgwgxxhvwxxeevwwwwffvfugfVgvwxwwvVwfvWvgwwwwwwwwvvgffwwxfgwwwwxxwxwwwfffVvgvVgvwgvwfwvfwfwgvgwwwvggvgwwwxwwwwwfwffvwhwgwwgwwxwwwwwwwwwfwvxwwwfwxgwvvgvvfghgvvfwgvvwfwvwvvvgxwwfggvvvwwwwhgwfgwwwvfgwwxvwxwggvxwwwwwwwwwxxhvxwgvffwfffVVveefvffwwxwggfvvvwwwwwwvfwwwwwwwhvfwfgwvvwgwwwwwwgggggffffeegfwwffwwwwxwgfffwggveefvwgwwwwvvhgggwvwwvwwwwwwvvgwwwwwggwxwwwxwxxhwgvwwxwwwwxxuvfvgffwwhwwgwwvwgwwwwxwVwwvwxgwwgvWvgvxwwvwwwwgwxwwxwwwwwwwxwwxwwxgwwxwwxwgTVfffwveUeefVVfwwgvvwufgfgfvwxxwwhwwvwwufgvgwgggfwggwwxxgvwUefEfVefwwgwwgwwvvwwUfWfgvwgfvwwwgwxgwwvwwwwfwwvfwhvggwhwgxwwvwwxvwwxwfvvwwwxxvvvxhVvffXwvgxxggfvwxwwvwwgvfgvhwfVfvwfwxgvfhgfwwwwwwvgxxxwfvgfvfwwwVwvfvgwgVUuwfeVfvgvhwfVfvvgwxfvgvvwxwwxwwwugvwffwwxvvwwwwwwgwwFUtwweVwvggvgwwwwhvwffgvegwgwvgwvwxwwfgxxwwwwwwvgvwvugwwxwxwwwwgwgwvgvxxwhwfVgfgwvfwwwwvvegggeWvfvgvvgWfvwggvfgwffvWvwwgWgvwwwwwvWveggWgvuwvwwwwfvwwwwWfggggwxfwwwxggWVffeegvffffgvfvwveewwwffgffvvwggggvvwwwwwwwwfwggvvvhfggwhfffwvvvggffvvwgWwwwfvWwgwxggfwgfvwwwvfwwwwWggwfwVwgvgwxwvwgggvvwvvgwgxwvvwwwfvwxwfgwwwxxxwwwxggwwxwxhvveVgvggwwvwxvgwgwwweVwgwwgwvvfvgwwwxxwwxwvgwwwxwwvwgwwwwwxwwxwvwwwfvfgWWgggvwfVwwfewwhvfxwvgxwvwwWfugwxwvwwwwvvxgWWfwhwvgVwwfevvfgfwVwfggwfgwxfevggwwggewxwwwWfugwwxxxwwvxgwgwvxwxhvvgwvwxwwwwgxxxgwweffvfwgwwgvgwwwgwfwwwgfVgfwfwVufvwgwwwwgwvgvwgwvxxwxfgwwwwwgwfxxwxwwgxwXVWfeefffUfVefwgwgvvewvvggwwwwwhWggvgwwwwgwgwwwwxwgwwwwxXfeVevfVfewwfwVffffgvwwwwUfevfwwgvwfwvwwwwggwfvfvwwwwwwwwwxxwwwwwwxhvfvwwwwvwwwwwwxwwvwwxwwwxwxhvVefgvxxwwxgvxwhwvvVewwvwwfwgfgvwwwgwgwwwgvxwwvxwgwwxwvwwwxwwwwgwxwwvffvWguvxwwvegvfVvxgfwxhgvwwgwwwgUvwgwwxxxxxgwwxvwWwuvwwgfefwvVvvWvvfgfgvvwvvwwVvfvwwgfVvxxfUvgwwxwxxgwggwxvhgfwxwxfwwvvwxxwwvwxxvwxwwefvefwwvwggvxxwfwvwwhfffwgfwVgwvwwevwwgwgvwgwfwwwwwwwwwggwwwwxfwvxwwWWfUfVVefgweUvfvwfvvVwwwvvwfwwwhwvggfgvwwwwwwwxxwxwwwwwwxhefffgwVeVefvwfvvWfvffwwwevgfwwwgUvwffwwwwgwwggvWgwxwwwwvwwxvgwwwwwxhgwgwwgfwwwwwwwwwxwxxvwwwwhfgggVvgVwwwvuevgggVwweWgggfgvvuevwggwwwwghvvfvwgVgggvxfgwwwwwwwwggggvwwwVwehvxwvvVVffffgfvwgggvvvggeegfvfgwwvvvvfwgwwwewWfggxwwvvwgvvvwwvgwffeevfvffgfwfvwfgwwwvuwWvffgggvvxwwwwxgvwwvgggwvvwwwgfwwfgvwwwvwgvgxfvvvfggwxwwxwwwwwwggwxwxwxxwwxwfuufwfvfggwwfgvwxfwvwefgvfgvgfvvwgvfwgfwwwfwvwfgwvwwwvwwxwwxwxvwwgwvwfwwwwwgVfeVFGffgfTwggFuwwgfvuvgvwgwvwwwgfVgwvfvwxwvgwfwvfvgwwwwvfXVeeffUgggVvwwwfgfwwffwxwvggfwfwwgvvwvwvvxgvfgvwvvgwwwfwwwwwvwvxwwwwgwvfvwwwvgwwwwgvwwxhggwwwgxwgffgggvwwvwgfwvggwxwxwfvvgvgggvfvvgwgwwgvwgfwwwwwwvvwwwxwwwwwfwwxxwxvvwevffUfVUwfufUwgwwwvgwfwgvggwwxvvgfgwfwwwwwgfxwwwwwgwvvxwefffVfuffwgwwwefffwfvvgwgwVwgwwvwgwwgxvvwfwwwwwvgxwggwfwwwwwwwwxwggvwwwxgwwwwvwxgxwwwwwwxgxwxxeUvvgeugVwfwvvwwwwhvvwgvwweggvgwxxggxvwguxxwxXvvWwwwxvgwwxwwxxgeefVefwTffffvfwgwgwwwewvvwwwxxgwwgwwwefvgwwwwwwxwxxHfvfewgvwwwvwwWvvWwvgwxwefvvfhwwgwwwwxwgffgwwwwxfwvwwwxxwxxxxXffwwwwwwxwxwgvwwwwxxxWeWWeuwwffuUvxwwxwwgwwfUguVuefvwWvwwwVWfUeVguxgwwwwgwgfgufffweeVuxwxxwwwwwwvvwffgUewwgffgwwVggfvxwvwwwvwfwvvfvfvwwgvwwhwfxgwwvvwhvgVVeggffwwgwWwvewgvfugvvwvwwwWwggffwwWwvwwfgvfvgvvxgxwwgwwgxggwgwwwgwvwvffvwvvwxwxwwwxfVvwwhxhegwvvvhVvwgfffuwweVuwxgevwwfgxXgwWfUgwwwwwwxwwwhgwwguwfvwwffxwwwxvwwwwwwiwwhgfwxwwwwxxxxwwwwwxewfvwffvwwwwXgwVfUgvwwwfgwwwwvwwwwxgwwhvfwxwwwwwxwwwwxwvwxwgwwwxwwwwwwYVfvwttwweevVwwGgvwwwxwfVgwvvwguwgwwwwwweefGwwWvgwwwwFvvvwwvvxGgvwwwxwvgwwwwwttfUcefVfVUggvvwvfVffvxwwwwwwwwwuUfvwgggwgwwwwwwwwwwwxwwxxecfVvvVvvfUgggFffvwgfvxGvfffgwggfwwwwfvgguwWefvwwwwwwwxwwwwwwwxuwVeffwwgwxgwfxwwwwwwwxwxxvgffwufxxwwxgfvvggefggvgwvgfevvfhxwwwwvwhffwwxgvxxwxfwxghvfvwgwufvwgwgVewwWDuwvggvgwvfgefwfwwwxwfvwwwwwwvwvwfxwgwuvwwggwgVevgVUewfvvwwwgvghwggfwwvwgvwvfguvxwgwwgwxwwwxvwwwwegwvggfwwgvxgwxwfwxgvwwwvggfWfxvgxwvggwfgfxwvvvfvwwggwwvwggghwwvvvvgggwwwhwfvvvwvgvgfwvxgfxwwvwhwwwxwhxvwwwwwwwfffgwvfgeeffffwfvxwwwwwgggffwwwxggwvvvvwgwggwwwwgwwwvwwwwxvgfvfvfVVVVvfvwwxwwgfvwxgVVfwwwffvgvgvvwwwwwwwwfvwwhgwwfwwgfwwvgwvwwwxxvxwwxwwvwwwxwhwgwwuvwugfvvwwgwwwwwwwwwvfvwvwgVwgvwwgggxwwfgwwwwwwwwxwwwwwwxxwvwwwwwxwxxxwwgVdefwgwUUfedfefwwwfgwvfwufffwxwwwgwgwxfvgggvwwvgwvhwhfwgeVVefVeewwgwvfwwwwwxweffuvxvguvwwgwgwgwvwwwwxxuffvgwwgwfvwgvwwgwgwxwwwwfgfgwwwvxwxxxwwffwxwwwwwxwwxwwwffwwwxwwwwwwxwwxxwxwwwwwwwwxwwwghwwwwvvvfvxwvfvfgwwwggwwggwxwwwwwwwwxffwwwxxxwwwwwggwvfvwvfvfgwwwxwwwgvvgvwwwxwvgwfgwwwwwwxxwwwwffwxwxxwwwwwxwwwxxxxxwwwxwxxufvfXWXgwwvvwwwxffvwVgvvwgwvxgWwwvwwvwxuwwwwuwxwXWgfffwwdfwtwgfvwwwufvhhhgvwwgvhhfvwwwhfwwdfftwgvwwwguwgwwwwuwgvwwwwwwwwwwwhwwgvggfxhvwwwgXgvhwwffwwwwwwxggggwwwxvgwvwxggxvhwffwvfxwxvvwxxwgwhxxiwffwxwwxywwwggwwwwwwvfwwxvwwwwvvwggwgwwgwxgwwxwxhwvvwwwvwwxwwwwwvvwwvgwwwgwwxwxhwwffwwwwwwwwwwwgwwxwhgwgwwxwgwwwwxwxgxxwwwxxxwfgvfwgvwwgwfwwwvwwwwhffgwggggwvvfggvwwvgwfwwfgwhwwxwwxgxvwwwwwwxwxgvvxwWgfffVffgwvfffUvwwwggvwwwfgwgwvxwgwwwfwwhwwwwgwhgwwwwwwwhUfUwwveVeWvwwgffWgvffwgwvgwgvvwWvwwvvwwwvggvvfwwwwgwxvhgvvvwwwwwgwwwwxwgfwwgwxwhwwxhxwwwwwxwWfgwwVVwvwXwwgxxwvxfUvwgvwgvxXwgvvwxxevgvwgwwwgewwwgwwgwwwfxxwwVVffftffvgWwwwvwwwwvwgvWwwwgwxfwvwgvvxgxwwwwgvxxwxxVevgewFffffwgwevwuwfwwWwgvvxxwffwwwvgxwvxxvwwwwxXwwwgwffwxwwwxuwxwwhfvxwwwwgwxwwhwwwwxvfufvffwvgwwggvfwvwvwwguewfvvgffvwwgvfvwfgwwfvgvgwvgxwvwwxwwwwfwvwvwwwwwwxgwfXeffUVVVgfVvvfVuwwgfgWwvwvwfwvwwgvvfgwvgwwvwwwwwwwgwgwwwwHGffgfEwwfVtwwgffvwwgfwwvgfvvgwvwvwgvwfwgfvfwgfWwwvwfwvfgvwvwwwfghxgfgwwwwgwxvwwwxvgwwgxvfxwwwxwgvwwvfewxwxfgvgwwwvwxvwxwvwxwwxwgwgxffwwVvgxxxwxwwwgwwwwwwvvwvgvfFdxwwwxfgVfWuegwgwUwwwgfdgvfffwwwwfxwwgwwxwwxVwfgvwxwvwhgwwwegvffuDfewwwwwxwwwgvfgwgwwwwUwgvxgvgwwwXugvguwwfggfwFfVfwvvfvwwwgwwwhvwwwwfvvvwxwWgggwwxwwxwWexxxwwwwwvwwwwxwwxwxxxwwwwwwwgfvvwxwxxxhvwxwxwhwxWVTwwwvfwuwgvwwwwwUfvgwFUefWwvwxwwwgwwgvwwggvwwwWwwwwwwwwefwevVvgvwwxxwwwxwvwgevwwwwwwgwwwxwwwwwffgwwfvgvWwvgufvwWwvwwwwfwwxwwwvwwefwwwvxxvwwwxwhhvwxWgeVxwwvwwxgxvfvwxwwxxwwxwxwwwwwWvvwwgwfvfxwwwwwwvgvwgxwwwxggWgUUwwwwgfffffgffvvgvffUfVgffeeuxfwwwwwwwfwvgvfvgwwwvvvwgwgvggvvgfggUeevwxwwxwwwwwwwvwfxxfvvvwvwwwffxwwwgggwfgfgUeewxvvufvvggwwwwgwwwxxxwwwgggwwwwvwwxwwwwufgvfWfvwweewxggwwwwvwvxwhwwhgwwwwwwgvfwwWVvfwxwwwwwwwwggwwwwwxvwwhvUVfhvvgTTggWVvvwfffvfffffVVvefvggwxvwwwwwgWVvfvwwwvwvwwwwwwvgeewwGEevwwwwwvvxwwwWgvwwggwwvwvxxVVvwvvgwwvgggffvffvwvvevwgwwwvvwwwwwxxwwwwvvwwwgvgwwwgwwwwwggwwgwffwwxwgwvwwxwwxxwwwwwvwwxwxwgfvvfvgwwwxxwwwxxxwwwwwwxxxgfUUwwwgfwvvwvgwvwfgwfWVeffffvfwwvgwwwxwxgfgvwwwwvgvvvgwvxwgWfuvgwgwvwwwhfvxxgwgvgwvwwgwwxvwxvfggvfwfgvweVwwwvwvfvfvwvwgwggvwwgwwwwxwxxhwvwwwwwvwxwwvwwwdfgevgwffwgfwwgwvvwwwwwwwwwwwxwwwhwvvVTfgwfwvVwgggvgvgwwgfggfvwwvhwfgwxSVVfgwwUUefvVfwgvGgvgcUeVfdvwwggfegwvwwwvfUffwwwWffwgvwwxwwwEdUfwgffEvvwwwwxxVvgVgevwwwgwgwwfhefvwwfwfuw4UefVvggffEvvgvwvxwwwwefwwxxwgefUfvwwwwwgwxwxwvwvfwxwxwwwwwggwwwwxwxwwwwxxxgwvwhvwvwwgwgwxxwwwwggwwghhxwgwwwwfvgUUwgfvgfvwwwgffgwWVvfvvffvwfffwfgwwvwgffvwwgxwwwwwwgwvxwfwfgvggwwffUfVgvvxxgwwwwwfgfwgwwwwvwgwwxwfvgfffefvwwggfwvfvgggwvfwxwvfwwvxwwwgggwgwwwwwxwwwgwwvvggwWGgwvwvwwwffwwwxggwwwwwwwwgwxxwgueguwwFfuwwwxwwwwwwwwwwfgwxwhwgfxxXFgffuvvvwwVevwgwwxeefufwVUvwwwwggwgffwwwwwgvwwxwgvgwvwwXeeVuwvFVewgwgfwwgwvvwwvwfgwxwwxgvgfwvwwwXwwgUfuwwwwggvxxwwWfgfgvwxwwhvvvwwwfvfvwwwwvvwwwxwwwgwwhgwwwWfewvgwwfwvwwvwwwwfgwwwwxvxwxgxvfvwegvwwfggwwwwwhwwxwwuwgwxwwwwwwEWdVvfwwVfvwwuffvvdUfWfvfffffgevgegwvWfffggvwvfwvwvwwwwwvwvewfTWvvgeVVwwgwwwwwgwxwwdVWwwwwfvvxFegvvWffuwWvvefgvwfggwwgvwwwwggwuwwvwxxfgwxgwvvwwgwxxwwxxwxwvwwffxwxxwwfwwvvxwxxwwxxwwwgfwgvvwwfwwvxxwwwwwxxxgxwxfwwveUuggwwfvwwgfgvfggVegffefWUevuwwfwwwgvvgwwwwwwxfwvgwvwwwgfwhgvfwgfvwvwwwgfwwwwxwwhfwwvgwwwgvvwwvfVVvfffWwwfwwwwvwefvegwfgwvwwgvwhwffwhxvhwxwvwwwfwwxxwgwxwxhwwgvwgffwgfvwvffxwwxfvvwgwwgwwwwvxwwxfwffvwvfffgwwwvxggwgwvwwxwghwxwwwwxfxwxwvvffvWUuwvfUUwwwwvggfvwwgffwwgvvgwgfvwwwgwgwvwwwgvxggxgVUuwvvUUwgwwvvwwfvvwwwhvggghwwvggwwfxwfxwwggwffffvgvffwxwwwgggwfwvvgwwwwfgwwwwwfwgvwwxxxwwgvvvufvvgVfuwgwvwgvvvwvwwhefvvgwwgwvwwwxwhfwwuWwfvvvggwwggfwgwwwwvfwvxvxvwwwwwxhVVefffvwfwfffvvwvgfffufvfevwggwggvggwgwgwgvvgwwwhfwwwxwwxXefffggffffvvggvfwUfgwwwwvgffwwwxwwvgwwWfeffgfgvwwfuvwwvggfgwgwwwhgwgvwggwwwxfvgwwxxxxxvwxwvgfUwwwwwwwfwwfwwvvxwgxwxxwwwwgVwwwvwwgxwvxwxwxwfwwgxxxxfgUDvvgvwgvwwwfwgfvVEtwfvfUgffffgwfwwwgvwvvwwxfvgfwfwwwgfwvffvfgvwwwfwwggwwwwwwvwwvwwfUwwgwxwxgwgffwgvfvfwvfUgvfgfwwgvgvgfwwwwgVuwwvvwggwwvfvwvwxghxwfVwwhVvwgfwfwvvwwggvwfgwvwwvwwhfwwfwwuvwwvxgwwgwwwwxxwwxhVvggewwewffgvwwwgfgvuwgefvwvwgvwgvgwwxufwwwxvwvwwxgfwwfwwegwwwwwgvwWwwwwwwvwwwwxwwwwwXvwWfvwwwwwvgwwwhgvvwwxwhgwwxwwgwwxwxgvwxxxxwxgggwxVggwvvhufwwwwxwwgwwvwwxvvgvggwgwwxgxxwwxwgwxwwywVVwfvvwguffxwgvwwweuwfvvUwgVgwwwVgvxhwvwwgwggVwwvwwxwxxxvvwgeffxxvgwwgwwxwwgxgwwxwwwwwwwWffvwgvvwxWvwWgwwwvgwwwvxwvwhvwwwwwwwwwwvwwwwwxxwwevfgWVfgffwvvwfvgffwwWffffggvvwwvwvggeeefgfffuwwwwgvwfgvgwvwwwwhxgvwvwvXffVfVfewwvvgwvwvvgUVewvvfgvfwvwgvfWfefvggwvgvvxxwwvvwwfwwwgeeUwgffVffvvvefgggvwvggwwgvhwvvvwvwvxWffWVefffgfggfgwwwwgvwvvwwwwgguwgwwwvwggwxhxfwxhhhwxgwwgvfweVwvfvwggwwwwxxfewfvvwhwhwwwxxUevfvwgwvwwwfvwfwwwwxwwwwxxefwvfvwgvwgwwwwxwfvffwwWfwwwxwwfwwvgvwwwwgxwwxxwwwxwVvwfxWwfwwxxwvwwfwwwgwxwwxvgxxwxwewvefvvvwgWwvwwxwfgwwvwwwvwgwwwxwwwwwwwwxxxxwxxxfvvfWefgeggfWguwwvwuwgefvgfwwwgvvggwwvxWfeVfvVfwugvgwvuVfwwwffwfwwvwuwWvwuwWxwwGUVfeVVVvgfeevvvwfFUeUufUfvvgvggffUfWfVfwwfeevgwwwwwvwwvwwWeeUfffgwvwfVfeffvgfvggvvvgwgvwwwwfvwwwxwfWEUdvffVfvegfvgfVfuwvgvvfgvggfewffvvwvfwwvvwgvgwvxwwxwwhvxwgwhxwwWffwwwwxgvwWwwhwvxxxxwwxxwwwwwvwwwfVgwfwxwwwxwwwwwhxxwxwwwfvWvWVUvfwvvxwgUvWfwffvwffgfVUfVexwwwwwfwwvwxwggwwfgfwgwgVuwwvgvffgvffUVexxwwwwwgvfxxwfwgfwwwwwvwfwhwwwxgfvwgvxfgvffvwfwgfVfefVwwwwwwgwvxwwxwwwfwxwwgwxvwvvwwvgWffvwgwgggwvgggxwvgffwwwwxwxfgfvgvVefvfgwwwvvwwhwvwfvfwvvwhfwwwwgwhFeUfffffvwedfegwvwfgvuwwdUVfuwwwvwggffgwxweffwwwwgefvgwwxegwfgwUUvvVVfvgwfwwwxvvgwgxxhewvfwwwwwgvvWfufwvgwvefvggwGTevfVVfvwxwwxfvwhwwwwfwvgwxwfgvwwwhwgwwfFfgwwwvwgwwfvhwgwwxvxwwwwvwwgdffggUVwwwgxwwwwxhxwfvwhfwxwwwxVEWfwvwwefWwfvwhvuvgfvFWfEVwgvgwwwwwuwhwwUVfwvWwgvgvwvvVeefvgUVvgfwwwwwgvWwwgwwxvgxxwwwxgfwwwgvvgHgvFffgweVwwvewewxwwwewwwwgwgxfvxwvhwwwvvvwwuffvwxvgvvwwwweuwvwgxwxwxwxwxwfgvvfgfvvwwwxwwwwwggvwwwwwxgfUUfgwwgvvwwgVwwvgfgvefeeWvfwgvgwggwwwvxxffggwwwgfwwvwvvhgvfVVewgfVfvgvwwwwxwxxwwWVvwvwxxwvWffVwgvewwgeVggvwwgfvvwvvvvxwwwwvwxxwwxwxgfwgwwwgxgxwxxxgxwfwwwxxwwgwwwxxxwvwwvwgwvwwwxxwxwwxwwgfgwwhvwgwwwwvvwgwvfvwggwwwxxwhwwggwwwwwwhvwgvgwgwwgxwiwwvwvgwwfwwwhwwwxgwwggwwwgwwvvxxwxwxwxxvxxxxwxwvwvwwufguwwwgwwwxwvwwwwvwwwxwwxwxwgwxxWeVwwgwhxwwwwwxxwxwwvwwwxwhevfegxwgffwwwwvwwWgggVUVvwfvuggwvfvwwvwwvfffvwfwwwwggwghwwVeVwwffvgwvvwwwwxwwwwvwwvxwxwwwwefvwwwgxwwfgVeeggfwwwwggwwxwwwgwwwwwxwxgfwwgwgvwwwwwxhgwgwfWffgwfwvgwwfwvwggwWwwxwwwwxwwwxxwwvgvvfVgueegfwxxwvgvfwgwwfgvggfguhgvgxdGfUuuegfVfwwVewWvfTeevfVwvVTwggVffvwgevvgwvfehwxffwhwggvxfdvwuggwveTfUgWwvvwgfwwwwwffwwwwvxxgfgwwWWwfwGEeVufgvffwWvfUgfgVffwwvwgfwwwxwhfvvwwgwwvvvwggvvwwvwvwWgfvvwwwwwxvvwwwgfvwvwwwwvwwwwxgfvWvwwwwgvvwwwvvgwgwwwwxwwxhwxwwWfUfugffgwwgwvfvwwgUffvwfefegvggvwwggwvgwwwwwwwwwwhfxwwwwwwWefVfwVfffwuvgvvwfeVwggvvwvwwxgvwwwwwwWffVvgfWwwgvguwwgggfvwgvfgxgwwwgwwwvgvxwgxwwwwvxwWfggwVVwwfvvgvvgwwfwwxfgwggwwwuwwxwxxvvvgfwfwwggwwwfgwxwwwxwhxwwwxwwwwwwwxEUfvetfVvgVwwgfwxwUevFVeVfVffwvwUfvtfVuwwwWffwfwwffwwwwwwTegUdfVgfgUwwwVwevfvfwwwgwfvuwxwvvxwwwwwwxTefefefvggGffUfwwwfUwwwgfvwuWffwvvhgwwwwwwxwgvwwwvxwxwwwwwxxwxwwgwwwvwvgvevxxwwwwwwwxwwwgvfwwxxwxggvfvfxvwwgwegegwgfUwfgvfVfUFUxxhwxxgwfxwvxxxwxxfxwxxwgvWfxwwwwwxwvffugewxwxxwwwgwgvvxgwwgvfgwgwfhwuvwgugUuVEfwwwvwfgwxwwgfwwwwvgvgffxwwgwwgwwfWfdfxwgwgWwVVVgfeVTEuxxwwwxwwxwwwwwvfgxwxwwwwwwvvfwwwwxgvvwxwwwgfVvwwwwgvwwefVfvfUUwxwxxwwxwwwwgvwwwwwxwwxxxwwwwwxwwwwwwwfgfvfgfUxwxwxwwwxwwxwwggfxwxxggfwwffewwwUfxwxgfgwwxxwwwwvvwwwgfwwwxwwgwfvhgfVuwwvfwwxgvfgvVUUefxxvwwgvwwgvgggffvxxwwwwwwwwwwwgwwwVVwfwxgffvxwwgwwxvfggfgvgeVvwgfffgvVTwwwwwxwwwxwvwxwwwxwwxxwwhfwxwwvfghgXgefgWffewvgfxxggxwwgwfwxwwwwwvgwxwwwWffuwgwvvwwgeuwvvwwxwwwgeuhvfvwgfVfwvgfvgwwwfgfwwwgvwwwVVfvTUEwwweVfffEEvgxwxwxwvxgxvwfgfVxxgwxwxwxfwwVwwwxgvwwwgfefvxwvwffwvwwVVVxfvgVWUeUDwxxwgxwxgwwgwwxwwwwwwwvxwwxwxwwfwvwwWVfvgfWwgffFwxxgwwgwxxgvwwwwwVgVwwwwfWeewwgwwwwwwvvwwgffgwvggeufUwwwwwffwvvwfffvwwffuffVEtwwVVffTwvfwwxwwggvgfvwgffwwwwwwvwwggvwvvgfwhwggeuwgffwgvvfgwwfgvgeuwWfUefFTDugwgfwwwxwwwwwwhvfwvxwxxwwwwwfvwvwvgfwhvfwwgfffvfggvwxwwwwwwwwwgwvvgwxgggvfwwwvvfwWfewwwwgwwvvgwwwwhvxvggvgffvwwwwgffvwfgffvfvfwwwwwvwDETwwwvgeVffUwwvxxwxwwfwwffwxfwffvxwwwfffggwvxwwgfvwgwffvwfwwxhwwwwgwwDUUUUwgwwfeuffwxxwgwwwwwxxvwwwwwwgwwwwxwxwwwvwwVVwwwwwwgwwgwwwwwwwxwwhggwvwweefffwwwwfgffwvvwwwwwxvvvfffgwwwwwffwvfwxgfffvvwxxgvwwgfVUfUUUEUdfvwwwfexxxwwxwwwwfvgvgwgvgvvwwwwvfwwggvwgffvvffwgvwffvweVfgUvfeUfEUTgUvwgvvWeVTEevvVUuxwxwwxwwxwwwwxwwwwxxwwwfwwwwwgwxxwwxwwwvwwWVuwwwwwwvvwwffvwwwwwwwfffxfwxwwwwWffuwwWVwwwfvwwfffwwxwvvwwvffwvWVfvxwffffwVUUeVfTDwwfVVxxxfffffTDffxwfwwwwxgxwggwwfffwwwwwwwwwwwweVfffwgvwwvgvgfvffvffgvgUVuwgwxwffffVeUfffeUwwwvwwwwwwwxxxwwwwwwwvgvvwwvxwwxwwwwwwffgvfggxwwwxxwxwwvwwwgvgvffvvwwxwvwvvfvgvvvvwwwwwwvwvfgwwwwwwwwwvwgwvgwfvvvggfVfeefVUVUfvwwffvgvfUVUVfffwwxwwxwvfvwgfxgfgffVxwwxwwwwwwxwggveVffxxwwgfVugfvwwfvfffxwgwWUVwvgfvffUEwwwxwwwwwwxwxwwwxwwwfwfffUVxggWfuwwgfvgvvgvgwwxwffxxwwwxwveVxwwggfxwwwwgvgVuXfwwvgvffxwxeVxwgvwwgfVuwfwgeTEwwwvgffgVUwgfffwvgUDgwvgffUxwwwxxwwwggxxwxwxwxwwgfxwwwwxwggvxxwxwwgvfvxwxwfgfwwfffwgweUxwwwxwwwxwwxwxxwxwwgvfxxwggxwwwfwwweVxwwxwxwgwxxwwwxgffwxwwwfxwwgggffeVwwwwwvxwwwwxgffxwffwwwvwwwfvvfWVwxxwwWfuwvWfeffxxwwxwxgwxwfxwgwxxwwvUfwxgevgefvgwwxwfwwwgggvg5UwwefuwwwgxvffDuxwgfxwwgxxwfxwwwhxxvwxwwwxgvxwhwwwwgvfvwxxwwwxwwwgxfwVewwfefwgxwvvgvevwggVuwxgvwwwgvwwwxfwwfvxwwvgvwwfgwgveFdvgvffxwggwhfffU5wxxwwxgwwwwwfwvgfxgwgvwxgvwggwvwgxxwgvgfhwvgfvwfwwwWvefUwwwwwefUfVxhwwxwhwwhvvxxwgwwxxwwvgwfvwwwwwwwgvwwwvgwvfgwwwwhvgwwxfwwwxwWwvWghwwgwvgfvhggvwwwfwffwvwxwwvwgggwgvwgwwguVfUuwwwwWfVewuugwuvvffwfwVfwefvwxwgwwwwwwVvwwvgwvwvfwxwfwwvwffwgwwwvuvgwvgwxgwwvfVgUggegvVVUwgvwwwfvggeUuvfffuxwxxvxwwwxwwxxxwwwwwwwwgwwgwwwgfwwxwvfgwwvvwgugwxwwwwwwwWwgvwwggWwgwwwvwwwvvwwwwvwwwwwwwwgfwfxwvgwwwwfwwwwvffxvVVUgvgggggfvVwvVVUwxwwVwggvfwfxxxxxxwvvwwwwwwwwxvwwwwwvgwwwwwwwvwvvvwwwwwwwgfggfwwwvvwgvwwwgxgfwwwwwwgvwwwwwwwwhgwwxxwwwwxwwwxxwwwwwwwwwxwwxwwxwwxvxxwxwwwwggwwggwwwwwwwwwwggfgwgwggwwgwwfwgfwwwwwwvwvfxwxwwwwggfwwwwwvfwwvwvwwvwgwwwvwvvwwfvwwwwwwfwwvwxwxwwfwfgvggwvwvgVwwxwgxwfwwxwwwfwwgxffwwwgfvffuxgfWffegwvwUEDugwgvvgfvfgwgwhwxxwgfvxwwxfxwvvfxwxgwffwgvfvwfwwgfvwgvgxxwwgxxxxgvhwxxwwvwwwvwgVeuwwwwvwwfgvxxwwffxvvwwffwwxwxgvvgvfUDTwgwvvwffgfvgfUVvvWfVvwwfhfwwvxwwwwfwwwvwwgWfxwwwvVwwwfgggwwVwwwwgvgwfwwfwgfVUTDtwwwwwggwfggffVfvWwxwwxxwxwggfxgxxxwxwwwgfwWwfwvfwggfxvwhgggfvgwwvxwwwwggxwvwwwgfgewwwwxwwwfggfggfwggvwgvfvweuxwxwwxwxwggwvwwwgwggfeuVuvfUTDdVugwwwvwwwvfvwvwvxwwxxwwwwfxwwwwwvxwwfUwwwgfwwffvvfxwxwwwwwxwvEEwffUUwwwwwwvwgffvwwgVuxwwwwwwxwwwxxxwwwwxwfgfxwwwwxwwwwwxwwwwwwwfUwgffwwxxwwgvgfvgwffvxgvwfwwwvgwwwwwxxwwwfxfffwffUUwvgEExwwggwwggfUwwwwwwwwwwfwfwwwwgfxwwwvwwwwvvgvwfwggwwwwffgffxwwwfxxwvgeffeUeefeVfWewwwfvwffwUwgvwgxxxfwxwwwxwxwwwwwwwxxwfwfwxwfxwwwwwwwgxwgwwwwwwwwxxwwwgfwfvwgfgvggxwgfxwwgvwhwvgvgfvwwwfwgfxgvfxwwwgwxxfUuggUVefffVuvfgfwwgfwwvwwuwwguxwwvwwgvxguwwwfggexwwgggwwwwwfvwvvwxwwhwfVuVffevxvwwwgwvVfwwwfgwefUvveffUFUtwxwwgvwggwvwwwwwwvwwwvfxwgvwWvwVwwhwvvfggdfgeevvwwwxwgffvvewwxwwvgfgfwxwxwuwgggeefeUfwwhwgfwWfwfvwwfgVugUeuVffugggwwhfgfwfvfVefVggwWVwgfeVeEEeFTExwxwwxwvvwwwWwfVuxxwgwwwwwwwgvwggwvwwwwwwVfgfefwgfwwfwggfggVufffffE4SfgxwwxhwwwgVuwxwwwxwxxwxvwfUwhwgvwxwWwgVuwgvggwwxwgggfwgvxvwwfwwgwwwfwwgvgwwgffEfggxhwwxewwfvwwgwxwWfgfevgfwwwvwfwfwvwwwgVTvwvfvfUgwvvwWD3evffvxwfgwwVfwwgfvvvgwfgwwgvhgxwgWxwvuwWvgWgwgfwvvwefFfgdfwxFfvwggeuffU5feuwffeEfewxwxxgxwwwwgxxxwwwxwgvxwwwwwxwwwgvwwwwgfgvwfvxfgexxfxwgxwvwfwWwgwfgfwfvfffVuvfxwffVefuwgvxwwfwWfxwwwgvgvwwgfvfWeetxfgvfFewwwwvfegggggVUfffE5vUVVVE5xxwxgvwwwfvwwvuggfwwwwxwffwwgfgwfwgxvfvwgUwgfggvhfvwwfwgETfVfgfwgwVVEvfwvxwwxwfwgvwgwxxwwvwggwxvxxgvxfxwwvwggwvxxwgVgwfwwwvwwwfwxfgxvwxwgvwvvwufdvVgwwgwWWfVfVghvxxVvvgggewgfgfwwvffVwgfwVvwuvwgfevxfVgwufeTefuffewVEtxwwxgwwwwgvwgwwgvVwxwwxwgwhgvxwggwgwwgwgfwfvVuwwvxwwgwwwvfvfVeFtgvgfVeFdfxxwxwwwwwwgxvwvxwhwgfxgwgwvwwfwwwwwgfvwgfWuxvwgxxwwxvwwwgvwwwwxwwwfvvfgguwvwwggfuwxgvgwwfwwwwwwvWwwwwxgggvwVvgxwwvfVggffUfDgffffUfDgffgwhxxwxvvvwxwhgfvgwwwfgwwxwwwwgvxwwvwwwxwwwgvggfvvwgggvwwwwwwggfVVffeffwwwfffwgxxwwhhwwvxwwwxwwhgwwwfvxvxwwwwwwwwwwgffgwwvvwvvwggwwvwwwxwwwwwwwwgxwwwwvwwffvgfwwwwwwwgwgwxfwwwwwwvggfvgvfffvwfxwwwwwfvwgwwwgwvgVUUfVeffvffgfvwwgvxwwwxwfxwewgvgwvewwxwfwvwxwwwwggfgxwwfVtvfgvwfgefVfwwgvveuwwwvfvVUUwxwwxxvwgvwfvhhfvwgwWxwgefVFgxxwvvWvwuegeeguxwwwxwwwguwVwwwwwwfgxxgvwfhwwvfffdVvvwxwfEfWTxwxwvvgwfvfffgxwwegWVwwwwgUU5U5wfhgfwwwwfvfVfEfUvwwwwwgwfwxhffwvwgwwwwgwgvwgvgfwwwwwgwfwwwggfwwwgfegwUefffwfvgewwfwgfVVUwfvwgxwwwwwwwxxxwwwwwwwwxwwfvwwwwwwwxxgvwgfwwwxwgvvwxxwxxxwwvhwffvfvwvvgwxwxggggfwgvwwgxwweffvwgwwxwwwfgwgeggfxwfVwgwfVUevUevfvwvwwffwxvfeUuvvwwvwwxgfwwxwxwvwwewwfwwwvhwwhwwwwwwwggwvgwewwgvfwefVvxwfgwwwgfdvvfffvwwWfFvwxwxwxxwwxxfwwvgvxwgwwwwwfwxwguwgfwwwwxwvxwgwfvwwxxwxhvwwwgvwwwgwxwwxUwwwwwwwgvWuwwvUwxgWfvwUgwfwwwwwgwvvggxwFdwgVwgwxwVfDgVfwggfffwgvvevgfgxxxvwxxwwgwwwxwwwxefVwwxwwwgwwwhvexxwggxwvfgvgwfVxxxwxvxwwgwwwxwxwxwwxwxxwxwxwwhwffwwxwwwxxwxwhgvxvxvgwxwgWfwggefxwxwwxwxwwwwwwwxwwwxvfwwggwxwwwwvwwwwgvfffxwfwwxwwxwwwwwvwwgfxWTvwXfevwxwwwvwwhwwwxwwFfwvgvwwwxwwwWfevwwGfvwwhxgfwxwvxxxwxxgxwwwxwxwwwvxwvwwwwwwwwxxgvwwgwggwwUewwffwxfhwwvvWfUfwvgeuwwwvxwwwxxwxwgwgwwwxwxwxwgweVevxvvwvgwxwxvgwTVwxwwfwwwxwxgwwuVgwwvwwwwgvwwwvwUVexwwvxgwwuVgwxxwwwxggvuVfgwwwwdEVggwwxwwwwweVgwxxxwwwwxxwhwvwwwwwwxwvgwwxwwwwxwvwwwweVgxwwxwxwxwwwvdEVwwvhveVgfgxgwxwwhwvwhwwwwwwwvgxvgvwwwwfWguvwwwWfuvwwgWguVeUvvVfufwgvvwwgfwwwwgwxwwwfxwgvvwwgfwwwffvgffggeevwwwwvgfwwhvvfwfwwwwfggfVvfgveffgfefveWfxwwwwwwfwwwvvxwxwwxwwwxxxvvwwgwwhvwwvvwxvuwwwWgvwwwfvxfwwhvfvwWwwWgggVwwheuvwguuvwvWfvwgwwwwwwwwxgwwxvvwwwgwwvvwfWgwwgwwfwwugfffVfgwveggggffvfvwwvvxxwwwxxwxgwwvvfwxwfwwwwxWVvwwfgvwwwwxwwwggwfgwwvvwxwwwwwxfvUffUfgvvgwfgfvgxxxwxvwgvgfvwvvgwxwwwxxwxxwxwxwfwwwwgwwfwwxwwwwxfxwwwfvwwfwwwgvwwxvxwwheefvfffeefgvfwgvhwwwwxxwxwfwvgwwvgfwwwxwwgfvwwwwgfwwwwwwwgfVVefffvgVefwvwwxwwwxxwwwgvxwwxgwvwvxwwxxwgUUwwxwggvwwwvwxxxwwwwwwwwgwWefffvwwwgwvWexwwwwgvxwwwwvwwwwxwwwvxwwwwwwxvwwwwfwxxwgxwxwwwwwxwwwwwwgVeffwwwwwwvfVugwwwwwvwwgwwwwwwwwwwwvwfwfwwvwwwgfwffffUUgwwwwgvwwguxxwwwggwgwgvwvfgwwgguwgfvggwwveeVVfxfVwgxvvvWgwwfvwghUgfewwgwffvfvggwfffufxxxfxwwwwgggxwwxxwwxxwWwwxgvxgvwgwwvggwvgwvfxwfwxwgvggvwwvwwgfffvvwwggwfvfggfVgeVwwwghgguvwxxxwggxgwvwwhgffvvWVfuvVeeVfwxvvwvggwvfvggggvwxwfwxxwwwxwwhgvvwhwfwxgvxgfwVTEuwxwxwhgvvwwxfwwwvfgxwxwwwwWETuwwgvxwwwwwggvxgvxwwwxxxxwwwwwwwwwwwxxhgvvxwwwfwwUDUwxwwwwggvvwwwgvxvgwwwwxxxxwwwwxwwwgvxvfgvgEUTvfgfwvfgwwvfgwfwwwwvfwwwwwwxhvwfvwwvgwwvvvfgffgfwUfwwfgvggvghvwvvwwfwwvUfgfwwgwwfUewwfgwvgUffwvwwwxxwfwxwwwwvgwwwxxwwgfwxwfxwwvgwwggwxwxwwwgxwwfwwwfwwgvVVfwgfffvvwffgfveVfgwxvwvwwgfwwwwwwwvgwwffvwvwfUfvWfeffWeffvwgwvwWVevwwwwwvvwwwwwxwwgxxgwhwvvfgvwwxfwfgUThhxvwhwvxfgvhU5UxvwxwwghvevwwgwwgwxfwhwvxwwwwxwwwwxxxwwwwxxfwhwvxggvhfWffwxwwfXUSuwwgwwhgvxwwwwxwxwwwwwwxvgggvVEevggvgxvggxxvggvgxwwgvwxxfwwxwwwvgvvfWvfwevwvhVegwvgvgwfxwhgwwvvWwwgvfdvfgvewgvwwgWveVfwWvwgwxwvwwwwWvgvwwwxwxxwwxwwewwwvwxwwwxwwgvvgwxxvvwwwgvgvwgwvgwvegUvwvwgvwwgVevWfwgvwgxvewgwwvwwwwxgvvWwvgwvwwvwfwwvgefweVfevwwwwwfwwwxWfdvwvxgwwwfvwwwgvwwvwwwwfwwwffwffggfxwwvffUvgvwgfxwwgvfvwewwwwvWewuwggUfwVwwvgfuwwwhvxwwwgwwwwfxxxwwxxwwwwggxwwWvwgfwvwxvwwwgvuwgfwgwxwwgwfffevhwgffVfwfwfgvevwgwfvveffuwwwwxwwgvvxwgwwwwwwwwvggfffVfwwwwvvgvffxwvWfgwvvVwwfvWfgvwwewxxwvwwwwvwgVvwwgffgwwfuxfTggwwwgwgwxvwwwgfvgvwgwfgvvvxfVewfeguwhwVFewgxwwwWxwwfgvwwwwxxwxwwwgwgxvewgvwwwxfwgwwgWwwgwwwvwwwwfdgggFuvwvwvgvwggwfwgxggfwwwwvxgwwgvuwxvgvghwwvwxwggwwWgfgetvgfvggTuwwfwvwvfvwvgvwwwxvgwwgvxwxwhwwwwfxwwvfwwvfvfUvgfgfvwwvffwwfwwwwwwgvwvvfVVgffVVwfwggfvwfffvxgwwvxwwwgfwfwwwwwvvxwwffxwxgvxwxwwvwvvwxwxgvggwfwgvwwwgffUugfvgffUgVuwwwfvwgwwvgwwwgxwwgfxwgffwwxwwvvxwwwxwwfVewwfUVgfffUwgvwwwffVVwwwwwwwfvgwwxwwwxwxxgvxwxwwwvgffxwwffwwxxwxwwwwwwwxwvfvwvvwwwwwfvwwwwxwwwwwwxwxxwgwxxwxxwxxwwxxxwwwvggxxxwwwwwwwwxwvgfggwwwwwgfwwxwwwwwwwwwxwvvwwwwxwwwggwwvggxwwwwxwwgffgvvwwxwwwxwgffgvvwwwwwwwwwfwwwxwgfxghwwvwwwggwVTxgfwgfeuwwfxwwwwvwfhfwVUwvVVVxwhwwvwwgfvwvVVvxwwxxwwxwwxwxxwwxvxvwgwxwwxxwwwwwwwwwvwwwwwwwwvwwwfdwwfVVxwwxxwwwvvvwwgftwwwwwgwgwwwwwwxxwxwwggwvVVVwggeEwxwxwxxgggwxxxwxwwxvwwfwffwxfvwwgwvgwwwxwwxxwwgVvwhvewwwxwwvfgxwxwwwwxwwxwwxwgwwwxwwxwwgevwggvwwxwxwgWfxxwxvwwvfwwwwwwwwwwwwwwfhxvgfVffexvwwxxwxwvwgwwfvwwwwggwxwwwxxghwvfWWgvwVevvgUfwvwggfgxwwwgwggfuffvVfvwwvfwfwwgwfwvwwfwwwxwwguxwwwwwxwwxwwwgvwwgVwwxwxwxwwgfxwwwwxwwfWfwvvuwgfwwwfwwvvwwvwwvwvfwgvwfgVfwwwwxgVegfgVfVewwwgVgxgvwhwwgwwggwwwwgxwwwxwwwwxwgvfwfwwgvwwxgfvxwVefgfwwxxwwfvgvfhfxxwxxwgvgvvvVefgffwwwfgfeVxwwwwxxgvfwfwwhwhwxwwwfggxfxfgvfxffhfwwwfvxwwxwgvfhfxggfvwwwxVefgfwwfwffgfeVwxwwfwfxwhwhwgvghwfgfvgwwfwfwwgvffwvwxvgvffwfvffwVfwwewxwwwxfwwgwfwwvewwgwwgggffeefUwhwxwfwfwvfwwwwwgfvgfwvwwwfgffgffgeVfwwwgvwgwwvvvwwfxxwxwvxWwgwwgvwxfwwvwggvwwvfvwgxxhwvevvvwVwxwwhwgfwgvwfvgwffvUffeffffvuwhwxxgvwwxwxvvwVvvgwvgxxwgvVVvgewfvggffwgfgwvvgfVUeVfgwvVwxwxhvwxwwVwgvwwwwwfvwhWfgggEfwgvxwwwvwWggwwwwwgwwvfvwxvwFfgvvgwEfvwvfgvwwxwxxvwwwwwvhwgVvxxxwwwvhvxwwgvwwwhwgWvwgwwxwwvxwvxgwwwfgwvfwvwewvwgvVeVfwgvvgfVFevwwgxvwvwxwgwgvwhvwwwWfvgwwxwuwfwwvhvwfvgvwwwffgTfvfgwWetvwgwwwgxwxxwxwwxwggeuwwwvxwwxwfwwwwfeUuwwwwvwxwggewwxwwghgwwvWVdwwggeegxwxwvxwxwgguxwxwxwwwwwwwggxxwwwxwvwwwxvxxvxwwwggugxwvwwwwwfgfuuwwWVddggwwwggwgwwwwwwwwvvvvwvwwgwvVWwwwxwvVVwggvvVWVVUvvvVVwwvfwwvfvxwxwxxwxWvxwxwfgvwvgWgUVgvVewggxwwxwwwfvwxwxwwwvvwgwwvgVgfvvwWgfgwvxwwwwwwwwxwxvvxwhwxxxwxwwwfwwxwwxxwwwVvxxwwwwwhfvgwgwfgvvfvfwwvhvegvgwwfewwgggwwwgxwfwwggvwxfwfVvxfUvfwvgUvwwwwgwwgfgfewwvgwggewgwxwwwwxxggwxfwwvwwxxggvwxfwwwxwVfvwgfvwwxvwwxfwxwvggevwevwwgffwwwwwwxgwvxxfwwxxwwwwwwxwwwwwwwwwxxwwwfwvfwwwwwvwghwWgfwgfwwwvvwxwwwxvwgVfvuwgvwffvxguffxgfxxefgffwvffwhvfvwwxVfwWwwwxwfwwfewWwfffvgwfwwxwwwwgvwwwVwwwwvgvwwwvfgugfUfgwfuwvgggwwfxwhwvgvwgwvgvvVgUfvuvwvwwxgxVewgwggwvwxwwwwwgvxwgggxwxwxxwxwVwwxvvxwxwwwxwwgwwggxgvgwwxhvgwwWgwgvfFvVgfeugvxwhgwgvgWfgWwvwwxwvVwfwwuxxwxxwgwwgwwggwgwgwwwvvgVfvuffdewwfwwvwwwxgfeuwwgwwwwxwwxwwwwwfwwghvfggffvgvffvfwwwwfgwwxvgvgwfhwvWWvfvwhwwwvvwfgfvwxwvxwxwwwxwwxfwwxxwxwwwwxxxxwxwwgwvxffwwxvgwvvggwWguffxxwwgwgwvwfvvwwvxwhgvWvwgwwxwxVwwvgwvvwgvffwgwgvwhwvWgwffwgwwxwxvWgwxxxwwggxxwvfvwgwvgwwggwxwfwwwwgeuxwvfwwgwwfvwwhvwwwwfgVVwgeuvfvgvgffffxvxwwvwfgxxxwwgwwwxwgwwfgwwwxxwhwxwwgwgvwxwfwwwxwwxwwwfwwwwxwwvwgfwgfwwfwwvvggfUfUfwwxwwfgfvgwxwwwwvwgfwxxwfwggxxxxwwwwwgffffVeufvwwgVefwvwwwwgffvxwwwwwwwwxhgwwggwxxWvwwgfWvuwxgfwwwwwwwgxfvwwgwwgvfUVeFUdxwxwfweVgwwwggftVefveWeuGfuwgwxwhwgwxgvwxwxwwfwwgvvxfwwxwWwwewgwvvghvuvvWfuvgwgvwggfgeevwwvvwwfgfxfwwwvuwwhfufvuWffwvvfvffeVfwfwwWfufegeefuVFUwxwhwwvgwgWveVwfVgwhwvffVfTEefvvwwgwxxxwWwfvegvwffvwwxwvgwVwwWwxwwwwVvfvUfexxwwhvwwwwfvvvffvVwffwUfeegwwwxxwwwvxwggwxwxxgwgwwxwwxxhwwwwwwwwwgvgWvwgwegxwwxwvwwvVgfggwwwxwwvwgvgvfwwwwwwwegvegwxxwvgfgwvvgwgwwwVvUVeegvegwgwwvwwvhgvgvfvwvegvvVvVeUfvVvfxxwwwwvwfvwwxvvwgffwhfgvwxwwwwwvvwfvheuwWETuxwxwwwuVfheuwgeVvvfffgVeVewxwwwxxwxwwwwwxwwgwxwwwgwghvwwwwvfgwwwwggvxwwgwvgeuvvwwwxwwwgffvhgwwvgwxxwwggvxgwvwwwgvwfwwwwfUfgvwwgffvwgfVfgvWTwwgfffxxwwvwwffxwfffwwvEEvgvffVVvwxwwwhwfwhxgfwwwwgggvwxwvwwwwwvwwwgvwefvwvefVVfwfwwhvwwwwwgvfVfwwwwwVffufwwvwxwfxwvwxwgwwwgvwvwfWVvwfwwhvxwwxwvfffffwwwwwVgvvfwwffweffgghwhwwvwwwwvfffwwhwfffufwvvxhgwfvfwvfeVVfvvfggVffvfxhgggvwxgfffvwggvfffefgvvwgwWgvxwwhvwwwfwwvvwgggwwgwwwwvwgvwwgwvwwwffgfvvgffvxgwfwgggffvgffvvfffvwwgfwxwwwwwwwwxgvxwwwwwwwxxwgwxwvwhwvwwwwwwwwgvwwwwwgvwwgwvxwwwwwwwxwwwgwwwggwwgwgfvwwwwvxwgwgfvwgffvgfffvgwffwvwxvgwxwwvgwwwffwffffwwwffwgfffgfwwwvhwvvwwxggVWwvvvfwxwfwwwwwwxgvgghxwwwWWVvVgwweVfwvfwwxwwvfvffeveVffwfggvfwwwwwwwwwgvgwwwxwwwwwwwgvvwfvwvgfwwwvvwgvwwggvvwffggVwgeggwwvwwwwgfvfwfvfgwwvwwwwxwfvwwfgwfvwwwwgwvwvfvwvwgvwweUgfvfffweVevgwfwwwgggffvwwwwvwgwgfWfffUvWegffgwwwwwxxwwwgfgxgvxxgffgfvxgvxwwwwwwxwwvvwffxVewggVUdgUvwwfgfffxfwwhfvwgfueVeUVxgvwxwwwvgxgwwxxwvxwxwgfgfVxxwvwvwwgvwgvfVuwwwxwwxwwgfffwwwwfgfgwxxgvxwwwwfvfggfvwwvfUVUxwwwweVvwgfvffuUEtwwwvVfVwwgggVfVUDgfvwwgfUwwwfUweuxwwwwwghvwxxffwwvwwvffwwwghgwffgwfgwgWevwwgUfvwfggfwVVvvhvvffxfwwgffUffwvwwxwwxwwxxwwwxwwfvwwwwwwwggvwhwvwwwxxwfwfffwwwgffgwwwffwwwfwvgwVVvvwvvfvxwwwffgwwxfwwgffvWfevgfwwwwfweUfwwxwwWVvwxwvgfffffgwgwwwgVexwggvgvvwwwwwwwwwwxwwwxwwwwwwgfxvgwwwwwxwxwwwwffwwggggvvgvwwwwvfgwwwvvgvwwwwwwwwwwwwxwxxwwxxwwwwwwwwwwwwwwwwxwwwwwwwwwwwwwwwxxwwxwwxvvxwggvwwwxwwwwwwxwwgvwxxwwwwgfwwwggwfwgggffwvffvgvggvvwwwwvfvfwwwwxwvgwxffwfwwwwwwwwwxwwwxwxwwwwewwvwxgvfgfxwvwfxxwgfgfwwewwwxgvfWfwWvwfwegvfvxwwfhfgvvgwfWfvgxwwvxwwxwxwxxxwwwgwxwgfhfxffwffgfvWwfxxvhvfgfxwwhwvxxfwfxvwhwwgwvgwgvwvxfgvewxfgfhvwgwfgfvWwwxwgvfvggvffvefwwwwwwwgwevffwfwuxxvwxwwgwgwwvwwwwfwwvwwwhvwgwfwvVVwwgvvwWfUuxvwgvgweVUwwwxwfwvgfUwfgvvxwwgwxwxxvwgwwwwwwgvfxvwWgwwgWuxwwwvwvwffvxwwvuwfwwwgvwgwfwxwwgwwwvffwwwwgwvWfUuwwgvvwvwWVgvfVexwxwvwfWfUuwwwvugwwwwfvgfvgevgvfWxwwgvwxwgwWefWggvwfwwwgwggvwxwwgwwwgwwwVfwwwxgfvfwwwwhggfwwvwVfwwvVfvfvgvwwwvvwVvhwvWggwvgvwgwvwwxxwxxxvwwfxwwvxwwxwwhwwwwfvwgvwxxwwwwwwhvwwwwfwhfwgvxvVgvgwwvwvwvwgvxwfghwvgvwgwhvfvweffgguvgfxwvgwgvvVfgwwxwfvvggfffgwfwvfwgvvgwewwwwgwfwwgwgwxxwwgwwgfxgvwxghwvvwfwxwvxggxwwgvgfvwgehguwgvwgeUuvfvwvfugWfxfvVgeUvxwwwvvefguwhwwwwvwwwvxwwwwwvwwwxwwfgwwwwwwxwvwwwfgxwvwgfxwwgvvgwwxwvwgxwwggvfvxwwwwwfgguvVvwvwgVVUvWwgwfvwvvguwwggvwvgfVVewwxwwwffvVgwgWfwwWvVwwfvVvVvwfvwwwwwwwxwwVewgfvVewwfhgUvfwgvwwfwfgwwwffgwwgwvgvgfwwgfvggfgwwgwVeffvwgwxwvwwfwxxwwxvhwxwwxwwgvxwwwwwgUwwwwxxxwwwgfxwfwfgvgwfvxxwvgvgvffwfwwvwgvwxgxgwffwwxfgvVDuwgwvgffxxwgwwwwgfwxwWDuwhvvgUfffvwfwvwwvwxwwvwwwwwgwvfwxgwgfvwwxfwxwwgfwxffhgfwwwwxwgggwgVewwwfvwwwvfwwvwvwhwgfgfvgfvwwwwfwwwwwwwgvwxxwxwggvwwwwwxgwwwwvvwgvwgwfgfvwvwxgwwggfxfwwvwwwxwwxwwxfwgvvwxxwfUfwgvwgwffVUvwvwfwxwwwwwfwwUUwgwwwxxwgwxffwwwwfgwgwwxwgxwwxxvgfevhvwgvxwhwvwfvvvVwhfgvfgvwgffgUvxggVefvggfuVvfEvegedvwvxwgwggwgfwgvwgxwwggxxxgxxxwfwwxwwwhwgvwVwwwveuwxxwfxwvwggwhwwggvVvxxfvhgVwxfFvWwvuvvvfxhvgggwhxwwvgveVfeffdufvxwwfwwvfVVwfwgggwwfufFfveeetfgwwwwwwvvxvwvwxfwwwwwwffwwgwwxwvgxfevggvgvwwgVvwVfuwxwufwwwwvwgffgfWvwWgwgwwvwfwwuwwvwwxwwwwwwxwxwxxwwwwwwwwwxxwwVewwwwvxxwwwwVgvxvfwwwwwwwwwwvgvwWgxwwwwfxvwxwxxwwWEUfvwgvwwxwwwwwwwwwwxwVexwwwvUTwWgwgvwxwxwxwwwwwwxxwxwwwwwfwvVehvwwwwwwgfgxggwwwgfwxwwwwwvgVufvwwwgvfegfUggfVegfvwwwwgVfwwwgggVuwgxwwvwwwwwhwwwwwxgwwwwwwwwwwvwgvwfuwfwgwvxwwwvxwwgwgfvvvffwwwfwwffwwfwwwwffxwxggwwwwwxgwwwfffgfvwvfeugfwwfffxxwffwwwwgvfvwggVuvvfgvfUefwwgfvxwwwvwgwxvwvxwfwwwwWvxxwVwwggefwwVwhwgvxxfwwwwfFewwwwVvVVUSuxeghwFefgffwwgfdvgggeufUVfwwxgwwfxxwwwfwwvwxghwwhfwxwwvvfwwuuwvVftwgxwwwVfwvewwxwwgggwgwwfvVwwvvveewxwhfgfgVTwwwfgwvvfgfdeffUUxwxwwgexwxvgWfvfxwwgfwgweFggVvVU5vvgwwgvwvwwwwwffgvvfvwfWfhvxvwgvguwgwwvfwwwgVeWvfffwwwgfwfgwvgffgwffvVefggfVvvwvwwxwhxvgwfgwwvxwwwwxvvgvwgwxwwwwgwvwvwxvwfwffgfgvgwwvUfvgWeWvvWgwhvvgUwvvgvhwgwVugggggvwgwhwvVwewwuwvwxvwwVfvVffgfvgwvvhvhegffgwugwggfffwvggfefffwfwwwwvwhwwwWvwguwwwvvvwxwwgwwwwwfwwwggwwfFfvwgdvvfwvwxxwfwwwvvgUvwvgvwwXfevwwwwvxxxxxwvwwwwgwwgwwwwuwwvwvxxWwwgwwwwfwwewfwxwgwUvwxxwwgvwwwefwfwwhwwwwwhUvvwfwxwgvuvxfwuggWvwgwvfveffTffvwvWfTvwwwwgwwgwwwwwvgwwVewgvfVfwgeVfwxvVwxwwwvgfwxwhwwgwwgwgfgwxffxwwwwwfwwwxxgwvgvVfwvgefVgwwwwwxwwggvVfffggvwgggVgwwxwwwxxwxwwwwwvvfwwgwffwvwgwfhvwwfxvxwvwvwgwwvffwwwwwwwwwwfvwwguwWgwxwxwwwwwwwfvgwgwwwwwwWwwfWevgvVwwufWfffvggfegVgvgfwgvvfUwvvgvgwvuwgVvfvvwvwwgfuvxwxwwwwvfggvwwwfvvwwefvxwwwwwwffewwwwfgvvwgffvwwwwgfwxxwvgUfwvgvwwgvuwwwgxxwxwxwxfwwwwwwgwwffwwgvwwxxwgvxffgfwwxfwwvwwvwgxWgvfwwevwvwwwwwxwwgfwvgwwwgvewwvfgwwgvhvefWUewvgffvvgwfwwgwffhxgwwxxwggxVUfgvfWwwwwgwxvgxwwxwgwwfvxwfvwwgfwwwwxwwwwwwgwwwwwwwvwweUuwwVVwvfwgvwwwwwggvfUfVVwwwwwwwgwfwwwwwwwwwwxwwwfvffwfwwwgvwgfwwfwwgggfgffwwwwwwfvwwwwvfuwwwgwggxwfxwwwwwfUwfVwwwwwwgwwWWewwfvwgffffVfUUggwwgfUfwwwwgUefeuwxwwwxvgfwfffUvfvwwxwwvwwwwxwgWgwggxvvwwhVfgufwvfwxwfxxwwxwwwggfwwvwggfffevwwwxgfvggxhWfguwffvfgfevwvgwxxxwwwwgwvwwewwfgwfvwwwwvvwwvwvwvxwwgvwgvwwwwwvvwwggvwgfwhfvwvwfxgfwxwwwgwwvwgwwwvfvxwwfwxwffvVfwwwfvwfffvwvgwfvwvxwgewWfwwwxxfgfwwvwgwgfgwfgfwffwwggggwwwfwwwwxwwggwwWWxwwwwvxwgWwwwwvfuwwwgfwfvVVwgvwfwfvwfvgvgwwggggwwgwfVwgxxwwxxxwxwwvwwwwfwwwwwwxwvvvwwvgwxwwxxwwwggwwwwwwvfvwhgggwwffxwwwwwfwxvxwxwxwhvwwwwgvxxgwfveuevfevgfwgggffVVwggwwwfvfwvfvfuwfvffvwvgvvgvwwwwwgguwwwwwwwwwgwffwwwvgwwwwwwwgfvwfwwwwwfvvwgfwwgeVfeVvveffvvvgwfffvgvvfwfvgefwugevwufgffwwxwwxxwwwwwgxwxvwvwwgwwwwvwggwgfwfwggwfwwwgvwVfwvwvuwwggWewgfgfffwwvwvfvwwVugWggfvfwwvffwgvgwvwwgfUvVUffvWgfUefvwuffvgffgvwwfVUVevWgfewgwfVwvgffwVfwgwwwvfgwgwgwxwgwgxvxvwwwweVewwgxwwwxxvwvxxxwxwwwvffgwxwwwgvfwwwwvVuwwgffvffUVwwgxwwwwwxvffxxwxxwwgvgwxwwwWwVwwwwfgvwwvfffvfUVxwwxwwvwwxxwwwwwxwwvwwvgvvffwwxwwwwgxwwwwwwfwvgffxxwxwwgwwwwgwwggevwwwgwwggfegvfeeeUwggfgWWvvggwfWwUTfvVefvggwwffwfuVwWfgwvgvgxgufWfgwwwwfgfwfwffdvwgwfWeFeVffggevfxwwwfgggwfuvwggfvwgwvgvgvvwgwvwwvwVfgwvfvgfvwgwVWeUfEewwhvvwwwwxgeugggwwwgfwwvgfvvwgggWvVeVuWwgefxwgWwxvuwwfhwffwWVfvwgguvgwwxvwvfgefewvVfggfVewwgwfeeEUgwwwgffxgggxwfuvwwVfeffxwwxxgwvvwxfwgwvwwuwgxfwufvxwwwxwgwvwfgfgufegwgwefvVvxwwwwwwwwxfgvgvwvvwwwwwgxwwvwfwwhWwgwfwffufufgvwveffffwwxxwwwvvwwwwxwwwwwwxggvwwwxwwwevvfgxgxwhwgxxwwwwwvguwwwwwvfvVwwwhvfwgwxwwggggufvfffWfVfefgfwvgefwggfuwwwvvwWWugffvWFduwxwwxwwvffwwwvvxwwwwgfwwvwgFdfgfwwwwxwwwgfvwWFdewwffgFdfUvwwwgwwgwwwwfvvWffuwwwugvwwwwwwwwwwwffwwefVuUwfwffgfWFduwwgfvwwwwxxhWvvgwwwwwxwvwxwvwWffuwwwwgWvfUvwgvvvegwgvwwwwwwgFdvgvgfvffwwefVwwwwvegVewweDVwwwfffDfVeffwwvvghvfgwwfffVWgeFVfdwwwxwvvgwwwwwwwwgxwXWvfgwvgvvfgfwvfgwfvggWgdfdffgfwggfvfgvwxvgxwwwfvwwWfFfvdvwwgwwvfgwwwvwgfvvvwguwWgffeVWfefVvfewvugvgxwgwwxwwvwwwwvfwwwxxugdfdffwwwwwgvvgwvwgwwwwgwwffvgguvffvffwvwgwvfWwVfggwgvwwfgwfGfEeVVgwgugffvfwwwxggwggfwfwfUVwvvgfVfwxxvwxwfghwvggwwwwgffxfwgWWwWewxwwwgvfvVVVuwwwgwgwvfwxwwwwwwfWxwwwffvvvwgfwwwwvgfwgfvxfwgvvgeefUUUuwvggwWgwfvxxwffxwwgwwxwxwwwgwfvfVfxwgwfgwvfvggxvxfwggwvgfVVfwwwwwggvfvwwvgfffxgwwvwwgeeUfeeVUwwwgwgfwwwwwgffWWuwvgwgvffdUFwwwwwevwwwwwwwwwwwvwwwwwvgwfgfUfwwwevWugvgvwwfffUffvwwwdUFffwxwwwgvwwwwwwgdfFwffvxwwggwwxwgfvwwgfFVetxwwwwwwwvdfFfwffUwwwwxwvfWwvwwwgwvwwvvvfWwwvwgdfFffwwvxwwwfVevxwwwwwgwwvfWwwwfUwwgffVevwwwwGVedfvwggvwwhVEffdffVuwwgeuwgffweWwgghfvWVVvwwvwwhwwhxwwwegWwfgwxwwvgggwhvffggfefhwvggWgwfgfvgvfUwxwwfgxxhvvwvgfwwvwxxgwvvggwvvVVwgfffgwwvgwwgWffgwwfwwxxxwvggwwvwgvgwvvxvwhgwgggvggwvvwggwgffvxwxwwwggwgwwfwvWwwwvuvWfeevvvWfxgvvwhwwvfVegfwgwfgvvgfXeUgufeVwwUfewgggwxwwgfvvgwfwwggeuwvvffvxfvuvfgWfevvwhweVvvvfeffVfevfvgwwxugwfgvffxwwwwvgfwxwwwwwxwwvfVwWVfwfffgVgwwvgwvweUegwvgwwwvwwwwwxwwweWgwfwgghwwwwvvvfwfwfwwwwxwwgVVfwgggvfwwwwwvwfUfwgwWVewVgWgffffggfwvwwWUUvgwwvgffwvvvwwhwvvggfvWfxwgevwgfewxwwwwwggvwwwwgwwwwxwwfwgwfwwfwffgvvWefwxwewfffevwfgfvxwwWwxxwfvgwevxwwwfwfxwvgwxwwgfgfvVewwwhwvwvgvevggguxhwxwxwwwgvvwwwwwvguwgwxvwwgwfvwwgwuwwwggxwwgwwwwxwwwwvevwwgvvgfwwgvgffVefgffVxwgfwwwfWvgffVwgvwwggggvgVeuwggffvVfuwwwwwwwwwwwwwvgvxwwvwvwwhfgwwwffffgVefffggvgfxwgwffeVfwfvwfxwwwwVfuxwwfffgWwuhvfvxwwgvwwwwwvggeevvvfvwwwwgwvgfffugwvwwwwwwwwwxwwvgfwWefvfwgwgwhwgwwffuVfvwvwhwwwwvvfvwgvwwwwwwgvffwwwgwgvvwwwwWeewffvfwvvgwfwwwwwWfUfvwwgxwwgwxwwvVfgVfxwwwWWUugxwwxwwxwwwvwgwwWgxwxwwWWeufevwwWguUVwwwgwVWWuuxfwevwwxwxwWgxwwWWeewwwwxwvwwwgggevwwxwvguwuvwWWegxgWWuufxxxxwhwwwwwwxuUWwwwwfxgwhwvxgwevxwwwgwwgvwwwWWuwxgwhwvfwwwwuUUxxwwvuUVWfxxuUVwwvgVvgWfgVwvgwfvxvgvuefUewwfUVVewwwwwgfwxwwwwwvuvfwwgwxffwwwfWvvwwefwvwwfeefgfwvgwveVUwgwvggwwvvfeuxvffggewgfwwwvgwfwwggfgggVegVvgffUxwvffvgfVfewgwwwwvvxwwwwxvwwgxwggvwwgwveewgfwvxxwefVwgwgUwxwwwwfvwvwfxgfgvwwwgfvwxwgVVuwUvwwwwVeUuwfffwffvfvwfvfvwvvvwwxwuwwvffffvffgVtwwUEvxwwxghwwfvvvwvwggvgvwgxgwwfgffveVwgeefwVvvvvewgugwwgVwwwwwwwwwfwwfgVuwwuWwwwgwwxwvwwwwwffvfEwggVdwfvwvvgwgvfgvvgwvwgwxxwwwxwgwueVwguefwwvwwwgwwwwwwxwwwwwWwwwvehgvwwggxwwwxxwweFwgeedvVvvvvfegvwggffwwwxgwvwgwxwwfwwgwggfwffgfvwgwwwvvwwxwvvfwfwfwwxwwwwfvgfvggwgwwfVVfffvwvgwffggfwvggwwwxwwwwxxwwwfheuggwwwwwvwgvwwggwwxwvVVvvfvwwggfffwwvfwwwwvwxxxwwxgggfwfgwwwwvwxwVVggwvgfwwhxvwffwwwfvwxwggwwwwggwwvxwxxgfvvfggvfvwwwfgwwwvfwgvwwwwwwgwwxhwhgfwhggfVUwgvgwvvfffuxwwwfgxvvwwvwgwgvwgVwwwxwwgfgvgfvfVVVUUUwfxwvgvwvwguwgvfvwxvvffxwwxgwvwVuwgfxxwwwgvwvvgUvgfgffUUwxwwwwwgwvwgwgvwffxxxwwwwvggwvgwfffUgwfvwgwggvwwwfwwvgfwfffVxwwwwgvvgwvfvwfwwfffwgffUfUUVUgwwxwvwwwwgfwgwuvggugwfUdfhvgVUwwwgwwwfgvuwvfgfggwgeWgeexwwfVwwwvvfVVVUevUfGwggxxggwggfgewwwwvwwhxGgffggVfwwwwwgwevxwwfgwwgwvvgfVTdffuVwffxwwwffWgewwxwfwgugwwfgwwwvuvwVetwwvggggxxhwggfwexxwwvgwVUuvfvWwggxwwwgfgfvxwxwWUuwgwWTdeFuwgwwwwwvxgwwgvgvwwwwvfvwwfgffgfgwwwwvwgvwfwwvwwwwwvvxwxhVVwwgwwwvwwwfeegvffwvfvfwvvwgwwwwwwgwwwwwffwfgwwvvvxwgvwfvfwvwwxwhfeuggffggvvfgfvvgwvvxwwwwwgxxwwwhvvvxxgfvwwggwxwgvvwwwwvvhwwgwwfvggVVxwvwwvwwwgvvvhwwxggffwffggwwwwfvwwfggwfwwwwwwwvwxwxgWgewgfvgvugwvWgfEeVVfvhwwwfvwwvwwwgfvgwgwvwwffwwWfvffwgwwwgffwVwgwVfvgfVUwhweUdfgwgxfwvwgvhvWfgWfhvfwwgwuWfgWfwwwvwgdfwfwgvgfgfvVeggfVFefVwwwwwhwVVwgfhxwhvfgfwxwgWwgWwvwwvfVVfWwwwwvwwfvwwfgvfvgewwWVUefVwwvwwfwvvwWfVvwvfvwffUffefVuwVUtwfvvhwfvvwwgwwgfffVWewwwxwwwfgvwgvvwwwwxgwwwwfvvWWeuwwwwwguUVfvfvfhggfVWuegggfvxwwwwwwwwhwvgvVWewgfwwvfvwwwwwwggfgfgfwwvwWWeefvwfVWuefvxwwwwwwghvwwwwwwfgwgvfhgwwWWeehggfvxwwgfhwgfxwwwghvvwwxfVWeefwwwwfggfwwwuUVfffguUVwwwffuUVffffxhvfwwwggwwgfUefvfgVgewwwwwgfvvwwfwwwwwggVugfffWwuwwfwwwwwvgwgfVVfvvfggwvfgewwwwwwwwwhwwfwwgfvvfwwwwwwwwfwwwgfgfwgvvggffVewffffvwfeVfgvwxwwwwxwwwwvwwwwxwwwwfgggwvvwgwwwvffwgvgvwwvwvwwgfVewgvffwgvuVfgxwwwfvwwwwwwgwfwwgUevfggfwvVfUvwgwfwwgfvwgeewggwgUwgfffUuxwwwwvxgwwvgwxxxwgfxwvffwgvvvvxxwfgwvwwfeeffvwwwvfgfufvwxwwgfxwwvwfvwxgwxgxwuwwgVwfxwwfwgexvfffffugfgwfgffVxxxwwxwwwgvwxwxwxwvvfvfvwwwwvwgvgwwxgwfwgvwvwgwwwgvgfvvvwwwVwwewxwgwfxgwVwgfffUgVwvfgffUghgfgwwggggvfgvgfgggvvvwwwgvwgfwgwwvxwwwxwgwwegWggwwwfwggvfvvwwgffVVvweVVwwewwwxwgwwxwwvfvvfffgfwvvUvvvwgggwwwVWfuefvgwwwffffwvvgfgvvfgvwwwguwwvxwwwwgggwwvfuXfwgfgvvvffwwwwvwvgVvvwvvhwggwwwwvgfxgvwgvwvvvfuwWvvvwwwvhwgeegggggwvwgfwwwvuvwuvvfhgveFevwWeewwwwwxwwgVgwwwfvvgwgxvGffvwgevwwwfvvwxffwxwffVTduVgfwwgeWwvwwhwwWVVwwgfuwgfwggggVvvfvfgWgfeuxxggfwwvfUUuvEvvvwwgfVwggwwvgvWwwwfwgwvvwwxggxwgvvVUuvVgvvxgvgwwuggxxgghwvwgUtvgwvvwxxfVwwxhwUUwwgwxvvwxvEEwwvVedgwwvvwwgvwggfwgwfgffvwVfEWgVfdwwfvvwvwwwwwgfwwghwfwwwwfFwWgfdvfvfVeffeWfvWgwwwufVwwevfewfwwxwwuVvwhwfgwwffwvwgwvwwwwwxxwvgvfFvuffdfwffwggvfggffvvwwfwwgxwwxwwhvhwvwgffvvguwwwvwwgffwwgvffwgwwwgFvWffdfwwfwxxwwgwfwwwwgvWfvwvefFuwufeTfwugwvgvvvwgfffvwwgvvwwvfhwfvggvggfvvvfvwffwwWwwxVggvwwvvwwfggwggfvffvwgVfuvffffwwfufguvwvgvfvfwvgvxwwwxwgwWxwwvvvvuwwwfwvfwwgwwwwgvwfVVffwfuwfvfvwwgeuwwwgWwwwwgwvWwwwxxwfvuwwggwwvvvvvvhgvfwggwhwxgwvfgfwgwgfgvuwgWhfvgvwwwxgfWggwvuVVwgfwgfwggghwvwwwxwvwfwhwwxwwggwxwWvfffffvwweFUvTwwwwwwwwwwwwgwwwwgwvgwvwweVWwuvffwwfvvvgwwgeFevdvggwvgvfhwxxwxvvwwgxxvgvwvwgwvvfwgggwwvfffwvVvVvgwwgfUfVVvWvwewwgwwwxwwxxwwxwwwwgxwggvwgwwwWwvexwwwwxwwwVwwwwvwgwwgfUvVVwwxwwwwxwwwfVdfEuwvwwgfgvggegVvwfvgvwwwwwvwWgfvxwvwgwwfvwfWeUvgwfwwgvwvwfewwgwfwwvgxvwwgwvwwwgwwvgwwvwwxwvgvWeUfvvgvvxwvxvWwgwUvwWeUwwxwxwwwxwxwhffwvgwwwwwhvfwggvvwvgWvwwwwwwfwwgvfwwvxgwvxugvwVwhvvwgWeUfvvWvvwwwwwwgwwwvxwhvfwwwhvwgwxwxvwugwwwvwwwggvwwwewfgvefvwgwfVfvvvvwvvwwwgevfwvgfvvUgwwvwgvfffefvwwggxxwxUvwwvgwwwvwwgwwwfvwwwgvVvvfwvffwwvgvxvvwwwgVffwuffwwwwhgvwxgwxwffvwgggwwgvwwwgwugfvgwwxghwxwwVwwwuwvwwwvgwwwwwVwwwuwwVvffwugfwxxgvwgwxxwwxwwvwugwwwwwwwwwwgfgwwgwfvwgfVwvwxwxWgffwwwwfxexxwwwvwhvwvWVUvgxuwxwwwVwwwugfgwwwwgwwWgvxwwwwwhwwgVUfvwwgWgvgvwxwwgxwffwwfvgVUwwxxxwxwwwxwgxxxvfvwvwffwgggfwwwguwwwwxwvggVwwfwgxwwwwwfvgVUvwgwgggfgfwgwxwvwxwwwvghwgwwgugwwvfvgwwvwfwgwvfvvvwVfvwgwfxggWgvwwuvwgvwffwwwfufVwWggvwwwgvefwwVfwwwxxWgwvveggwfgwxwhwwwwevefvfvwxwfVfvwwwuvwvwwVUvwfUefgfgggwwwxuwvvfwxgfvwggfgfvfgvvvffwfufWwvgwvwwwwwggvwvefgwfwwwgvwvgwfvefUfegvgwvVVevwwvwwwwgvwvfvwwVvwegwgfwvwvwhfffvvghvvfwWfWvvgvwWvgvugwhgwwvfuwgvgwvhwfgwvvwWwfwgvvwwwVWgwvvfggwwxwfghwvgvgwxvvwxxwwwgvfvWVfvwgwwggwwwwvgwfwvgvfWgvvwgffwwxwxwvxwwwwwvWgxwvvfvwwggwwWgfwwwwwwwwwfwgwvgfgwhvvwwwwvwguvwfVfgwfggwvgwvwxgwxwxwwghwwggwwxxwwWWxvfvggwwwwxxwguefwwwwwvvwgwwwggvfwvwfgvwwgfuwfwUfvwwvfwwfgfvvfwwwwwgxwgWevfgfwvwwUfwwgvwwgfgUwfwvUfwwwwwwwgwvwwgGTuVffwfwwwwwwwwwwxwwwfvxwwxxxxfvfwffwwwvwwwgwxwhWevfwfvvwwgUfxwgvwwwhDUfgewvfvwwwwwxwwwwwggwxwvwwwfwvwwwwwfxwggwwgfgggwxxxwwhvgfvggwhwwgvwwxfwfUwhwwfwwwvgfgwWeUuwhfwwfgwvhvwgffVvwfgwwxwwwgfvvhvwwwgVVUxwxwvfggggfvgwgevxxwwffwwxvvwgeUuwxwxxwxxwwfwVewwfffwxxvgwwgvvwvfffwvwwxwwxwffvwfwwvvVVUxxwxwwvwwgwfvfvfeuxwwwwgfgxxxwwxwvwwwgfwwwwfgfwfffffffVUwwgwwwwwvwwwwgwvvfeeUfwwwgWevwwWfffwvwgwuUfVVvfgfVUfffewgggvgwxUfwvvfwVefvWwggffwvxwegewvvwwwwwugwGWefwvgEfgwvggxwwwxxgvwwfwVefugwwfwxxfwvwgwxwwwggvgghUfwvweffFeUvgwwgUwwxvwwewdfevwwvwvWevwhwxxfwxfwfwwwWevgxgfFffVwgwwwhvgxxwhwwgwwwwvvwwwwwwwwwffwwgvgwwwwwwwwwwwgwwwgwgwgwwwxwwwxwwwxwvvwwwgwvwwgfvwwwwwwhwwvxwwwwwwwgffvwwwwwwwwwwwwwwxwxffvwwvwvwwffvwwwwxwgwwxwwxxxwwwwwwwwwwwxwwwxwwwwvvhfvwwhwgxhgwwvxwwxwwwwwxwwxwwwwxwwwwwwwxwxwwffwwwwwwxwvwgffwwwwwwwvgwxvfgfwwgwwgfwwwgwfvvffwwfvvfvwwfvgwWfvgvwwwwwgwfvggvwfwwwhfwvvwwwgwwfwgvwhwvVgwfwwgwwgewxgvgfvWvxvxxwwxwxwwgfvvgwuwwwwwfvwfgvgwwwwwvwwwwhwgvvgvwgwgvgefwfxvxwwhvgvvgvvVfwwwwwwwwwwvwwwxwgwgwvwgvwvwwvgevvhgefwwwxgwxxgguvvgffvfvxhvvwWfwwwevgwffgwvvvVfwgwgfvvfggvwfgxgvggfwwwfgggvfewuwxfxwWgVwxgwvgghvfgFVvwwfduwgwVwwwwwvgwwgvwwwxxwwggwfvwfwfwgwvwvwwfwwvvgwfgwxgvvggfwwuwfgggefdwuwwwwfwvVfFfwWwwvxwwggwxgwvxwhgwwwgvfgwvwvwfgwwvvvfgwgfvgffwhvgvwxvgvfgwxvwgwwxgxwxwwwwgwwwwwvgwwwgwvggwwxwwwxwwxwxwxwwwwwwwwxwxgwhvxwgxwwwxwgwvwxvwwwxhvwwwxwhwwxwvhwgwxwxwwhxwxgwxwwwwgwhgwvvwwxwwwwwxhwwhxwxxwwwgxwxwxgwxwxwvwgxwwvwwwgxwxwwfwfxwvxwwwgvvwwwwxvvwwwwwwwggwwwgfvxffwvvxwwwwwwwffwwwxxwxwwwwvvwwwwvfgwwwxwwwxwxwwwwwxwwxgfgvwwwgwvvwwxwxwwwwwwwwwvwggvggvxwwwwwwwxwggwwwxwwhwwvgfvwwggwfgwwwwgwwvwwwwgwwwwwwwwvwgxxwxwwxxwwxwwwffvfgwxwwwvggwwwwwwwxxxwwwwwwwwwvufvvuwwWfvfwwgVgwwvwwgvgwfwvVfeegfgfwgwfwvgwwxffwwfggeefvwwwWUfwvwwfwwwwwwwvuwwWfvvwgffwwwwgwwwwwwwvwxvwwwevwgwwggvxfwwgvxwfwvgwwxWfwwweVgfvwwgwgWVfxwwgffvgvxwvwwgvwxxgfxxwwgwVeuwgwwgffwwvxgwffwxxxwgwwfuvwgvwvgvfwWffvwgfvwgwuwwWwVeVgvwfwwvggwgwfVwwwwxxhffvwwgvwwwvwgefwgwwvgwxwwhvwvgggwVWfwvwfwggggwwwwwwwwwguegwwfgwwwvfffwvfwwwxwwwwxWwgwfffwwxgeevwffgxvuegffwwwwwxwwwwhfuwwwwxwwgvwwfwwwxhgwVefwvwwwwwwwxgfwwwvgvwxwwwwvvffwwffUvwwwVexwgwvfffffvwgwfvgvfwfggUvwgvxwwwwwfvfffUfvfvwwwwhwgvvgfwxwwwwwWfeuwwVexwwwwwwwwwxxwxgvgfvfwfwgfxxgvwwwwxxggUvxwgvwwwxwffvVVffVffufvwwxwVefwfwxxwwgvgfvfwvwwxwwwwgfvwxvgfVffuggwwgwwxwwwxGgvvfwwggUVfwgwfevwfvgWggvWFVffWwfvVdfwwwvfvwwwwvwwwwgffWffUfvwvwvggwwhufwgvfhwwwgdVvvwwfewwwwWwvwvwxwgwwwwvfWWffwwguwvxwwvgvfwxwweggwwwwvwwwwgWfvFfvVWvwvfvwwxggefwwwwWhwwwfffwwwvwwxwwxwwwwxgWvwwwwEfewfwguxwwwwwxwfgvxwwhfwggwggvffvvwwvVVxxvwvfhwgvwffgfwwwgwwvffeuvfwggxwwvvgggvfeuwgwVVxwwvggxwvhxwwgfVTtgvwggwwwwvwwwxwwwvggwvvgfwfgwwwwvxwxwffeuxwwgfxwwvEEwffeegggfxwwwwggwvwwwxxvwwvvvwwfwwwxwwwfwggxgfvgfwfvwwgggwvvvwgvwfwxxxwwwffwgvxwwgwwwwfgUDvwvvxxwxggxwwffvffwwxwgwvggexwwxfwwhwxwwwhgevwwxwfUDvfvwxxxxgfwwwffUDxhwxgvwwwwwwgvgguwgfwwwwggfUgwffvhxxxwxgwvwgewxgwwxwwwwfgewgfwffUDffwvwgwwgvxwxwwwwwfwwwwvwxwwwgvvwvgfgVewxwwwgvvgvwwgfevgffgwfVwgwfwfgdVwwwWfgwvgwwffgwwvwgvfggVvvgvgvuvwXFffwvxwwWgffgdvgxFfwwwhwWfvwuvgvwxwvwwvvuWwvg5UgvvgwxwxwgwxxwxvuwwwwxffxwxgwegfwxwxgvevwwXFVgwwwwWgwvwewgxFVwwvgw5UvguvgwxwgvwvvwgwvwxwxwfgvgewxxxwvvfwwhefwfgwvwxfWwfwwxWvffvwwvffwwvvgggwgFfwgfvwfffwhwwgfwwwgfgwvwhggWwvvhdfgwvwxfvhwwhffwvgfwgwfvwvvwwwwVFfwgUvwfwwhwggvvgvgwxwewxxWwxvegfwxvwuvvwvfgwhgwWwvwhdvgxgvwfvhffWevwfgfwwXfevvwwwVvxvvhfvgxewwhwfwxwwgfvgwxwxgwvxffwhuVfwhwgvxvgwgvffwwwxwwgwwgwwwvwxwfffwwwgffwwffwwwxwwwwhwwgwvxxwwwwwwwwggvgwwhwwwwxwvgwwxwwwwwwwgwffwwwwwwxwwwwwwwwxwwwwwwwwwxwwwwwgwwwwgwwxwvxwwwwwwffxvwxwwwwwwwwwwwffwvwwwffwxwwxwwwwwwwwwxwwwwwwwwxwwwwhwxhvxwwwwwwwwwwwwwgwwvwvvgwwgvfuvwgvfwgwvffwufgevwvhvvvwgfwfgwUefvvxwgfgwfgwvvgvvxxvggwwwwwwwffgfvxvgfvwwgwwwggffwWgvWfgvgfuvvgxvgwwvffwwwwhvfWwvWwwhfvgfwwwxvvwwxvggfgwffvvwgfxhuvgxwfgwwweffevwwhfvvggwggvvgwgwxfvvwwwwhfvwxwwXgwVwxfgwxvxvUfwgwvvwwgwvxxxggfghwggwwguevgxVVvwvgwfgwwgfvvwwvgvvwxwfeewwggwwgfxwwxwwvgfWvvegxwwvvvhwgwgfwwwgUevwhVVvwwwwwggfvwxwwwwvgggwgvfwwgggfgwwvfgwwwvwwwwwfeuwxggwwgfgxfvxxvgeVeeevgwwvwgwgggwwwwxwhggffwwwhwwwwwgvuwWvxxxwxwuwgVWfvwgggwwwufvfgWfuwggvwVevwwfvwvWgvffhgvggvfwwfvwfweVvwgvwwgUvwvggUfwffvhwvfgfvwggUvwgvfvwwwwggfgfwgvvgWDuwwgxwxwwwgwwwwfwwvgvwhwwwxfwwVwhvuwwgggfwguwwhUvwvwvVfwwETwgvwfwwwwvgUvvwgvfvwwfwwvfvwhvwWwgwvuwwwwwwvgwxwwugvgWwguxwfWfwwwxgxwwwwwvgwwwvwhvfffwwhwgwvwwggwwgwwgvvwfvffvwvfgwwfvvvwwwgwxwhwvgwvwvfwxgvwgxxwwvwgwwvwwgwwwwwggvvvwwvvgwgvwvwwvwxxwwwgwfvwvwwgwxwgwvwwwwwxgwwvwwgwgwwvvgwffvvvxgwwxwgwgwvwwvgwwxxwvvvgwxxwxwwvxwwxfvwvwwggfvwfvwgvwvvgxwxwwgwwwwwfeeevgwvgfggvwwvfwvwwwgfvwgffwUVfvfgffwgwgwwvhvwwwwxxhwvffvffvwvffwufwwwuwwwgwwhwwWUWvfgfvffvwwwxwgvwwwwwwwhvuggwfwwxwvfwvvxvvwwwhfwwwwwvwwvxwXeeWgvfgvvvfvvvwwwfvwwwwwxhwfggwWwwxwvvwwhvwwwhgfWvvwwVwwwwwwwwfgwwwgvwwgvxwwxxwgwwWffwwxwvgfwgvUVexwgxwwwwxxwwwwwvxvuwwwUgUVewwwxwgvfgwffvgwvwgwvfgwugwgfwwvvwwwwgwvgwwwgwgvgwwVvvgvwwwwxvgwwwgwvgwgvfgwUVefgxwwwwwwwfwfgvwxxwwgwgwwwwwwwwxwfgvvgwgwXvfvvwxvgwvWvvwfgwUVeegwxvwwxwwwwgvgWwvgwwgwugwgvfgwWfvwxwfwggfgwwwgvwwGeFuxxwgxwwfxwwxfgxxgvvwGeFufvwxwwwgvwwgvWgwggfWvVfvvwxvxxwxgvwvgwWgfvggwxhvvwgffxwwwwuffwfghwwxwGeFuhwwfwxhxxvgwWwgxwwwvwggwgwwwwwgwgwvvwwwgwxugfxvgxwwhwFeFegfgfwwxwvwvwwvgvvwvwwwvevevfvwxfvefffwwwwgwgffgwxwwgfwfvgwvffwwgwxwwxwwwxxgewfgfwugvwwxwxxwwwgwffufwfvvgwvvgwwwwfvwwwwwwfvgwfwvvgvfwfwVggwvgvwgvwvwwgwwvfvwfwwfwufgvwgvwwwwwvwfwgxvgvwwxwxwxwwwwwwvwwwgwvwwvwwgwxggwgxVfgvvgvfwuffvgvwwwvwfgwwwwhhwvwheVgffwhwWgvvwhvwgwfWevwvwxgvwggfWUUwwwwxxwxwxxwwwffxwwvVUVvgvxwgwvwwWefffvwgfggvvgfvgfwwwwgfxwwwgfvvxvwwgfhwvfgfVwfxwwfwvxwvwWUVfgwwwfgfffxwwvwxxwwgfgwwxxwwwxwxwgfwxwwgwwggvgvwwvwwhgwwWUVvwgfwfgfgewwwwffvwwwwwgwwvwvgffffffVUwwwvvwgVgVWvvffwwWefgvgfgwwvwwwwvwwxhwwvwwwwwvgvgfvfDUvwwwwfwgvwwxwxxfwvwvwewegwwxwwWffgwgvgeewUfwwvwwfgvghvgfgwvvwvgUffffvwwggffwvgUfffvwwwwvWvggvvUfwvwwwfwgwWwWvwwfvvwvwwwgwvwwwwvegwwgvgwwgDUwwvwvUfffvgwwwxgvWwWvwwwwwwgwwwWvWffwxwhwhwvgwwwwwwvfffwwwfUfwXefwwvwwxwwwwxxxwxxwxVVVwWevwwgvwfgwgvgffwghvwxwwwwxffvxwgUfxgvwwwgwvwfffgvgfwffwgfwwwwvwVefffffgvwwwhgfwwwxwgUfxwgvwwwgvwxgvgfvvwwwwwxwhffwwfvwwffVVfVeVevwxffwwwwffvwwxwfwwffgwfUfvwwwwwgwwvuvufwggfwwfwevwweggwwvuwwwxfgwvvwuggxgWUfwwwUevgffvvfvfggvgvvvfvvwffgevvgwegwvwuvfwwgWwvvwfVwgfuvwwgVfwwwwwwgfgVwwhvevwxwgwfveffwwvwwggvwwwvwfVgwwvwwgfwvvwwwxgfwwfwgfWwvwwgvgVffgeUvgvwwgwvfwUfegwvvwffvwhfvfVwvvgvuWwfwgfvhwWvvgggxwwwwgwffvwwvwwwwwvwwwwwwwwwxwwwxwwwxwwvwwwxwwgfvwwwwwxwwwwgxwwwwwwxwwwwwhwwgwgffwxwwwvvwwwwxwffwwffvwwwwwwwggwfwvwwwwwwwxwgwvwwwxwwwwwwxggfvwwxwwxwwwwwwwwxwwwwwwgxhwwhwwwwvwffwwwwwwwwwwhfvwwxwwxwwwwwwwwxvwfwwvwwxwwwwwwxwwvxxxxwwwwwwgfwwwwhgwwwwwwggwxwwxwwxwgvwhvvwwwxvfwwwwwfggvvwwwwwfwxwwwwwwwwwffwwwgfwwwwwwggwhfwwwwwwwwggwxwwwwwwwwwvfgxwwwxwwwwwwvwwwwfwwwwxwxxwwwwwfwwwwffwwwwwgvwggwwvvgwwwfwwwwxwgfvwggvvwwwxwwwwwggvwwwwwwwwwwwwxwwgfuwwvxxvwfWfUxwxxwwwwwwwwwffxhwwfwwVfVwwwfggwwgvvgwfwwwgwffwuvuwwwwwwggwuvwWvwwvuwwvfwxwwvefUxwwxwxwwfgwuvwggwwwxwwvwwfwVxxxxwwwwwvxxfwvwwvwxvfwugvwgvwgefUvwxxwwwwgwfvwfgfwwgvgfgwwggvgffVhwhvwwvgwhvvhwgwwvgwvvfvfgdfwvwffwxvwvvgwgwvxwggvgwwhWfdvwwgUfwxvwvwVwffgugxwwWwxxxWgfwvvwvxfvgwugvhFfghgwfgxwwfvwwvgwgwgfvwhwvwfvwhfvvfvwgxwwugvhFfwxgxffvvxgxVvwwhVwvgvwxxwgvfUffgwgwfvxfveVfxwxgvvwgwvgfVgefwxwwvgwxhhwggvxwwvwvvwwxwxwwwxvwxvwwwxxhxwggxxgwggwwwwgxgxwwxgwxxvwwvxwwwhgxwwvvxxwxwwwwvwggwwwwwvwwwwwwwhgwwgwwwwwvvxxwwwwwghwwvwwgwxwxxwxwwvxvxgxvvwxwwwxwwvwxwwwwghxxwhwgwgwwxxwwxgwhwwwwxxwxwxxwwwwwvgwwgfvwwwgvwwwgwwwwwwwwwwwwwwxggfvwwgwwwwwwvffvwgfvwwwvwwwgwwwwxwwhwwwwwwwwwwwwxwwwwwvwwwwwvwwwgvgwgfvwwwwwgwwxwvwwhwwxwgwwwxwwwwxwwxwwwwwwwxwwwwwwwxwwwxwwwwwwwwffvvxwwwwwwxwwvwggxhggfvwwwwgfvwwwwwwwwwxwvwwxxvwvxwxvwvvWVfefgwwfggvvgvwwwwvwwgwwwgwwwwwXffgUVwvfgvvwgvugggfwwxvfwvwwwxvvwxwwhfvwwggvwwvwwwwgUVffgvfffvwwfwvvfWgfvwgwffffwwfwuwwvwwwhwwwfwwvvwwwxwfvwwwggvuwvwwxfxwXeegggfgwwwuffvwfgvvwwwwwhVwfgwgwgfvwvwxwxWvwwwwwwwvwvxxwhwvfwfwggvwwfvfvxxVVwgvwxwgvwwxwvwfgVTtwwggwwvgggxwwvwxgwvgggvfvwwxwxwfwgfgvgfeuxggwwvvffvgvwgwwwwvgggwgeuxgwVVgfwwvggvxvxhwwgfeuxfgwwgwwxwwwwxgxwggvwvvgvvwxgEExgvvwwwVVfgwgfggwwwwvxxgwfffgfgwvxhggwwxwggvwwgvwvxxvvwffwvfgfWvwwwgUvfwvwwwvwwwwwxwxwwwggETwwwwfgevvvwgfwgvfvfggwxwwwwwwwvwvwvfwgVehwwwfwfvvgfgffwwwwfwwwgUfWugfggvwfwwwwwhUwwwwwwgVexwgfwfwwvwwwwwwwvggvggwwxwwgwvwwggUfgfETgWvxfwwwwgfwwwwwwwwvvggfgvwhgfggvwvvxwxxwvwgxwxwggvvgfWfuvwwVVhwwgvvwfgwffvwwwwwxwwwvWfUvwwwVVxgwgwvggvfvvvwggfwxwgwgfwvwxvwwvwgfggewgggwwwwgvfvxwwwfwwwggwfgwfugvgVwwwwhwwgfwwxgggeuwwggxwwwvggffvvvwwwwwxwxwgxwxwwvgfgVugffUufgxxwfwwgxxwgwfwwgWwwegeuggwwwwxwxwwfvwwfvwvWfwwguffggvffvwwwggvwvgwwwvgwwwwwwwheVgvgwgvwvwvgXfugfvfgfwvvfvwwwwwwwwwwxwwXwwwgfWvwgwwwwxWefwwUfwwfvwxghfffVfwwwgvgvwwwwwwwvwwxgxWfffwgwwwwxhvewgvwwvwvwwwxwwwxxXfeVffVwwgwgfvwxvgxwwwwwwxgUfgwggvfgvgvwwwxwwwwwxwwxwwwxwgggvvwfVfwwwgwvggvfuvfvhgfwxxwwgxwfwgxwxwwgwvggvVfvVfxhvwwwwwgwwffwffgwvgwvVvwxggWewwxgxwwVuvhvwwfvwvgfeffwgwwwwwgfgwgwwwgwwgwVvvffvggwwwwfwwwWvwWvxxwxwwwwxwgvxhwwvxwvWwxxwwwwwewwuwwvgwwwwVvvVvfggwxwwwwwwwgfvwgwuwgfggfwwvwwggevgwwfwwfwgvegWwwgFfwvgufwvwwvwxxxxwwvwwgWgwvWwfvWSewvwxwxffxvwwuwwxvwwhfewwgvfvvwfWgufgdvwvxwgfwgwfewvfwfwwuvwwFfvwfdffwghufwfwwVwwwwfVguvgduxvwgvwwxwxxwwwvfwvwfvwhgVwwuvwwFVvgwguwvwgXSefgwVwwfwggxfwxvWvwxVfvgwvgvxfVvwxfxgxxgffffgvwwguvxwVgvfvghgfwwgvwwwgvwwwxwvvwggdewwFVvguxwwwgvgwvwvgggwfvgwvvwvwvwxggggxwfvxxgfvgfwwvwfevggffwffwhwwuggwgggfvfewwwvvWewgwwwfvxwgfvgfxwwxwwwvvxwgggwvwwvgwfgvwgwWwwwwugwgwgggffVdggwgufVdgwwwwfvwfvxhwfwwffgfggggwfwfwgvfvwwgeeUvwwwgVeufgfvgvwwuvxxwwwwhvwwggwGVevvgTfgvwfxgvxvegUvgvwfwwwxgvwwwweUvghggvwwhUvggffVgeeffUvfuwvfgxffwgvfgUvwewVvwvwvewwwghggvvwhUvvgxxgvwwhUvwfwvvwgeffxwWuwgwvVgEuwvwVwwvgfTfwwhwVegxwxggvwffwWvfFfwxwgwxvwhwwgxgfffwwvvgwggwwvwwwwgxwvxxwwwwfvvvwgwfwgvwgwxxwggwgvwwvgwwwwgwwxggvgwwwwwgwvwvwvfgffvggwwgfggwwwvwggfwwgvvwgwvwwwvwwwwvwvwgwgwwvwxxxxgwggxwwwwvwxggwwwwggggffwvwgwwvgvwgvvwfwwgwvwwwwgfvgggggwvwwvwwwwvgwwdvvfwgwUVfvwfevvfwvwwwwwgvwwwgwwxhgwwFVvvwgewwWggvwxgwufgufwWwvwhvfwwuvfwwwwgfvwwwvwwwXfWwdVffTvfvwvgffwxvgwwhweUffvwfwefvfwwvwwwwVggwwwvwwgwvwwxwwxwfgfvwgwwxwwwhuffxwgvwvteefwwfgevwWwwvgwwVwwxvwwxwwwxwFevwugVvwfgvxxwxwgvvvWfvwfvgvwwggvWvvwwfwwwxwgwwwvvfuwgvwwgffgfwwgvwwfwwvvwWgwwfxwwwwvWfwwwgfwwfwxwwfggvwwewwwggwfwgfxggwfwfffeuxxwwwwwwwggwgwwwwwfxwwxwwfggfxwwwwwxvgwwwxwxxwggwwxgfwwvefvfuwwwwggwfgwvwgfwgxwuewfvwvwwggeuwwvvwwwwwvvwwwvvgfvgWvvwfgvvvweefvgwwfffwwvwggvwgfwwxugfufwvefwvggfvgfvgvwxwuugwgwxvvvgwwhfwvgfgwfgwvfvvwxfgwvgvuffUvxwggwgfffvwwvwwwwwwgfvwvwwwwhffvfgwffwwxhvvgwwgfwxwvvwwxwhfvwwwwXvvWVfffwxwvfvwwwgfvwfwvgXWvgwxVewggvwwxgfwgwxgwvxxxgWwwgWfvwvwguffwwWfwgwgWwwwwwwvwwxwvwwwguffwwffwxvgwwvhvxxwwVgwgwgvxvwvxvggwvvwxvvwxffxwfeeuvvffgfgvwwfgguwhUvwvWgvVfwwwgvwwwwwwvvwxvvwwwVgwgwwgvvxxgvxwvwwVWfugefggwwgvwgvffwwvgvvwgUuwvgwwhvgvgfvxgvxwgwxxhxfxwwwgvwgUvwWfevxwgvvwwwffevfVUUwwwwwxgVuwgffvxwwfgvvefVwwvwgwwgfWTEevfGTtwwwwwwwxwgUvwgffxxxwwxwxxwwwwwwwxfxwwfwwffwvgfvwwwwwgVuwgfeuwwfgwwfffwfvwgwwgfVTEeffFTwwwwwwwwwwgxwwwgfwfvwvffwwwwwwwwfffffvUVwwvgfwxwUVVfuUUUVvwvgwwxxwvxwgwwwffvgwggwgffwvWVffweffwgwvxwggvgvvgxfwwfgvfffvfgwxfffffefeefffgwxwxwwwxwggwwwwvwxxxwxvwwwwwhxwxvwgwvfvwwwgwwhvwwvggvgfffwgwvfwggfWwfVgwffffVffeffeVgwxxwwfvwxwwxxwwvvgvgfwwgvwvwwwwwxfWvWfvggvvvggfwwwguVfVfvfuvwwgvwvhvxwwwFfhwfwFfVvwvvwwwwfgwwgvfffvwxwVVxwgvVVWvwwvwwwhvvfgvvvUe6uwvffgVVVStvxwwwwfFfgwfwfgVvxxwxxxxgexxwxvwvvuvwgvgVggghgwvfvhVVxwwvVWfewvvgwxwvwwuvUeFvwvVWfVVVSxfwwgvvvwvwgggwwfggvhvgevvwhvgvxxwwwvvFVvgffdwvuVVweuFVVfwwvwghwgwwwwvfvgvffVfewwwvfvfgffgffffffwwwwffvwvffVfevffvxgfwvgwffff5USffwww5USffhggwwgwwffvwwffVfewwxwxwxwxwwwxwhvgffvwwfvgwvgwfffwwwfgwgwvffvwwfgVfevffvwhfvwwwvfff5USffgwv5USffxwgwxwwgffvwfvfwwwwwfffgwvgfhwwwfeVvgxheVffwvgeVffffffeVfgffvwwgvvxxwwwgwvgwwvwfWWwwxwvwwgvVWgwvvegWvwwwwwxwwwwggwwfvwhwxeeUwfvwWVVuwfVVfffwexwwwwwwvgxwvwwggvwxxxwwxxxwxxwwwwwwwwwwwwwggxxwwvvwwwgxwvwvgfwwgvwwwgvffgeuwfVVvwVVVuVWwevxxhxwvxwwxwgwwwvggwhxwvghwxwvfwhwvfvwgfwweeUfvfWgwvvgfWgvwvefhwwxwgwfffvFfwwufvgweVwwgGUefwdevewwgvfffwVgvgufvfUfwwgvwwwgEUfgUUeFffwuvUfwwxwgggwfWvvfffwvugwwxwwwwwgwgwvvggvwVfwfgvfwwefdwwfwvhwfgfvVVvwfegfeVfgwgwgwVVfgUdUVVgfvfdffwfgwwfuwWwwffwffvvgxefewwwwffevfUVfvfgwggwwgfVUFfgfgfffFwvgvxwhvwwwxwxUfxwwwwwwWVffxhvfvfVfgwwgvgUUuweVwwwxwwgffgfvgffgEUTwwwwgffvxgffvwwVDtxwwwUfwwwxwwgffvwwxxxwgvwwfwvvfwwggwwwwwwwwgfvweVwwhwvxgVfuggvgfgwEUThgwwwfgvwWffuwwVDthwwwvgvvvxwwgwxwwwwwxgfwwwwWfewwfffvvfUUwgffwwVUwwwVUVUvvvvwvwwwgvwwwVfwwvfwwfgfWeegvgUVvweeefXvuwwwvgwxvvvggWUevVfVuVfwvvffdedvvvfgwwwWgfvwwgffwwwgwwxvwxwwwwxwwxgvvvgggvwwxwxwwvgvwwwxwghwvwwwfgwxvwvuVvFedwFVFffgwwwwweWeeUvwvfgvgxgwuwWgWwwwwwwwwvvvwgwfvwvwwwXfWVVVgWvvwgwgwwwxwgwgguvwgfwgvuwwwwfwgfggvvgWggwgffggggfVwwgvuggwwfgwvgwwfgfgfvVeuwxfgvvfufVfgUVvvugXfVgvewwwvwwVggfwxgvVggwvgwwwwxwxxwfwwWwwuvvvwwvgwgWgwwwvgwfgwvgxwwggfwUeuggVgvvwvvWfVeVvvfwgVffvvvwwwggvgvffwwwwwvgwwgfwgwwvggWfwffvgWvvuvfgwfwvefwwwgwvevgwgwwwgwxwwwvxvwwwgwwfvwwgfwvfwwuvgwWVvgexwvwwwwwwgvvgvwgwwwgeUfUugwgwgWufwvfffVefWxwwwwwwwwwwwgvwwwxwxwxgwxwwwfxwhwwwxvwgwwgwwvwwvwgwgvwWewgwvgvffUvxwwwgfffgeVUeVUfWxwwwwwwfxwwwwxwwwwwwwggvwwwwfvfwfWfUevwwxvgvfvvewfgvvvewwvwxxwwwWggwxvvwwvgwwwvxggwWgwvvvUVUuwgWxxwwvvwvffwuvgggWEDRwvvgfvvfT5vgggfvxxwwggwgwwuvwffwxhxxxvwWgxwwffxvxwwwwwwfwwwwwwggwwwvuwvvgwwvggggFUcwuwwfwvUD$egfgfvxwwgWwgwvvxxwwwwfgfwwwwwwgwwwgwvwgeUUgfvffwwgfvwwgwvffwwwwwfgwwwwgwwgWwwwvvvwwfgggvvwvvfgggwgfwwvfwgvggwxvgfvWffefvfgVfFVwwvwffgefdgwvfwwhvwugwfgWwwwvgvxwwwwwwwvxxfxwwvgvgwwxwgvvvwwxwwwgwvwggwwvgvvWffffvVgVgFVwwwgvfgefdfgvfgwxwvwxgwwfwwggwxvwuvgwwxvffvfwfvvfggfgfwvgvfwVwwwxggfwwvvgwwvvvwxwwggxgvfwvgfffwwwVgfVwwfgfvwfffuwggwwxwwwwgggevvgVfffegwwwffVvwvvVfffvfuwwwgggvwfwfwvxxxxxwwfwgwxwvvffwwwwwwwggwvwgwwxwwwffvgfvggfffUwfwgffugffffffvfxwvwgxhwffxwwwwwxwwwwwvwvvgwgffUwgfwUwffgfwwgwfwwwgVxwwgfgVwwvggwwgwvwxwwgwwwwwwwggfgeevfegfggwgffwvvwwwVVwwwwwfEEfffeewgfVVwwwwwgfvffwwwwwwwwgwwwxvvffwwvwwhxxxwwwxwwggffwgwwwwwxwwvgwwwfxwvwvvggwwwwweVVgeuvvwggEEgfwgvVVvwewwvwwvgggvwwwwwgwxwxxwwwwwvxweeufvwfgfevVvwwwwwgwggwwwwgvwxgwwwwvgggfggwwwwgwggvwgwgfgfggwgffwwwwggwffwwvwwwgVUuvwUUvwvgffffvggffwhwggvxwvfwwwvffvvwgwgvwhgwxwvwxwvwwxwwvwvwvwwwfwwxxgxxxwvgwwwggwvvwvwhfVUuvwUUvxvgffffvgffvwwwwgwwvvwxggwwvwvvwwwwvwwxwxgwfgwffwwvvgvvwwvwxffwwvggvwgvvwxxgxwgfwwwgwfwwgvwwwwfvvwvffUuwggVUwffVUVgfvwwwffwwwvwfWeeDufVfUugvwwwwfvVfVDwwwgfvwwgwfwgWewwxgfxwwxwwwgwwwwwwvewwwwfvwwwxxwxgwgUwxwwgwgfuwwwwfxwwfgwffVUefefEtgfwwgfggefUgfgfwwwwfvwwggvwgxwwwxwvgfxwwxfWwwwgvgffUuwgvfuwfwVwwwwwwwwvwggxwvvwxwwvggxwwvvwvvwwgwwvfffggggfeeufggwvffwwwwwvvwwvfeUVVEEvwevvfvvwggeuwgwggwwwxxwwvVVwwwvvvwwwwwvxwwwxwwxwwwggfwgwwvwwxvvwwwwxxwvwgwwwwvwwwwgfvfffVVvfffeuwwwwWTdwgvwwwwgxwwffwwwvgxxxvwwwxwwWVfvwvwvVVfvewgvgwfgwwwwwxwvvwwxxvvffwwgffefWevggwwvffvwffuVUtgfveUwfvffvwfvgvuwWwwvffvUVgveeeVEuUfwggfewgvVVwgvwgwxwegvugvfggwgvvfwxvwwxxxwwvVfgwvwggWewwgvVvexhvwgfvgvvfuWfwgwgwvfveVgfefdVVueVwggvfwgfeVvwfgfvfgwwvvfgWvwgwfVvexhwwvwvfwwwvuffeFuveggvVFffuwvuWwxgwwfwggwwvwwvvxvwwwwggfgeUgeuwwgvwwwwgfwwwffffvhgvhgvwwgfdgVwvggvWwfWuwwuffUvwvxgfeFUTsxfxwwxgfwgeevUxxwwwwwvwggvgfxvwwhvgvvwfvwffexgvwgvwwgfdfVtwvwwwgfgfvvwuffUvvgwfVe6UTfxxgWwgVwwvxfffuwgvgvwvxxgvwVuvvwwffdVFhwwgvwgufVwvfVFVVwvffwwxxwvgwvgVgVevgvvvffwWUfgvWEUffvfffwvvwvWWfgfvgfwgwfefUVfevFfgwvwfVeeVefgvfgwgwwwuwwwgfgWfvffxwwwgwxwwhxvvwvwwgwggfwvgvgfvgeVgewwgvvfwwgfVfUvffwgwvefVUWfvVVgwwvvVUeUdffugwghxvfwwwxvwwwvgvffVugeVgegvwuvvwwgvufwfvuWwggvffEwxgwWeFfevvwvvvwwwvvxhxvgwfwfvwgvvvwxwwgffvwgffffvhhxffgfgvvwgwwvwxffwgwffVUfeUufvgvWeUvwvwvvvxwwgfvwvwfwfwhgghwvvvwwxwwvwwwgwxvvvgfwvfvvvxfhwwwwhhxwwgvvwfvwgwwwwxxffwgwvfWeUeUvfvwvgeUuwvvvvgxfgxvvvgvfvfwvvxggggwwwwfffgfxwggwvvwgfwgvfffwgwwfwhfffwvffwwwgxwwwwggfgvwffwvWfwwwgvefggVfwgvxwwvfvgVwfwgVgggwvvwfwgVgVfeffVVUwggVfUggwwxwwwvwgfwgfgvvffhwxwwxwgwwwxwvvwwgfwgvwwwgwwwvffgwvwgwwfvwwwfgfwWfWWgwgvfVggfvefWfVUvgfVVevWwxwwuwwevwwwwxwwvgwgVgwvwhvuvgvgevuvxfggevwvgfwfuwwwwvffvwvwvfwwwxwvwggvgwwwwvfgwgwwwwwvgfffvvfvwwvgghwwwvwgffwgvgffwvffwwwVUefvwgWUuwhfvgxvwxwwwgwvffvwwwwghwwvxxxwvxwggwxwwvvwwxgwvvwgwwwwwgwwfwwwvvvvwgvgffwvffwxfVUefvwfWUuwgvvgvvwwxwgwxwwwwwwvwwgvggwvggvffwxfwgwxfwwvxwffwwvgvvgxwwvxwgwxghwggwggwwfgvvxhgwwwvghwgwwwffvwwfffffwwvfwvwwvfwvgfggwvgwwffVUUeewwwvwVeUgwwwgggfvfvxhgfwwvvwvvvwghwhwwgggwvwvxgggfgfwgfggfgvfxggwgvvxhwgwwvgfgwhfvgvwffeUVeUwgwvwUeegwgggwwwwhgwwgvfwwgwhvfvvxwwgvfwgwwhwxggvgfvvggffffffgvgwvgwwfUvwvwgVVxwvvfgfffufwgVfhwfwedvwWEuguvfffwwfwfwVfwufgeexvVVgfvvgwfffdfUvwgVeTugvwwggVggvwffgvgfwwwwvwxwwwfVgffffUwgvwwwwvwuwvfvwwgfFgwwwfgfvgfuffdwwUEgwevgvffWefVuwwgUUuwwwwwggfVffTwgvwwwvwgvfvfwgfgfffgfdVfwggVVTwggfwggwffwfVVewxffxwwgfwhwvvvwwwwwwgwvfwwgfgwfvwvvgfggvvvvvwuwwgwWvgwvffgffffedfFugfwwgvffWwfUwvvgfwwwvvvwwggfwvvfxwwxxwxxwvvvwwwWxxwfwvgxwwvvvwxwvvwuwwwxgwwwgffgfffeedfFugfwwgwvfWvfevwfwfwxwvwvwwggxgvwggwwvvwvgxwvvvfvgffvfwfvgWvvwfvgfwwwwfggvwwggefeuwwvffwwwgvvvvwggfeeegffvVVfffeuvWwvffwwwwwvwwgggVUeffUUwfwffvwgffgfvwgggfwwwwwvgwwwwgfvwwwfwwwwwwwwwwXvwgFFgvwgvvwWUwwwwwxgwwwwvvvgfwgggfvwwwggfffffffwwvVUuwwgfVUugvwffvwgvwWFFwwwvfwVUuwwwwwggwwwxvvFFUUvfvFFwwuvfvwwUUwffgwvwwwffwwwwhxfVgwwfwwxwuwvxwvufwgfVvwwvgfdfVvDUTVewvxwvxffwugwxwxhfgwvwvfgufgfvfgweffefxwwwwwvwwwwfvfvfWfxwwxxgxwxwwwxxxwwWvxgwwvwwfwwwfwwfgVvffeffwgvwvwuVwfvgvfvfWeVufVfUFeTExwvwwhvwwxwvgwgvwwgwvxvwgvwgvgwvgvfgwwxvvxvfWffvvgwgvvwwgvwxxfwwxwwggwwwhvwwUfwfwWTtwWVUwwwxxwwhgwwxffwxvfvwwwwwwwwgffvwwWevwwwwgvwgwvwxwxwxvgwxwwwwxxwwwwfwwvwwgffvwwwUfwwffvgfwgwvgvWVUffgVTwwwxwxxhwwwwxxxxwwwwxffvwffwwwwwwxwwvwwUfwwwgwgwwwwwxhwwxWwwwvwwgvUfwgvgVevVgUfeffwxwgwvwfgwvwvwVwwvwXwggFfwwvwwfwdfevwgwwwwvwugwfwVwgxvgwxxxgwwwwwvhwwwwwwwxwwxvwwwwwwhvgwfwfffweVfwWvwuwvWgVgFffweVfVgdVeefwVvwxwwwwxwwwwwwwxwwvwwwwwxwvwwwwwvgwwwwwxwvgvgwwwwwgwfwwwvxwwgfvwwwwwgwwwvfwwvvgfvvfgfETwwgeUUUuwwvwxgwfvxgwwwwvgfwfgfWufvwwwwfgwfVwwxwggwgvxwwwggfxxxxxwxwxwwxxwwwxwwhvwwwggxwwwwvwWVUvgfwwwwvffwfffVUUuwfwVeffVEtwwwwwwxxwwxwwwwwwwwgvxfgfxxwwgwwwgfwfgfgwvffwwwwvfffwfUfwwwxwwwwwfffwwwvWuUffWefVefUfUfeVfwhvgwfgfwfvwwvUfgffvgwwwUfwwvwDUvfvvgwwwwwwggfvWevVfwwvwvxxxwwwwwwwwwxxxfwfwwxwwvwvxwxfhwWWUvDUfvvfweUfVefwggvg3DfwuVgUfeffvwwfwwhvwxxhfffvwwfwfwvxxWfgvwwwhwgvwwxwwgvgvggwvwwgwwgvwxwvfvwgwvwwfwgfwvvwwvwggfWevwwwfUfvwgfgwggvvfwwgvhwgwwwffwfwfxvwgffvgwgwxggwwwwwgvwwwwffffvgvvwgwwfwvwvvgxxgvwvwwwxfvwwfwgwwvwgxxwhvvwfUfgvgvgwwwvfwwwfwfwxffffffffvfwggfgwvggwwffwvxfwwwwwwwvgxwwgwxwxfwfwvwwfwvwwwxfffwvvwwgwvwwhwxhwvVgwwvwxgfxwwgvvwUggfufwfWUewVWEdfvUVffggwgwxegwwwgVuVUfvWefugvvwUgwffDVffggvwwvwggfvxwgVuwwfwwwwwxxwwxwwwwvwwgvvwwwwxwwfwwwwwwwgWfvwwwfvwwfwwvgvVUVfFdevfvxwfgwffUVVfvwevwwwgvwwhvwwwwwwxwwwwwwwwwgfwwgvvxvWeefgvgfwwgvwwwhwwgwgfwxgggffvhhwxvfwwwxguWvWvwgVWefeUfvUfTTVeFffvvfwggffvgxwfvWVvUfewwgvwwgwXefwwgwwvwhgxwUVvvfwfugvgwwwwwwwxxwgfffwvwwwwxhwgwwwwxwhvffvfwVugvgvgWWeVUfffewvUefwfwgGeFeffwwvvwhhffwwvwgxhwgwwwxxgUfwwvxUfuwfvwgwwvwvwwxwvvggwwwxvvffhwxwhggvwvwwxvgwfvVVvfeegfvVVgffffwgvwxwvwwwwvwwUfxwgvgggwfgwweefwxwvvvvwgwxxwwvggvgvwxfwvfwxxxxgwhwwwgwgwwwwwwxwwwwggffggfgwwfUffUfgffffVevfffgeUfwxvffffffvwwwwvvhwgwwwwwwwxwwwwwgfvwgggvwggggvwxvwwgvwwwwwwwxvxwwggwfwwwwfwxxfwhvvgwwfwf5UwgvgUvfWfDwwwwxwwwwgwfwvwUfgwefuxvwvwwgVfvwfgfvwxwwgxwxgwwwwvwxxwxxxxwwxwvwxvwggxwvwfgffvxfwVfgffFTwfvhvfwgvevwfVUwxxwwwwxwwwgwxwwwwwwvwwVfvwwvfVxwwwxwgxwwfUwgwwwxwxwwxwwwwwwvfvwffvwwgffwwvwwgxwwwwwwwxwwgfvwwwwwwxwxwwvwvwwxwwxwwwxwxfwwvxxxwxxwxwwwwwwwwwvwwxhwwwwwxfvwwwwwffvwgwgwfwxvwfvfffwwfxwwwwwwxxxwwwxwwwxwxwwwxxhfgwwwxwwhwxxwwhwwggvvwwgwVwwgwwwfgwvggfffVfvfffgffUVgevgVwwwwvhfgwxfdvgFfwwvuwfgwvwuwghwgwwwwgwWwffvfegfwvgwwxxwxwwxxxwvgxwwxvxwgfvxvhhxfWgvfvfugfgwggfffgvUffwvfdffggfgdfwfWfefvwwwgwwxvwxvxwgxxwxwxwxgwfvvwvgwwhvwvvxfvhvgwgxxxwxwvwffwwwwfvgfwwwxwvwgvvffefeegffffffefVwhUvxfgvxwxwfVevfvfgvgvVexwwwgvfggwwwwxwgwffwfwgfgvwhwxwwxwwwvwwwwwxxxxwhwxxxfgffwfwVegvgxvfeefffUVffuVewwghwVefgfwwvwgwxfwwwwxxwxwwxwgfvwwwwgffvgvwwwwwwwvwwwwwwwwwfgvvgwwvwggvgwwwwgwgwwWffvWEFeEUeeeUefwfgwfwwwwwfvwwwgeefgwUffgvfefwfvfgfuwWfvgwwwgwvwvgwggwwfwwwwvwhwwvwwxxwxwwxwwwwxxwwhffvuwfffvwwwwWUeVVfVVfwfdTffefVVUVvfgwfwwxwwgwwxwxwwwwxwwwwXVvfgvwvffwwvwxwgvggvwwwgwvxwxwwVVgwxvwwvwffgxwwwvVwVVvgfffeufgVVvUfvgggwwffwxwwfVVxwgffggwEEgfwffggwfwwwwwwwwwggeuffvwggfwgfxwxwxwwwwvwwxgwwwxwwwwxgwgweWUeWeuvvwwvfgf44vwfeeVevVVffvffwgwwvvfgwwvwghfwxwwwwwwwwwwxwwwwvfwfggwvvgfwwwgggwvvgvwwwwwwxwvgffvxxwwfVefvfxfwwwWffUffVegfffUfefgeewgvgfwwwgvwvwWDeVeVefWwwfwfwfffUvfvwfwgwxwwweVewgwgUfUvgvwhwwwwwxxxfwgwwwwfwgwxfwwwfwxwwwwwVUUwgfwfgUewffgUVfe4CfVVwfwfwvgfUfwvfgeugwvwwgvgfwgwgwxfvwwwwxwwxwvvgvggwfvwgvwfvwwgvxvxwggvwxwxwwwwvwgwwwwwgvwxwvwwxwxuvfgeVUUwgwUfwwvffVgvvwwwwwwxwwvgfgVuwgfVwwwxxwwwvwfvwwwwwwgwvwxwwwwxwwxwwxxwxxwwwxwwwwwwwwxwwwxxwxwxxwWgvfwwwfgwwwwwugfVUuwVffugfwwwfgfewwwwwwwwgwwwwwwwwwwwxwwwwwxwfvwwwwwwfgfvwxwwwwwxwwxwwxwwggwfvxxwwvfwwwwwwxwwWfwvWUUVvgwffvvwwgfvgwvwwgwwwxxggffVgfwvwvvvwxwwwfwgwwwxwwwgvfvwwwwfvwxwvwwwxwwwxgwvwgwwwwxwwwxxwwwheffvwwwfvwwxwWVeVUVUfvfvgfwwwvwwwwgvwwwwgwwwggxxwxwwwxxwwxxhWfwwvgwVvvwvxwwwwwwxwxwwwwwxxgeggwwwxwvvwwgwgfwwvVFfwfdfwegFeVfeWfgwfxwvgvvgwvgwhgvvffwfgvhvgwVefgweVfvxwwgvxxfggegvvVvxxxwwxxwfxhwfwfwgwwgwwfwgvugwwwgufevFewggvegegwewfegveWvVefFeeFfegwxwffxvxwwwhwgfggwwfwvwvwwgwffvvwgewwwvxvwvgwgvfgwgwwvfewvwxwWwwgwwvgfgwfhgdTfgfvfFfffgTfgdWWuwwwfVgfffwwuwww5UwWwgfgfgwggdvwvggfgwwwwgwffvfdffgwvwxxxwwxxxwWwwwwxwwvwxxvwfxwwwxfgugwwdDVUVwefwvwwwFfwhwfdffVweFBdgdVgffvvwwWWuwwwxvwwwxxffwfwwxwWwwwwwwVfwWwwwwwfwvgvwxxvvvwgwxwwvffwwwwwwwvwggwwffvfffggffgVUvgfVUfffvwvggfvgwfwvwvggwwgfgfgggfffUeewgfgvUVegwwwwxwwvggffgfffgwvxxwxhwxxwhxwvwwxghxwwvwwhxgvwwvwfwvffvfggfgwvvgfgvwgvwwvggfffUVefgwgfUeeffwxvwvvvggwhvwwvwggwwvvwwgxwvvvwwgwvvxwgwgxwvwwggffvvwwgwvvgwvvfwwwfwwgvwgvwwwfwwgffffgwwffffwgfvwvwvwvfwfwgfwwvwwvwgvvxwfwwffwvgfwgvfwxgwwfgggwwgfwfwgvwvgghvwwvwwwvwvwgvgwgwfwwfwwwxfwhfgwgwwvfgfvvfwvwwxwVewwwvfgUvvfgfvvvgfffwgfwwvgvwgxwgwwwwvxfwwwvvgxwvVewgwgvhxwgwwxgvgwwggwwwgwwvwxvvWwwwxwwvgvwfgwhvvvfvVgvffVVeVfgVguefwxwwwfvfgwwwwwggwwwvvwxgVVfwvwwVVwvvvvxwwwwxgwvffvgggfwwgvwxwxxwwwxwwwxwxgxwwxwhwvwwwwwwvvgvvgggfwgufVVfffeuwwgeVfgeeegVwwvvfuwwwwxxwwwxxwwwwwxwwvwwwxwffvvxwwvvwgwxwhvvgwggwwvwggwwwvffvvwwvwwwwfWwwvwwwwwwevvVwwwUUfuwfffwfgwwwuwwvwwvwxwxeewwwgwwwweUfevwwwvvwvwwwggwvfggwfVgfvgvwwwvxwwxxwwwxxwwwwxxwwxwvwwwwwwwxwwwXgggUgfvvfvwwgdTfwgfgvhfdTUeevfVefwffgwwwwwwwwxwwwvwfvwwwwwwwwwwggwgvxgwxwfffwgwwwwxvwwxxvggvxwwwvxwwwwwwwwwuwVUfeevgUvgfVeffUwvfwwwgfwwwwwwgwwwgeUffuwwwwwgwgfvwfwgwwgwwwwgfvwwwggwfwffwxxwxwwwfwwwwvwwwwwwwwwwwwwxgvVuwfggfwffVVwWffffUUfUuwwgvvWfgffgffVVfgwxwwfvwwwfwxwwwwxxxxwwwwgwwwwwwvvfwwgfwfwwwwwwwwwwwwwwxgwvgfguwwwwwvwwvwxwfwwwxhFevfVVUdfvedvvgwwwvwwvwxevwwghwwWgffvggvgfvxghefvvwxxwwwgeWwwwwvfvfwwfwwwwwxwwwwwxwhwggwwwwwxxvvgxxhTWwvgvfVugvxvHffGFUfvvgvfUuwwwwgUufUwwwwgwwWVgwxwwvvwxwxgvwgwxxhgfwwxVgvwvvxwwwwwwvfvwxwhfVWvgwfxggvggvgvwfgxwVVgwvufgeeVgvVevgwffggfggfwfwwgggwfwgefwvWfwfgvwwefwgwvgwwxffhwfvvfvfgvwgfwwvwwwgghgghfgwvwgfgwhfwggwwxfvxwwwwxevvguffwvffxwVVfufWeuwfWgwVewgvVVwwgfgfhfwvvvgffwhgfgvwxgwwwhwwwwuvfevwfgfvwXwfwgvvwwwgwwwwwxwwwxgvwfgvwwxvwwgwvvwgvwgwwwwwwgvfwwxgvxwgwVfUvxwwwwwvwwxxwwgvwwwfgffVfuwgwwwwxfwvggfxwwwxfwgwvxxxvwvwhgxwgwwwwvwgwwgvxwgwVeVuwwwwfffxwwvWffuwgffVvVVeuvwxwxfffwhvfwgfUfvffexwwwvwwgvvwvVVwwvwgwwwffwfvfgfffvwgvwwffxxwwxxVwwfgvwfVwwwffwugVfgwegvhgfwxwgUVfwuvfwfwfefvWffwVgwxugwfwUVefwfwwvVgwwevxwxgwwfgfxxvwwgvwxvwgxwvhwwwxwwxgvwwwwwxgffwvvgUffvuffwgfefvhffgVwhvwgVveVffgvwvwwgfgggwwvfwwxvxfguffvwggwwvwwhvwgvWffwvwxwwvWvfwvwxvVffWffgwwgvwvuxxwgwwvxfhwwwgvxfwwfwgvWefvfwxwwgFfwvgvGgVwwwxwwwwwwvgVgwvwvhwghuvfwwwfxxgvwvgugwwvgwggwvwvgggwfxgwgwwwhxwwvxxgwwxwwwgxgFewwgvGeuvgvwxgxvwwwvgTfvfwwgwvGeVfvewwvwewvwuvvvwfwvWggggfwwxWvwwwwwewfwxfvwwwvwvwwfgwwxvwghvVwgfgwxxwwfvwugwwfwvgvEfwgvggdfUfFfvWwvhfVggvefwwfffwfwwwwwgwwwTfwwffvdfVwwfwvwwvwwfgwvwwfgfwwfWvvvvwwgvwvwfwgvxxwwwwhwwwvwvggvwwWwwxxfwegfffWwffVwVFevVvgwgvWvgwffwwfFfgvVvefFfugvwvhfwwhfvfvuwwwvguwVfgwwwfwgfwwhfvgvgwwwvgwgvgdVvwhvgdfgvgwwwgvwwfvwxfwwfwghvgxwxvfwwwwwffwvwgfvwwwwfwgfvgffufwgwgvwwwwwwwfvWugwhfwwwhwwwwwvvwxwxwvwfvwvwwwwwwwxfvwwwwwxwwwwwwxWevgwxhvwwxwxxwffgffVefvfgfwwwwwwwwwwVefvggwgefwghwgwwwwwwfwwwwwwgfvwgwwXefwwhwwwwwfwwwwwwwwxwwwfvufwfwwgwvwvwxwWVwgeWwwwwgvwfxvgewuWwfggvwgevwwgwvvvxwfGfwxwwvvvwfvwxwwggwwfweWdfTwxwvvfvvgwgwfWwvvwvvwwfewWexwvwwvhwxgvvwwwwwwwwwgwvxvwwvvwvwvwvvwwvwwwFVuwgwgvffgfgwwwwwgwvfwegTVewxwwwwfvgwwugxwwwwwwuWwwfvfwwwwvvwwfwwgwWfgwxwxwwwwgfwVfWfUgWevwgxwwgwvgfvwvfwfvwgwwvwfgfvgwfUegVewVVwfgeeffwgfvgwveUWvWuvwWVvwwUegxwgggvfvvwfgvgffgwwxvwwgffwgwhvwvgffwwggwwwwwwwvgwvwfwwffwxwxwxwxxwwwwvggwwWVexgfvwWfWUUvffvgvVeVfexwwwgVefffvgVUefgwfggffevVfgwwxwwwwgvgvvggwgwwvvgvVgvwfwwxUfevwxgwgwwvwwwwwvwgwvfgwfwwwwwwwxgwxvwvfweVfgvvgvvVVffefegWevwwvgwweefwfwgfvgwwvwwxxwwwvgfffgvgvvwwwwfwxwfgwxwvvxxwxwxwwwwwwwwwwwwwvwxwwvwxwwfWeewwwggwxeUfvggVefvVfVvfwffvwheefwvwwfwgvfvgggwwvvwwwvffvvwwwwvvgwggvgfgggwwwwwgvxvggwwvwwxwVWuwwgvwwffwwwgvwwWwwwWVevwwwuUfefVugwwWwffvffgfffvvgwgfvwwfffUfgffgvwgfgwwWvggvwwwwwufgwffgVevwwwxwgffwwwwwhgfvUwwwewvgvwwwwwhvwwwxXuguffuffGDdvwvgWgfVfffwvwwGDtwwvggVeVevwwxwwgffUfwwvwvgffffwwgfvvgwwwxxUffwgwvUwvwwuwwfwwwgwvxwwwwwUwwwvgwgvhwfxwgwxwgwvfVfgfdvwewWvWvvWfxwfwwgVewveVfwgvvevfhvewgwxwgwgwwgwwgwwwwwwwwwfwwxgvwwgvxxwxxwwwwwwxwvwxwfwwwwxwgwxwxgvewwwVegveFfwwwfUvvWfevWvwwgvgvvWfvWwwgwvvwgwwegvwvgwgvwgvvgwwxfwwhwfwegwfgwuwwvxwwwxwwvwwfwgwhwvwxwvwwwwwvxwhwhWvvwgfvvgxvewvwvwfgvwwwfgfgwwwwwgfvgvwgwwwwvgwxvwvhvwwxxwvwwxwwwwwfwgwwwwfxwxgxwxhfwwwxwvgwwfvffgegwegwvXWvgvwhwwwwwhfwxfwfwwwwhgwfvhwxwwwwhewfwxwgwgwxgwwhwvwwwxwwhhwxvWvwxwxxvwfgvvwwwgvvhwvfwwwwwwvwUVvWevfeuUfggvgfvffffvvfggffgvgUVwwwwfggeVgfggfwwvwvwwfggwwhwwwfvwwgwwwvgvwwxwwhwwwwwwxwwwwxvgxwwwwgwvxgwwwwwwvffvwfvffwgeVewgfwwgvVfevffgvffuwwuVfvfffwgfvgwvwwgfwfgwwgwvxvwvwwwwwwvvfgeVwwgwwgfvgvwwuWwxwwwwwgwvvgwwwwwwwwwwwwwwwwwwwwwwvvffgwwgWuwwxfwwfwfVeggfvfgVfwwgfVgwwfvwgwwfgfvwvwgwwxvvwwvwwfwxwwwgvwwwwwwwwgvxwwwxwwwwfwxffwwwxfwwwwwwxxwwwwffggvgUfUfwuvvfvwffwhwwfwfwvwvwvhwvgwgfvgvVewhwfxwwwwfwwwvwgvgwggwwvwxwfggwwgvwhxwwwwwwwxwwxvwgwvwwxwxwwwwwwwxwwfgvgvfvfvvvgfgwvwvfgffwffgwwwwwggfgvvvwwwwgfggwwvwwwvwwwwwwgxwwwgxwwfwwvxwwggwwfgwwxxwxwwwwxwwwxxfwfffvvfggfvffvfgvfwwwggffgwwwwwwwwwwwwwvgfwvwwwwwfgwwwwwwwwvwxxwfwwggfvwvwgvxwxwwwwwxwwwwwfvfvggwvwfgwvgwfvwwwxwgffvfgfwffgvwwvgfGfVgugffvwwwwwgeTffwfwfgveUfvvwgvvwwvgwwgfvwggwggvwwgvwwvwvgwfwwwwvwggwvggwwwwwvvvwwwfgvgwwwxHffgeffwvvwwwwWeTfvwfwfgvfefgfwvwgvwwwwwwWffvWgwwwwgeevwwwxwwwgwwgVffwwwwfwwwwvwgfwwwgfwwxwwwwfwvfvvfwwvxwwxwffvuwffveVvwfvwwgffgfgVVuxwwffwwfwfwgvfffeVUUwwwwwgwwwvwgvgfwgwgfwwgxxgfwwfgfxxwxxwwwwwwwwwfwwwfwwwwwwxxwgfWfuwgwfgwwfwVwgfffvfVVfwwxxwggwvffgwwVvgwffgffwfffwwwgwxwwwfwwwwwxwwwfffvwgfgfgfffxwwwxwxvwvxvguggxvghxwxvfwxwfxwWgvvWUVfuwweevvwwwgtffwffvwxxwWgfWUffveVfwvwwxwwgvgfeuwwwghgfgvfvxgfxwwwwwwwwwwwwgxvhfgwwwwxwxwwgxdVewxgVuwxwwWwvWDTVgeVfgfwxwwgggfewwWhwVffgvvwwxgwxwgvwgwwxwVexvgwUffgvvgwwwwxwggwwggwwxxvwwvvwwwwwvwwwwxwgwxhuffvvufwwwwggvvwwfeugvvffwfgwwwfffvfWefwwgwwggwwwgggvwgvxvwwwvvfvwvwwxwvwxwfwvwgvwwwwxxwwgwvvwvwwfxwwwwxxxwxhweeffvgfwwfgwxwVfffgWevwvwfwgvwhwfwwwxwwwxfVefvfuvwggxwfwwwwgxwwwwvfgfvwwwvfwwwwwwxwxvwvxwwxwwxxwvvvxgfvwwwgfwxfggfvvvfxwwvgwvfwffwvxwwxgfffWUefvwwwxgwwwfvgffgvgfgwvWfVuwwfvxxwwfvwwvfgfwwwxggwwvvwgwxgwgwwwxvfwgwvwwvgwfwwgggwwgfwgWVfwfvwwxxwgvwxwwwgfvwvwfwwvVffuwwvwwwffwgwwvwfvwfgfwvvgvfwwvwwwwwwwwwxvgfwwgwggwffwvwfggvgffwwVvwgwhwwxxVwfwwgwwvFegUvwugVeEfwgfwwvggfgegfgffvwwwwvVevwwwfwgwwwwEfwgwfgvwgwfgwwwvwwggwgwvfewwwwxwwgggwwwwxxxvwwwwxxxwwxwwwfugwvwxwwegwvgfffffVTwgvfvggeugvgwvgufffVVfetvgxxgvgvwwgwgwwwwgvffguvgwvgxwwwwwwuwwgwuWwwvvggwwwwgUEwwwwwffvwwuwwfgffffgefwvwvfehfvwgwffgevxvwgVUuVvwefefwfwgfvgwffvgvfewvWgefefwghvfwwwwfwwWwfffWeeevwfwwgwgwwvvvwwwxfvgwWwxWeefgwfgufwfwwfhvfwWfgVfeUEDewfwfevgwVfvxvfefefvfGDewfWgevwgfwggVUvgvguffwfWeegvfwfwwWwffvgwfwwwvwvfgVfvgvwwwxvgvwxwxxwwwwwxgfwwwxxvwwwwgffwfgUvgvgffffwwvwgfwvVVefVwwvxwwwxwwwgfvgffwgxwwwfvwwwwffwwvvwwfwwwwwwwwxwwwwxwxgwwxwxwwxwwvwwxwwwwwwfvxgVVeVVwwwxwwwwvvxwVVefVgvwwwfffwxxfwwffwgvwvwwwgggfvwgggfwfwwfwwfvxwwfwwwvfwvvwvwgvwvvwwhvvfvvggwvwgxxvgwvvwwwxwxVvfvwwwfgfefwfwwwgvggugvffvuvwwgvfgfwgvwweUfuwwwgfvwwwwwxWwwwvwvwwfvwwwwuhxvwffwvwhggwgwvwwxxwxvwwwwwxxvgvewwfUvvgwwgwfgwwgvheUvvwwwWevwffwwwxgwvgWfwwwxwvfvfwwXefwwwwwxXWfgwxfvwwwwwwwxVewgfwwwfwgwwhhhwWWgwwwhuuvwwffggWwwwhefgwxfvxvuggcefvwUWwgggwwxuvvhfgVevFfvwxwvUevgWgWfwuefwWfwgwvwvgvvggwgfwwWgwwxxvwwWgwfvwgvwxwwwvwgcEfwwUUgggggvwwxwvwgww5EvFffgxxuUewGguwxgvwgFffVVwgfffwwwwwvvwhdfwuwhhfvfeewuwfVfgfwwwgxgfvwvfwffwwwUwfgwvfwfffgfvwffvfgfvvwfVegffdUffgffwgfvgvVewhwwUwwgvffUfgtfvfgwwwfffvVexgvgfffvvwwffffvwgfvwwwfwffgfwwvwwgfhffvfvwgfvF5SwfvfUffvvfggUfgf5SvFggfffvvwgUvvgvffwvffffffffgfvfgfvwwfvvfvwwwwwffffwhwffwhwggvvggvvggxwwffgffwgwwxwwgwwfgwwvwgwwggwggxvUgfweggvwggvWfwwgufgwvWfgfffgwfwwvfgUvvvggwWvwxwVVwgwwwwgwwgwvwwwgxwwwwgwvwhwwwwwvgwvvwvwwxwwwwwgxwwWuvwwWwfWfwgvwwdfgevvhwwwwwxVUggwwgvwvhwevfdfvwwwgvxffggwwwwwuvwuwxhevxwvxfwwwwfxwwwvxwvgvvwwfvwgwwggwvwffgwgufvVwfgfgfgvvfvxgwWgfvVfgfvffwWgfevwxgfwwvwevfvwfwffgWgguuwvwvvvgffggfwvvfuwwwwggwwwwvvwxgxwvvggffwwvwvfvvwwxwvxxhgWgfWwffWEDwvffuwWwUDtwwfVwwuvfvffgeuvvwxwwgvxvffvgggfwwvgffvvwWwwvwgwwgwwwggfgwwugfvwvuwwfgwwwwvgvvwfvwgxxwxxwxgwwwwwwwggxxwwgxxwwxwwwgwwvwwwwwwvgwwvwgvwvffwwwwgwgwwgwfwwfffxxwwwwwwwwggwwxxxxxxwwwwvwwxwxwwwwwxwwxwwwxwvgwwwwwwwgggwwgwvfffxwwxwwgwxwwwwwwwwwwwxwvvxxwwvggffxwwwwwvvwwgffgwxwwwxxwwwwvggffgWVewxwwwwgggffggffvwwgggfvfWVeugwvffgveUVgfvwgffff&33bffffxxwwgvxgwvwwwwwwxxwwxwwwxvvwwwwwhwvwwwgggffvxwwxvgwwxfwwwwxfwwvgTUEwwwwwwwwwWVeuwwwwwxwggxwwwxvwxxwfgffvwwwwwwwwwwwwwfffwwwwwwweUVwwwxweUVffwxxwwvwwwwwwwwvwggfvxwwgwwwfUvwweVfffwwwwgwgwwgfvwfwwwgvwwwgwvUUfffwgwwgfffUUwwwwwvxxxxwwxwwwgwwwwxwwwxwxwwwwwwwwxgwwxwwwwwxwwvgwxwwwvvwwfxwwxwwvwwwwwwwwwwwwwwwwxwgwvwwxggwwgvwwwwggvVfuwwwwgUvwvgggggwfwvffffFffgeevwggvwfvwfeggVggefevvVueUgVuwfUfffWfveeeUfUeEegVdeeWfeVdVfUEuwxxwxwwwwvwwwxwvwfwvwwwwxwwwvgwwfwgvgwWwfwuvvhwvvfvvvgwxwwvwvxgvxgwwggvwwwwfggvgwgwfvfwfvgvWwfVvxwwwWvwuwggvwwwvhvfgvvwwgwgfwwffgggvVgvgfevVffUwggvfgvVfevewwwwfwwwwwxvgwfwUvgWefgwwgvwwfgguwwvUgvUwwwgfgfwVfggufvvvvwgwvvwVVEefUdefDgffFTfVewxxwwwwxwwwgwwwwxwwxwxxwwwwwhfxvfwwwvwwwwwwgwwgwgwwwwwwwwwwwwwwWVfxxwgvvwvwvvwfwgwwwvwgvfwgwvwwgwwwvwwwwvgwggwvwwwwvgvggWVwVuvgWuvgvUgwwggffvvfwvgwfwvfwgxwwxxxwwwVwvVggvwWVetxxvwvgwvVwgvwfffvvgxvfggwwVFetggugvVwvgggfg5$CbgwgwVVftfxxvwxvVxwvwwfwvgxgxwwxwgwgwgvgwgvgvgwvwwgvwwfwwwwvvwxvgwwwwwwwwxxwvwfFeuxvgwVFetgggwwwgwvhhggwvgwwhwvgwvwwgeTVgxxgvgwfgeTFfffgfwvgwwgvwwwwvwwwwwVVvwgvwfvfVUVwwfwfVvggfgvvfVfVwffvwgwggeVfffgveffWVUUUuffvfffVffVfVVUVeUxxwgwwgwwwwwwxxxwwxwggwvwvwwfwggvwwwgwwwvgwxwgwwwvxwwwgwfwvwwwwfgwggggwggvfwwwwvfwvvgwxwwwwwfvwwwgwxwwvfvfvffvwfffeggwwwvgwfgvewegvgvxxxwwxxwwwgwwxwwxvgwfwwxwweUwwhftxfVVuvfgwxwwxwgwvwgveEvffeUwwvxwwgvwgVfugwgEwwwxxwxvwxxxwwwwgwvgxxwwwwwwwwwwwxxwxwxwwxfghgfgxxwwxvxwggvwwggwxxvwgwwwxwxxwwwwwwwgxwwfvgfeVwvwVVxwwgxxwwwwfdwwvvwwwwvVWfvxfwvfwffgwwwvgffgfvffvffgfggwfhfvvfwwfffuVUffegWUUvVewwfffwgeVVgvgfewxwwxxwwgwgxxwwxxwwwggvxgfwvwwwwwwwwgwWxwwewxwwxwwwxwwwwffvwwwgwwvfvwwgwgvfvffwwwxvwwhgvwxgwwgxwwvwxwvgwwwxvgfvffvgfvffgfffwgggfvguwwwwgfgvfgwhwwxwwvfvxwxwwwwvvxxgwwVUxvgFvwgeeuwwvxvwwwwwwvvwfvVTwfVVVwwwwwvwggfeuvwVVxwwwwwxxwwxxvwgxwwwwwxwwwxwwwwwgxfvxwwffwxxwwwwvvvwvvvhwxwwwwggwxwwwwwwwwwxwgvxwgwwvfVVgwgeewwwxxwwwwgfFwwwwwwggwfwxwggffffffvvwwwffvwfffffffvfWfevwwgfvgvffvggeVVVUUUvwvwwwgfeVeeVffffVxwwxxwwwwwwwxxwxxxxwwxwfvwwwvwwwwwvwggwgwgxwwwxwvxwwxgvwwwwgffwwvgfwwwwwfgffgwwfgxwwfvwgwfvwwwxxwwwwwVwwwwVgfggfffgffvffvgvwvffvfvwwwxfvgewvwwwwxgvwwwgwffwVeggwwfffvwwwfwfVvgfgwvfffVewVVwgfwgvgfVUefUufggVUUUgfvffVUefffVeffeUuxxxgvxwgwwvwwwwwxwwfwvvwwgwfxwwwwwwfvwwgwwwgwwxgwwwwwgwwgwwwwVxgwwgwxwggvgvvfxvwwxwwwfwvgvwgwwwwwgwvwvfvvffVwwvwffvfgfgwgUwggwfwwggfgfwwwwwwxwwwffwgwwvwfgfggwwvwggvgfvvvffvgfvwfvvfvwvwfwffgUUgggeuvffwfvfVUfvvgggfUfffxxwvgwxwwwxwwwwxwwxwxxwxwwwwwgwwwwwwwwxwwwwhxwwwwwgwvfwxwwwwwfhvfhgggvvwfvfwvvgggfggwwwgwgwgfxxwwvwgvxwfwggwwwgwvgwfgfvgfwffgvvwwfvvggggfvvwvvxgvvvwwwwggwgfwxwfvvVvgfwgvxvffuwwwfwfVvvfgfuwvffuvwVwfwfwwfgefVufVwgfeVgUewfgfugeUVuwwfVvwxxgwfvvxgvwghxxwwxvwgggvwgwgvfwgwgwwvxvgwwggwwgwxgwvwvggffgfWgffggvwfwwvwwffwwvwwwwvwWwvwgwwwwxxwgwwxwvfwVgVvfVvggvVfvfvwffvgVvwgwggvfwfxwwwwwfvwwgfvguvfgwfgvgfVgwwffwwffgvwgwfwfgfvwvvgvvfwfvwgUUUefeffggfUDfVvfWffwfWgffwfxwwxwwgwwxwwwwxwwwxxwxggvwgvxwgwfwwgvwggxxwxwwwxwwwxwfUwxwwwwwwfUwwwgwwxwgxxfwgxgwxwwwgwfghwwwxxwvfffvgfvgvgfvgwwggvwvvvfvxwwvwwwwwgwxwwfUxwegwgfVeuwwxvwffwwuwgvweUUuwfUwwfxxvgeVeugVufffUC3xgvwwvfugVVetfgefxwwfwxgxwwwvwwwxwxxwwWvwuwfggVxxxxwxwwwwwwfwxwxwwwvgwwfgeUFxgxwxwvwVVeswvgvwgvwWwVgvVxxwwxwwxwxwxvwfUVgVUUfUVffwwwgxxwwwgwfwwvwwvgggwxwwvwxwwvwwgeUUexwgffwwxfwgwvvxwwgxxwweffUUeffffvwfwxxwfgffwwwwgwwxwxxxxwwwwwwwfvwwwwwwxwwwwwxxwwwvwxxxwxvwwfVuwwgvvwgwvwfgwwwggvwwxwwwwxwwwxwxxxwwfvwwggvffwwwwxwwwwwwwvvgvwxgffffwwggwgvwvvvvgfgwfwwvwwwwvvgffffgwfvvvwwgwffUeffeUwfgffvgvwffffvgvfwvwwxwwwwxwwwhwwwvvwfvwgwxwwxwxxxwxwwwwxwffvwwffwwgwwwwwwwwxxxwgfggwwvwgxwwwwwwhffwfvwgfffwfvwgwwwwwwwwwwwwwwwwwxxvxxwwfwwggggfeEFwwxvwwfwwgwwfgefffwwWvwwwgfgeeUFwgegwVvwvvgggeeVFgfwggC#$vfxxvwwgwggwgggwwwxvxwxwvxwwfvxvgvwggggwghwggwwwwwwvgewgfxwwwwwwxwxvwveEFwvwggfEVwfxxwgwVwwfvwwwfwwwfggwggvgggwwfwwWVduggwwvffffwVVdtwggvwwwffgwvvfgewwveVeUefUvwwvwfgwWgwfffefVevwgffgffdffVVffeegVgVUfUufufffeUVdeVTVFUUtxwwxwwxxwvgvwwvfxwwxvwwwwwwwvwuwwwWwgvwwwgwfvvfwwvwvxwwwxwwwwwvwgvwwwwwgfvvfvfwwvwuvwfvgvgfffuwwwfwgwgfwfwfggvwuggvgWvwvhvwwwgfvfggVvfffVgeggVwvggVVfVfVgfwwgwvwwxwwwwgffgwegfgWfwwwfwvgwwVewwgeWgVwggwfwwUgvgVevgvvwwvvwgVfDVffEdeTgffUFeeVwxwvwwwwwwwwwwwwwxxwwwwxwwwwwwvvwwgwwggvwggwwwwwwvggvxxwwwwxwwxvXwfwWfvwgvwwgwggfwgwgwvwfwvwhvgvwwwfwxwwwwwfwgwwvwwwwwwVuewvUwfuvgVgWwwwfvwfvwfvwfgffwvwwxwwgvxwfwwwwgfhvffwfwfUxgVuffvxwfwhfwgvwwffvwgvfwfgffwgfVuffvgffvfffVuxxxwxwxhgvwwwxxxwwxwwwwvfhwgxwwffwxffwwwwgvxwxggxwgwwwwxwgxgfvffxffwffvgwfxwwxwfwwxwwwxffwffwgvwwwfhffwwxwghffwfwwgfvgfffUgfvwwfUxfgwvvwwwVuVgggvvewwwvgfgwgvfffvffwfvfgffUfwuwwggVgfwggUWeefVgeeVeVUffwfgeUwfgwfgwwwxhwwgwvvwwxxvwvwwuWvgwwwwwgwfxvwwWxgxwwgwfwgwwxwxwxwwwwxwxgffwwwwvffgffgwwwwuwgvguwxwwgwvvwwwwwWgxgwuUvgvwgVgueVuvwvwwgvwgugvfwvwxgxvwwvwghwgVgfvwggvwvwgiwvffxgfvwwghwvVgfvwggvwhvvVvwvVxwwvvfffvgegwwwgvguwxyxxgwvwxgwwxwwwfxwgxgvggvghxhwffWvwvfgvwgwvwyggvwwwxhwwwwwwxwwgfvvgvwxwvgvwgvfgxwgfwfvfuwvfgvxxwgwwxwffxwfwxhwgwwwwwwwwgxwwwwwwwxwwwvwwvgwWvxxwvewfggVvvwfwfVvwggfegfgfVgvVvggwfvfgfVgwvfVfVefeuwegvwwgeUVVUffWfVwxwwgxwfxwwwfxhxwwxwvwxwwWwggwwvwwxxwwwwgWxxgvvwgxxwfggxwvvfugfwfvffvwwwvxwggfgfVvwgwwwxwvgwfvvfvxwwxwwwfhwfvwgggvfgWfvfvWvvfefvuvgfvvffwwvxgfwugvgwwwvgfwwggfwvgwfwfvgfwwvwwgvfwvgwfvgwfvgvffwefvgwgfwvffUefVfeUUfggfffVvffVEtgvegvugxwwwwwwwwxwxwvxgwfwvxwxxgxwgwwwwhxwwxwxxwwwwvwwwwwwxwfUwwwwwwwgVwwvwwwwwwfvgwggvgwwwwwwgwxgwfffwgwvfgfggfgwgfxwggvfwwwvgwwxwxwgwgwxwwwfgvvgvwgvfgfgwwwwwwfvgfvggfffvgvgfvwgwgwgwffgeewvVUufgfgggffUfwfwvffUeffxwxwvvwwwvggwgwxwwxwxwxwvwggvvwvxwwfwggxwwgwvgwfxwvxxwxwwwwwwhgfxvvfvwgfvfwgwwggfwvvvvgwvwwgxwwwwwwxwwwxwwwwwgwwwwwfvgvgfffvwggfwvwvvfggvgwvwggfvwwwggwfwwxgwwgwwwgwvwgwfwvVewgvV5ufgdduwwwggwfgffvwfwfewfWfxfghvfffWddfvv7UxwwgvxxgxwwfvwxwxxwxvgwxxwhxwwwwxxwwwwwvvgwfUwwfefwgwhxvwgwefuvvgfxwgwwxwwwwxwwxwxwwxwwwwwgfewwUfxwgwwwxxvxgwwefvwvwfgvwwwwggwwwwfffwffwwuUeggfggUVfeVeUffgffwwfgUvfweVfwwwffffgvfvfugvfWgUeUVVeVfvfwwwwwwxwwvvwwwwwwwxwwwfwwwwwwwwwwwxwwwgwwwwxxgfwwwgfvwwwwwwwwwwgfgvwvwvwwwgweeefVwgwvwwwgfxwxwwwxwwwggwwwwvxwwwwxwwfgvwwwwwwwgwvwwwwwwvvvwgwvwwgfvwxxwwwwgvhgwwgfvvvgffvwwgETggVVVUUxvwwwwhgwwgUeugfwwvwUgggfffVUUuwgfvfffFTwwwwxwxwvxwgggwwwwwwxxwxwwwwwwgwwwwwgxwwxhvvvwfwwwwvwwxvwffvVuwgvvfgwvevxwwwwwxwwwxwwwwwwwwgvxwfgfvwwwwwgwxfgfgwvffwwwfvffvvwffwwwvffwgfvwvffgwvffvffgfwfUegfUefffffggfgvvvvfgvwgfvvwggfvvgvfffVVUwfwgwVeUffwwwwggwwgwvwwgffxxgxwwwhghwhvwwwwgwwhwxwwgwgvwgggfvwvwfgwggfvwhgwwvffwvffVeUgfgvfVVUwvwgggwgwvwgwwvwgwvgxhwwgvggwgwvwggwwwvwgxwgwvwgffvgvwvxwgggggfwwwwvwfgvvgvgvffWVfweevffVVffgfffvfwfggfvwgVefgfvffwffgfVegfVeeffVefffvfvxxgwwgwwfxxvxwwvvxwxxwwgxwxxgwwwwwwvwxwwwwgwwwgvwwgwwggwwwgvwgVuwgVfugvfwvgwvgwxwwvvxwwwwwwwwwxwvwwxwwffwwfwwwgvgxwxwwfvgwwwwwxwfwvwwwwweewwwggwwffveefvfgwWveevggfVVvffeefUgfwvVWVuUUwwvfgveefwgwwvwgCCffffgeefUfvfgwwgwwhgfgfwvwwgwwxwwxwwwwggwxgwgwwwxwwwwgwxxwvhffgwwggwwwxvTTxwggwgvgeefvffwffgvgwwwwwvwwhfxwwxxvwwwwwwwwxxwwgggwfvgggwfvwwxwhwvfwvwwwwwwwwvwwwgxxwwfwwwwxwwvvwxgvwTTwwfgVuwgUeuwwvwfxwwwgffvwfvfUwfVUVwwwxwwvvwwffffgFEuxxxwwwwxgvxxgwwxxwwwwxxxwwvwwwwwwxwxwgwvwwffwwfffxxwxwwwwxwfvvwwgVxxwwwwgxxxwwxxwwwwwwgffwwgfUwxwwwxwwxwffwwwwvwvwwwgwwwxwwwvwwxwvuvfegVUwvgUUwwffgVggvwwwvfwwwwwufvVUevgefwfvwwvwefVwwwwwwwwwxwvxwwwfwxxwwxxxxwwwwxwwwwwxwwwwwwxwwwwWwwgwwwvfwwwxvwwWevvwfvwfvwwxwwWffxwwwwwwwwvwwwwwwwwwxwwwxwxwxgfwwwwgwgfvvwxxwwwwwwwxwxwxwwggwWwwwxgfvvgwfggwgvvvgfgWVWvfffUfffWfVvuwvvwvfgggfwuvgVfeffevgwwVVfgfUfUVvwwwevvwwxxwwvfwwffwhxwfwvwwxxxwhwwwgwwxwwwxwwwxwwwwwvfwfvxwwwwwwVVvwweegwxggwgvwwfgwwxwfwvwxwwwwwwvwwxwwxwxwwwwxxfvvfwvwvvgwwgvwwwvfwwxwvgwvxwxvxegvvxxwgfewxfwxgvgVgvVfdvfEvwVgfdfefWVfwewwwgwuVfVFgwVfvVgUfedvvvgvgWVgegWgfFVvVwwxwwwgxwxvvfvwwhwxwxwxwfwgfwgwwvxwwfxfxwfwxgvvvwgwhvwvwgggvggfUvwfxxwggfvgggfVVgxwfgfwwfwwwwhwhwhxwfwwgggwvgfwwfvvfvwvwxwvwwvfuwwwxvfwgWfwwwfWewwgfvwwwgVfwgfVFTvWvWUufffUuvgfwwwgfuwwwgfwffVUffeVUwfwwxwfffefEtggvfuwwwwgvwwwfvwfwVuwwwwwxwwwwwwvwwwwfwwwwwwwwfvwwwwwvvVvxgwvwwwwwfgVUfffVDvUvwvwVugVfVewfvwvwwwwfwwwwwwwwwwwwwxfwxwwwgfwwwwfwvfVUwvwgfwwxgfwwgwfggfwxvwvffwfgfwwfwfvgvwhwvvfffffVgffeeffefVfgUfwfwffgvgxvvVefffUfvffVVwwwhvVeefVgwwvwwxwwwwwwfvfvwvwgwxwwwwwgwxvxwxxxwwxwxxwxfwxfVewwxxvVeffwfgwffVexwwwgvfwfwwwwxxfwwwxwxwxwwwxxgfvwwwvgffvgvwwwwwwwwwwwxwwwwwxwwvwggwxwgwwevgvwWwhwwvfvgVewvegfUwgfVeffewffwgvxgvgffeufFvwuveVVFwVwgffeugwevugfuVfwxwgwwuwxwhwwwwwvxvwxxwwxwwwvwwwgxwwwwwxxwwvwwgwvfwwvxwwwvwvfFvwvwfVfFwWvwwwwxwvwwwvgwwwwwwwwwwgxxwwwwwwwwwxwwvwvgwfwvwwggggwwwwwwwwwwwxwwwxvwvvfvwwwwggfgwwwgfxwwgwfuwvVffVwgWeUwvfwwVgfgwwgffwwwwxuffUVuwgvwgfUwwgwfUgfgwwwwwwwgwwwwwwfwwwwwwwwxwwxxxvwwwgwwxwvwxwwwxwfwwfwwwwvxwwxfwvfWfwwvwvffwwxwwfgwgwxxwvwggwwwwwwwxxxwxwxfVwwwwwwVvvwvwwwxwwwwvvxwwfvfgfgggggwffvevgwgfwwgufgWWvwUfUwwgfvvvVgvvUfvfgwgvwgTEfvwfUfggdEVVevffgfvvgwvwwwwggwwvgwuwwwwwwwwwwwxwwwxwwgwwwwwxwwwwwwwwxXgwwvwwwwwgwweUvwwvvwgwuVfVvwwwgwwwwwwwxxfwwwwwwxwwwwgvwwwwwxxwwxgwvffvwfwvwxxxwgwgvxxxwwwwxxwwwxxwwwgwwwwxwxxgvwgfwffvwwgffwwwwggwfwwwwxwxwwwwfffvffffwwxwgwwgwgxwwfxxwxxwwwwwxwxwxxwwxwxxxwwwwwwxwxwwxxwxxwgwwwwxwwxwxxwwgfvwwvwwwxxwwwwwwwxwwxwwwwwwwxwxwxxwxwwxxxwxwwwvfvwwwwwhwxwxxgfwWvwwwwefvvwwvWwfwvvGfegFVfdfgfUUvgwwwfdUfvgvuWgvwGVUFUdUeWVvvfvwwwwwfvvvvwwwxwwwwgvgvwwwwwwxwwwwwwwwwwgwwgwvvvhxxwxxwxhVwfwwwwwwwfgfVfvfewgfwwwwvfvvfwxhggWvefwgwwwwwwwxxgfvwwwwwvegwggfgwwwxxhwxxgwhvgfUwwxwggVvgVuffwwgwgUwfUffVefVufUfUfVVeWEdgUwggfwfgeD3fVeVeffefUwfvVWwgwfgwwgwfxwwgfvwwwwwfgwwxxwxxwwxxwfwwwwwvwwwwfxxwxwwxwxvvgvwfwfgfxwwvfUgfVEtfvvfUwwxwgwfwwgwggwwfffxgvgvvgxwgfxwwxxwwfugvvgvwvwgvwwvgvgwwwwvvwwwwxffWvwwwwgfwwwwgwffvefvvVfggegfdwgWEdeUtggewgvwfgffffuwfwwvWefVfwfwffuefWgvveeTEUtwgvxgxwuwwvwgvuxwxwwxwxwwvhwwxvuwwwwwwvgvxxfxxvgwgvwvwwgfwgfwggfgvufvwvfffefuwwwvvxwgwxwxwvwwxgvwvwxwxxgvwfwggwgfwgwwwfggvfVggfvgvfgvgffwwwWgUvwggVeVewfwfeVegfUffffVefeeVggwfwgfWUUUefggvgveefUfwvvVegvfwv4CeVfeVggwwwgfxxffVegvwwwxwwxwwwxwxgwgwfwwgvgvwxwwwwfwwxwwwwwghfwgvfwwgwwgvfUfUfvwETgvffvVewWfggwgwwxgwfwwwwhwwfvxvfvwgwwxwwxwvvfwhwxfvvvwwwwxfwwfgwvwwfvwwwwwwvvfwgwfwwgvvfvvggvwwvgffffgwgfffvwgfvwvwfgvfwwvggfvvfwvfwwffwgvvwgUvvfgUvwwgffvwvwwfwwwwwgvwfwfwwwwwvvvfxwwvwwfwgvwwxvgxwwvxgwwvgfwgghwwvwfvwvwvwvxgfxwwggfwwvvfwwvvfvgwvwgwgvwxvvfxwwvwfwxvwwfxvgwgvwwvgvhxwwvxVewgwwgvwwwgwwwgxvwvfwwwvvVfvfvwugfgwvvffffgffffVgfVefVWfvWvwffvugfgwgffdvfgFvvvfffgfgfgfUgwffVVwfwwwwwhgwgwwegvwggxxwwxwxxxxxhgwwvwwhhhwwhxxxhgwgwwgwegfxxggwugwWgfdgvwggfdwwhgwgvxvwgwwwwwwwhwxwgxxxwgwfwgvwwfvvwvwvvhwvwvxvxwffuVgfvghfwgfgvfggfwvwgeuggWgvVfeufgUvwvffgwUfvvggfvfugWgveevwweVfUvvvWVuvvgvffwvwhffwgwwfwgfgvvgwgwhggfvgfwwgfxvgggwxwwfwvwwwxgfwffggvvvgwvwugfwgfVwgwvgggvwwfVvwvvwvvxgffgwvwwwhwvvwfgwgfwvwwXvvvfwxwffxxxwwwfeggwgwwwwggWwwwwggwfwwwfvvgvffvwwvfgwwfvfUvvwwfVuwwgfgwgfwgffVuwgwfwwggffwwggvvwfgvfffffwfwfgvfwvvwwvwvgwvgvwfvwgwwvvgwwwwfwhgwfwwfwvwwwfvwgwgwwxxxxwxfgfvwwxgwgwwggwwxhwwxfgfffgwfwfxxfwvgwwfwggvgwwvwgwwwwwwfgxvwxwwgffvvgvgwwvwwgxgvwwvwwvgwwxxxwvfVvvwhgfdhgfwgwfvwvfgdEfggfffdvffEfftvFFdgwwvegUevuefFvwwDBfFgwggffvueFvvgfvegvwwwwvwwvwWwfvvvxxwwxxxwgwwuwvhhwxxxxwwwwwwwgWfxwwuUgfvvvwfvwwfdwgwwWwfvvwV5uwuwfvvwvvwWWufvgggwwwwwwwwxwwuwfgggfewWwgvgvwwwwwwxxwxwwwwxwwvfffvwVvWvwgVgewfwwgevfUVdEegVefUfUffFfvWewgvffwfgwfUfUeVeVdfVtfUvggwgffgwVvwgwvxggwWvwxwwfwVwwVwwwwwxxwwffvwvwwvwwxxwfwwgwwwggfvhwwfwfwhwwfuVfVuwwfwfwwxxgfUwwVvwgxwwfffvwvwwgwwwwgxwfVuwwwfVevwegwvgwwwwxgwwvwwwfgvggwwgwvgvgwvwgwwwwvgVvgVUeeEVUdEfVuvvVfffvfwvfvwwwwWdEVfeVUggVeVUffefVVfvgvvvwwgwgwwwwgwwvfwwvwwvwxwwgwxwxxwwwxwwwxwxwwxxwfvvwwwgvwwwgfVfwvefVwweVfwvvffVuvfvvgvwwwxwwvwwxwwxwwwxwwXgegvggvffxwwgwvvfgwgxwxwwxwgwwxwxwfwxwfwvfwxgvvwfeVVggfwgfwwwwwwwuwVgvffwgfvffeDUEwvvfhggvvwvgveVVfffgfDUEefxwvxwxwwgwwwhwwxxxwgwgxxwxxghvvxvwwgwwwgxvggvgwgwwxvefggxxgwvvxxwwgwwxxfggfxwvwwhgfvvwvwwgwvfggVffvfxxxwgvvvhxguvVwvwxwwvghfvvfxVgfvwggfxwgwwwvwfgfvwgVfuvgfvgvggvwffgfvfvvvggwfgeegVDEtxwwfvwwfeVgeuwgffffVDEdffVevwwgxwwwxwwwxwwwwxxvwxwwwwwggwwwwxwxwwwwwwvwfgvwwwgvgwxfvwgfgwwwxwfvwvxxwxwwwwfgvwgvwwwwwwwwwfvwwvxvggwVVVufgvfwwwwxwwwvgfwvgvfwwxwgffwwwwffffffvvwwvvwvwwwwwwggvfvwvfffvwfvgwgwgVwfgwwVgWggvWgfveUfvfVfvvfwvwggfvveeweVfffvfffgwuVvwxwwgwvwwwxwwgwwwwvwxwxgwxwwwwxxwwgwvwwwwwwfvvwwggwgwvwuhvuwfwgvfvfgfwvvgwwgvwwwwgvggfvvgwvwwwwwWwgfwwggWwWffwffwgveVewwwvwggghwvvwgwvwwwgwfWfefvxwgvvgwfwwwxggvwwgwwwewgfwgwvWeftwggvwvwfvwgvfwgvvwvewffwWwgGSEsgVvwwvfgfgxWwgFSEswwvwVffdfxgvxhvxwvwvxwwxgxwwwxgwwwgvgwggwwvwwhugvwgwwwvvxhwwgugwwwxxxhwwgughwwwvwvwxwxwvvVvfxwwwgffvhgugufwfgwwvwVvfxxwxgwgwwwVgVwvgvfVwVvvvvgfvwvvwwvffffggvvfwwgvhWfefgwfeUgfvewUfgeVgvgfffffvgfgVVefgVwVefvffvwffwfvvfgggwwwwwxwxgxwgguwwxxWxxwhwwwvxwgwvfwWvwwfwvfxfwwwgvwwwxgxwWgfgeVfvgggwwwvfwwxwwgfuwggwffVfVggxwwuvfVguwwfwwffwvwfwfvgfggxggfVfxgfwgwgevwxxwgwgfvwgwwfhvwwwwwwgvffgwwwwfeevwGEuvfwvvgfwwgffwwgfwwwwgwweCCvgWVvfwvgffwfvwwwUVUVffvvgwwwgvvvwwhgwwwwvxggwwgxvvvwvgfvwgvwvwgwwvfwgvwvfgvvwgfwgwwxwxwweewxhfvwwgfwxwwWVfgvvxxxwwxWVvwxwvgwxVUefVffuvvwwfwvvvwweefgwwgwwxeevfgefWwwwwxwwwwxwwvuwwvfgVVfhgwfdwwGVfffvuwfVwwggfegvfggVVUfgfWVeefFfUvvfVEUffTeuvevwVggfuVVVVgWfewgwvwwgxhhwvfwwwwgwwgvwvvggwxwwwgvwwfwwvgggwvfwgfvhvwVevwgwVewwWwuwwufUeggVvuwvxgwwvvfVVwgxgwwfugfVevefvVewVgefvggfVgewvhfvggfvffffvffvvgwxwvvwwwgvvfgvfwwvwwwwwgfgeevwVVvgfgwfffffgfvvvvfgfgwvvgfvvvwwFEeggfwfWVfvffvgwwWVvxwfwGEevvgfwfwwxgvxvvwfggwwgwwwwxwwwhxxwvhwxxxwwwwwwxxveewwwggfwwfwggwwweehxggvxwgwfgwvwxxhgwfffwvgwxwwwhwwgvwwwwvwgwvvggwwvvgwwfwwwvwwxxwxgwwwhwwvvfwwwwfVuwgwvgwfWeVgwvfwwfvgfwvwggfvgVugfvffwwVfWwfUwwgWefvvffwwgeVvwwwwgvWffwwwwwxxwwwgwwvxwgxwwwwwxwwvwwwwwUfwwwwwwwwwxvwwxwvvwwggffwfgfgxwwxwxwwgwffwwgfgwwwwgwwxvvfvgvfvwVfvvwffffwxvggwvwvggwgfevvwwwwwfwvgxwgvwwwwgwgxwwwgwwwgwxxgwwwfgfxgwfgfeuwwVuwwfwwuxwwgvvfuvfUwgvwgvfVTDtwfvgugeEEDxwgwvfvwfgeuweeVuwgwwwwwwwwwwwwxwxwvwwwwxwwggxxxvfxwwwwwwwxwfxxvxgwwvfxgwwggfwwwvxwvfwwvwwwwwfgvfVfwwwvfvwwvfvvgwwwvwwgWfwwggggwfvWwggfwwvgwggwgwwwwvvvggvgVDuxfwVewwggwvufvfgUVwvgfegvwgvfgUfwwW4CgfwfvwVeeUvfgvuwVehwwfwUUfVVwgwwwwwgvwwfwhwxgvvxvxhxfwxfwgvgfwggfvffvfvffgwwxwgfgwfgxxvggUvwfwVewwwxwvhfUvwwfvVewwwwgvvggxwxwgvfevgvwfwVexwwxwVUvVVwxwwwffvwwwwgUfgeuwvwgwwwgvwxxgwfvgwxwwwvwwwggggfvgVewwgUvvfvvvfgwgvgWuwwwfvvfgfvfgfvgWDevvvvewwwETfgggUvfvvfgUvvfwvegwwhgwwxxgvhgwfwwwwwwwwwwwwwhwwwxwwwxwwwgvwwwxwxwwxwwwwwVewwgfgwwvgUvxgvwxwwfwwwgfgwvwwwvfwwwVfwhwvfvfwwwwfwwwwwwxggfgvwhwgwwxwggwhgvwhwwxwxwgwxxxwwvvwwgvuWFVgfvfdwggWgvfewvggwWggfvvgggfU5uwgWfuvffgVfUSfgWFvuvvfuwvfgVfdWwgVgggwgvvgWgwxvugvxxxwwwwxwhwwwxxxwwvggwwwvfwwxxxxwhwxxwvvVwxwgfdwwwggwwuwggVwfdxxxwvuhxwwggwvgvvVvgvvvwvxxwwfgggxxwwvWvwwwvfgvvvvwvxwgvwvwwxwwvxwxxgvwgggfgffwvevfvgvggvwgfvgwgwvfwvvgggwwgUeefffeffVuvwWUVVfffffwwffefuwffVuwvgvvfwwwxxwwwwxwxvvwwwwgwgwfwwvvvwwxwWwwwwwgxhfwffwvfgwwwgvwwwvvwhgwgwwwgwwwwhfgfwvwewwhffwwwwwVwwwwvxgfvwfwgwvegwxwwwxgvxxgwxgxwwhxxvwwwfwwffvVuvVvxwgUwwWfwfffgffgfvvgwwfvfvfVufVufffVwwVffUfgfVufvvffgUgfVvggwgfvVwvgwwwggwfwvgxvwgvvwwwxwgwgwgVwxvWuvwvwwgvxwgggwxwgxvwfvgfvffxwwwwwfvxxwhwvwvffwvgffxwwwwwxffUvwvVvfwvffvfwggxgxwwxwgwxwgvVufvvxvvwvfwvgwxvgvvvfwwxxxxgwwwwxwwwwgfwvwfvfvwfgffvXgegvvwggffvvvegfwwffgvVvvvfwffgegfgfffgwwvwfffvvvwuvhfxwwwwvvwwwwwvwwwxxwwwwxhwvvwfhwgxxwxxwfwwwxgffgfwwxfwwvwwffwvvffggwxwwwwwxwffffgewWgwwwwwwfwwwwwwwwwwwwghfffgggggfwwxxwxwwwgwwwxwwvfwfggVexgvUDwwwwgevveffVuwgvffwwgwgeG4chfvfUwfgwfuUDfVefeffuwfwwgwfffwffwwfwfwfxwgxxwfwwwgwgvhgvwwwfwvgwvffVuwwwwvvfwxwfwvgwxfgVuxxwfUwwxwwwwvgVefvgvwfwxxwwwwgxwxwueUgVeVeWvvgxwxwwwwxwgxwwwfVuxwgvfVeVfuwgvgxwwxwwgwwwfgwggfvwgUVevwvgfvWfgvVUggVfffvfffVvgvvvFdTTuvfgfugffvFUEVVTeeVffgVuwgvvvgwvgfvvwwwgxwwvwfvwwgwfwgvvwwwwvwwfwwgwwvwefggwwwwxwfwwwgvwWwvgfwwwxgwgggfgfwwVfVxwwwwgwwvfvwGgwfUVgvefWwguwwwwwgwwvgwwgVewwefWffwggfwgwwwgwwVxxwwwwggwwxwwvvgwvvfwwwvffwgfffvggegwgwwwwgfWvgffvvUvwgfVefefVfffwvfgUgwfwffggvffVevgffVgffwwxfxxwwwwwxhgxgxwxwvxwggwvwgxgxwvwwwxxwgwwgffwwggwvUfgwfgvguwWgxxghUgfwwwwwwxwgvwggwWwgwxvvewVwvfwgvgvggfgugVffgfvggwwwvwgVwwvgwufwwfwfvvwvwggffvwfwfwwgwgvfgwwwgffgffffwvvgfUwffwwgwvffUgvfgffuffgfUfUfwffgvgwwVvwhwfffffvffUfwvgvevxwhgxxwwwgxgwgxvgxwwgwfvwfwwwwwwxwvgfvgvwwgfvwwwfwgWuwhwfegUvwfvxwVuwhwwwxwxwgVvvwfevwvvggvVuwgvffgfvwfgUvwffwfvwvwwwwwvgvwgvwWwwffwwwgffxgWwwwghffgfgffVwwwvfUfgwfUVfUgwffgwfwfvvggfvgfvfefVTeffVVVVTvffwwvVvfgffvUTUVUffggfVUEffwggfwwwwfxwwvwggwvvvxwwfWxvwggxwfwgfwvvgfwwwwwwfwwWwgvxwwwwfdvhwVVfgdwwwxwfwwwwfedufVwvwxwffFvggFfwxgfffEvWfgvgguVVfVefwfwgwgVfwevwvxwwgvewfVewefwvuwgfvuwgwwwwWwgVVgwwgUSwwgFvwwgwvfwhxwggfwhfwgGvfgfdvgG$dvvgdffxVUxxwvffFevvvfvwwgfuvxwwvWwwwgwuxwxgwwwwhwUwwwwWwwwwwvWwVxxwwWwfvwwugwwwwwwwwwggfvggFvvvvwwwwwxvggFvvvwfxfuxwvfuxwfDgggwgwfvwwfFwffvtgwxwfThggwgVWwfeghgffGwgwggxvfwwgwwggwewwwgfVewefUwvggwwfwwgwvwwwfffwwwffgfVEdwfffgfVgfUvggVuvggUDgfgffgfgvWgffwvwgwuwWwwgvwwfwxhwuggxwwwvwwwgwuwwwwwwgwvvwgwwwwxxxwwwwvwgfvVvwffUgwWwwexxgvvwewfwfwwgfUxxwwwvwwWgfwggwgvgfwfwwfwfxwgxvgvugwfvwwfwwwwwwvxwgwwwwgwwwwvwwwfvvwVevgfgwfVfeufWffwvweffewwwUgffgVgfwgWfvVEETffVfevfgeUfwwvffwfdUeUeufVVvvfwvwfwvgggvwugwvugwggVwuvwfwgvwwwgvgfgwwuxwxvgwgvvffgwwwwwvxgwwvVffvwVfvvgvVwgwvWwWufgfwgvVffwgwwwfxfuVfggvWWwgeffVefeegvwwwwwwxgwfgewggvgwxvgwWwVefVVgggwggvgvgwwvwwwwgfvwgwwwgfgffwwgewwfvwgwgvfufggvffvwfvvwgfgfffffwfffvgfvwvwwggffewggffVffwxwwwwwwwwwgwwxwwwwxwxxwgwgwwwvwwwxwwwwwxgvfwwgvwffggwwwgVwgfwfwgwwfvwxwwwgvvwgvvvWwgwfwVwffgfuwgvxwwggwvvwfgwwgwgvwvfWwwwgffuwvxwwvwxggvuwxwgWwwgfwwgdVvvvvgfvwgvufGfVvVfvuvvdfVfwwwwSUfvvgU5uVgueFff6UeUewwwfEvwgvvVFuveguvvxgxwfwvwwfwfxwgwwwwfwwwxxwwgvwfwwwwvggwwxwwwvvxwxvffewxwffvwwfwgggvfuwwwwgvxwfgfffwwvwwvxggwVfEgfwfvwgvwvgwggevwvhvvVwwwvgeewwvvwgwwgwWwxwwVfGgfxwgxwVfwfvvgweffgvfuwggfWgfvevwffgwwWfwhwuuVvdVfgfUDggfGfdxgUuvfWwvVewhgfUwwwfgfwwggwvwxxwwwvvwvvvwfwwvvvwfxxxgwgwwgwvvvwwwwwgvxxxwvgwwwfgfwwfxwgffwgwxwgwvgvwxwfvfwgwggwwWgewggwwwgggeVwwgvfgxwfeVxwvggUvwvvfwhVfuwgffwvwwxgwwvwfffwxwvvgvggfWVvgVTDtwwfvvgggfggfwffgvwwgwwgfvgffeuxwwfgwwfVVgfvwgffVVVTDdffVevwwwvwvgwwfgfwgvfwwvwxwxxwwwwwwwwwwvgvwfxvffwWeeuvggwwwxwwwwwwwxxwwwvgvwwwwvwfwvfvwwwgwwvwwwwxwxvfvwwgwwwwwwwgvwggfwwfwvwwwwwwfffwwxfggffffwwvvwfgwvwwggvwgvVVUfffefwwgggwwvwwwfvfWvvUwwwwwwvfggffffwwgfwwffgfvffwxvvvVVffgeefWevwwxeVwgvvvgvgfvfwgwwxxwvwwxwwwwwwgvVwguvwvgfwwwwufUefvfvgwwwfwwwwwwwwvwwwvwvfwgwfgvxvwwwwvvwvvgwwwgvxwwwwwwwwwwwwwvvfgvgwwwwvwwwvfwhfgwvwfwfgggxgxvWVfvfwwwgvhgvwgfgfgvfVxfvgFUEtwgvwfgwwWwwwwwWvfwvgwfwvvwVVfewvvvhgxvvvhffwFUEtwffgVVfeexwvwhwgVxwxgggvwxwhwwgvwfwxwgvvfxwvwffVgggvwwvfwxvwxwwwxwxwxxxwvvxwxgggvxwgwfwxwvvfxwggwvxvhwwgwwfxhwwvvexxwvvfWvwxvvfwvwWfvhvhffwgffgffevVffVVfffTUFeUffvfvfwggfgvvffvgwwggfVuvweVVfUwvVvggfvvffffUEVUEfggvfUeUffgwvfwwwVVvwdfFvfvggwxxvfuwwwvggffwGffTfveevgfwfufVefWvvwvwwxwwvwvgwvgxvgwxwwwxwwgVFffFwfwwefWgvxwfxxxgfgwvwfwwgvwvfwwWwwwwwggfugvuxwwgVwvfgVegfegwufgVwvwwwgvggughwgguVvfVWfugfVfvwxwvvwgwugggvwwfffgvgwwvgfvggfffVvevgfwfvwWfeggWfffffwffvffvwwfwuVvvWfwvfwWwvhxwwvwgwfgwuugggvvgwewffgfwvVfvfgvfwhwhwwwwgxvWvhxfwgwvwwWwwwwgwvwxgwxwhwgwvwwwwwwwvwwffwwgwfWwwvuggwvwwwvgwvgfffwvwgvwffwvwgvgveWgvvgffveVfeeVfvfvgwwgfgvgWvuvfvwfvvwvwwffvffffvvgvegvwgvwgxgeVfffufffvvwfvfxwggvWweWfuegwgvgvxxvfgvwgwgvwfeWgwfwwfwgeVfffvgfggvggvwwvxvwgvwhwxwwweWxgwgxwfVwwgefwxwwxwxxwwxwwwxvwwffwfgvwffwwwwwgwvwwWwwwwfwvwhfvWgwffvgwwwwxwwgWuxxwvvfUwvfwgfwVDEtxwvwwfxwfwwwwufguwwfvgxwfgfVfugguvWvfETDxgwxvVwuwgVvufgfVuxwvxwfxwxgvxvfgvwwwxxwxgwwgwwfwwfefxwwxwvgwxwfgvfgvgwwwxwwwxwhwggvfxwxwwvxwfgvgxvgxxwwwwwvgxwwwwwfgvwwwwwgwfwgwvfgufguwwvgxwxwwgvfwvgvwvufggvggVfUggfC4wwgfwwvgggVfegwVfVvwgvwfGUtxwweVvgwvvuvgWfUfeWgwUUwwvweVfeVwfwwwwwvggWfuwwweVvgwwhhwvhgvvgvgwvgwfVffwvfwweUwwweVfeWwwwwwgwvxwvggxgwvwwVfevfxvvgwwxweVvvgwwxwvfgffvvffvfvvwgwfwwxgVfuwwgwgffVvuwwwwvwgfwvxwwgvwwvwxwvfwvwwvfgfgfTEvwfgfggvvwwwgvggvfwwWwugxfgfggeVwwWfufgvFUtwwugvvfWfegvVgWfufgwfgwvxwvvwwwwfgwwWfewwvwwwwwvwwwwxxVfvwwvgwwfwfwvwwggvwxwwwwwwxxvgxvfwvwwgwveVwwgvvwwwxgwfxwwxwxwwgwwwxxwgvwwxwwxwwwxgvwvgwvvvfwwwwxvgwvwwwwwxxhwggfvgwwwfVuwwwffffvfUwwggwggwvwxwffgvfvgVuwgvgvwggVUwgUwwgVegfvgwwwwgVffwwwgVVffwwxwwwwgvffgfwffxvwxhxwwwwwwfwffgvvfexwwfgwvggxggfffwgxwwwwxxwwvxwwxwwwwvwwwwwvffwwwwffgwwwwwwwvfUwwwwxwwwxgwwwwwgwwwgvwfvvvwwggVvwxwvwwwwwvgvwwwwvgfvvuwwffeUVuVfVfevfeFuwwvewfWvvggfuwfggfvVVwwfftvvVFfgefUEgffUTgvuvggWufeVVegWffuvwwfwUfwwwWfuwvuWwwwgwgvwwvgvxgwWevfffWgfegvwgeWVfufgfeWvwvwwgxhxwfwggwvveUwWvVVwvvwhwwwfVfuwggwwxwwwfwwwgvxwgxfvwfwgvggwffwgvffffvffvffwgxwvvfwwvgwvfgfwwwffffwwwffvvfwvfEEwwvgfwgwwvfvfwvfgfggwvvvfeewgfVVwxvggvfgvffeuwgwEExwvgfVVvvvwgvgwwfggeuwvwgfwwwgfwwwxwxwwxvwgffvfwxgwfwxhwvwwwwwxwwwwvvxwggwfwwwVVxwwvwhxggxwgfwvwggxxgxxvwxgwwwxwwwxxvvvfgwgwwvwgwwgwwvwgxwwwxwwwgguwxwggffwvfwvggvffvxwvwvfwfWgwvwfggvwffwvfwwwwvffvfffvfffgfggfuwgffuwvgwvfgffvwxxwxwfvwwggggvfwuwwwxwxxwwfgvvWwfffWgggwvgvxwvvwwwwwwwxxwwxwwwvwwvvgvfgvgwvvxgwvwwfwwwwwwwwgwwwgwxwvfvwwxwwwwwgWwfffVwgwwwwvgwvxwvfWwwxwgwwxwwftfVvfww5WeVgweU5gvfuevuwwegvFguVffggwwwFVvvwwgffggvufcUVTeefvwwgVEwwvveeFguvvvfxwvwfgfewwwffwxgwwwwwwwwfxxuvffFufwfvwwgwwwgwfvfEhwvxffxwvxwvgwfxvfWfwvwvwwwffxwwwgwfvwgggfxwwwwwgvgvvwwwwwxwxggwvVxxvgeuwgwwvVvvwwwvxwggVtwxgvwggxgufgffugVWvVFUDggffufgvvwxWgfwfufwwgvvgxggwgVfWgwffvgwfTVuwfFgvveVUfefgvwvwwwgxvwwvwghwfwfwvfwggwvwwfvvvgxxguvvwvVwwwvffUffeegwwhwwwvxwgxxwwgwvvwxvwvffwwxfvfwvgwvwfwgvwxwwwvwvwwvxggwvwwwvvvxxwwwxgvfeVfVVwgxwvgwwffwggwwwwwgxufgVgwfgE4sxgffUffgwfvwgffVuwwwffwfwwfggVuxwgUDwfwwgvfeeVUEdffuffwwgwgwfgfggwfwfwfgfVuxwwfUxwxwwgwgvxgvwwgfwggwfUeVeUeguwwwxxwgvxwgxwwwwwxwwwfxxwwxwffgVuwvgvwwwwxwfwwgwwvwwgVufvwwvwfwwgfwggxxfVwwvwfVefeugvvgxwvwwwwwwxVWufffvwgDEEwwfeVvffgffgwwfVffvwfffefvggVeeVwwVffvwfgvVeeEeEUFffewwvwggggVuvgfggvwwhwwwfwuwefvwvwwfgwvvgwwwwggwFUegvufVwgvwvgwWwwvwwwwwvwfwvgvwvxwgggfvfwggwWvwxwfgffuxhwwwwwwwguwgwgvvfgwvvwwwxwxgffwwvwfeVwvgufVwwwvwvgxwwgwWwwwxfvffwwwVggfggugfwfwvfvwwwgguffvwgggvvfwggvggvvfxgvgvvffgegvfffffwwwugggvvfxwfxfvwwvgfvhwwxvfwvwgwwxwxxwxwwvvVgffgvWwvvgwwxwwwxwwwwwwwwvxxxxwxwvgfwwfgfggvwxxxwwxxwwwfwvwwgvfxwwwxwwwxwgfvwwggvwgggvhwgvwwgwwwwwwxwwwfvwwwvwgVwwgwwefFT5swxfwwgwvgwgfvvgvvwwVwvwwwfgVfVtwfvwwfVwffxwwgVfftwuwgFT5cfwwxwwwwwvvfvWwhwxwwwwxvwwwfgewvwwwfvwgvWeffvfxgxvwxgxvgwwwxwvwwwgwwwgvWuwxwwwgwgfwwvxgwwfvWuwgvwxgwwwfwwwwfgewwxwfwUwggggfvUgggfggVVfvwwgfuefgvvffffwffvfwgvfgeugfgeWufefffvwwggfgfgfVWvvfVfUfVvfggwwvvffvfgvfvwwuwhhwwggvVVefgwvfXwwxvwggwwvwvwwuUvfvwfwfgwgwfffwffwfwhvwwgxwgvWwwxvwxgwvwwwwgffwxvvfWffUwvvwwwwvgufvxfwwwhwwgfwgvvxvxvvvwhfegVewfwwwvghgwwvwhgfwwgwvvgvfvvfwwwfVVuwFCswfvwwgvgwgfgwwgfvwwwwwwfEEvwgeufgggvvwffwwwuwfeeggfUuwwggfvwwvvvxwxwffgeuwwwhggwwwffvwfwgvwwvwVVwvfggfvwfVUuxwWffegxxwxggwxwwwwfgwgeuwwwwhgvxwfvwwggvwgfvffwwfgwxwwgxwxwVVwwvwwvvvxVVwwufVwwvfgwwwwxwgwfggwVfvfffffwfUDgfVgwwwwwwvffvwfwwwwwwwwgfVewVfUwggffUwwfVuvggvfvfgffUDwgVgffwggwwWwvgvfVewfvVwwVuwwvwgwgwwxwxVgewxggvwvwfwfxggvfxwggwgxgwwuwgvxwwfgwwfwguwgefUwfgwwwfxwwwgwwewwwwwwwwgwwgwxwwwgxwwwvwwuVggvwwvwwwwwwwwgvwwvvwvwwwwwwxvfeVVfugfVgeFVeefFUdfggvvgwgwwVWfuffgfvwggwfUVffwffegwguffwweVfwfdeUVuwgVVufggfWvfwewxvgwgVVfvggfvxgWfwWwwvvgvgwwguVgvvvVwweuffVuwwgfvwwgVfwwfwWewgwwvwxxwvwfxvvWwwUeefvvwwfwfvwwgvfgvwevwwfwwvvvgvwwvwvwxwfgwggvvVwwVwfgwwvgxweVwgfwvfxxfeVgvwvwfwvguwfVtvffFDrwgfFvvvwxwwwxgffvxvfxwvuwwfftwwU5wwwFeUvgfwxgvffEvefvfwwwvvfxwgwwWwwwgfftwgvfwvfwWuwwwwWwwwwWgfDwxgWvggvfFvfvfFwgxfwwgwgwxwvwvwxwWwwwwwwxwxhvffFweVwgwvvwhwewWwxwwgvfxwgwWxwwwwWwwgVtWfuxggwgfugwfgftfvghxxgwgwfffwvgfgfUgfegffVuvwewwwwfffwwwvfgffvfffvUgvUwxgguwwefVegffUwffwfgWevfefvwgvffuwvxvwwgvfwwgfffvwwwgwfhwwwwwwwgffgewvfUwgfwhwfwwffwwwgwvwxhwgxgwgwvgwvxwfgwwfwxwwvwgfvwwwffwwWuxvvewwfhgwwwvwwgwwwxxvvUwgfwfwwfwffwgxvwxxgvfwwfgxwxwffVwwvgeVUSwfvfWwgfvVwwggvwwfwvfvfwWwvfweetwWfFffwvVfVFvvVUsgWvfFwgvvefWwwefvVhvwvgvfwexwwfFwwwvgwwwgxwwwwxwvwgfgewggvwfxxxwwgwvfxwxwwvvuhwfgWxwwfWwwvwxhwgWxwvgfFxvxwwwwwfvwvgwfxxxwwwwwwxwvfvwwxwvguggvgwwwgvwxxwwgwwwwgfvwffwfVeVVefUffffvwggwvwfwwgfggvwvwvwhgfwgfwgugvffwgWefVffVVvwvfVeVfggfVvgwwfwvvwwgfwffwwvvvwwxwvxgwwwwvwxxgvgewggfwgfwuwwwfvvwxwxwwwwwxxwxxxvvfwxwwwgwwvxwxwwwvxwhwxwvfwgvgwwwgvwwwxxwwggVwfwwwfgwvwvwxvgwgwgxxgxxvgUUwwwxffvwwwvvfvVUfwgfvggwwgfvfgeefffwwwwwggfwggwgwvwwhfvvwwgvffwgvggfVffvfwwwwvwwwwffffffgwwwwxwwwxwfvfwwgvwwwwwwvvgfwwwwwwxwwwwwwwwwggwwwwvxwgwwwwgwwgwfgwxwfffvghhxvvwwwwwhwwwgwwwwvgwwwxwxvvhggwwvwxwwwwwgwwgvwgwwfWWUuxwwwwgggffvfwVUVfWWefvffvfWfVevVVWvwwgwwwWvvwgffwxwfgwwfvvgvvwggWgfVUVfggwvvfxgwfgwffgfvwgfgvwxwwxxxxxxwwxwvvwwwwgfggwwgfwwwwwwwhwxwwvgggvwwvfwwxvvwhwvwwggwfggvwwwvfwwwwxxwwwwxwwxgvxxvvwwwwwwwwwwwwwvvvwxwvwgwwxgfvUUwwwwxvggvgUfwwvwwwvffvgfffffUefwvvgwgvwhfwffwwwwwfvwwgvgwwgUffgvvffgvwwvvggwxvwwggvggwwfwwwvwwxwwxhwwxxwgwgvwwhwwgwffvwwvwwxwwwxwwwfwwwwxvfwgwwwhxxfgwwvvvfwwwwwxgwwwwwxxxwwwwwxwwgvwwwxwwwwwwwxhfwwwwxxhwwwfvfFtwgwgwvegfvxgewgDVvvgVfwwfgfdwwwWeffvwwvffwhwwgevwgwwwwgvvwWfwgdevgvfvvUfggvxxgxwUwfVxgvwwVwvwwxxwwwwwwfwWewwxwwwwwwxwfwwwgwggxxxwgwgwwxfxwwxwvwwfgvxwwwwwwgwxxgwvvwxxwwwwwwwwwgfgfvwvuvxwxxgvwwgwgxwwvxwxwwwwxVseewvwwFgfVgwwTewwTfgftVvffw6WdFeUfwwwvWgvggvgdVvvewwtffeffwfwwfSUwwTfgffguvevwgwvwwVVgVgvfeUwwvwgwwwxwwwwwwwwvwwgWvhwwwugwvwwwVvgwfwhwwvfgfffwvgwfeffgfwwwwgfUwwfvvVwwwwwvwxgggvgvfggvfwgwvvfvgxwWfvgwxxwwwwwxwwxwgUgvhvhVwvwxvvdefvvgwggvwUTeugWevgfwtevggwwUeUgwVfvwwgwwwUTfvwWvvwxVgvuwwwefWfeffwwwwwwwwwwxvgwgwwwVeVvwggwgxwwwwvwxwwwwhfwvwvwwwxfgwggfvwwwwwhwwwwhxwwvvfwwgwwwfwvwxwwwfwffvgwfwwxwwwwhgwwwwwggwwgfvxwwwwwhvvvfwgwvwwxwwwvvwwfvwwwwxwXufeevgwgGEuwwweewvgvwgveffVVffffffvfVgfgWVvwwwfvwwfwwvffffggguwvwvwwggeeffggwwvwvfvgVVvhggTTvvggwhgfxwwwwxwvvWfggwvvwwwwxxwwwwwwwxwhgwxwxeewwwwwwwWVfwwvwwwvwxwgvvfwgwwwwwwwwhgwwwvwwwwwxwwwwwggwwwwwfggvvwwwwwwwwwwwwwwwwwwwxVGEefgvwwTUfvfwVVgvwewgVWwfVffeffdvVgVvgvefgwwwffgwvvwXfvFefeffwwfgwwvvwWvfvwwewwwgwwwfevwwwVffwgfgwvgwwwwxwxwwgTfwvfvvwwwwxwwuwwxwvvwwwwfvgwwwwggwgfvefvwgwwwvwwWvfwwgfgwxwwwwuwvwvwwwwwwxwwvwwxwfwwgwwvvvwwfwvwwgwwxwWwwwxVwUEwweWwVgvvvgwwgvwwweVvggfGUuwgeVwugwgfvxwwwwwwgwwvfWgwffvWwvvgwwgvwwwwuggwwxwwwugwfwwvgwwwwwwxwxwxxvwwhfuwgwwwwwwwwwwwxwwwxwwwwxxwvgxwwwvWwwvgwwwwwwxvxxwwxwhwgwxwxwwxxWfvwwgwgwgwgwwxwwwwwwxwwxxVwfUexwggfffwfwfvfgUVUwgffgVUwgfwfffffVuvVfwxwwwwwvfwwfwwfffVfefwxwfvwgfgvwfgfexwwgWexwwvvfvgfuwwwwwwwwgvwwwfvwwwwwwwwfvfgwvwwfwwwwwwuwfvggwffwUwwwwwwvwwwfwwwvwwwwwwxxwgvwwwwwxvxwguwwwwwwvwwwwfwvgwgxxwxxgxwwwxgfeWfwvwwWfffxvgUfwwvgwvuVvVfufwvWUVggvwvWgvwwwgUfxxxvfwUeuvgwgwfvwwwxwffvfvwxwwvwwwgvvwwwgffxwwwwwwxxxwxxwwvvwwwwwwwxwxwwwgwxxwgwwvwwxwwwwwwwvwwfffwgwgwgfwwxwgfwwfwwxwwvwwxwwwxwwwwwxxwfvwwwwwvwwgvxwxwwwvwxxwwwVfUeffvvgfVwVffuegevvfgvevVWfvVVfvfgffwfwgfgfwwvwguwwwgeffwwVgfwvuegvwwfgffwgwwvwgwwwwfgfwfwwwgfvwwgwwwwwwwxwwwhvfggwgwwwwwvWevwwwvxwvgxgwwwwwgwwwwwffvwwfwwwwwwwwvwwwwwxwwwwwwwwwxwgwwwwgvwxgwwwggwwwwwvgwwwgwxwwwwwxwgefeUeugwWfVfwfgfUfvgfvvuffevgVfVgfewfvwgfgffwgvwfxwgwwUffffgVwvvVvegwggwffwwwwgwwvvwwgfWvwwgvvwwwwggwwxwxxwxwwwVVwvvwwwwwxxwwwgxxwvwwgwwwwfwxxfvfggwgwvwfvfwwwwgwvwwwxxwwwgfwwwwxwwwxxwwwwxwfvwvwwgwwvwxwwwwxwUEegfgvvWTWeUgfdffewwwWVvwWVffTVfUfevfwwgfggvwwfvwwvwwGeUVeVfffwfdffevwwWfvwwgwgwwhgvwVFgfewwufwfwwwuwgwwwwwgfgWvuwfwwwvfwfvwwVwwwwwwgfvgfwwvwvwwxWdfVgvuWwwefvfvwwggvwxwwwwwhwwgwwwwxwwwwxwwxxvwxxxWgvvvwwwvfgxwwwwguwwwxwwxwggwwhEffUfwvfevvfUVuwgwgeefVgfftVeVfVuwwwfwwwvfvfVfuwfgfvvwVTEfwfwVVffgVvegffwgvvwwvgwwwwgefgeffdvwffwvgwxxwwwwxxfvVgwwxwwwwwggvgwfxxwwxwwgggwwwvggwgfwefVfwgvvgwwffgfxvgwwwwwxwwvvfwvwwgwwfwwwwwggwwfvgwfgvfgvxxwwxxwxxwgwwwvwwxwFgdUVwwwgEUdgwvvggwVfvUgffVFVTfwvvfVeuwvVfeewwewfvfgvwffUVffTTVffwgfwgvvvwuwgUfvuwwgwwfVfUvwweVvguwguwwwwwxwwwwvgWffvffggwwxwxwgwwwwwwwwwvwvggvwgwgvwvfffVfefVgwfvgwwwwffvwwxwvWvwfwffgwxfwfwwvfvgxgwvwwvfgvfgggffgwwwwxwxxxwwwwwwwhTegVvwwwVVeUgvwfVggwffdffgdUedwfefgwgwwfFWeewvfffwwwwwtUfffdvvVVwwfwwwwvvggvgvxwvwwwUfgvwxwvfwwxggwwwxxwwufwwwfwvwwwwwwwwxwwwxxxwffgvwwwwwxwgvwWVeuwuggvwwwwgwwgvvwvvgfgvwwwwwxwxwwxwxhwwfvwhwwguwwvggwwwwxwxgfwwvgwwgfgwvfwwwxwwwhvwwggggvvwvvvwwwhfvwwwwwwwwwwhwvgggvwwvvwxwwwxwwwxwwxhwgvwwvwwwwxxwwhgvgvwwwwwwxvwwwhvwwggwwxwwwwxxxwwwwwwwxwgwwwwwwxwwwwxxvfETwfwvgvfwwwgfvffwgwvgVewvfvgUfgfETfffxwgwwwwVewwwgwwwwvgvfvgfvVegvfgwffgfffgwwwwgxwwvfwwwggvgvwgfxwxxwvxxwwxfUvvwxvxwwwwxxwwwgwwgwxwwfwxwwwwxwwgvfwfwwvwwwwwwgvwffwgggvxxwfwxxxxxxwvwgwxxwwfvfhwhUwwggwwwxvwwwxwvwwfUTeffvfwfgwVfwefVUVfefVeegWgvUfgdUVUfwfgfgvfVweeWefwvwvvWgvVffgvefffgwvFTUfeffVgwggvgVWggffVvffeuwffvvwwxvfgwwwvwhwvggvfwwwvgwfvfwgfvwwgvggvweWwwgwvWvfvweWvvgwvfVwgwffufuwvgVuwwwwfwvuWWwgvxwwvwwwwUwVvwVwffwggwvxgvwxwvvwwxfewvgvwfxfvvwxfwgggffgggwwvvwVUuggUUwwvvwffvwwwffvwwfffwvvvwvgfvggffwwvwggwgffwgwffgfggvggwwwgfvgwwwwfvwwwWUeggUUwwvwwwwgwxwwvxgvgggwvwwfgggfgwgvwwwwvwgwxwwwgfvgxffxgvxwwxwvggwffwwfwgwvwwvhwxwwwvxwxwwvxgvggxwwwwwwxvwwwfwvxxgfwvwwwwwwwvxggvefeVffeffgffWfevfVUvvufeefgWwfWfvfggVuvwgfwwVVfvfVVvwwwufgvvffwwwefgVuwvfgvwwwffvwggfggWwggwvvggVvvwfgwvvgwvwwgwvvfwwvxhwvfwgvwvfgvwvwvxggvffgvvfwgwwguvfgvfxvwvfgVvwvwgvxwwvwvwwvfgwgxwgvvwgvwwvvwgwhgwvwxgvhhxgxwexgxwggwgwwwvWVfeVfefgffffefVggffgwvVfvWvvwWffevfffvvwvvwVfvfwWwwxvvfvfvwgvvwwWfWfgwvvfVgwvwvwxfvwgvfvvfffvgvfwwgfvxwwwwvwwxwvwwfgvwxxggveVgwvwfwwwwwxvvwvwwvwfwvwgvfwgwwvwxgfgwgwwvgwwwgxfwgwxvwxxwwfvgwwwwvxgwwwfgvwxxgwxxxxwvvhwxwwwxxfevggvvvWfwwfvvvwwwwwwgevwWggweffvvwgwwWfgwfwgvwwwwwhefgwxwwwugggvvwwwxxwwwwxevxgfwwUfvvfwwwwhgwvwwvwwwhuwgwwwwvwwwwwwwwxwwwhfwxfwgvwxxxXvwfwxwwxvgfvwvwwwwxxgvwwxxwwwwxwxwhwfwgwxwxxwgxwxwwxwxxxwuvVUvwwgfffgwwwfvgwwgvwffeVUuggffffUgvWvwgvwwwfgfwggWgVvwgfvggvwfvVgvVgfwwggvWwfwxwgwfgvwwwvfwggvfwwwxxxwwxwxwvwggvwwfwwgfxwwwwwwgwwxwwxgwwxwxhwwfwwwgvgwvxwwwxwgwfwwwvgwwxwxhwwxgxwwxxxwxwwggfvwwvgvfwgwwwwwwwwxwwxVVvfgwwwhefwvxxffvwwwwhWvwVVfWfgwuuvvwwwgfwgvwvgwxwXfvWgWfgwwvgwwwwxwhfvwwwwwxggwgewfvxwvfvwwwwwvxwwxxhwhwgwwwwwxwxxwwwxxwwewwvxvgvxwgvwWWffwwxvvxxwgvwgwwwwwgwgwxwxxxwxwxggwxwwvgwwwwwwxxwxwxxxwxwwxwwwhfVwvVfgvevwgufgxgwxxweVwvuvwgfwfwwgfwxwfuwgugWwwfgwUfgvwwvvwwWwvffwwvwvwwwwvfgwfvwgvwgwwwwwwvvwgwxgwxxffwwwwwwgwxvwxxwwwxxxxfvwgvwgxwwxxfwwvwwwxgxwgvxwwwwwwgwwwxwhwvwwxvwwxwwvwxxgwxxwwxwwwwwxxxxwvwwgvggfvfwwwggvwwffwwwgvxwwwwwwxwwwwfwwwxfvwwffwxwwwwwwwwwvffvvvggwwwwgggfwwxxxwwwxwwwwwwxwwwwxwwwwwwxwwwwwwwhgxxwxxxwwwxwwxwwwwxwwwwwwxwxwwwwwxwwfxwwwwwwwwwwwwwwwggwxwwwvvWgUVuvvfwffffwwwUevxewwWeeWwwwWguWffewUfufffvwvhUVwwuwvwgwgvgwgffwVgwuwwevvfwuwwwwufwgwwhxwWVuvwfwwgwwwhwwffgwwfwwwffgwxvwwfgfwwwvfwwvggwWxvgeWwwvwvvxffvxxgWvwugUfewwwwgxfvvwwwgwwwhgfvvfwvxvvhwvxwhwgffwxwxwwwggwxhwvwwwwwgfvvwwwwgfvgggvfgvvwgfvxwwwwwwwwwwwxwwxgfvwvfvfgvvwfwwvgvfwwwwwwwwwggvwwxwwwwxwwwwxwxwwxwwggwwggwxwwxxwwgfvwwwwwwwwwxwwwwxxwwwwxxwwxwxwwxxxxwwgfvwwwwwwwwwwwwwwwxwwwwwwwwwwwhgfvvvveefgwggffffvvgvgWgvvggwgeVwvfwvwwwfgffffgeefvgfwwffwwwwxwwwvfvvgvvuvVwwggwwVvevwggweVwvwevVwwfggvgfveewwgvgfvvwwfwwfwvwfwgvwuwVwggwwwvgWfwvgvfvvgvxvvwwWvgxwvfvvwwgwwwwwgwvfvwxvwfwwvvwwggfvvwwwggwvfgvxwfwwwwxwwwggwfwwwwwwwwwfvefgUVfvfvveefUVVevwwweewfvwwfgfgwfgfwgvwvwdTfdfFevwwgfvwwwvwfwwfffgfgwgfwwxwvvwwhvfwvgvgggvvwgwwwwwfvwvwgVggwvwwgwwgwvvggxfgwwwwwgwvvwgwwwhgxfvgvwgwvgxwfwvxwwwwvwgwwwwwwwwxgwfhfwgvwvwwwwfgfwffgWgvwxgfghvvgvwwvwgxwwwxxvfwwwfvwwwwwgVvffWvfgvgvgVUuwgeVvvffwvfvgvgffvgwfvvwwwwFUtwgeVvvwwfwwxgwggwgvgvfvegwwvxwvwwWxvgwxggfwxwwwwgvgwfffvgwvvfvvWxwwxwgwvwgwgwffwxwwwwxwxxgfwwwwwfwxxxvgvgfvfxxxwwwvgxwwwxwxvfwgvugwwwwwwwwwwwfwfVgxxwwwhwvgvggwvfxwxgwgggwffffffweegggfvfvwwfgvvghvvwwggwwwwgeefvfgfVVvfvvVVvwwffgggwxwgvwgfvwxwfgwwgwffwwwwhfvggggwvwwgvvxwwwwgfvwwggwvvwvgwwggwwwwggwvwwwwwxwvvghwvgfgwvvgwwwwwwwxgfwwxgxgwxwxwwvgwwwfvgwwwwgvwwgfwwwvgwwwwvxwwvvwwgwgwxxwwwxwwhvveVfvvfVWfvwgvgWwwwefveVwgvvgwvwgvgwwwWWfwhwvgVwwgefvvffwfggwwwvfwgefvWgvgwevxfvgggwvwxvwwxwwvvgwvxxvfwvwvwgWfuwfwxwwxwghvwgwxwwwwwwwgwwxgwwwwxxwvwxwwwwxWfuwvwwwwxwxwgxwvgwvxvwggfgwwvxwxwxxwxwwxfffggVgfVuUfuevVefwwwwgfgwfwvgffvwvfwgwwgvffeeVfffwwwwWVvgvgvwvwwfffwwvwggvgwwfwhvwwgwvvvvgvwxwwgwvvvfwgwvwgwhgfwvgvwgvwgfwwxwwwwvwwgxwgwwwvwgvwwghgvwvxwgvxwwwwwxwxxwxwggwwwwwwwwwgfvwwwgwwgxwxxwfgwwwwwwgvwwxxwwwwxwwwwhwgwVevfgfWguvxwwvegvgVfvvVewgfwwfwwvgvwwwWfevwwwvuwfgVgvggvfwffwwwguxwgVwgfwgfgVfxggvwwfwwxwhwwvfxgfxwwgwwxgUwxwgwxwxxwwxwgxxwggwfwxwxgwxgwwwxwwvwwwvxxwwxwwgwwwwwwfUvgwwfxxwwxgxxxgwfwwxgxfgwvwgwwxwxwwfgvfgWffvffffgweffUvwwgfvvvggvggwfggvfwwwUUfvgwUefuvwwgvvWgvVwvwwvfvvwwfhfvwvwwgwhwvwwgwwwwwfvwxvxgggwwwvfgvwvxwwwwwggwwwwvgvwxgvvwwwxwgggwxwfvwwwxwwggfwgvwwwxwwwwxxwxwvggvfgwgvwgwvhvvwwwwwwxwwvwwxhfvvwwwwwxwwwxwxwwwxwxwwgwggfwffvgeufeeffgfwffvwgggxfwvvwwggwwwfffvgfvggVVwfvgffwwgeuggvffwfggvxwwxwxwvwwfwfggwfwvffgwggwfvwvvgfwwwwwwwgfgwwwwvwgwfgfwgwvwwxwwxwwwwwwwwvvggfgwwvxwwxwwwwwwwgwxwwfgwvgwwwgxvvvvwgwggwwwwwggwwvxwwxwwvvwvwgwxwwwwwxwxwxwxuvwWWfdVVWfdVfUwggVvwwvvvgvvwfgwewwwwwVVfffeefwWVuwwfeffwwvewwwgggWvwwwwwwvwvgfvgwwvwwwwgwwwgVfvwwfvgwfwvgvwvwvxggwwwvvwgvghxwwfwvwwwwwwwwgwwwxxwwwwwwwwwwxwwgefwwwvgwwfwgwgvwwvxwwgvxwvvfwgfwwwxwxgxwvxxxwwxwxxXffvfeueVVfVefVeffwgfwgfffWvvwgevuwfwgwwweVfUfvfeVwgvvvUeVfgvgfgggffvfwwgwgwwwwwwwwwvwgwgwvwwgvggwwwfwwvgwvwVwxwwvwgfwvwwwwvgWwgxwwwwwwxwwgwfxwvvgxxwwvgwwwxhxgggxhwwxxxwwxwvwwfvvwwwwwvgwxwwgwwwwwwfvvwwwwvwvwwwwxwwxwvwwwxxxwxxUevggeefFeffUffvgvfwgwwfvwWfgwfvvwwwxxwWfwwdvwfvfwwwwWefVgwgwwwwvgggwgvgwwxxwxxwheuxgfwwfgwwwwxWgwwfgwwwwwxgeffwwwwwxwwwvwwwxxgWxxvvwvwwxXfvWwxwwxvgwxwwwwxhfwfwwwxxvfvwwxwxxWffvwwwgwwxxwwwwwxwxwxxxxgfwffvvwfffUuwwwffwfvwgvgffvffvggwwwggfwffVVuwgvffwwvwgwffwgffvgvvwwwvwgwwwwgvwgwwvwwwvgfxxwwwwwwwvvgxwwwwwwwwvwwvgwgvwfvwwwwxxwwxwwwffvxwwxwwwwwvvwwwvfvgxxvwfvwvwwfwvwxxwwxxwxwxwwwgxwwvvgvvgvgwvwxVfvwggwwgeffvwwgvwwwWfvwWVUfvwwffvwwxheffwwfvwwwwWvvVUfvvvwgwxwwwxfwwwwwwxhxxgevvvgxxxvwwwwwwhwwgfvwxwwwwwxxwwwwheggwvwXwwWUfwwxwwwxgwwwhwwhfgwwwwwwwwxxwwwxgwwxwwvwwwwxwwwwxxYfghvuuffdtwgvgfwwffwwwfggvvwwufwvgwwdtwgfffwwwfwwwVwwvwwwwwwWwwwfwwwwwwwwuuvvwWhwwwwVvgvxhvwfvfgfvwwwhwwxvvwgwwWwwWwwxwXwwwwvfffwvgvwwwwwxhfgfvwwgxvxwwwfwvfvgefwwwwgVewgWDewvggefvgfwhxwvfgVfvfwgfwgVevgWUevvvwvwxwfwvgwvwwfvwvwfgxgguvwufhwxwwhfvvwggvhxwvfgVfvvwwwwgvwwwwwgwvwfvwwgwuvwwhxwxwwvwhfvwwxwfwxxfwwfwhvfvwwgwwguwggwwxgwwwwgwwfvvxwgvwwwwvxfWfxgvxvggxwfwxvghgWggvvVVgffffvfVVfgwfvgfgggwvwuwfgffWwwwgvvgwvfffffwgfwwxwwgfvwwwWgggwvgfvwuggvwwvVVggguvvvgfwfgxvgvfvwwwVVffwgfwwwggvwfwggwwwvvggwwwgvfxgwwvveuvgwfWvwuwVwxwwvfXwwwgggxgfwwwwwgwxggwvgwvvwfvWwwxwwvwfvwewgvwgvwwwwxfvwwwfwxwvvwwxwwxwwfvwxveufgVeevwgwdEfdfVdvwwgufvvfwwggfvfggfvwfvggeUfeeeevwwwvvgwwfwvwvfvvfvgggfvwgwvwgvvfggxfgvvwwfwvgvgwvgvvuvgwwwgvvggwgwwwwvevfgvfwfvwgvfhwgvfgwwwgwvwwwvwwxgvwxwvwwvwwvxwwxwxwwgfwfgwgwwwvfwwgwwwvvwgwwwwggwgvwwgxwvvwwxgfwwwvgwwwwxwxwwwffVWwfvvWvvfvwwffwfWwwffwwwwgwwwwgxwwvvguffvwwvfwfWgwgxgwgvvwfwfwwgwfwfgwwgwghwfxvgwgwwwgvgvwWvwwwVxwghwvxwfwwwvwffxwgwwwxxwxwxwfwxwgwwgwxwwfhwgxwfwgvgxwwvwwvwwffxxwxwwxxwgwxwgwxwhxwwwwwwwwweevwFGWeVVvvcUfefvvffwgfugggwwVwwvwwwwxWVggevvcfVefwfgdvfwwfvwwdffffwggfvxgvwHGwwWFgvuwwegvwwwwuwwwwffvwwwwWwwgwwwwwxwgVuwwwwwvvvwvxwHVvguwwufvwwwxgtfgwwvgwwwtvvwwwggwxwwxhwwWwwwwwwggwwwxgVuwgvwwwWvwwwwxwgwwwwwfUwvfwwwxgggxxggxggwwwwxwvfwwwwgwwwggxggfgwfgxwwwwvgwwwvgwwwgwwxwxgwwffwwwwwxwwwwwggwwwvvwxwgxxxvvwgwwfwwwvxggwxwwgwwwgxwwwwxxxwwxxvgwvwwhxwxxxixffwxwxwwwgwvhwwxgwwwvxwwwxwwwhvxxxwwxwwwxweffVWWfUfVVefwveUffgvvgfvffgwwWwvvgfVwwwgefUfwvfffVewgfugVgfVefgwvgwfvwwgfvwwwwwvwwgwgwwgvvfwgwfwvwxwwWvfwwgwwgfvwwwwwwgwwwfwwwwxwwgvvxvwfwwwwwwwwwwgvxhxvxxhhgwwwwwxgwwggvwvwwgwwwgwgWwwwwgwvwwwxwfvwwwwwgwxwvxwxxxxwwwxwXgfwwVVfffuwgvvGfvgwwwweVwgfewwgwwggxwVdffewVwfffwgwUvwewgfvwwgwgggwxwgwxggwxVVxwuvxhwwgxgwxvuwwvxgwwvwwxfwvwwfwgwwwwvfwxxwfvwWvwgwvwxxewwuwhvwhwwxxwgxxwwVwwvwgfvxwvwxwwwwxwwwwwvhfvxwwwvxwxwwxwwwxwwuvvgVdffUVfffVUvvgeuwwvwvwuvwfgwwwxwguwhVWfFWfVvwfVuwwfufewwffwwwwwwfuwgvvvwxwhwwhfvwvhwwgwwvwwwwwWffgvvfwwvgxwufgwwfggwgwwgvvwvwxxwwwxwxgwwwwwvwwxwwwwwgwwwwwwxwwwxwwwwwvwvwgwfxvgwwfgxxvwxxwvwxwwgfwgwgwgvgxwgwwwxwxwgffwxwxvwwwggwwfUUwwffgvwwfeugfTEUUUwwwwwggvgvffxgwwwgvVgWvwwfffffffvffUUUDUxwwwwwwwwvvvfxxxxwwxwwwwwwwxwwwxwwwwwwvwwwgvwgxwwwwgwfwwwwvfvggvwvvfVvVufxxwwxwwfwwwwwwwwwwwxwwwgwfwwgfgfwwxwwwvggfffgfvfffwggwvwwwwhvgwvvgfffggwvveVvvgWUcwfFFvwwwwvwggwwwwfVvgfufhvvfgggwVFFffgVSwxwwwwwwwwxwwwggvwwxxxwxwwvxwwxwxwwxwvgwwgvwfwvxwfUgfVfwwvggwwvfVugxgfxxvvwwxxhxxvwwxwwwwWffwwwUfwwwvwgwwwvVfgvwuUVwwwfgvfgvwUgvgeefgvvgggvVWfefVeVefewwvvgvwffwwvfvvfggfvwgfgvUVvgeeffWeeUvufgfxwwwhvfwwwfgwwwwwxwwxwgvvwwxxwwwwwwwwxwvvwxgxwwxwwggwwwwwwfgwwwwgwgvVVwwwvwwgefVwvwgwwwwgwxwwwwwwwwwwwwvwwwxgwvwwwwwgwgwwxwwxwwggvwwwfggwwwwwwfvfguwwgwvVwffgwfwfffewfegvVgUDwwffdUVtwvfwvfwwvwgVgvWguwgvgfefwvegfEVewfggeVWVDuwwhvxfwwfxxvxvgwuxxwxxwxvwgwxwgxxwwgwwwvvgwgwxxvwvwxxwwugvggwvgvgggvffffuxwgwfgveVwwwxgwwxwwwwwxwxwWgwgwfxgvgwhwvghvwwvwxgvfgvvgfgwggvfegfeeVwwwggwVWeuUUfgvvffwfffWfeffeeVffuefWWfeWfueVwgwfwueVVffwfgwvC4vguefeVeeffwvvwwwwwwwhvgvgfgwvwwxwwxwhwxwwwgwvhwwhfgfgwwwwwvwgxwggfhwveVvfwwwveVWfewfghweVvgwvvTEgugffvvwwvgwwvhwxwwwvgwwvgwfwwwxwggfwvwxggwggwwxgwvgfggwwwwfwwwgwxgfffvggwfvvgfffvwvwwfgwvfwfgwvfffvwgfvgwwwvgvfwvwfvvgwwffvwxvggvwVfUfeffvwwwwwfgwgwwgwffwvgvfgwgxwgwwwwgvwwfxgxwgwfvwvwgwfwvwwfwgvggwhwwwwwvggwfwvwxwfgvwvwxgwfvvfgvwvwxvgwvwxwwwvgvgwvwvwwhgwhwwghxxvgvggwwvwxgwweVwvwgvwwvwvwxwwwhufwfvwwgggvwwwfewwgwgvwgVeFVtggfUUugVeVfWguxwwffwwgwgvffVVegVUfufewxgggvgFeFgvgvewwwvgwVvwxgvvvxwwwwwwxwxwwxwwwwwwgvwwwwwwwwxxwwwgvhwwwwwhwvxgvfwwVvWvffWVewfTfdwfwvfvguVUfVWvWwvwwxwvxwvwwwwwwwwwgvgxwwwwwvwwwvggfUfuvwfgvwwgvwwfwfgvgggggfvhxwfeVwvgfffwvvhwggfffffvffeeefVffuffgwvggvfwvgxgWfeffeVfvfVfuwwwgWVVffufxwvwxwxwvgwxWfewvxxwwxxxxwvgxwwxwwxxwxxwxxwwwwwxgvfgfwwfgwffgeVfvgfwvwxWfevgvwwwwwxwwgwwwwxwwxxxwwxwxwxffwwwwwfffwfwvwwwwwwwwxwwwwwwxwVvfFwwgVwfWfvwWwwvdeegggvVfdgfufFvWfuVfWvvhwvhvgwefveVgwUffFVvvVvgfdVggwufguVgewwwfggwwwvgwgwvgxwxxwxxxfggwvwfwwhwwwfwxwwwwvwwwvhvggwxwgeVwffwvfwfghfeVhwvfwvgxvwggvfvwgwxwwfwxfxfwgvvxvfgvvfwvgxwgwwWfwgxgwxhwwwgwwxwgxwwwgwwwwwgfffvwwgvwEEwwwgVugfVUuwfxwxxwwwgwvwgvfUvffUUwwwgvfvwwffvgwVTtxwwwwwxwwwwvxwxwwxwwwgxwxwxwwwxxxgwwwvwwwffwwfffwwwwwwwgfvwwgVxwxwwwwxxgwxxwxwwwwwgxxgffwwwfUwxxwwxwwxwwffwwwvugfwwwWvfvwwwgfwwwwwwvwggeVewwWUUvwvffgwwwxwwgwwwwvfwUUevffVwgwwwwfgefVwxwwwwwwWwwwwggfwwwwxxwwwwwxwwwwgwwwxwwwwwwxxwwwwwwxxxwgwwwwfwwxwwvwVevwwgfwwwxxxxwfggfewwwwwxwwwwwxxwwwwwwwwwwvwwwwhvfgfvxwwwwwwwwxxwwwwwggvfuwwwwggwfgwvvfvgWggwwUWgffgVfffVegeefgggwfwvvgvgggfufffVewwvfeufvgVfeuwwgfUuwxwwwgfxwwwwgvvxwwwwxwxwwwwwwwgwwwwwxwwwwwwgfvhwwwgvwfvfeuwwVVwvwvvgvwfvvvwwwwvwvwxwxgwxvwwwwwxwwxwxwwwgggfwgvfgwwvwgwwwgfwwwggxgwwwgxuffUvxwfvWuwgfffwfgwffvffTVVdgVefUfUffFVvgUwgvvVwfwwgUfTeVeVeeftffgvvwgfUgwVwwfwgvggfvxgvwfgwhwwxwxxwvwvgfhvwwwwwxxvwxgxwgwguwWvwfxwgwWufUggugvwwffUwwvwgwfgwWxgwvwvgfwwwwvwfwwxwxwwwgxwfVuggwvfVewgwwvwvwgwwwxwwwxvwxfVvgfwwwfVffvwwfgfvwwwgfwwVUVVDfUUfTVuggvvvggwwwwvwvgwWTVUfVeFgvVeeeevggfVevgffVvxwgwwvwfgwwwvgvwwwxwwhwxvxxxwwwgxwwwwwwwwwxxxwwwfwvgwvwwwwffefwgfVvwueVufwvgffufgvfgvwwxwwwxxxwwxxwwxxWffvggwvvVxwwgvvxgfxwgwwwwwfwxwwxFveFgxwxdGfdVVuugwwvuVggfVvfgfVfdvffFvdfvfftfgwgvfwvggD$vwgfdGfvfFffvfVwgwwvuVgfgxwvWgVgfuWwwwfwxwxwxxefgWwuwwggvwwwxwwwxwxxwwwwvggvwWwgxvfwfFwwggvgwwU5vfwffwWwuwwwfwvwwgwwuwghwwwwwwxwwwgfugvwfvwuWwwggvvwwwwwwxwwwwwwwxVweVuwwxwVUDxvfvgWVugvfvgVeffUgfUfVeVeVfuvfVwwwgffVuwgffVUfUD3ffVvgwgvwwfVugvfWvugvxggwfxvfwgfwwwwwwxwxvgfwfffgwfxxhgxxwwwwffxwfwwwwwwgwWEdfffUwffwgvwwgwfVuwwwwvwwxwwwwwfwwfxxwgvwxwwwwxwwwvwfwwgvegwggwfwfwfwwwvgxwwxwwwvwvfwwgggvwxwwwxwwwwwvgffwwwffwwwwgwwgvxxwwwxgvvfgfvgfffwwxxwwwwwwfxwgxfxwgwwwxwwwxwxwwxxxwxwwwwwxwwwwwxwwxxwwxxwwxxwwwxwwwgfvwwwgwwxwxwwwwwxwxwwxwwxwwxwwxwwxwhgvxwwwwwwwwxgvxxxxxwGevfvwwwgdUfufwvwewhwggvgUFfFewgVeegvwwfufgvvgvwuwwggGVeEUFUVgeufgvwwwwggvggvwwwwwwwWfwfwwwwwwwvwwwwwwwwxwWgvggVggwwvwxwxxwwwxxxxxwfvgwwwwwwWgfefgffgvgggvwxxwwwfgwhwvfwgwwvwwwxxhgVwwwfffgwwfwwwxwwwxgwgwxvfVVxxwwhvfvwwwfffvfUfvvffwfeegvfVVfffffxwwwgffvwfwfgwxwfffffgffffgfffffUfUffUVvfhxwxwgwxwwwfwwwgwwxxxwxwvvwwwwwwwwwwwwfwwwwwwvgwwxvwfwvgxxwwwwfvwfwwfwwwggfUwgffVVwgxwgwwxwwwwwwxwgxwfwwwwwwwwgfvwfvgvwvwvwvwwwwgwfvwvwwwgeeuxwwwfvvwwwUUeUegvvwgeuggfgVVfffeeWevvgwgfggeeffgggwvggwVVwwvfeeffgvFCcVefgfvwwxwgffwxwfgwvwxwxxxwxwxgffwwwxwwwvwxwwwwwwwgfwwxvvgvvwgwvfwwEEwfwfffvvwwgeuwffgfwwwwwggwwfwwwwxxwwxgwwwwxgggvwxwggwfvfwvxgvwwwwwwwgfvvwwxffgfwwxwfvvvvffgggfwgvvwffgfvfVeuvfeUfffvfvvgfvwgffgwvfgfwwgvfgggwfffVVUgfwvwVeUffwwwwwvwvwgfwgffwwfxxwwwgwwgwvfvxgwwgwwwwgvxfvwgxgwvvwwwxgwggffggwwfvvfgfvfffVeUwgggfVVUwgxhvhgwwwwwwgxhwvwwgwvwvvwvwgwvvxwwwgvwwwgfffvwvwgwwwfggfVuwwgvfwfgwfvggVuwwvvvgfgwwgvfwwgVuwgfgwfggfwwgfvwgwvfvwwffwwfvgffvvffwvvfffvwfwwwvffgwvvhwwwwwfgwgwxwgvxxvvwffwvwgwgvwwvwgwvwwwxgwwgggwwgvgvwgwwvwwwxgvgffvwvfgvxvvgvwwvvwwvwfxwvwwwvxwwgxxwwgwwfffwwgwfxwggwfhwfxwwwwgxwwwgxwgxfvffwwxwfvgeggvgWvfwwfvwgfgffVVfevfffveVvfgufgfwWvfgwvffFfwfftggffUvffeVffgwfwffwfxwwwwxfggvwVwxgxxwwxxxxwwwwwvxwxwxwwwwxwxwgwhxwwvgwfwVwgwvggwWwxvwxhgfFvgwwffFwgwvgxghwvhxwwwwwhwgvfvwwfgxhwwgxhhwhgvwgvgwwwwggwvfeuwffvffvwVffuwfvvxxfefwUgvgUeVfwffugwffwvffgvvfwvwgWeeevgwgvwweUUfefgffuggwggvxwgffwffwffggggwgwhwggwfhfvwgwgfgwwfffwvwwgwwxfwxhfwvwgfwgvgvxxfeVvwvwfwvwffufvgwvwvgwvwwwgfgfwwwffgvvvwwwwwxvwwWffgfwwwggwwwfVwvVwwvwwwvvxwwwwvgfUwwwwffwgvwfvgfeVwgwgwvfufVuwffUffVwvguwfwWvgwvgggVwwefdVVtwgwfgfWvWwfUfeVvVwwwwvfwxwwwwgwwfxwxxxwwwwwwwwwwwwwxwwwwxwwwxwxwwvwwwwgwwwggwfwwffdfVtwwwxwgwVwwVwwgwgxwwwvwwwwxwwwwwwwwgwwwwwvwvggvwvwwvvgvwwwwwwwwxvwwwwwwgWvwvwwwwefgvwwffvwwxwgggvfeffuwgeUuwfwgwvfgwwfgvwwgwWwwWVUffvwvfVuwwwgVugfvgwwwwxxwwfwvwwvwvwwxwwwwxxwwwxwwwgggwxxwwwxxwwwxxxvwwwwwgvxwwwgvvggVwgwwfwgxwxxgfvwgvwxxwwxgwgwwwwxwvwxwxhvVwwwwwfWwwfwwwxwwwgwvgwwxhfWggvvggvuvfugVggfgwwfggfuuvwefVwwfUwvfvvgfvgfwggVvwwFfUvvWedggFgfVUwggeFvffvfwwwwwgvuwwwwfwwwwwwwwwxwwxxxwxgwwwwvwwxwwwwfwwxwwwwwwxwwvwvvwwwwwWwwwWggwwWfugwWwgfVwwwvVwwwwwwxxwwwwwvxwwwwwwwwwwwxvwffwwvwvxxgvwwgwwwwwxxwwwwfwxwwwwxwwgvgvwgwvwffwgvgffw6DDswwwxwwwgvgwwwwwwfffxwwhffvwgVefffffxwwwwwwwxgvgwwwwwwwwxwxwwwgvgxwwwwwfUfwwxgffvwgfffffffwwwwwwwwxwwwefVxwwwxwvfgxwwwxvufvwwwggwwxwwfwwwwwvufggWefgfgUUfgffvgwvwxwwfwwwwwwxgfvwhgvwgwwwwwvwffvwwwwvwWwwwxwwffwwwwwwxwwxwwWwwwxwwffwwwwwgVUugggvwggwwwwvvfffwwxwwwwwwxxwxwxwvxhwwgvxxwwxwwxwwVfevgwxwwwwwwfvvvWwwwVVffgfweVfefVffffvwwwvvwgfwwWwwwwvwwwvwfwvffgvWgggvfgvWvvgvwgwwwwwwwgvfvvwgwwwxxxxxwxwxwxxxwxwxxxwxwxwwwvwwgfgwfwwvfvwwwfwvwwfffvgvffffffgfgvwwxwwxwxwxxwxwxwwwwwxwwwwwwwwwxwwwwxwwwwwxefUUvwwvggggffvvvvvgwffTTdFVeFEUUUUUEfefggggfvvvfvfwwvfeffggfugVUevfVguefVgfgfvfwwvvgvwfgfweewvwvwwwxxwwwwghgwwvwhwfwwxwwwwwgvwwgwwwWgfvufvvgwwuffWgVvwvggfTfuWgeeeGvVWwfvwwwwhgwwwwxwwwwwwwwwwwxwwwggwhxwwwwguvwvxwwgwwvwvgwwxfwwvwwxVFVVvwwwfvwfwwfffgVgwWFFfVVfgSSTSVVefugfvvwgfwfuwwWgwWVfWvwuvvwVdfvFfvVffvvGfvfxwwxgvwgfvfffvwffwwxxwxwwxxxwvwwwwwwxwxxwvwwwxwwxgvwfwveWVggffVfWfvffgwUUevVUvUWuvwWevuwwxxxvwwwwwwwxwwxvwvgwhhevwxvwwvwgwvxwwvgvwgxvgwxfwfvffvwxvgwgVvvfwwwwvgwwwVgVgfffWffwvwvgvfvvvfgwwwwwffggwfwggwgfgffgevfwvvwgvvxwvwvwgffguwgwwgwyyxxxwgxwwfvwxwwvwxxvggffgwvfwwwwwfvfgwvgvgwfvfffgevwgwvggvvwwwxwxwwwwxwwwwxwwxwwxwwwwfwwxxvxxwggwwwwwxhxwwgfFEewgwxWfuwvvwwgfvvwgVVUUfUUfUUTEFEedVufeevvwwvggvwvwVVVfuTfEgvwWVgfuggfvvggeWwgwgwxwfvvwvffggfvvwwwxxxwwwvvwwwwwwwwwwwxwwxwwwwggvvwvvfggfvgwfeVfvfeUVvfgfgfwffWffugveWvgxwwvvfwwvvwvwwwvwvgwwwxxvwwvwggwvvWvgwvwwggxwgwvwwwwxwwwgwffxwxwxwwwwvvxfvgfgfehwvefwwefVgxwwxwwwvvxwwggvwgVgwwwwwwwvfgwwwwxxwwwwxwwvgxxwxxxgxwwxwwwvgwwgvvwggvwwwwwwwgufwwwwxxxxxxxwxxwxvgxwwxxwWUVevxxwufgvvgWfwhgwWUVfEeUftffFTdfgfggufgwgvfwgggwWfffeffweefVfuwgwwgvVVfvwwwwwxxwhufwwwfwvvwwgwwxxhxvwwwwwwxwwwxuvwwwfgfvwwgwffffefvgfeVfVuwwvwgffVfuvxwwwwwwwwwwxxwwxwwxwvwwxwwxvwwwwwwwwfgwwwxwxwwwwwxfgvxxhwwxwwwwgwwgffgfVvxwgVfgvefVxwwxxwwwwgwwwvfvwgvewwwxwwwvfgwwwwwxhwwxwwwwwghxwxxwwwwxxwwwwghwwffwwggvwwwxwwwgWfwwwwwwwxxxxxwwvgxxwxWVeUvxwxefvvgwvgwfwvWVUefEUfvfgDDeffvfwufvwwfuvfgwvgfvWVfffeVfffwwwwwgUVfefwwwwwxxwugwwwwgfvgvwvwwxxwwwwwwxwxwwwxxwefwwwwggwgvwvfvfgVffffVVffvwwggVefeuwgwwhgwwwxwxwxwwwwwgwwwwxgwwwwwwwwfvwwwxxwwwwwxwxfeUUvwgxfgeuwffvwgwwvwffEEfUUEVTdUFUUVfTugvugfvwwggwwveEfgveeUfGwffWfVguwVgwvfwuwgwvxwvvvfgfvggggwggxwwwxxxwwfwxvvwwvvwvxwwwwvwhwwwxvfwvfgfvgggfwwfVVUvfffevVvVffgWgefgfwegfvwfwwwxvvwwwwwwwwwwwwwxxwxwwwwvvvwwvwwwwVvggwgwwwwvgwwwhwxwwFVfFvwwwXgevfvuwggwgfFVVV66eeUfUufF5eugffffggwvvgfgvvVUUgvfUUgwwffvfVeveWvwWeuuwwwwgvwVgwwvgwgvwvuwwxwxxwwvwvwwgwxxvxwwwwhgfffffvwgwwwwvUfVVwvfEgvgfWwfffvdWvwffvhxwvwwvwwwwwxwwwxxwxwxgwvwwwvgvegxwwvfxxwwxhxxwfwwgxgxUefUxwWggggvwwfwwvvwUeeVTFEDgfffUgfgvfWgfvgvwwgwwvvwfUfffefVVffffwwwwvvgeefwvwwxVwfugwvvfwwvgwxwvwxwwxxwwwxwwxWvwfwfwvfgwvgeeVffegfVfeffwwwwgwffeVwwwwwxwwwwwwwwxxwwwwwwfgvwwwwvwwwwwwwxwxwwwxxwxwwwgfvfwwxvgwgwwgwwxhfvwggwgvfffwgfvwwwvwwgwwwwwhfvgwggwwwfwgfwwwgwwxxxwwxwxwxvwggwwwgwxxxxwxwwwxxwwwwxwxwxxwxvwwgwwwwxhvwfvwwgxxvgvfvwwwgwwxwwwwwwwwwxxwwwxxxxwwxwwwwwxwxwwwwwwwwxxxuvgfvwwWgfvxwwwwwwxwwuvvffVUuwfvfUvfgffWgfvxwwwwwwxwwvvvVUuvfffvwwwwwxgwwfgwwwwwwwgwgvxwwwgwwxwwxwwxwxwxwgwgvxwwwvwwxwwwwvgfvwvffwwwwwxwwfgxwxwwwwwwxxxxxxwxxwwgwwwwgvwwwwxxFFgffvvwgeegvxffxxHGffVRDUuvgUEtfgfffeVvvffwxHVvFDUVvTfegfxxhfVffuhvwfvwgeffvxfgxwwgivwvgvxxheffvvVwGgfFUDffefVfgxwVfeVwgvhgvxxwhffwwfffffxfwwwxxxwfveegwvwwVvvfwwgwwwxwweevweUeVffWUffgwwwVfggwgwwwwxwweffUefffwwhvvwwwwwggxwwwwwwwwfgwfwgwgxwxwxvwwvwwxwwxwxwgvfgwxgwvwxffwfffvwwwwwvwwxwwwgwwwxwwvwvwwwwwwwxwxvwwwwwwwwxwwwxxwwxwvwghwwxgfvgwwffggwwwggfffXWfvffeVgfvwvwggwgwwfvgewvwvvggvfvvgwfvgfvvfgfgwvwfewxghwwggfgwwvfvvvwwxxxwxwxwwwxwwxwwwwwwwwwgwfgwwvgwVvfwvgfgvgfwggvggfvvfwfvwvvfewxxxwwwvhwxxwvwwwwwxwwxxwgwwwhxxwwwwwhgwwwwxffEEvwwxgvvvgvfggffvwvefUUfdTUVUeUUEEUfdwvvfwvfggffvvwvgffvffevWVVfgfgfvUVfveVvufwwvxgwwwwwvVWfffwwvwxxxwxxwwwvvwwwxxwwwwxwwwwwwwxwwwfwgwwwfVVfgwgwwVwueffvvggVVfWgwefEggTWvegwxwvwvgwwwwwwwhwwfgvwxwwvxwwvgwvfgWwwwwwxwvwfwvgwwgwgwwwVFfdvwwwxfgwfwwWvgvWwvWFfeUVfvSUfceUSdvWfvgwfgfffvwWwvWvuVgwVgvxwfeffGgfFefggGgfxwwgwgweWgvfuwfhfvxwxwwxxxgwxxwwgwwhwxwwghwwwxxfwvfwvffvffwfVffffgVgwxvuUefWgVUUuwgWgUuwwxwwgwwwgwwxwwwwwwxxggwwxwVgwxvvwwwwvvwfwfvwvxegfevwwwwfgvwfwwwwwvwgegfVuefffVfwffVfffvwfvwwwwwvgvwggffwwgfvfffwfwffgfwfwwgfvfwwvwwwfgvwwwwwwvwwWxxwxxwwxwxwxwxxwxxxwxwvwfvwwvwwwwwwWggfwwggvgvvwvwfgvWwggwfwgVwfwwwxwxwxwxwwwwwwwwwwwwwwwxwwxwwwwxwxxwWVvgwwwhfvwvwgwvwxXVvwVVfUegfeVegvwwgfgwwwxvfwxhwvgffvwwwwvgvwwwwxgvwwwwwxgxgewwvwwfgwwwwwihwwwwwxxxwwwwhewwvwvvvwwwwXvvVfUvvxwffvwwwwgfwwvwwxgxhwwxwwxwwwhwwwxwwwxwwwwxwwwwY7GwweefwuuwWVegxwffwwG7wwvwgSUewwUUwwwuuwgffVwUgww6VuvXvuwwGffUUeVfffxeefwweewfuvwXvVUwwffxwwWwwwwxwwxuwwuwwwxwwwwwwwxwxvuWffVwwvUxwwFffxgfx8WeUUfVVuVwwwfeVwwuwxuwwwxwwwxwwwwwufwwwwgwxwxxwwwwwwwwwwxxwwWVeUvxxxwuffwwwwggvgwvWVeVeEEDvvfdVefvvfvuggwwwvgfvgwvgffffeUfeVfvfwwwwgfVfevvwwwwxwhuwvwxvvffwvwvwxwxxxwwwwwxwxwwwwwxxxevewwwfvfwwvfvfVfeVefVVvgvwwwwgfffeuwwvwxhwvxwwxxwwwwwwxwwvgfwwwwvwwwwwwwxwwwwxwwxwwwxxffwwwgwwwvxwwwwffvgvvgggffgwffwwwggwwvwxgwwwxfvwvggvwwggwfgwwgwwxwwwwxwgwwwxwwwwwxxwwwwwxxxxwwxxgwgwwwwgwwxfwvvvwgwgwgvfxwwwfwxwwwwwwwwwwwxxxxxwxxwxxxwwxxwxwxxwwwwxwxwwwwwFVfeuwwgfffffggwgwgggFVff46VVUE5egfVevWfWVgggwvwvvehffUUUgfUWwwvvfegVWVefvwhWgVuwwwwxgfffgwwvwfvvgwuwwwwxxwwwwgvwwwwxxwxwwwxwwfwefwfwwvwwgwUfFUwgfVwgfvfegfgftvuwxfgfvwwwwgwvwhvxwwxwwxxxfgVwwgggwgwvwggwwwgwvgwfhvuUfwwwwwgwwwwVvwwffvvuUUgfffgfgfUfuUWfwgggxfgfvvfUVewwgfwwhvfwffwwfgwfvUVeVgwvvfwxwgxxwxwvwfggwwxxxwwxxwwhvxxxxwwxwwwfwwwxvvwffwwwwfffffgfwwgvwggwvgvwwwwgvfgggwwvwxwwwxxvvwgwwwwwwwwgfwfgvwwwwxwwwwwwwxwwwwwvxwhvvgwwwxvggfvxwwwwfwwxgffvvwwggVUugffffwVeeffwvwvwvwwVefvgwwwgvwwwfgvwwffgfgwvVefwwgvvfwgwwwwwwwxgvwwwxwwwxwxvwxxwwxwxxxwwxwwwwxxvfwwwwfvwvgwwwwggwfwxgvwwwxgfwwwgvvgwwxgfwvwvwwgfvxhwgwwgwwxxwwwwxxfwwwwwwxfgvwwwxxwwwvxgwfgwwwxwwwgvwvhwgwvvfwUUgwvwgeufvfffffvhfvgvvggwwfUegffwwwvwgvgvgffewxgvfvfvgfwwxxwwwwwwwwvgwwwwxwxxwhgghxwwwxwxwwwxxwvwwwgvwgwwgfvffwwvffwwwgwwgxwwfvvwfffwwwwwvwgvgwhfwwgvwggwxwwwwxwfvwwwwwggwgvvwwxxxxxwxgwwgvwwwwvwwwwxvwfwgfvvfwggwvwffgggfvvwwvffvgwwgffwwgffvggwvwgUUggWUuvwwgfvwvvfwwggggvffgfvwwwfggwwwwgvwwwffgwhffwwwwwwgwxwwfwwggvwwxwxhgwwvwwwxwwfwwwxgwwvUUggWUuvwwwwwxxvggfvvwgwwvwvwfxwvwwvvvgwvwgfwfwhgwvwwfwwwxvwwgfwwgvwvwwwhgwwvwwwwwvxfweVgvwgwxwvwwweVwwwvwfvTEvggfGUtvfeVffffgwfgfvfgwwwvwvvfwgvwwfvvffvgvvveVgffvvvwwgwwwgwvxwwwwwxvxxwwgxxxhwvxxxwgxxwwvwvgwfgwvvgwwgvgvvggxfwvgwwvgwwwvgwwgfgwwvgvvwWfuwxgxwwwwwvwwwwvwxxWfehgwvggwwgwxxwwgwwwwggwxfUVvfffwffvgeUfVvVvggwgTUeVgvgTUVUfefgfwgvvwUUVfffvWVfVVfvvgvwfvvETevfefgfVVffgwvvgfwgfuuwvvfwgewwVwwfgwvwwwvvxvwgXfwvuwuwwxgguwwffgwwewwUwwwXWvvfeefgfVvfwffVVwgvwwvwfVeWvfwgVvwwwgwwxhgvgvgvwwwfffgfvgwwvwwwwfgvgvgwgvgwvxwwwwfVfgvwgvfwgwxwfguwffvwggWfvwwwwwxgvveweUvVVugfvvfvfVfVfffvhwvfwfVVUwffwgfwfeVvwwxgvwgfgfgvgfevwwwgvxxwwwwwWxwwwxxwwwwwxwfwwwwwxwwwhxxwevWguhgvvwgfWwwfggggfugwwwwwwgwgvwwwgwwwwwhwvwwfvwwwggfgvgwwwvwwwwwwvvwwvwvvwwgwwwxwxwwgwfWWvvgwwwufwvWevwgwhVVgfeevuvvVUfwgvwguffwwVefwggwWgwgUefwfwwgfvwwwxgvffvwwxwgwwwwvwvwwwwwwwwwwwwxwxwwxwvwwwxwwwxwwwwhvvwvwgfvwwwwgwvgffwwfwwggvwwggvvwwwwhxwwvwwxwwwwwwxxwwgwwxwxwvwwwwxvfgwgwwwwwwwwxxwvwwwhVgfvffvwvgfgVvgwwwwwwwUfUfuevfeffvgeffvwfVvWUffugffgvvVevvwgffvgWfffwwvwugfwwgvwxvwwwwvwwwwwwwvxxwvwwwwxwwxwwvwwxwwwwwfwxwwgwwfggvgfvwwfwwwwgfwwwgfvwwwwwwvwwwwwwxwwxwwfvwfwgwvwwwvwUfgwvwxwwwwwfwwwwvghwwwwxvwwwwwxvxxwwwgUvxwwwffwwwwwwwwggwUEuggfwVevgWTuwuvVWvwwwufgfwwfwgffgvfuwWgwwwwwwgwfwwuvwfwxwwwwwvwxwwwwwxxwwxwxgvxwxgwwxxwwxWgvxwwvfwwwwwwgwwwgvwWwwwwwwfxvwwwwwwwhfewwwgwxwwwwwxwxwwwgvwwwgwVfhwwgwxwwwxwxxwwwwXwfVfvvwggeuwwwfgwwvwvevVVffeevfffffffvegWTtwwvVVwwwgvvggfvfffwWvVVxwwwvwgvffwvggwvfgxwvvxwVVwxwwwghvvxwwwwxwwwvvwwwgwwwwwwwwwxfgeexvvEEggwvvwgwgeuwwwgwggwwwwwgvwfxwgwwggguvvvggwwwwwwwwwwxwxxwvvwwwwwvfggwwwvwwwwwwxwwwwwwwwwfWvegfwwgufvvgvgvvwwwgXEWdVfffdWfefgfVvgVtUfvfwfuevwwVGfeVVffvvwvfewgwwVwvfwgwwgwxgwwwvgwvgwgvwwwwwwvvxwwwxwxxwvwWwwwvwwwwwwwwxgwwwgvVgvgwgevwgvfggeffggwvxwgewggvfwvgwwwwwwgwwvEfwwfgvwwwwwxxwwwWxwggwvfwvfwvwwwxwxwwwwuxxxwwwvxwxvwffvwwvwvgggvwfwwwvguveUfUUegVuffgfwgVfffvwfwfgwwwgVffwwgWvvvvvfgewgVwfwwgggVwfwxwvxwgwxwwhwwwwwxxwwxwwwxvxwwwwxxxwvwfvwgwgfwwggfwwfwwwgvwvvwfwwwggwwwxwgwwwwwwfvvwwfwwvfwwxwwwgxwwwwgffwvvwvwfwwwvxwwwwxwxwwwwxxfVwggwwgfwvvwvwvwxwXVfwVVfuevwVggwwwwgefwvwwffvxxwwXffWvufwgwwgfvwwwwxvwwwwwxwhgwwhuwwvxvgvwwvxwwxxhwwxwvxwwxxwwywgewfvwwfgvxwwwWfvgufwwwxvgwwwgwwvwwxhwwgwvxwwwwwxxxwwwxwggvwwwwvwwwwwwxwxwwxwwwwwwxhUfwgfVvgevwWefgwwwgxwVfwgvuwgfgfwwgvwwfuwgewgxvgxwVvvuwgfwwwWwgffgwwwgwwgwwfgxwfvwgvwgwwwvvwgwgxxwwfwwwwwhgwgwwxwwxxfvwgvwgwwwwwwfwwvwxwwxgwwvgwwwwxxxxgwwvwgvwxgwwgwwwxwxxvvgwwwwwxxxwwxwwxxwwFfffgwwwwdUevwwfffgwwwGVeWVFUdvwvffgWvvwfeUewvveVfvwfvfgfGfdUfWVvwfwwwgvwfvvwwxgwwwgfgfwwwwwwvvwwwwhwwggfgvwwwwxwxxxwxgUgfwwwwfwwfwWgUewugggwwwwwwwvfwxwfWwvfwwwwwwwwxwwwxxxwwewwggwvfwwgxgxwwwxxwxxgwxvgwwwvwwfvvwwwwwwxwwwvfwvvfggwwgvvgwxwffwwxgwwfwwwvgwfggwwvvhwwwwwwwxwwwwwgwwwxwxwxwwwwwxwwwgvwwhwwwwxgwwfgwwwwxwwxvxwvvgvwwwxwwwwwwwwwxgwwxwwxxVfgfVwwwgVVVwvgggvgewgFdWfEVeEfUefgvwvgwFeUFfgvwwvwVgfUVTdffeVffewWwvWgfugvvweggvwwgwgwvwggwfwwfwvgwvwwwxwwxwwxwvgvwfwVvvvxxgwvggwvfgxWffUuweffuwwvwUfVffVffgwfffvwwwvwvxhwwxWvfvffwgvvfwwvwwwwwwwwxwwggfwwvffwgwvfvfgwwwwwxwxwwwwwwwhwgfVwwgwxwwwwwgxgffvfufgfDwvgvvWuwwfFfffwvfvvwwefgVFdxxwwwwfwvfwwfgwgVuwVwfffedgfhxwgxxwhvwgghvxxxwxwxwwgwwgwvwwwwxwxwwwwwfvWwwwwffewWfxxfxwxVwwxwwwwwwwvwwggfwgxxwwgvgwgUwxwwwxwwxwwgfwwwgvxwvwwfggwgvuwxwwwwwwgvwwwgGVvvgwwwufwvggfTfvWwgg7eeefgvtfwcUEevvwwdffwwwUduvGgVVwfGffffvwgffvwWwfWSuveGgVfwgwwwgwffwgffwfgwwwwxwxwwwwwwwwhvwggwfvvvvfvwgwfwfvvgxheWfvwweUefgwwfvvggfVfwwwvVvwvwgVuwwwfvxwhgVwwvwwwwwwxxegwVfxwhwwwwxxVfwwwvxwxwwvWfvxfWewxfxhWGfwwggwwvwgeeWwwEfxWFffvvwweeVgvVUwwwvvvWUeVwgEVgfwgWwwevwwXwwVewwwfgwwwffvwxwggwvwwwvgwwgfxwwwwwwxwwgwwwwvwvwxwwwwwwwggwvfwvwguvfwwVewhwgwwwwxfwwhgwffwwwgvwwxwggggwvwfwxwgwwwgvwwggwwvfvwxvvwfvwwwvvxwgwwvvwgwfwwwxwwefuVgVffggwvfwwuWgfvvgfeUfgwwfffuffVfwvgfffUfffggfvvggffgwwgfwwweVffwwvgVwvgwvvwhgvgggwvwwgwgvggfxwwwwwwvxwwvggxvwvxxxwwvfwwwwgwvwwggfvfgfwfgfvwwvvgwwggfwxwvfwgwwffwwwwwgwgggfwwxxxvgfUvwwgwvwwvgxhwfwvxxgfxxwxwvwxgwwxwgxvhfVwwfgvwfewgvwgwwwvxwfVwgvewgvgVvwffxwwfuwgvwgwwggwwwVwwvwhvwXwwgfwwwwgxxxwwvxgVxwfvwhwgwxwvwvxgwgwwwwgxvxwhwwwwxwxxwfvwguwWvgfgwfwwuwxgwgwwfwwwfxxwwwvVwwvwwwhwwwwxwwwxwwwwvwxgxgxxwxgwwwwwwwxxeeevfeffffwwVVVfgVfvwwgeffUgwfVfUwvfvvwgggffVUVggffuWgfefvggvgwwwuffVufffvvwwwgwvwgfwvfggffwgfwfwwwggwgvwfvwgwxxgvgwhvgxwgfwwgvwvgwwwwXgwvffVwwvwvwgfuffxvvvxgwvgffuwgfwvwwgwwwgvwvwhvvxwvvvgvwgfwgxwgwwgxgwgvwvhhwgwVwwvwvggvwxwxwgfWffvggfvffwfgfwfVevgweFfUvTevvgVwwfUwwwfegwuggwvVUeVfVgvvfWDUfefwvgVwggvevgwgffwxwwwvgwvvwgwvvwvwfxxwwwxwxwwvfgwfvwwvvwwgfwwfxxxwwwxfuVffffgwfdwggffvuvgVvwvwwwvfxwwffwwwxgggxwvvwVvwwwvgwwwvwhgwfwwwwxfvwxfwvfvwwwvwwwvvwwfWgfVWfwwfffwwvgvgvwgWffUeVwffwfefevewwfufVvfgfVewvffgevUfgffwvfeffwwgwwfuwwwggwggwwwgwwwwvgvwxwvwxwxwxwxwwwwfgwwxwxwxwwwwxxhvgVvwwwvvwwwwvvwfgggfwwfvwvwxwfvwwwwwhwxwVVwxxvvwxwwxwwwwwxxwwgwwwvfwvwxwvwwwwwwgwXeewwfvvwffggwggfwwwwwwUTgfeefVefGVeefvwwEUgEUvVffvfwwwUffdUVfevgFVfeffwwffwwwwwwwxfvwvfvfgvggwvwwxxwWwwvwwwwwwvwwvwwwwwgxvwxwxxwwwwwdegVfgVvgwwxwwEWuewffvwWgfvfwwwffwxwwwwwxewfvvuvvwwgvWvfwwwvgxwwwwwufvvvwwgwvgwwwwgwugwwwwwwwwxwwwgxwfwwwggwfVVFUUxwwwwwwgwwwvvwwwggwwwwgffvxwwwwwwvggxgvwWffufgfffefFEwwwwwxgfxwgggvfxwwwgxwwwxwwwvvefVwwwxgfuUVfeVfvfVfwwxwwxxwwwwxwwwwwggxfwwggvvwggvvwwWVwwwxwwwwvxwvvggvvwvfwxvwgwwgwwgggeewwfffwwxfffffTTffxwgvwwgwxwgwwwfffffffwxwwwwwwvgwwwxwwxwwwwgvvvwwwwwgwfgwwwwwgwwgffffffffffwwwwwwwgvvvfgwxwwxwwgwgvwggwfggwwwwvgvgwvgffffffffffxxwwwwwwwwwwwwwwwwgvwwggwwwvfxxwwwwgwwwwwwwwwwwxvwwvgwffxwxxwwwgwvwwwfwffwwvwvfgwgffffffffvwxwwhwvfgwffhVuxWFUxwvxwvxwgwvvgwwwxwwwgffvgvwwwwveVhfvwgUUuwgeWfgfVDwwffxfvxgvgfvvxxwwxwwwwgwvgfxwweeVhVuwgffvgfgffWfeUwwxwhxwwvghgwwwvvgxwwxgVgwgggwwfUgwxxvvfxxwgggxgwwvwwwfvwgwwfeexwvwwwwWvwwfeewvfETfwfVeVewxwwwwvwwwVVvwwfvVUVxxwwwwgwxwwwgffwwxwwfwxwfvgggwwfxxgvwwwwvueVfVwwwwgVUVvuxxvwwwgwvwvgwgwxwwvgggxwvxwgwvxvwvwfVUVwwgwgVfVvfxwgwwwwhxwwxxwgwwwvvuWwVwwxwhfvfvuxwwwxwgwwwwwwwvffgwwhwwVUVvfwwggvvvvxwxwewegwggvwvevfWvvwvggWfwwxwvwxgvvwwwvVxgewfUVuvxwwwgxxxgwwvgwgggvwwVgggwgwvwwwwgguwfUVuwufvvVgwfwxwxgwvfxgxwgvvvgwghgwwgfwfwfwVwxgvVggvwvfgegfeVugwwVwxxxxwwxvxxwwwvwwwwggwxwwwwwwvfvxwwgwxgwgwxwxwvxwffvwwwVvvfwwfvgwvwuwgvwgewgVfUwwgegvVgegevwwvgwvvghwgWfufvwwVfgwxxwwwwvgwwwwwgxwwgfvvvffvwgvvwwwwxxwwgfffffuVvfffffvgwvwwwwwwWgegvwwgvgwxwwwwgfwwwwveVwwwwgugueVfgffgwwfvVwvgwvxwwxgwxxwgwvgwxxwwwwwvgugvggwvgwwwvwwfwxwwwwxvffwwwwffwgwwwwwvwgggUguxwwwvwwgggfUvffggfffwvggwxwxwwvwgewvVgfTwwggUUUxxwwfwwxwwwwfwvwxwwguVghgvwfwffefxwghfTguwwgvfVfT5uxgwwwgwexvgefvexwfxwgwwwfFuwwwgVvVwWvhwffvhfffdVveVuwxwxfgxhxwfwvgxxgxfwvxwgwvWweFuwxwgwVguVxxxgwvxvfwvgwvgwwgvVwwwggufUSwWvghxgfgvgfTgevwvvgwwwVWVfxwweUwwfvwwwwwgxwghgvffvggwgggwwwxwufwwwvguvfVffgWffuvUwgvwffUeVwvwwwwwwwggfxvfwwwwwwxwwxwwvgwwwwwwwwVfuwwgwwwfwwwwffeVwwwgvxxwwxxwwwwwvfggvwgvwvvfwxwvvfvfwwwxwwwWfuwwgwvgwwwfugwwxwwWVuwwwwgwfefuwwwgwwgVfgwfvffwxgwgwwWWgwvgwufwwggfVvuxwxwwwwvwxgwvwwggwvwvfxgggfwffWvwxvfwvggwVWffgegvgfVfuwwggwxwwwfxxwwwgwvwuvxwwhwwxwwwwggvwvvvfugwgvgvfwvgvgwvgwwgwxwwwxxxwvwwxwwwwwwxggwvgwxxwgwvwwwgwfgwgxwwwwgvxwxwwwwxxwfuffvfvgwwwfuwwwvfgvfgvgwvgvvwwwwwwxwvvggfwwfwwwgeVVexwwwgxxwvxwwwgVwwwvwgwffwgfwgwVvvevwvwfgwvwgxVVUvVhgwxfwxxwwugWfwvVwwwvxwwwWwgvwvvVgeUwxwwwwgffgfvgfvVwxwwwgwwfxxwwgvwwxxwgwwwwwwgwVvVxwwgvwwvevxwxwwwgwfwgvwwwvVwxwggwvvfwgffeUeguhwvwwfgvvgegegfgwhwvwxwvuVfgvgfvwffVuwwvwvggwgwvwfvWuvVfxwxfvgfvwvffVggffewvgggvwffVugfvfvwxwwvwwhwfvwwvgvwgxwwwwwwwfwwfwwffewfwwwwgffuwwwfuwgxxxgxwwwfwffwwggewfxwwwwfffvwwwffxvwwgxwfffwxwgwgffwwvfuggwxfffwgffVwwvgVxvggwvggffgfwgwwwwwwwffwwvvwwwffwwvfgwwxwwwwwwwwwwwwwxwwxwggvggwvvgffffgvvgfwwvwgggwfgvwgwwwwwwwwwwwwwwwwwhvwwwwxxxwwwggwwwwwwgvxwvfgwwvwgwwwwwwxwwwwwwwwwwwxwxwxwxwwwwwwwwxwwwwwwwwxxwwwwwwxvwgxxwwgvvwggwgfvwwwwwwwwwgwvwwxgwwwwxwwxwwxwvxwfwwewxxwffxxwwwxwwwwfwfwxvffvwgwfgffwggwffuwffvwwvWvwwwwfwwewgxwffvxvwfwxwffvwWvwwwfgfVwWvgvffxffvwvvgvxwhxwwxxxxgffxgffhffwffwWxwgwwgxwxwwvxvffwwvgvwwwggfVwwwwgffwexwgffgffwfxwwwewfwfwwfwgffggfwgwfUwwwwwwwwwvwwvwgvwwxwwwwgwgfwwvfwwgfwffUugvwwwfUxwwgffwwgwwxvwwwgwgvxgwgfxwwwxgwwwhfvfwwwxvwggfvwwfwvwfwgxwggffvgwxwwwwwfxxxwfgfxxvwvxwwxgwfwwgxwwwwwgwwxwwxxxwvvgxVUuwwwwfffgwvxwwgwwwwwxxwwwwgwwwwggVVWwwggVwxwgvwwvwwwxwwxwwxwxwWgwwgwfwgvwwwufvxwwwwwwwWEuvwvwwxwwwwxgvwxwwffwwvwwfxfVwwfwgvwwvvWvwwfwwggffgvgwuwvwxvwwxwwwwxxwwwxwwwwwxwwgVuvwwxxxwgwwfwxxwwwwvgwuwwwwwwUEgwgwxxwwwfUgwwwvWxwxxwwxwwwvvwvffFfwwgfdwwgwfwwwvwwWwwgwwvwwwwgwgWvxxwwfwwggggwefWfffeedwuxvwwgvfVfFwwgwwwvwVwxwwwewwwwgwgvxwwwwwwwwwvgvfVufgfeuxwwwxwwvwwgxxwwwwxgxwxxwwwwuwgvgvevuvwwgwwgwWwwxwvgVugvgfwwwwxxwxwgwwxxvwgwwwwvfVeffefeuVvwwwwvwwwvwvgwxwgxwgVwgfvfffxwwvgvwwvvxwwvfwwwxgwwwfvwfgevewwwgvvwwwfvgVUUffgggwgvwvvfvwvvwfvxwxxwvvfxwgvwwwvwgewwwwggxwvggvfUgvwgVwxwxwwgwwvvxwxwwfwxwwwwwwgfffwfwwgxwxwfvxwwwvxxwwwgfgwggVwxwwwwwwxwffwvwvgeUwgVwwgwfwvhwwwggfwwwxwwgWfwwfvgfvggvwgwgffVvwgwgggwuvggwwwvgfvwgvvfwwvgwffggffvfvvwfwffWwwgvgwwgwvwwxwwgfeggggxwvfWwwwwhwwwwwvfhvegfffuwwwwfgxvgWggfwwwwvxxwwwxwgwgwhwvwwgwvvvwwggwwwgvwwwwwvfxwvwvfgvfwxwwwwwgxwwxwgguwwffvwfggvffffvxwfwxwwwwwwwwwwwvvwfvgVewwvwgfVUVTtwxwvxwwxwwxwgvwfwgfgfwwgvwffVugfvwwgeWfefgwfffeugfgeefVUEwvvwgfxwxWvwwwewxgxwwwwwgwgwfwwgVevWUwwggeuwggftvfeVtwwxxwhvwwfxwwxgxwfxgvwwwwuWvgvvgfeVuxwwwxwwgVwwwvvffvgvwgegfefwxwgwVxgxwgffVfVxwxwgwggfUvfVgfUDvvggwgvwwwwwwWVVfufVVwwwwgwwvwwgwvgfvxfwwfvwwwffgvwgfwwggvfwwvfgfwvwgvUVffgVVVvgwwhwuvvwxfgwuvggwgwxwwxwwfwfwwwwevfgwvvfgxwgvffffVVwffwwwxxwgwvgwwwwwwgvgvvWgvwgvwwwvwwwwfvffWvggwwxwwwwfvwwvgwwwvgfwgfwwwwgwvvwxwgwfVwVfvfvwwwgffvwwwwffeVvuwvwvwwwffvggwgVewwgUvgfwwxwwxwwwwwfvwwgwwwggfvwgffwwfwfwxwgvwwvwgfffeegvwwWfeuwxwwxwwggvwhfvvwxwvwwwvvffvwfgvfwhvvfgeuwfffvwfWffuwvxxxwwwwwgvxxwwgvvwvvwwxgffvwwvgwxwxwvggeuwgvfvwggfxvxwffvgwwwvggwwVVwwgfffwgefVwwvfwwwwvwwfewwwwvfvwvfeffWxxwwwwgwwwxhxwwgvgfwfvfWwgfwxwgvwfgfvevfWvfwggffWwwxgvwwvfwwwwvwwgwwwwwwffgvxxgwwwwhwgwwwfgfgvwwfgewfWgggwgwwwxgwgwwxxwwwwwvfvwgwwwwhwgxwwwvxwhwwwfwvwvxwgwfvvggggvwgwfvvgvgwwwvvvwfgffvvvvvfwvvuwwwgwwwwffVuwwvfwfvwgfvwwwvxwwwwwwwgvwwvfwfvwvffgwgvwgwwxxwvgVEtwvffvwwvfwwwwfvxxwwwwwgVuwvwwfwxffVufwwwwwgwvfUwwgvgvffwffgvwwfvfxwxxwwfwwwghxwxwwxwwgVuxxwwxwfwwxvgvxwwvxvgvfvwwvgvxxfwfwxwfUwwwvxxwwgUDwgfffffwwwgwwwxxggwgfvfffVuwgfUgvfwxwwwwgwgxwgvhvfguxgfvwVWfewxwwfwwfwffVfeFgfvwgfeVxvwwgxwfVvgvwfxwgvgfwgugffggvggwexggwvwVgefEffEwgwwggvgwvwwwvxgwvxwwwxxwwwfwfwVguVxwwgwvgwvhwWwhxwvgfFwvVgghwvfwwwxgfdgVtxwwgwvgwvfgguVfuVvhwxgwwwwgfwfWfgwewwfwwgVeffvvwwxwfxwwxwvvwwfgwewvUvhgWugvuvWvwfegffwhwguwwuvwwvgfvugvggwwfwwwwwgffvvvwwVhvwhwgvwwvwgfwvfUfgVwwwfvwvfffvfvgfvwvhxvxwvggwvvwwgvwgvggfxwwwwwwvwvggffwwvVuvgUgwfhvgggvgvwwvggvgwvgewgWwgwggffVwfwvxhgfgfgfffgffvwgvfwffgfguvggvVwgvfVwwwvwwfwgvwgffwwgwwguxwwvfwwwvWfwVffffufvfvUvgwvWvewfgvvVwvwwwxvgwwgwwwwvvfxwwxwwwvgwwwwwfVvgfgguwwxwwwwfvffwvgxwwxwwwwwwwwfxfwwvwvwwgvwwxxgwgwwgvgfwwwwwfvwwwwuwxxwwwwwvvwwwxwvVewvwgefuwwfgfwggggvwxgggvwwwwwfgvfwgffffVfeuVfWvwgvwwwwwgxwwwwvwwfwgfvvUggffvwwfgffffffvggfVUVugvUVugwefwvgwwwwwwwwvwwvgwwwfwwggfwwwwfvwwxwvvgffefeffgfgvffwvvfwwvugwuwvgwwwxwwwgwvwwvVwwVwvfgvgwvgfwwvwvvwgwVuwfgfwggggvwwggefvgwfwwvwgfUfVvgVffwwgvfgwveUwfWwwgwffvWwwwvwwgffxxwwwwgfwfvFEexwvvxwwggwwfvfgfxvwwwvgVwxwvhvgvvvwvwgVgwvwxwFEeffwxwfwwxgwwwgvFEegwxwwwxwwwwwvweevgfwwwgvWgvfggvfwwvxxwfwvfVgwwvxwgwwwxwfVgwfwhwFEefvxwwwvwwvvwxxwvggwwwwvvxxwwwvvwwfvvfefgwvwwvvwvvvwgeewxgfvvgfUvxxwvvwwgfvwWeUvwxfvwfgwggfvgefvwwwwxvwgffwxwwwwfggwfwwwvwvVeUfgfWVvxwvwgfwgwxgvwVeUxwwwwxwwxVewwwgfwfxwvgwwgfffvfgfwwwwggvwggfvxwwwggffgxgvxvfgwWeUvgwgVvxwwwgwxwxwwwwggfwwwwfwwwwwwvfwfffwwwwvwwfgfwwwwgfffUeggvwwvfwwwwwxxfwfvwwvggwwffxwwwvvffwwwwwwxwwwwvvxvwgwwwwwwwwwwwffwwvwgvvvfwvwgwwwwwwwwwwwggwwwvgxxxxwwwxwxwwwwxwwwwwwfvfgwwvwgwwwwxwxwwwffxwwwwwwwwwxxwvvxwwwwwvfgwwxwwxxwxwwwxwwwwxvwgxwxwwwwwwwwxwwwwwwwgffgvvwxwgwvvwwwwgvhVxxwwwvwwffxhwgfUefwxWwhwwwewwwWwfgvwwwxwwhwevvgwwxxwwgwgwfwgfUevhwwwwfvffvxwwwfxwgxwggUewxwxwwwwwgvgfgxwgfwvwvxxfvvwwwWxwgwwwwxwgvxwwxwfgwwxxwxgUevwwwwgvugxxxvwvwvhwxwwwwxwvvwwvWxvwvgfgvwwxhwgwvwwgfgwvgfehwgwffggvvvwvwggggwgfTTwwgwwhfvwvxwggfvfvvwgwwggfgxwgeewwxfvgfggwvwTTwwwweegvgwwwwggvgWVfgwgvfgwgwxwxhxxwwwwvggwwwvvwwgwxfwfggwxwggggvfgeegwwveeggfgvxxvvwgwxeegwwgwwwfggvgwvwwwwwwwggwgffvgvvwwwfwwwxxhvgvvxgwvvgwxwvfgvvgfgwwWfUwwWVvwwvvggfxwwgvfwwgwvgwvwwgeewxggwwwgwvvgwxfgVfeUfefxwgwwgwgggwvWfuwwXVvvwfwwwffwwwwwvwwfgwvfhwwfgggvvwggvwwvvwwwhwwgeexxggwwwgwvwwxgfWgfewvwwwwfwvgxfgwwwwxfggfvwwwwwwwxwuwfwwwxgvgwwufVwwfeWwwwwxwhfffvvvfvVFfwwgedwwWggvvvvggfvwgwfevvfvgvggfxxwvfwgfgwwuggfggdfuwuwwggwvvFfVWwgvwvfvgVwxwwfuwfggwwwwgwvwwwfxwwwgvggwgwvvwwwwggfwfwgvgwwwggvxxvfgfgwwuggvwwevuvhgxvvVfggwxwvwwggwwwvfwwwvgwgwvwggwvgggxvvfgfvvwvvfgvwwfwxxgvvvgvxgfgffvwgwwvvgwvwfggwwvwfggvwgwvvvvfffvwfwvvvwwgwgwwvwgwxgffvwgwhwggwvggwvwvwwgwwwgxfwvwwggwgwwwwgxwxwhwfwvwwgwgxwwgwvwwwwxwwvwwwxwvggwgvwvwgwwwgwxxvwwfgvgwwwwwwxxvvwgwwwxxgwxwxgwfwwwfffgwwwgwwwvgwwxwxwfwwvwwxggvegwvgvggfWgvvgwwgffwxvfwgwvWWwwvvgvggwvwgwwwgvfwvewwgwvfwvfvwgefwwwvhgwvwvwxwfwgggggvgwwggWwhwwwwwwwwgwfgWwxwfvuvwwwwvgxgvwwwwwwhwvggwwgwfwvfwxwwwwwvvwffeVwwwwvgwwwwxgwxwgwxwwvhxwxwwWWgwgVvegwwwwgwvgwwfvvwwwwxwxxwwWwgfvxgwvVuxvwWwwgeUewwfwggewwgwfwwwvvvwgvxwwxwwwwvfvgewwvgwVVUgwxwfvxvvvuwffguxwgwgwfxwwgwfgeUwwwxwwxwwwwgffgwwgfwwwvfwwwvvvgwgewvwxvwwwwwvvwgwvwfVVUwwwwvwwwvvwffgvwvxwxwggfwxxwvwwwwwwwgvwvwwggvwgwgWggffVxxxwwwwwVxwwwgwgwvvffwwWgUvxwheewwwwvffgwffwvgffgvfwfgxfwwwVewwwxwvgffeeUfvgfgfxwwxwffefVxwwwwwggUfwwgVexwgwwwxwxwwxxxwwfvgfvfwwwgvxxgvghwwxxgxfwwxVewwwwwwwffvfgvvvgfxwwhwVefgfwxwwwxwgfwwxgvxxgvwwvwxgfvwhwwffVffuwwwwwvxwgwwxgvgfvxwwwwffwgwwwxwwwwgwffvhwwwffwwgfvwwwwffwwwwwxvxwwgfvwwffwxwwwwvwwwwwwwwwwwwxwwwxwvwwgxwwwwxwvwwwwwwxwxwwwxwwwwwwwwgwwwwwgwwwxwwwxvgwwxwwwwgwwvvfwwwwwxwwwwgwvwwwwwwvvxwwwwwwwwwhwwwwwwwwwwvxxvwwgwwgwwwwxwwwwwwwgvgwxwwgxvwvwgxwwxgwwvwghxvwwvvgwwgwwwwwwwhwwwxwwvwvxhxvwwvgwwwvwhhxwwwxhxxwxwvwwgwwxwwwwwhxxxwxwwhhxwvwgwwwwwxxwxgxxxwwwxxxwwxwhwwvwwwhwwwwwwxgwxwxxhwwwxwgwwwxxxwxhwwgwwxwgwwwwxwhwwwxwxwxfeeVvgwwhefvefvuVwgwwgfvwWfgvVfevgffvvwvfwwvwwvwwgwXffWgvfvwwwuVfgwwwggvvxwwgwwggfgvvwwfgwgwwwgwwwwwwgwxwgvfgwvvvwxwvWggwwgvwhgwwwxvwwwwgvffgfwuwwwgggWwwwffvvwvwwhgggwvwfxwwwfwwxWwxhfvvfxwwwewwwggwwguwwgggwwwwwwxwhfwwfwwwvvgVfWEtwwwfwwfvwwfwgffgvgvwwxwwvwgvgVxwgfwwggUDxwwfvwwgfUvfgwVwfxwwxwwwvvfvwgfvWvwwfUxwgwwwwwwwwxwwwgfxwwwwwvgfwfwffwxxxwwvfggvgVwwwfxwggvfwwgVuwwwfUwUgwfwfwxwxwwwwgwwwwwwwwwwwgwfggxfwwwvvgvgfvvxwgvwwwwfggwvwwwxfwvWfwwwWgUSvwvvWwfwwvfwfgvgvvwvfwgwVvvvvVedwxwfVwgwwvWFvwvUSWgggWwwwwvvVvvvxwvwgVvfuvwwgFvgwwvvwwvwxxwwgffwuwvfgVwxwwwwwwxwVfdgxfWwgvwvgFfgffuWwggWwwwvgFwwvvvxwwwxvvvfVggwfwwwwwwvwwxxvvgvggWfegggfgVggvxxxxxxwwggwwgeefUuwwvFfFuwgwfUwvvgguwfUVeVegffvVffvwVffVuhvwfxwxwgewUVVtgeefdffwwwgwVwwgwwgwgvwwgefvwwwfUwfvwgwwfxwwwwxwwffVugfwwwfxxwevwgwxwwwfgVuhwwfxwxgffffVeguvguwfwwxgwfgwWwwgwwvwfgVugvwggxwxgxwgVwwvgffffftwwvwvhwxxwwvwuxxWgwfVgwwweffwwfgvwvwgvwgWffvfeegggfwwvgvfuvxwwgwwwXeVfwfffgggfWvwvvwwwvwwwXgwwgevewwwfgvwwwwvvgwwwwwwwxhvfwfuwfggwwwwxwwwwxgvffvxwwgxwgeVUfewfwwwfgwwwwvgvwwwwwggfwwfxwwgwwwwxheUgwgfvffvwggwwwwwwwgxwwxxxxvffvwwwvxwfwwxgefvgWgwwgfwwgggfgwffugggwwgxwwwwvgvggggwgvfwvvvwvwghwfegggfVgwwwwwvxwgwwwwgfgfffgxwxxwwwxwxgfvffgvwwwwwwwwwvvWgwggwwxwgwwxwwwgfggvwwwwwfwvwwfwvwfwgfwgvvVgfwxwwwwxwvwxwxwxwxwwwgwwghwgwgwwhvgVvggufwgwwvwgfuvwvxgevvfwwwvwfgwvgvffWDuwgWffwhwgfgvvfgfwvvwwxwvWvffgUvwvwwfgwwVewwvfewwwwvWDuvvgvfvxWgvWvgwwwVevfgfwwvwwwwxvwxvwwwwwgwWvxwwfwfwwxfwvwwevwwuwwwgvvVfUvwvgvfgxwVewxwgUffvvwgfvvfvfvwwwuwgwwwwwwwfwvwwewfvvwvgwwWwwwgWvwxxwggwwgvwWvwwwwwfWfwhwghgWgvwwgWwgvwfUewwVUfgfWggvvvwwfVwwwfewwwwvgvvwwgwvfVwgfwwwfwvgwwffVVfUwfgwvVVewgwwgWwwwwvfvwfWfwVfgwwuwwggggwfggvwvwevwefgfggwffgfvffwggwgwwwvwggvgVwxwxwfvwwvfgVgfVxwwwgfVfwgwgfwwwwwfuwgwwxvewwvwfwfvwgwwfuwfuvxwewfffgfvwgvgewfvwvvvwvvfvvgggwWfdwwgUvvvvfvxwwgwfvwwfvwvvhxwwwuhgFwvfvxgfxxxwgfVuvvwfgfeuxwwvgwwwffdvggfvvvwgwvgxvwgxgwvvVwvuwhwwVwfvwwWwvfwxvhxvgwuhgFwwxgfhxwggfvwvvffvvfxgwwwguxxwvghfwVvvvxwwwffxhwwxxggwfvwggfVWwgwvhvgwwgwvwwwwwvwwffvwwwwwxwwwwwwwwwwgwwwwggwgwxwwwwwwwxwwgxvwwwxvwwffxwwwwxwwwvgxvwwwwwwwwgfvwwwfwwgwwwwxwwwxwxxwgffwwwwwwfffwwxwwwgwwgxwwxxwxxwwwwwwwwwxxwwxwwwwgwvffwwwvwgwxwgxwxwwwwwwwwwxwwwxwwwwwxxwwxwwwgfwwwwwwgggfvwwwwwwwwggwvevwwfwggwwvVfuvgwfwgwuwwgwgvUgvgUfwwgweffwgwwwxhuVwxwwwwweVffvwwffvgwwwwxfwgwfwwVffwgffvvwwwwvwwvgwwwwgffgwwwwwwxuVwfvvfggvwwwwwwhwwfwewgwwwhvwwwwvwgxxfffVvvwvfwwwwwhwwwwwvWvgvvvwwwxxwwhwvfvwwwwwwwxxwVegwfgggwwwwxwwgvgfevgvwfVwwgwvwfffWvvvUwffvggvwvfVwwggwWvxwfwwgwWwwewgwVvgfwwwwwwWwgwwwfgWwvvggwvfuwwgwvwffggxvfwwxwwwxwvwwffvggvvuwgvwwwwwfvgwggwgwVuwwgwwhggwgfwgwVvgvvxwwwggwwwwwgffgwwwwwwgvwvwvxxwwwxgxwxwwwgfvwvufvwwffvuwvwwwwwwxgvvvwwxwgGfgwgwwgdgevwwvVvwwuwgWwgffvfewudVfFuwwvuwvwwwfgwwwvwWvgFgffewwgfgvxwvWWvvwvuwxxgwvwefevwveVfwwvgvvgwwxwvwwwwwgWfuwvggfvfwxxgvuvwwxvwvwwwwfvwwwgwgWffvewxgvfvxwwfVuvwvvfxhwwwffwwwwwwwwwgvvwxhguwwwwwfTfwVggfwwwhwwxxwWgwxwhfWwvvfgfwfvwegVgvvehwvgfwvveVuvggwfvfwwxfvwgvffwvgfxVffvwhfvvgWwvfexwwvfwwwgwgvggvvufwvgfgwfexgwgvfvwvwxvwwxxwfwfuvggwwggvgfxwwwuxhwgwvfvggvggwvvfxxggfvwgfvwwggwffwgxwwwwwwwgxfvfwgfgwvwwxwwwvxxxwwwuggVuwvggwwvgwxWwgwxwwxwxgvwwffwwwxgvwgeeuxwvwwwwwgvgvvfwxwvwgvwgUUxwwgffwhwwhffxwvffefUVvwfwwwfxwwgwgvvxwxwvwwwwwvfxwwwwfffwwwwwwvwhwwvvwfVwvwwxwwgffvxwwwxwxwvvxvvwvwggxwwvwwWVfhxwgffvwgVefffVVwwxggwwwwwwfwgffxgwwgwgeewfwffvfvxvUvwufvxxwghwgDfwfgwwvevxxwxhwwwwffwvggwgwwwEVvwffgwwwwwwwwvwVwwwwwUwffvgwwvguwguwgvwwwwgvgWWvwwggxfwfewwfgwwwwWewwhvfwgfwxvgwgvFEffwwvwfhfuwgwvvwwWvWwwwwvwgvwwwwwwgwwgfwwggwwwvwwgewwhvwvfvwwvvwgvVFUwwwvwwvwwwwgvWvVwwwvwwhvewwxxfgeeWfuwwwfwfWevwwgVewwgvWfevvwxxwwwxwxwwwwwfUevwggWfewfwwvgwwfgfgvvwwgwvgfvvwwwffwwwwwwwwgwvvwwffffvgfWVfeevwwxfwvxvwfgfvgvwwwwwgfffvwxwwwfwwhfgvwwwwxwxwwwwwwwvwxvwwwffwvfxwfggUfeevfgvfVfevwwwgvvgwwvgwwxvvggwfgvwwvwgvwvwwggwwgwUefggfgfffvfvggfwwvwxwxwwvwwwvgwggfvvfffVVVvwwwwwxwwwgffwfwgfvgwvggwwwgwfvwwwgfwfwgvwwwgggggUveeVegfgvvwhgvwwfwwUewwffwUfgvfggwvvwxwwggvwwwvgggxxwwwwxwwwwwgxvwwgwvwwvwwwfvwgvwgfvvvfwwfVVffVgffVWvgwgvwgfwvwwwwvwgwggguVwvwfwuWwwwhgwvwwhfgvwwwffffgffwwwwvwwxxfvwwwggwwvvffvfffgfgfvvwxwwwwwxwfgfgwwwgfwwwvwwxxvwgwwwwwxwwwwwwhvwvvfvfgggvvvgwgwvvwwxwggffwwwggvvwwvwgwwwhwwwxxxwffgwwwwwwwxxxvxgwvwwwxffggvvwgfvwwwwwwwwwwvwwxxwwxxwwwfffggvwwwwwwwxxxxfgWwffwwwVeuwwffgfvwxvfxwwwxwwwwwwwwgVevwgfvgevwfwxxwwwwfffffffwwwwggvwwwghgfxxwggwwwfgfuggfgfuvfwwgffgfexwwwwfvvwfffUVUwwwwgwfwwvwwwwwxvfgffxwwxwwvfgvgxwwwwwwxvgvfxxxwvVwwvfffeUfwwwvgvffwfhwwwgfvxwxgwwVwwgfffffgVvwwggwwwgwwfFugfvwwvvffegvffwvgwxwvwwwwwggwwwwgffwwevggffTfuwfwwwffgwvxwfwvwwgwvwVvggxwwVvxgvhwwwxVwwwvgVdfUwWgVufwvgUvwvVdggfwwggwwwwfwwwwwwvgwgwvwwvxwwggevvxwwwwwwgwvxxgwwxguwvxwwfwwvffEgfgghgVvugvuvfVfugvwwwuWwuvvwwwEgUwwxwwgwwwfwwwwwwwvfvwffwVVvhwwvgwgfUfwwffwxxxwwwwwwwwWVvwxwvfwfUVvfwwggvfggwgfwwgwvgwfwgvwwwwxxxvxxxwwwwwwggvxgfUwffffwwwwffwgvwvwgxwwxvwfvfwwwwwgwvxxxvvxwwwgwxwwwwwwxwwxwwxwxwwwWVvgfffvwwxwvgwfUfwwwxwwgvwvwfgwwwvgwfwxwfwxxwwgvvfwwwwwggfVgfWwvfwvffVffvuvgwggwwwwvvwwggwwuefuffGEdgwuwgggvfvvwgwwgffgwvwgfvuwwvwwwwggfwwvfwwvggwggwvwvvfufvfgffwvgggvvfvfveWfVvwxvwgWvvwfuvwggvufwffggfgwwwwgfvfvvwVgwggggwvwggwwwhvVWffvfvvgvwGEtwwuwggfVvuwwgwfvvfVwwfvgwxvgwwvvvWwwgwwwwwwxvfgwwwuwwfvgwfwxwwfdwvVFgwwfwgwxgvvwvfhwgwfwwgxfTwwvFUvgwggwggvvwexgWvvugwgfWwwwwgvwgxwwvxvxgwwgUxfwgvgvggfwwwwfgwgVwwwwwwvwggghwwgxwVxwfwvwfwwvwgwvwfxfwwwgxwxwwwwgFuwgeTvgvwgwwvggfwgggxWwxfewfvvvwwfvwxwwwwxxwwwwwwxwgwwfggwvwvfuwgvwfffvvvgwwgwgwwxxwwxfwwwffvwffgffUfvvvwwwwwVewgwwwwfwwwgfvvwvwwwxwfwwgvgvwffxwfffwwwvfwwwwwwwwgWugfwgwwfwwwwwfwvwwwxwgwvwwvwfwwwwwwwwgvxwwwxhUvvxwwwwwggvfeggwwwwwwwgUfwvwvwwwwwwwwxwgfwgvvwwwggvwxwxxwxvWgxxxxvwwffweUfuewwfvwggUwWevxwwwwwggwwwwwwguvevgVvfwwUVUfWfwwwfgwvwggffvfexwwwwwgfwgwvffxwgvxfvwvwvvgfvWVfgVueewffgfwVUgfwgfvfvVVwwxwvggwgfxgfwgvxgwgfvwvgvfgfwwwwwvggxvvgvgfxwxxwwwwwgvfUxwgfVfUuffwfVfewwefVgfvggwgfwfeUxwwgwwwwwvvvvVvxwwwvgwwvwwwggvuggwgfgwfwwgvwvwwwxwwxwvxwvggegwvwfvfvvvuvfwwgexxwwgwvwvwvxwvgwxxwxwwwgggwvwgfvgxWwwvvgvwvwvxghwwwfvwwvwwvxwxwwhwwxxwwgfxxwwgxwxwugvwgfhwggwWwvwwvvxwwvwvwgwwwhhggWwwvxhxxwgwhxhwwxwwwwvvvffffufVuvfwfwgwwwwfwxwwwgwwwxwggVugfvwffUwfWwfUwwwgwgvffwfxwgfxwwxwxwwwwwwwwwwwwwwwxwwfwgfwwwwUxwgwgfgfgfvwvwgfgVwwwwgwfwwgxxxwvwwwwxwwwfwwxwwwffxwwwwwfwwwwwfxwwxwvffwgvgwwvvvfxwxwgwfxwhxxggwgwwvgfvgvwwwwwwwwgvwgwwwwxwwxwvwwguvfVffvfgufgwfwwwwvwwwwwfwvwfwwwxWffvefffwvwwwgfVggvwwwwfVefwvwwxwwwwwxvwwvwwvwwvwwwxxVwwfvwfwwgwwvgfUfvvvvgwgffvgvwvwwwwwwvxgwwgvvfwgwwwwwvgwwwwxgwgwgwwvwxwXfUvwfgvwwwffvvvwwvfwwvxwxfffvvwwwwwwgwwxwwfwwwwgwxwhxwxwxffvvwfwVUxwvfgfvgfwvfwggwwvvwgwwvgeewgwvfwggfgwffggvfvvfwvwwwwgwvgwgwwfwvvvvxwgvxwwvfxffgwfgxwgwvwfwggwwvffvffUewwwwxwgvvggwggwwggwxxwgfwfggwvggwgwvvwwwhxwggwwwgwwwwfgfvgfVevxwwxwwwwwwgwvgwwwwwwwfvvggwfvgfffwwwwwwwwwgvwvgvVWwgWgwwWcUuvwgfVvvwgwfWgWvfvfvwvvgwgwwgcUUwwwfVtwwggFWfGeeffgwwwguwfxgfvfwvwwhhwguffwwfWwwwfegfwvfvwggWgfUgwUfWwwxffgfvtxwgvevegWwwwwVwgWgfgwgxwwgwwwgwwhgwgTSfvUVWwgwwwwwgfvxwffdwffheeVwffggwwxwwgWvwgWwxvgwveWvfuefvvgfwvfvwgfvwwwgvwwvgwwwwxueWvugwwvgwxgWfdwgffvwwgvfvxggwwxxwwfxwwwvvfgwwwgwwwvxxxefWvwvfwwwfwwxffUvWVVvwgwwwfwwfwvxwwwwgwvwwvgwwwwwxgwvwgwwwgwvwvxxxwwxxxxxGfevwWVuvwfwwgfxxhwwwxwwfxuWgVvwwvgvwvwwvwgwwwwwwvwgffwvVwhgvhgfwwWUffuwwfVwwxwvxwxgvgvgfgfggfwggUffuvwvvwfvwfwwwfvgvwfvgfufwwvwgxxwxwwwxVwvfvgwvwvfvWgVvvevvfwwgvghvwfgVfvefVwwufeUewvxxwwvewwgwffxxxvwxwxxgwvwwwwwvwxwfggeggfggVfvfvVwgvgfeuvwxwgvwxvwvwxvfWfggwvwgvfWfwwgWfvvfVgvfwvwfVdxwwggfVfgVffffgwvgvgwfwgwvgwggwggwVWfffgWffVfExwvwwuwwwgwggfvffgWvvwvfevgfguhwwwwwgvVwggvwfFvwfgfdVewgWwwwwwgdvvfwgvwwwgwFefgfwguwwwxwwvgwwfvfggVwxwwvwxwwwwgwhwgwfwwuvgwgvwwwgfffdgegwgWvffffFVfuwVwwfwgvfwgvFvwvffwfvwvwwfeFfwfwvwwwfgweUvwffuffffffvvgwwwwwxwwwxvgfvwxwwgvVffefFDtvgwvwwffffwxwgffUvvvgfvwvwvgwwguUwwwwwffwwwfwwuwWWuwwweUffvwvwgfvggfgWvgfvwWffefvwfwwvgwvwgvWfvgfVfuwwwwwwwgvxffvUwvewfwwwwWwuufwwweVwxwefffvwvGDtvgWffuwwgvWuwWwwwwwxwuWVegwvwgwvggwvxwwwxxwffgfevwwgvwfUfVVwwwwwwwxwwwwxwwgvvWvwfUfVFhwgwxgvwvvxwwvgwWwfwgggwgxwwgwvxvgxwwvwwgvwWvfFvwewegfWgxfxwgwwwvwfveggVwvwwgwwgwwwwwgvwwfgwgxwwxwwwxvgxgwwwwxwxhwgwvwwgvwvuwwfUfVVwegwggfWwvwwWvwvwwwwvwvgvvvvvvvgwwwxwggvvvggfffggwwdfuegvfwwwwfvhwvxgwvvwgwwvxgvwwdfveffgwwwgwwwgvwwxwxeffWwwWVvwwvwxhfwfggwwgwvvgwfwwgfwvvgvffwwvvVvfWfvwvxgwfFufwvffVufwwwwxgvgvwwvwgvwwwwvwhwwgvwxwvgwgwwwggwvwvxwWvfgfgvgwwweFuvwvffVvwvvwwwxggvgvwhwvfvwfwwwhfewwwwwwwwwwxwhhxwVgwvwgdfvwxffwwxghgfwwwwwxwwwxwvwwdVueVwwwXwfhwwxWfwffwgwvgwgwwxwhgwvxxvfwwfwwuugWeVVwwfewwwWgfwwfwwWgfVefVVwvwwwfeVwwxhvfvffwwwhxxwhxvfvwwwwwhwwWfuxwvwWwvEDfVVffwwwfeVwxgUvwvvwxgwxgVuwvvvfvwwgwwxwwwwWgggVfwfeweUuVfWvvvvwwgvxwvwwvwgggwwwVEDvvegVVVuvvvWVugfUegggwffgwvvfVvwfgvvxgxgfvhfewfvgfvfvwvfgfegfwgwfvwvgffwvfeggfgfvgwvvvVffuuvwxwvfewwuffVUvvwwWwgffugxgggvgWUvvvvvvfgfgVffeEDfVWgVvgvvgVvvfvvvvxwffgvggwfewgxgggwwuwggwxwvfgggwwhggwvvVvfwfWgfgWwfffwwwwWwwwvguhhxwgfxwgvgwvgVwwfUwgwgwwvgfUvwgwvvexwwvfxxwwgwxvfwvvvwwwxhwvwvwxxgugvwwgvfgfwwwfwfuVgfwwgwfgvwxwfUwwwwwwxwvwwwgwwgvxwwgxvwwgwgwvwvwxxwwwxgwfuggUvwvgwfwwxxhfUwwwgvgxwugwfvwwgVuwwgfgWwwwwxwfwvwwgwwgfvgffFgfgfUgffVevffwgfvhffwffhfvwwwGgffgU3wffVuvgffffffvfwwwgfffvffvgwwwfgvwwgfvxwfxffvwwWugvfgffvgfgfvgwwvgVuwwfUggfgfvgwwvWufffgvtwvwffffUxgffwwvggvffffxwwxgffvvwwwwffffvV5sfffUgfffVegfgvdfvwgwwvgvffffgwfwfwwfvfwwffxwgxwgwfwfgffwvhgxwgwvffggvvfvwvgeeDTTwwwgxvwwwwwwwxwwwgfwvvfffvwwwhvgfgwwwwwvgvwvgwvUUffwwwfgwwwwwvvgffeefhgvvvgvwfvfgffxwwwwgffffvwwgfeefeefffDTTeVwxxwwwwwwwwhwxxwgfgwwwvwxwwwwwwwwgwwwwwwwfwwwwvgvvwwxfvvwwwwhvgfgwxwwgfffvvwwwwwvfwwgfgvwgffwwwwvwgvvwwgwfWgfvwU44xxwgxxwwwwwwwwwxvvvVVxvwwwhvvvxwwxgfVwwgffvVVwfvgvvwwvwvWggvwfFUwwfwwgwffwfgwvgvvgwwfTfgfuwgggvwU44ugggfwvwhxhvwggxwwgwwvxwvgggwwvggwVVwvwwwwhwvvxwxxxxvVVwwxwwgwwwvvwxvvwgeuggwwffuwwwgeegfggggvwwwvfgwwwgWfuffffveewwwxwhwwgwwwxwwvhwvxwwfgffvvfwgvhwvwvgggffvevfggfffvwgwwwggvgwvWfuwgfweuewxvwggvffwxgvfweWwwwvgWgweVwwvffffeufwwwffxxwxxwwwwvwwwwwwwxwxwgwwewewwwwwvwgwwwxwwwwgwwxwvvwffvvfwwwggwvwgggwwwwgwwxvwvfgVvwwwvgwwvvwwwwwvwWguwvfgeVwgfwVDEtxwvxwwwxwwwwxvwvgxxfwvfgvwgwwwgwvxwgwfffuxwfgvfgvgwxwvwfwvghgvwfVfuvgwvgwwuwwVgvgggvwguWggvgUDEtwwfgfVveUxwwwvwwwxxxxxwwwxwwwgwwfgvwxwwxwwxwwxwvfgvxgwvfgvgwwwwgvvxwxwvgwwwggvVwvfwegvfwfwvwgvvggvfffWffWfueVffguwxvwwgxxggwvwwwwwvvwwxgggvffffwwwfvVgvfxwgxgeVvwvvvffwvgwwwgwwwfWgeVguvVwwuwwwwgffffffwffvfeVWgevgVfgeVfgvvffffufwvvgwwxfxwfwfwxwwuWwgfwgxwufvxwvvwwwwwwwwhwwvxwxwxgfwxwvvfffvfwwwxWgeggggwfgvwwhwfggvggwvggwvwfgwvefvuxvgeC4ffVfufggwvxvggvggvvwggwwxwwfeVwWfuwxwWfwwwwUeUfUWvfvwwxwgxwwwwwvxwwgeVfwFUtgwgwwwfeVgwffvggwVfvwwffgvwEUTfeVffwvfggfwvfwwxxwggwvwwvwwxvgxxwgvVfugwgvxhgwwgfxwwxwxwwVfegwfwxxxgwwwhwxeVgvwxxgwwweVvvgeefgvwwwwhvfefwvfffVVfgVfUTffFeUvwvfwxvggwwwevwvggWVvxwwfdvGffvffwgVVvffwfdwxFfVveWwfVfVwvffvfgVfugwwfUwvVeewggfhvgvffwgfgwvVVUdfVEVeffvwfvvgfVUUgvfffwxwvwxwwfwwvgvgwwgwvvwvgwfgvfwwwwuwwwfgetwfFfvwwwxwwvgfUgxwwwfgfewgWwVfuWvfWfvgvxwfvuwwgvfvuwwwgggwuggwffffffgFUdwfVgfwwwUxwxwwgvwwwvwwveVvvgfgewvWgWVvvvgvgvwggvxwfxggvfwwgxvgwwwwfeVwwwVfewegwwvffwwgwwgwvwwgVfevfvffvfWfuwvvgGUdfgfWgwvwwvgwWgwvhwguwggwwwwwwwwwwwwwvwgwxxxwwgwfvgeVgwwgwwWggwvgwwxwwWvfewwvwvggvwwvwwwwgwvwwwxwwwwwwxwxwwwwvVvggfgfvvfgwfvfwxwwwwxxwwwwvwwhwvvfvvgugvvfwgfgggwvvgwVfegxwwfwwxwxwgwggvgfvwgwwfvfwwfuggvwgwfwffvffwwgfeVffffvffvgwggvfwvgffwwwwwwwvwwwgwwgfgxgwvwwwwwwwxwwwgwxwvfWvwvfwfgvgwxwvwgwgxwgwvveVfvxwgWvwxwvgwvwwwgwgxwwwwwwhwfggfgfVvgfhwfvVEDuxwvxxgxwwggwwfWxgxxxwgfvgvwgwgffexwwwgfwgwwgfvfvwhwfvgwwfwwvvfVeuwwWwgfwwwwggwuvvwfffUDTvgvwfvwfVeuffffwvxwxwwwhwwwxwxwwfgxxwgfvxvwwvxwvgxwwxwwffwwgxwwwxfwwxhwfexwwwgwffgVxxwffwgwVwfhfxfvvfggvvvgffeuwwW44wgvvvxggwwwgxvfwgffwfvwgfvwwVVxxwwwwwgfffggggwVVwwvUUfUfwwvvwwvggVTtwwgVVwwgwfgwffwxffwwwwwggfeeuwvgfvffxwwwUVvffwwwwwxxvvxwwgwwwwfggvffvgvwwgxgwgvvwwvxwxxwgeuwwwgfwwvfggeuwwggeeWevxwwwwwwwfxggvvwwwwwgwfffffgggfggvwWTdgfhwvxwwvwxxwwxxwgwgVVwwgvfggwvwvxhgvwvfvgfvxgwwwwxwwwwwxgwwggvgvVVwgeegvggggvgfvvfvvwgvvfvwxEEvfvfeevvwggeewgwwfvwvxwgggwvvvxxgwwwwwvxhxwwwgeuwxggxwxvvwhgvfgwwxggfwggwgvwgwwwvxwwgwwvwwvxhwwxxxxwwggvvwffVEdwffvfwgwffwggwwwwwgwwwwxwwwfvwwwfUwwwfwvfevgvgvwwwwfwwxwgvfwwwxwwxwvwwwfgVewfvfUwwgvfgggfwgvwUwwxvgvUDggfVuvguwewwwfffUgwfgwfwgwxgvxwfggxwxwwwwfwwwgwwwxxwwwxwxxwwfwwwfwwwfUxwwwfxwfwwvgvgwwgvgwwwwwxhgwwwwhwwxxgvfvffvwVVeVVVVffffvwgwwwwwgwhwwwwxxgfwwfvgvwvvwxgfwewwwVwwfvvwvhwwfvxwwwwwfwwffwgfwgevfwvwfgfggwwgvwvwwgWeffefeVwffeeefvwfWfvfwvwwvwvxwwxwwxwwvvwwvgvgvwvxwwwuwxxxhwvvwwgwwvwwgwvwvxxvxwhvgfWwwwwfxvwvwwgfwwgwvwxwxxwxwwfgffvfguegvvgfgwvfgxwwxwwvwwxxwwwgvgfvfxwwwggvVwwwgvwxwvfffwvWwxwwwwwwgwwwwggvggvwhvfvgegfvhguggwgwffgvfvwgfvgwevfvVfvfggwvwffhvxxwwvwxwxwxvgxggwwwwhggwvwxxwgfgwwwxwvfwgwffwwxwwgfvggvwwwxwwwvwwwwhwvgffwxgwvgfwvVeffUfgVffgVufvfvxfvvfxgwxwwvvwfgfUwwUwhwVvfwfvVefffUgfgwgwgvvwvfvvwvfwvgwwwxvvffvwwgfffvgvfggUggvwgggvvfvvVffffUgfVvfwwwwffvffvwvwwwvggwwvxxwwwvgffgwgwxwwwvxgfvwwwwxxwVuwwfVfvVhwwwwwwwwxwwwwfwwWfffvfwwVwvwwgxgwgxwwwwxxWwfVfwwfdFDbgvvfFwgwgfvwwWvwwwXwuwwwWwuwgfftwwwvfwgwvfvdFggffdGfvufwwvfwgwvwxvgwwwwfgfTwwwU5wwwwwfffvxxwvfwxwdeUVfdgfgfeffwxwvfwffwwwxwgxwwwwwWxwwwwugggvwvgxuWxxxwwWwuwwwwwwwffdgfWguwwxwgwwfxWftgWgefeGfvgwvfvxwghwggvgxxgVfwVfggVdTEuvVgfegvfgfgwgwvgvvwfwwvxxgfvgwgvwvwxXvvfUffgeefgguxwwwggwgwwgwwhwwxgegVvwggfvgvgwVfvevgvwfvwwwFVVUfUeVgffgftwvgvwgwvwwwwwwwgvxxwwwvhwwvwwwfvvwgwwxwhxxvvwwxxwhwwfwfgfwvggfvxxwwwwwwgfwwgfUvfeefffwwwvvwwwgwvgxxwwfwxwgwwgwgfwwfvvfWffUVffVgwwwxwwgwxwwvwwwxwfVWfwwfwfgffwwwwfwgvwwwwugfVgwvevgfVVVwgwwggwwwvwwwfggffffwwwwvwvgVfvweewwgwgfvwfffgwvvffVVfVVffggUwwwgvwwwwwwvwfwxwwwwgwwwwwwwwfgvwwfwgwwgwfvwvwgggwwgvwwwfgwggwwxvwwwwwgvfwwfvwvvvgvgfwvgfeuwwgvvvwwfWfefggfeVggffffggwwxgWwxwvwwvwwggfgwwufVevggvvwwwggfxvvevVufwggffwwfgggvfvwfwwwffffvfvfhgweWvfwvVuffgUVfuwgwgfwwffVevffUfffwffgvvwwhwwxwxvwwgxwwwgwwxwfvfwexggvvwfhwgwxwgxwffwfwwwgvwwwfuwgfVVvwggxgwwgwvwwgfwfVvgvveewwvgffxwwxwwfgffgWveefeUegffUVedvwwgwgvwwwvvgwgwvvwwwgUvwgfUWwuwVewwfveVvgVfffvefUWfegvfgwwwgWwwwfeeggfFfvTvvgvwfuwgfVwffgVfwvwfuWVffgUEeeTfWwfefeUVfvwwxhwgwgvxwwwwfhfwwwvgvwvwgwvfwfvhwgggxwvvxwvwWeUuefwgwwvfeVvwxwfffgfvwxxwgffvgffgffgfvvwggvwwfvgwgvvufvWvfffUvwG4cvwvwwgxvfhwfwgvgvgwvwwwgfUwgfVwwfwvweUxwwvgfVvvwfVwwgVvuwwwvvfxwwgUDwgfVuwgvgwfffUuggfuvwvugvvUUwwggVeVuwfeVewwfVfuwwxhwwwfvwgfxxfgvfwvwfffffgvgwwwfgvwvwwwwwfwwhfVfwfVuwwgvvwhwwfUwwgwwxxgfgxwffwwwfeWgwvwgwgwwwwwfwffVuevfVUswggVgefwxwfwwwwwxwwwwvwgwguwwfFwvggwggwwxgwfvVwfwgxwwvfxwwwggwwWgeTfffFwufvvvvwwfwWvfwvffVFwwfftgVfU5ggwvegVgefwvuxfwgfwvewgWwwwxxxxwgfgwvgwwwxwgxwwgVxwvugwvwWwgvfFxwxvxvwgvvhwgwvxxgwgwugwvggwwgwwwwffvwwUevfwvgDEEevVffgfwvwwgwffgwwwwwxxxwfuwuwffvwwxvgvwwvggvdvWUfWeVwvwwwgxwwwvvwVwvWVfUvwfffgvfgvgeffffffuggVeeuwwwgwgfdUTVdfVVfugfvfgwwwwwfgvgwwwvxxwgwuxwwfwwvwvgfvwwxwgxwwxfgfxwggvfvwfgvVwgfuwwxgwwgwwffwfvvwxwwvgxfUvUfwvgwwguwwwxxwhwvfwvVvffegWuvgfUffVwwgxxvwwgwvgvvgugWefwwfwvWgwVwgvguffvgwegwfwfgvffvVwfwxwgvgwgwgvvwfffffwwWvvwvwwvffvffgUgggVegfegvwfgggffffggfgffwhvwwwwxgxxgxwwwgwwgxgwwgwwwwfvfxvwgUwwwgvwwwghggwwxwwwvgxvwwwfugvugvwwfffvgvxvwgwwwvwfggvvwggfUfwfWVffdUfeegUEdfvvfVwvxVwvwfwWfwfwvwxweVfvwgfffwwxgWVvWeVfgwwwfgegwgWgffVfuwwwgfgwgUVfvvgffugvwvveVgvwwegfvvvvWfvFeUVVwvvfVuwwffWVufVvvgvgvVwgfwWwwvwxxgvwevgggwvwfwvgwxxwwvfgwwwgwwVgfVfwvwvgewWWwgfgwvvvgfvVfwwuvfUwvfvvvxxvgwvghwwxwfeVwvwfwgfwwfGfVuugucUffwU5gfUgxwwwgwwvgwwvvwwffuwffxwWvfwwwwvhxgfwdVfwgvggvvdehvgWwwvwwgtVfggffwfVutevvfVggffwww6VUvwWetgVFffVUwwwfEwffgwVxwvwvwvvgwfwxwwwwwwwxwvgvggwwggwwufxvggVwgfvgwgwgwfwwwvgfvvwfwxwwwgeugvwwwwgGVfWvfgwwvwxWgwgvwffvwgwvwwxgvwwggfvgvxxwwxxwwwxwwwwwxwwxxxxwwwwxxwxwwwwwwwwgfwwgwxwwwgvxwgvfvgvwxwwwwwwgwwwwffggfwwwwwwwwggwwgvwwgfxxxwxxwxxxxwwwxwxwwwwwxwwwwwfxxxwxwwxwwwwwwxwwggwwwwxwwwwwvvwwgwefvgvfggWevwwwDUvwvgwwfwgxggvgeffwffwxxwgwxffvwwwgwwwgwwxfwwwxxfgufwwwwwwgeffgWefwfgUUvwffwgxgwfgeffwfgvwgwfvvwgwwwgvwxvgwfwufggxwxwxwgxgffwwvwwxgwwwxwwgewwwvvwvwfvgwwwxgvxxxxgvfwffvwwgvxwwgvggvwhwWffwxhwwfvwvffvvWevxwwWWfgvWgVfgfgvwxvfwwgvfwwwwfwxxwgwwxwxwxwwXevwgwwwxxgxwvwvVevwwwVVfgwVgWfwvwfwwfvgvgwwwwwvvvwxewewgfvfvwwvgvVfgfggwxxwgfwxwvwvwwwwwxfwWefwgwxwwxgwhvxwwxwwwwwvgwxwxwhwwwwwwxfgxvxwxfwwvvgwwwwxwxxgvffgwvvvWVfffvffvvfwggvfvwxwgggwffwwwwwghfwwwwvvvvgwwvvwwggwwxwvwvvgwwvvwwwgwwwwvvvgfgfWVveefffvghhgwvgvvvwwwwwveegwvxwvxwffwwfvwffgwfxwwwwghwwvgvwffvgvvvvwwfwwwwxwfvwwgwwfvgwvwwwwwwwwhfwgwwwwxwxvwxwhwwxgwwxxwxwwxhgwfwwwxxwwwwxueUeffVfgfvweUfefWefvvwwfwwwwxfvwgvWwvwxwxwfwfwgvwwxvwwwxvwwxvwgfwwwgvwwxxwwwhffvffvwVeVVfefvgfguvwvwwVfgwvwwWfwffgvwwwwUefvfvvgfvgwwwwwwwgvxwfwwwgvwwwwvwwvwwwwfwgvwgwWgwwxwwwxwggvwwgwhgwwwxwxwwhwwvwwwvwwwxxfvwvwwwwwxwwwxxhggvgfwffvwwgVeuvgffwfwgwwwxwggwwwwwwwwxxwgfvxwwwwwgwwwxxxxxxgvgvwvvvxwwxwwwwgvffvgwfVVuwwffwfwvggggfvggwwgfvwffwwwwgvwffvgvvgwwwfwwvwwwwggfwxwwwwwgvgwwxwgwwwggvgxxwxwwwwwvvxggwwgfvwgwfgwwxhwvgwvfgwwxvvVVfgfgggffgwvfggfvfwVvfVgwffgvfwwWVvfwvuevwvvgVwgwuvgfgwwvggwgwgwwvfwvWwvwwevwgWggggffvgffffWVfvwveevgwvgwggvwwwgfvvvvfgwfwwxwwwwgWgwwuvwwwvvggfuhgggvgwffwwwvvfvvwwwxvvxfggvwwwwwgxhgwvvvfwvwwVwwuvxwgwwwwxgwvfgwgvvwxgvgxwxwxxxxwwxwwwwxwwxeuvgwwfffgvfWwvffwwvugvvgvWwfhwvvWwwwwghwwxwgwwvwvwgfvxwgxwfwxwvwwwxwxxwwwfffgffgwuvfwwvugwgwwxwwwgwwwwvwggwfwvgwwvwvvgvgwvwvvgxgwgwxwgxwvwvwfgfvwwwxwgxwvwwxwwxwxgwxfxxwvxgwvwfxxwwwwwwxxghwxwxeEVffwWwWeeVudfWffwwgwgffwgwvgefvfvfwwxxwwwwwwwgwwxhgwvggwwwvvgwgwggxgwwgxwhggwVfeeeffVVugwgwwvuggvgwwwwfwXffvufvvvwxVgvwwwwwwwfwwwwxhfvwwwwwwwwwxWffwvgvwwvwwgvwwggwxwggwwxxgwwwwwwwwwxwwxwwxwxxwwvfvwvvvvwwwxwwwwvxwwxwwxvwwwwffggfwwwxgfvvvfgwwwwwvvwxvvwwwxxxwxwwwwxwgfvwwwwwxwwxwwwwwwwwwffggfwwwgfggvfgwwwxwwwwwwwxwwfwwwwwwwwxwfxvggwwxwwvggxxwwwxwxwwxxgfvwwwwxwxxxwwwwwwwwwwxwxxwwwxxxwwxwxwwwwwwxwwxfVeeVWfvwFFewgwdTffvwwgfgvggfwggwfwwuvwwgffwvwfvwwgwwhvvgfwVgfgvvvwvwwwgvfvfwwwXfwffVVegggeefeuwwwvfgfwwfgfvwfvgwvgfggfwwfvfwwwwfgffwvwwwxgfgwwfwwgvwwwwwfvgwwfwwgwvwwwgwvvwwwwgwhwwggwwwvxwgvwxwwxwwwwwwghfwgwwwfgvhvwwwxhwwgwxwvwwwwwxxwfwffvwggfgeugeefgffvvffwgfvgfvwvwwwwwwwggvwfvwggfgvvvgfwfwfvvgwwgwwwwvwwwwwwwwgwggvgffffvVVggvwfgwvfvggwwwwwvffgwfffvgwVVwwwvfwxwvwwwwgwvvwwgfggwwvwwgwwwvvwwggggwwvggwwwwvxwwwwwwwwwwwwwgfhxvxwwwwvvvggwwxwxwwwwwxwwxfveffffgWWfuWVevggUvwwgvwwgggvwvvwwwgvxfgwwvvwxwfwwwxffwwfvwwwwgwgvvwvwxvwwwgvvgfVfUgffvggfvwwgffvwwfwgwvvwvguVgwvffgwwvgwgvwvggvwvwwggwwwwwwwfwvggwgvvgwwwwwwwwwwwgxwwwxvfwwwwwxwxgwvvwxxwwwwwgfwwwwwwwxwwxwgxgwgwwxwwxgWTffVvvvgeVeUfffVVgwwvwffwgufgfvfvvgwgxgwwgxwgwgwwwwufwgwvwfwggfwwgvwwgwvwwxwvwWUgfUgfdeVwgwvwgwwwfwvvWwxvvefWgvuwwgggffwwwwwggwgxwwwwwwwwvwwwgwxvwgggwwhxwvgwgwgwwgvwwwwxwwwwwxwwgxwwwwwxwwgvvwgwwwvxwxwxwwvfwxwxxxuuefffgGfvgdwwffvwwwwwuhxVvghhWvwwvwwwxfwvfffvwwwwwxhfwhFfffdwwfwvwwwwgufwvwwwgwwXvwWvgwwwwwvwwwwwwwwwwwhgwwvwwxwxffvwwfwvgvwwhXwwWwwwwxwXfffxwwwfwwwxwhuggfegfffVUuwfwfUwgwffuwffffuwgwwfwffvffvxxwwxwwvwgwVwwvwfggwwwwvgxwwwwwwxwfwvfgWEtwwwfUwgwggfffuwfwwfggfwgvfgvgfgvuwvwwggwwwwgghwvgfwwwxwgwwfwwfgvgvwwxwxwwwxwgwwwwwwgvwgvgvffxxxxxxwwwgvwvffugvgvfwwvgxwwxxxggwwggwvfwwwwwvwwwwggwwggwgvwwfwwwxxvgwxxwwwwhwvgwgwwwwwwxwxxwwwhgwxvvwwwxwgvwwwwggfvxvfvwxgwwgffwwwwwwwxxwwwwwxxwwvvwwgwxxggwgvwwwwgwxwwwwxxwhxgffwwwxxxxwwxwgvxwwwwwwxxxwXeeffUfvwTeffefffwvgwwgeewevvgwwwwxwwwxfvvgvwWwwwxeffwvwwwwwgwwwwwxxxxxxvfwwetggvwgwvgfwwwefggvvwwwxwxUfffggwwgVgwgwwwwvwxxwxxwwvvgWgwwwxfwfvwgvvwxhxwwwwxxxwxxxVgvvxhwwwxXwwxwxwwwwxuggfvgwwwwwwwwwwxxxwxxxwuvvfgWUeggwwfffgWUvvuwwufwxwvgwwwvgffwwvhwwgwugWewvvvwwgfhgwvghfwvwwwwfwvvhVguVewgfffvwgUuwewWWvwwwuVgffuUvwvwxWfwWwwgwfgvffVwwugwvvwXgwgxwvwwVuwfvwhwwxwvwwfvwggfwwfhwvfwhVwxwxhfwwxWvgeUvwwgwwxxwwwggxwvxwfgfwwvgwxwwhggVVvugggvfffffgfVVvwfgeWfwwwgfvvffVVvvvgxvvvevvgfggwwwwwwwvvwgfgfvxvvgggvfwwwhwvfggwvvfvvgffffvvvWwwvvvggVfgwwwwxwwvvuvgvffwwwwwfgfwvwguwwWwevwvvgVgwwguvgwwwuwwggggvwvvvvgvwvwfugwwWvwvvwwgggwwxgfgwvwwwwwxvwwxwxvvxxwwwwwhvfwgwwwxwhggwwxvfefvffvwfgwfffUeffvwwwfwwwwwwvggvfgvgxwwwwvwwvwfgxwwwwgvgwwwvvwwwwgwvwwgwwwhfvvvggwUVeuefUvwwwvgwvfwvffgwwvgvvggwfgvxvuegvwwvgfvwggwwwxwwxvggvwfwwwwvwxwvwvvffvgwgwfvwwwwwwwxwwwwxwvfwvhxgwwwwwxwwwvwvwwwwwwxfvwwwwgwwwwxvgfgvfggfUvgwveVvwwgWvvVfxwfwxwwgvfwwgwxvgvxwwvwwvgwgxxxwxwfUgwgwxxxvwxfgxfUwgveVwwwfWfvVwwgvwfvwfwgwwwgvfwxggffgevvwfwgwwVvwVgvgwxwwgwwxwgwwxwxwwfUgwwwxwwwwvwwwxxwxwxwwvwgwwxwwgwwwxwgvvxwwwxxhgvwwvvwwxxxxUVfffgvwgfgwewwtvgfwwwWVvgvwuwwvgwwwxWgwwvvvwxhvwhwwxxfvwwwxhgwxwxwxhUvwfewfTffeffwfwwgvxxewvvvvwwxwXuggggwgwxefvgwwwwwfhwwwxgVwwfwwvgwxwXvwwwvxffvwwxwwwwwwxxhuwgxxwwufwwxxxwwxxxWgwwxwwwwwffwvwwxwwwxwgggwwVfwwvvwgefvxgvwwhxxxvwwwwwwheggxvwgwwxgxwfvwwwwwwwwVfwwvwheffwwgvwwuvwWfUfwwffxxVggwwgvwWvvVewhwfwwxwwwwxvguvfwgxgwxwxgwwgfwwwwwwWwwxwXwwVewwvwwwwwxvwwxwxxgwwxwwwwxVfeVfVgfwVfefvveUVVvwwgfwgvgwgfwvvgfWwwwwvfwvwfvgwwwwwwvwgwwvvwwwvgfwwwxgvwvwvwxWWvgvFVdwwvdEffvwwgffggwwggvgvgfgvfgvfffwggwgwwwvvgfgvwwwwxgfwfvwvgvwwwfvggwfvfggfvgwgwwwgWvvfwwhwgfwvwwwwwwwxwwwwwwvhfwfwwgwvfghgwwwwwvwwxgwwwwwxWGGVeefwgecUVfgWggffgggGGwwvwwuwgwwffwwwuuwGfvWwwvfwwWwwwwWfuwwgwwwwwwggwxgvwwfevweegWvv6VeffvgvVvwgwwgwwwwxwdgfdfffvwfgfvwwxwffggwwxtuwWvgVwwfgxwwgwwwwggwxWwwwwxwweVwwwwvvwdfwtwwvvwwhwfwwwwwvvxwwxwuwwgwwwXfuwwwggxwvwwwwhfwweueVeffgffeVVeVvwffvfvwwvwfwwfgwgwxgwuwxwwwwwwfvxvgvwwwvwvwggWwwvwwgvgwwwwxwwxhfvfUVgfffUvwfVuwffegVvwwwwfwvwwWeVevfffwvwfwfgvwfvwvwwwwwwwwhwgwwfwgxxwvwwwwfxwvwwfvwwwwvxxwwwwxwgfxhggxwwwxwwxxxwxwgwwgfwvwwgxwwwwxwgxwwwwwwwxwwwgvUUxwwggfvfvvvUfVxwwxxwwwwwwxwwwwwvwffffffgwwwxwxwwgwvgfvwgvvwwwfwgwwwvfvwgwwwwgvffwwwgfvvgweegffffvvwhvwwhvvvffwgvwfwVfffvvfvxxwxwxwwwwvvwhhxwxxhwwxwggwwwwwwwvwwfwwwwwvwwgwwwwwgwgxgffffwwfwwwwwwwxwwwwwgwwvvwfvxvgwwfwwxwgfwwfFTuwwwffwffffgwwwgwvwxwxhwwxwwwvfwfvgvgggwwwwwwwwvvWefwwwgwwgwwwxfWewwwwvwwwWefwwwwUfvfgFTevfffvwwwfwUffgwfvfwfggfffvvgfgvwwxwfwwwwwwxwwxwxhvwgwwwxhwwxgvwwwwwxwfvggwwgvggwgggvgvghfghgwwwwwxUfwggwwxvwwgxwhhwvwWvUVhwfffvfwfgVeUhwwxwwwwxwxgWuvfgggvufwwxwwwwwwwfwvwfwxgvfvvvhwWwffwwxfevwwwwfwvvgvfWeufffgfeewfwwhgggwffvgVfewwvwvgffVfwwgwvwxwxwuwwwxwwwwwxxxxxwwvwvxwxxWvwfgxwwwgwwvggggeuwwwvwvwvwwwwwwwwgxxxxwxvxwwgwvggwvwwxwxwxvvvweVVvwwwgTTgwWVvvwvffgfvwwxwwwwxxvvfeefgGEevwggwwwwwgggVgvwwwwwxwwwxhwfVvwwwgeewwgfwvvgffffeefgfffefwffvwvwvvwfggfwevWVvvwgfvfwwxwxvvwwXVvwwwwwwwwwxxwggwvwwwxwwxxwwwxvwwwwgWVvvwggwwwwfvwwwwwvvwvwwwxwwwwwvvwwwfgwwwwwwwwwwgwwgWgUVvxggffvwfvgwvwwwgxxxwwwwxwxwwwgggvwgvfgvfwwvhvvxwwxwwwvfgvgwwwwxwvwxgwffvwwwgwfgvgvvwuggfVUeeVffgugufWggewvVgfffwwwvffggugwvwgvwxgwwxxxxwxwwwvwxxxwvgwwwwgxwvgwwwvgvgwvgxwwwgffwwgwwwwgwwwwhwvgxvvwwwgxwvuwwwDVefvvwTTevgfwgVuvwvwvwwwwwxwwwwxhgwweeVewUfvWgggwwwwwxegffffvgwwwwwwwwwweffVwugfeegvgvvfvWfvwdTVfUevfgwgVevwvvgffwEEeffefvweVuvWgwwwvfwgvwgwfwggwgWwfwfwgwfwfvvwwvhgfgwhfffwwvwwwefUfvfggfvgxwvwhwwvwvfgwwwxxwvfffgfvwwwxwwwwwwhwwwvfvdFfgfwWgwvvWFfEvwwxvhxwwwvgfuXwwwvggvWwwgwwwxwwwwvgVwWwwwgvgxvvwefwffwwwwwwVggfGfvgwvuWwwfffwwfwgWwVdfwwwgwfvgVwVfvgfvxhxxxwwvgxwxwwxwwwgwwggxxwxxwxgvwVxwwwvfggxwwwwwwwwwxwvvggvvwfuxwxwfwwgwwvwwxxwwwwweVfffVVffuefvffVUfvVfwwffggggwvvwfwvwwwhvvwuwgVffwwfwgwvfvgfwvvwfwgwhwxhgwfwgwxxwXVffgeVffwwVVfvvwwgufvuvgVfegwvwWgvWeVfvvvwfffgwwwggffgvwwwwgffwvvffwgvwwxggvgvggwwvwvwfxgxwvwwwxXvvfeffwvwwfgvxvwxfwvfwwxwwwgvwfwvugvvwvxwwvxgwwxwgVWgwVfeUwfvgUfffveVfwfggwwwwxvwxwxxwwwgVgfwwvvwvwwwwwwwhwxeefwwxwvwxgWffvfwvffvwxvggwweUfgfwfvgefwfwUffuvWgfvwgevfvfvwffvwwwwwwvvwwwwwxvgwwwwxwwwxxwwfvwwxwwwxfvfvwggvgwwvwvvgvwvwwwwwwgvvvxwwxgwwhwwgwwxwvwwgvVUuggvxgwvwgUvwvwxvwxwvwwxxgwvggvwwwfwwvvvwffgwwhwwwxfwwvxwxxwvwwwffvxfvwgvwwhfvwwgfffwffvfWUvgvvgfggfVewffwfwwwwvwfvgvvwvwwvwwwwxwwxfwwwwwwwwwxxwxxwxxxwxvfwwwgfwgfwwxgwfwxwwwwwvwwgvwwfvwwwwwxwwwxwwwxwgwxwhhvvgwvvffgWUewvwUUggwwvwwvgwgwwwwvwwxvvvWUuwwgUUggwwvvggvfvvfwgwwwhgvwwwvxvwwvwxgwffvgffwwvffggwwvfgfvwwwffwwggvwgggvfffvgwffxwwgvggfwfwwwwgwgfvwwffhwvvwwhwwgwhwhghgwggwwwwwwxwwffvvwggwwwgwwvwvxgwwfwgwwgwwwwwvvfwgwxwvwhwffvvgUfUfefffWveefugvgwvwwgwwwwwwwwxxxwwgvffggfvwwwwgfvwVegwwwwvvwvwwwwvwgwxwhVwfvfwwvgfvewwwwwWeVfufvfffvgwfWffVgvVwvwvvevwwvfgffwwwwfwhwwgwwwwwwwxxxwwwgvwxxvwvwwxwwxwggfvwgwwwwfwwwwwwwwwwwwwwgwwgwwwvwwxvxgwgxvwxwwxwxwwxwewUEuufvvWvwwwfgwgwwwwxxwxxuvwwwgwwwfwwwgwwwwwwwwwxwfVwwgwxwxxwwfUwwwgfvwwwwgwwvVEuggvfUwgwvWggVwwwgvvwvffwfwvWwwgwwwvWxwxwwwwxwwxxwxwxxwfwgwxxxwwfwxwgvwwwgwwwwWwwwxwhwwwwgVvwwvwwwwwwwgvwwwxwxxVffvgVfwWefwfwwvvwxwxhfwxggwvwwvxxwhfwwfwwvwwwwwhvfgwvxwwwwwwwxwwwxxhUfwgevwewwufvwwxWfwfvwwfvvwwwwXufVffvwwwvvvvwwwwgwwwgwwhfwwfwwvwwhwwgwvwxvwwxgwxhvwgfwwxwvwwwwxwwwwxxxhgwwxwwwwwwwwvwwwxwxwwgwwfgwgvvfgvvwxwwwxwgxxxwwvvwwvwwwwggvxwhwwvwxwfwwwvwxgvgwwwwwwxwvvggwvfwwggwwggwvwwwwgwvggwxfwwwxwwwxwxvwwxwxywwwwwxwfwwxwxwwggwwxxxwwwwvwxxwwwwxwfwwgGWfffUUdvwveUfwgwgfwwgwwvwwwwwxwgefUwwwfgwwwwfvgfvwvvfggwgwwxwwwwwvwwwxGWwfgUVdwwwvVvwgUeUvwwgVvgvwwggWVfUfvfgfwWwxxwwwwwwwwwwxggvfwwwgwwwwvgwwwvvfhgwwwwxwwwwwhwgfffwfwvgwwwwgwwwwxwhvfvvvwwvvgggwxwwwwvwwwwxxwxwhfvgwefvwefggvwgwwwwwwwufwvvwgwgwwwxVefgvwgwwfwwxxewwvwwwwwwgwwwwwwwwwefwwevwfvvgwwwwwweeffwvgvggwwwefvegfwwvwgwwxwwwwwwwwwfvwfwgwwxfwwvwwwxwxwwxxVwgvfgwvvwgwwxwwxwwxxwxxvwfwwxwvwxwxwxxwxwfvggFeVfUeeUfggwwvwffeuwwwvwwxwwxxxwXffFfvVffvgwgwffgufwwggvvwxwgwwwwwwvwWfgffffUvgfgvfwvwvFVeVvVegwvwwwwWVEduffWfvfvgvgffeuwvgwvwvvxwwwggvvwwvvfxwvfgvwwvgwwwwvvvwhwvfwgxxxhefufgffwgvfvgwwwvwwwxwwwxvfwfgvfwwwwvgwwxwxxwwwwwwhxwwwgWUUfvvwvfwfgfVVUvhxwwwwxxwwvgfvwfvwwffgffxxxwwwwwvfwwwwwfwvwwwvwfwwgWVewwwwwwvwwgefgfvvfufffgfeVgVUxxwwwwfvwVvwwgfggfffwgfVVUggwwvxwwgwffxxwwwwxwwwgvwxxvwgggwwgwwgvwgwxwgvwggwfwwwwffwgxxwwwwwxxwfvwwxwwwwwwwwvwwvfffvWFeUvegvfgwUUffVfevffwfwvxgwvvwggwwWffVuggfeevfggwvvgfgvwgwgvfgvwwgfvvfwwwgwfVeegfWvffweUfegwvgUgfufwTUVefwfgwvWfvffvfweefvgvfWDevVVfefwwwgwVWwfvVwVwggwuwwwgwuwuevwuwxwXvfvgfwWwguvgfWfVvwwffewgwwWfewgwwwgvwgxefgwgwvvhfwwggwwwxggfvgwxgwgwwfVVgvvgeffwwVevgwgwwwxwxwwxwwwgvvgwxffwwwxwwxwwxgwwgwwwwwxvwwxwgWVvwwwwufgxxVehvvvgueVggVUwgvggvwwgfwwwXgwVUwgvffwwvgfwwwwxvwvwwwwwwwxxwxwxwgwwwwwwwgwwwwgvvxxhwvffwgvfgwwwvvwxwwgvvwwwwwxhwwxvwxwggwwxwxwvfvwwUdEvggvEVevfWVwuwvwvwwwxggwwwxwwwffuvggVvvfvwwwwwwwfwgEvvfvwxuwwhvuWvwwwVgfvgffwwgVffeffdWvfvfeguffwgvvgwwdVfVvvvwVvuwvvvwxwwwgwvvgwfwwwwwwwwwwxxxwgwWwvwwwwvwwxvgwwgwvwwwfVffwvwVvvfvwvwwxwggvxwwwwwxgwwxvvggvwgwWwwwhgwwVVfwvgufgwwffwxwggxwwxxxwwxxvvgewfwwfgwwwgwwwhwwwgwwwwwxwwwwgVwgvvwhvwfxvwwxxevvWvfUgwWgwwwVgvwwwgwwWgfgWwwvffwxwwwwwxwvhuwgwvgwwwxxwgxwwgxxxwwfwwvxvxxXgvVgwxvgwwwwwvxxvwvwwwxwxxwwxwgvwwwwwwwxwwwvvwwWdeveWgvVVUwvffeggvvwwwxwgwwxwXwwVvfwwgggxwufwwwwwxwgvwvwwwwwxxxwhdvffgggGVUvwgfvwwGgfWeVEvwvfvggwdUvwwvgwwvvfffdvWugxhwfwwgwwwfvfwwwhxwvgvwxwxwvwggvwwwxgwxvwuwwwwvwvweUuggvwxxxvgxwwfggwwwxxxvWwwfwvwxwxwgwwe7eevugwdfvwwUdVFgwgwwwwwwwwxwwwxwwvuffeWfwweUwfwgwwwwxWvwxufwgwwwxxWfggfGVvwvfwufgvvfTgWwvcTfvgFgveUwwvGffvwW5eetVwfffwfwffgWggwVgggvwgggvffvgwxxwvfgvwgwgvvvfgvvvwgfgxffevwXfewgfwvvfwwwvVwwvwwwwgVvwwwxefexvwxwwwwxwfvuxvxefufVffVeefffffefvvvvggvvwfwwxfwwwgwwxgvffvgffgvgvgwwvwgfUfwgwvvwfgxxgwvwwwwXfvgeVgfvwgvwwwuwhfVfVvwwfffgvwvffgVgfgVwwfvfvwwwwgfuwwvvggwwgvwggwgwxxgvwvwfvgwwwwwvxxxgwwwwgxxhggfwggfxwwwwfwwwwgvhwwwxgwgvfxwgwwhwvxvgwxwxvwxxXgfgwUEvfUevVTuFVvffwwwgfwggwwuxwwwwwxeuwGfvVfgfwwwfvvfvfvwwwXvguvwwwewwwwwwxwVVwwvvwgvvfwggvwwwUdeVffVgffUwgwEUfdeffvwwWfffUgfvfewgvwwwwfvwgvgfwgwgxwgwwvwxwwgwwwwwgwwxwxTffevffvwwWwUfwxwwvfwwwxwwweggvwwwWvwwxwwwwggvwwvwxfwwwxxwwwgwhwwwwwgvxwfwVeVuwxgvwwwxwxwvwwfgvgwgxwwwggfxwwwwwwfffxwwwffWfffVffeUhwwwxgvxwgwfVVvgwxxwwxggwwwxwxfeewgfgvfffvfgfewgwwhwvwggwwwwwwwvvxwwwgffvwwwwvgvgUxxwwvxxwwwwwgvwhvvwwwwfvwvvvwggfwxwwfwwwffwwvVVffvwuffwfggwfvwwgVevwewfvvfwwwWgvfeffgfvfwhvvxwwvwfvfvwgfvwgfvvfgxxuwvfgeVVvvwgvfvggffxwwUewwfwfxxwxwwwwwwwxgfvwgwgwgvwwwfffffwvwwwxxwwxwggxwgffwwgfvwgwwvfVwwvvfvgVUUwvwgwhvvxwwwxwwwvvvwwwgxwhwxwwgvfvwwwvxvggfvwhugfffevvxwvgfvwgfvwgxwVVwgvVVfuwwwwvgwfggwVfeffvxwwfwwvvwwwgwvwwxwwwwwgeeffvwggwWffuwwgvfxvwwVVwvgvWffwwwwxxwwwwwgvwxvwvwggvvwgfgggwgfgwgvxxxvxwwwwwwwvwwgwwwwwggvgfgwwxwgffwwgwxwxwhwwwxwwwxxwxwxwggvvwwxvvgwwvgwvvwvwfvvvwwfwwgvUVgwwvxwWgWveVfgVUUwgffwgwfgeeeVVVgffxwgfwwvffwggffffgwvwgvgfeVwwVUVffVfefUfvvgwvguWgevWvvfvwWvWwwwxwwggwwwvwvwfgfvxwfwfvewwwggvvVfgwwwwvwwgwvvfwggfgwvgwwggwfxveUgfgffeegwgvgwvwfvwxwwwwwwwgwvggfgxwwvgvwwwwggwwvwwxgwfeVuvwwgwegvgwgwwvfvvwgwvweVgeVgffwfWwvwwwwwwfvgvwWwuggwxwwwwwwwgwvwxwwwvwvgxwfffwvgwfvvgxwhxgxwwwgvvgfefWfevvwwxwwwgwvwwwxxgwvvghwWfuwwfxgfvgxwwxwwwwwwwwwwwwwxggwgwwvgwfgffvfwWgvgwwgwwvwxxwxvgwgfvwwxxgwvwwwwxwxvwvgwwwvgwwwxxwgfvgwwwwwgvwwwwxggvgxfgwgwgWVfwgfgvvfghggfwvgvwwwgwvgwwwvvwxvfwffwvgwwwggwwvgffefVwwwwvwwwwffhgvWUwwfggfgwxwwvwwggwwvwvfxwwwvfwwfffggvfwgwvwwvvgwxgwvwwfgvffgvfxwgvgwvwgffefUwwxwwwfgxwxwgwxwgwwwgggwvfwxvwwwfwwwwwwffwvxwxwfwwfwwgggvfvffvwwwwwgwfwfVtggvwfffgwVefVggEVfvgegfUwfFwgfftWwvfgwwwwwfwvVgvgwfwvffVgewgvwgFffguvgeFfvVgvvwvWfexwwffffgffvwvwvfwvwfvwggvWgvfuvVfgwxwwwwwgwgfvfwvwgvwguhwwxwwgvvgvgFvwwfTWwgwwwwwvgvgvwwvffvwwwwwwvWwwxgwwxxwwwvfgwgvwfwfGffvfwwgFfewfwgwxwwvgfgwvwfwfvfVwwwwgWfehwvvWwxfdVvwwgggwegwufFvWvufwgwvxxwvgxwvvvvgWfeweWgvwgwwugwwfeVwvvgwvgvWfuhwvgwxfeVxwwxxwwxwwvgwwfwvggvwwwvgwwuvwvgwhxwvxvgwwvwvwggvuwvgwwgxwvwvggufwvwwwwxwxvwhwxxwxxvvwwxwhwxwgwgwvggvwwwvwxwWwxwgwggvvwhwfgfvvgffveVtff7UcgvfgwghffwvgvfffgffvgxwffwffVfewvgxgWfefgffww7UcfffgVfeGvvvwwfwvgwFveVfvfWfefvfffwwffgfffwwgfvvffvgfvvffffvwwgfffgvwxwwwguWvghfvwggwvWfuvguWvdgWfuwwfgffvgxgfgvgwgfffwwfvfgvffvwxgwvwgxhfvffvgffvffwwvvggwffgvvwwwwwwgvffhwfVevwwgvvvwgVUwwfUVvwgfggeugffgfgfffUwwfvwwvgxwwgvvhwfVugffeugfxgvggffUgffwwwwfhwfwwwwfUwwfVVxwxwwwwwwwwwfvwggfwfwggwfwgfwggwwwwwvwxwwwwwfwgvgfvwgffvxwxxhgwwfvwgwwwvgwwwwwxgwwwwxwwwvwwwwwgwxwvvvvvfvgvwwwwwvxxwwgvwwwvwfvfgxwwwfgfgfgfvvffgfvgwwvgfgfwgvfvvvwgvgwxxwwwxwhvwgfgffwwwwwwvxwxfvwgwwwwwwgwfgfwwwfffvvwwwvggwvvwwxwwwwggggfwwvwwwwxgvvwwwxwwwwxxwwwwwwwwwwwgffgwvvwvvvxgvvwwwwgwwxwggwwwwwxxfxwwxwgwwxwwvgvwvwwwwwwwwwxxvffwwxxxvweFfwwgvffvgfvvWwgeedwvVWfugVteVwWvvvvxwvwwvwgwwvfewffwfwVVfvwfwggVdguefwvegvwwgvvVvwfvwgvfgffwwvvxwvwwwwwwwwffxgvwvvewwfwwgwvxwwvwvvxggxguxgwwwwvwwfEwvvgvgwwfUwggvfwwwwwwwwgwxwwxwwgVwwwwwgwvxxwwxwwwuvvUEwwwgwwfwwwwwuWwwwwvwxwwwwvvgwvwwfwfUggfgfffvgfvwgfgwwgffwwwgvwwgxwfwwgwwgwwwwffuwwfUxwfwwwgvwgvwwwwvvwwvwgvwffggVwgfgvwgfwwfwwwxwwwwgVuwfffxwgwwwwwwwvwwwwwwvwwxfwwfwgvgxwvfgvwwwfxwwwwwWuwwvgwwwwwwgvwfUxwxwwwwwwwxwwwvfwgwwfxwwfWwwxwwgwgwvxwwwgxevwgwwfggvgguwgvfwufvwgvfwewwvvfxgwwgxwwxwwwxvuvffwuwwhgwvgxwwvgxwwxwwwgggwfggvvgwwwgwwwxwwgvVwwvwwghwvfwwxwgxwwxxvxxwwwgvwgggvwgxwvgwggwwwvwgxwvfwxxwwgxwwwvwwWgvwvgxhhwwwvwwhhwxxwwWegvvvwwWufwufWwwvgwwwwwfgvgefWggwwwxwgvwxwwwwwvwxwHVeevfwwgvwgfuwwggwwhxwxxgvwwVfgfuffgwvwvfwfwwgwwwwvxwXgffgfwwgvwgfdwvwwwvgxxxxggwgvggwwwwxxgfeevgwgwvwVfewuxwvwwfwwwxhwvgwgwwwwwvxwwwwxxxXfVvgwvwwgxwwxwWwvwxvvwwxwwhfwwVvwgVfgVefgvvfwgvfVwvvgvffuwwvfgwWgvVwwwvxxwfWwfvffvVgfugeVfufhgvfggffvwgvwwwfffgUuxgvfwwvgVwhwwwgxwvwgwgfggvgfgfuvvxwvwgwvwgxgwgwwgxxwwwgvfvwfgfufeUVuwfxwhwfwfgfVwvWwfgwwwwwwxwxwwxxwgxwxwwgvwvffuwvffufgeVvxvwvwggwvwvwwvvgVwwfghgvtUfvwWfwwwghwwVUfVuwgefuwwwwwvffxfgwwwWggWTDffeefwfuwxxxwfVfuwwwghxxgtffwffvwxxwwwwwwwwwxwwxXhvWfffwwwvhwxwxxfwwwvwxwxvvgxwgwwWwgVfUwgeefggvxwwxggfVfuwwwwgxwggfwwwvxxxvwwxfUxwvvweVgvfvvwwwxwvgxwvgwwwhegfguwwwfUfuvwvvgwwwwgfgwgufgvfwvwwfgwwwfvgvwwwwwwwwVfUvwWfeggwvgwgwwgvgwwwwwvvwgfefvwveggvgwwwVfgvwwxhwxffUfvevvwwvwwvgxwwwgwwxwwvvwfwwwxxwgwwVffvgVfuwwgvgwVwwvgxwwwwwvwgvwvwvwwwgwxwxxwwegVfevwfvuwwgggwwwwvwwwwxxxwxwwufvwvevwgwggwvwWEfgfvuwguxwwwwgvgffuwfwwwfefwwvvfWWwwwwwwfwwwvwwVvgfwffwvgUVtwvxvUhxwxwwvvgDvwfxhvxxwwvwwwvfwwwxWuwwvwwwwwwwvVwwwgvfvgvwxfwgvwwwgvvWuwwwwfwgvwwwUvvffgvwvVfFtwvwwxwwxvwwfwwwgwwfwwwwgwwfwwwwgvxwvxwwxfgUwwwvwwwWWfvwggVfwfUxwvVUwwwhwgffwvgfffgfeUwvgfwgVuvvffUVVvvfxwwvwwwfgwwwvfwwwwwgffWfugfvgvfffgfeVgfewfvvwwwvfffvfffgfgvfwxvxwwxwwwwwwxwfwfvwgfwwwwwwwvfwfvgwvwwwwgvxwwgfgvwwwwwwwgUvwgfgwfgvwvVUvgffvvggwxwwwwwvwwwwxwwxwhwvgwvwwwwwwwwgwvvwxvuWvgwfgfwxwwwveVfvwwgwfufvvwvvwggWVfefFTtwWwwvfvggfgfguffvvxgwwggfVggffvvwwwvvvwwfgwxweefvfwgGTtwWWWfvvxwgvvgffufggvffuwWvwggwxwwvvwxgwwvwggffwwvfvvfvwggfvwgwwWwwwwwgwfgwwvvvwvvgvfxwfWwgefvfvVWvffuwgwggwvwwvwggggxwgfvfvwVvvvwgwwggvfggfwggggxvwwwvfgfwguwvgwwwuwwgwwwgfxwvgwwwwvgvxgeFVeGwxwfwgvgVwfwfgvfxwwgxvgvwgwwwwwvgwvxgeFVfEwfwwggvfxvgxwWwwvvgvwwfFvfExwxwvwgggxgfwwgxwvuwfewvggwffvWgwVwvvwwwxvgxxwgwgwgwwwgvwwufVvgwwwwwwvgwvxgwwwxwwgwxwgvggwgwwxggvfwvwxwwwwgwevguwgvgwwwwwwwgVggvgwwgfwwegfeffvwwxwggwwwguvgfwvwwwwvwxwvvwfvvwvwxgwgfvvwfwwxeVewvwwgfvgwwgxgxgwwgfwfegfvguvvwwwvwwwxwvwvgwwhwfgfwxxxvfugvwwWfuwgwwwwxwwxwwgwwvwgxhvvfvgwwvvfVuvvgggfvwwvwwwhwwwgwwwwvwgxxwggwxxhggwwwxwvgwwgvwffwwwxvwwwwwgWgwwgWfWvvwgSUuwwdVfvwhhwwgegfxvfwxwevexxfWwvwggfwxwwwxhgwE5vUUvgwwvdfwWWwgvvgWsUevwfVvvwvvwvfvfwgwgxwvGffwwhfvwwGWfVVwwvugvwvvvwvwgefvxgWvwgwvwfwwhgWeVvUewwwvdfgvWwvwxxwxXwgvfxwvwgwwxvwwgeugfvxxWwwgfdhfvfVwwwWwvWvgVuwwwwUDDwwfffffvvgWwvWUWffwwUwwgVuwwvuUfwwfwfffwwWWeVffDDfUfwgvwwwgfvwwvvgwwwwwgvgffwffefffvvgwwwwwwwxffwxhgfvfUffgwvwwgfwwgfvwgvwwxwwwfwwwgfvwwwwuggvwwffwwggfgwvgeffVevvwvgvwgfwUwfxwwwwwwgfvvgwwwWuwUwwxwwfUwwggwvwwwfwwWxxwUgwvwfwgffgfvfwhguvfvwGgfffwwwgfwfvvwgvwfwfgfwfwwwgvgvwgvgwvwffwuggfuwwWwffvwwweFgvfwvgxwvvwgfugfwwGgVfgwwwgvvwxwwgwwwwwwwuveeuwggwwwfwffxwwxwwxfvgfwwwwgwgwwVwgvgVfugwWwfgfwgeFgvfvwvxfwfvwvvvwhxwwwxwwwgwwwwvvwvgfvvwwgfuwwwwwxwgwwvfvhvwwwwwvffuwgwVwUVgTDfvefuggvgffxvfvfVhgvwvhwwgVUgfVwwefvggwFEtwgfVwvfffefeWfefuwhvfgwwwwwuWfWvfVWeeguggvwggwgwwvwvwxwgUugggVvfgWeegvggfgvggvghwgwvffVwfffvgwvffuwgvVxwfgfvwvfgffvggfWfwwwfuwgVUwvfxweggggvxxwggvfvwffVwvfwWxwwwvfxwffwwfwgxwwvggfxwhweUevwxggwxwhVufvefwwuffwgfggfgUeffUffwwwxxxfwwuwwwggwwwvvwfvwwvwwfwUwfvwwwwvgwhgfghvgffgvUeewxxwwxwxwfwwhvvwwwwwwwwwwgfwfvvvgwwwwxfewwggvwggvwwgfgvgvxfgwffVfeggwefwwwwwwhxxwwwwxggwwxewwwxxwwgvwwwwxwwwvwwhggwgwwwgWWUwgwwwfgwwwfvfwgfgwggfvfffufgVUUeVggwwwhvwwhxwwxwwfwwwgvwwgwwhvggwggwwwwggwvfwvwgfffwfwwwxxwwwwxwxxwfgwwvwwwwffwwwxwgggwxwwxfwvwwgvgfgwvwgvgwwfvvwwUfWvVfggfffwWgggvxgxxwxwwxwgvxxwxxgwwwwwwfwwvvvwffvwwwwvvwwhgfDfhwxhvgWfvUwwwvuvgwVfwwwgfdvfwUwfffxwhvxwvvwvwxxwwxwwugwwfvvfxwwwwwgwwwwgwXvgvfvVgwgVddgxwxwhwwwwxhvwgggwvwwwwwwwxweuwwgvwwgfwwwwwfewVwxwgvggfwvgwgfVdwxgvvgeufgwxxgwxxxxwxwwwwwwvgwfwffwgwgwwxxxxxwxwwwvVwvwxxvwggxwvvffvwgvwgvvvUUwwWUuvwwggfvwwwfffwwgfvvgvwvwffwwhfvvvvgvwgwxwwgffvwwwwxvwwgxvvgwwvvgUUvgWUuvwwwwwgwwwxvwvvxfgwvwwgwwfgggvvvwwwvvvwxwwvvvfffwgfvvwwgfvwvvwwwgggfwvfgfvvwvffwgxwxvvvwwwwwvwvvhhwwxwwwxwwwwwwvxxgvwwwggwwgwvgfwwvxWvTUxwxvhwVwwwvgwwwwwwweVvgwgWUtfgeVvuwxxwwxwwvwwwvgxwwwwhwxvgwxwwwvwwuwxwwwwxegwVggvvWwwwvvxwxxwxvwwXfxwwwwwwwwwwwvwxxwwwwxwwffwwwwvvvggwvwgWwwufwwwvvffvuwwwvwhwvwxxxwxwwwvgfuwwwwgwvhxxxxxwwgwwxwwxgwwfTVevwgwgfwgedfVvfffgwweffVwwwdUffVevwwwwvvvwvwwvfwwgWgffwgwwwwwVfffggwhgvgwwwwxfgvfvvwUUVfggwgVfuwwxwxxwxhgwwwgxxVvvfgvgwwwwwxwwwgwfwfeVfgffwgwfVfgvgvwwvgEUdufffgwfVfegwwggvwvvvvwgvvwwwwgwxvwxfvxvgwxvvwwwxfgfvvvwwwxwxwwwhuvUUfwwgffgfvvfwwfvfuvfUfVefWgvffvfVuVwgwwxxwwfvgvgwgfwffwvvwwgwwwwvgwwwwvwwwvfgvhfwvvvgVeUwxwwxwxxwwwxwwwvfvwwgvfxgvwwwwwwwgguwwwvwwwgffwvfggfffUVwwwWvgwwgvfgvgvvwwxgwgvwwwwxwwwxvvwwwwwfwvwwwwwgwwgwwxxwxwwxwVEVfwgwwwufguwxfvvwgwxhFfgffvftevEVewgvwwvwwvwwfvvwhwhwwgeUwwgvvWwwwgwWwgfwwxgwwWuefvwfVVeggfvwvxwwxwwXwwwvwwwwxwgvwwxhwvwwwxhdffvvvWVuwwwwGgvgdfvgvvvgVuwwvwggvUfwvxwhwwhfgwgwvwxwxwwwwxxfvwwewvwwxwwwvwwwgvwwXVfeVfvvwwfwffffvffgvwwVfugufvfVffwwffwvgwgvggwgvwgwwgvfwvgwvwxgfgvwwwvwwwvwxxefvffeggeffffffgwvgwvgwwhwxwwwfgvfvfvwwxwwweVgwvvwwwwwuVwgfgfvwwwgvVufvwWfvvggfgvfgvwvfwwwwvwvfwgwvgwxhvwvgwwwvwwwwwxfvfwwvhgvwwxhwxwhwxxwwwxggVDuwvwxggvwwwvfwfgvvwgfUvgfvwVeffWDeffvwwwwfwwwwwwgggvffwwfwwwwfwwvgwvwfgwvvwfgfwwwvfgfvwvwgwxvwwxwwgVewwwgwwxwwwwgwwwvwwwVexwwwvwwwwvwgUffwffffvwwwfwwfffgfvwwfvwxxgvgwwgwxxwxwwxfvwwwgVewwwgwxvxvhwwwwvgwXveVVvgfgVTtxvfVVggwgvfwfVfffffffVVfgfgewgeuwggxwwwwwgwgeuvfwgvwwwvwwgwwvwwwwwvwvggeuwwwEEgwwvvhwwxgfxwwxwwwwfuwwwwggwwwxggwgvxxwxxgwfvwwwVVwwwwfvgwvffeegfvffwxvgwggvwewwvwgwwxvvwwwwwwwwwwwwwvxwvvwwwwwvvwfvwwwwwwgwwwxxwwwwwwwwfVVeegwwwfggwwwfuvwgwwWggfVfVfeWffvgvgwwfwfwvwwwwwxhfvvgggwwwwfvvwgwwwvgwgwXVwggeUfwgvfevfvffwvwwxwwxxwwgVVwvwwwwwxxwxwfxxhvfwvfwgfvwxwgWeufgfffwwwefvgwwfwefwfwwvwwwwwgfwwwwwwwwxwwwxxfvwwvwwgwwgwwwwwwwwhfvUUvxwwfwgvwwvwfwwwwgvwffvfUeffvffwfvvgwwgvwwwwxwwwvvfwwvgvwwwwfwwgvgxwhwxwvwwwvfVuwgwvwwwwgwwxwvxwwvwvwgwwwwwvffxwgxwwxgxxwwgfvxfvwfxwwwwgfUwwggvwwvgfvffvgwfwwgvvgwvwwwxxwwxwwwwxxxxwxwgvfvwwwwwwwwwwvhwwwwwwxxxxxgfgwwgxhvwwvwwwwxfwwggvvvwgfgwwwwxvwwwhwwwvvxvwxwwwhwwwgvwwvwfvgwwwwwwhwwgwgwgxwwxvwwvwxvwvwwwgvwgvvwwxwwgwwwwwfwwwxwxwwwxwwwxvwxwwxwwwxwwxwwwhVfgwVgwxevfguffwwwwwwVfwwuvgWfffwvfwwwfwgfwgwwxwefwvxwwwwxhvwwfwwvwwxwgfwvfvwWvvfwwwwwwwvvwgwwgwxwfwwvwwwwXwwwwwwwwwxwfvwWfwgwvwwxwVgwvxwwwwXgffgwwvwwxwwwwxfwxxwhwwwwxwxfvgwwwxxxwwwxxhwwxwwwwxxxVffVwgwwwfffwwwvgwwxwwWgwVfUeUvwvfWfgwvwvvwwwxwgwwwwwwggfgfffvfwwwwwwwxwvvwvwwxgwwwgefUwvffvwwwvvwwxwxxwwgwvwwwgwwwxxwwwwwwxefUwwwwgvxfwfVeUffgfgwgvwwwwgwvwvwwwwwwvwwwwwxwwwwxfvwwwgwwvfwwwwxwwwwwwwxxwxwheegvvvwVffgwwhfwwwwwwufvwfeWWvgWufwvwwwVfvwwhwwxwwfwveVgvwvwgwwxwwfwxwwwwvxwVfffwxhwfwwxwwgwwwxxxxvwfwwwwwwxxxxwwwwwwwwfvvgwgvwwwwuwgUggfvwwgwfwwxwxvfgwwxwwwwwxfwwxxwxxwwxxwwxvgwwxwhwvwwwwwxwxwwwwwwwwxxw7egeewwwWeUVvvffvuwgwwFfwV6FUVvfTfwvgvvwwgffggvxwvgvwvfVeffgegwwwffwwfvwwvwwwvwhwwwWtVEvwggfvwggVtwwwwwwwwwwxggwuVgwwvvewwwxwxwwwxgfeeFwwfwgvvvwgEVUSffffguvgfvwggVdwfwwvgggwvfwggggvvfxxwgvgwgvvfvxwfVwwfuewwwwwvufxwwxgxxxfxxwxvxwfUUwxwwgfvwwwwvffvffwggfgggvgfvwgVVfffwwwwxwwwvgwwwwgggvwwwwwvwgwwwwgfffvgwwxwwwvwwgffgffUexwwwxwwxwxwxxwfgvvvgfxwxwwwwwgwfwwwwwwwfwwvwwwwfwgvxwwwfgvfggwgvwffffvwvffefgxxhgwwwvxwwhwwwwwwwwvgwxwwwwggwwgvwwxwwwwwwvfwfwwwvfGdUfwgwgVVfvwwUeVvWvwgWfffffvegwTTVVewvwvgwggvwvgvgwvgvvWVfffxvffvwgwwXffvggwwxxWwwwegwfgwdTewVgfuwwxwwwwwwwxwWffgwwwwvvwwwxhvfwfvwwwwwvfvuVwfeufgwgfgvWffuwewwfUvwfwfVTdfVVgfuwwxfwfwwfgvfuwfghvwwfvvgxhgwwwwfgvgvwwwwwwvfgwvffwwwwXfVVfvfggwvvgvvWvwVfvwvVVgfwvvfufVfwUfwwvvvfgvfgfggwwwfgvfgvwwWvvVfwgwfgwvvwvwwfVffwffgeefffVUvWvvvwgwgggwfwxggvvwvvvhvvfwvgwgwwhvwvwxfffgeVfwwVVwwwWgfvvfvvwwWgvUfvgwffwwwffvwwgwvxgwhgvfwvwwvwvwwvwfguwxvxgxwgwwvgwgwvwwxvxxfVeVugwwwvwwwwfffgfvwwwfegfggvUfeufffvvvvwwvvwwwwwwxwwwwwwwwwfffwwwgvwwwwwwwgfvggVguVffvWfVvvfwwxvwwwwwwwhwggwvwvwvfgVuwwwgwwwvgwhgwwgwwfgvWvwwguVgwwffgwgefvgvvvgWvvgvwvwwwwxwwwwgvwgwwwwxwhwvwwwwvxwwxxwwgwwhwxwhwvxwgfVgwgfwxfvwgvwgwwwwwwfUgwvvwWfwfwwfvwxwfxhvwgwwwwfwvxwwwhwwgvxwwwwwwwxVfgvfwXufgwwwvwxvgwgwwwxfwwwwwxhwfwgwxwwwxxxfuwguvWwwvfxwUgwvwwvwxWvfffgwwvvwwwgwwgwxwxwhwwwgwwwwxvwxwwwwxxxgwwwwwwwxxftefvvwwfgwwVeVwwwvvgxwtugVwvgVUVvwgfuwwgxwwvfgwwwwvxxxfwvwwgwwxfwfffgwwwxxwwwxvwwVWgwVVEvwfVufvwwwxwgwwwxwgvvvxwwwxwwfwvvwgfvwvxwwwwwWgwwVfEwwggxxwufvxxwwwwwfvUfuffvwwwwwwwgwvvxwwwwwwvwgfvwwwwhggggxwwwgwxwxwfgwgwwvfwwwwwxxxhUFfUvffwvffWVfVvveefgweVgeudUfegVgvVUgggWfuwwggwufvgWweefvvWevwwgwvevwgwefwgwggwffgvfefvugfwvVUfVVgvvfwvxwgwwxwvfgwvfgfvwwwwvfvwvvwfxwwgwfwffuVfvWfgvfUwggWffufWEdfeewvgfvggfeggfWffwgwwvuWgewuvgwuwwWWwgvwxxgfvwggevvwfwwwfgvxwvwggwhvgwvxwgvFWeVdwwwwffVwwwvfuwvfgVfgwUFvffffeffvevgufwfwwwwwvwvwwgwwfgfvVwwgwwfwwwwgfuwxvfgvggvwgdWVwwfeVugvgWwvxwwwgwxwwwgfEwwwwuwwwwxvwfgxwxegfwwwfgfwwgWvvFfVvVwwffgfwwwggfuwgvgWwwwwwwWwwwvwwwxxwwwwvxxxwwfwwwwvggwwgwwuxvwwwxwgwfxwxXTUfgvfvweufWvwGfvfvwweewwdUfUeVVffvfwwgffwgvwgvgvwwUffufgvvwxGfffvwwwuWwwwwwxwvfwvEdfVefWVugewwwWwwwvxwxwwfgvuuvewwwhggfvwxwfwwwwwwwwfvgfwwgvvvwwwwDffUfefuwwWVefewwwfffwfgwgxwfwvwgwxwwwxwxwwwwwxxwxwufwewwwgvvxhgwhwwvvwwwwwxwxwwwwfgwwggvwxwfvwwxwgvvwgvgwxwgvwxxgwwwwwwwwwvwgfgwwxwwwxwwwwvgwwwwwwgvwwwwwgwwwxvvwgwwgvwwwwwxwwwwwwwvwwhgwwwwgwhgwxwvwwgvwwwgwwwwxwwwgggwwvwwwwxwwwxxwwwwvvwwwwwgvwwwwwxwwvvwwwwxwwwwgggwvwvvgwxwwxxgwwxwvgxwwwvwfgwwwwwhwwgwfwgxwvvwvwwwwxwvvgwvgxwwwwwwwwwwwwvgvvxwwwwxvvvxggxxfwwwwwwvvwwwwwwvgwgvgwxxwwwvwggwwvwwgwwfxgwxwwwwwwwwwwgwgwwwwwwwwwwvvwwwwwwgwwfgwwwvwwxwwwwwwwggwwvvwggvwvwgwwwhwwwwhwwwwwwwwvvwwwwxwxhhwwwwwwwxxvgggwxxwwwhwwwvgVevfWeevvvfgVefvVgvwfgfvwwwvVfgffvgwwgvfwugvWeefVggvwvwwwvwgfegfWwvgvVgwggwwwwvWfvwvgvfwffVeWvvvfgufvWeuwgwwwwwwwwxvvwfevwgwvVuVgvWfwgvwegfVfgfffggvvwwwwwvewwgfffggfffgwvfwvwvgwwwvwwvgwguvwWgwgffggfwwvvwfgwwwvvwvwwwxxwwfwfwwvwxvwvwwgwwwgfwvwwwvwwhwwggwwwwwvwvhwvwxfwwwwvwwwwhwwwwwwvvgwgwwwwwwwwwwwwwgwgwwxwgvwwwvwwfvwwggvwwwwwwgwxwwwwwwwwwgwwwvvxwwxwgwvvvwwgvwwxwxwwwwvwxwxwwwvfgvgxwwxwwwwwwwgggwwxwwwhwwwwwwggwfwwxwwwvhwwwvwwvxxxwfwxwgvwxvwwwwwwwxxwgvVWfwfgwfvvwuugVefvgwgVfgfwwevwfffwwvgvvwvvfeeVwgwxhggwvwwwxfffwwwxgvwgwwwxhVgvgvvvuewfffgwwwgwxvwwfevwgwxgwwwvvxwwxVevgwwhwgfwvwhwwwvfvVVfwvgwggvgvwwvwVVfwhwgwwvwvwwhgwgvwwwvgfvwwwgfgggwwwxvwwvwgwxfvgwwwwgwgwvXGgfwWgegwwxXEevweffwvWWvfvwxdVvwwwfwxwhUfewefgvwwvwwwwwhgvUVVffwwxfvvwwWgffwgUeuwfegwvvwwgUfvvwvwwwffwgwxwwwxgffeefuvfvwwWgwwxhTVvweVwwgwwwwwhwweVfvwwwwgvvxgvwfwhvwwxWfgTfgfvvgwfvvwfwgwgwwgwxgwxhwvwwgfwwwwwxwgeFFffVUuvUUwwwgffwffvgfEFfgffvddffFFvuwwvUUwwwgfvwgfvggffffffwfwggvwwvgwwvwwfwwwgfVUuvffwwwWUuwwfvvwwwUUwwWUuvgWwwgeevvffwwwwwwwwxwwffvwwwwwvffwgvWUuwwfvfwggfffvgwwgfvwwvvgfvgvwvwwgwwWeewwffvggwwwwwwwwfvwwwwweeggweeWwvgwwwwgwwvvgvwwwvvhfeewweugffffWwWfvfwwwwfevfgfvfgwWvgvwwwwgfgggwVeguwvwwvwwfvgggvwgwwvxwugfxwwwxwvffvfVwggvgvfvvgvwWWgwwwgvvvvgvwvwweffwgwwwvwwfwwwwwVfvvfggvfvgwwfwwfwfwvwwwwwwwwwvfwwwwwwvxUfvwgwwwwwwwxvfwwwwvwgwwXffvwwwwxxwxwxxwwfwgfufWfewvgvffWvugfWfgvWVUwfggeUxwggvgwggvfveVhgvvfWwfWfvwwwwvfwWgugWwvxwWgvgwvfgvgffvefwffhvfgegvfwefwffgwvwwgwwgfvfgwwffggvvwggvwfgwwWgwgWgfwgeUgffwvVvvVgvwwwwwuggfvwvfvvwgvggwwggWvvfgvwvuwhgvwWwvwwgwvgvwwwvgvfwvvwwvwgwggwwxwvwwvwwvwwwwwgwggvvgwgxvfvwwwwwwwwgwwwwgwwwwwwwwwwwwvwwvwwwwwgwwgwggwwwvvwgxwwwxwxwwwwwggwgfgwwwwwwgfxwwgfgvwvxwgwxwwwwwwgwwwfwwwwwwgwwwwwwwwwwwggwgwgvwwxwwwwwwhgwwwxvggwwggfwgwwwxwwwwwfwwwxxwwwwwfwwwwwwwgwxwwwwwfvwwwwwxvvwvweWgeWWgvveVfxVevgwggWgfvugwvwwfevvwwwhtUfwxfeugwwhvfWFefwfgvwvvwwwhfgvgvwwgGwfwuVfwxxeTvwvfgtvgxwgfuwwxwxwwgUewwfgvwvwwwxgffVvxxwwufVwVUwwvggwwgVVgfwwevfvwwwhfVvfwwhgwgUfwwfwvwwwwxwgwfwwhgwgwvwwfwvgvwxwwwgwwgwxwwwwhvWVwfVfgvuuwvvffwVvwgwfggfwvvvuuvwwggvwvffvgefwggfgwxwWwwwwgvvhgVfwgwwwwwwxfVWvvufgfffWwgfwwwvuvwffggwfwwwwgggvvhuwwwhwwgvwgvwwwxxgvwvvvfvuggvfgvwvWgwwwfwwhwwffwgwgwxwxwxffwwwgvvwwhwwfwwwwwwwxwwwwxwvvgevwwwwwxwxwwwwfxxxVfffgfggfufvfgvvffgwwWfvWVfgvvwvwfvgwwwgffvvvvvWwgvvvggfggvwwwwwvfwwwwwwwwwwwwwXvwVWfgevwuggwfwwwfuvvwvvgWwwwvvWgfgfewwwwwwwwwwgxwwxWfvfvwfffvWwwwgvVgwfwwgggggwwwwwvwwwWwgfffwvxwwwgwxwwwwwxxgfewxwwwwgwgxwxwvwwwxxwxxhVVgveefwuvwgwgwwxwwVVvgwwwwvfwwwvgwwvuwhwwgwwwxxVwwvwwwxxWwfwwwxeewfvvxWwwgwwwxggvwwwwwfwwxwexwufwwhwwwwxwwxvvwgwWwwwxVwwvwwwXwwfwwwwexwewvwhwwwwwxxwvfgvxgwvxxgwwwxxfufwfugvUgvWfffwvvvvwwgvwgfgwwfefxwwxgwWgwVfeVgwvwvhwgVfuwwwwwwwvvvgfxxxxwxgevffgfgvVVwgvwwwwVfwgvffwwwwxggfeuwhvgvwvwvwvwfwwxwgwxgggfeefwwuwgxwffvwwwgwwfvvwvfwwwwxwxxxhffvwgggxwwgwvwvwwxxwxwwfgwgwwvxwxwxwwgwgvxwvwgwxheffvufwfvVVvwfgwwvfwgwugvevefvvggwwvgwxfefvgggvvwewwwfwvvgWVfvwwwvwwxwfwhgwwhxvggveffuwWgwvfvxxgfffwwgxwwwwxgvvfvggfvwfvwwwxwwwvxgxwwxxfeVuwgfwvguwwhgwfvggfvwvwwvxxxvvwwxwxwgwvfggVevvvxxwxwwwwxxwgxwgggfvwwgwwwvwgwxxwxxUggfFggwfueUwxgexwvgWgggeefVwwgwwvwwwWueFwxwgfwfggfffVVvggvVgvvvwxwwgwWwwWWwfftVVwxwfVwwvdVfwwvfwxwgwwgfUwwwvfwwwxwwgwvgxgufUxwgfuwwgVggfeFwgfwfvgvwxgwvfgwwwggvweUwgffewwwxxwwwfgxxxwgwfwgwwwwgwvfwvwwwgwwwwgwwxXdegvetvvUfUVgggffwwwwwUevfdVfeeWggvwwgxUffFwgfuWwwwwweWeefvvfvgfgfwwwwvgwwxwwdeguEffVwfgffxwwwwUgefvffgfwxwwugffevwwwwwwwwwxwwwwwwwwxwTVfVwVgvfgggdffUfevwwwggvwwxwwwgwwwxweVvfvvwfwgggfwwwwwwgwwwwwegvvwwwwwgwwwwwwwxwwwwwxwwxvgVUvgffvwfffgvugVUffuwggewwwgfvufVUvwvvgfwVvfVfffgvvwxwwffwfwvwwvwwvfVgwugfvgwgwfUgfvvggffgUfwuvwgvwwwfVffvwvwxwggffvvgwwgwwgvwVvwufwuwwwgWewfwvfgfvgevwwhwwVuvWvwwwgwvgVvgvfwufwvvxgfgfwggwwwwwwegfffvvgvfwwwwxwwwgvgwwgwwwfvfwwwgwwwwgvwgvwgwffwfVfgwuugvvgfgfewhgVgvxvwgvwhwwfewgwfvgwwggfVVvwwgwxwwwfvwggwgwxwffwwfgwwVWfwvfgvvWVwVegwgvvgwWgwffwvwxxvvwfwwhgggwwwffwwvwwxwvvfvvVWvffwwwwwvwxvhwwggwwVewhwvfvwgwxvwvwxwggvgwvgVVgwwvvwxvwxxfvwxggwvwwxwgxwgwwvgfVUUffdtwwwgUUwwgffwfffVUuxUUwwwWUuwwvgwwwwgffwgVUeggvuwwwwwwwwvwgeevfvvvwwgggvwgVfdtwfwgUUwwgffwffgFFvfffddfvwWwffvwwgwvwvfffffwwfvvxgwwgwwwwwwgffwwWUeggvvvvwwwwwwwuwgeewfvwwwgfgvwwvfvwwffwvvwffvwggfvwgfwwvwwxxVVwwvxxvwvggVVwwfgwuwwwwvggwwXWWfvgWffwvwhdUveewhwgGwfwwgdvgwefwxxvxwUfvxVUgwvgwwwwwxhgwVeggvwwgggxgWgevwxeVvwVeggwwvgwuggwwfewxwVgvwhwfwgwffTggfwvwxwgfvwwuwxeVvfTgwfgwwwgwxwwVUggfwvxxVffwwgvfvhgfwwgwweeWvwwfwxwgWfvgwfwwwgxwwxgwwvwvvvwwwwvxvffvfefwegvgfgfvvvwuwgvewguwwwVggwvvvuwgfgwWefgfwffvwwwvwvwxwwxewffvwxwwxxwgwwhevfvfggVgfvgfgvwxgwwgewfvwfgvwwwvwgwwwwwwvfvgvwwwgwwwwwwgwwfevVvwuvvgwwvwwwwgwufffuwwwwwwgwwhvwwgwwxwvgewvggxvwwwggwxgxwwwwwgxwfVwwwvvwwwXWFggVUfgvvwWefFvgUwwwwFVwVgwWeVfvfvfwwvfGeeVwVfgwvfvwvwgwwwXgefvggwvfwwwwwwxwFVwfvvwWeVUggffwwwVvwGVefgWwfwVvvvgvwWvUffgfvvfwwwwwwxvvxWdfVwfffwwwgwwwwwwwWvffewwwwwxwwwwwwVgvvwgwxwHffUfwwwwfwwwwwxugwwwwwgwxxxwxwhvvwwwwvwwwxwwxfwffvwfVvgffhvfwVffegvfvgVugffwwfwwgfuwwfgffwvUwfwgffwuggvwwffvvghggvgwvwwvwegfvwfwfUuVVUwffvgfwfwfuVVUxwwwffgvwwvgffwvgVvgfxwwgwwvwwgwvwvuwfgfUxgffgwfvgvvfvwvVwgWwwggvwvvwfwwvgwuwwvVuwfVwfWwwwwvvuwwwvfgwvgvwwfwwggfwwggwgwgwwwxwwhwwwgvwwwvWeUfvedugVefgwvHfeugfxwedvgffwfuwGVeuvgxxFeffwWffvgwwwegwdUfwvwgwfwwwxffwwwwwwtevvVtUgwwWfffwwwwVfvvvxWfVfgwwfgwuffvvwwggwwwxwvVwwfwwwwVeffwwWeVvvwwwegveffvvwgggwweWfwfwwwwvwwefuwwwwwwwwxwwfgwwwwwwxuwwvwwhfwwwvwwxxwwvwwwxxwwwxweedugedvWWfwFffvwhfvwwgtuvfVfvVfvwWfvwWWggVffvwWevwwwuwwxfvwwvwWfvwwwwwwxwwwwxWeufVGVwVgfggfwfgEWgffwvwgVxggdvgwwffwxwuggVwwgwxwxwwwGWgvVwUvwgfvwwgefgwwegwwwvgggvwwwgwwfwwgefgxwUvwwwugffwwggwwxffwWwvgfwxwvwxwwwwwwxxwwvwxwwwwxxw ================================================ FILE: examples/games/.Tables/TwstFlip.ptb ================================================ pwwgVUVUfFFUvffgeVUUwgvvffgwggwfVVDvffgfvgxwwvffgwwwfxwxwVUVUgETfvVegwffwwVewfvvwwwwwwvVegfwwfwwwwuxwwwwvxvxhxgfFFUvVegfgvxwwwvVegwggwwwwwwwgvwwxwwfvvwwwxwxwwwwvffgwffwwwwvxxwwwwwwgwwxwwvwwwwuwvwxvwvwxwxwvwxveVUUwVewvVegwwwwgETffvvwwffwhwvVegwwwwwwwwxfwwfvguxxhvwgvfvvwwggwwwgfvvwhwvwwwwwwwfvwwxwxxwwgwwxxwxvgvffgwwwwwwwwwxwffwwvwvxwvwwxwwwxvwwxuwwwxggvwwgwggwwwwwwvwhwwwwwvwwwwvxwgwwxgwwxgvxwhhffVVDvVegwgvwwwwvVegwwwfxwwwvxgvvwwfwvwwwwvxxwxxwvffgfwwfwxwwuwwwwwvwxwgwwwxwwxvwvwwwxvwwwwwwfvgwwwwfvvvwxwwwwwxwvwfwwxhwwffxwwuxwvwvwxxxwwxwvvwvwwwwxwxwwiygvffgwwwwwwxwxfwwfwguwxgwwwwwwxwwwwgwwwgvwwhwwwwfvxvxwxwvvgwwwwxgxgvwwvwwwwwxwgwwwhwwwwhhfxwxwxwwuxxxwgvwwxwvxxwwxwwgvwwwwyivhxgwwwxvxhvxvgghhfwxxwwffiyghwhhfyivfwwfvwfvvwvgfvfvwwvgvfvvwwwwwfgvvwwwvwwwfgvwvvwgwwwxxgwwgwwvvfvwvwwggwgwwvwwwvvwvwvvvwwwwwwgwvwwwwwwwvwvwwvvfgfwwvwwwffvwvvgwwwwwwxwwxxwxwwxxwwwvvwvwwwwwwwfvxwwwxwwwwwxwwxxxwwwvwwwvvvfggwwwgwwwwgwgvwwggwwggwwwwwwxgwgvvwwwwwwvwwgwxwwwxxwwwxwxxxwwxwwxxxxxxxwxxxwggfvwwxwwwvwwwwwwwwwxxwxwwxwxxwxxxxxwwwxwwwxxxxxwxxwxxwwxwxxhwwxxxwwwvgvvwwwvwwwvgvwwwwgwwwwwwwwvxwwfwwgxwwwwvwvvxwwwgwwwwwwwwxwvvwxxwwwxwwwxxwxwvvwwwwwxxwxxwwxxwwwwwwwxwwxxwxwwxxwwwwxwxxxxxxxwvvwxxwwgwwwwwxxgwgvwwwwwxvwgwwxxwwwxxwwwwggwwwwxxxxxwwwxxwwwxxwxxwwwxwxwwwwwxwwwwwwxwwxxxxxxwxxxxwggxxxxwxxxhxxxxxxwxyxxvwwuvvxfvvwfgfWvvfVewffvwwwwwwwwwwvgxwvwwwwwxxwwwvxxwwfWwfvgwfwfwgwvvwxxgwwwxwxxwwwwwwwvwwwwwwhxxwwwgxwwwwvwfgwhhwgfwwgvxwwwwwwwxwwxxxwwwwwxwxwfwwxxxxwxxxwxxxfxggwvvwvwwxWfwwxxvffwwxwxwwwwwwwwwwwxwhvwwxxxwvgwxxwwwxwwwxxxxxxwwxxwxwxxwxxwwwxwwwwxxxwwfxxxwxxxxxwxxxwgxxxxgwxffxxwxxwfwfwvwffwwwvwfgwxxwwvwwwwwxvwfwgfwxxgvxxwwhwwwvwvwwwvwwwwwxwxwxwwwxwwwxwxwwwwxxwxwwwxwxwxwxxxhwwxvwxxwxxwwxwwxxwxxxxwwwwwgwwwwwwvwwxhwxvwwwxwwwxwwwwwwwwxxxwwwwxxwxxwwxwxwwwwwxxxhwxhxwxwwgwxxwxxxwwwwxxxxwwxwwwwxxwvwfufffUfvVWvvfuegfWvueWfuffwVuuwefeufgvvfvuefvfvugWwvwwgwgfwwfefvugfvfvfvfvwwvwwwwwwwfwgewgfguvWvwugwffwvwvvwwvwwwvwufUfwffevgvwvwvVfwgwvwwwwwxwxgvgwvgwfwgwvwvwxwgwwwwwvgwwwwwggwgwuffvwgwwgwwwwwwwfvwwhvwwwvwwwwwwwwwwvwwwxffwwfvvfVgvwvwwvUfwvvwvvfwvwwwvvggfvvvgugvwwwWfvvvgvvwgwvgfwwwwxxwgwwwwwwxgvwxxwwwwwwgwxvwwwvwwxxwghwvwvwwvwwvvxwvWfggwvwwvwwwgfwwwwwwwxxxxxfwfwwxwwxwxwwwwwwhxxwvwwwxwwxxwwvxxwgwwwwwxwxwxwvwwwxffwfVffvvgwwwwwfffwwwgvwwwxwfwvwwvwgfvvhwgwwwgwwwwwwvwvwgvvvgwvfwwwvwgwvwwgwwwwwggwfwwwgwvwggwwgvwgwxwwwgvxwwwxxxwwxwwvwwwxxwwwwwwxhvwxwxwwwxwxwwwwwwwvwwhwvwwxwwxxwxwxxwvggwvwwvwxwwgggwwvwwgwxwwwvwwwwxwxxwxwwvuwxwxwxwwhwwwxvwwxwxxwwwxxwwwgvwxwvwhgxwwgwwxgwxwvxxwwxwvwxwxwwwwvxwgxwxxvxhxwwxwxwxxwxwwwwxwxxxwwwuwwxvevvgvvfwfvvwgwgeUfuffgwvvvveffguwwfvvvfUfvggvvvwgwvwwvvvweffwwwwvwffwwwfuvwwfwwvfwwwwwgvwvwwvwwwxwvwvwwwvvwwwwwwvvwwwfvUUwvwfvvvfwvwwwwwxwxwvxwwwfwxwwvwvxxgvwwwwfwwfwwvwvwxvxxxxvwxxxxvwxwwwvfgxwvfffwwfwwwwvufwxwwwwgvwxwvwwwwwwvvwwwfwwxxvvwxwxwwwwwvwxwxfxwgxwwwwxxwvvwxwwwwwwwwwwwwwxwwwvwwwwwwwxxxxgwwwxxwfwwxxwvwxwwxwwxxwxxxwwwvwwwfgvgvwvxwffVffwwvvwvwwvvwwwwwwwxwwxwwwwwgwwvwwwvwxwwwvwvwvwwwwwwwwwwxwxwwwwwwxwwwwxwxwwwwxwwwxwxxwxwvgwwwwwxwwwvwwwwwxwwwwwwwwwxwwgwwwwxxwwxwxxwxxwwwxwxwxvwxxxwxxfwwxwxxxxxxwwxxxxxxwxxvwwgvwwfvwvggwgvwwwfgvfggwwwgvwvfwwgwwvfvffgwvwwwwxgvxwgvvfwvwwfvgwwwwwwxwwgvggwwvxwwwwxxwwwwxwwgwwxxwvwgwwwvwwwxwggvvwwwfvwwgwwwwwwwvxwwwwgwgwwwwxwwwwwgwvvwxwwwwwxxxwgwwwwxxwwxwxxxxwxwwwwwwwwwwggwwwvgwwwwwffwggwwhwfwwxwxfvxxwgfvgwwfwwxwwxwxwxwxwwwwxwwxxxwxxxxwwxxwwwwxxwwwxwwwwwfgwgxwwvwxwggfhwwxwwvwwxwxxvwwwxxwxxxhwxxwwwgwxxxwwwxxxwwgwwwxwwwwwgwxgfwwwwwgwgwwwwwvwwwwwfwwgwgwwxxwwxwvwwwxwwwwwwwxxwxxwfwwwxwxwwxwgwwxxwxxwxwxxxxxxxxxxxwxxhxwwxwxxxxwxxxwwwwhxwwwgfhwfvgxxxgwgxxxwwwwwxwwxwxgwgwgxxxfxwwwxhhxxwxwwxxxxxvwgwwwvgwwwxwxxxwxxwwwxxxwwwxxxxwxwxxxxxwwxxxwwwwwxugwxUvfgUvuwefveffgVguvUVfvVvfwefveUgevfgvvgwuwfguufvvVvwwwvvvvvveewVwffguvvfwvfwwffvwfgvwfvevvfwvWwfxgwvwvwwwgwwwvwwwfwvvffvffffgwwwvfffugwwgwwwwwgxvwvwvwvggvhwwwxwwwwwwvgxgwwwwvgwwffwwfwwxgwvwgwwwwwuwwvwwwwgxwwxxwwwwxwwwwwgvwvvvfvwewggvvwfefvvwwwWfvvvvwwugfwwwwgwuxvwwwffgvwvvgewvgWfwwwwxwwwxwwwwwvwwwxxhwwwxxgwwwwvwwvxxwwxxwvwxgfwgwgwvwwvwvwgfvgxwwwgwvwwvwgfwwgwwwwvwxhxxxwwgwwwwxfwwvwwgwwwxwgwvwwxwwxwwwwwgwhwxxwxhwxxgwwwwhwevvevfewfwvwwwvfVfgwvwgwvgwwwxvgvwwwwgwvwwvgxvwwxwgvwwgwwvgwwfwefwvwvvgwwxhwvxwwwwwvwfwwgwwxwwwvwwxwhwwwvxgxwwxxxvwwwwhwwwvwwxxxwwvxwwwxxxhxxxwvwxwwxwwxwvwwgwvgxxwwxgxxwxwwxxxwwfwwwvwwwwwWgfwwwwwwvwvvxgvvxwfvxwwwxxxwwvxhxgxwwxwwwwwwwwxvxvgwwhwwwwwwwwwxgwwxwxwwwxwwxxwxwgwwxwxwxxgwwwwwxxxwxwxwxxxwxxwxxxhwxxxxxxxwxxwxwwxxwwwwxwwwuwvwwwvvfwwwwfvvwwwfvfvwvxfwvvwwwvffgwwgvvvfvwwxwwxwwfvxwgwfvffwvwgwwhhvwvxwwwvvfvvvwxwwxvwwwwwxwwwwwwwwwwwxgvwwxxwvwxwwwvwwwghwxwxwwxwwxwwxxxwvvwwxwwxwwwxwwwwwwxwwxwxwwwwwwwwwwwwwgwxwwfwvwwwgwwwxxwxvvvwwhxwwvxxxxxwxxxwwwwwwxxxwwwwxvwxvwxxxwwwxwxwxxxwwxxxwhxxhxxwwvxwwwwwwwwwwwvwwwwwwgwxwwxwwwwwxxxfwxgwwwwwwwwfwxwwwxvwxwwwgxwxxgwwwwwwwxwxwxxxwxwwwxxxxwwxwxxxxxxwwwwwwwwwxxxwwwxxvwxwxxxxxwxxgxxxxxxgxxwhwwwwxxxxwxxxxxwxxxwxxxwxxugwggwVevwugfevvwVffvUefefwffvwggevwvwwfvvvvwvgggwwfvwwvgwwwxwwfwvgwgvwveVgwxxefwgwvgwvwwvvwxwgxwxwvwxgwvwxwwwwwfvwxfguffwgvffggwwfvwwwwwxwwwgxwxfvwwxxxvvxwxwwwxwxwvwxwwwxwwwwxwwvwwxwwxwvwwwxwwwwvxwwwwwvgfwewgvwwvwvVgwwwwvvfvxwvwwwwvwvwvxxwwxxxwxwwvwxgvgwwwgvvwwwwwwxwxvfwwwwwwwxwwxwxxwxxwvwwwwwvxwvgxwwgwwwwgvxwxxxxwwwxxxxwwxxwxgxxwxxwwwwwwwwvgvvvvvgwefgvffwgvufwwwwxwwvvvwxwxxwxwwxwxwwfwwwwwwwfwwwxwxwwwwwwxwwxwxxxvwxxwwwvwwwfvxwhwwxxxwxxxxxxxwxxwwwxxwxwwwxxxxxwvxwfgwwvwwwxgwwwwwwwwxxxxwwxxxxxwxxwvvwwwwwwxxwxxxxwxxxxwwxxwgxxxwwvwxwwxwxhvwwxxxwwxxxxxyhvxxxwxugwwfvvwgfvwffgwwxwwxwwwgvwfvwgvfgvffgxwxwwwwgwwwgwgxwxwwwxwwvwwwfvwwwwxwxwwwwgwwgvvwxxwxhwwxxxwwwxgwgwwwwwvwwwwxwwwgwwwwhgwxwwxxwwxwwwxxxwwwwwwwvwxwgwwxxwxwwfvgwwffggvwwwvhfvwwwwwvfggwwxwxwxgvvwwwwxxxwxwgwxxxxwxxxxxxxwxxwwggwwwwwwhwwwwwxwxwxwwxxxwxwxwxxwhwwwwxwxxxxwvxxhwwxxwwxwwwwvwwgwwwwwwwxwwwwxxwwwvwwxxfwwwwwxwxwwwwwwwwwxxxxwwwvwxwwxxxxxxxwwwwwwxxxxwxwwxxwxxwxxwfwgwxxxwxwwwwwxxwxvxwwwxxxxxgwxxwxxvxxxxxxwxxvwwxwwxwxxwwxxwxxxxxxxxxxwxxwxxxxxuwvgVvvwevewUfVvwVffvufvVwfffvwvgwgwwgwfwvwgVvvvwgwfvvgvwvwwwwvveevwvgfvgvfvwwwwwwvwwxgwwwwwwgvwwgwxxwwwwvfwvvfffwffwvwfWvvwgwvwwwxwwwgvfwvwwwxvwxwwxvwwwgvwwgwwwwxwwgxwggxwxwwxwxxxxwwveVvwvVwfvwfwwvxwvwvwvgwvwwvgwwgwgwggwwwxwwwwwgvgwwwwwvvvwxfgwwwxwwwwxwwwwxwwwxxxxwxwwwwwwwwwwgwwgwwwwwwxhgwxwwwgxxwxwwxwxwwxxgwxxxxwwxxwxwwwwwwevfvvggvgfuwvgvfwfvvwxwwwxwxwgvvwwwwxxwxxwfwvwwwwwwwxwvwxwwvwxwwwwwwwwvgxxxwwwwfvwwwwxgxwxxwxwxxwxwwxvxwxwxwwwxxxxwxxwfwfwwwwwwxwwwwxxwwwwwwwxxxwxwwgwxxwxwwxwxxxxxxxwvxwwwxgxwwwxwwwwxxxgxwxxxwxxyxgxxwxxuwvxVffvUuvwUfevUfvvVWvvegfefvwVvfVfWvufgvvevwUVvvfvvhvuwwwgwgvwgffVvevwuvfgvgfwgwwwvvvwvwgwufvfgfgvuwegwgwwwwwgggvwwwufwgffgfffufwvvwwwfffvwwxwvwxwvwxvgwwwwwxvvgvvhxgvwxwwxwwwwxvwwwfvwwfgvwvwggwwvvwwwhwwvvwwwvvfwwvwwvwvwhwvwwwwwwxwfxxwwvwgvvgvwfVfwfvfwvVVwgwfwfuggfgvwfVgvgwwwufwvwwwgwfggwwwggwwfvwhwwwxxwwwwwwwwwwwxxhwwgwgxwwwwhwwgwxwwvxwgxxxvwvgvvwwfwwxwwwwfwhgxwwfwwxxwuwgwwwwwwwwwxwxwgwwwxwvxwwwwxvwwxxwwwwxwwvwvwwwxwwwhwhxxwxwvwVvvVffefgwwvvwvvVfwvvwwwvwxwwwxvgvgwwxvvwwvwxwwwwwxwxgwvgxvwwxwfwwufgwwxwwgwvwwwwwwwwwgvvvvwgwxwwwxwwwgfxxxhvxxxwwxvxwwwwxvwwxvwxxhwwwxwgxxxxwhwxwhwgwxxxwvwxwxwwwwwxxxvwwxxwxwwxwxwxhwxxvwvwvwwfvwhwwwwfewhhgwxwggwvwfwwxgwxwwxgwwxwxwwxwxwwxwwwwvxwgwwwwwwxwwhwgxwwwxwvwwwxwxwxwxxxhwwwgwxwwwvwxwxgwwxxwvvwgxwxxwwwxxxxxxxwxxxxxwxxxwxwxxwwwxwwwwwwwfvvwfvwffgwvwwgveffuevfufwUeevfWvfgvwvfgwvvvfggwgwgwwfffveggwwxwwwwvwxwwwwwwfvfvvvxwgwgggwwwxwwwwxwggwvvwxWffwfwwwwvffvufwwfgvfwwwwwwxwxwxgwxwwxwwxxgvgvwxwwwwwwwwwwwwwwwwwvwwxxxwwxwwxwxwhvwwwfggfvvwwwvfwwwvvwwwwwgvwwuffevvwvgvwwwwwwwwwvvwggwfvxwwwwwwwwvxwxxxwxxxvwvwwwgfwwwwxxwxwxwwwwvwwwwwvwwwgvwwwwwwxwwgxgxwxwwfvxwwxxxwwwwwwwwwwxxwxxwwxxwxxwxxwwhwwwfVWvvvgwwgwguuwvwwxvwwvvwwwwvxwwvwxwwxwwwvwwxxwwwxwxwwwwvwwxxxwwwwxwxxwwgxwwxwwwxwwwxxwwxwxxxxxxhhwxxxxxxxxgggvwvwwxvwwxwggwgwxxwxvwwvwxxwwvgwwxxxxwvvxxgwxxxxxywxwwxwywwxxxwxwvwxxxxwwxwxvxwxwxxxxywyxxwxxwwxxugwggvwvvvgfuvfvuwfffuvwvgwvwgVuvgefvwwgwfvfwefVgfeggvvwvgwgwwvvwfwwwwwveVxvwgwwwvvvgwgwwwwxwgfugwvgwwwwwwwwwfgvvwwefgvgfvgwwxwwfwfwwwxfwvwxVwvvwwwwwxwxwvvwwxgwwvvwxwxwhwwwwwwxwxxwwwwwwxwwwwvfvwwwwwxvVgwwwwgwxxwevwvvwwwvwwwxfwfvxwvwvwgwwwvgvwwwwwxwwwwxxwxxxxwfvwwxwwwxvfwwwxxvgwgxwwxwwwwxwwwhwgxwwwxxvxwwwxwwxxxwwwwxxwwwxwxwvxxwwxwxxxxxxxxxxvgvwfguwwwxvwvffwvwgvwwvggwgvvwwxgvvwwwwwxwwwwvwwwwwwvwwwxgwwwwwwwgwwwwwwvxxgvxwhwxwxwxxwwxwxxxxwxwwxxxwxxxxxwxwxwwvwwwwwgwvxxwxwwwxwxwxxxwwwvxwghwwxxwwwwxxxwwxwxxwgwwxgwwxxxwwvwxgxxxwwxxxwhxwxhwxwwwwgwvwwxggvwwvwxgvgvwwvvwwwvxxwwwxgvgwwvxwgwgxwxwwwwwwwwxwwwhvxwwggvwwgwwwwwwwxwxwwgwxwwgvwxxwxwwvwxwvwxwwxwxxwwxxxwwxxxwxxxxwxwxxhgwxhvxwxwxwxxxxxxxxxwxxxxwxwxxwwwwxwgxwwxwwxxxwxwwwwxwwxwwxxwwxxxwwxxxwxxxwxxwxwxxwxwxxxwxxxxxxwxwwwwwxwxwhxxgxxwxxxxxxxxxvxgxwxwxxxxwxwwhxxgxwwwwvwxgwwwwwxxxxwwxwxwxxwxxxwwxxxxwvgxwhvxwxwwwwxxxxwwxxxxgxgxxxxxxxwyxwwxxxxxxxxxxwwxxxxxwwwwxwwwxxxxxxhxwhhwhxwxxxxxxxxxxxhwxxxxxwxxxxxxxxxvwwfvvfwwfgvfvvxwvgfgvfwwwfvvwffvwvwwwwwvwfgfwwwwvwwxgvwgwwwwgfwvwwfwwwwgwwvwwwwvvfvwvwwwwxwvwwwwvwwfwxgwvfwwfgvwwwwwfgvwwwwwwxvwwwwwvwwhhwwwwvwwwwwwwwgvwwwwwwwwwwwwxwwwhwwxwwxwvwwxwwwfvwvxwwfwvwwvwxgwwwwwvfvwwwwwwvfgwvwwwwwwvwgvwwfwwwgwxvxwwwfxxwwwwxxxwwwwxwxxxwvwwwwxwgwxwwwwwwwxwwxxgwwxwwwwwxwwxwfwwwwwwxwxwwwxxxwwxxxwxxwxxxwxwwwfwvfvxvwvgffwgwxwwwwwvwwwwwwvwwwwxwwwfgwwwwxwxwfvwwwxxxwxxwwwwwwxxwwwwxxxwwwwwwwwwwwxwwxwxxxxwwwxwwxxxvwxwxwwwxwfxxxxxwwxxxwxfwfvxwxwxvwwwwwwxwwxwwwxwxwxxwwwxwwxxxwwwfxxxxwwwwwxxwxxwwwxxxwgxwwwxxwxwfwxwxwxxxxwwxxxwxxxxxwxwsxfvxfwwwvvgfvxgvwvvgwwwwwvvwvvgVDDewwwwvvgwwwwwwwwvgfwwwgvwvgwwwwgvwgwgvvvwwwgvwwwwgwxvgwwwgxxwwwwwwwwwwwwwwwwxwwwwwwgvgfwwwwggwwxwwwwwwxxxwwwwwwxwgvgwwxwgwwwxwwwvwxgxwwwwxfwwxgwgvvvxwwwwvwwhgvwvvwwgwgwwwggwvvvxwwwwxxwxgvwwwhwxxxxwwxvgxxxwhwxxwhxwxvvwxxwxwwvxwwwwxwxvwxvwgxxwxwhwxwwwwwwxwwxwwxwwwxvgxwxwxwxwwwwwwgwgvgfwwwxgwxwwwwwwwwwwwwwwwwfwwwwxwwxwxwwvwxwxwgxvwxvwxgwwxxwwwwxwxwwwxxwxwxgwxxffwwwwxwxwxwwwwwwwwxwwwxxxwwwwwxxxvxxxxxxxxxwxvgwvwgwxvwhxwwwxwwwwxxxgwwwwxwxwwwwvxxxxvxxxxxxwwxwxvgxwwxxxvxxxxxxxxxxxxwyxxwxwwgggwwwwvvvggwwwwwggwwwwfggwwgwgwwwgwwwvwggwvwxvxwxxwwwxwwxxwhxwvxgwxwwwwwwwwwwwwxxwxwwwwwwwwvxwwgwwwwwwvwwgxwgwgwwwxvgwxxxwwxxwwvwwhwwwhxxxxxwxwxxxgwxxhwwgxxwwxxhwwwgwwwxwwwwwwwwxwwwxwwxwxwwxwxwwxxwxxwxwggwxxwxwxxxxwwxwxgwwxwwwhxwwxhxxxwxxwxwwxwxxwwxxwwxgggxvvwggwvgxwwwxvxwxxvxxwvxwwwwxwwwwxwwwxwxxwxwwxxxxxxgxwxxxxwwwwwxxxxxxwxwwwwgwxxwwwxxwwwxxxwwxwxxwxxxwxxxxxxxxxxxxxxyyxxxvwwvwvwfwvxvvfvwvwwvfvvvwvwwwvvwfvfgwwvwvwfwwwvwfvxwxwwwwvwvwvvwfwfvwwwwwwwwwxgwwhwwfwvvfvfvxwwwwwwfxwwwwvxwvvvwgwwvfwgxwgwwwwwwwvwwwwwwwgvwwwwvwwwwwwwxwwwfwgvwwwwwwgxwxwwvvfwwgwwxhxwwwvxwvvfvgvwfwwwwwgvwwxgwwxwwgvvvwwwwwwwwwwxwvwxwwgxxxxxwwwwwwwwxwxxwwxwwwwwxxxxxwvwwwwwwvvwwwvxxxxwwwwxwxxwxxxxxwwxwwxwwhhxwwwwvxwxwxhxxxwwhxwhwwvwwgwfwwwwwwwgvwwwwvwwwwwgwfwwvwwwwwwwvwwwxwwwwvfvvfgvwxxxhxxwwwwwgvwwxxxxwwxgwfwxxxxxxwxxxxxxxxxxwhxwwxwxxwwxwxwxxxxxwxwwwwwwgwwwwwwxwxwxwwxwfwwwwwvwxwwxxwwwxxwwxhhxwxwxxwwwgwvvxxxwxgwwwxxxxwxxxxwxxxwxiwxwwxxxxwxxxxwwxwxxxxwxwwxxgwwfeuvffUgefuuffuffguuVguvffweuuwegffgvvuvwweVfufuvvfuvxwwvfwfwvfUwfvevgwfgfgggwvgwwvwwwwvvvvuvfgvuvwwvvfvvgvgvvvwwwvfwffUwvfewvgvwwwwfVfvvwwwvwxwgvwvvvwwvvwwvgwvfwwwwwvwwwwwvgwwufvwvvwwvwvwwvvwxgxwwwvfwwfwwxwwwwwwfwwxwvwfwvgfwufvwwwwffVvwwvwgvffwwfgevwfvwwuvwvwwwfuggvwgwuwvfguwhwwwwwwwgwwgxgwwxwwwwwwgwwvxwwwxvgwwhhwwvvwvwwwfvwgfwvuwfwwwwwvwhwgwwwwwwwwwwwggwxwwwwwwwwwwxxgwwxwwwxwwgwwxvwhwvxwwwxwwwwwwxfwfffffvwvwvvwVffvwwwwwwwwwfgwvwwvfgwwwwvwwvwwgwwvwwwvgvgvwwvwxwgvvwwwxwvwwwwxwwvwwwvwwxwxwwWxwwwwwvxwwxxwwwhwwwxwwvhxwxwgwxwxwwwxwxxxxwwvwxwxwwvwwwxwvwwvwvxwwxvvwvvvwwwfvwwwwwgvvwxvwwgwwxggwfwwxvwwxgwxwwwvvggwwvwvwxxwxgxxwwwxwwwwwwxwvwvwgwvgwwvwwwhwwwwwwxwwxwxxwvwxxwwhwxxwwwxgwwwxxxwxxxxwxxwwwxwxwxwxxwxwwuwwxfvvwVvvvefUugxgvwvfgwfgfwgvvxvfgfWvvvvgvfVUvfvwfwgvwgwvffvvffwwwwwfwwxwwwvfWwvwwgwgwgwvwwxwwwwwxwwwfwwwfUgvwwfvxwgwUvwwwxxgvwfwwwwwvxgxxxwwxxwwwwwwwwwxwwgwwxwxwwwwwwwwgwwxxxxwxwwwvwvfwefffvuwvggwfwwwwwwwwwfwvwfwwwvwvgwwwwwwwwwgvwhwvhvvwwwwwwwgwvwwgxxxxwwfxwxwvwwvvwxxxwxwxwwwfwvwvwwvxwxfwwxwwfwwwgxwwvgxxxgxxwvxwxxxxfwwxgwhxxwwxwwxxwxxwxxwwxxxwxgwwwffvgvwvvwwvfeffwwvvwwggwwwwwwwxwxwxwwxwwwvgwwwxvxwwxwwwwxxwwxwxwwxxxxwwwhwwwwwxwwhwxxwwxwxwxxxwwxxwwwwxwxxxxwwxxwwxxfxxxxxwxxwwvwwxwhhwwwvwwwgvvwxhvwxwwwxwwxwwwxxwwxwwvwwxxxwwxxxxxxxwwxwxwxxwxwwxxxxxxxwwhgwxxxxwwwxxxwxxwxwwxxxxxwxxxwwfwwwwwwwfwwvVevwwwwwwfvvwvfvvgwgwwvgfwwvwwwwvvwvvwwwwwwgwvvgwwwxxwgvgwvvvvwwwxvwwwwxxwxwxwxfvvvwvgxvvvvgwxxwgvggvwwffwvwwwwxgwwwwwxxwgvwwwwwwwwxxvwwwwwwvwvwwwxxwwwwwgvggwvwwwwggwgwwwwwwgvwvwwwwwwgvvgwxvwwxwvgwwwwwxxxxwwwwxwwxwxvwxwwwwwgwwwgwxwwwvwwwxwwvwwwxxxxwwwxxxxvxxxgxwwxxwxwwxwwwwwwwxwwwwxwxxfwwwxwwwgwwvvwxgggvwxwwwwxwxxxxwwggxxxxwxwxwxxxwhwwxxxxxvxxxxxxxwwxxwwwwwwwwwxxxxxwwxwxxvvxwxxwxxxxwxxxxwwvxwwgfffxvxxxxxxxxxwxwwwwwxwxxxfwwwwwvwfwvvfwgwwwvfwwwwwvwwwfwwwfwwwvwfwwwwwwxxwwxwwwxwwwxxvxwgwwwxwxwxwwxwwwwwxvwxfwwwwfwxwfwwwffwxxwxxwxxwwwxwwxwwwxwxxwxxxwxwwxgwwwwwxwwwxvwwxwwxwxwxwwwwvwwxxwwxxwwwwfxxwxxxwwxwwxxwwwxwxwxwxwxwxwwwwxxwxxxxxxwxxxxxxwwwwvwxvwwvwgwwwwwwwgxxwwwxxvwwwwxxwwgwwxwxxxxxxwxxwxxwwxwxxwxxwwwvwxxxxwxxxxwxxxwxxxwxwwxxwxxxxxwxvvwwwwwgvwgvxF5StwgvwfwwwwwwwwgvwwwxwwwgvwwvvwxwxwwgvwwwwhgvxxwwwwwXgvwwgvwwwwwwvxxxwwwwwvwwwwwwwvwvwxwwwwwggvvxwxvwggvvfwwwwvxwxwwwxwgvwvwvhgwgxwwvgwwwwwwvwwxwxwwvxhwgwxwwwwvwxxwwxxxfwwwwwwwXgvxwwwwwhgvwgwgwwwwwgwxxwwwwwxvwwwwwgwwvwwwwxhWuxwwwwxxwwhxwxxfwwxwwwwhhwwwxwwwwwwgwxwwvxwvwwxhxwxwwxwxwwwwwgxfwxxxwwwxxxwxxxxxxwxgvwwwwhwwwwwwxxwggvvxxwxfvggvvwvvwwfxgxwwxxwwwwwvhwwwxwwwgwwwwvwwwxwwgwwwhwxhwwvxxwxwvwxgwwwwxxxwxgvxxwwwxvxxwxhwgwwwwvwxvhwwwwwwwxxxxxxxxxwwwwhwwwwgwwwxhvwwwvwwvwvxwxxwxwwxxwwwwxxhxwhwwxwwwwwwwxwxgvwwwfxwwwxxxxxxxxwwxxwwxxwwxyuwvgfuvwgvvxvgwgvwvfffugWfvwwvvevuveefwvwwvvvwegfvefvffvwvwvwwwwvvewwwvwvgfwwwwwwxxwewgvffwggwwvxwgwwwxgwwwxxvwwwwwevfvvwxwwfgvvvfvwwwffwwevwgfvwwwwwwwwwxwvwvwwwxwwwvwwwgwwwwwwwwwwwwxxgxxxxxwvwxveVfwwwvwxwggwvwwwxwgwvvwvvufvwwhxwvwwvgwwxwwwwwwvgvwwwwwwwwwxxwxxxxwfwvwxfgwwwxxxxxwwxwxxwggwvvwvwwwwxxxhwwwwwxwwxxwwwwwwwxxwwxxwvxwwxxwxwxxxxxwxxvvvwvffwwwxgwxfWvwwvvxvwxwvvvvvvwvvvwxxwwwwwwxvwwvwgwwxwxwxwxwwwxwwwvwxwwhxxgwxwwwvvxwvwxxwwxwwxxxxxwxwxxxxxxwwxxvvxwxxwxxwwxwwwwgxwwxwgwwwxwwvxxwwxxwwwxwxgwwwwxwwwxxxxxwwwvxxwwwxvwwwxxwxwxxwxxxxwxwxxwwwxxxxxxwwxxvwvwvvwwgvgwwwwvwwvgwwgwvwgvgxxwwwgvwxgwvwwwxxwwwvxwwwwxxwwwwxxwxwwwwxxwxwxwwxxwwxxwxwwvwwwwxwxwwvxwxxxwwxwxxwxwxwwwwwhhwwxwxgwxxvxxxxvwwwwwwwwwvxwwvwwwgwgwgwwwwgwwwwwwwvwvwxwxxxwwwxxxwxwwxxxwxxxxwgwxwwhgwwxxxxxxwxxwxxwwxxwxwvvwwwwwwxwxvwwxwxxwwxwxwwxxwwwwwwwwxwxxxxxxwxwxgvxxxxyxxwxxwxwvvxxwwwxxwvxwxxwwwwwxxxxwxxxxxxxxwxwwxxxxxxxxxxxxwwwwvfvwvfVfvvwwvwfvffeugffuwvvfwfguvwgvUVVvgvvffvgwvwgwwwvwfwfggwwwwfvvwvvwwwwgwgwuffwwwwgvgwgxvwVvvwwggwwwwfxvwgwvwfgwwfxWfffuvfwwxwxwfgvvwwwwwxwxfwwwxxwwxwxwwgwgwwwwxwwwwwwgwgwwxxxxwwwgxxwxxwwxwxvfxvxwwwxwwwvvVwwwfffwvwvwwwwwffgwwwgvwxgvvwwwgwvwwggwwwxxwvwxwwwwxxwxxgwwxvwxwwwgwxxxfwwwxwwgvgwwwwhwgwwwwwxwwwwwwwwwwxxwvxwwxwxxxxwwwwwwwwxxwxxxwxwwwxwwwxxwwxxxxwwwwwwvvggxvfuevuuwvwwwxvwwwwwwwwwxgvxxgvxwxwgvvxwwwgwxxgvwwwvvwxxgwgwxwhwxxwhgwgwgwxxxxwwwwxwvxxwwxwwxwxwwxwxwwxwwxxxgwxxwwwwwwxgwwxwwwwxxxwxxxxxwwgwwwwwxwwvvxxxwvxyxwxxxwhxxxywwwxxwwxxxwxxghhwxxxxxxxxywxxxxxyxxxwxwxwvwwVuvwWvfwugVgvfwfwwwfggwfwwvwwguvgvwwwwwwvwwwwwwxVuvwfwfwVUvwvwvufwwwwwWvgwxwwvvvgvuvwwvwwwxxwwwwwwwwwvWvfwwVUvuxgwwwxfgwwwvwwwwxxhvwvwfwgwwwwwxwxxwwxwwwwxxugVwvwwwxxxxvuvwwxwxxgwwgwhwxxgwxgwwwxwxxgvfwvufwfgwwvuvwwwwwwwgvxwxwvwwwgvxwwxvxxxxxxfwwwwwwwvwwwxwxwwwxxwwwxxgwxwwxwwxxwwxwxwwwfgWvgwwxxgwgvxwwwxxwwwwwwgvwxvxxwwwwgwfwwxwwxhwxwxxxxxwwwxwxxxwxxxxxwxxwwwvwvvvvwvwgwwvwgwwwwwwwwvwwxwwhwxwxxwxxxxwguvgvuvfwghwxwwgvxwwwgvxwwwwxwwwwwwwxxwwwwwwgvwwwwvwwwwwxgwxxwwxwxvxxxxwwwwwwwwwxwxxwxxwwwwwxxwxwxwxvwwxwxxhwwwwwxxwwwwwwwwxwvwwwwxwwgxxxwxwxxxwxwxwwwwwwwxwwwxwwwxwxwxwwwwxwwxxwwwwxwwwwxwwxwxxxwwxxxwxwwxxwwwwxwwxwwwvxxxxxxwwwwxxxxwwwwwxxxwxxwwxwxxwuffwefwvcefwfefvfvvvwVewcfevfuvwUwwfuwwwwvvwugvfggvvvwwxfvvvfTcTefvfFVfvvvwfwwxVuuwwGVhuwwwvggwwfwwwgwwgfxwwwvwUvvfwvwfVfwfwwwfgvwvggwVfugwwvwwwvwwvguwwxxwwxwxxvvfwffgwfvvvwwwgvvwwgwwwwxwwwwwwwxxwwgxvwwwwvwfvvvfffwwwuTewwwwwefVwwwxwguuwwgwwwgvwwxgwfwwwwwwgxxhxwvfwwwwvwgvxwwwwxwgWwhxwwwwwxhwxgxwgxwxxwhxwgfvxwvwwvgwWfuwwwwwwwVwwwxwxxwwxwxgvxxwwgxwwwxxvwxvwwxwwvxxxwwwwxhgwwxxxgxxxxwwxvwxxdvwvvvwvwfwfwvtvvwvwwvwwwvgwfvwwwvggvhxwwwwefvwvVwwvfvwwwgvwwwWvwwwwwgwvwwwwvwwwwwxwxwwwwwgwwwwwwvwvwvwwwwxwuxwxwwwxwwxwxwwwghwxxwwwwwwwwxwwuxvwwwxwwwvxvwwwwwxxwxwwwwxxxwwwwxfvvfwvxgvwxwvvvwxwxwwxwhxxwxxxvxxwgwhwwxxwwwwwwxxgwwvwwwxxwwwgxwwxwxwwwwxxxxwwgwwxwxxxxvgxwwxhxwwxxgWwxxxxwxxxxwwxxfwxxwwwwwwvxwxwwxwwxwwwwwwvwwhugfgwwxEeuwvgvGvevfgwweggvgwvfgggvwwwuwwxwvvefwwwwwwwwwFfvvfffwUgfufedvwFEwhwwgvuxwwwudVwvwwwwvvwuwwhgvehwvwgwxwwxeVffgvwgwvgfevxegVwwvwwgwwwfwvvwwxwvxwwxwwwxxxwxwxwffVvVvfwgwwwWghgwwxwWgwwxwwwwvvwvwvxgwwwwxwxfwwvxwvwwxwwvvgwggffWfwwxfdugvgvwwgwwwwfvxwxfgwwwwwwwwxwxwwwgwxvvwwwwwgwhwhwgfxwwwwwwwwvwwwxxwwwwwvfggxwwwxwVuxgwgfvfwxgvwgWhvwxxxvwxxwwwxxxxwxwwwwfgwwwwgwwwwhWxxvwwwxgwwwwxxxxwwvwxxxxffvwvwwuwwwxufewwwxwwwgwwwwxxwwwxwgggghxxwvVdwvwfwgwvvfwwwvufhwwvwwwwxgvwxwwwwxxwwxxvvxgggwxwvxwwwvwvxwwwwxwvwwwhxwxwwwxxxwgxwwxhgwvvvwwwwwvxwwxwwfvvxwgxwwwwwxxxxwgvxxxxxwwgwwwfvwxggfwxwxwwvhvwgwxxwxwwxxwxwxwxxvwwwwwwwvwwggxxxhwvwgvxxxwxwwvwwvwwwhxxwwhhwwwwggwwxwxwgxxxwwxwxxxxxwvxwwwwxxwxwwwwxwwwwxxxxwwwxwwwxwwwxxxxwcffvVvuwffvffvVfufvgvgv6UuvwwfevufFdfvxwwfvvwvfguwvwwwefvwfffVveueGfuufwvvffwwfwvddvvfvveVeecevuwvfwwwvvfwvvwvwwwwwfhwfevvffVfvVeuvwvwvVFfwvwvwvgfgwgfVevgvggfwxwwwxgwvwxvgwwwwwufVvegwufvwwwwvwffgvxgwwvgvwhwvfgvwvwvwfgvwwwfwxgwwwxxwvwvvfvgwuuvfgwwveewvwgwwfgvvfvwwwwwtfvvwwwwvwwggwvvwwgwvvwwxwwwwgwwxvwVgwwgwwwwgvwxvvxvwwwxwwwwewwwwfffwwwgvwwwwvvvvgvgwvwxwwwgwwwwgwxxwwwwwwwvwvwgwwwwwwwwvwwwewvwgfwxwwvwVvwgwwxwxwgwxwvxxxvvfwxwxwxwwwvvvwfvvgwwwuwwvUfvwvwwvvwxvggvwwwxwwxvvvwwwwxwxwwffwVvgwwvvwffvwwvgwhxgwwwwvwvwwwWwxwxwwhgxhwwwwwwwvwwxwxwwvvxvwgfwxxxxxxwuxwwxxwwwwxxxwwxvwwvwwwwwvwwgvwxgwwxwwwwwwhxwwwwwxwgwgwwxwxwVvwwwgwwwwwgxxvvwwwwxxwxwwwgwwwhxxwhwvwwwhwxwgxwwwgwwwfwwWwwwwfwvwxwxvwWwwwghxwvwxwwwvwwxxxvhxwwvwwhwxwgwxxwwgwxxxwwxxwxwxwvxwwwwwxgxwwxxwwvwwwwwwwxwxwxvwwxwwwxwxtfwwfwxeuwgfTuvvfwwvefewfwwfvvgvfgwgvwwwwvdffuegwUvvwVvwwvvwvfUTvwwwweTvuwvwwfUgfwvvwuwggvvwewfwvwwxeevgwwwwvVfwwwwwfvwgwwwwwwwUeVwvwwwfwwwwwvfwwwwwxwwxEgugvwwwwwxvfUwwwwxVevgxgvwfwwwwfvwvgvxwwwvfwwgwgxxwwwwhevvvwwwvggwVfwggfwvwwwxuevgwvwwwxvwfwxwfvxwwgxwwwwwvwwwxwwwxxgvwxxwggxwwxwwwfxxxvwwxxwvwgwvwwwvvgvxwwwvwwgwwgvvwxwgxvxgwxwgvwgvxwwwxgvxxwwgxxxwxvxxwxxwxwwewvwwwvwxvfvvgwwgwxuwwVvxwwxxvxxvvevevwvexgxfvwwxwvwvwwwwvwwvgwwwwwwvWwwxxgvxwwwxxwuwxwxwvvxwwvxwwwwxxwvvvwwwxwfxwwwwxxwxxwfxwwwxwvwwvwxwxVwwwwwvwvxxxxxwwwvvwxxwxvwwxxxxxwwxxwgvWxwwfwxxVxwhxvwvwxxvvwxwwxxxxwwwxwxxwxwwwwxwyvwxxwxxxvxxgxewxxthgwfvwwWvvwvgvguvgvfgvfFTvfgvgguwhvgwwvgWwvxfWevgwvwwvvhvxwVvwwvfwfgvwgwwxwVgwvgvfggvwwVevfwwgvwgwwgvxgwggvvwgVvvwwgwvwgwwwgvggfwwwwxfFTvfwwwwgwgxwxvgxwxwhwxxxhwwgwwgxwwwwxvgvgwwwgwvwxvwffvgwXewwwwwwgwwwwwwxxwwwwwxvwwwwxwwwwwwwgvvwwfwhggwvwwwwwwgvvwwghxxwwwxxxgxgwwwxxwgxxxgwxxwwwwwxxxwhwgxwgwwxwwxxwwxwghgwhxxxxwxgfvgwwwwwxhwxwwwhxwxhwxvwxhhxwxwwwwxwxxwwxxxwxxxgwwxxxwwxxxhxxwwxxxvxxxxxxwwxxgwxwvwgwxgWugwwwxwwhwwwhwwwwxxxwxwxwwxxxwwgxwgvwxwxxwfgvfwxwwxwwgwxwwwxxvwwwwwxwxxwxwwxwwxxxxwxxwwxwxgxxxxwwwxwwxxwxxxxxgwxwxxxxwwwgwwwwxxxwxxxwxgvgwxhvwxxwWwxwxxxwxwxxwwxhvxwxwxhxhxXgwwwwxxhxxxwxxhxwxxxxxwhwvxhwxghxvhwghxwxwxwwwwwxxhxwwxxwxxxxxxxhxwxxxxxxxwxxwxxwgxwwgwgwwwgwwVuuwvwgvWvvwVwvgwvgwwgwwxwewWwwwhwwwxxUvuwvugvfgwwwVwgwgwwgvuvwwxvWUvgwugwxwwwwxwxwwwvgvewwwvwvgwwfWUwwxvgxxwxugfgwgwwggxwxxwwwwxgxwwxwxuwWevwgwwxvgwxwwxhwxwwxwwwwghhwwwwwgwwxwwwwwgwxwwwwwvugwwgwfvwgwwwwxgwwfuvxwwwwvwwvwgwwwwxxxxwwwvxwwxwwxwwwwwxxxwwxwwwxxxwvxxwwwvgwwwwxxWwfwxxwgvxwwwwhxxxvxwwggxwxwxwwwwgwxxwwxwxwwxwwxwwxxgwxxwgxwxwxxwxwxwwvwwwwwwwvvfwxxxwwvwvwwwwwwxwwwwxwwwhxxwvguggvgwwVgwwwwwxwuwhgwhwxwwxwxvxwwwwwxwwgwwwxwwxxwwwxwxxxwxxxxwwfxhwwwwxxwxvxwvwwxwwwwgwwxwwxwwwxwxwwwwwxwwxxwwxwwxxwwgxxwwwwwwwwwxxwhwwxxwwvwwwwwwwwwxwvwxxwxwxwwwwwxxwxxxxxwwxwwwwxxxxxwwxwxxwwwgwxwxxwwxgwxxwwxwwxwwwwwwwxxwwxxwtvgwgwwwVfefwwVfvvggeffvwvfvvwwgvwvVevwvgvwfwvwvvgwwwffvvvwgvvgewwwfgfwvvwwffwwwwxuwwwvwvwvvvwghWwwwwvwxwwwvvvwvvwwvgfVwwvggwwwwVvvwwxwgfwwwxffVVxgxwwxwvxvhwwxhwwvwwgvwvvwxwxwgfwwgvwwwwxvvxxwwgwgwvwxwwwxwwwxxxwgvwwxwwwwwWvfgwgwwwwxwwwwwxvwwwwxwvfxwwvwwvxxwxxvwwwxxxwwgwwxxxxwwxhxwxvxwwxwwwwxwwgwxwxgwwxvxxgwxxwwwwwwgfwxwwwwwwwxhwwwgWxxwwwwwxxwgxxwxxxxwwwxwxwwxhxwxwxgwwwxwgwfgvxwvwgggwggwwvgxwwwwwwwwfxxwwxwwwxxwxwwwgwuwwwxwxwvvwwwwwwxwwxxwwwxwwvwwwwwxxwxwvhvwwwwwfxwwwxxxwxhwvwwxvxxxxxxxxxxvxwgwxwxwwxwwwxwwxwxxwwxhvwxxxxgwwxxwwxwxxwxxwwwwhwxwxxvgwxxhwxwgxwxhxwwwgwwvwxwxxwxxgwxwwxwxxwwxwwhwxwxgxxwxwwxwxwxwxxxxxwwxxxxxxwwwxwwwxwxwwwxtwgxvwgwfwwwffgfwfwfgvgvgfgwvwwwwHgfwwgwwvvxGffwggffwwgwwwgwfxgffvfwwggvwgxgwvwwwWwwgwvwwwxgvwxvwgxwggwwvxwwxfwvwGgfuwwwvwgwGffwwwwgvwwxwggvwwgwwhxwwwwwxxxxwVwgfwwwgwwwwwwwvhxwwwxxwwwvxxxwxxwwxvwxgwwgxwwwxgwwwxxvvwwXxwvXxwxgxwwhwvvxwwwhgvwxwvwwwwwwwxxxgwwxwxwwxwxxxxwxxxwxgxwwxfvxvvxhwwvgwwxxxxxwwwwwwwwwwwxwxxxwxxxxwvxwxxxxxxxwvwwwwggwwwwgwgvhwvvwvgwxwgwwwwwxwxwwhwxvwwxwwwxxgwvwwxwwuwhgwgxWxwvvvgwwwxxgxwgxxvxxxwxwwwxwxwxxwwwwxwxxwwwxvxwwhgxxxwxwxxxxwxhwxwxxwwxwwxwwwwxxwxxxxwxxxxgxwwgvxwvvwXxvewwgxxwwxwxwwxxxxwwwxvxxwvxxwgwxxxxxxgxxwxxwxxgxxxwxwxwwwxwxxxxwvxwxxwxvvxxxwxxxwwxxxdgvwTevwUuewTfevfwwffwfevgvvvwTuvweVvfwgvffwvffwwwwwgvwwwxxxggfwUdefefvwVffffwgwggwwwwwvvfUdeVVvfvhwWfwwwwwwwwwwxwwevuffevwfgwVvdvvvwvfwvwvwxwwxxwgwwvfwwwwwwgwwgwwvxxwgxwvxhffeefevewwxgwwhgvwwwwuwwxwwwgwgwwgvvwWwxwwxhvxvxwxwwxwwvwwxgeVwtevwfwfwWdfwgwWuVvgwvWvevwwwwgwgvxgwgwWvgvgwvwxxwwwvwwwvwwvwvVvxxxxwgxxwwwvwxwwewwhvwwxvwxwxvwwxxwwvgwgvgvgvvwwgwvggwgvwwxgxwwxwvgwwwwhwvwwxwxwxwxwxwxwvwxvwuxhwwwwwgvwxwgwwwxwwgvwhxxwwhxhwwhxevuwufuvuwwwguwevwgwwwgwuwwwxwgwvvuwwwwwwwwwxfuvufffwfvwxwvvvxgvvwxwwggufwwvwwhxwwwhxwwxxvxwwwwvvwxwxwwxwwwwgwwxxwwwwxwxxwxwwwwvxxxxwwxvfwwwxwwfwwxwxwgwwgwwxxxwwgvfwxwwxuwwgvvwgwwxfgwwxvxwwwwwwwxxvwwxwxxwwwwxxwwwwgwxwwggxwwwxxwxwvwxxwwvxwxxxwxwxxgxxgwxxxvxwwwwwwwxwwxwxuwwwwwxxxhwxhxxwxwwwxwhvxxvwwvwwvxwxwxwxxvwwxwdUUvfvvUvdwvEUffuvugfuUfgvvEvuwufvuwfxvwxvEevgvuwfwvvwVuugtVfveUfvTuevtVvvgwvxfvwwffwfeevegwvufwfwgwTuvvxgvuvwgwwvVvewuUTffgVvvvgVeEevgvuwwwxwgwxegVwwwwwwxwwwuVgwvwwxfxefevUvvgvgvvvwwfvfxwVewwwwxwfvvvvwwwwwwwgwwvxxfvvwvwwefVwfvuvwwwxevvwwwwwvggevwwvxVfwwgwvwwwwwwvwvwvwwwgwvwxwwwwvgvwwwwwvwwwgwxxgwwvwwwwwwwvUfvgvwwwvwwVvfxgwwwwwxwwvxxxgxfwvwvwwwwxvvwvwwgwwvgwwvwwwgwwvwgxvgwwxxwhxgevvwfgvvvfgwwvwvfvvwwwwwwxgffwvwwwwxvwwxwwwxgVvvfuwgvwwwggvwxwwwwwwggwxvwxwxwwwhwxwxwxxvwwxvwxwwwxvwwvwwxwxxwwwwwwwwwvxxxxxwwxwwwwwwwwxxwxvxxwxxwxxxwxxfwwfwwgwwwwvxwxwxwxxgwxwxwvxxwwwxxwwxxxxwwwxwwxxwwwxwxwgwwwwwwwxwhwwwxgwwwwvgxwhwgwwwxwvwxwwxxwxwvxxgxxxggwwwxgwwwxxxwwwwxwwwxwgvwwhwggwwwxwwxhwgwxwugVxgwwwVvxVvggvwwgVwVvWVvwwwwwxvuvwvwwwwwwvWfWgwwgwwgfwwVwvgewvwvfwvhvgvxwxxvwvwxxwwgwvgwvwwgwfwwwwwxwfWwvwxwgwvwvwgwWvWvfvwfwvgwwWvwwwxwVfWuwwwwwwwvwwwvwwvxxwxxgwgggvwfwvwwwwxfgwwgwhwxxwwgwwwwwwxwwwwxxxwxwwvxwgwwwwwwufggggwwxxwwwwwhwwvwgwwgxwwwwxwxxvwwxxxwgwxwgwxwgxxwxxxxxgwwxxxxxxwxwxxxxwxxwxwwwgwuwwvwxggwwwwxwxxvwvxwwwwwwxwxxwwvwwxgwxwwwwxxxwxxxxxwxwhxwxxxwwwxfgggwwwuwwvwwgwwwWvxvwgwxxxwwxvvxwwxvwwhxxxxxwwwvwwwwwvvvxwuxhhwvgxxwwwwwvwwxfwwwwwwhxwgwxxwxwwxwgwwxwwwhxwggwxxwwxwwhwxwxxxxxwxwvwwxwwwxwwwxxxxxwwxvwwxwvxvvxgwwxxwxwhxgxxwvwvwgxxwwwwwxxxxxwwwwwhxwxxxhxxhxwwwxxxwwxwxwxxwxhxgwxxxxwwwxxxxxxwxxxxxwxyxxwxwwxxuvfgfvvwfvvfwwevvwwVuvvWvwvvwdtufdgvvwwwwvwffvvfvvfvwhwgvvwvfwvwgwwwwvEdvvvwwvwwwweevvfvvwvwwxwvVfewWewwwwwxfuuwvwfvwwwvvwwgwgwwwfwwxxwfffVvuvvwwwwwwwgwwwxxxuffwvvwwvwwvwwwgvwxwxwffvwwwwxxwwxxwwxxxwxwxwvwwuevgevfwwffwxwwwwwhwwwvfgvvggxvgvxggwwwwwwwwwxxxxxvwwxwwwxxwxwxwwxxwyvvfwwgwwxxxxwwvwxxxwxwffgwuvwxxwwwwwwwwxwwfwwwwxwgwxwwxxvwwwwwwvwwwxwxxwxwwxwwwwwvwxvwxxwxxxxwuuwuwgwvwgvxgwwwwxwwvwfwvxwxwwwwvvwwvwwvwwxvfwvxhvgwwwvvwwgwwwwwgxwwwwgwwxwgxwxgwwwxxxwwxwwwwwxwwxwwggwwwwxxxvxwwwxwwwwwwvxwwxxxwwvwgwwwxwvvgxwwggxhwvwwxxxwwxxwxxwwvwwwgwwwxwwwxxwgxwxwwwwwwxxwwwxxwwxxhgxvgwxxxwwvxxxwwwxxxwwhxwxwxxwxxvwwxgwxxuggvfwwwwxvvgvgvwweffwevwvwwwvwuwhvwgwfuvwvfvvwvffewwwgwwgwvvwwguwvvWuwwfwwwuwxwwwwvwwgvwwwwwfvwfufwwvwvxwwvgvwxgfwwwgfwvwffwvvvwwwwgwxuwwWwwwvwwwwwwvgvwugxhxxwwwwxwwwxwwhvwxwuxwvwwxwwwwvwwwwhvwhwwwwgvwvvwwwwgwwwhwwgwwxxwxvwwxwxxwwwxwwuwwgwvwwvvvvwwxwwxwwxxwwwwwxwwxvvwhwwxwxxxxxxvwuwwwxwwvwxwxwwwwgfwwxwwwxwwxgxgwxxwwxwwxxwxxxwwxvxxwwgxwwxwgwwhwwxxxvvwwwvwwvwgWwvwvWvwwwxwwwxvwxwwxwxwwwxxxwwvgwvwgwwwvvvwxgwwwwxwxxvwwwxwwwwwwxwwwxwwwwwwwxwxgwvwxwxxwwxwwxwxwwxxwxxwwwwxxwxwwxwxwxxwwxwwvxxwwxgxwgwwvwvgwwvfwwxwwwwwwvgxxwxxxxxwxxxwwxxxxxwgwwxxgxwwhhwwxxwwxwxwxxxxwwwxxwwxwxwxwxxwvxxvwwgvvwvwgvvwwwvxvwfvgfweefwwwwgfgvvgvfwguwfVgewvwxwwwxggwvvwfgwwVefwggvvwxgfwwgvvvvgfwwwwwwwwvwwfgwgwxwwwwwwffwgvwfwvwgfgvfhgvwvwwgffwwwwwwwfvvwwxwwwxxxxxxwwvgwwwwwxxwxggwwfxwwwxwvvwwxwxxxwxwhxwxxwwwxwwxggxwwxvfwvfguwvwwwwwwwwwwwgvgwwwxxwwxxwwwwwhwwxwxwgwxwwwxxwwwxwxwwwwxwwxwvwxwwwxxxwvxgwwxvwgwvxxxwwxwxxxxwxvxxwwwxwxxxwxwwgvxxxwwxwwxxxxwwwgwwggwwfwgfhvwwwxxxwgwwwhwwfwwhgwxwwwxwwwwwwwwwwhfwxwwgwxwxgwxgwwvwwxxxwwwxxxxxwwxwgwxxxxxxxwxwxxxxxxgvhwxwwwwwwhwwgvxwwwxxwxxwwxxxxwwwxwwxwxwwxxxxxxxxxxxxxxxxwxwgwwwwwxxxxxxxxxwxwxxxwxxxwxxxxwxxxxywxwxxxwxwvwgVvuufwwxvgfwgvvwwfvgwwgvwwWuuUefgvwFVvvvwfvvwvvwgvvhwhwxgvvvvffvugvfvwwffwvvwgvvggxvguffffvvvwwfwwgwwgvwvwgxgWwgwvvwwvwfwggvwwwxvgwwwvwgwxwwxgVGgvuwUgWUvhwwgwxgwhwxxgwwVwfwvwwxwVwwwwwuxgxuwwwvwgwwvggwxwwwvwwvwwxwewwwwwwwwVwwwfgwwWgfwwvgwwhwvxwwvwwwwvwvvxxwgwvwwvvwvwwgwwwvwwgwwwvxgwwxxwxwxwxxwxwwwwwwhwxwvwwwwwwxxgwwfwxvwggwxgxwwwwwvgxvwwxwvgwwhwhwWwwwgVwgwxwwwhwgxgwxxwwgxwwgxxwwwgxwxgwgwwwwwxwwvxfxxxxxxwgvWgvvwvgwwwwwxwwwwxwwxxvvwvvwwwwwxwwvxxxwwwwwevwwxxvvwvwWvvxggwxxxwwwwwxwxxwwxxwxxxwwxwxwgvvwwWwwwxxgwwwxxxxxwwvvvxwxxxwxwxxxwwxwwwxwxvwfwxxxwxwxwwwxxxxxwxxxwxwhgwxxvxfvxwxxxwxxwwxxwwwwwwxwxxxxxhhxvxxxxwxxwxxxxwhwvwwxwxxgxfhxxxwxxxxwwxxxvxwxhwwwwwxxxxxxxxxxwxxxxwwgxxwxxxxhxwxxewvxgwvvvwgwvuvvvwfvwvvwvvvwgxvewegWwfgwevfwfgwwfuewwwwxvvwfvvvguvfwwwwvgwwgwwwfvwwvguvvwvvvfvwvwvfvvwwvwvwwgwwwwxvwvvwwvvvwfggvfvwwgvuwvwwwgWwwxwwgvwvwxggfvuwvxxgwgwwwwwwgvvwwgwwvgwfvwwwxwwvwwwwfwwwwvWwfwxvwxwwwwwxwwwxvwwwwvwvgwgvwwxgxwxwvwwwxwwwwwwwwwwwwgwgwgxwhvwxwxwwwxgxwxwxwxxwwwxwxxvwwxwwwwwwvuxwwwwxxgwxxwwwwxwxvwwxwxwwwgwwwgwwxwwxwxwwxxwwxxxwwwwxwxhwwwwwwxwwhwwwxwvgwwwwvvwxvvvgwwxwxwwwvgvwxwwvwxwwwwwwwwwxwvwuwwvgwxvwwVwwwvxwwwwwwxvwxwggwwwwxwwwxwwxwxwwwxwgxxwwwwgwwvwxxwwxwwwxxxxxwwxxwwwxxwwwvwwwxwwwxxxwxxxxwwwwwwxfxhgwwwwwwwgwxwwwxxwxxvwxwwwwxxxwxwgxxhwxxxwwxxxxxwxhwxwxxxxwwxxxxxwxxxxwwxxwwwwxxxwxxwdwgggfwxvvvggvgffwfffwfgfvfwwxWvwwvgfwvwwwfvvhVUDvfgfwffwvwxgvwgfwgfvwfvwxfgfwwxhwwvwfwgwfgfwvwvvvfvwgwfwfffgfwfwguwxggvgxwggfwfwxVgevwwwwwwxwgxWUDvwvwgwgwxwxvwgWwgwwgxxwxxxwwgwwvwwwxuwwwgwvxgwfwwgvxwwwgWvgwwxwhugwwxwxwxwxxwwwxgfgwvgwwgffwwwwwwvxgvwwwwwxgvfxxxxwwxwwxwfwwwwwwwwxwxwwxwxwwwxwvwwxxwwwxxxxwwwhxwhwwxwxwfgxxwwwwwwwwvxxhvxxwvwwwwxxhwxwwwxwwwwxwwxwwxxxxxwwxhxvwxxxxxwxvwxwxxxwwhwwwxwwwwxgggvwwwwwvxxwgvwxwxxxxwwxwxwxwxxwxwgwvwvxgvwxxxgvwwxvxuxwwxxwwvwwxgxxwwwwhwhwwxwxwwwwxhwwxxgvvwxhvwxwgxxhwwwhxxwxwwfxxxwxwwwxwwxxwxwgxwxxxxxxwxxxxxxwxxxxxwwfwxxxgwwwxwwxfwhwwxfxwxwxxwxwgwxxgwwxxwwwxgvxxwxxxxxwxwhxxxwxghwwxxwxvxxxxwwvwhhxwxhwwhxwxxxxxxxxxxxhxxxwxxxwxvxxxwxxwwwwVvuwwgVvwfVvwwvgvwgfvfwwwwwFtuvtfgvxwwwwwwvffvfvvgvwxxVvufwWTvfefwgvvWwwvwwxwwwwxwxwvgevWtgvvggvgwwwfwVveuwwwvxwxgxvwWeVvdgVvwgvvwwwgwgwfvwwwwghvgfgxwwhwxftwwwhwxxfvGufwfgvvwwwxvggvvvhvwxwwwwwvxvwwwwxwwwwwxhvwvwwwxwwwvvwvgfgvwggwwwgfxwhvwwwxwvvgveuvwwwxxxgvWuwxuwvwwwwwxwwgvwwwxwwvxvhwwwwwwwxgxxvgfwxwxvwwxwwvxwwwvwxgwvwgwwfwwxgwxvgvxuxxwwxxvGvvxhgxxwxwxfXuwwxxgvVvwxgwwwxwwwxwvxxxxxxvhgwxwwgwhwxwxwwvvvgfvwxxxgwwxwwxxwxwvgvvwwxxvwwXgWufvvWwwwwwxwwwgwxgwxgwvwvwvgwwwwwvwvwwwwwwwwwgwgvxwwhwwwgwxxxwwvwvwxgwwwwvhwvwgwwwxxwwwwwggxwwwwhxwxvhxxwgwwwwxwwxwwgwwxwwxwwgXxwwwwwwhwxxxwwwxvgwwwgxwxxhwwxxxwxwwvxwwwuxwhwxxgvvxxwxxxwwwhxxwxxxxwxwxwxxwxwxhwhxwwwwwwgxwxwgwhxwhxwwvgwxwhwwxwfvwhtgfvWvugfvvveUDvfvvwuWfvvffgvuwfuvugfufvvgWvvvVwvgvwwvwvwxwwfwfgwwevvfWfvvvwvwvxwwgvwvvvxwvvewuvvvgugfwvgugwvxvwfwvxfwwwwwwwwgffevgUDwgfvvgwwvwgwwwwggvwfwvgwwwwwxwxwvwxwwgwwwwvwxwvwfvewggvvwwwwgvwwwfwwwxwvvvwxwuwwhuwwuxwvwwwxwxxgwvwwwfwwwffwvwwVfvvwwwvwwvwvwwgvwwWwgwwwwgvvgvhwgxgwxxwxwwwwwvwxwwwwwxwxwwgxwwxwxwwxwxxhwxwwwwvhwwwwwwfgwwgwwwwxxwWvwxgWwxxxwwwuxwwxwxvxwvwwxwxxxwxwwvwhgwwxwwwuwwwwxwxxwxwxxxxvxxwwwvvfwgvvgwvgwgxwvvwxxwwfwwwwwwwwxwfwwwwwxxhwvwxxgggwwwgvwwxwvgwxwvwxwwwvwwuwwwwxwWgwvwwwwwwhwxwggwwguwwgxwwgwwvxxwgxwwwwgwgxwwwwxxxxwwxxwwxxxwwwgwvwxwxwhxwvwxwxxxwwwwvxwwvfwwgwxwgvwwwwgxxxwxwxwwwwwwwxvwwxwvwxxxwhgwxxxwwxwxvwxxgwxwwwgxwwxwgXwwxwxxxXxwxwxwxhxwwwwxwxgxhxwwxwxxwxxhwwxxwxxwxxwxwxxxxxxxxwxxxxxwtwvwFvefEwfvdVVfewvwgVVvvwWvffWgwgvgwwvwwfvwfgfwgvegguwwgggfwwfffdvwffvfUUgfxvvwggfgwgvvgfggfgwfgvWfwvvwwwfwfvWxWGwwwwwgwfvvxVgVwgwwfwfwvWvfwFVhvfxwXwgwwwwwwwwvwwwwgwxxwxxwwxxxgxwfvvggwWvwwvgwggwfWwxxwwwwfgwvwfwwxwxwwwxwvhwvwvwwxvgwgfwwfggwgvggvwwwgggvVwwwugwhgvwvwVvwhwfwgwxvvgvvxwvfwgxwwxwfwwwwwwwvwhwxggwwgwgxvxwwgwwwgwwgxwgWhgwwxxxggwgwgwwwWwwwWwwwwwwgwhgwgvwgFhwxxwxwgxxxwxgvxhwwwwxgwwhxwwwxwxwgwggwxxxwhhfxwwwwxwwwxwxwwxwwwxxxgwxwxxxwVvvgugvwwwvwwwvwwwgvwwgfwvxxgwxvwwwwwwwwvwwwhxwxxxxxgvfvwgfwvwwvvggwwguxxwgwxwwwgwgffwwgwhxwxwwxwwwgxxvwwgwgvxxwxwwgvwvwwghxxhgxxxwxxxgwwxxxwxhwhwwwxwxwhwwxxvwwvxwxwxwxwwxxhxwgvxxfwwwwwwwgxxgwgxvgfwhuxwwggwxhxwxwxwwwxhxWwwwxhxxgwwwwxwxxwwwgvwwxhwxwxgwxgwVwxexxwwwwxwwwxwvxhwxxxwxwwwxxwwxwhwxxxxwxxxxwxxxxwxxwwxwwwwhvxxxhxxvhwvwxwxvxxwwwhxxxxvfxgwxggwgvwxxWugwvxgvwWwfwvwewwgugvwgxfwwfvvvwwvugwwhgwvugwvvwwwvgwwwgwfwwwgwvwvvwwwwvgfghwvwwhxwwwvxWufuxwwwwWwfwvwfwwwxxwgwwfwwwwvgwxvwhxwxxgwfwwwwwxxwwwvwhvxwgwxvxwxxwwwwwwxwxxwghwxwwfwwwxwxvxuwwwwuwwwwxxwwhwwxxxxwxxwwxxwxxxxgxwgwxxwwxxhvxwxxgwwwuvxwwxvwvxhwhwwwxxxxwxxgwvxwxxwvxwxxxxwwwxxwwxxhxxxgvgwwvhwggwwwwwxwxwwxvxxxxwwwwwxxxwwwxwvxxxwfgwwvxwwwvwgxwxxwvvwwxwwwhvxxgxxwhxwwwwwwxwwxwwvxxxxwwwwwxxxwuvxgwxwhwwxwvxwwxxwwwxxgxvwxxxxhxwxwxwwxxxxxwxxxxxxwxwxywxxxxxxwwxxxhxxuvwwgwgvwwvwdwwwfvfgvvgfwwfvTwvwvfvvvvwwvwwwvvwvdvfwvwwvwwwvwwgtvWvwwwfvwwwwwvgwvvWwvwwgwvwuwwwwwgwwwvWvwvggwwwwwwwwvwfvwwvwvwwvgwvugwwwwwwgxwWwwvwfwwxgfvwwwfgxxwwwwwwwwwvxxgvvwgwwvxvwvuwwxwwwxwwwwwwxxwxwwwxvwwwvwgvwwwwwwvwwwwwwvwgwwwwxvwwwwtvfwxwwwgwwwwfxwwwxwxwgxxwwvwvwvxwxwXwwwwgxwwwwwvwwxuvvxxwvvxxwwwwwwVxwwwxwxwhwxxxwgwxxxwwxwwvxxxxxxxwwuwvwwggwwwwwvwuwxxxwwwxwwwwvwhwxwwwwxwwwgwwwwwwvxwwwgxwwwvwwwgwwwwwgxvxwxwxwwxxhxxwxwwwwwwwwgxxxxwxgxxxxwwxwxxxwxwwxxxwwwxxvwxxwwwxvwxxxwwwxwxxxwvgwxwwxwwwxxxxxwxwwxxxxwwwwwwwwwxfxxwwxwxgxwxxwwwxxxxxxwxxxxxxwwwfwwwwwwwXwwWvtfgVVuwvwwgvXVvuvvhgwwveWfuwuggwxxwwgwvvvgvvwwwwwuwwVuwwwgwwgghxhVvwuvvwvwvwwwfeffwgvvwwvwgvwguxwwwxgWVufwVFwwxwwwvwwwwvxwwgvvwgvwwwwwwwgwwwwgwfvwvvgwwxgwfwxgwwwwvgwggvwgwwxvxvgwwggwwxxwwwwwxxwwwhwwwxwfwvwwwwwwwvwwwwgwghewwwwwwwgvwvxwuwwwwxxwxwhwwwxwwwxwwxxwwhxfwwwwwxwwwxwwxgxgwwwvwgwvwwwwxxwwwxwwwgwwwxxxwwvhwvhxxwwwwwxwwhvwxwXWxxwgxwwwxxwxxgwvxwwwwwwwwwwxxwxxhwvwxfvgxwwxxvgwwxgwgxwxwwwwxxgwxxxwgwxwwwwwwgwvgvxxgwwwxxgwwwwvwwfwwxwvghwxwwxxwwwggwvxxxxxgwgxwwxxhwwwxwxwxwwwxhxwwxxwwwxwwxwxxwwxxwxwwwgwgwxxxwxwxwxwwxwggxgwvxxxxxwwxxxwwxxwxxxxxghwwwxwfgxxwvxxwxwwxwxwxxwxxwwxxxxxxxwxxxxxxxxxxxxwwwwxxxxwxswwgVvfwvvgwwguwuvvwvwfwvffwvgwwgvvwVFSufggwwwvwvgewggwggvxvxwgvvwvgfwwwwvwuuvvgvfWwvwvwgwgegwgfwwwefgwxuwwwvvwgVdvuhwwwwwwvwgWFSuwwgwwvwvfewgvwwwwxgggwfgwhgwxxfwwgwxgwwwxwxwxgwwwvgfxfgevvwwwwhwwwghWtvhvwwgwwvwgwwwwxvwwgfvxwwwxgxgwwwwwwwwwguwwgwgfwgwWwwwvxwwgwguwwwvfwwxwxwwwvwwvgwxwxgwwwwwwvwwwvxxwwwgxwvvxxwvwwwxwwxxwvxxvxxwxwwgugwwwgxvwwwvfxwfwwxgwwvhwwvwwxxwwxhxwvwwwwxxxxvwwwwwwxwxwwxwvwxxhxgwxxwxwwvwwgxxwxxxxxwxwwwgvgvwwxggwwvwwwwwwwwwvwwwwwxwgwxxwwvvwvvwwwxgwwwwxgvgwhxxgwvwwwwwgwxxwhxwxwxwxwwwwwwwwwxxxxxwvwxwvwxwwxwwwwwwwxwwvwwxxwwfuwxwuxwgwxxwwxvxwwwwwxxwxwwwwwwxwwguwgvvxwxwwghwvwxwwxxhwvxwxwwxgwwxwwxwxhvwxxxwxvwxxxvxwhgwxxwxxwxwwwwxgxgwxwhwxxvwwxxwxxxwxhwwxwgwxxwxxwwxxvxgxwxxxwwwwxwwxxxxwwwwxxxxwxuwfxwwwwfWvVwvvwwwgwwvvvwwwgvuwWvVgwfvxwvVgevvevvxfvvwwgwvwwwewwfwvgwgvwgfWggwgwffwwvwvvwvwfvvwwwwfxvwwwvewgwfVvVfwgvvwvvfgvvwwxwWvVvwwffwvxVvwwvxwxgwVwwvwwwxxVgvwwxwwfwwwwwwwxwxwvxwwwxxwhwgxwwxwwggxwwwwxxxxgwvxwwwwxvwwwxwgwxwxwwwwwxxwxxxwxxgvxwwwxxwxhxvwwvwwgvwwwxxwwvxwwfwxwxxwxxxfwhwwwwxvwxxxwxxwwwgwvxwwxwfwwwgwxwgvwgxxvwvxggwwwwxwgxwxwfgwXgwwxxwxwvwfxvwvwwwwwgxvxxgVwxwwxwwxwgwxxwwwwwgwwwxwwxwwxxxwxxxxxxxxxwvwxxxxwwxgvxgxxxxxvwxxxggyxwxxxxwwxwxxxxxwxwwxwxxxwxxxxwxwxxxxxvxwwwwwwwwvwwwwwwwxwwwwgwvwwvxgwwwwwwwvwvxwwgwgwgwwwgwxxxwvxwwwgwwwwwvxgwxwxwxxhwwwxwwvwxwwwwwwwwgxxwwwwgwwwhwxwxxwxwxwgxwwxxxwxwwxwwxwwxgwwwxxwwhwxwxxwwwgwwxwgxgwxxwwxxwwxhwxwxxxxxwwwwwwgwxwwwxwxxxwxwxxxwhwwwwxvwwwxxxxwxxwwxxwxxwwwxwxwwxwwxxxwxwxxwxwxxxwhxhwxxwxxxxwwxxwxwwxwxxxxxxxxwxwxxwwxwwxwxwxwxwwwvwxwxwxxxxxxwwxwwxvxwxvxxgwxxwwxxwwwxxwwwxwxxxxxxxwxxgxwxwxxxwxxxxxxxxxwxwwwxwxwwxwwxxxwvxxxwxxwxxxxxxxwyxwxxwxxxwxxxxxxxwxxwxxxxxxxwxwwxxxwxxwvwwevwvUuvxeuvwvwwwwwwxwVfwwwfvwvgvfwvgwwwvwwgwwvwwwvwevwvufvgeewwwwvfwwwwwWgvwwwxfwxvwwwwvwwvwwwwwxwwxwwwxwUuvxgeewVvwwvxvgvwwvwwfufwhgvvWvfewwwwwwwwxxwvweuvwwwwwvxxvwwxwvxwvwwguwvwxwgwhwwxwxxvwwwvfwvgvwvwwwwwwwgwwwwwxwwxwwwwxxwxwxwwwwxwwwwwvwwxwvxwxwwxwwwxwxwwwxxxxxwVfWgvfufwwvwwwwwxwwwwgvgwwgxwwwxwwwwxwwwwwwxhgwgwwwwxwwxxwxwwxxwwxwwwwfvwvfwxvvWvguwwwwwwgvwxwwwwwwwxggvfwvwwfewvwxwxwxwgwwxwwwxxxxwwwxxxwxxvgwwwwvwwwgwxgxwwxxwxxwxxxxxwxwvwwvwwwwwwxwwwwxwwxwwxwxxxxxwwxwgwwwwxwwhwwwwwwwxgwwxwwxwvwwwxwwxwwxxxxxxwxwxxxxxxxwwxxwwvwwwxwwxwxwwxwxxxxxwwwwxwwwwwxwvwwxxxwxxwwxwwwwxxwxxxxxwwxufvgwweffvgvwdvfgwvwfefvwfwvfvfwwvwwvgwxwwvvFewwwwwgvwtevgffuweevwffvwwTdwvhwwvwwuxuVfwvwfwwvwvxgfuwvvxwwwwwwwTuewvvgvfveuUfvugwvwvwwgwwuwwfwvwwwwxvvwgwwwxwwevvvfudvvwwwwuvhvuvwfvwwgwwwwwvgwhxwwwwwwxwwvxxwwvwwwwvvwwwxwwfffwwefvwwwwwvwwwwxwxxvwgfwwwxxvwwwwwfwvwwxwwvwxgvwwhwvuwxxwwwwwxwwgwwxxfvvxxxwvgvwggfVvgvwfdegwwwwvuhxwwwgxxwwfwwwgwxhxvwxvvwxvgvwfgwxwvwwwwwwwwwgxwvwhvvxwxxxwvwvgvwwfggvwwvvwwxueFwwwxgwwwwwwwhwwwxgxwxxvfVwfwgwwwwwwxvevwwxwwxwvwwwwwgwwxxvvggwwwwxwwuwwxfvwwwxwvvwwwgwwwxwxgwwxwxxwxwwwwwwwwwxwwwwwxgvxwwxvwwwwwwwgggwwwxwvgwxwxwwhwwwxxxwwwxxwwwwxwwwwwwwwxxxxxwwggwwfwwgxwvvxwghxwwwxghwgvwxxwvwxwuwwhgwxwwxxwxxxxwhhxvvxvwwwwwwwwxwwxwxwwexxfgwxxwvxxwxwwwwxwdeegffwfFVUgdfeuWfvhggvvfVfufffvfwwwvVgvwgvwwvugFfvUvwwhfwvwwVvvgVfewfUevdeVvvfvwxWWwfggwggvwwfgeffwwwuvvwgwwgwwwwvwwxwhwfvvxfVfweWFuvfvUFUUgvxfgWgwfuxvwxxvwwwwxxwvwvgwwgvxffVVvvvefgfvwggVxwwgwvhxhwwwggvgwvwuwwwwwgwwvuxwgwwwwwVvguwwuefvvwwwgfgwwgwwugfwwwwwgwuwwwwvwxUfwwxgwgfwxxgxwgwwfwxvwwwwwwwwggwgwwxgwwhwxwfwwxxxgwgxwwgwxgwhxxxxwWwwwwfgVwgwxfwffwhVvgwwgvwvgwwgVfwfvvwwwwwwvhvwvhwwxwwxhwfvgxxwwhvgWffwvgwwxwxgxgwwwhwxwxwwwxwwxgwwgwwxhwxgxgxgwgwvgVvwffwgfwwgWufggvwvvwgwvwgfwwwwwwwwwwwwxwfvwwxwxwWUvdfWwguwwvwwgwwwgwvwwvxwxwwhwwwgwwhwwxxxwxwgwxwwxwwwwwwvxgvwvfxwwwwwwwwwxxxwxwwvxwxxwfwwxxvgwwuxxwgxwvxxwwxwwxxwwxgxxxwxxwxwwgwvwxwuvwwUggwxwwwvwwxwwwvgwxwxwxxxwwwxXgwwgxxfwwxwwwwvgvwwxxxxwhxwhxxwWwwwwwhggwgwvxhxwxwwwwwvxxxxwwuwxfwwwgvwwgwxxxwwwwxxhwwxxxwvxxwwhwwwwwhwwwxwxhwwwgxvvwxwxhxxhwhxxxxwxvwwvvwwgwwwwwxfuvvwvvwwvgwgwxeuuwvVvwvwwwveuwwvwwwwxefvwvevwwwgwwwuVwwwgwgwwwhveuffuvwwwwwwwwwwwwwvxUuvwwwwvvWwwwvUvwwwwvewvwwwVvwuevvgwwwwvwwwwwwxvwuuwwvwwgvuwhwwwwxgwfvwwwwwvwxwgwwwwxxwxwxxxxxfvwxwxxwfevxwwwwwwwwvwwxwwwwvwxxvwwwwwwwwwwxxwfwwwxwwxxwwgwxwxwwwwwwwwwxwwxxgwwxxxvfuwwwwxwhvxxVfvvwwxgvwwwxwfufwwxwwxwxwwwwwwwwxvwwwgwwvwxwwwwwwwwxwwwwwwxvxwxxxxwxwwwxwwwvxwwwwwgwwwxxxvvWhwgwwxwVwwwgwxwwvgwwwwwwwwwwvwhwxxwufwvwvwvxxxxwfvxwwwwxxxvwwvwwwwxxxwwwwwwxxxxwwwxxxxxwxwwxwwwgwwwwxxfxxwxxwwwwwwwxwxwxwwwwwxxxwwvwxxxwwxxwxgwxxxwwwwxxxwhxxxxxxwwxwxwxxxwwxxwxwwxwwxvwwwwxxwwwxxwwxvxxhxxxxwxwvxwwwwwxxwwwxxxwvwwwxwwwwxwwwwxwxsfwgwvvvvfgwvffwvvvuvvvvvSEvwfwwvvvfwvvvfvwwuwwvuguwwwwvgwwwfwvuwuvwwSEvvfwwvevvvgvvfwgwugwvuguwfvwvwwwwgvwwwwugwwwxvwwgfgwfwwvwvvwwwwwwffwwwwvwwwwwwwwvwgwwugvwwwwgwwwwwwwgfgxwwvvfwefvgvfvgwwxuvwwugwwwwwvwxwvdwwfwgvgvfwwvwwwwwwwwwwvwwwwvwxwffwwwwfwvwwwwwvwxwwwgwvwwwwvwwwwxfvfwvwwwgvwwwwgxwwwwwxwvgvwwxugwwxwwgwwwugxwxwwwwhwwwwwuwwxwxwefwvwwwwwfxwwxwwvuwwgxxxdvwfwhvwvvxwwwwxwwxwwxugwwwwfwxxwwxxwwxvxwxxwxvwwfufwvvwwvwwugwwwwwvvxwxxwwvwwvwwwwwwwwwxwxxxwwugvgwwwvvwwwwwwwgwwxwwxvgwwwwwwhvwwwwwwvvxxwwxwwgwgvwwwwwwxwhxxwxvwxxhvxxgwwwwwwwwwgwxxwwxwwxgxxwwxxwugwgxwwwwgwxxxxwvwwwxwwwwxwwvwwxxwwwgxxxxxwwhhxvwxwxvxwwgwvwwwwwgwwxvvwwwxxwwwxxwxvgwxwxxxwxwxxxxwxxxxwxwwwxwwxxwwwxwvxwuwgwfvvxefgwffwwcewwgdfveffgfwwvvwwfgggwvwwvvvxfwffvfwfwvwevvwggdwvvfgvvwwGffvu7guuvvwvwgwwvxvwwwwvwxxwwwwwghwwwwwwffwwuwwwvwvwwwwfWfvvwwwfffwvwwwfwwfwxfxwvvwgwWwwhWfwwggvgfwgwwwwwwwwwwhvwhwgvvVwuwwwwxwwwwvwvwxxgwWvwwwwwvfvewvwwfgvwfWvwghfvuvxgwwwwwwvwwwwvwxfwgwxxvhwgvgwgVwxxxwxvWgfxhxgwhxwwxxwgwxxxxwxhxwwwxxwgwwgvwxhwwwxfwwwwwuwgwgvwvuxwfxvwwwwvwwxwwxxxxwxxxhxwfvxgwWgxxwxvvwhwhwwxxwuwwvwwgwvwxvuwggwvgWgwgwvwwwvgxwwwwwvvgwwwwwwxgwgxgvwgxfgwwvwxwwwwwxxvgwxwwhwfwuxggwwxfwwxwgWfwwxxvwwwxwwxwwwwwhvxxxwwvxxwgxxxxwwwhwxwwvwwxxxwxwgxwwxwwwgvwwwxxxggxxwfxxxgxwwwxwxxvwwwgwvwxvwwwwxxxxxxxxwwwhxxxwwwwhvxxxxgwxwwwvwhhfwwxwghxxwxwxxxwwwxwxxwxwwwgwgwwwvwxxxxwxxvwwxxwxwxxgwxxvwvwwxxxgxwveffwfvvwdtvwuffwewvwvwwwfVewvwwwcuvweUewvwfgwwvwtgewfvvwgxvwwevvwVVcwfvffvvwvfFdvvfgWwuvfvwVvfffGffvwfwvwvhfwwwwVwfwwhwxvwTevdfvwvWfvvxcfvwfuvxVeugxwwxvgfwVvuwgwvgwfwgwwxxwwxvwvwwwgeffVVvvguvwwxvwVfvwGuvvwvwxxwwffvxvwffxwwwwgwwfvwxwwwgwxggvwggvvgvuwwwwVVegwxwvvewvwwwefgwvxgwwwfffwwwvwwwwxxwwggghwwwgwwvwgghwxxgvwwwxgwwxwwwwwwwxwwvwxxwwwxwhwvgfvfvvfwwhwwwUvvvwwgvwwgWwwwxgvwhwvhxWwwxwxwwhwwwwwxxwwxwwwvxwgwwwxgvwxwgwwxgwwwxwwxvxhwxwxxwwwxwxgwfvwwvwvwvvvgwvxvvwwgwwgxwwvfvwvwwxwwwgvhwxwxxwvffwugvwwwxvwwvvvxhwwwwvwwvwwwwxvxxvwwwhwwwxwwvwwxvxwxgfwwxwwxguxwxwwwwwwwwwwvwxxwvxxwwxwwwwwwwwxwxgwuugwxwxwxwwvxxvwvwxwwxxwxwwwxwwwxwwxxxwwxwwxwwwwfwvwwxwwxfvvwxwwwwwwxxvwxxxxxgwwgvwxxxxwxwwxxvwxwxwxwxxwwwxxvvvxxgwwwwwwwxgwuxvwwxwwwwwwxxwwwxxxxwwwxgwwwwwxxxwwxxwwfxwwxwxxwgxwvwwxxxfwwwxxwxxwwhuxxwwvwwxwxwxwxxvwxxwwwwwvwxuvwxvwhvwgugfvhwvxgvfvwvwwhufgfwwgwvgwgvvwwwvwxhvvghvgufvwwwwgwwwvwwvwvvwwxgugvwwwwwwggwwgwxwwwvwgwvwwwwWwwfwvwvWwwwvgwxwgwwuwgwgwuwwgvwvwwwVvwwvwwwwwgwxvwvwfxwxwwwxxxxwwwwwvgvvwgvwxwgvwwvxxgwwwwxwxvwwwwwxwwxxwwhxwvwxwxwxxxwwxxvxwxwvxwxxwwwwvfwgwwwwwwvwgfxwuwxxwxxvvwxvwxwxxwwwxhxwwwxxwxxwwxxxxwxgwwxwxgxwwwwwwwxxwwxwwwxxvwhwwewwwwwwuvwwxwwwwwwvwvxhxxwxxwwwvxwxxxwxxxwxwwwwwwwwxwwxxxxxwwwxvvwxxwwwxxvxxvwwxxwxwwxxwxxhxxxxxwxwwwwxxwxvxxgwwxxgxxtvvwgffvvfffVfegwwgwUgeugvxVwvxfVvwvfwfwxfVevgwwxvvvwwfvvwwwvwgvevvvwwvffwwvxddffgwgwvfwwwxwhfwwwwfwvwwwxwwvwvxvfvvwfwgvgwgVgFugwwxfvvwwxfVewwgfwxwggggxvwgvwxfffgvwgwvUegfgggwwwwwggwvgwwxxxxwvwwwwxwxvxvwwwxwgvvwvwwfwvuuwwvfwwxvvwwwfvfwwwwxwwvvwwwxwwwwwwwwxxwwwwwgwwwwwwwxwxxwxxxxwwwwwxghwwggxvwWfvvwwwgfvvwxxwwggwwwwvgwwxwxxwxxwxxwwxwgwwwwwwwxwwxxxxwwgxwgwfgwwxxwxwwxxwwwwwwxxwxwwxwggVuwgvwxgffvwgwgwwwgvwvxgwgwwwwwwwwxxwwwggfwwwxuvgxxgwffvgwwwwwhxxxwxhwvxwxwwwxhwwwxxvwvgvwxgwwxxvwxwwxxwwgwwxxxwgwwxwwxxwhwwgxwwwxwxvxwxxxwwxxwxwxfwvgwwxxwvxvwwvwwxxwfwwghxwwxxxwwxwwwxwxwxwxwwxvxxxwwxxwwxxxxgxgwxwwxwwwwwwgwwxxwvxwwxxxwxwxxxwwxxxwxwwwwwhgxwhwxxwwxxxwwxwwvuwwxeefwvwgwgWufwwwgvwwwgwwwwVugeVtgvwwwwvwfvwfvgufvwxweuvwgUtwffvwfVvwvfvgwwwwwwxxwhdevvvfvvwvgvwwhvwwvwvwwxwxvEtfwEugvvgvvvwwfvgwfvwwxffvfwxgwgwhwxftwvfxxxwwwdfgffwwwwvvwvgVvuwwXxvwwwvvwwwwxgwwwxfxgwwwvgwvgwwwwvwwwwwwwwfvwwwvwwhvwvwvfvgwwxgwfxwvwwgwfxfvwgwwwwwwxxhwxxxxwwwxvgvvwwgxxxwwwxwxxwxxwwfffweuVvgwxvgvWuwwvwwxwGvvwvgxwwxwVhvwwwxgwwgfvfwwwxwXvvwwwwxwxxwgwhwgwwvwwwgvhhwwxwgwvwgevfVvxwwwwvvwwwhwgwxwwgvgwvwwxwwwwxwwxxgefwfVwwwwwwwwvwxwhwwxwwwwwvwwwgxwwvxgwxwwwxhwvwwgvwvwxwwwwwxwwwwwwxgwwxxxwxwwwwwvvwxwgwwxwwwwgxwwwxwxwwxvggxwwwvwxwgvxwwwxgwwwwwxxxxxwwxxxxxgwwwwxwvggwxxwwxwhxxxxwhwhwwwwxxwxvwxhwwxxwgvwwwxgvwwgwwxwwwhxxxxwvwhvxvwwwwwwwwxgwxxxxxxxxwxwwwgxtvVwTfWfdegwVffwewwwvevwvggwfgvfvvwuVvvUfwfvwvvfvwgvwwfgvvvwhvfvfeewVefvdffwwffwvgxwwwwwwwwwwguvfvvfFfuevvhwgwwwgwwxxwwUwvxeffvvgewfwVwegwVwwvvvwwwwtfwvvwfvgwwwwgvhwwwwwxfwwwfggfuvwvwvvvgwfwvwwwgfxwwwwxwwwvvwwwwwwhxvgwwxwwfwxxhwwgugfwwvuwfggwvvugvvwwwwwevvwwguxvgvwvvvwgvwvvfvwwvwwvxvwvxvvwwwwwghvwwvxgwwwghwwxxwwvwgvwwwvhwxgwxhxwxxxxvvwwwuvggwwvgwvdwwwvwvgvvgvwwwwwwvwxwxwwxwwwxwwgwwwwgwxwwgwvwwwxwgwvxwxxwhxvxxxgwwxwxgxwwwvwvwftwwvwggegwvgfwvggvwwwxwwvwwfwwwgwwwwwwwxxwxxwvwgwfvwwfwwwwwwwwxwvgwwxwwvwwgwxvgxxwxvxWwghwhwvwwvvwwwxvwxfwgxvwxxxwwxwxxwwxwxwwgxwwxgxwwwfwvwwwwxwwwwwxwvxwwwwxwxwwxwvgxxxxwuwwgvwvwwvwVvwwxwwwwwxwwwwxwwxwwwxwvxxxwxxvwwxwhvwwxXxxxhxxxwxwwxgwgwxxhhvxxwwwhwwwwxwwwxwxxxxwwwwwxgxxxxgxwwxwxgwwwxwhwxxwxxvwxwxxxwhwxxwwxvwwxwvwxewhxfwvwvwwwgufvwwxwwwwWvwffgwvxwWufwwwvwWugwghvvuwwXwxfwvwWuevwfwwfvewWugwxxwvWwwgwwgwwvfwwuwwwvwhvxxhwxwgxgwwwwwwgvvwwwWwvwgvwwgwvfvwfxwwwvwgwwwwwxwwxvwwxxwgvwwffvwvvwwewvwWwgwgwwxgwxwwwxxwwwxxhxwxxwwxxuwwvgvwwhvwwxhwfxvwwgwxwuvwvwwwvfwwwwwwwwfxgwwxvgwwwgwvwwxxxyhvwwxxxxgwvxwwwwxwwwwxxxxxhgxwxvxwwwewwwgvhVwvwfwwvfxefwwwvxxwwwwwwxwxwgwwwxwwwvwwgwwwwxfwwxwxxxwwwwwxxxhxxxvwwvvwwwvggwgvwwwwwxgxwhxwwwwgwwxxwwwfhwwvwwwwggvgxwwwxwxxwhvwwwwwxxwwwwxxxwwwwwwxvwfxwhwwwxhxxwwwwwwxxwwwxwxxwwxxxxxxxxxxwxwxwwvggwxwwvxxxwwxgwfwxwwxvwwxvxxxxwwxxxwxxxwwwwwxwxxxxxgxxxwxxwwhwxxwxwxvxvxxwxxxxxwxxxwwxwxxxwyxvwxxxxwxtvwhvwwwwwhgfggwwxwvvwgdWwvvwwvffgvwfwvwwgdWgvwvwwxvhwgvvxvwvwgdWwfvggvwvgghwwwgdVvvvvwwxwwgwgwwwwxwxxwfwwvvwwfxgwgxwfwwvwvwwvvxxwwwgwxxgwvxwgvxhxxvwhwxgugvvvvwwwwgwgxwgwwwxxwggvvwwggxwwwxxxxvwxwgwwfwwwgwvwgwwvxwwugwwfwwvvxwwxxgwwvwwwugwwwwxwwwwwhvwwwuhwhwvxhwxxxxwwwxwugxhxxgxfwwwwwwwxvvvgfwwxwxwxwvwuxgwvgwvvxxwwgxwxwgxwwwvwwxxxwwwhwxxwxwwxwwxwwwwwwwxwxxigwvwwwwwwwuhwwwxwxxwgwwxwwxxwwwwwwxgvxvgwwvxfvgwwwwwwwwwwwwwwwxwxwwxxxhfwxxwwxxxxxxwxwxwhxwxwxxxxxxxxxxxwwwwwwxxxgxxwwwxwxxwwwwxwwwuwvwxxgwxwxxwwxwxwxxxxxxwxxhwxywxwwxvwxwxxwxwxxxwxxwxxwxxwwxxxxwxxxxxwxxxwvwwxwwxwvwwgwwvwgvwvwwwvwwwwwwwwwwvwwwwwwwvgwwwgvwxwwwwwwhwvvwvwwwwgxwwgwwvwwxwxwwwwvwxwwgvvwwwwwwwxxwwwwwwwwxwhvwgwwwvvwxxwwwwwwxwwxwxxwwwwwxwvwgvwwwwwwvgwvxwxwxxwwhwxwxhxwxxxxxwxwvxwxxxxxwwwwwxwwvgwvwvwwwxwwwwxxxxwxxwxxxxwwwxwxwwwwwwwwxwxwxxxwxwxwwxxxxwxwwwxxxxxxxxxxxwwwwwxwxxxwxwxxxwxxxwxwxwxxxxxxxxwxxxxxxwxxxxxxwxwxfvwvfwwwfwwevgwwfvwfvwffgvfvwvvfvgvvvvwfDUvvggvvwwvvwgwgvwfvvgfwwvwwwgDUvvgwwvfwwwvwgvUfwwvwvvvwvvvwwfVgwwfvxwvwwvwwfvvwfwvgwvwfffvwfvggwvxgvfxwwwwgwwwxvwwwgvwwfWfwvxxwvwvxwwvwwwuxvwfVfwwVvgxwxwxwvwxgwwwvwwwwgwwwwxxgwwwwwwwgvvwwwwwwgvwwwwwvxwwxwwwwwwwwwvwwvwwvgwhwxxwwwwwxwwwxwxxgwxwwxwwvwwwwwwgwvwwgvwvwwfwwwgxwvxwxwvwwwwxvwxgvwwwhvwwvghxvfuwwwwwxvwwwgvxwxwwxxvxwwwwxvwwwhxfwwxwxwwvwwwwwvwwghwxfwwxwxwwwwwfwwxwwgwgxwwwwxfwwxwwgwxwxgxgxwwxwxfvvggwwxwxwfgwxwwwhwwwwwwvxgvhxwwxgwxwwwwwwwxwxwvxxxxgwxxwwxvxwwgxhgwwwxwxxwxxxwgwwxxxwxwwxxwxxwxfwwvwwwwwwxwxxxwxxxxxxwvwxxxxwvwxwxxxhxwwhxwwwxwwvhwgvvhyxxvxxvxvwwxxxwxxxwxxwwwwxxwxwxvwwxxwwxtvvgvfwvfwgwfvvvggwfevwfwvwwvvwwvfTUvvvvwwggeevgwwvvwwvgggeufvwvvwvgvvwvwwwwwwwvvggTUugfwvwwwvwwwgwvvgwwhwwggwwgvvvfwgwvwVvwwvgxgfvwwxwvvwwwwvwvgfxwfwxwwwwwwxwwfvwuvvwwvwwvfwwxvvxugwwugfwgwwgvwxwwwwxxwwwwgwgwwggwwwwwxwvvxwwfggwwwxwfevvxvwwwwwhvwwwgxwwwwwwvvwvwwwvwxxwwwxwxwwxxwhwwwwvwxwwxwxwwwxwxwwwwvvwwvwuwwwvvxwwxvwxvwwwwxwwhwwxgwxwxxwwxwwxwwwxvwxwwvxwxxxxxgwwwwwvwwxwxgwxwwvvwxxwwfvvwwwwwwwwvwvwwwxwvwwwvwvggvhxvwwxgvhwXwxwwwwwwxwxxxwwwxwwvwwxwvxxxhwgwxxxwvxwxxxwhvxwxwxxxxxxxwxwxxxvwwxwwvwwxhwxxxwgwwvwxxwxxwvxwxghxhxXhhxwhxxxwxxwgwxxwxxxxwxxxxxxxhxhwwxxxhxwxxtwghvvwwvwvwwwxeufgwvwfgfwghtuvfgwwwgeUwwwwffUvVwwwwgwwvxvgvvwufgewwhwvfvwwgxvwwhgxWeUvwwxfGgevxeeewwwwvwwwxwfvvxVwwewgwwxvvwufwvxwwwwwggfwuvwwwwwxxgVwggxwwwgwwwxfvgvvwgwvvxvvvwwgwxwgxwwwxgwvwwwwwghwxhgwwgwwxwwgwvvvvwwwwwwwwwgvwwxwwwgxxwgwwvvwvgvwgvwwgfwwwwwxwgwxxwxgxxhwwwxwwxwwggvxxwwwwxxxxwxwwwxuugwxxxfvwwwwwvfxwxwxvwwvwwwwxgvxvvgxxxwxwwwxwwwwxxwwxxwwxxxxxxhxxwwxwxgwwwwvwwvwwxwwuwwwwXwwwwwwgwgwwwwxwwwwxvvwwwxwxwgvfwvwvwwwwwwwwwwWxwxghwwwfxhwxxxxgwvwxwwvwwxvwxwwwxwwxxxwwxxwgxvwwxwwxwwxwxxwxxvwgwwgwxxxwxxwxxwwxwwxxxwwxxwwxxxhgxxxxxxxxwwhwxxwxxxxwxvwxxwxwxwwxxxwwxxxwxwwxwxxxxwuwggwggxfvwwxwxvffwvfvfgwgwwxwwfvvvffvvvggffwwvfgfggwhxwvvwfvveuvwwgvwggwwwwwwfwwwwvvwvwgvgwwwfvfwxwwwxwhwwxwhwwwwxvxgwwwgwWgwvxVwuwwxxwwgvwwwwffwwwwwgwwwvwwxxxwwgwwvwggwwvwwwgxgwvxgvxgwwxwhhwwvwwwxwxwxgghxxwwxxwwwwvxxwwwvgwwwvgwwgwvgxxwwwxwwvxxwwvwhgxxwwgwwxwxxxwxxfwwxwxgwggwxhwvxxxwwxxhxwxxxxwhxwhxwwgwxgwxxxggwwwgwwxwwxxwhwvxvhwxwxwwwgwvxxwxxwxwxxwhwxwwwxwxwxhxhxxxwxwwwwwxwwwxhwvvwgxvxwwwwwwwwgfxwwwxxwgVvuxgvxwwwxxwxwxwxwxxvxxxxwxxwwxwxxwxxxxwwxxxxwwxxxxxxwxwxwwxxvxxxxxxxxwwxxxxwwwwgxxwwxwxwwxwwxxwxxxxwxwxwwxwxwxwxxxxwxxwxxwxxxxxxwwxxxxwxxxxwxxwwxxxxxxxwvwwxwxwxwwwxxsvfwVfeVgvewfFVvgvwwwwwwfWfwwvgfvfuefVdwvgfvfwveWufvfvxwxfvwfffvgvvvvgfwwwwwvwwgxwwgwwgeVfcuVuwggwwwvvwwwwgvwwxwwwfwfwfV6tfVevfwffwwgvvgwwxxwwvgwwgfuwfwvxfgvwgwxwxxwwfffvdvVufwwwwvgvvhwvvwwgvgwvwwwwwgwwwwwwxgwvuxwxwfvvfvvvwvVgvfwwgvffgwfvwvwghfvgvfwwwwvwtfwwwwwwwwwwwwwxwxvwwhwvxfwwwwwxwwxwwwxhvvwwwvwwwwwwvwwwwwwwwxwwffGuwuwgvvwwwxeewgfwvwxwgwxvvxggwwwwxgwwwwxwgfwwwwxwwwwwVvwwwfgwwwgwwxvwwwxxgwUwxxwwxwwwwwwxwwwxwvvwVfvvwhwgWwwgvvwvwugfwwwvwwwwgvwwwwwvxwvwxwgfwWvwgwwxwwxwwwwwwwxwwuvgwwwwXgwwwgxxwhwwxxwwwwwwwwwwfwxwxwwxxxwwwwwvwxwxwwxwwxxxxwxwxwxvwfwgxvhxwwwxxvwxhwwxwgxxxxwwxxxwvgfvvgwfwwwWvwwxwwwwwwwgwwwwxwxwwwhwgwwgxwwwwwwxwxwxxxfvxwxwxxhxwhxggwxwwwvwwwwwxgwxwwvwwxxxwxvxxxwxxwhwwxxxxxhwxxxxvhwwwxxwwxwwxwWxxxxwwwxwxwvwxxfwxxtgwxevvwewffeTTvuwvwveuwwfvwfffgvvvffvvvvuwwfvvvwwvvvvvwwwwwwvgTTvwfvwvgfvwvvvwggwwwgvwwvgvvvwugwugwwvvwfvwwwvvWwwwvVvffguvwwwfvfuvvwugfgwwwgUwgwwvwgwwwwfxxgwvwwvwwxxwwwuwvwvfevvgwvvvxwwfugwwwwfvvvwwvwvwxwguwwwwwwxvwvwwvguwfvvwgwxVvwwwfwvwvwwfWwwwwvwvwvwwwvvwwwwhvwwwwwwwvxwwwwwwxvvgwwxwwxwvwwxwwwwwxwxvwwggxwwxwwvxvvwwvwwwwvwwgwwwvfwvvWuwvwwwwwvvwwwvwwvwwwxwwwwwwwwwwfggwvwxxuhwwwxwxxxxwxxxwvwfwwvvvwvvwwwwwwwwwvwwxgwgwvvwwwwwxwwwwwwwwvwhwhwgvvvwwwfxwwwxwwWwwvggwxwwwwwwwwwwwwXhwgxgxwwgwwvvwwwgwxxxwwwxwWwwXwwxwwwhxwwwvgxwxxwwwxxxxxxxxxwwwxxwwxwvvvwwwxwwxwwwwwwwwwgxwxxwxwgvwxwwxwwxwwwWwwfvxxxwXwwxwwwhwwgxvwvWwxwwxwwwxxxxwxwxwxwwxxwxxxxxwwxxxxxxxxxvvwwwwwxxwwxwxxxTvVvTeewevewvVdvTeefwfeVeffwgwwvUvugefevuvwwvvveEUvwggfewwwvUveggeeffVdvWvfgeeVwhgffvwwwgugfUTvegfguvvwgfwwWgfwgvXwgvwwwfxUfvvffUvdgevUvdweVVwggWfwvxwxewdWvvwwvwwvgFvuhwhvxxvwwxvwfvVwvfeweguwgwevgffgwgfgxgvwwwgfffvwwwugwVvxggwgvwwVwxwwwVvfwwvfwggfwwvwwffwxwwwwvwwgwfgfvgwwwwwgwfwwwwwwhwxxxxxwggwgwxwvwwvwwwwwwxhwwwxxwwwwwwwwxwxxwgwhwxxxwgxxxgvWwwvgwfwuwwwvhvggwwxgwwgwwwfwxwxwwwwwhxxxxwxwwwgwwwwwxfxwwwwgxxxwwwwwwwxwxxxwwwwwwwxwwfxvvvgevwwgvxegfvgwwwfuxxxvuwvVvxwxfvxxxvxxxvgewwvgvvfgfgwwwxgewwwvwxgewvgvfwwxwwwxewwwwvxxvwwvwwvwvwvxwwxwwvhwvgwwxwxgxxwvwwwgwwwwwxwvwxxwxwxgwwxvxwhxgwxwvwwgwvwwwwwwwvwxwgwxxvwxwwwwxwxwwwwwwvwxgwgwgwwxxvxxxxwxwxxwxwvwwxxwwxwwvwwwwwwvwwxwxxwgwwfwxxhxwwwwxhwwwxwwwwwwfxxwxwwwxwwwxvwhwgwxwuwgxttvwfwwwvwwwuwwefwfvwvweufweffvwvwgwvvfwwgvvgwwwwwuvWvfvvwwwWuvFgtwwxwwwxvvvwuvvfwwwvwxwwwwvgwxwwgxvfwwwwfuwfwxvgvwuwwwwwgvwvwwvwVvgwfwffgxxwwwwwwxwwgwwvvwfvvfwwwwwwwgxwwggfwvwvwwwwwwxwwwwggwwwvxwvfvvwvffvwvggwwWuwwwwwxwwvvvvvxwwvxvwwwwwwwwwwwwwwvgWuwwxxwghfhxwxxwwwwwwwwxwwxwwhxwwwxwwwwvwwguwwwwgwxwwwwwwxvgwvwwwwwwwwwwwwwwwwhwwwwwxwgwxwwwwgwxwwwwwwvwwxxgxwwvvfwwwwwgwwwwfwxwwxwxwuvwwwgwhxwwwwwxxxxvxwwwwwwwxwxxxxggvvhwwgwxwgxxwwwwWgvwxgwxxwwvwfwwwwxxxwxxgwxwwxxhxwwxwxxxwwwwxwxxxhwwxxwxvxwxwxwxwwwwwvwwgxxwwwgwwwwwwwwxgwwwwhgxwxwwxxxxxhxxwxywxwhhwwxwxwxwwwwwwwxxwwxxwwwwwxwxxxxvxxxwwxwxwxgxxwxwwwwwwwwwhvvwwxuwwvwwwxgugvwwfvvhufwwgefwgwwgvwfvWwuggwwgvvvuwgufxvvvwwgefwwwwwwvxwwvvgvfgwvvvwwwwwgufvwwvwxwwxgwwvuwxwwxgfwvwvwgwwxwwwwwWvwxwxgvwxwwxvfwvvuwvwxxgvwvgwfwvwwgfvgxwxxxwwwwhxwwxwwwffxwfwxwgwwwwwwwwwwwwxwvwxxwxvvvwwwvhvxvvwxguxxwxwxxwwwwxfxxxxgwvwvxwwvxwwvxwwwwvvvwvfwvwwxggwxvxwvwxwxvwgwvuvgwwhxxwwvhwxwwvwgxwxwxwxwwxvfwxwgxxwwxwxwwwwwvwwwxwxxwwwxwwwxxwxwwvwwwwvvwwxwvwwwxxwxvwwwwxwwvwwwxxxhwxwwwwxxxxwxxxxwwwwwwwwwxvxxxwvwwxxxxxwvgywgwwxxxxwwwvxxxxxxxxxxxxvxwxuwwwvwwfgwvfvvgvwguuwwgWwwfgVgvwfvfvgwvvvwfgfwfeuuwvwwwwwwwwwwwuwwvgwggwgffwwWfgwxwwxwvwvgvgeffwwvwwvwwgggwvVvVwwxwgwvvwvvfwWghuwfWvfVfvwwwvwwwfwwwwwwvwgfwwvwwwwwxwwwgvfgwvxwwxxgwgxwxxxwgggwwxvxgwwvxvxxwgxggxgxwwwwxwwwwvxwggwwwwgwwwwgwwvwwvvvvgwwvgwwwfxwwwxwvwvwwwwxwwxwxwwgwxwxxxwwxxxgwwwwwwwwxvxvgvvgwgwwhwwwgwxvwvwgwwwwxwgwwWgvgwwwhguwxwgwxvxvwwwfwwwewwwwwwxxwwxwwwwwwwxvxwwxhvgxfgwxxwwvwwxwwwhwxxWwwxxwwwwxwwwxxwwggwwwgwwwxxxwwwwwwwwxwXwwwxxvwwwwwxxwxwxwwwwwwwgwxwxxxWxwxgxwwwwwwxwggxwhxgvxwxwxwwxwgxxwwwwwxwxxxwvwxxwwwhxwwxxwwwwxxgwxxwxxxwxwxxxwxwxwxwwwxwwxvxwwxwwvvxwvwxwxwxxxxxxwwxwxxwxxxvxwwwxxxxwhghxxxwwwwxxxxxxwxxxxxwxxxwxxwxxxwwwwwwgwtfvwgwvwvvvxgVuvwwvxgvwffffuvgUfdfgVevgwwgwwwdffuevufgvxfvvwwwuwhgvwgwggffvggfffwwxwvfeevvgggfvvwxtuefwvuvwxwwxwewuwfWTvwwwwwefffvuwwwwwUfFfgVVwwwwwwfuvwVwwwwwfgeggvggwvwfgvwwwvwxwwwefVfwwvwxwwwxwgwwghwfxxwfuwwgvwwwfvwuwwwwwuvvxxfxevwvvwwwwwwxwwwgwvxwxwwwvwwwwvwwwwwvwwwxxvxwgwvgwgvwvxwwhwvxvvwwxxvxwwxewVggfgvvwxwwgxhwwwwvwgvvxwwwxwwwvWWwggfwwwwvxhvvfwvgvxvxgxxwwxwxhwxvvwgwwwxxxgfgfwxgwvhxvwxwwwgggxwfxwwwfgVvvfgwxwwgwwxxwwxwwvwwwwgWVhwhhxxxxuefgxvwvxxxxwfvwwwwxxwwvgwxxwwwwwxwxwwwxwwwwwwxxxxvxwwxhxvxxxwxxxwxxvwxxxxwwxxwwwfvvwgxwvwxxwwwhwfvvwwxxwwwvxgxxwvxxxwyxvghgxxxwxhwwxwwuxxggxxwgwwxwwxwxwwxwwwxwxxwxxxxwwvgwxxwwwxwxxwxvxxwxxxwhwwxvxuwxwxxtwwwwwwgvwwxfWfvvvwvWfvvwVgwwwvvwgvevvvwwUffvwvwvwvfvuvwwwwwwwvewgvfwwwfgwfwwvwvfwvgwgvwfwvwvwvvwgfwwwwdvfvvgwwfggvgwwwwgwFwgvgfvgggvuwwwwwwwwwwgwdwggwwwwwvvwwwwwwwwwwwwwwvwvwgwxvwvwwvwwVvxwwwvwwgwgwvwwgxwwwwwwewxxxwwwwwwgxvvwhwfwwwgwwwwggwwgwwvwxwvwwwxvwwwhwwwwwxwwwxwwwwwwxhwgwwgwvwxwwwwwxwwxxwhwwhwwwhxxwwVwvxwwwxwwwwwwwwwxvwwuwhwwxwvwxwwvxwxwwxwwwxwgwwxwwwwxxwwxvwwvxhwwwwwfwwwwwwwvfwwxxvwwwwwwwxwwxwwwgxwxwwwgwhFvhxxwwwvwwwxwwwwxwwwwhwwwwgvwwwwwxwxxwxwxxxxxxwxxxxwwwwxwxwxxwwwxwwwxwxwgwwwgwwwxwvwwxxxxwwxwwwwwxwxxwxxxxwxxxwxxwwxxxxxxxwwxxwxwxvhwxxxxxxwxwxxwxxgyxwwwxxxuxwwwwwvwgwfwvwwwffwfwvwUffvwwwwwfVwwgfwwwguvwwVVggvwugwwxwwwevgvwwvvwwgvwfggvUfwvwevggwvwwwfgfwwwxwwvgfwwwfguwwxwwwwwwguwwxwxgwvwvwVggvgwwfvwwgVvwwwvwgwuvugwxgwwwwwwgwwwvxwwWwWvgvwxwxwwwwwwhggwwwxxwwxxvwwxxggwwwgwfxxwwwwgwwvvwxwwxwvwwgwwwvwxwwwxwwxWgwvwvxxxwxwgwwwxxwvwxxwxwxxwxxwwwwwxvwwvxvhwxwxxwwWwgxwwwggwxwvxwgwvhgfwwgwvvwgwvxvwxvxwgwvwwwwxwgwgwwwwxwxxxxwwwwxwhxxxwxxxwxwgwwwwwxwvwxxvwwwwwvvwwwgvwxWwwwgwwxgvwwwwwxfwxxWvwwvxwwwvwgwgxhwwxwwwwxwxwxwwxxwwwxwwxxxxxvwxwwwxxxxvxwxwxgxwxxwxxxvxxvxwxxxxwwxxwxwwvxwwwwwwwxgxwwxwgwhwxxwhxxvwxwxxxwxxwwwxxwgxwwxhwvxxxxgxxxxxwxwyxxxwxxhxwxxxxxwxwxwhugfFfvvVffgffVvvwwxwwgggxwwwfgffvwvVdwvwvxvvwwgwwwwwwwgwgwwxfffwvwgwVvfwwwwxwwxwwwwwvwwvwfwwvwwwwwwgwwwxEeuwUgfuvgfgwwvvgvvwwVuxgwwuwwgwvvwwwwwfvwxwwwxxwvgvfedvevxwWghwggfwwwgwgwwwxfwwwxvxwgvwwxwxGvevwFEwegVwgwwxfWfwgwhwfvfwhWxufewvufhwvwwwxwwgfwxwggxgxxwwwwfgwwhwwwvwwwWgwwxhxgvxwwxwwvwwfvvwxwwxxhxxweggvgvuxgwwwwxwfdugwgfwgWhvwwwwwwwwxhxwvhvwwvwwwwwgwvwwwfwvwwwvvgvwxwwwvwxxgwwggvwxxwgwxxgvxwwfgggudVwvwwxvwwgwwwxxwwwwxwwwwgxwwxxxxxxxvwwwvwwwwvvwvxwwwwvwwxwxwxxwwwwwwwwxwxxxxxwuwwxwvvwxwwgwfvxwwwxxxxwwwxxxxwxwxwvwwwvuwwhxwwwxvwwxxwvvxxxwxxvwwxwwwvefwgvehwwwxwxwxfgwwwwxwwxwwvwwxxggggxwwxwwxwvwwwxxwwwwwwvwgxxfwwvwwwwxwwxxxxwggwxwvxhggvxwxxhxxwwwxxwwwwxwwxwwwxwwwwxxgghxxxxwhhwxwwwxexwxwwxwvfwwxxxxwwwwwxxvwxwdVVguvfdUVvffeufwffggvvdVfufffgfwwwgfdvwgvwfwvvevUwvwwuvxvwwevvgvfwufVvWfgwuwwwwgwgwwwwwwwwvUwfwwvwxfwxWwwxwvgwxvxwfvvUUdeduufWgvffewUvggvfwWfxvwvwwwwwxxvvvxvwvwwxxfevwegvwffwvwvwvwwgvwfwvfVwfvxvgwwwwwwvxwgwhwwwxxwevvvvgfwfVUvfggwVVfwWWwFVegggvwwvfvwwvwuwxvwwxVffwwwwwvgxwwwhhgwwwggwgwwwgwwhxwfgwwxwwwwxwwfwwxxwvhgvwxwwWxxxxxxwgwwwwwfefewxwVgffxwwevvgggwhvvwgwgggvvwwuwwwwgwwuwwvwwxwwgwfgvvwvwvgwgwxwwhxwvuffwwwxwwwwgwwwxxvwxwxxwvwvvgwwwuvuwffwwvvwvevvfgggvwfxggwwfvwxwwwwwwwwwwwgfwxwwxwxwvwwUggwwvuwvwwxgwxwwwwxxwwwgvxwwwwxwwxgxxwxgXwxxxxxwwwvwvgwxwwwwwwxfwwxgxwwwxwwxwxgxwxwvuwxxxxvwvwxfwwwwwxvwwwwxwxwwxxwwUuvwwwvvwuwvwxFWfwwwgwvwwgwhwxwxwxwhwhwwwwgwwgxxwwxxfwwxwhvgvwWwwwwwwhwwxxxwxwwwxhwwwgwwggxxvxxwwxwuwggwxfwwxvwxgwwxwwwxwxvwxwxwvwxwwwwwwwvwhwwxwwxwgwvwxxwxwvwwgwwwUvuwfeVwvgwwwxegWwwwwfwvgwwvvwvwwvwxgfgwwwvxwwvhxwgwwwwwvgvwwwxvwfwxgwwwvwwwwwwwwwwxxxxxxxwwwUvuvgvwVwgffuwgVVwwwvwwvvvugvwwxwxxwfexwwxxwwwxwvwfewwxffuwwxuvgxwxwxgwwwwgwgwxwwvwgwhwxxwxwwVwvgvwfgVVwuvgxugfwwwwwwwxwwwxfhwxwwwwvwwwxwwgwwxwxwxwwgwxwwwwxwxwwvwwxwxwwwwxxgwxwwxwwxxxxxxhwxxxwwxegWwgwwwvgwwwwwxxgwxxxwvuxxwxvxwwgxwwwwwwwwvvwwwwxwwwwwhwxxxxwwwxxwwxwwwfwvgwwwvugvwgwgfhwxxwvuxwhwwhvxwwwwxxwxwwvwwwwxwxwwwwwwxwxxvxwwwxwxvwvwwwxvwvwwxxxwxvxxwwwxxxxxxxwwwvwxwwxwwwxwwxxxwwwwxxxxwwxwwwwxgfgwwwxxfexgwhwgwwxxhwwwgxwwwxwxxxxxxxxwwwwwvxxxxxwwxxxxwwxwxxxxwwxxwxxxxwwxxxwwvhxwwwwwxwwgwwwwwxxwxxwxwwwwxwwxwvwwxwxwwwwwwwxwxxTegvEeefVevweffwEeewwVfVvFevvwwgUuvveUTvuwgwVwweVfvwggfgvvxgwefvwwffwgfvwwvwwwfgwwwwvwwvxwffvvvfwwwwxwvwwwwwwwwxxxUvfgeeedVvvfvwfUfvwgguUdvwwVwdguvduvwvxxwgwvwwwgxxvwvxwgugwgggwfuwwwvwwgvwwvwwgwhwwfwwwhxwwxxwxxxwwwUevvgVVVfFefwvwgVVfwghfgvWfwWvgfEUvwgWfWvvxwgvwVfgvwgvXwfvwwfwxvwgwwwwwwxghwwwwgxwxwgwwxxxwwwwwwwvhxwgwwxwwxxwxxxfegwvffvVugwxgvwgefwwfvggVwvwgwffvfwwgvwwgexwxwwWwghVwwgvwwgwwwvwxwfxxwwwwwwxxwwwwwwwwwwwxwwxxxwxwwfgvefvvvwwfuvVvvwwwvvxgugwfvwxxxxevxgxxxwvwwwwvxwxgwwwxvwwwwxgwwwxxxwwxxxwxwxwxwxxwvwvxwvwwwgwxwxwvwvwvxxwxwvwvwxwwxwxvwxwwwwwfwwxwwxwxhwwxwvVvvwwwgvwgwwvwvxVvwffvwgxxVvwwVwxwxxxgfgwwwwgwwxwgwwgvwwwxxwgwxxghgwxxwwxgwwwxwwhxxxxwwxxwxgwwwwwwvwvwwhwxgwxwwxgwxxvwwxwvxwvwxxxwwwwwxwwxxwwfwwwwgwwvwwxsfgwvwvwvevwffuweefewwwwfedvwvvffvWvuVuwvgfveefdfvxffvwxwxfvvfvffvvevfwvgvggwxgwfwwvwvfvgvGfhwvwwwwwfwwxwwwwxwwwwffwwwvwfVevvwwfcetgvxffwfwwvwvwvfvwwxvufwwxxfgvwwwftfVehvvvwgwwWuwwwfvwwgwwvvwwwwwwxwwgvxwfghwgwwwwfvwwwwvgvvwxgwfffwvwwggvfwwvwgeVfgwwxwggwww6VuWwvwvwgwwwwxwwxxwwxwwhgxwwwwvxwwwwxwfwvhxgwwxwwxwwwwwxxxwwgwwwwxxwvwwwfffvgvfwwwxwFVvWhgwvgwgwvgxvvwxxwwvwxwwwwvvwWwwwwwwwwwvwwwwvxwwewvxwwgfwwwxxwwwxxwwvUwwwwwwwwwvgwuvvwxwvgwfevwgwgxxwxufvwwxwwwwwxgwwwgwggwgwwxvfvvuwvwfwwwxxwggwxwwwwxwwvwwwxwhwxxxwxgwwwxgwwwwwwwwwwwxwwwxwwfwxwwwwxwxwwxwxxwwgxxxxwxwxxvwvwwwxwwwvxxxwxwwhxhwxxgwfvwwwxwwwxuwvvwwwwwwxxwwWgvwvxgwXxxxwwwXwwhwwwwxxwwwwxwxwxxxxxhwxxwxxfxgwwvwxxxwwwxggwwwxwhwxxfvwwgwwwwvxxvhwxxxwxxwwwwgxwwxwxxwwwxuwwwxwwwxwwfwgwtwvxWvwwVfwfwgfVvvwvWVweEEvwfffvvvgvggwvxgugvwfgfvwvvgwfwxwxwgwwhxgewfgggvwxvWvwwfwwwwgxwfwWwhwgwvwgvwvwxwwvwwwwxhwwwwwwefvxuggwwwvwwxfWvvwgufffvxwUvwgwxwvvwwwwwxwxggwwwhgwfwwwwgwgfwgwwxugwwwwwwggWgwwwwwwwgvwwwxwwwvwwgwwwwwwwwgwggvwgfwwgwggEEvwggwgfggwgwgvggwgwwxWwgwwwhwWwghwggWvwgfxvhwhxwwxwwwwwwwghwgwxwwxxxgggwwxwwwwxxxxwxgxwwvwxxhwxxwhwggxxggugwwxwxhggwwwgefgwWfgwggvwfgvvwuxwwwgxgwwwwwwgwxvxwwwwvhxwfhxhwxwwxxxWxggwwwxxxwxxvxxxwxwwfwwwwwggwwvggwwwwgwwwxxwvgwggwwwxwwxvxwhwwwxwwwwxxxwhwwwggwxwhwwxwwhwgwxwxwxwwwwxgxgwxxxwxgxxxwwxxxxwwhvxxwxxgwwwhwwgwxxwWwxwxwwxxXxxwxhwxwxwwwxxxwxxxwwxwxxxxxxxxxxwxxwgggwWwwfwxwwvxgwwwwghgxwxwwwwwwwwxvxwxxXwwgxwwwwvwxxhxwxxwxwxvxxxwWwXwwxxwxxxxwwfwxhxwwxwxwWxxxggxxwhwhwxwxwwxgxwwxxxxxxwgwgwwwwxxxxxxxxwxwxxwxwwxxxxxxwxxxxggxxwwwxwwxwxxwxxxxxuwwxfwwwggwwwwvVfewgwgwgWuwwwxeguVfwgwwwwfvwVvGvfgvWgwxwgwgwwgfwwwwwvxwgwwxwwxwwwhwxvwwgvvfwhwwwgfgvwxgwhwfTftwfvgwvgvwEvWvfwvhgwvwhfgfftwvgwwxfwvxfwxwwwfffwvWvWvwxxwVVugwgwwgwtvvwVXvwwgwvhvxwwwhwwxvVvuwvgfgfgfwwwwgGUwwwwxfvVwxhwhdgVvgwwgwgvgxwxgvfgwxgwwwxhwxgfwggwxxwwwxwwxwwwxxxxxhhxwgvvvwXwxxxwwhvxxwwwwxwdvfeuvwwvwxxxfwfwxwvgwggwwwvxfxwxgxwwvwwwvwwwwvwvffvxwXwwwxwgwwwwxxwgvwxwxvwwwgwvwvwwwvhwggwVvwgxvxwxvefvwhwwwwwwwxxwgvxwxwxvvwwwwxwwwxxvvvvxvwgxwwxwwwwwwgwxxwwwwxwxxxxxxxxxvvxwwwxwxxvwvghwwwxwxwwxxwwxxwxwwwgwvvwvwxwxxxxwwvwwvxwwxxhwwxghwggfVwwwvwwwxwxfwVwhwhwxwwwwwwvwwwvxxwwvxwhwgwwwhwxwwwwwxwgxwxxxgwghwxhxxxwwhhxwxxwxxwwwwwxwgwwwwwwxvwwggwwxwwwwxvxxwxwwwwxwxwwwwxhwvwxwvwwxxwwxwwghtegwVwwwFgewvvvwEWffvgVwVffwfvgxfvvwvgfwvfUwfvgxugevwvwfwvgvwghWfgwgggwfvvwVvvwwWgwwwwwguvxwWvxvgvwgvfwggwgvxgvhwwgwwggvwUvwewvvVvwgvvxeffvewwfVwwwwwwtwfvvfvvwwfgwvxwwwwwwwwwwvwgwgwdwvwwvgvvwvuvwwgvvxwvvwwwwwwwvxwwwwxwwwwxvwgvfxwffwVfVvwwwwfVVwgxgwFffwwwwwwWvwgxffFWwxwxgvfgwwwgegghwwxvwgxgwwhggwwxwwwwvwhwgwxxxwwwvvwxwghxwvwwxxhxwgxxfvvwwvwgvwgwwwfvuwwfvxvwvfwwxwwvxwwwwwhhxwvwwwwfwwvvwxgwvwwwwwgwxwvwgwwwgwwxwxxxxxwgxxvwvwwwgvwwvfvwvvwggwwfwGwggvVwgxxwxwgwwwwwwwvxxwxwfwxwwxwxwwxwWwewvwgwwxwxwvwvxwwvwwwxxwwxxwxvxwxxwwxwxxwwxxvwwfwwwvwxgvxwxvxvwxwxwwwwwxxvwvwxwwwwwwxxhwxwwwwxxxwwwwwwxwxxxwvvwwxxvxwxvvwwwwfwwxxxfwvwwvgwwwwwhxwxwwxwxwvxxhgwvxwwgWxwgxghhhwxxwxxwwxxxxxwgwXxhhwghxxxxxhxxgxxxxwwwxwhgxxwwvxwwwfwxwwxxvwwwwxxxwwwxwvxxwxhxwwxwwwwvgxxwwwxwwwwhxxxgxxwwxvwwxwvwxwxxxwxxwewxgwwgwwwWwgfvwwwwwwgfWfgfwgxwWvWwxwguwWfWwhggwvwwwxwxwhwgwvgfvxxxwWwhxwgwwwvwwxWwwwwxwwwfhxwvgwxwwvwfwhwgwwwwgwgwwwfvwgggwwgguvwwfwwwwgwxwxxwxxxxvwxvwwxwwwxwwwwgwxvfxxxVwwwfwwvvewVwfwwxwxwwwwwxhvxxxwgwwwwwfvwwWvWwwfwgwWwWVWvwxxwfevwgxwwgwwgxxxWwwwwvxgwfwhxwxvxwhvwwwxxgwxxwwvhwgwxwgxxxxywghwxxwggxxxwwxgwxwwwxxwwwxgxxgwgwVvwwgxwwvfvfwWxwgvxwwwxxvxwxxxwxxwhwwxhwwwwvwxxxwxwwwxwwxwvwwxxfwwwwxwxhxxxxgwgwgwgwwxwggwwwwxvwgxgwhhwxxxxwwxgwwwxxwgwwxwxwwfwwvwggwxvxxwgwwwxxgxwxxxxwxwwxfwxwxxwxwxwvxxxwxxxxxxxhwxxxvxhwxvwxxxxxxwwwgxgxgwwwwxfwhwwwwxwvxgwhxgwwxwwxxwwxwwxwxwwwxxxwxxwwxwxwwxxvxhwxxxwxxwwwwwwwxwwwxwxxxxwxwwwxxxwxwxxwwxwwyxgwxxxxxwtggweefvfvfgUVvuvwvwwfffvvevwfVevwfgwgvvwfgevwwfwwxvvvwvwffgwgvvwwxwWwuwwwxwgfgwvwwwwxwxfwxwwwwwwwfvvwVdvuvwvfvvwfvwvwwvwfVewvggvfwxwgvwwgxgwvuwfvvwwwgvxwfvvwxwwgxxwwwgvwwwxwwgwhwxwwwxwwfvvwvffgVgvFfdfwgwwwvwgwvwgvwwfgwwwfgxfhwwgwwwxwwwwwxwxwgvxxwwxvwwwwwwwxwxwxwwwwwxxxxxwxwwwxwwxwgvxxvhwxxxxfffUgefvwxwwwwvwvgvvwvxvwggvwwwwxxgwwwxwwxxgvxwwwwwxwvwwxvfwvwwxwxwwxwwwwxxwwxwxwwwwwwxxgffvuvwwwwgevwwgvgwgwgvvwwwwwwwxxwgwxwwxwxfgwwvwwxgwvwgwxxwxxwfwwwxxwwgxxxxhwxvgwvwwwgxvvwxxxwwwwvwwxwxxwxwwwwxwgxwvwwxwwxwwxxwgfvfvfvWgvwwxhwwwwwxwvwxxxxxwxwwwgwwwhwhxwxxxwwwwgxwwxwxxwxxwwwxxwxxxxvgxwxxwxxxxxwvwxwwwwxwwwvwxwxxwxvwwxxxxxwwwwxxwhwvwwwxwwwwwxwwwgxweffwVvwwFvtwfVewfvvwvwwwuffwgwww6vuwtVvwvfwgvvxweVUwfvvwwvwwwxvvgwVVeggWggevxggvvwwxwwwwwwgwwfVfffhvwwxwwwwvvwwwwvwxxxxwEvexcgfwvfueuevdgfwfvugvxwwxvfvwvwwvvwvvgwweuvwxwwxfwwwwvvfvvUvvgfwwwvwWfvvxwvwvwwwwwwvwvwwwuwwxgwhwwwwwxwwwVvvwfFdvffgfvwWWV6ewgfhgwvgvgfwVfgffwwwgfwwwhwhffGfwwefvgwhwvxwwvxgvhhwgwwgwgwvwhxwxwwggxwvwwwxgwwwwwxwwwwwwxxwhwxxhhweffefgvvuwvgwwevVgwWtvwgwwxwfvffwvfwwwgwvfwwwxwwgwwxwvwwwvwwvwxwwwvwwgwgxwxwvwwwxwxwxwxvwfwvwvwgvggvvgwwwwgwvvwwwvgfwvvwwxgwwxwxhxwwhxwfgwfvvwwwwwwwxwxwwxxxwgwwxgxwxxgxwgwwwvwxvuwwwwwwvfxwxwwxwwwwwwwwwxgwxwwwwgxwwwwwxwwxwwwxxxwwxwgwxwxwwxxwxwwxwvwxxxfwxwwvwvffwgvvxwwwgwwWvgwxwwvwxwwgwwwwwxgwgwwwgxwwxwwhwxxxxvxxxwwxwxgxvwxwwxxgwxgwwwwxwwxwhwgWwxXwwwwwxwgwxxwvuwvwxxwxwuvwgvwwwwxwxwxwwwxwwwxwxwxwwwwwwwwxwxwxwhxwfxwWwwwwvwxxxxxwxwvwwxwwwwwvwuwgxfvgwxgfggwwxgxgvWgvwxxwwgvwgwfwwwvhfWgwvwhwggxxwwwgwggggvwvxwgwxxwhwxwgxgwwgwxhwwwwxwxwwhwxxxwxgwxwwfwwwuwxggwwgvwxuwxwwvgwvwvvwwhuxwxwxwhuwxwwwwvwwwfvvwwvxwwwwfxwxwuxwgvwxxxxxxxgvvgwwwgfWvwvvxhghgwwgwwwwwwxxgvWvwgwwwwwxwgwwgwwxwxwwxxwwwwvxxwhwxhhxxxxxgwxwgxxwxxxxxgwgwwvwewvxwxgwwwwwwgxxgwgxwwwfwwxxxxxhvwwwhxxwwxwxxxwwxwwxxxwxxxwxwwxhxwwwgwhwwwxwgxxxxxwwvwwxwxwwxgxwxwvxxwXwxxxwwxxxxxxvxwvwxxwxxxwxxwwwwvxxxxxxxwwwxxxxxxxwxxwxxwxxxvxxxxxgxxhwxwWwvwwwwxwwxwVwwwxxwxwwvxvhxxxwxxxhwxwxxxxxxxhxxwxxxwxxxxwxwwwxwwwxwwwxwxxxxxxxxxxxxxxwxwxxxxxgxxxtgfwgwwggvvfffvvwwxgvwgWefvuvUdffdffugwwvvgVevVuvfvwwwxfuwuwwwwwWvvxwgvwwwxfvwxfxewgwgxwwwvxgwvwwxwwwwxwVuwweffvwwwwfEufuvwwwwxwwUdffvuxwwxwwwfVgewhewwwwwxweewwgxgvxwwhvvfgvxwwwXwxwvgvWuhwwwwwwwwwwggfwvvfvvwgffvhgvfwfwwWwwggfwwgvxwhvfVVvGeuffvxwwgggvwWgvvwwwxxwgwgwwwwvwxgxwwwxhwwwwxwvvwvxggwvwgwxwwgvwxwwwhgxxxfVvfvgwvwxvvgvwgwwvwwwwVVffwvwxwwwxhwgwwvwhfxwxwgfvwxwwgxhwvgvxwxgxxgvvwffgwwvxwwxxwvxvgwwwwfevxfwwxgvvgfvvwwwxxwwwvwwgxwxwwxxwwxwwxxxwwwwvwvxwfvvwxwxwwhfgvwwhvwxxhwxvxxwwxwwxwwxwwwxwxxwwxxgxwwwwxwxxxxxwwhxwwwwxxwwwwvxvwxxgeuWfevxxxhwhxwgvxxwfvwwhggxxhwxwwxwhwxwxwvgvxwhwxxwxxwxygwWwxwgwxxxxwgxvxhwwxxxwxxvwxxvxwxwxxxxwxxxwxxwxwxwwgxhwxvxwwxxWwwwxxtwwwgvvwgwwvewwwwvvfuvffuvwwwgvwvgwwvggwfuvggVggvwxwfUfwwwxwwwwfwvvwwwvwwhwgwwgwgwwgwwxgwwwwwvwwxwxgwhwwwxwxxwwxwwwvvvwgvwwwwgdwvuvwvfxxxwwwwwwvvwvwgwwwwwvdwwwwwwwwwwexwwwwwwwwvwwwwxwxvwwuxwwwwxxvwwwvwxxwwwxgfwwgfgfvwvwVgwwwvgwwwfwgvwfgwwFfvhwfgwwvfggvwgvvgwwwxwxgvwwwwgxxwwxggwwxwwwwxwhxxwwwwhwxwwxhwwxwxwhwxxxwxxxwwwwgwwgwgxwwwwvgwewvwgwwwvwvgwwwwxwwxvxwxxvxwwexxwwwxwwwvxxwwwwwxwwwxxwxxxvwwxxxxgwwwxxxwwfwfwwwwwwwwgwwxgwwwwwxwvxwwxwxwwwxwwwxvwwxxxvvwwwwwwhwwwxwxxwwwxwwwxwwwwxwxvgwxwwxwxxxxwxxxxxgxxxwhwxxxxxxxwwwdvwhxwvxxwxwgwwxwwxxwhwhwwwxxwwxwwxxwxwxxxxwxxxhwwxxxxxxxxxwxxxwwxxxxwwwwxwxxxxwxwwxwwwxwxwwxxxvwxywxwwuwgwwxgwxfgwwwwwwwffwgfwwUffgwwwwggWwwfvvwvwefwwVVvwwwuwvxxwwwwwwvvwxvgwgwwvfwxwwxwhvwwwwwwxWvhwwwvxwwxvxwxgvwwwwwgwwxvwwWvwegggvvwxwgfwwevvuwgwxgxgwwuwvxvwwwvxwvxwvwvxwvwhfvwwvxgwvvwvxwwxwvgvvwwxwwwwwxwgvwvgvwUwfgwVwfgggwvvwwgVgggwwgfgwfwwxuwwxwfwvwfwgwwwwwwxxwwxxwvwwwxwxxwxxxwxxxwvxxxxwwwwhwxxvxwwwwWvwxxwxxwgvxxxwwwwwuWwgwwxwwwgwwgwgxvwwwwwxwxxxgvvwxhwwwwwxwwvgwwxxxxwxwwwwxwxxxwwxwhxwxwwwxxxxwwvxwwwgwwxvvxxgwgwwwgwwwwuwwwvvxxvwwwwwxxxwxwvxwwxwwxwwwwxwwwxwhwxwvxxwgxxwwxwxxxxwxxvwxwxxxwwxxgxxxxxxxwxxyxwxxxwfwwwguvwgxhwxwvhwwgxxwxwwwwwxxwxhxwwxxwxwxxwxwxwwwwwxgwxxxxxxxwxwxxwxxxgxhhwxgxxgxgxxxxwxwxxwxxwxggxxxxxxwxhwwxxxxxxwxxxwxwtvwhVfuvgvwxffvgwvwwwgwwwxwgGvuffUfvgUVwwgwgwwwewwwwwwxgwxgvvgwgvwwwwwwwwwwwwwxgxxwwvwvvwxgvgwwwgwvwfvwwwfvvvwguevwwwwVwwfvwwwwwgfvwegwvwwwwwvwwWwvhwxxgwwwwwxfwvwwxfwxWguxwwwvwvxwwwvwvvgxwwhwvvxgvgxvgfwfVvwgwxvWwwxgxwhwwvxWUVvVeewfgGVvxwwwwwwxwxgxxxwwwwvhxwhxwvwwxxwwxxxxxwwgggwwwxxxxxxxwxxwxfvggvvwvvwwvgwvwwvxvxxwwwvvwwwvwwvwhwwvwwwxwxwhxvxwwwwxwwwwwxxwwwwxwwxxxxvxxxxxxwwwwgwwWwwwxwwwwwgwwwxwxwwgvwwgvwwwwwwwwwxwwxxwwgvwxwxwxvwxxxxxxwwxxxxwwxwxxwwxgxhxwwgxwwwwxxwwxwxxxxxxwwvwxwxxxxxwwxxwxxwxwwxxgfgwwwwxgwwwwxxgwwuwxwwxgwwxxxfwxwggxxxxxhxwwxxwxxwxxxwxhxvxxwxxxxxxhwwxxxwxxxxxxwxxxxgxxwwxvhxxxxxwxxwxxxwxwwwxxxxxxwxwxxwxxxxxxwwxhxuxwwwxvgvgfvgwvffwfwgfwgxvwwgfvvggfggffwfwfwwxfvvgvvwxwwvgwgxvwwwwwwwwgwwggwgxwwwwvgxwwvwwwxwgwxwxwwguwgwweuwwwgxvvwwwwwgvvwwwfwfwwwxwwwwvxwwwwxxwvwvvwwxwgwwvwwxwvwwwwwwwxvwxvwhwgvwfggwwwwwggwvwgwVvuwfwwwwggwwxwgwgwwwxwwvvwwhwgffxhwwwxxfwwgwxxwgwgxxwxhwgxxwhxxxhxwwxwxxxwxxwvxgwwwvgwvwvwwgvwwxxvvvwwwwxwgwwwvhgwwxwvwxwxxwhwxwwwwxhwxxwxwxxxhxwwxwwxxvwwxwvvwwwvwwwfxwwwwwwwxwvxxwwwwvxwxwxwxxxwxwwwxxwwxxwxxwwwwwwxxxxwxxxxxxxxxxwxxxwxxxxxwwxxvwwxvxvwxeuvwwxwwxgxxxxwwxxxxwxxxxwxwxxxwxwwxxxxwxhwxxxxxxxxwxwxxwwxwxxwgxxxxxxxxwxxwxwxxxxxxwxxgwxwxwwxwwwxxtggggggwfgwwwwfgwfgfgVfgggwwggwwggVVvgggwvxfUEgwgwgwwvxwwgwwwgggwvwfggxgwwxwxwwwwwwwxwVfgwwxgwwwwhwgvwxvxwwwhwwxvwgwVwgwfvwvvfgggvgxgxwwvwxwxwggwwfwvwwwwxwwwxwwwvfvxwwxwwwgxvxwwvvxwgwvxwxwxuwwwxvxxwwgwxxwwhwxwwwxwxxwwwwggghgggwfwgvwwwwgWVgwwwgvwhggggUEhgwxgwwxwxwhWfgwwgggwwgwxwwxwggwwwxxgxwxxxwgwwwxwwxwwhxwhhwwxwwwwxxwxwwgxxwxhwxxwfwggwfwwxuxvwWvvwxggxvhwwxwxWfgwwxxgvwwgwhwxxxwwwwxwwwxxxxwgwgwxwgxxxxxwxxxwxwxxwgxhwwxwxwxvxwwwgfwwwxwgggwwhwhwwwwwvxvxxxgwwxxwwwxwxxwggwwxxywxhxwwxxxhhwxxwvxxwxwxxwxxgxwwwxgxwwwxwxwgxwxxxwvxxhxwwxxxwxxxxxxwxxxxwwgvhvxxhwxggggxwXvwwxwwwxwwxxxxxwwwxhxxwxxgxwhxxxhwxxxgxhXxhxhxhxxxghxxwhxwxxwXxgxxxxxwxhxxhwgxxwxxxxxxxxwxwhwxxxxxxwxwhxxhxxhxxxxhxxxvwwfvugwwgwwvgwgvwwggwwwwxvxwxVuuwewWvxwwwwwhvgewwvwwvxxfwvfgVxxwwwwwwxwwxxxwwvwwxgwwwwvwwwwwwwxwhwwxwUvuwvgUvuggwegwwwwwwwwwwwwwVwgugwwwwwxwwVvvvwwxwgwvWfwevfghwggwgwwwwwxwxxxxwwffuwwhwwwxwxwxwwwwxwwVvfwuXewhwwwwgwvgVwwwvvwwwxwhvWVwwwwwwwxhgfufgwxwwwxwwxxxwwfwwgwwwxxwhwwwxxxxwwwwwwxhvwxwwxxxwwwxuwWwwwwvuvxgfwwwvwxhvwwxwwwwwvwxwxwxvwwxxwwgwwxwxwwgwwwwwxvwwwxxwhxwwwwwxxxxwwxwvwwwwwwgwxvwxwwxxwwwwxvugewwwwxxwhvwwvxwwwwwwvwwxwxwwwhxxxxgwvxwwwwwwwxgwwxwwwxxwwwxxwxxxwxxwxwwgwxwxwwwxxxwwwxxwvxwxwxxxwwxvwwwxwvgwwwwgwwxwwwwwxwxxwWwfgwgfxxxxwwwgvwwwxxxxxxwwxwhxxxxwxwxxxxxxxxwwxwxxwxxwxxwwxwwxwxwwgwxfwxxwwwxxxwwxwwwwwwwwxwxxwwwxwvwwxwwwwwxwwwwxxswfggvvWggfwvT5vwvvgvggvvffwwwfwgvvfvvWuvgfwwgvwwggwwwwwuwwwgwwwwwfvwffwwvwwwgxwwwwxwwxwwwwvffvxwwvwwwggwwwwgwwwxgwwxvgfwwffwwggwwwwwfwwvwwwgwwwwwwwwvvwwwxvwvwwfvgwuwxwwwwwwgwxwwwwVwfgwwfwWwwwwwwwwxwwvdwgfwwgwvvuxwhgxxxwxwfvwWvgVvwT5vgwfvwgWwhgvggwfwwvWwvvWugwwwwwvwwxwxwvfxwvWwwxwggwwxwxwwgvgwwwvWwgwxwxwxwxxwwxwvWxvxwhwwxxwwxwhwwxwwxvfgwWwvwgvfvwwwVvfvvWwwwxwwvwvxvwfwwgvgwwwwdwwfgwwwxwwwwwvWwxwwwfxxwwwwxxwwwxwxxgwgxwxwwxxwfwvWwvwgwvvfWwwwwxwwvwxwwwwgwwwxgwwxwwwxwxwwxwvWwwwgwwxvxxxxwxwgxwwwwwgwwwxwwhwxxxwxxxvwvwwwwwwwwgwwwxxhgwxxxwgxxwwxwwxwxxwvvxwxwxxhwxxxhwxwwvWwwwwwvxwxwxgwgwwxwgvwxwxwxggwwwwwhgxxwxwwwvwxgwwxwxxwwhxxxxwwwxgxxhgxxxxxgwxxwgwxwwxxgwwggxgxwwwwvwxwwxxwwxxwwwwvxwxwwwxvxxwxwxwxwxwxwxwwxxvxwwxxwwwwuvww6wewVgfweffgfvvgfFvfwfwfwwggwwfffwfwwgwfwxgxvggwfxgvvvxxwfevxfguwwfwggvuwhgxhgfgwgxwwwwwwfwxwwxggwwgxwxvwxxwhxfwfwffuvvgwfffwuwwwgwwwwwwwvwwwfwwgwvhfxfwgwhWwxwhwgwwgfwwwwwuvwwgxwxwwwxvvwgxuvxwwfhxwwxwvwwxxwVvvwGffvvfggWvvwgFvwWg7WgwvwvhwgwgwxwwwwwwwwxwwgwxwxvhvwxwwwgvgggWfwxxxwvxgwexxhwxxhwxxwxwxgwxxwxwxwxhwhxxxxwxWwfwwwwwvfwvwwvvgxwwwhgwwwvvvewwuwvwxwwwwwwxwwxxvWwgxvwwwhwvwxxwxfxvvxhwxxwxuvxghwwwxxxhwwgwwuwgwwvvuvgvwWgwwwwwgxwgwvwgxvxvxwwwwwwxgvvwxxwwxwwgwxvgxxwfxwxwvxxxxxwxwxxgwwwvxxwxxwwxgxwgxwwwxwwwwwvxwxwhwxxxxxxwwvwxxxxwxwgxhwwxwgwxwxwxwwwxxxxwxwwgxwwxwvxxwwwvxwvvwxwxwgxwwwhwhfwgwvwvxwwwwfWxxxwxxxvxwwxwxxxgwWgfwfxwxgxwxxwwwhxxwwwwxxxxxxxhxgxxxghwxxgwwwhxxxhfwxwwwvxhwwwxxxwxxxwxgwhxwwwgvxxxxxxxhwwxxvgwxxxwwxxxwxxxwxwgvwgwwggxwwvuwxwgwwwhfWgwwgfvgvWwgwVfwfugxvwwxgwwwguvgwxgvwwwwfwffwwxxwwxwxvxhwxhwwwwwvwwwxvwgwwwxxwvwhwhvgvwwxgwfvxxwvwwvwWwwvXxwwwwwwvxwxwuwvvwxxwggvvwwxwxwwwxvwfvxwvvwvvwwvwwwwvwgvuvxxwguvwgfVxggvwwwggfWxwwwwwxxwwvvgvvfuggwvxxwxfwggwwhvwwwwwwxggxxwwwgxWxxhwxxxxxxxwwwwwgvxwxvwxfxxwgxhxwvwfvwvggwgwguvwgwxfxxxwwvxxxwwxxhfvgxwwwwgwwggwwxxwxwwxgwfxwwwvhxxwwwwgxwhwxxxwxxwwxxwwwxxxwwxwwxxwwxxxxxwwwwhwwxwhwwxxxvwxxxxvxwxxwxxwwxywvxxwxwxxxxxxxxxwxwxvxxwxyxxxxwhwvwggwwxxxxwwwxwxwgwwwgwwwxxxwwxxxxwxvxxxxxxxwgwygwxxxxxxwxwxwwwhxxwxxxxxxxvxxxxxxxxwxxxxuwwgvgwfgwwuvwwwvwgWWwvgfwgfevvwffvwvwvwwvwffgfueWgvvwwwwwxwvvwxwwwxwwwxxwwwwvwvxwgwgwvwwwgvvxwwwwvwfwgwwvgvwwgxfgufuwwwwggffVgvuhwgwwwwvwfwwwwxwfwwwvwwvwxwwvvwvwwgwwwwwwwvuvwxugwwvfwwvgwwwwwxxwwewwwxwwwwwgffwwgwgwwxwwWwwfWvwggwxgwwvgvgvggwwwvwwxwxVffwvgeVvwwwwggwwwxwwxwwwxwxwxxxwwgxxvwwwwgvwwwgxwgwwwwwwhwgvggxhgwwwwwwwxwxvfvvxwvgvxwxvvgwvwvvwxgwxvgxvwvwwwwgwwwgwwwwhxgwwvfwwwxwwvwwxwuwwwwwwwvvxvwwwwwwxwwwwwxxwwwwwwwwxwwxwwxwvxxxxwwxwwxwwwwwwwwxwxwwvvgxxvwxxwxxwxxwwxxwxwwwxghwwwxwxwxxxxwxxxwwwwwwxwwwxwxwvwwwwxxuwwxxwwxhxwgwggwwwggxwxxxwwxwxxwxwxxxxwwwxxxgxhvxwxxxwwwxwxxxhwvwwwwxwxwwwxxxxwxxwvwxxxwwxxxxwwxxxwwwxgwwuvwxWwxfwwwwgfwGvtwwfVvwwwgwhVfuwvwfwwgvwwweffvwvggvvwxxwwfvvwgwvvxwwwwxvffxWwWgwwwgwvgwwxwwwgvvwwwwgwxwwwwfwwwuwwwfwwvwwWfwwgwggvgwwwgVvwvwwwvffwfwwwwwwgwwxgwhwuxwwwwvwwwwwwvxvwwvwwwwwwxwwwwwwwwwwwwWvxwWuggwxwwWfgggFGwwxwwxvggwwwwxwwwgwwWvvfvhvwwwxxggwgwwhgfwxwxwxxWgWxxhxwxxwwwwwxwxwxwwwwxxhwwxwxwwgwwvwwxhfvxwgfwgwwgwxwwwggfwwvgwxwwwwwwwwwwwgwvvwvxxxwwwgwwwxgwxxxwwxwwwxxxwwxxwwwwwgxhvgfvwwwxfwwxwxwvwwwxwxwwxwhWwwwhvwgwwwwhwxxvxwgwwxvxwxxxwxwgwwwwxgwxwwwwwhwvxwwwwxwxwgfwxxxxwxxvwwxwwxxxwwxwwwxxwwwxxxxwxwhwxxhxwxwwvxxwxwwwwwxxwxxxwwxxgxvghvwwwwwvwxwgxwwwvxxgWgxxwwwxxhxxxxwxxxxxyxwxxxxxwwxhwwwwxhwhxxwwxwwwwwxxxxxxxxxxwhwxwwxvxxwxwwwwwxwxwxgxxwxwwxxwxwxwxwwhwwwgvwxwxwxVgvwfwwwwgfwfwvgwgffwwfgfgfwvgfUDgxgvgwvwvgfggvvgwvxvwgwwwwwgvvwwwvwgvwwwwwwwwxwxwwwwwwvwwwwwwwvwvhvxwwfvvwfgfwgwxwxvvfgwfgvvgfwxvxfxwwwwvwvwwxgvvwwffuwwwwxwvxwvvwgwvwwwwwwxwhxghggfxvwwwxwwxuwwwvvwxxxvgwggUDvgwfwgwfwwgfvgwgwgwwwwwggvfUwfgVwgwvgwwgwwwvgwgfxvwgwgwwxwwwvxwwwxwxwwgwwxwwwwxxxwwwgwwwwfwgwgxxvwwgwwxgwgwxxxwvgwxffVwgwwwwxwwxwgegugwwxwgwwxwwwgwxgwwwvwwwxgwwwxwvwwwwwwxwwvxxhfwxwxwwwgwhgwwwwwwxxwfvxwxxwwwwwvwwfwwwwxwwxgxwwxwfwvwxwwwxwgvxxxwxwwfwwwwwwvxwwxxxxxwxwxxxxxxgxwxwgwwwvwgwxxxwxwwxvwwxvhxvwxwxwxxxwxxxwxxgffwgwxwwxxggvwwwhwxwwwwwvwxwwxvxhwwwvvxwwxxxxxxxwwwxxwxwwwxxhwxhhwgxhgxxggyhxxwggxgxxwwwwxxxxvwwxxwxxwwxxwwxxwxwxwxwxxxwxwxwxwwwgwxtwghvwwxwwguFgwwwwggwgvfwvvhwwguFgwgfwxwgvffvwvgwwvwwgwggwwwfwxvwwwvwgwwwwvWwwwfwwvwwxwwwwvvwvWwwvxxwwwwfwwfwfwwxwggwwwvgvgwvgxwwwvvwghvwwvwxvxwxxwfgvgwwwxwwwgwfwwxxxwwgwwvwvxwuvwwggvwvwvvvgwgguFvhwvgwwgghwvfvwwgeFvgwwwxwwxgvvgxwwwwwxxwxwwwhgwwxhwwhwgxxxwWxxhwwwhxxxxwvWvxxxxgvWvgwgwgvgwwvwwwwwwvvvxxxgwxxvwwgxwwxwwxhxwxwwgwxwwwwwwwxxwwwwwwxxwwxvwWwwwwwwgwwhwwxwxxwwxwxwwwvwwwxwwxxwhwgwwwwxxwwxhguxwwwxxwxwxwxxwxxxhwfwxwwxxwxwxxhwxxxwxxwwxxwxwwwxxggfgvwwwwhvvwxwwvwwwwwwwxxwwxwwwxwxxxxhxwxxhwyxwxxwxwwxxxxgxxxwxwxwwwxxxwwwxvxxwxxwwwxxxwxxwxxxhwxxhgwwwxwxgwggwwwxgwwxgwgwwwgwwxwwgwxxxwxwwwwwxwwwxwwwhxwxxgwxxxwhxwwxgwgwwwwxwxggxxwxwxxxwxwgxwxwxwwwgxgxwwwwggwwxwwwwwxxxxwwwwwwwxwwxxwxxgghwwxwwxwxgwxwwgwwwxxxxxwwwwgwgxwwxgwgxxvvwwxwwhwwwwhwgwwhxwgxwxxwgxwwgwwxxxwxxwxhxxwxhxhwwwxxxxxxwxgxxxxxhxxwwxxxhxgxvvxxwxxxxwghwxxwwwwwwwxxwwxxxwxxxxxxxxxxwxxxwxxxxxxxwxwwwxxwwwwwxxwwxwwxxxxxxwxxwxxwwxxxwxxwwxxwhxxxxwxxxxxwxwwxxxxxxxxxxxxxxxxwxxxxxxxwxxxxxwxxxxwhxxxxwxxxwxxxwxxxxxhxxxxwxxxxwxxxwxxxxxxxxxwxxxxxxxxxxxxxxxxxxwxxdeegVvvgfvvxffVVvggwwfgVwfvgxgwgwwWUvwwwwwwgwfwwxwvvxxffwfVfewfVfwVvvvuwwfwxgwxxwwhvgVvdfWwwwfwwxvwxwwwwxwwhwFVUgfUeveWFuefgfuefvvwwwfwfvgwffwguwwwxvgwuvwvgvwxxwwwwdfeudeVvvfvvwggvwwwwwwwfwhWffwgfwvwwgvxwwwwxxxwwhwWfvhvfvwUFUVxwwgfgwwggwVvgwvgwwwgWuwwwggvwvuxxwUggwxxwhuwxwwxwggvvxWWwUgvxgwvhwgwwgwwxwgvwxwxgfggvwvwwfxwwgxwvxwwwxwhxfwwwxhwwfVfufggwfgWgxhwwugfwgwwhvgwwxgwwwvvwvxwxwwwwxxwvwwxxwWwgvwwwgxfffvggvwwfuxwggvwwwwxwgVfwwhwxgwvwwhwwwwxwwwvwwgwvvwxfwwwwfgvwxgwvwwgwfwwfvwxwwgfwxwwgwwxwvVgveffwxvuwwuwwxxxvwwwxwwwwwgxxxwwxhggxxhxwgvwwwuwwwwwwgwwvgwgxwwwwwwwwwwwhwxgwxwwgwxwwxhwvuvvwwxwwvwxwwgwwwxgwwwwwwxxwxxxvwwxxwgFfvgwwgxwvwuxwUfwwxgwhvhvwwgwwwwxwxxwxxwwxxxwwwxhxwhwhxUvwwwwwwvgwwgwwxgwgxxxxvhwwxhwfvwgwvwxxXgwxwxxhfwvwwxgvwwfwxxwWwxwwxxgxwwxwwxxwwgxwwxxxvwwwhwxwgxwwwwhwgxxwxxxxwxxwwwxwxuffwgfwxUvvxggffvvgwfgvfgwgxwFvwfggwwxwwegfwwwwxwwxxfvvguVEwfgvwuufwvggwwwxgvwwwwwtgggvvxwuwwvwvwwwgwxwxw6fewfffwffewwvvTfVvwvwfvvgwgwxvfwwvvwwwvwhvgvfwhxwwwxwcVfvVVfweufvwwwVeuuwwuvwwxwxhwwwvwwwwwwxwxwwwwhwgwhwwwwxwwVwfgvxgvfgwwvwwf6ExwwwfgfwvwwxvggwfvwgvwxxgwVwwwwuxvxfxhwVewwwwwgggwwwxwfwwwwxwwvwxhxvwwvwwxwxxxxhxwguwwxxwgvxwXwffVvxwwxfwwwwxxfVFfgvxwwwghxxxfvwxxwwxwxhxgxxwwxwgxwxwxxfvuwwwwwgwwwwwethxxhwxwwwxwxwxxhxxwxwgwwwxwwxxwvUwgWWwwwwxxuwwwwwwwxxxvwvwxwxgwwwwxhugvvfwxvwuwvwwgwxvwxxwwvvwxxgxxxxwwxwwxwwwxwwwgwgxvxwwwwfwxxwwhxxxwwwvwxwwxxxwxwwwxwxwwgvvwwvwwwwwxwwhgwwxwxwwwwwwwwxgwwwxwwgwwWfwwgwwgwwgggxwxhwwxxgxfvwxxWgwgwwXxwwxwxwwwwfggxwwwwxwwxgwwfvxxwwgwwgxxxhhwwxwxwwwwwxwwwwwwxgvwwwxxxxxgxwxwxgxxxxxxvxgxhhgwxxxxxwxxwxxxwxwxhxxxwvwwxhwwxwxwwxwwxwxwvwwhwxxxhvwWwwfgggwvxwgggfgxvwhvwwwwwwxhwwvggwwwxxxxxhvwwwgggvwVgvwgwwwxwwxwwxwxhwggWwwxwxwwwwxhxWwwggvwgfgvwwwfggwvwwwwgxvwwxgggfwwxgwwxwxgwgxxxxwxfggVgvwvwwwxhwwwvwgwgxwxxwxwwwxwwxwxwwwgxwwxxxgwvxgwwwfggwwvgVgwxxwggWwxwwwwggwxxwwhwxhhwhwwwxwhxwxxwggxwwxwvwwwgwgwxxwxxxxvwwxhXwwwwxhwxxxxxxwwgXwxwxxxxxgfgwwxwwgxxwxggWwvwwxvxxxwwxxxxwwxxxxxwxxxxxxxxvwwxhvwwxxwxxwwwhXwwwxxxwxxxxxxxhvwwgggggwwwxwggwwxxxggwwhxxwhxxxwwwwWwwxfwwxwwxwxwxhwxwwvxxwxwxwxxxwwwwhwwwxwxgwwwxwwhxxwwxwhxwxxwxhxwhxwxxxhwwwxwxxwwwxhxxxxxxxwwxxwwwxxwxwxhwvggwwgwgxwgxhwhxwwxxwxxxxhxxxxhxxyxxxxxhxxwwwxhxxxwwwwwgXwxxxxxxxwwwxwhxwxxxxxyxxxxxwxxxxxxwhxwxxxxwwxwxxxxxwxxxwxxxwxxxxxxxxwhwxxhwhxxxwtfvwWvvxwwwxwwwfvvwwgwwgUfwWuvwugWwwxwvWffvwgxxwfwwuwwvgVgwwxgffvwvwweugfxfveffwwhwxgvvvxxwwwxwwwFeefuvwwwvfxfUfvgwfwfvvWwUfFgwxwwxfefVvwgwwxxwTffvwwhggwgvxwUdggxfwwwfgwwxvevwgvXwvxwwwvxgvvfxwxgwvwwgvgwffvvwwWwwwwxwxhvxxwfGUgwffwwgwfvvgvvxxwxxxgvwwwwfvggxwwhhfxhhvwwxxwVvvwxxvwwwwwwwgwwxxwxxwhwgVevvvwwwwgwvgfwgvwwwxwxxgggfVVwwwwwxwwwgwwwwwxxVefwwwxwwwxhgVwwxwwxxgwfwwggfxxwxgfvxwvgwfwwwwwxggwxgvvwwwfwwgvxgwwhwxxxffffuwwxxvvvvhxwxxxwvwwwgvxwwxxwwwwxwxwxhvxvxwxxwwxwxwxwxwxxwwwxwwxwhgxfxwxxwxwxvwwxwwwwxwwwwxxxhvxwwVufvvwxwwwwgvwwwwxhxwwwwxwXwxwxhwvxxxxgxxxevfwhgwwxggvhvxwxxxxwwxwwhxxwgwwxhwxxwwvwwxwwxxxwwxgwvxwxwwwwhxxwwxwxxgwwxxwwxwxwwxwxwxvgwxwWwwxeggfwwwfwfwwgwwffwwgwwvgguvgwgvvhwvgwwwwvwvwwvfuvgwwwwwvgvfwwgvwwwgwvwwvgfwgfwwvggwwwwwgwvwvvgwxwxwwwwwwwwwxxhwwwwwgvwwvgwvgfwwwgwfgwwfuvgwfgvhvwvvffvvxgwvfxwwvwfvwwwwgwwwxwxwvgvgvvwvwwwwwxgfvvwvwgwwwwwxvwvfwwwwwxwvxwwwwvvwxwwxwgwwwwwvgwvxhxgwgwwggxwggwwwwwwwVfwwwgWwfwxgwgwgwggwwgwwwwwwxwxwvgwxwxvwwwwwwwwgwgxxxwgwwxwwwwxxwwxxwwwwggwghwhggghxwwwWgwwxwvwgxwxgvwwhgwfwwwwxgwvgvwwwwwxgxwwhvgxwwgwxwwwxwwwwwwwwwhxxhwfhwvxwxvxxwxxxfxxwwwwxwhwwwwwwwxwwwxxwvxwwwwwvwxwugxxwwwhwfwwwwgxwxwwwxvwwwxvfwvwvxwxwwvwwwwwwwxwwxwwwgwwxwwgxwwwwgwwxwwwwxgvgwxwwxwwwwhvwwwxwwwgwwfxxwxgwwwgwxxxwwgxwxvxxxwwwxxwwxxxxxwvxwwxvvwxwwwwvwxxhvwxwwwxfwwwwxwxxhwgwxwwxxwhxwxvhxwxghhxwwwwvxwwxwwxwxwxwwhxwvhwwwxxggwwwhwhwxxwwwxhvvwxgWvwxwxwxxwwxwhxwxxwxxwwvwhggxxxxwhwxwxhxxxwxxxwxxxwwwwxwwxxwgwxxxvwxfwxhwxfggwfgwxFwvwuwwgvwwwgfwdwfvgufgfwfWvwwxvfwwwfffgggvgfwwvvwwgwwgfgvuWvwgfuwwwwwvgfhWuwfvfgfffgwggvxvfvwwwggwggWvwwwhwgufgwxgfvwfgvVvvwfVeggggvVefWwgvgwgwwwwwxvefwwgvwwwvwuxwwvwvWggvgfgwtvvwUuwvffWwwfwFugvwvtguvwvwwwwwwvwwwhwwwwxwffvxwgwwgwvwwxgGfgggwgfwfwvfvvgfgwwwwwggWgwwvxewgwxwwXvwhwhwwxwwwxwwxgvwwgwwgwvwwxhVgwfxghwgwgwwwxxxwwwwWwhgwgxHhvwwwwwwvwvfWwwfwgvwgwwxwffggwwwgvgwfxgvwwvwxwgxgwwwwwhwxxgwxwwwwwwwgwggwgvwwwxwwwwWwgxXxwwufwxgwxuxwwgwwwwwwwwwwwxxxvwwwWvwvwhwgwxfwwwwwwwhvwxwhwwwwwwgwwvwhxwxwxxhxwgvwwgfwwwvwxwgwwwwgxxwvwwwxfuwgvwgxwwvxxxwwwwxwvwwgwwxvwxfwvxvxwgwwxwwgvxwvxxwwxwwxxwxgwxwvvwwwvwwwwwwwwwvhwwxwgvxwwxwwwxwwwwhwwvhwwwwgwwhwwfwwxxggwwwhwxxwwxxwxwhghxwwxwxhwwwxwwhxwwwxwhxgwvwxxwgvxhxhhwwwwwxgwwxwxxxxwXwgxgxwxwhxwwxxwgwwwhwhwxxhwxhhgwwvxxwwxgwxwxwwwxxhxwxwwgvwwgwxwgxwwwwwhxwxxwxwwwvwwwwwwvVffwwwgwwxwwvgwxgwvggghgvvwfhVvfgfwvxvgfWwwxvwwxwwvwgwvfwggfgwwwwgwwxxwguvxxgxffevvvvwuwxwwwwgwwwwwwwwwwxxgxVuvwegffffwuxfgggwhgvwwvwvgffwvwggvvwxvgvvwwwwwwwwvwwwwwfgvfwvwfwvfwwvugwxgvgwwvgvvwwwwwvwgwwxvvgwwwgwxvwwwVvvxvgvwgfvfWxwVwwwwxhvwxgwwxfgggwwxgvwwxxwggxgwwwxwxxVfxwwwxgwghxwxwwwxxxxwgwxwxfvvhwgvwxgvxxxwwwxxxxygxfgfgvwxwwggwhwvvwwxgwxwgxwxwwwgwxwxwgwxwxwgxxxgxwwxvVvvwwxwwwxwxwxvxgxxwxwwxwvwwxwwwwwwwxxgwwxwwxwwvwxwwwxvgwgxwwggwvxwwwxwxwxwhfwwwgwvwwxwwxxwvwwwwxxwwwwxxxvxwwgvwwxhxxvgwgxxgxwxwwgvgxwwgxxxwxwxxwgwwxvxvxvwwxxwwwwwwxhhwvwwwwxwwwvwwwxwxwxwwvgwwxwxwgvwwWxvwxwvxwhvwwxxwgxxwxxxxwwwxxxxgxwwwwwxgwwwxwwxgxwxxwwxxxxxxgxxwwwwxhgwxxwxfuwxfxwxxxwwwwxxxgwgwvxxwxxhxvhwxwxwwwxxgxxxxwxxwwxxwxxwwxwwxxxxxuwwgwgfwwvwvwgfwvfffwwvwWwfvwwgwvfwgwxvgvwwvvvgvwvvwwwvvxwgwwwwvewxwwfgxwwUwgvwgwVwvwwwwwwwfvhwwwwvwxxwgwwwwwxvxvwxwfwwfwguxgwvfwxwvguwfwwxffvxwvwvfgvvwvgwfwwwwwfvwwwwwwwwwwwvuwwwwwvwxwewfwgwwwwwxwwwwwgwxwwxwgwvfxvwwwwwwwggwffwwwWwgwxfVwwwvwwVwvwxvwfxwxwwvwwwvwggxwwwwgghwwwgxvfwxwfxwxxwvgxwxxgwwwxxxwgwwxwwxxxxhhxgwxhwxxwwwwfhvwvwxwfwgxxxvxvwwwxwwhwwgwxwxwvxwhwxwxxwxxvwwhxgxxwwfwwgxwxwwwxwwwxxwxxwwxxwxxxxxxwxxwxwwwfwwwvxgwwwwvwwwxgxwxwxwwwvwwxxwwxxxxwwwwvwxgwwwwxwwxwwwwwwwwwxxwxxxxwwxxxwwwxwwwxwvxvwxwxxwvwwwxwfwwxvxxxxxwxxwgxxwxxxvwwxwwxxwwwxxwwwhwvwxwxwwwvwvwwwwwxwwvwvwwwxwxxhxwgxxxxxxxgwxxxxxxxwwwwgwwwxwxwxxxxxwwxxxwwxxhxwxxxxxwxxhgxwxxxwwwwwxxhwxxxgwwwwhwxxgxxxwxxvwwwxwxgwxwxwxhhxxhgxxwwhwwwwwxwwxxxwwxwwxwwxuwwxwwvgxvxwwwgwwvwvgggwgvxwwwwwgwwwvxxwWffvwwwwwwwxwwgwvxxwggwgwfhWgfxwxxggwwwwwWgfwwwxgwwgxgwgwxxvwxxwwgwvxwggwhvuwxWffgvxuwwxxwvgwwwwxvwxxwwwxwuxggWwxewfxwwwxgwgxwxwvwwxgwvgxwxhwvxwwwwxwxwwgxfwgwwwwwwwwwWWgwxwwgfgxxxgwWffwwxhwwWvgghwgwgxxhxwgwwwwwwwvgxwwhwwwxxwwxhvXxxhxwwwwxxxxwwxgxggwwxxxwghxxwWffwxfwxgvghhwwwxgXwgxxwwwgxhwgwwxwgvggxwxxwvxggwgwwwxxwxxwxhwxxxwwxwwvxxxwxwwxgwwvgwwwxwwwwxwgxxwyxhxwwwgwxhwfxWgwxhxxgwhwxwwwwxxxxxxxxxwxwwhxvxwgwwxxxxwwxwwxxxwxgxxxxxxwxxxwxwxwwxwxwwxwxxxwxxxxvwxwXxvxxxwxVgghxwhwwwxxhxwxxxxihggxhxwwwwXxxwxwxxhxwgwwwwhhXxwxwwgxvhxvwxwwwgxxxxwwwxxxwxxfxwxxxxwhxxxxxhxxxxwxwwwxxxwfxxxxuvfgfvwwVwuxvwgwgwwwfwwfvwwwUvvwuffwwwxxvvwxwffwvwwwwwxxfvvwvgguvwwwwvxgVwxgxfvvwgwvwvvwwwuvgwwxwxwwEfdwegVvfvvgwvwvfgfvvgxwvfffvvgfwwwwwwvvwxvwvhwwxdgvvfvvwgwxwgvggvvvwwvxwwweufwwxwwwwxhwwwwwgwvxxxfvuwfFTwwgwgwfgvggxwfgwwvwxwgwggwwwvvwxvxwwwwvwxwxxxwxwgWewfwvwwwxgwwxwwwxxwxwggwwgvwwxwwwxwwwxxxxwxwhfgfvfgVVvwwwxwwwwwwvxwxwwxwwwwwxwwwwxwxxvxxxwwxfxxwxfffwwVuwxxwgwwwwwxwxwwxxwgwxwwxxxxwwxwwxfvvwwxwgggVwwxwxwwwgwxxxwxwxxxvggwwwwvvwwxwvvwxfwvvwxwxxwxxxxwwwwwwvxwwxwxgwhvwxwvxwwvwxxwxxxwwwwxxxwxwxxwwwxfwwxwxwvwxwxwwxwwxwxxwxvWvgwwwfwgwxwwvxxwxxxhxxwwxxxwxxxxwxxwgxvxfwwwwwwwxxxxxwwwywhwwwxxwwxxxxwwxxxwwwgxxwwxwwxxxwxxwxxwxwxwhvwxwwxxwwxxxwwxxwwxvwxgxxuWWwFvvvWwwevfwgwwwwgvvwwgvwwvvwvgwvfgvwgfvwvVwwvvgwwwxwwwwWvvwffewwvggvwvugWwwwwfgwxxwxufwgwuwgwwwwwwwwwvwwwwwwxwhggwfwvwvguvfvwWvegvwwgvvxwvwvwwvgwvfufwgwgwwwgvvwxvWwvvwwwwgwfvweeuwuvgwvvgvwwwwwhwwwwgvvvwwfvwuwvWvuvvvxwwwvgxwgwwwgggwwWvwgwgxgfgwxwGgfwwxwgwwvvwvgwxVggwwwwwgvvxgfgwwwgwfxwwwwwggwwgwgwwwwwxvwwxwxwwwxgxwwvwwxxgwwwwxwWxwwwxwxgghxWxvwwvgggwwgWwwwwwgwgvgwwgxwwhhwwwwewxvhwwvwwxxwxwgwgxwgWgwvwxwwwwwwghwwwvwwvwfwvwxxwxvxwwwgwwggwwxxvvwxwvwwvgwgwgwwgwvwwwxwvxwhxxwxwwxxwwwwxwxwwxxwxvwwwwwvvwwvvwxwvwwwxwwwxwxwxwwxxxwwwwwwxwvgvvwwwgvwgwwwwvwwgwxwwwwxwwwhwxwwxhwxwwwwwwxwxwwvwwwwvwhxwwxwwwxwwwxwwwwwwgxxwwxwWwgvvxWgxfxwvwxxwwwwxxxxwxhxwwxxxxhxxwxxwxxhwwwxwwgwwvwwxxwxwwxxxxhwxwxxwwxwxwwxwhxxhxwxhxwwxvwwxwwwwwwwxwwwxxvwwwgwxwwwwwxwxwXxwxxxxwwxxxxxwwxwwwxxwwxvwhwwvxwxxxwwxxxwxxxwwxxvgxxgwvwwwwwggffwvwwgfgwgfvgwxwwwgwvvvxwvvhggwggxgvwxwwgxwxgVwvfwxgvvxwwfgxxvvwxwhwwvwgwwxgwvwhwxwxwwwxxxxwxwwwwWgvvwvfwfwwgvfggfgwxgwxxxvwwgxwwwgwwwhwxwwxwwwgvfwwxvwwfwwwwwgwwvhfwvwxxvwxwxxggxwwwxwvwwggfxvggevvwgwWgwhwwvwxXgvxwwvggwwgvxwxwxxxwhwxvxhxxxgwwghhvvwWwwwxwhhwxxwgvxxxxwwxgwxxwxxxwxwxxwxxhWgvwgWwwwgwxxwwwwgxxwfwxxwwwxxwxxxxxxxwhvwwxgggwwwgxwwwwwwwxxwwxwxwwxwxxhwwxwxxxwxfxgwwwxwxwwwggfgwxwwwxwgwxwxxxxwgwwwwwwxwxxhwxxvxwxwxxwwgwwwwwwxxwxwxwwwxwxxxxxxxwwwwxwwwwxxxxwxxxwwwxwghwfwhwxwxwxxwwwwwxxxhxxwwxxwhwxxxwxxxgxxxxwwxxwxxxxwxxxxxxwxwwxxxwxxxwwxxxxxxxxxwwwwxxhxxxwxxwxxxxxwwxwwxxxxxxxwxxxxxxwvwxxwwwwwwwwwxwwwwwwwxwwvwwxwwwwgwwwwwwwwvvwwwwwxwxwxwfvwxgwwxwvwvwxwwwwxwwggwvxwwxxwwxwwwwwwwwgvwwgwwwwgvwwwwwwwwxxggwgwwwwwwfwxwwwwwxwxxxgwwvvwwxwwxwwvvwxwwwwwwgwwwwxwwwwwwwwxwwwwwwwgvwxgwwwwvwwxwwwxwxgwfwvwwxwggwxwxwwwwxwxxwwwvxxxwxhxxxxxwwwwgwwwxxxxwxxxxwxggwwxxxwwxwwwwwxxwwwwfwwxwxwxxxwwxxwwwgxxxxwxxwwwwwwxwwxxwwxwxxxwwxxwwxxxxxxwwxwxwxxwxxxxwwwxwwwxxxwxxxxxwwxxxxwxwwwwxwwxxwxxwwxyxxxxxxxwxxxxxxxwwxxxxxxxxxxwxxxxxxxxxxxxwxxxxwwxwxxxxwwVvwvWwwwugvfgwwfwwvfvwfvwfgwwvfwwwwwfvvwvVvweevvVuvwvgwwwwwfvvwwfvwvwvvwwwvvwwuvwgwffwwvvggwvwwvwwwfwwwwwwwgwwggvvggffvgfwevvwvVvveevuvvwfxwwwwfwweefwfvvxwxfuvwwvwgwwwwxgwwvvggwvwvvvxwuvwwvwwfwwwwxwvfwwwwwwwwwxwvwxwwwvwwvefwwwgvwgwwwvwwwVwxwgwwwwgvwvwgwwfwvgfwgvxwgwwwWewwgvwxwxwwwxgvhgwwwwxxwxggxvxwgvwwWgwwwxwxgwwwwxwwxxwxvwgwwwgwwxxwxwwwwwfwwwwxxwwwwwwxwwvxwxwxxggxwwwxxxxxxwwwwwwxwxxwwwwxwxwwxxwwxwwxwxwwwwgwwvwwwgwwxgwwvwwwwwwxxwxvvwwxwxxwwxxxxxwxwwwwwwxwwxxxwxwwwxxxxxxwwwgwwxwwwwhwwwwxxxwwxwxxwwxwwwxwxwwwwxwggxxxwwwwwwvxwwxwvfwvxxxvvxwwxxxxwvxxxxxxxxwxxwxwxxxxwxwwxxxxwxwxxxxxwxhxxwxxxwwxwxxwxxxxxxwwxwxwwwxxxwwxxxxxwgxwxxxwxxxxwwwwxxxfwwvWwwxfvvxwwgggghwfgwgVwgvgwgwwxvxwwwwxfxvWgvwwwwvvwwWwgwwwwgwwwwwwgwwvxwxwwvfwwwwwgwfggwggwvwxwgfggxhhwxxxxxwwwxvwgwwvxfWfwwwgfwvwxwgwvvggwwwfwxwxxwvvwwhgwhwxxwxggvgwxgwwwwwvvvwwwwwwwwwwwwwwggwwwxxwwwwwwwvwxwwwwxxgwxwgwwwwgggvgvWggWxWwgxwwwwwwwwwxwxwxwwWwgwWwwwxgwxxwgwwxxxwgxwwwwxxwvWwxxxxhxxxwwwwwwxxwwxwwwwvVwghxgxgwxwhwwwgwwxwwwxxxwgwWwgwvwwwwgwwwwwxxhwgxwwwwwwwwwgwgvwwgwwwxwxwxwwwwwWwwxxhwwwwhwwwhwwhxwwxxgxwxwwwxxgwxxgwwxwggvwwwwwxxwwxxxwwwwxxwxxwwwwxxfvvwxxxwhgwwwxxwxvvwxxxxxwxxxwxhwxwwwwxwxxxxgxxxwxxwxwwxwxxxxxwxwwwxwwxxwwxwvwwwwwwwxwwxxwxhgwxwwxxggwgxhwxxxxwxwxxxxxwxxxxxxxxwwxxfxwwwxxxwwxghwwwxhgwxxxwxwwxxxxwxwhvwwwhhwwxvxgghxwgwxwwxxwwggwxxxxxxxxxgxxwxxxxxwxwwwwxxxwxwwxwvwxwwxxwxxwxxevwfwgwgwwvgwfwgwwwvgwwwwfuvhWwgwvgfxwwwxwwwgwevgxgwwwvwwfwvwwgewxgwgwwwwxwwwwvwgwwwwxwwwvgwWgwwxgxWxvwwwwhxxwhggwwegvwfwwgvwvggvUvfwfvwxwwgvfvfvgggfwfwwgfgwwwwXgxwwgwwwwwvvwvfwwfvwgwvwwwgwxwfwwvwwwfwwwxwwxwwwwwwvxwwxgwwwxwgwwWvwwxwfvwwwwgwxwhwwwwwvgwwWwfwwgwxwggghwwwvxxgxwxwgwxwwwgwwwwwxgwxxwwxxwxwwwwgwfXwwxxxWwwwxhhwxhhwgvvgwwwgvwvxwwfwvxWxfwwwxwgwgwvghxwwxwwwvgvXwgwwwxwwwgwvwgxwwwwwwwxwxwwwxwghwxwxwxxxxxwxxhvxwgwwwxwxwgxxxwvvgxxwxxxwvwxgwwxhwwxwxvgwfvwwwwwwwwwxwwwvwwxwxwxxxxxhxxxxwwwgxvgwwxwxxwwwvwxwxwwxxxgwwwwwwxxwwwxxwxxgvvxgxwxwxxwhwwxxwwxxxxwxwxxxxfwXwwwwgvxwgvvxgxwwxxwwwwwxwxwwxxxxhwwxwwwhwwvwxxwwxxxxxxxhwxgwxvwhwgwwwxxxwwxwwgWvxwxxxwwxxgxxwxxxxxxwxxwxwfwxxxxxxxwvxhvxxxxwxwwxwxwwxwwhwwxwegVwgwxgwwvgvVvugwwwvwvgwwwgvwwggvwfuwwwwwuggwgwvxfvuwvwwWvvwegfvwwwvwvgvwwxxgwvwwwwgvgwvwwwwfwwwwggfvwvwwwgwxxwgwwwwwwwwfwwvWvwvvxfvfhvgvwufuwgvwgvwvwwfVvugvwxvvwgvwwfvvgvwwvwwwwxevvwwwwwfvvwgwvvufvwgvuwWwwwvwfwwvwwvuwwwwwwxwgwvgwwgxwggwwwWWfvwwxxggwWvxvwwgwvwwxhvwxwgwwwgwwwgwgwwwxxwwwwgxwgggxgwgwxgwwwwwwwwwxwXxfgxwgxxwwxfxfwgggfwwxfvwwxwxgwfxwwwhwwwwwhggwvgxwxwwwxxxwwvhwwwwwxwxxxxwwwvwvvxwwwwgwwwvxxwxwwhwwxxgwwxwvgxwxwwgwwxwxwwwwwwwwxwwwxwgxxxxwggxwwwxxwxvgwfwxwxgwxgwxwvwxwwwwwwwvwwwxwwwwxwwvfxxvvxxwxxxwwwwwfwwxxxwgwwxwwxwwxxwwwwwwwwwxwvxxxxwwxxxwwwxxxwwwwhvwwxxwWwwwhwgwxxwgvvxwxxxxxwwwxxxxwwxwwwwhwxxxWwwgxhvxwxxwxxgxxxwxwxwxxxwxwxwvxxxwhxwwwgxwvxwxxwxxwxwhxvxxxgwxwxxxxxxwxwwgxxxgwwwxxwxwwxxxxwwvxwhwwxhvxvgfwxwxXvggwwwwgwwwxwwvggwffwwgwgwwwUfewfwwwxhwvfxwgxhwwwxxxfwxxxwwxwxwwxwxxxgwwhwxxxwwwwwgwvxwhwwxwwvxgUVfwgxwwwxwxwxfwwfvwwUuvhxwwwwwxwxwxvwwgvwwwhwxvxwwxhxhwwwwwwfwwwgwwwvwwxxxxxvxwwxwwwxwxwxwwwgfwwxggwwwhwwwwxxxwwwwhwxwwwwhwxxgwwhgwwwxxwxxxXvgwwwwwwxxxxfwvxxxxxxxwhxxxxxxgxwwwxggxvwxwxxxxwwhhxvwwwwwwwwxwxxxxwxhvwxvxwwxfvwxhwwwwwwxhhwhxwxxfvwxxwxwwwhxxwwxwwwxwvvxxwxxwxxwwwxxwxxhwwwwxwwwhwwffwwwwwxxxxwxghxwxxxhxvwxwwxwxxxwxxxxxxwxwwwxxwwwxxwwxxwwxwwwxwxxxxxxxxwwxxwwxxxxvxwxwxwwwwxxxxxxxxhfhxxgxxxwwwxwwxxxxxwgwwxxxwwwxxxwxxxxxxyhxxwhxwxxxxxwxxxxwxxxxxwxxxxxxxxwxxxwxxxwxwxxuhhwgwvgxwwgeWgwwwwwgwwwfhxghWvgwvxwwwgvwwWgwxwxwwwwgwuggwvgwwwwgxxxvxxvvwgwwwxgwxwfwwxxxvxxxWvwWeWvwwgwwwvwwVgxwxwxxxvWwvhgwxxxvhxwxxvvgwwvxwwxwwwwvwwxxxxxxxwfvuhvwxhwxxwwxxxWuggfVfeWvfwVwvgwwwwhwxgvWwvvgwgwgwhwwxwxwwgwgWwxxwxgwfwwwwfwvwvgwxxxxxxvxxxwvwwwWgghwgwwhwxxxfxhxxwhxyxfeWgwWwgwfwwwxwwwxgvgwxwhhwxwxwxxxhwxwwxgwwvwvgwwxxwwxwwxhwxvwgwwwxhwxwwxxxwxxxxxxXvhxwxxwhXwxgxxxwxwxxxwvwwgwwxgwxxxwwhwgwwgwxxxvxxxxxwwwwwwwxxhxxxxxxxwwxwxxxxxxwxxvxxxwxxxwxwxxwxwwwvhwhwwxxxwvggwVwxwwwwwXwxwXwxxxwxvxxwxwxxgxxwwvwgwwwxwwxxxxhgxxwwxxwhxxxhwxxxxxwxwxwxxwxxwxxxxwxxxxxxhwwwyxwwxwxwwhxwxwxxgXgwxhxUwfwgvVwfwfgefVwfvwwgwvugfwwfgUvvgvfvwgwvgvvwfwvvwWuxwxwwgfwggfwfvVwgffgwfgwhwggvfwwwgwvwgwgwwgfuvwvwfwvgwwwwwwwwfvfgegewvwffwvwuvfwwvfvwwvwvwfvvvwvwvwfwxwgwxuuvwgwvwxwxgwfguvvfwwwfwwfwggvvwwgvwwwwvgwwgvfuvvgwwxxwwvwwwggwwwwxfvvwgxgvvwfwgfgwvwgfwgvgfgwwwwgvwvwwwggfwwgwxwwvwwwvhxvwgwgwwwvgfgwwwwvgvhwhgwwhwwxwxxfhgwwwwwwwwwxwwgwvvgxxggfgxwXwxwfgvwwggwwwxwwgwvwwwwwgxfgwwwxwwwgwwwwgwwvwxwvwxxxwxxwwfwgvxvxwwwxwwwwxhwvwxxvwwwxgxwwxgwxgwwxXgwxwwwwxwvgwwgvvwwvvvgfwwwwwwwwwxvwwvvvwxvwxxxxwwxxxwwwwvwevvgvfwwgfxwwwxwvxxwwvwwwwwwhxxwxwwwxxwxWwwvwhgvxwwvxwwwwwgwxgwwwwxwxwvfxwxwxxwwwxwwwwgxgxwvwxwwxxxwxxwwgxwwfxwwwvwwwwwvwxxvguvwvwwwgvfwwvwwwxxwVvwwxwwvwxxwggxxxxwxxwxgwxwwwwggwwwxwxwgxwwgvwwwWgwwxxXgwxgxgwwwxwgwxxgxwxXwwwfwgWgWvwxhxgxwwxxwgwwwxvWwwwwwxwwwwwxwwhwwwwxxwhgwwwxxxwwwwwxhgwwwxwwxwxvwwwxgvguxwxxxufwwWvgfwwxwgggwvxwgWwvwwwwwgwgwwgxxwxgwwwhgwgwvwgwxvxxwgwwVVwvwgwgvewwgfwvwghwwxwwgwggwwfwvxwwwwgvvxxxggvxxwwwwWvvvuVVwfwvfwvwvfVwvfvfvwxwexfgwuvvvwxfwwxWgwxhvwwwwwxxxgwwwVwewwwfwvggwgwvwwwWwvwwgwvvgvvvuwwvwwxwwwxwwwxewwfwgwwwfgVwwggwhvwwVVwhwfwwwfhxghwgwwgxfwhwwxwwWwwgwxwxwvwwxwwggwvwwxhwwwwwgwvgwwxwxwwhxwgwwxwxwxwxxxwxxwhwwwxxxxwfVVwwgfwwwxwxxgwgwxwgWvxgwvwwgwfxwxvwwxwxxwxwwwgxwxwgwwgwvwgxvgvwfxwwvxwhwwwgvgwwwwwwxwwfwvxxxwxwxwwwwvxvvwwvgwwxwwxwwwwwxwxwxxxwxwwxxgwwwwxwxxwwwwwwxwwxxwwgwxxwxxxwwxxwxxxwxxwhwxxvwwwwxwwwwgfxwwwwWxxxgwwwwwxwxxhxxwwXxwxgwxvxwwxwxwgwxwwwwwxxhwxxwwxhwwwxwwxhwxxxwwwxwwvwwwwxwwwwhwxxxxwwxwxxwxhxwxxxwxwxgxxwxgwxxxxwxwxwwwwxxxxxwxxxwwvxhxxwxxggvxhxxwxxwvwxwxwwxvxxwwwxwxwwxxxxwwhwwxwxxxxxxhxxgxxwhxwwxgxxgxwwxwxxxxwxxxwwwwxvgggvgwwwwgwwwwwfvxwgvwvfgWuwefwggwwwffwvvvvwgvxhwxgvvxvwfvwvwvwwwwgwgvwwxfgvfvwfvvvwwwvwgvvwwwwwwxgvvvvfwvgvfwhwwwwwwfgvwvwfwwwwvwwvgvfvefwuwwwgvuwwwwgugwwwwgwwvvvffwwwwwwxwwfwwvvWwgwwxvweuvwvwvwwvwwffwveewvwwwwwvvvwwWuwwwgvfwwwvwgwgvwwwwxwwgvggwgwgwgwWfwxxwfwwggfggwxwwhwwwvwwhvwwgwxxvvxwwwxwgwXhuwvfvfwffvxwggwwwxvwwghvxwfgxwgwggwgwwvwxxwxxwvwgwvwwwwxxwxgwvwwxwwvxxwwxwxhvwwgggwgwgwwwwgwgvgwgvxwxwxvwhxvxfwwwvwgwwfvgwwxwwwgwwhvxxvvhxwwwwwxhwwgwxxxgwvxxwxwhwvwxxwwwxwxvwxwxwxxwxwwwwwwgxxwwwwwwwwwwwwxxxxwwxwxwwwvxwwwwvwvwwwwwwwwwfwxxwxwwxxwwwwwxwvwwwvxwvgwwwwxhwgwwgwxhxxxhwxwwxwxxxxwxxwxwwwxxwwxwwwwwxxxxxhhwxxxggwwwhhhgwxwwgwxhgwxxxwwgwxwxxxgxgwxwxgwwxxwwwxxxxxwwxxwxwxxwxxxwwxxwgvwxxvwxwwwwwwuwwgvwwwwwvwwuvwgvvwwwwvwwwwwwwwwvwgwxvfgwuvwwwvxwwwwvwwwWvxxwxwfvxwwwwxwxfwwgwwwwwvxxgfvwgwwwwwwgwVgxgfxwwfffvwvfUwwhxxvgvwwwwwwgvghvwxxxgwwwwvwwwvgwwvwxxvwgvwwxwwxwwwwwvwwwgwwwwxxgWwwwwxwwxwxgxwvggwwwwwgwgxVfgwgWwvvwgxwxwwwxwwxwhxwwwwwxwwxxwwxwguwwXwwxwxwxgvgvxxxwxhgWwwwwwwxxxfgggwwxwxwwxwgwwwwwxxwwwwwxwwxwwwVxxwxxwvgvwxwwxxwwwxxwwwxwwwhwxxwwxwwwgxxxxwxxxwxxxxxwxwwxwwwwxxxwwwhxxwwgwwwwxxwxxxxxwxwxwwwxwwxxwxxxwwhwwxwwwwxxxwwxxxwxxxxwwxhxxwxwwxxxxxxxxvwxxxwxxxwxwwxxxxwxxwhxvxxhvxwxxxxxxxwwxxwwwxxxwwxwxxxwwvwhxvwwgwxwwgguwwgUedgxwxvxwhvhwwwxwwgeefxwxwwxxxwwwwwvwxwwgvgxwwvwwxgwxwgwxxwwwxgwxxgxxwxwwhwxwwwxffwwxwggUdegwwxuxwwwgwwfwwxxwxgvwwwhwxwwwwwvwwwvvxwwgvwwwgwvxxwwwwwwxxgwwwwwxxwgwwwxxwxwgwxvgvwghwwwwxwwxwwwxwfwwxwwxxxXwhxxwxwxxwwwxhvgwwwwfvuxgwwxwxxxgxxxvhwwvvwhwxxxxxwwxwwxhxwwwwgwwwfwwxwxwwwxxwwxxxxwxxwxwwxwwwwxwxxwfuvxwwwxxwwwxxwwxwwxxwwxxxwgxxxwwwxwwwvxwweefxxxwxwwwyxxwwwxwwxxwwxwxwxwwwwwxxxxwwxxwxxxwxwwxwxxxwxxxwxxxxxxwxxxxxwwxxxxxxxxwwwxwwwwxxwxxwwxxxxxxxxxwwxwxxhxxxxwxhwvvwxxxxwxxxxxxxxxxxxxxxxwxWxxxxxwxxxxxxxxxxxhxwxxxxxxxxxyxxxxwwxxxxxwgvxwwwwxxvxwxwwwwwxfvvwffgwwwwxggwgwgwwwhxwhwwgwfxxwwwwwwwxgwvxwxgxvwwxxxfvvwwxwwfvvwvgfwwwwvgghwgwgwvwwxxgvgvwhgxwwvwxwwwxwwgvwwwwxwwxfvvwxvgwxxwwwvxxwxwwwhvxgffwxwxwxwggxwgxwxwxwxfgfgwfgwgwxwhvwwxxxxwxhwxwxwwwwgxwxwwwwxyxxwxhgwwvgvwxwhwhxhgxxxfvfgwfgwxxwvwxvwwxxxxwhxwxxxxxhxwxxwwwvwxwwwwxwxhgxwxvwwxxxxwwxxwwxwxwxvxxwwxxxgwwwwhxwwwxygvwxxxwxxgvwxwxxwxxxwxxxxwwxwxxgxhxwxgxwvwxxxhxxwwgwxxxxxxxxxxwwwxwxhwxywwxxxwyxgwgxwxxhxwwwwwxxhxxwwxwxwhgxxxxxxxhxxxwgxgxxxxxxwxxxwxxxxxxxhxxxxxxwxxxxxuggwgwhxxwwfggwvwgeWgwwwwwgwgwwvvgVvUvufugwvvvwwffwgwgxwwvwwwwwwwwxwwwwxxxwvwvuwwvxhwfvxwwxwgxwWwwweUwwwvwvwvvwgvxwwvwwvwvwUufwvwggwvvxhwwvxghuwfvvwwvwxwvwxhwwwwwwwwgvvwwwvwwgwxgguwvwwvwxwxgvhwggfgwwwwwvwwxwgxgwxxxwwvwwvwwwwwwwvwxfvwwwxwwwwggxwhxhuWfwvgwxxxxwwwxxwxxxvwwwwhwxwgwXwwwgxxhwXxwvxxxvfwgwwwwxwhvwwwwwwxwxwwwwwwwhxwxwxxwhgxgxxxxxgwwwxxxxfwwxwxxwwxwwwxxvxxwwwhwwfwwwwxxxxvxxxxxfwwwwwwxvvwvwwxxvwffwwwxxxxxwxwxvwwhvxxxxxxwxwwwxwxxxxwwwxwxxxxxxxgxxxxxwxxwxxwxwwwwhwxwxxxgwwxwhgvwwwxwxxxwwxwwwxxwxwwwxxxxvwxxxxxxxwxxwwxxwxxxwxwxxhwxwxwxxxxwxwxxwwwxxxxwxxxxxxxxvxxxxwxgxhwxxxhxwwwgxwwwfgxvwggfvwwwfVVwxvwggvvgvgwwvvfwDfewwvvwwwgwwwggfhwwwwvwwwwfwvggwwwwgwwwwwxfwxwwwxfwwxwgxxxwxxgwgwggvvwwvwvwwwvDefgwwhwwvwhVewvvwwwwxwwgvfwvwvxxwwvwvwwfwvwwxxwvxfwwwgwvgxvwwwvgwvwgwwwwwwwwxwxwwwxwxwwwwwgwxgvxgggvwggvwwwwxxvwgxwwxgwxvwhxxfwwwxwgwwxxxgxxhvgwwxvggxwwxwhwXwxxwhwgUwvxxxwxxxxxxxwwgwvggxhwwxxwxgxwwgwwxwwfwwwgwvgwxxwgwwwxxwwwwxwwwxgxhxwxUvwxxxxxwxwwwxwwwwwwxxxwxxxxwxxxxxgvwhwxwwwwxwwwwwwfVVwwxwxxxwwxxwwxxwxxwwxwwwwwwwwwxxwwhxwxxxxwwxwgxwwxwxwwxwwxgwxxwwxwxxxwxxghwxxwhgwxwwxxxgwwwwxxxxxxxxxwxxxxxxxxxwxxxxhwwxwxwxxxwyxxxfwxxwwxxwwggxxwxxxwxxghxxxwxxxxxxwwxwhwxxxxxfwxxxxxwwwhxwxwxxwxxwwxxxxhxwxxxxwxxxwwxwxwxwvwwfwwwxwfxwvgxxwwxxfwwhwxvwwwwxxgwxxuvvxWwfgxwwwwggwvwxxxxwfwvwwvwwxxwwwxxfvvwvgwwwwwxwxvwvwwwwwxxwffwvwwwwxgwwwxfgffwfwvwfwfwwwxxwwwwgwwvwvwwwxwwwwwxwxwWvvgwvvgwwxWfwwxxxwwwxxfgwwwwxxxwvwwwxxfVewwxxghhwxxwxxvxxxxxxxxwxwxxhxwxhwxwxwffvwwgfwxwffwwxwwwwfxgwxwvwwwxwwxvwwwwwwwwwwwxwgvxxxxwxxxffwwwwwwxwwwwwwwwwwwxxxwxxxxwxwxwwwxwwxwxxwwwwwwwwwwwwwxwvwfwxwxwwwxxhxwvgxwwwwwwwwxwwxxwvwvwwxxxwxwwxwwwwwwwwxwwwwwxwgfwxwwwxwwhxxwxxwwwhxwwxxwxwhxxxgvxwxxxwxxxwwvxxxvwwxxxwxxxwxwxxwwxxxxwwwwxwwwwwwweffxvvfUvvwfffggfvxwwwfffgwffwwwwwwgwgwffwwvwwvgfwwwvwwxWwfwffvwgffvvwwwvwwwwwwwvwwxwvwwffvwfvWwvgwvwwwxwwgxwxxgvfffwvfgwfffwwwwvvvfwwwwwwwwgwwwwxwwvvwwwwwxwwvwgwwwwwwwvfvvvwwwwvxwwvwwwwwwvvwwwwwxwwgwwwwwwwfwwwwwufwwvwwwgffvgwwfgfwwwwwgwwwgwwwffwwgwWgxwgfwhwvwxggwwgxgwffwwwwfWWfwxwxxwwwxvgxwwxhhwwwwwwwwwwxvwxwwwxwgggxwwywwxvgfwwwwwvwxwgwvwwggwwgwwwwwxwwwfwwxwghwwwwhwwwhwxwxxwxwwwwxwwwwwwwwwwxwxvxwwxxggwxxwwgxwwwvvwwfvwffvgwwgfwwwwwggwxffvwwwwxxgxxxwwwvffwvwwwvwgxvxwwwgwhwvwxxwxgvvwwxxwwwxhwxwhxvxwwwwwwxwxwwwwwxwxxxwxxxxxwwwxgwwwwwgwxwwwxwxxwxwghxxwxwwwxvffwwwwggwxgwwgwwwwvhxghxxxwxwwwxhwxgggwhxwxwxxxhgxfwwwhwxhwhxwhxwxhhwxxhwxxxwxhhwhwwhhwwhwwffwwwvxxwxgwwwwxwwwwxxxxhgxwwxxwwwxxwwxwxxxwxxwhxxxxxwwhxwwxxvwxwvxwwwwuvwwfhhffwwwgwwHeVfwwwwffwwggfgvwwwwwgwgwwwwwwxxvww7ffwwwfwgxhwwxwgwwwwxxwxwwxfwxwwxxwxwxwwwwwwxwfhhfwwwwgvwwwwxwwwvvwwwwxuwwxxwwfwwwwfwwwwwwfwwwfwgxwwwdwgxwwwgwvxuxfwwwwxgwwwwxvwxwgwwxxxxgwwhwwwxwwwww7ffgwwfgwxwxwwxxwxwxwwwfxwwwwwwwxxHeVxwgwwvvwgwvxgwwiXggwxwxxwwwwxxxxxwxxxxxwxxwxwwfwwwwwwwwwxuxfgwggwxdvwxfwwwwgxwxvwwxxxwwwxwgwwffwxxwxuwwfwwwxwxwxxwfwwwvgwwwwhwwwhxwwwwwggfwwxxxwxgwwxxwwwwgxwwwwwwwwwwwhwgvwwfwxwwfwwwwxxxxwxvwhwfwxwxvwwxfxhwxxxwwwxxwwxwxwxxwwxwwwwxhxxwxxwxxwxxwwwwxwwvwxwwwxxxxwwvwwxxwxxxxwwxxgwgwwxwfwwwgfxwxxxwwwhwxwxxxxxfwxfhxwgwwxwwwwwwwwwxwwwwxxwxwxwwwhfxhwwxxwxwfhxwivgwwwwwwwwwwwxxwwxgwwwxxxxwgwwxwwxxxxxwxwwxwwxxwwwwwxwxxwwwwxxvugwwvwwvvvwxgvgVvwwwgfwgggwWwgwvgvwvwwwwwwhwvwxwgvwxVvwgevwgfgwwvwggvgwwwgwwwxwvwwwvvgfwwxwgwwwwgvwgxxxxVvwwvgvvvvwgwwuVWvwfvgfvwgwwhvvvwfwvxwwvwwxgwwwwfwwwwwwugfwvffvgfvwwgvwwwwvwgwwgwxwwVfvvgfvgwwwxxxxfvwwxvwevwwwvwwgggwgwxgewvwxvwwvvwwwwgvggvfwwwhwhwwxxxgvvgggxWwxxwwxwwxggwhwwwWxgxwhwwhfxxhwxxxxwwvwxWfwWxwxwxwwxhwxxxxxxvggfvvwggwwxwgeewgfwfwwwwhwwfwvxwvwwxfvwwwwwwwwwvwwxvwwwgvwwwxxgwwxgwfwxxwxvxwxVwvxwwgwwwwwwwxwwwwxwwwwwwwwgwwwwwwwxxxxwxwxxxwwwwwwwwxvwwwwvwwxxxgxxxxxwwwxwwwxwwxwxgxhxxwwwwxxwxwwxwwxwxghwwhxxhwwwxxwwxxwxwxwvxwhwwxwwxxxwwxwhxvvwwxwwwwwgwvwxwwxhwwwxxwxwwwxwxxwxxwwwwwxxwwwxwwxwxxxxwgxxxxxxxwxwwwxgwxxhwxgxhxwxxwwwwxxxvxwwwvwwxwxwwwxwwhxxxxxxxwwwwwxxxxxxhgwxwwwwxxwxxwhwvwvwxxwwxxxuwwwgwvwwwwvvvwwgwwwVegvwwwwwwgvvwwvwwwfgwwegvwwwwxgwwwwuvwgfewwwwhvwgwwwwgwwvWwgwxfwwwwwwwwwwwwwgvgxwxwuwwwvgvwgvfvwdvwweevwVvwvvvwxwwwuvgwwwwvwwwwwguwwxwvhuvwvweVvwfgwvewwfvfuwwwvtwfwwxvxwwwwwwvxwxhgwwwgwfxwwvwvxgwwwgevwwwwwvuWgwwxwwfwwwxwwgwegvwxwwgvxxwwwwxwwwwxwxwwvwwvvwgwvWgxwvwwxwhhxxxwgXhwxwxwxxwvwwxWwvxVwvwwxeffwwwvvegwwvvxwwgwwhVwwvxwwuwwwwhhwgxwwvvwwvwwwwwwxwfwfxwwuvgxvgvvxhwwxwwwvxvwwhwwwxhxvwwhvwwwwwwwwxwvwwwwwwwwxhgwvxxwwwwwwwwwwwxxwhwxvxxwxxvxwxxxwwvwgwwwwxwwwwwwwwwwwwhxxxxwwWxwwwwwwxwwwwxvxxwwwxxwxwwwxxwwwwwxwwwwxwwvgxxgwwwxxxxxwwwxxgwxxxfxwxxxwwxxxxxxxxxxwwvxxxwxxxxhhxxxwwwwhgxxwwxwwwwwxwwwxwwxwwwxxxwgxwhgwwxxwwwwwxxwxxwxwwxxhwwwwxwxxxwwwxwxuwwgwfwvvvwwwEevwwWvgfvwwwfwggfwxwxwvfgwwgwwguvxwxhGvvwgvVwWvwwwgwwXfwgGwfwwxwwwhvxfwwwxwvvxwwxxwgwwwxwxwxhgVvwwgwwwgwwvffwggwwvfvwwwwwwwwwwgvwxwvxwvgfwwxxxvgvwwxvwwxfwwggvgwwxwwwgwwwuwwwwwxwwwwwxwwwweuvwvgfwwxggvVvwgXVvwwwxxgwwfgwwwvfwxgggxxxvxxwxWvwhwvwxwxwxwVFWVxxhxwxxxwwfwhxxxwwvhxwwwwhxhhgwhXvxwvgvwgwgxwxgewvwwwvwvwwwggwwvwwgxgwxvwwwghhhxwxxgwwgwwxxwwxxwfwwxxxgwgfwvwwxxxhxxgwgwwwwxxwvxgugxwwvwwwwwwwvwwxwxgwwvxxxxwxxwxxxxwwuwwwxwwwwwwwxwhwxxxwwwxxxxxxwxxxwwgxwhwxwvgwwxxxwxxgwgwxxwxxwxxxwxwgxxwxhwwxxwxwxxwwxhxxwwwwwxxwxwgvwwfwwwxwwxxxgwhwxxxxgxxxwxwhxhxxxxxxxwhwxxhxxhxywwxxxgxvxwwhxxxxxxwxwwgXwhwwwxwvwwxwwwxxwwwwxwxxxxwvxxwwwwwwwxxxwxwwwxwgxxxwwwgxghxwwxwxgxvgxhwxwwxgwxxwfwvgwvwwwxwwgvwwwxwwxfwwxwwxwuwwWwfwwwwggwguvwhwvwwwfwvWvvwvwwgwvuwhgwewwwwwwgvfvgwwwwwwwwwxvhwwfvvwfgfwvvwwwwwfvwfwwwVvwxwwwxfvfewfwwwwwwgvxwggxhwwwfwuvvgfvvwxgwwwwwwhvWwwUwwvvvwxwxgwwwxwwwxfgwwuwWvvwggfvwxgfvwgwwfwwwgwgVgvwwgwwxwwwwhfwghwxwwxxxxxwgvvxwhhwwwxwhwxwwwxxgwwfxxwhwvxwhwxxxwxxxxxxxwfgfwfvfwfvwwwgxUexWwwwvwvwgxwfwwxwwxxxxwxvuwxXgwwfwwwhwwwgwwhwhwxwvwfwwxggfwwwwwxwhgxwxgfwwxwwwxxfwxwwwwwxwwwwwxgwxwwwxxwwwxwxxxwwxvxhwwxgwgxxxxwxwxwwxwwwxgxxwwvwwwxwwwwwxwxxxhwwxxwxxwxxwwgwxxvwwxwwxxxvxwwwxxxxwxxxwxxxgwwwwwgwggwxxxwwxwwxwxhwxxxxwwwxxwxwxwxwxxxxxxxxwwwxxgwwxxwwwwxhwwwxxxxwvgwwwxwxwhxxwwxwwwhxwxwwwxwhxxwwxxxxwwxwxwxwxxxwxtwxxwwwwwwXwwwwwwwWwwwwwwXwXeVvwwWgwvwwwwwwxwwwwxwwGvfwggwwwxxvgwxhxwWwvwxwwwwgwxhwwxwwwwwwvwwwwwgWvwwxvwxxwwwwwvwwwwwwwxwwxwWvvwwwxwwwxwwvgwxgwuxwxxwvwxvwxvwwgwwwwwwhxXwfxwgwwwxxwwwwhwHvfwxwwwwwxhwxxxwWeVwxxwwvgxhwgwxxxxxwwxyxxwvgxhxwhxxwxxWwgwwwvwwfwwgwxwwxwwxvwxwvxwxuwwgwwxwwwxwwvghhwxfwwwwwgxwwwxxxxwwwxwwwwwxwwxxwgwwxxwwwxxwwwxwxwxxWwwwwwwvgwxhwwgwxwwwxvxxxxxxxwwvxwwwxwxwwxxwxhwxwwwvvxxwwvxxhwwwxgwxwwWwgwwwxwwwwhwxxxwvxwxwxxgxxxwwvghhwwxghwwxwwxxxxxwxxxwxwxvxxwxxxxwxxxwwvwhwxxxxwvxxxwxgfxgwgwwwgwvvwvwgxwfwxGggwgwwwxwwgwwwfwwwgwgwvxwxwwwwvgggwwwgvxgggxfwwwgwggghwwfGvvfwwxwwwwxwxwwwwxugwgWvwwxxxwwfwwwwvwuwwwggWfwvgwwfwxwxwwvxuxfxvfgvwvwwxvvfxwvwwhwwwwfwgxggvxfwwxvwtfvwGvwvxxwwwvgwwxXwxwwwwwgxwwwgvwwwwwwxvvwwwWwwwwxwFvxxxwgvgwwxxxwggwwwgwxxwwwxgwwxwwxxwxxhgxxwwwwxxwwwWxwwxghwwwwwxhwwhxxxwxvxxhwwxwwxxhwwxwxxxxxxxwxvgwxvwvgvhxgxfvvxwvwwvwwfwgvxwwxvxwwxwuwwwxhguwwxwwwuxwWwxwwwgwvwhgwwwwwwxwxxwxwwwxxXwwxxwxwxwwwwxwwxWfgwwhwxwwwxwxwwwxxxwxwxwwwxwwgwwxwxwWwwxwxxwxwwwxwxxwwhxwwxwxwgxwxwwxxxwxxxxxxxxwgwwwxxwxwxxxwxwwxwwxxwxxxwxxxxxwwxwxxxxxwxwgwwxxxxxxxxxxxxwhxxxxyxxgxwxxxxxxxxxgwhwxxxxxxwxxxxxvxxxwxxxxxwxwhwwxxxxwxxxxwxxxwxxxxxxwxwxxxxxxxxwxxxxxxwxxxxxwwwwwwxxwxwwwtwxwwwwwwwxWwwwwwwwxXwxwwwwWwvvXeVvwwwXwxhwwwwwxxwwwwwwvwXfwwwwhwxxwhwHfgwwwwwxxwhxwxwwwwwgguwwxgwwwgwwwwwwwwwwxwwwxxwwvxwwxwwWvwwwfwgwwwxwwwgwxwxwxgwuwwgvwwwwxwwwxxxwwwwgwvwGfggwgxwwwxwhxwWgwhwgwwwxxxwxwhwxwxxwxWeVwwgwvwvxwwxwxxxxxxxyxvwvxhwxwxhxxxxxhxWgggwgwwwuwxwwwgwxwxwxwwvxgwvwxwxwgxxxxwwvwvfxwwxwwvhxwwxxxwxwwwwxxwwxxxwxxxxwwwgwwxwwxwwxwwxxxxxwwwxwwxxxxWvwwwwwxwwwhxwyxwwxxvxgwxxxxwxwwwwwgwxxwxxwxhxwxxxxwwvwxxxxxxwxwxwwxgxWwwgwgwxwwwhwwgwxxxwxwxvxxxxxxxwxwvwvgxxxhxwxwhwwxwxwxxwxwxxxxxxxxwvwvxxxvxxxwwwwxwxwxxxwxwvxwxxxwxxxxvxwxxxxhgxfvwggwvwxGvvvwwwwwfxvwgwwgwwgvwwwwwwwwwwvwgwxfwwwvvvwxwwgdwuwwvgvwvwgxxwwwwwxwvvvwwvxwwhwwwwwxwwwxvxfwwwgfuwuwwwfwwwggwgwvxwwwvWxgfvfvgwwwhfvxxwgvwwxwwwwvwvxfvvvvvxwwgvwwwgwvxfwvvuwwwvwwvuwwwxxwxxwwvwwgvwggvvxfvGgwgvxvwhwfwwwfwwxwwwWwgvwwwwwwwxWwgxxxxwxwxwwwvwhwwwwuhwwhwxxwwwxxwwxxxwvxwxwwwwxxwxxhxwxwfvwxGvfwfwwvxxvvgGwgvwxwwwggwgwwwwwwxwXwgwgwwwxwwxwuwggwwwxwwwwuwghwwwxwwwwwwxxwxxwwxwwWvfwwwwwwwwwwwhwxxwxwwwwxxxxwvxxwwwxxxxxwxxhxxxxyxxgxxwwxwwxxwgxxwwxxwxwxwxwwgwxxwwxwxwxxxxwxxxxwxxwwwwwWwvwwxxwwxwxxwwxwwxwxxwhwxxwwxwxvwwxxxvwxxxxwxhwxxwxxxwxwxxwwwxxxxwxwwxhwxxxwxxxxwxwxxwxxxxwwxwxxxxwxwwwxwwwxwxfgwgwwwwwwfwwxvvwxwwxwvwwxwwWwwggWwhwwWfwwwwhgwggwwwWwggfwgfvfwwwWggwvwwxgwgxwgVgvfgwxwwxwwwxwgwwhwxxwwxhxxwfvvwwgfwvwgewvffvwfwwwwwwxwwwxffggwxvwwwxxwwVfwwgwwwxgxffvwUefwvwvgwwffvwWwwwwvvxwfwwuwxxhxfwxwwxwgwxwgwwfvwxwWgvgwVwwwWXgwghwwgwxwxwwgfgwwxwwvxhgwgwwxxxwxwxwwxgggxwwwxwxwwgwwfwhhwxxxxhxwxxwwhgxwxwxxxxxwhxxxxwfWwvwwwfvvwuwggvxwwwhvwUwxwvvgwwxwgwxwxxwwxxfxvhxwhwwwwwvwwfwwwfwwwwhwhgvvwxwhwxwvxwwwwwwgxfxxfwxwxwwwwwvwwwxwxxwwwwwwwxxxwxxxghxvwgxwgwxwwwwwxwxwxwwwwwxxwxxwxxwxxxxwwwwwwwxwgwxwxxwxxxxxxhwxxwwxwxxwwwhwwwwvxgwxwxxwwwwxwxhwxxwwxwxvgwxwwxghxxxxxxxxwxxxwwwxxwwxwxxvxxxxwwxwwxxxwwxxxgxxxwxxxwwxxhxxwwwxxxwwxwgwwwwxwxxvwvxxxxwwwxxxxxxxxwxxwxwwxxxxxwwxwxxwxwxwuwwwxwwgvwwwwhvgxvwVfgvwwVuvxggwvwwwgwvfgvwxwwxxhfwvwwwwwxvwxwwhwgwwwxfwwwfuwwwwwwxwwxwhwwwxvewwwwwwwwxwgwVfgvfuwwvvvxxgfgwwxwwxgvwwuvvxfvxwwwfwvvwwxwwxgwvwwwwwgwwwgwwfwwwvxeuwwwxxwwhvgxwVfwgxfwwhwwwwxwwvxufWfwvwwuxgwvwhvwxgwxwhxxfwfwwvgwwwxwwwwxxxxwxxhxvwggwwwhvxwxxxwgxhxwxxxwwwVvwwgvwxvgvuwwgvwwwxhxwxwWvwuwWvxxgwwwfgwwwxfvwwwwvwwvwwwwxwwwwwwxwxxvwvfvgwxwxxwwwhvwxhfxxwwwwwvwgwhwwxwwxwxxwwwxxxxxwxxxxxxxxwxxxwwxxwwgxxxxxwwxwvgxwwfgxxxxxxwwxwxxwxxwwwfgvgwwwwxfwgwwxxvwwxxxxwwxwwxxxxxyxxwwwwxwyxxxxhxgfwwxwwxxxwxwxxxxwxwhwxwxxwxwxxxxxvwxwvwwwwwvwwwwfwxwwwwwwwwvwwwwwfwwWfwuwgwgwwgwwwwwwfvwxvwxwVewwwxwwwxwwgfwwwwwwgwxwwxxgfgwwxxwhwwxvvwvvwwwgvvwxwVvvgvwgwwwwwwwwuwvvwxfvwgwfvwwwwhxwwvfvwwwvwxffwvwwvwvxwxvwwfwwwxxvwwwwvuwxwwxwwwwwggwwwwhxvwhwxvwfwffwwxwxffWWvwxwxxwxwwwwwxwwwxwwxwwwwwxxwwwxwgwfxhwxxhxwgxgxxwwxxwgxwwfwwgwvxhWwufWfwuwgvwvwfwwxvwwxwxxvxxvwvwwfvwxwfwwwwwfwwwxxwxxxgvwwxwwwwwwxxwxwwwxwgwwvwxxxxxwwxxwxwwwwxwwxxwxwxwwwxwxxxxwwxxxwvxwgwxxwwxxxwxxwxgwxxxwxxwxwxxwwwwwxxxxxwxwwhhxwxxwwxwxxwxxwxwwxxyyxwwxxxxwwwxxxwwxxxxxxvwxxwwwwwxwxwxxxwxxxvwxxxxxwwxxxwxwwxxxxwwwwxgwwwvxwwwvxhxxwvwvWvwUfvxwwvwwvwxvgwwwwWvwUfvxwfwgwwwwwxwxwvwwwwwwxhgfwwxvWwhuwxwhwwvwxwwwWxwxfwxxwxxwwxgwvxwwwwxgfgeffwwwwwwvwwfvvxwwvwwwxxxwxwwwwwwvwwwwxfghuwwxvwvvwwwwxwvghwxgwxwwwxvwwhfwvwxWgwwwxwghwwwxwwfwfwwwggwxwxxgghwghgwwwxhwgwwxwUvvggwwvwhxwwxhxxwxwUfvgxhwwxxxxxxxwxhxxhxxwwxxgwwwwwxvxxwwxwxggxwgwwwwxxxgxxvwxgvwxwwwxfggwwxwwwwwxxxwxxwwwwwwwxhwwwhxwxwxgwxxxxxxvwwwwgfggwxhwxxxwwxxxxwwxxwxwwxxwgxxvwxxwwwwvxxwwxxxxwwxxxwxwxwxxxxwxxxwxxwxwwxxwxwvxxwwxhwxgxxxxxxhvxxxxxxhxhxxxxxxfggwwxxhxxxwwyxyxxxhxxwxhxxxxxxxxwwwwgxxxxwxxgxwwxxxwxxhxwxwxxxxxxxxhxxxwxuwwwwwwwwwwwgxwwwwwwwwvwxwUffwwvwwhgvxvxwwgwfvvwgxwxxWgfwgxvwwggwgwwwwwgwwwxxgfwwwwWxvxwvgwxwxwxwwxxwfwwfwggxwwwwwwwvvxwwwwwvwwfwwwvwwwwxxwwwwwgwwwxwwwwvwwwvwwwxwwfwwxgwxwxwwwwwvxwxvxwxwxwgxxufgwgvwwwvwvwwwggwwwwxxxgwfwgvwwxWgwxwwwwxxxwxxwxgvggwwwwgxggxwwxgxxwfWWfwxwxxxxxwxwwhhfwxvwwfwwwwwxwwvxxwvxwwwwwxwvwwxxvxxhwgxwxxwxxwwwwgxwvwwgwwwwwwwxwwwwwxwwxxwxwxxxwwwxwvwwwwxgwwwwwwwxwwwxwxwwxwgfvxxwxwwxwxxxwxxwwvvxxxxwxxxwwwxxxxwwxwwxwxxwwwxwwxxxxgwxwxwxwwwxwxwwxxwwxxxwfvwxwxwxxxwgxwxxxwwvvwwwwxxxxxxxxxxxwwggxwhxxywxxxwxxwyxwxhxhxwhxxwxwwwwvwwwwwwxxwwwwxxwxxgxxxxxxwwxxwwwwwwxxxywxxuwwxvgwwwxxgwwwgwgwgwwwgwwwwwwwwwwwwvwwgvvvfwgwwwwgfvxxgwwWwvwgwwwwxgvwfwgwhwxwwxfwwwwwvvfwhwwwwxwvwxwxxwfvvgwwwwwfvvgwwwvvwfvvxwwwvgvvwwwwwwwgvxgvxwwwwwwwvvgfvfwfvvwxwwvwwxwvwwwwwwwwwfuvvwwwwgvxwwgxwfwxwwwwwvwwxgwgfgwwwhxWgwwwwgxwxwxwwxfwwwwwgfvwxxwwwwxwgxwhxxwwxxwwwxwhxxwxxxhwxxwwxxxxxwwwwxxxwwxxxxxxwxxhvvggwwfvvwwwwffvwwwgwwwwwwwfvuwgvxwwwvwwwxfwwwgwhwxwwvvwwwwwxwwwwwwwwwwxwwwwwxwwwwwxxwwxwwwwwwwwvvwxwxwxwwxwxxxwwxxxwwxxwxxwxwwwxwwxxxxxxxxwwwwwxwwwwxxwxwgxgwxxgxwgxwwxxvvwywwxwwxwxwwwxxwxxxxxxwhwxwwxxxwwxwxxwxxxxxxwxxxxxxxwxyxxxxxwxyxxxwxxxxxwwwwvwywwvwwwxwwxxxxxwxwxwxwwwxwxxxwwxwwvwwxwxxgwwxggfwwwwwvfgwgwwwwwwxxwwwwgwwxxfwwgwwwwwwfwwwwwxhwwwwwwhwwxxwwxwwwxwvwgwxwgxwwwwvxwwxxvwwxwvvvxwwwwwwvvxwxxwwwfwwwwwxxwxwwwxwwwwwgxvxwwwxxxvxwwwvxwwwwwhxwwwxwxxhwwwxxwwwxwwwxgwxxgxxwxgxwwgxwwwwwxwwfwwwwxxwwwfwwwxwxwwxxwxxywxwxxxwwwwxwxwxwgxvwxwwwxwwxgxwwxxgwxwxxwwwwxwxwwwxxwwxxxxxxxxwwwxxxwwxxwxwxxxxxxxxwwwxxwywxxxxwxxxwwwwwwxwwxwxwxxwwwwwwxwxxxxxxwwwyxwxwxxxxxxxxwwxwxxxyxxxxyxxxxxxxxwwwxwwwxxxxwxxxxxxwxxxuwwTvewwvvxggfwvfwxwguvwwwwwxfwvfwvwwvvugwfxvwwxwvwxhVvuxgegvfwwxgwwwwvgwXgevxgwwfvgvgfvvwwwxxxwxxwewvwfwfggwwfwvwgwwwvwwggxwwwwwwwwwvvwvwvfwwvxvgvwvwegwvvgwwvxwwwxwxxwwvwgwvwwwgvxvwwvhhxwwtvvwXwfWwgwwxwwgegwvwGfwwgwwxwhvfwwwgwwvvwxwwxwxwwxwhxvxgueWFewwxxwxwwhgxhwwxxxwwwfwwwhwgwhwXhghxhhvwxxwvgvwvvgvgwwwhwgwwwwfwwwwwWwwxwwwxwxwwwxwwxwxwwvwwwwfwwxxvgwfgxwxxwxwwwgwwwwwxgxxvhxhxwvwvuvwwgwwwwwxwwwgwxwxxgwwxwxxgxwxxxxxwgvfwwwwwwxwxxxvwwwhxgxxwxhxvwvvwvwxxwxxxwxxwwxwwvxxxwxwxwwwwxxxwxxwwxvwwxwwwwwxwxwxwWwwwwwwwxwxxwxwwwxxhwxxxxxwwwxwwgxxxxhwwxwxxwwwhxwwxhxggxhxxxyxxxxwwxhwXgwxxwxgwwxxhwwwxwxwxwwwwxxwxxwxwxwwxwxwwxwxwwxgvxxwwwgwxhwwwxxgxwwvxwgvxwwhxuwvwewvwgwvgvvgwwgwfvwgvgwwWvwvvwwxwwgwgvgwwwvwwwxVwvwgwVvgvvwvvwwwgwwvxwwwgwwwgvvvvvvvvhwwwwfwwwgvWwxwwxwewvwuuevvggfwvvvgvwvfvwwgwwwvvwgvwwwwvwwwwwwfvwfwwwwvvvveewvwgwwwwwfvvwgwffwwwfvwvwwwwwxwwggwwwwwfxwwvevwggvgvfwwgwggVwxwgwwvwwwwvwwwwwwwwxxggvfgwggwwgxxxvvwhwfwxWvwxwwhwxxxxwhxxwwwvxxwwxxWwfWxhxwwwxxxufvwwwwvvfxwvwwgffgwwggwvwvwwefvgwwwhxwxvfvvfvwhxgxwwwwvwwfxxvwxwevwwwxwgxxwvxwvwwwwwwxwwwwwwvwwwxwwwwxwwxvwwwwxwwwxxwwxxwwwwwxwwxwxwwwwwwwxwxxwwggwwwwwwwwxxxwwwxwwwwwwwhwxxwwxwwxwgwxwhxxwwxxwwxwwwwxwwwvxxwwxxwwvxwwxxwwxwxwxwwwvwwxxgwxxxwvwwxxxwwwwxwwxwxgwxwxxxxwxwvxxxxwwxxxxwxxxwwxgxwwxwvxwhwxwwwxwwvwwxhwxwwxxgxhxwwhwvwxwxwxxwxxxwxvxwwxvwwwwhxwwxgwxxuwwwgwvwgwwxVvVvvwhgwwwwgwxwwwwwwfwvwwgwwwwgggVvgwwwwvxwwfggVwvgwxgWuvwxwwwwwvwwwwwwwwfwVvgwwwxvwwxxxwwggwxwwwWwwwdwgwwgvewvgvgvVvewfvwvwgxwwwwwvwwwWgvwuxwwvwwwwvvwwxVffwevwwexvwuvwwgwvwxwvvwgwxuwwwVwwvvwwhwhhwxwxwwxwwwxhhggVfwwgwwwgWwwwgwwwwxwxgWwwvxwwwwwwwxxfwwwgxggwwwwxwwwwwvwgxwxwwgWxxwwwxgxxvxxgwgwwxxxwgxwwxwxhxhXwxxwuwggwewewvhuwwwgewxfxgffxvwgwtfwwgwxwwwvwwhxvwwwwvgwvwfxwfwwwxwvuvvwwwxwxhxwxvgvxgxgwwwxwwxhxwwxwwgwxvxhxwwwhwgwvwwxwwwwwxwvwxwwwwwvwhxxwwwvwwwwgvxwxwxxxxxxxxwwwfwgwxwxwxxxxxxxxhgwwwxwwwwwghwwwwwxxxxwwwwwxxhwWxxwwwxwwwxwwwxxwwxwxwxxwxwvwxxwwxxxgwxxwwwxwwxwxxwwxwwwxwxwxhxxxxxxxwgxxvwwwwxxwgxxwxxxxxxxxwxhxwwwwhxhxxhvxxxxwwwwxwwwwxxxwwxxhxgxwwxxwwwwwxwwwxxxwxwwwxxwwwxwwhxxxxwxhxwwxxwwhwwwwwxxwxxwhxwWdFhxfwwwwwwwgwwxwxxgwwwvvwwxwhwvwxxHuWwwxwwwwwxxwwwwwxxxwwwwxwwwwwwwwwxwwwwwfwxwwwwxgvwwwwwwxwgwwxxwxxxwwwwwwwwwwwvwwxxuxwvwvxwxHuWwxwwwhgwwxwwwxwwwwwwwxxxwwwxxxwxWdFxwwwfxxxwwwyxgxxxwvvwwwxwwwwwxxwwgwwwwwwwxwxwwwxwwwuwwxxxxvxwgvwxxfwwwxxwxxxxxwxxxvxvwgwwwwxxwwxxwxwxwxxxwxwxwxhxwwwwxxwwwwxwxwxxwxwxxxxxwxwxwwwwxwxwwxwwxxxxxxwxhxwwwwwxwwwwwxwwxxxxxxwvvwwxxxwwxwwwxyxxwwwxxxxxywxxxxwwxxxxxxwxxwwwxwxvvxfuwfwwwwgwwwfwufhgvvgwwwwwwwwvwwwwwfwwwvwwwggwfwwwxwwfwwwvwwvwgwwwwgwwfwxwgwwwgwxwwwwvwwwwwvwvwwwwwwwwuwgwwwwwwwuvwwwffwwwwxwwhvwwfwwfwwwwfwwwwwwwwwvwwgwwwwwwwwwvvwwexxxuwxwvwvwxxwwwwwxgwwxxwwfwwwwwwgwxwfxwgwxwgwwwgxxwgwwwwwgxwwwxwwwgwwgwwwgwwwwxwwxfwwxxwxwfwwxxwwxxwxxwgwfxxwxwxwwvfggwwwxwxvwxwvgwwwwxxwgwwwhewwwxwuxwwwxhxwxvgwwvwxwwwxxwhwwwwwgxfwwxxvwvfhhwvxwwwwwwxxwxwwwwwxwwwwxxwwwxwwxxxwxxxwwvwwwwxxgxxxxvwwwxwwwwxwxxxwxwxxxwwwhwxwxwwwxxwxwwxxwwwwwwwwxxxxwwxxxhwxxxwwxxwxwwxfwwwxhvwwxwwwxwxgwwwwxxwxxxxxwhxxwwwxxwwxxwxxxyxxxxxwxxxwhxwxhwxgxxxwwwxwwwxxwhxwwwhxwfxxxwvwxwwxwxwwwxwxxwwwvwxwwwgwwxxwwwwwxxfgwwwwwhVewfwvwvvwwwwvgvxxwwvgvwggwwwxwwxgWfvgwvwwwwggvwwWfwwxxxwwgwwwvwgwvwxgwwhxxwvwwxgxgvwwwvvwwwwvfwgwvwffwwfvwgvhxwwwwwwwwwxwwwgvhxwwwwwvvgwwwwvwwwfwwxxwgwxxwvvwwwwvwwwxwwxwxwwxwwwwgvxggvggwwxwwWgfwWwfwwwxxwwgwwwxxhxgxwxwxgggwwxgwwgwxwgxgxvghhvwwxwwhhghxwxwwxxwxxwxwxxxxxxwxxwhhwxxxxxwwwwwwwfwwwwxwxggvwxwgvwwvwgwwwwxvwxwwwwwxwwxwwwvwwwwwwwwxwgwwxwxxfgwxwwwxwwwwwxvwxxxwwgffxwwxxwwwxxxwxgwwgxxxxwvxwwxxxxwxxwxxhxxxwxxwxxvxxwwwwxwxwxxxwxwwxxxwwxvwwxxxhxhwxwxwvwxwxwgxxvxgwxxwwxwxxxxxwxxxxxxhxwxxgwxwwyxxywxxxxxxxhxxwwwwhxxxxwwwwghxwwwxxhxwxwvxxwxgwvxwxwxwxxxwwxxvxxxgfvwgwwxwwxxxwwvwfwwwwwwwwwwwwWwfuwwwwgwwvwwwwgvfwwxwwwwxgxvwwwwvxwxxwxwwwxwhwvwwffWfuwxxwxxffwvwwxxwgwvgwgevwgvwwwwvwwvwvvgwwwwwugwvfwvwfwvvxwhwwxxwxxwxwwvwuuwfvvwxwvwwfwWwfuhgvwwfwwvxwxwwwvvwvxxxxwwwwxwVewxxgwxwwfwgwxwwwxwxxgwfvgfhwwgxxwhwwwwwwxxwwxwxwxwwwwwwwwwxwwwwwwxwwxwxwwgfwvgxxwxwxxxwxhxxvxffwfgwvvwgwwwgwwwvwwfxvxwwxxwguwwxxwwwxxxxfwvwwfwwxwxwwfwxxwwxgvwxxwwwwxxwxxwwxxwwwgwwvwwxxwxxxwwxwwxyxwhwxwxwxxwxwxxxxxwwgwxwwwxxxwxwxvxxxxxwxwxgwgwxwwwwxxxxwxxxxwxwxgxwwwxwwwwwxxwxxxwwxxwxxxwwxwxxxwwxwwxxwxxxxxyyxwwwwxwxwwxxxxwwxwxwxhxwxwxwxxxwxxwxxwwxxwxwwxxhwxvwWwgvwwwwgvwgwUvfwvwwWwgxvgwwwfvwwgUvfwwwxwwwwwwwxvuwhwgxwgwwwfvwwwwwxwfwwvgvwgwwfwwwwvgwwxwxwgvfvwwwgxwVffwwwwwwwvwwwwwwwwwfvgvxwwwwwwwxxwvwwwvggxvwwwwwxgvwxvwvxwwwwxhfvwwwgWwxgwwxwxwwwhxWwxwwxWwgxwwwwxxwfxwwxxxhvwwxhwUvvvxxxwxwwwhgwwvxwwUvfvxwxxxhxxwwhxxxwxwwwfgwwxwvhwWwwwxxgvwgwwhwwxvxwwxxvxwxvxfggwwxwwwxwwxxxwhwwwwwwwxwwxwwxhxwvwxxgxxwxxgwfggwwwhxwxwwwwxxxvxwwwxxxxxvhxxxxxhxxwwwwxxxwxwxxxxxxwwwwxwgwxwxwwvxxxxxwxwwgxxwwxxgwxxxxxwwwgwxxxxfggwxwwwxxhyyxxhxxxxxxwxxxwwxwxxxxxwwwwxxxxgxxxwxxxxxxxywxuxwwwwwwxwgwxwhvggwgegfgwwwwvxvvwVgWggfgwwvwwwwwxxfxxwwwhvgwhwhewfvwxwxwgwxvvwwwwvwgwwWWffhwgxuxgxwwvwwwwfwuwewhwegfgwwvggxxfvvwvwwxwfgvwxuggxwwwwwwwvuvwvwvwwhewvwwgvwvxxxwwuvwgwwwWgwwuhwfgwxxxwgxwwgwvwwwhhfwhwwwwwxwfwwWfwwxwwwwwwwwxxhxwxwxwfwxwxvwwwxwxfwwgxxxxxwwxhgwggwxwxgvwwxwhxhxxwxxfhwvvwwwxxwvgwvxwxwwwxwxwwwvwwvhwwxfxwVwuwwfwvwwwwwwwgxwwgwwwxwhwwwxvgwwwwxwhfgvwhwgxxxwhfwwvvwwwwxhwhwxwxxxxwwxxwwwxwwgfgwwgxxfgwwxxxxxwxxxgwwxxxxwwwxwwxwvvxvxwfvxhxxxwvxfxwwwwxwwxxxhxxxxwxwwxxxxxwxxxxxwxxxwxxxxxxwxwxxxwxwxxxxxywxwxxxxxxwwwxxxxxyxwwxhxwwxxxxxwxxxxxxwwxwxxxwxwxxxxxufvtevgTuewevvvvwwfwvwvgvvvwxfggvvfVwuwwxwwwvwwwwwwwvwwgwwffuwvvgfudvwwwxwggfvgvwwwvfwgwfvwwwwwwwwwwwxweffveevwvfvvwwwvvwwwwvwVvfgwvwwxwwwwwwwwgxxxwxgvwffvweuwuvhwxwwxgvgvwxwvwwxwxwxgxxxwwxwdvfgwTdwUfvuvuvfffwwwfdegwwwueFwvevwvvwwwgwwwwwgguwwhwexxwvwvhwwgwvwwfvwhwwwwwwwwxwwxwwwwwxwwwgwfgfefvvwwvwwwwefvwwvuwwvuhwwwggwwwxgwxvgwxfwwgxwwwwfwvuxgwwgwwwwwwwxxxwwxwvwwvwwwxwxxxxfvfwuVfwuwwwwvwwwwwwhvwwwwwgvwwvvwxxwwvwwvwffwvvgwwwxwwwgxvxwwwwwxhwxwxvxxvgwxwwvwwwwhxwwxxwxxwhgwwxwwghxxxwwwwvvxwxwwxvwxwwxwxwxgxxxwhhxvFewgfuvvwgwwwxgfwwwgwwfwwwvwvwwwxvvgwwxwwwxgxvvxwwwwwwwwvvxwwwwvxwxxxxgwxgvxgwwwwwwwwxxhwvwwwgvwwwwxwxvwwwfvvxhxvwwgxwwxxxwwwwgvwwwwwwwwwwxxwxwxxxwwwxwxwwxxwwwxwvwwvfvwufvwwvfevuwfwwuevvfwwwvwwwggwgwwwwWvvwwwwwwxxvfvwwwwfwvwvvvfWwwwwgvuwxwwwgxwxwgwgwgufvwfwvwuvwwwwUevwwvwwwvgwwwwwwwwwwxfwvwwwwxxwvfvvwwuvvxwwwvwwwwwwwgwwvwvwwevuwvfWwwUevuvvffwwwwwwvwwwwvggwwwxwvwwxwwvuvgwxwwwxwvwxfwwwwwwwvwxwwwwwwwxxwwxxxvwxwwxxwxwxwxxwwxwwuevgvuwwwvwwvwwwxxwvwxxvxwvxwxwwwxwxxvfwwxwwwwxxwwwwxxxxxxwxwwwwwvwwwgvgwwwwwwvggvwxvwxwwwvwwwwwxwxwxxwwgxwwwwwwxwxvxxxwwxwwgwgwwxwwwwwgwvwwwxxxwvxxxxwwwwxxxwwxwxwwwxwxxwwwwxwxwwwwxwwxwxxwwxwwwwwwwxwWvvwgwgfwvwvwvvuvgxwwxwwwxwwwxwwwwxwhwwwwwwwwwwwwwwxwxwxwxwwxxxwxwwhwwwwxwwwwxwgwwxwwxxwwxxwwwwwxwwwwwwwwwxxxxwvwxxwwwwxxwwxxwxwwwwwxwxxxwuffwfvvg6fewcVfvVwfgwVewffVvfvuwUwugvwxwwgvvwwWfwfggxgvwxwxgfwxuVEwfffwVVfwvxgvwwwwxwwxwwwgWWvfwxwgwgwvwwgwwwwwwwwxxhxUvvxfgvwffeweufvfgwwgggwfwwwwgwwwwvwuwxvxwwgwwxwxxxxggfuufwwvvwwwVvwwwwxwwxxwwwwxxvwwwwwwwxgwxgxfvvgvggwTfVveuuwf6EfwwfVFfwethuwwwwgwwfwxxwgggxwfvxwxwwvwwwfgwwxwvwwuvwxwwwwwxgvxxxhwwwwxvwxxwwhwxhxwxgxxxhwvfgwgvwfvvgwxwxfgfwwwvwwwwgxwwwwxxwhxgwwwwwgwxxwxwgxwwwwwwgwxhwwvwwxxhxvhxxxxxxwwxxxxxgxwgxxFvwtggvfwwwvwvggwwwvfvwxwxwvwvvvwwwwxwfvxxxvxgxwwxfgggvvxvvwwwwfvwwwxxwxxhwxwxxgvwhhwwxwwxwwuwwvwwwxwgvwxwxxxwxwxxxwwxxwxwwwwwwwxxwxwhhgwwwxwwwhvxwwxxhxhxgxxxxxwxxxwwxWgwxxxegfwvwvwgvfwwwhgwVwwguwxwwwgwwgwwwwxwxwwxgwwgwwwwwwxxwxwxwwwwxwwgwhxwgwwwwwxxwxwgwxwwwwxXxwwxwxwvwwwwxxwwwwhwwwuxvgvxwxwxwwxxwxwxwwwxwxwwwxxxhxxwxwwxwwxfxhXwxxwvxhwwxwwgwwwwwwwxwwwwwwvwvwVggvwfeuvwvvwfwefvwwwwdutgvffvvwwvwvtvffvgwwwwxwvvwwfvvvwwvwvfvgwxvwwwwvvgvvWvWwwvwxwVvuwwWwxwwwuVeggvwwwgvwwxdevvfwvwgwwwxvhvfvfwtwwwxvwwwxvvwgggwxwwwfwwWxwvxxxgtvvfhuwvxwwweuvfwgwwffVwwxwwwEuvwwxwvvvuxgwgeugteevWvgvwvwxvvvvwwwwfwwvvxwwvwvwwwwwgwwgwwwwwghxgvfwwgwgwwvwwwxwwwvftguvvvggwvwxffwvgwwggwwwwwvgwwwwwvwwwgwwwwwwwvVvgxgwwwxhwvwxxwwwxvvwgwwxhxwwwwvwggwwwxwvfvvwwwvgvwxxgwwxxwgxxwwvvwwwwwwwwxwwwwwvwwwxxwxxwwwxxwwwwvwwxxvgwgwhwwwxxwwwvgwwxxwxgwgwxxvvvwwwhxxwxxxwxxxwxxwxwxwwwxwwwgWuwgwwwwwwxfvvuhgwwwxxvvwwwhwwwxwwwvgwggvwxxwwwwwwghwwwgghxwxwwxxwhWxwwvwxwxwwwxwvxhwwwwwxgwwwxxvwxvxwwwwwvhwxwvwwgwxwxwxwwwwxfwgvwvwwxtfvvfvvwfvvgvffuuvvufuveDUvvuvwfugvwevugfvgvwwufvvwvwvvWgwwvvwwwfewfwwvwwfwwgwvwfvwwgwwvwwvvvvugwwvwvwvwvwgwwwwxwwwvvggDUvwwwfVfvwvwwwfggvwgvfwwwvwwwwwwwvwgvxwvwwwwxwxwfwuvwwwwwwxxvwwvvWwhxwwwvwvwwxwxuwwwffwvwwgvvufgvwgwVwvwwvfvvgvwvvwVuwvWfgwvfwgvvvvfwwvWvgwwwwwwwwwxwvwwxwwgwxwwwwxwwxwwwwxwhwxwwwghwwwwwgvvwvvggwwxxfevwwfwwwwwwwvggwuwvwWwwxWwwwwwxwxxwxwwwwgwwwxvxwwWxwxwwxwxxwxxgxwxxxwwwvwwgvvwvfgvwgvvwvxwfwfwwwwwwhwwwwwwwwwwvfgvvwvwvwwhwwwwwxwwwwwwxwwwwwgwvwvwvwvxwgwwugwxwvwwgwwwwwwwwwwgvwxxwwxwwwxxxxxwhwxwvxwxwwwxwwxxwwxwxvvvwvwvxwvwwwgwwwwvwwgwwvwwwwWxwhuwwwwwwwxgwwvwxhgxwwwxwwgxwwwxvxwwwvxwwwxxwxwwxvwxvwwwgwwxwxxxwwwxxxwxwvxwwxxwxxxxwxxwxxxxxxwtgwwVvwwTfwgvuwdevfgeevdeefgffuvwvffvwvwwvwuxvwvwvevvfvwwvvgvwggvwfvvvVvwgwfwwgwvwggwWwgwvfgwwevxvgwgvwwxgggwwgwfvfvvvguwwvwfvVevfFweffwwwwgwwwwvwwwvhwwwwwwxwwwxxxwwvwwwuwwgvwvvwwwwwvhwwuwgwdwxxvxvwvxwxwvxwxwhwxxwxwfwwffgvwffvvgwgfFfvwggffUUvvfvggvfwffwgfvwxwwwfvguWuGvwwwwgwwxwwxxhwwwwwgwwgxfwwxgwgwwwxggwwgwgwwvwxwgwwxhWvwxxvvgwwgxvWwgwwfvvvgfwWwgwgwwwfvvwwwhwxwgfwwxgwhgwwwwwvwhwxwwwwwwwwxwhhfvgwvwwwwwxxxwwwwwvxwwwxevvvwvwvwgwwwvxugvwwgwfwvwwxvwgwwvwxwxwwwwwwxwwxxxwwwvgwvxfwuwwwwggxwwvvwwwwwwwxxhuwwxxvwwvwvghxxxvgwgwvwhwwwhxvxxxwwxxwxwxxxxxhgwwwwxxwwxxxxwxwxwxwwxxxxwwxxxwxxxwwgfgvwgwWgwwxwxwwfgwxwgvvggwgwwvfxxwwxxfwwgxwwvwwxwxvwwwwxwwwwwxxhxwwgwgwvhwwwxwvVwwwwwevwwxxxvwwxgwwwwhwwhwxxxxwwxxxwwxxggxfxxwxwwwxgvxvwwxwvwxfvwxxwgwdUUvfugUdvwufUfvgufvvUTfvvvxTuvwvVTvufwxwfwugfvuvxgwvwgfvvwuwgeefwVvvwvwwxwwfvxwwwwvvvewfwwwvwwwVvxwvvwwwxeevweVTvfevvwwuEUfvuvwggvewwvxeevwwVuvwwwwfxwwxgwwwwxvfUvefvwwgwwxvvwwvwwxwxwwwxfgwwxxwwxvgwwvxxeuuvtgevefUvfwvxtfevvvwEeugwffwfVVvEvuggfuwuwgVgwxgvfvwwvwwgvgwgwwwxwvgwvwwwwwvxvxwwwxwvwwwwwwwwwgwxvxvwwwweVfvffvgvggwwwUvvvwVevwwxwwfvvgxvwwwxxxvwwwwgwwxxgxvwvwwxwvwvgwwxwgwxwwvgwgwvxwwwvxxxxhvVvvwvgfvvvfwwwwfgvvwxwwvwwgffgwxwwwwwvwwwxwfwwwvwvwxwwfwwwwxvxwwwwxwwxwxwgxxxvwwxwwvwwwwxwvxwgwxxxwwwgwwwwxxwwxxwwxwwxwwwwxxwgwvxxvwwgxvvxwwwwxggevvvwvwvwxwfuwxwwxwgwwwvwgxwwhwgxwxxxxxwwxxwwxwwwwwxxxxwgwxxwwwwxwwwwwwxwwwwvxvxwwhwwxvwwhvwxwxwwwwwxwgxwwwxwxxxxxwxxxxxxwwwxwwwwwgvwxwxwhvvwxwwxwwwhvwxwuevxvwvwevVugvwwwevwVvgewvwwwwWufvwwwwgwfvgWwvwwvwwwgwwwvwgvvwwwwwwwwwvwwxxwfuvwwwwwgwwwwxxvvwwxxgwwxwvvwwwwfvWugvgwwwvvwwvwwufvxwVufwwvwwwwwwxWwwwvvwwwwwvwxwvxwxxvuwwwwwxwvgwgxwwxwwxwxwwewvgvvgwgvwvVvwxwfvwwwwwvwwwwgwwvxwgwggwufwfxwwxxwxvwxvwwwwxxxwvxxvwwxwxxxxxxwwwgvwfwgwfvwwxvvgwgwwwwwxwwvwxxxwwwwwwhxxwwwwxwvwwxwwvwxxxwxwwwxwwwwxxxxwwvwwgwwwuvfvvvwwwWwwxvvwwwvxwwxwgxwxvwwwvwwwxvxwxgwwxwxvgxxxgxvwwwgxvxwhwwwwxxwwxgwvwxwvwwwwxwxwxwwwxwxxxxwwxxwwxxxxwxxxxxxwwwuwwvwxgxxgwwwhwvvgwwwwwxfwwwxvwwxwwgwwwwwwxhxwwwwwwhxwxxwxwxwwwxhvwxxwxxwxxwwgwwxwwwwxxxxxxxxxxxyxwwwwdgvwfwwxUeuwevgEvewfwffTVfvgvvwEvuwvffwwgvvwvwegefwwwwffwwxgwwWfFwtgVwegvhgeVwvWwWffwwwugvewgwvWwgvvvwwgwwgvgwwvwwVuvxvwgwvfwwwvfVfvgwfgedvgwwxwwvwvwwwwwwwvwgwfwgxgwwgxwvgwwgvhvvvwwwgvgvggvwvxwgwwwvxwxwwwwwxgwwxwwgwwxvfgwfwhegfwvwwwUVFfvgwxefffwgwvfFUwwwwfvwwxVVVgwhwwwfuwhwwxwwgwgxxwvwwvwwvxxxxegwwxwwvxxgwwxwwwVwwxwggwwxxwfVfvwvwVwwwwVefgwWwwgwwhwgwwvwwxhwuxxwwgggwgxgwwwwwwwvgwgxwwwvWwxwgwwwwwwwhvxhxwxwghwxhxxwwVuvwewguwwwvuwwuWfvvwwwvwuwwwwvwwwxwxguvwxwwwwhuwwfgxvvwvvvwwwwwwwwwwwxxwxxwwwxxwxgwwwwwwwwwgwvxwwvwwwhxwwwwxxhxwwXwwgwwxxxxxwxwxxvwwwwwgxwwwwxhxwwwWwwwxxfgWgvvxwfwWfffxgvvvwwwgwvWwfxwwhxxwgwhwxwwwvxwwwwxxwwxwwwvxwxwxwgvwwghhxwxwxxwxwxwxvxvwwxwxwxwvwfwwwxhwwfxvwxwxwxwwfxwgwggxwwwxwxxwxxhxgwxwgxwhwwgwvwxgwwwwwvwxeuuwvwwwvguwgwwvvwgwwgwevwveuwwvwwwwwwvgwwwwwxxxwwwvvvWwwwvfwgwwwwxwxwwvwfvuvwwwgwwwwwwwvevwfUuwvwvggwgwwwxwxwxufvgwwwwggwxwxwgwwvxxwxwwvgufwwwxwxwvxvwwxxxxwwwwvwgxgwxwxxwwwwUuvwVvwvvfvuvhvvWwwgwwwwxvwwxvUuvwwwxxwxvuwvwwwxwwvxvvwwwwgwwxwwxwwxxxwwxxxwwwwwwwwwwwxvxxxxxwwuuwvwvwxwxVvwxwwxwgwxwwxwwxwwwxxwvwhxwwwvwwwgwwwwwwwxxxxwxxxwwxvwwxxxgxxwwxwwwvwwvfgwxwwwwwwxwxxwvgwwwwwwxxwwwwwwwwwxwwwwwwwvwwxwwwwwxxxwxwvwwwwwwxwxwwwwxxwwfwgxwwwwxxwxwgxxwxxxwwwxwwwxwxxxxxxwxwgwwwwxxwxxxvWvegwwwwxvvgvwwwxxxwxWwgxwwwwgwwwwwwxxxxwwvwwwwwwgwxwxwwxwxwxwwxxwwxwwxxwwwxwhwwwvwhwwwxwwxwwxwwwwxwwxwxxwxxvwwxxxwwwwwxxxwwwxwwwwwwxxwtvgwevfgeeffeffvvwwwvvxwwwvxfvvwvfwvVewvvvwgvwwvxgvwvwwwxwuwvwwwvwwwwgvfgwwwxwxwwwwfvgwwwgwwwwwxwxwvwvvwvvvgefevvwgwwwwwwwxwwfvwwwfVfevwwwwgwxxvxwhwwvvwwwxwvxxgxwwwwwwwwfvwwgwuwwhwwwwxfvfgfgwvVvwwffwvvwvgwxwfwvwwwxuwwwwwwgvvwwwwgvwwwwgxgxWgvvxxwwvwvwwxxwxwxwxxgxwwxwwwxxwxwwxhwxwwvwwvfwgwvwwwvvwwgvwwwxvvwwxwwgwwxxwwwwggxwwwwwvxwxwxwxxwwwwxxwxhwwwwgwwwvfwvwvvvvwgwvvwxwvxxvxwwwwwwwfwwxwwxwwwvwwwwwgwxxwxwwwwvvxxwwxwvgwwwwwfwwxwxxxwxvwwgxxxwxxxxxwxwwwxwvxhwwxwwxwxwxxwwxwwwgvxwwwwwxvuwxwwwwwxwwxwwwwhwxwwwxxxwxwwvwwxwwxwwgwxwwwgvxwxxxxxwwwxxwvxxwxxxvxwxwwxxgwwxwxxxwxxwwwxxhwwwwxxxxxwwwwwwwwwwwxtvwxffwwfwwwgvgggwwfgvfvffwggwwwwGffwvwwfwxHfvwggfwvvhwgwxwvwgwgwvwgwwwxxxwwXwvXwwwxvvxwxxhxwvwwxfvwwGffwwwvwvxGfvuwwwwggwwwwggvwwwvwwxwwwxxxwwgwgxvxfvvwvwwxhwxwxxwwwwwvwwwggvwgffgwwwgfwxvgxwgwfwWwwggwwgxvwvvwwwwgwwvvwxxwhgvwwwgwwgwwwwxxxxwwxxxwwwxwxxwxwxxxxxVvwwvwvwwxwfwwwhwwwwwxwwxwvxxwwxxwxhxxwwwxxwwwgwxwxxxxwwxxhxxxwxxxvwwwwgvwwwwgvwgvxgwhgwxgwxwwvwwwwwwwwvwwwwwxxxgwgwvxvewwgxwxXxvvwxxwwwwwwwxxxxwxwwwwwwwwxvwwxwxwwxxhvxxxxwxxxxwwxwwxwwvwxxxwxxxgxxwggwxvgwwwvxggwwWwvuwxhvwwxwvxgwgwxwxxxwgxxgwxvxxgxwxxwxxwxwwxxxxxxxxvxwxwxwwxxwwwwxxxwwxwxxxxxxxwxxxwwxxxxxxxxwxxxwxxufwxwvvwxfwxwggvwwwwvwwWegwwwvuvwggVvgfwvfvgWegVvvvwewwwxwvvxwwwwhvwwwwxxggwgwwwwgwwwwwxxwwevwgggwVeggwvwgfwgfvvfwwWegvewvwfwwwwfvvxxxhgvvwwwwvwwwxxwwgfwwxxwxxwwxxvvwwwgvwfwfgWxwVwwvwvvgvwwffwfvvwgvwfgwvwwwwvxwwwxxwwwxwwwxwxxxxxvvwxwxwxxwxxgewevgwwwwfwvwwwwwxwxwwvwwwwwwwxxwxxfxhwwwwxwxgwxwxxxxwxwwwwwxwwggwvwwwxfvxvwxgxxgwwvvvwxxwxwwgxxxxxwwvvxgxxxggwwwvxgxewwwxwxwwvwwwwxxwwxwxwxwxwwfwgxwxvXwvwwxwxwvxvxwfgwwwxwwxxwxxgwgvxxxxywxwxwwxxwxwwxxwxxwwxxwxxxxxwxxwxxxvwwwwwwwwwwwwwwwwvwwwvvwwwvvwwwwwwvwwwwvvgwwwvwwxvwwvwwwwxwwwwwwxwwvwwwwxwwwwvwwwwxwwwvwxwwwwwvwwwwxwwwwxwwwwwxwwxxwxwwwwwvwxgwxwvwvwwwxxwwwwwvwxvxwwwwwwwwwwwwxwwwxwxxxxxxwwwwxxwwwwxxwwwwwwgwwhwwxwxwgvwwwxwxxwwwxxxwwxxxxxxxwwxxxwwwwwwwwwvwwxwwxwwwwwxgxxwxvxwwxxxwwxxxxxxxxxwxxwwxwwxwxvwwwwxwxvwwwwxxwwxwxgxxwxxwxwxxxxxwxxxxwxxxwxxwxxwxwxwxxwwxxxwxxwswwgWvvwggvwvffwefvwvfwwwWvwgwgwvvvwvVvwfvvwvvV5duvwgvwvwwvwwwwwwfvwwWvwwgwwwwvWwwwgwxxwwgwWvwwwgfwwwwwwwgwgwgwxvwwvvvVfwwvwwwwxW5duvwvwwvwvggfwgvwwwfxwwvwwghwwxwwvxwwwWvwvwfvwgvwwwxfwwvwwvwwvwwvwwwwhwxxwwxxwxvvvwvvgvwwwwwvvvfvwfwWgguwWwVvgwfvwwvvwvwuwwwewfgFevuwxwwwwwwwwxwgxxgwvwwwwhgwwwvxwgwwxhwvxwwwwxxxgxxxxwvfvxwwwvgwwgwfegghGuvwwhhwghwvwxwfvwwwxxwwvxwgwxwgwxgvgwxxgwwwwxwgwwwwhxxxwwxxwxwwxxwgwhgwxxxwwwwvwvwwvwvgvwgwwwxxwwwwwvwwxwwwwwxgxxwWvwwwvwwwvvvxhwxvwxxwxwggwwxwwxxwwwwwwxwxwwwxwxwxvwwvwwwwwxwwwxwwgwxwwwwwwxwgxwwxxwhwwwxwgxvvwxwwwxxwwwgwwwwwwwwxwxgvwgxgvgvgxwgwwhxxwxxwwwgwwxhxwxwxgxgwxxwwxxxxgxwxvwxxwxwvwwxwxxvwwwfuhwuwxxgwwxwwxxwxwwwwwwxgwxwwwwwxwwwwxwwwxwwwxxxhxxdvwgvffwgvvxffvvvwffffwggvfwwuwvwVDUvvwwwfwfgvfvwffgwfvvwhwwwgffggwwwwxfvwwwvwwvvvwwwwwhvfvwxfwwwxwwxxwwwvgvVVvvffwwwwvvwwwwwvwxWDUvvwWvwwgxwxxwwvvwvwxwgwxfwwwwgwwwvxxvxxhwxwwvwwwwwwwxwxwwwwwwxvwvvffvwfwgwvwfvwwhxwfwvfvwwffvwfffvgvfwwWvwgvwgffwgfwwgxwwwwxwwwwwwwxxxxxxwgwwwwwhxxwhwxwwwxwxxxxwwvwvvwwwwgvxwvwwgfwwuwwwwwwxvvWvwwxwWgxxwwxwwxxwxxxwxwxxwxwxwxxhgxxxxwxwwxxxxxxxgwwgvvvwwwwwxwwwwhwwwvxxwgvwwwxwxwwwxxwwfwvwwwfwwwxxwwxwfwwwwgwxxvwwwvvvwxvwwwxgwwwxxxxwwwwfwxxwxhxxwwwwwvvxwxwxhwxwxwxxxxxxwxxwwvvvwvwvuwwgvwwgxxwwxwwwwwxgwwhxvwhxxxwxwwhggxwxwxwxxwxxxxwxhvwwhwwwvwxwxwwxwxxxxxwwxxxxxxxwvxxwwwwggvvgfwwvwvweuvWwfwvfvwvwvwuuuUvwgwedvvvvevfvgvwgwvfwwxwwwwvuwwwvwwwewfwwgfgwwgwwwgwgwwggxvwwvwwvwwvgwwwhvwwvwgwvwvwvggvvwvfwwwvwwwwwwwxgtevwUWgUwvuvwvvwwwxxxvvwwwwvwgwvwvgxwwxwgvwvwwwwuwwvwwhwwwwgexvvvgfwfugvwvgxvffvggfwvwvvvxvWvvwwvgvvwgvWffffvgwwwwfwwwghxwvwwwwwwxvxxwxwgxwwwwwwwwxwgwwwwwwwvwwfxgwwewwwgwxxvefwwwWwxwwxxxWwwwwgwwvggwwxVvvwwwvwwwxwwwwvwgwwwwwwgwvwvvwwwwxwgwfxwwxwvvuwwwwvgwwgvvwwwwwwxvwgvwwwwwgwxgwxwxfvxvwwxvwwwxxwxxwwxwwwwwgvvxuwwwwwxwvwwxxwvwgxvwxxwxxwxxxxxwwxxvxwxxwwhxxxhwxwwwwxxwwwwuvvvxgxVwvwgwvwgxwxxwwwxwxxwhxwwwwxxwxxxwwxwwvxxxxwxxwgwxxwwvwfwvwwxwxfwhwwwxwxhxwxwxxwxwxxxxwxwxwvwxwxxxxxxwxegwxWvvggvvwvwgvwhwgfwggwgvvwvvwfeuvwfeuwvwVfwgwfwgVwwwxwvwvwwwwwxwgxgggwxgwxwwgwwwwxwwwvXwwxwwwwwwxxvgwwwwfvvvvwwvuvwvgwfwvwgvvwvwwwuvwfuvwvwvgwvgwwxwvxxwvgwwwxwwxguwwgwwwxwwxwwxxwwwwwwwwgwwgwwxxxwgwxwxwgvwwwwvvgvwwwfgXgwgwWfvwfwgwvWvgvfxgvvfvgwwgwvxvxwwvgwwxgwwwwwxwgxxhgwxwwwxwwwxxwwvxxxwwwwwgwgxgwwxwwwvvxfwgwgwwgwwwwfwvhwxvwufwwwxwwwwwxxwxwwwwwwwwxwwwwxxxwxxxxwxwwwwxwhwwhwwwwvwwwxwwwwvggvvvwvxwwwwgwwwwwwgwxxvvwwxwwwwwwwwfwwwwwxhwvxwwwvwxwxxwwwxwxxxgwxxwwwxwwxxwwwxwwxwwwwxwgwwvgwwwwwwxxxxxxxwxwxwwwxxxxxxxxxxxwxxwwvwhgwwxgghgxWwwxVwwwwxxxxwxwwwwwhxwgxwwxwwwxgwvwwxxgxxwxxxxhwxwxwxxxwxxwxxxwxwxxwxwwxwvwwxwxxwwxxwxwwxxxxxxxwxxwxwwxwxwxxxtwfwEvugVuxeVfwfwfwwvwfvfwwfvvvdffuwgvwUvvwvvfVgwwwwgxwwwwwfevwwwwvwhgVvwggfwgvvwxugVgfwwwwvwwvvwwxfwvwxfvUeVwwwwwfwwwwwvgwwwwwxwwfgwTugvwwxwwwwwwwwvxxxxwvvwggvgxwwgwwwvwxwxwwwgwvvvwvgwvvvwxxxwwxxvewvwegEufEUvfgUfvwgvwwvwwwwwwggwuvwVvevVfwwvfewvvvwwwwwvwwxwwwwwwwwwwwxwxgvwxwvwxxxxxxwvgwfwxwxgwwxwxxxwxwvUfevevwwwwwfwwxgvxxwwxfwvvwfwgvxxvxvwvwwwxggvxwxwwxgwxxxwxxxwxwxxwgxxxxwwVwvgfvgwvxvwwvwwwwxxxuwwgwwevxxgvwwewwwvwxgwwwwxgwwvxxwxvxxwxvwwwuwwwxwxxxgxvwwxwwxxxxvxxwwxxvgwwxgvwhwxwwwwwxxxwxxvgVfwvwgexgVvwxgwwvxwwwxwvxwwwwxvxwwwvxWvwwwgxxwwwxxxxxgwxwvWvxwxwfwwxewvvxfxwwwwvwwwxwxxxwxxfwxwxxwxxwwxxwxwwwwxwwxygxwxgxgwxVxtvwvvuvuvvwfEdvfwvwvvfvvgvfvgvvwufVuvvuvwvvvwvwvvwwwvvwwwwwwfwgvwwvwwwwgvgwxwwwwgvwwvvwgwwgwwxwvwwfEdvgfvwwwgvwgvfwwwwwwwxvvwwwvwwwwwwgxwwxfvwwwwwhgwgwwwxxxxwwxwhxwvxwwwwwxewvwwvewfgvwvvgwvwfgvgfvwwwVevfwwvvggwwvvwwvwvvwevvvvwvvwwwvwwwwvwxwxwxxxxxxwxxgwvwwgvwwxxxwwxhxwxwxwxvgvfvfvvvwwwwvwwwwVwwgwwwvwwxwwwwwwxxwwwwwvxwxwwwxxwvwwwwxxxxxxxxxgxwxwxwwvwgWuwwvwwgwvwwwxwwwhwwwwxxwwwwxwwgvuwvxxvwxwwwwxvwxwxxwxwwxwwwxwxwwwwwxvxwwwxxxxwwwvwwgwwvxwwxhwwxxwxwwxhgwwfxwwwwvwvgvfxwxwxgxwwxwwvxwwwwwwvwxxxwxxxwxxwxwxwwvxxxwwvwxwwwwwxwwwvxxwwxxxwxxxwwcffveufffvfhvUcueuvwvgvgfgfxwvwfveWvvfuvwwwfefFdfwwvwfvvwvxwwvwvvfwvwvVwegvfgxwgWuxwwvwfgvvGvfgwwvwwfvwwwwwwwvwggfvegvdefvVeuwgvffeffwwvggvwwwvgfVevvvwwfwwwwwvgvvggwwwxxwxfffgvvgvvwwhgwwwwxgvgwwwwwwvwwwwwwwwxwvwwxvwgwwxwvfffevffweftuFvdhvWVwwfgWwfgvgfveVeegwfgwfvwwww6veWvgwwwgwwhfwvxwwwgwgwvwvewwgwxxgwxwwwwvwwwwwwwxxxwwewgvwwwwgxvgwxwuefvfgfgfwvwvgvVwgWxwvwwgwwwwhgfvgwhfwfgvwxwwvgwwwgxxwwxxwwwwfvwvwwwvVwwwwwwwgwwegwvwwxgfvxwxwwxwwghwxvxwwwgvgvfUvgwwwvxwgfvwvwwwuwvwvvvgvgwwwwxgwwwwwxhxwxwwwvewvwwwwwwvxwxvwwwwxggvwwwwgwxxwwxwwwwwwwxwwwvvwwfvwwvxvwwwxxwwwwwxwxWwxxxxwwwwxgwxwwvwwwgxxhwxxwhwwgwxwwgxxwwwffwfvfwwvvxwgegvwwhggxwwwwwgwgwhwxwhwwwWxghxwwwwgwwwwwgwwxwfxxwhxwwwxxghwwuwwwwWwwhwwwfgwhvwxvgwgwxwwgwwwxgwgwgwwxvxwwxxxwwwwwwwwwhwwxwxwwwwxwwwwxgvxxwxwxwwwxwxwwwwwvwwgwwwwxwwwwutvfwwwwwwgwfwwgeeuwwwvveuvgefuuwwwvvwguvgxwwwwwwfvwwwwwxwwwwwwwwwgwwvwwwwVwxvxwgwgvwwwwwuwvvxgeuuwwwwWvfVwdwwwwwwgwvvvwxwwwwxwvwgvwxwwwwwvvwwwwxwwwwwvwwwxwwwgvwwgwwwhxwXwuwxwwxvvwgwWewwwwgwvvgvvwwwvwuwwhVvWwffefwxxgwvgwgvvvwwwwvwwwwwwwwxwwxxwxwwwxwwxhfwwxwwwwwwwxwwxgvwxgwwwvgwgwvfwwvwwwwxwvfvgwwwwgvgwvvwvwwgwxvvwwvwgwxxxwwxwvwwwvxxxvwwwwwwwwwwwwwxwvwxxfvvvwvwxwxwwwgvxxwwwvwxwwvwxwwwwxwwwgwvxxgwvwxwxwwwgvxxxvwggwwxhwwhwwwxwxwxwxhwwxxwwxwxwxwxxwxwwxxwwwwvwwwvvwxwxwgggxxwwgwwvvwwxwfxwwwxwxwxgwxwwfwvxvwxwxwwwwxxwxxwxwxxxxwwwwxwwvwvwxwxxxxwwxxwwwvvwwvWfwvvwgwgWvWwwvVwwfggvvwxvwwgvWvwvwWfwwxwwwfhwwxvwwwwxxguwwwwwwwwwuwhwwwvWfwxwwwwWfWuwwvfwwwwwvwgwwvwvxxfwwwwxgwwxwwxwugxwgvwxwwwxxwxvwvgggwvwfwwWgwwwvxwwwxwggwwgfgxwwwwxgwvwgwvwwxwwwxvwxwvhxvxwwxwxwxxgfwwvwwwwwwxvwwwxvwwwwwxxxvxxwwwxvwgxwvxwwxwwxwxxxwwgwwwgwxwgvgwwwXwvwwwwwgwwxxxwvxwughwwwwwwxxvwwwxxwwwwxxxvwhgwwwwwwxwxxxwxxxwxwxxxwwwxfxxxvwgwwvwxwwwwgxwxwxwggvwxxxvxgxxxwxwxwxxwxwwwwgxxwxxxwxwwwxwwxuwgwwfgwwgvfvwvwvvvfvwwFwwvfEhvwwvwgvwgwwwvwvgfvgvdfgwwwvwwwwgvxwgwwwwwwwxwhxwwgwwgwwwwgwwwwwwwwwwwvvwgGfwwvwwvwvwgwwwwwwvfwvgguwgwwvwxwwuwvvfwwwxxgfwxwfwgxwwwwwxxvwgWvhxxwgxvwxVwwwxwwwwxwwxwwvwwwwWwgwgWvwwGvvwgvwwvfwvwwgwxgwuwvgwgwwwwWwwwgwvwwxvwwwxwwxxwwwxwfxvwxwxwxxxwwvXwwwvxwwxgwwxgwxxwwxwwxwvvvhwvwxvxwwwwwvwxxxgxvwxwwwxwwwuxwxwxwwwxxwgwwxxxxxwxwxxxxxxxxxxwvwxXxxwwwxwwvwxwwWvwwvWvwwxxxwwwwwwwwwhwxwwvwxhwwwxwwwwxxhxxgwxwwwwwxwhxwwvvwxwxxxxxwwxwxwwxwwxwwxwvwxxxxxgwxxwxwfxxxwwwxxwwvxgwwwwgxgxwxwwwxhwwwxxwxvwwxwxwgwwwxxvvxxxwxwwwxxwxwxwhxxxxxwxwxxxwwwwwxxwwxxwxwxxwwxwwwwxxxxxgwxxxxxxxxxxwxxxxxxufggVvvwfvvgufvvwwWevvwfwwvvwFutffgfvwwwwgwdgvvfvvfgwwwwvwfwfggVwhwwugVwwwfwwwwvvfwwwgvgwwggvvwwwxvvwxxfuuwwwvgwwwwxwxvfwvwwwfgvwwfffwwwwgwwxwweuvgwwvxxxxwffwwwwwxxxvuwgwwwwxwxwfwwwvwwwwwwwwwgwxxxwvvvwvFTvvvwwwwvwvwfgvwwwwxwwegVvgfVVgwwwxwfvvwwVuwxwwwvwwxwwwxxxwwwwxwygfvxgwwwwxxxwwvwxxxwxxxuffwwwvwgxgwvwwgvwwxxxwwfvfwwxwxhxxxxwxwwxxxwwxwwgwwxwwxxwwwwwxwxwxwvhwxxxwxxxxxxgwxxwWuwwvvxwwuvwwwwvvwwvfwwwwwwvwxxvvwwvvvwwwwxxxwvvvxwxxwwxwxxwwwvwwwxvxwxxxxwwwwhwwvwwxwwwwwwwwwhxvwxwwxwxwvxvwhwgxxxwvwgwgwfggwvgwwxgwwwwgwvwxwxwwxgwhwwwwvwgwxwxwxwxhvxxwxwwwwwwgwxxwxwvwxvwwvxwwxxwwwxxwwwwwwxxwwxvwxxxwwwwxwxxwxhxwwxwxxwvwgwuvvgvgwwwwgVgwfwwfVfvvgwwvwwvwvgfvvwwgffVuwgwfvuwwwwwwwwvwwwvwvwwwxxwwwxwxwwvvwwwvxgvwwxxwwWwgwwwfwfwvwwwwvgwfgvvwfvwwxwxuwwgvgwwwvwxuwwuvwwwwwwxxwgwvwwwxWwxxwxwwwwxwwwwfwxwgwggwxwxvwwvWwWwwWvwwwuwggwxwfwgvxwwwwvwwffuwwwwwvxwvvwwwgfxgwwgvgwwwwwwwxwwxxxwwgvwwxxhxxxwwxxxxwwwuwwwwwwwwgvxwxwwwwwvwwvvwhwxwwvwvvxwwwwxwwwxwwvwwwgwwwxwghhwwhxuvwxgwuwvxvwgwwwvgwvwwwwwwwwwhxwgwwxwwxxvwxwwgvwxxvwwxvwwgwwwwxwxxxfxvwvwwxwwvwxwxwwwxvwwwwwwxwxwwxxwwxxxxwxxwwwwwxxxxwwxxxwvggwvvwwwwvwgwwwwwvxwvwwxwwwxwxwxwwwwwwwwxxxwxxxxwvwwxxxwwhwwgwwwxwxwwxwwwxxxwxwxxwgwxwxxwxxwxxxxxwgxwvwwwvwgwvgwfvvvwvfwvvwgVfewwwwgwWvvgvwwvxgvffgVVfwwgvwfvwfwxwwxwgwwgwWvxwwgwgwwwxwwwwwgxwwwxwwxwwgvfwgvwgvwwfhfghfvfvwwwfvfwxwwxxwwfvxxwwwwwwxvwxxwwwwxgwgxxxwxwggxxxgxwwxxwvwxwwwwVevwggwvgwvfgwvfgwgwfwgxgvwwvwwwwwwggvffwvgwwxwwwwwwwxwwxwwvxwwxhwwwwwxxwwwwxwxvwwwxwwwwwwwwxwwwfxggwgwvwwxxwwwvwxxwxxvxwxwwwxwxwxwxwxxwxhwxwgvwwxxxxwwwwwwfwwvxwwgwvhfgvwxwxvwfwwwwxwhxvwhwxwwwxxwwxwwxwwxwggxwwwwxwwwwxxwxxwwwwxxwxwxwwxxxwxxxgwwxxxxwwwxwxxwwxwwxwwxwwwwwwhwfxwxwvwhxgxwwgxwxxxgwwwxxxwxxxxxxxxxxxwwgxxwxxxwwwxwxxxwxxxxxhvvwxxxxwwxxxwxxyxxxxxwwwxxxfwwgwwwvvwvvvwwwwwwggwwwwvwwwwwgwwxfvwgwwfgfwvwwwvvxxfvxwvgvvvxwwwxwwwwwxwwxfvvwvvfwwwwvfgwwwwwxwwxvwwwwwwxxwwwwwxxxwwwvgfvvwvwvwwwwwwgwwwxwwxxxvwwwwgwxxxxgwxxwwxfvwwggffvfvxgwwxxwwvwxwvgvwwwxwwwwgvwwxxwxxxwvgwgwwwvvwwwwwgwxwwxwwwxxwwwwwwwwwxwwwwwwwwwwxhxvfvvvwwwgwwwxwgvwwwwwwxxgwwwxwvxxwxwxvwwxxxxxwwwvvwwwwggwwxwwxwwwvwxwxxgwwxxxwwwvwwxwwwgwxwwwxwwxfgvvvvwwwgwwxxwwvxwwwwxxwxxvwwwwwwwxxwwwwxwwwfxwwwxwxvwwwwwgwxwxwxgwxxwxxxwwwwwwxxwxwxxxxfgvvwwwxwwgvvwxxxwgxxwxwwwwxxwvvwwwwwxxxxwwwwxxwxxxhwwxxwwvvxxxwwwggwgwwwwvwwwwvwwxxxxwwwxwxwwwwxxxxxvwwwwgwxxxwwxxwwwvvxxxwggwwxyxxqwwwgvwwfvvfvVevvwvwgxvVevwwwwwwwwvwwwWwwuwwvvwwwfxwwgxgvwwgVewffvfuuvgxwwuuvvfwuwgwvwwTvwvwfvfvwuUwwwewwxwxwwvufvvfffvw4CuwvewffvwggwwevwVewggvwwfvwvvwvvwfwgxwggwxxwvVevfuuvwvewwwwegfvwfuwxgvgwwwvvvwvvvwvffwxwwgwwwwxwvxvwvwgxwffvgfvwgVewwuuxfuuguvwwvwwUwwwwvffwxEwvgewwvxwuwvwWgxwuuwggwfuwwuuxffXWfwfwwfwwfwxwwwvfxwwxwwgVevvVevvvfwwevwxgvgfuugWfwwwwexwwwxvvgxwggwwwwwwxvwvgffwxgwxwwwwuwgwVewwwwuvwwfwwxwwwxgvwwwwxvfwwwwwxwgvgvwwxwwwwwwwvwwggvvvvvwwfwwxvvgwwwVewvwwwwwvvxxwwfhhvwwwTvwvwwfvwvUwwwfwxwwwxvwvwwvvwwwwvxwgwwhgxwwWwwuwfvfwvvwvvwwvffxwggwfwwwwvvwwwWxxwggwwXXwwxwwvvwuvvvffwwxwwvwwwwwwwwwwwwvxxxwghxwwwwvwwwxvwwwUwwwwfwgxwEwvgfxwwxvwxwgwvxwwggwwghxwxvwwwwgwwfewwxwwgewwwwvvgvvxxgwwXXwwvwXxxwwxwwgxwxggwwwwvxwuxwwggffwwwxwwwwhgwwwvwwwgxxwxxxwwwxwwvuwxxwxwvxwvwWVevxgwxwwfhhxwwwxwwwxwwwwwwwweffxWwfwfffwvfvufwwwffwvgfwxxwvvwvffwwwwwxvffwfwwwwwwxwvvfffvwvfgwvvwwvwwwwwwwwwwwxwwwfvwvwwwwwgwwwwwhwxwvxxxUvvwgffvfffwwwvxgffvfWWfwvwwwffvwgwwggwxhwxxwxxwfffgvwwwwwwvwwvwgwwwxwxxwxwwvgwxvxxwwwgwwhxwwxhxgfvxvwwwvvfwwwwwfgfwxwwwgwvwwwwwgfwwwwxwwwggwwwhxwxgwwxxxwwwwwwwwwwwwvvwwwwwxvgxwggwwwwwwwwgwhwwwxwwwvhhhwwwxwxwwfffgvwwxwwwgwgwwwwwxwgwwwwggwwvwwwxxghxxxhwwwhxwffwwvwwwwwwwxgwwhhwwwwxxxxwxxxxwxwwwwwwwffwxwwwffwwwwxwwwxffwxxxwxxwxxxxxwgwgvwfwwvvgwwwwwwwfwvxwvgvvxwwxwwxhhvwwffwvWwvwwwwwgwWgwwxwxwxxwwwwwxxghxwwxwhgxwvgwvwwxwwwwxwvwxwwgwxxxwxxxwhwxhwwxwwwvgwwxwvwgwwfgfwhwwxwghwgwxgxwwxggghhwwxxvxwfwwwwgxwwwwwwvwxggwwwhxwwxxwxhwwwwwhxwwwwwwwwwvwwwwggwwgxwwwwwhgxwxwhxxxxxwxxhwwxxwwwwxxxgvwwwwgxgywwxwxwwwwxvxxxwxhgxffuffweevffwwwvwvVvvgwfwvwwwwwVvevufUuuwwwwuwwwvwgwwxwxfvvgwvfvwvfgfvvgvwwvwfvvwgwgvgfgvvfvwvwvwWvuwwwgwuxwwwwVvwfvVeuwUffwwgvUfwvwfwfffwwVufvvefvvwwwwvwwgwggxxgwwxgxxwfUffvvwvvwwwgvwuewfvwgxwwwwwWvgvfwvwwvwvwwwwgwvvwxxfuvgwgvwwgfwvuwwVgvxghwWuwxvwwvwfuguvwvfwvwwvgwwwvwwwwwvgfwwwwgvwwwwgwwwwwwxwgxxxvwwvwwwgvwwwxwxwwwwwxwwwwxwwwwfWffvvgWwfgwxwxfvvfwwvgwhwwvgvvvxfwgvgwwgwwvfwfwwggwxwxwffgwwwwwhwwwwwgwvwwxwwwwwwvwwwxwwwxwxxwxxwxwgfxwwwvwwwuvwwxxggwewwhwwgxwwwwwwwwxwWuwwwwxwwwwgwvwwwwwxxvvwwvvwwxhxwxwxwwxxwxxvfwvgwwvwwgvwxWwvfwxwxwgxxwwwwgwwwWwwwxwxwwwxvgwwxxwxwvxxwwvxwxwwwgvgxgwgwvwxwxxwwvgvxwxwwvhwWxxWvgwwwvwwwxvwvwvuwwwhwxwgxxwxxwxwwhwwxwwxgvwvwxwxwxxhxvxghvwwwwwxgwgxxxwwxwwxwxwwgwvxwwvhwwxwwwwwvwgwwhXwxwhwwggxxwwxxxhwWxwwxwxvxwxwwxxxvxwxxwwxvwgxxwxxwwhxxwxxxxwefvwwwwvvwwvvffvwfwgvvgvwvwvvvvvwVuvwwwewwvwwgvwwwvwwvgwvvfvvvvvwwvvvfgvwwwvwvvwwvwwfwgwvvvwwwwwwwwwxwwvwwwvvvgggffvvvwggvvwfwwgggvffwwwwwwwfvvvwwvwvwvwxwgwgwxxwxxvwwwgwwvvwwxwwgfggwvwgwwwwwxwwvvwhwgwxwwwwwvvwwwwwvvwwwvggwwvwweuvwwgwwfwwwwvwfxwwgvwwwgwfwwvvvwwwvwgwgwwwwgvgwgwwwwwgwhwwvwxwxwxxwwwgggwwvwwwwwgvgvwwvvwwxwvvwvwvwgwgvwwgwvvvwxxwwwwgwwwwwwgggwxgwgwxxwxwwwxxvvxwghwwwxxwwxxhwwwwwwwwwxwxxxwwwwwvvvwwwwwxwgwwvwwwwvwvvvwwvwwwwxxxxwwwwxwvvwxwwwwxwwxwwwxxwwwvvwwwxxwwwwwwwxfwwwvwvvxhhwwwwxwwwwhwfgvvxwggxwwwggxxwxvwwgwwgwgwvggvwwgwxxwxwhvwwxwwwwwwwxxwwwvwVvuxgxwwhwgvxxwxfvwwxfxwwwvwwwhwxwxxwvwhgwwwwxxwhwgwwwwwxwwxwwwvxwxgwvxwwxvwxwgwxwgwwxxgwwgwxwxwwwxxwwwxgxwwwwwxwvgwxwwwgxfxgwrfwgwwvgvggwwgwffuVggwvfWefwwwwvwfgwwwvvvFeewwwwwwxwVgggwgvvfgvefvvwWvgwwwWWvfwwgwfvgwfvfvvdwwvfvffwgwguwwwxvffgwvWvvwwwggvwf$CvwgvwgwvwwwwwvwgwuwwgwgwxwwvwwwxvwgvgwwwwfFefwfwgvvwxwggwvwxgwvwgvfuwwwvvwwwwwgvgwwwwwgvgwvwwwvvwfwgwwvwwwVwwWvgxgwvVUwgwwwwgfVwvxguxfevgwwwvdwwvxwxgwwxwwgxwvvvwfwwgWfwgwhwWuwgwwvvwwwwwgvhwwwwFewwxwggwxwgvwWugwwwxwwwxxwgewfxwwwwgwggvwwwuvwwwwwwgvgwwwgwvWvvwhvxxvvwvxvwxgvwwhwwFevwwwwwfwxvwvwwxwwwxwwgwwwwgvxgwwfwFevwxxwWvvvwgwvwvwwwgxxwwxxxwwwxwggwwwwewwwwggxvgxwwwxwwwfwwhwxwvwxxwxwwxvxfgwvwvxwwwwgwwvvwwhwwgxwwwwxxxwxxghwwwgwwxxwwvwwwwvwvwwwwwwxwfuwwxwwwwwvwwwxxgxwgvwxwwwxwxwwhwwvfwxwVwwwwxhwxxVxwxxwvxxvgxwgwxxgxxwwwwgwvxvvvwgwghgwwxgxwvhvxvwvvhwwwgvgxgwwwwwwxxxxxwwvxwwxxgxwwwxvxwwgwwgxwWvvxgwxwxwvxwwxwxxwwwwxxxhwwwwxwgxwgvwwxwxgwuVvwewfwUufwuwwdVfwuffweffvgwxfvvvvvtwfwwvvwuwgwwwfwvvxxegvgvvegvwugwdvwuvvvwvwwfugwgvvfuVuwvvwwwwwwvvvuvwwwwwwwwxeffwfffufvvvwwweVfvwggwVfwvwwwgfffwffWvfvwwwwgwvfvgwWwwwwxxvVffdfwwffvwfvwwvufvwuwhwfwvwfwvewvwuwwwvwguwwwwuwwvxwwwwwwwwwefwwfffwfgffwwhfffwwgwfffevvgvwvffwfvffuwwwxfuvwvwwwfgwwwwwxgfexvwvwfwvwggwxwwwgvvgwgwwhwfgwfvgwxwxwxwgwwwwwwwxwwvwwwgegfwgggwguvwggwwevuwwwwfvWewwwwWwVvvwvhwhwxwvgvwwgfwxvvvwxfgWwggwwwgvwwwgwwvvwxgxwwwwgwwxwvxuwxxxwwwwwxxwxfvwxxwwwwvwfvuvwwvgwwwvxvguwvgwvfwxwwvwwwwwwvgwwgvwwgwxxvgtwfwevvwwvwwgvvwvvwwwwwwgwvwwxwwwwxhwwwwwwxwgwvgwwwwwxuvvgfgfwwxwxwgwwfvwxwxwxxhxwwwfwwwwwwhwxwwwwwhxvhwwfewwwwwwwwgwvxwxghvvgvwwgxwfggxxwxwwgxvWvwvgvfuwwgWfvwwvvwvwwwwwxwvvwxwwwxwwwxxwwwgvgwwwxwwwvwwwwfwgwwwxwwXhwxwxwwvxwwxwXhwwwggvgvwwwwgvxwwwwxfwwwwwwxwxwwvwwxwwvwwgwgwvwxXgwxwfhhwwvwxwwwgwwxxwwvwwwwwwhwvxxxxwxxhwwwxxwwwwxghtgvwwgwvvwvwfVfgwwwwvvwwxefvvwwwwfuvwvgwwwwwgwwxvvwvwwvuvvwvwwggxwwvvvwxvwfxwxgvwvwwwwwwwwwwwwwwwxwffvvvwwgwvwwweffwwfwwwxvvfwxgWffguwgvvwxwwwvxwvvwfwwwwwvwhwgvwwgwwwwwwwvwwwwgwxwxwvwwwxwwxxxxwwwwwgvvgwxxwfvwwxfvwwxxwggxwxgvwwxxgvuwxwwwwwwxvvwwwwfxxwgwwxxwwgfxwwwwwwwwggxwwWwwwwgggvxhxwwgwwwvxwwwxxwxvwfwxxwxwwwxxXwwwwxxgwwwxwxvwwgwwxwxvxvvuwwgwxwvgwxwwwwvwhwwWhgwgvxxxwvwxwwvvvwwwvwwvgwwwwwxwwwwwxwwxwxwwxwwvwvwvwxwwwxwvxwwwwxxxxxxxwwxxwwfufwwgvvxxxwwwvwxwwxxgfffwgwgwwwxxxvxwwwwvxvwvwhxwwxwwxwwxxxxvxwwwvgwvwwxwwgwwwwwwxxxwwwxwwxxhxwvxwxxvwvvwwwxwxwxxwwwxwwxvwgxwwxgwwwxxxxwxwwwxwxwwwwwxxxwwgxxxwwwwxwxwxhwwwwxwwwwxxwwuWVwfvwwewvwuwvVvvfggvwufgvgfvwgvwvfUwvgwvuwvxwgffwuvffuwgxgvWvvgfeffwwffugwwgwwVvwWwvwvgvwgwwvfuwwwwvvwfvwwvwwwgwvwwwwwfhVvvwvguwwwfvwwxvgffwvwVvvgwgwVvfvgvvwwWwwvxvgfvVgwwwwvxwfxwhfwfwfwwwgvwvgwwWwfwwgwwgfwwfvVwvvwxwwwgwgwvwwgxxxVwxwhwwwWwvwvWfwvggwwwxgfggwwvwfuvgwwfwuwgwwxfwvwvxxVfvwwwxvgvwvgwwvwgwwxwggvwgwwwWvwhxfggwggwgwvggxwwwhhgvwvxWwhxxhWwWwgxgvfwwgwfxfwvvwxWgfwwwwwwwvwxwwwgwwwxxxfvwgxwwwwwhhWwwvwxxgxfwwwwwgwwwwwwhfxxxXfxxwwwwwwvwhxWvwxhwfxxwwvwfwuwvxgvvwvvgWwwvwwfggvffwwggwxvxxvgwwvwwxwwvxgwwwuwuvwwwwwwwwvhwvfgxvhfwwxwgxwwwxgwxwwwxwxvxwuvxhgvwwxVvwxwxfvfggxxwgwxxwwwwwwxxwwxwxxxxxxWwgxwwgwwxvxwwwwxxfVxwvwxfxxwwgwwvwxxwxxhxwxxxxhwgwwxxxvhvwxxwwvwwxwwvvhxwwwxhwxwvwwwwxwxxwxxhxwwwvvxwhgwhwwwwwwhgxhwwwwxwwvwxwwxwwwhxwwwxwxvwwvwwwfvvxwwwvvvghwwwwxwxwwwwwwwxvgxwhhxwhxxwxxwwwwwwwhwgwxxxwxxvwvwxgxwwwxxwwwwwxxvwwwxytgvwffVvvvwgwggwwwwwwgwwVvfgvwvwwWfwwgwwwwwwgwgwwwwwgfwvwvfvwwgvwxxxwxwvvvuvwvwvwwwwwxxwwxxwxfvfgeffggwfwwxvwwwwwwwwxvfgvvvwvfWfxxwwxxwwWvwgwxgwwvwgfwwwwwxwwwwvxwxwxxxxwwwvwwggwxwxwgwwwwwxxxgvwwwvvvwggvvwwWgwwgwhxgxwfwwwwwwvwwwvgxwwwwwwxwwwxxvwgwwgwxfwfvwwwwxxxxwwwwwwuwvwgvvgwwwwwvxwxhwvfwwvwvxgwxwwwwwwwhvwhxxwwwwxwvwwwwwxwxwwwgwwxwxgxxxguvwvxvwhwwwvwwxwwgxwwvvhWvxwxwxwvwxwwxgvgvwvwvwwwwwwwwhwxwwwwwwxwwxxxxwxxvwwvvwwvxwwvwwwxwxwwwwwwxxwxwhxxxwxwWffwwwxwvggwxwxwgxxxxxwvfffwwwxvxwxhwxxxgvxwwgwwwxxxxxxxxwwwwwwwxwwxxwxxwxwgwwwwwxvxwwgwxgwxwxxxwwxwxwxxxxxxxxxxwxwvvgwvwwwxwxxxwxxwwwxwvwxxxwghwhxxxwwwxvgwwvxwwwxxhxxxxwwxxxwxxwxxwxgwwwxwxxwxwxxxhwxxwwwwwwxwxwwxxueuwevvfVvwwuvfvfwvwggvwugwvvfwvvwwfvvwvvfufwvUfwfuwgWvwgvvuvwwgvfgvvvfvuvvfuwwvwwwwwwfwwuvwevfwfvwwgwgvwwwwvvvwwgevvwvfvwfwevvvvWvwfvwwgwwvwwVfgvfVvvwwWwvwfvvvwwwwwvgghwxfwwufgwfvwgwgwwvfwwwwwwxwwwvwwwwwwwfwggwvwxWhwxwxxxxuvgwvwwfwfwuvwwgVfwvVwfufvvgvwgwwvwvwwwvwvwwwfwuwwvwwvfwvwfwwwvwvWwvvgvwgwwxvhfgwwvwwwggvgxwuhvwwWvwwwhhxuxwvgxgvffwwufwvvwwfvwfwwwwvwwvwvwwfgevwwvwxwvwwhwwvwwVxwvvwXwxwvfxxwfxvwwwxwwwwwXxfwwwwwwwgwfwvWwwhxwhwvwfwvuvvvwgfvugwwvwwgvwxvffwvwvvxwgvwxwhxwwgwwvgwvvwvwwwwwxwwwwvwwwwwxwwxwwxvwewvvgwffggWvwwxhxxxgwwgwxwwwwWxwwwxxwxxwgwwfvvvvwgwvwxxwwwwwxwwwwhwvxvxwhwwwxwxxvvwwvwWwvwghwuwwwfggwwwwxfwxwxxvxwvxwwxxwwxwwwxwxxwvvwwgwwwwvwwhwwwwwgwwwwwwxwxwgwxwxwxwxwxhgwwwvwwVwvwwwwwvvwwfxfxxwgwwhxhxwxwxhwvwwxxxwwwgwwxxgwwwwwxwxhxhgwgxxwwwwwxgwwwwwwxxugewFfVwUfuweffvVfwwuffwuwwvwfvvxuvwtfwwfvwvggwwwwvvwvVwfwfffwffvfefgfffwwwgffwwvgvwvffwfvuwfuwfwvwffvxvwwwwxwxwwwVffwefevugfvewfgfffwggwgwwwwwwgfffwwfvgfwvwwwwwfWfggxwWwwxgxxgefvwVuvwvvuwfugevggwwwwgwvwwwwwuVwgvgvwwxwvvgvgwhwfgwwxxwxVvgvwgWvvWwwufvvVgggvwwvdwgwgvvfeWgvvWgwwwwwwWvwxvwwwwwwxwwgVfxwwwxfvwwwwvgvwwgggggwvxwwhfvfwgwhwwwwxwwvwgwxwxwwwwgwvwVffgfugfvfwwwfvFwfwwwWhfwgwwwfgVvwwwWwwvwhwwwwuwwwwxvwvwuwwwwwfWgwwggwwgvwwwwvgwvwxgwwgwwwwwvWwfvwwwwwwgwxxwxwwxwxwfvxvWvwvwvfxuwgwgwggwvwwwwvwwvvxwvwvwxxxwwxwwxwvxwvguwuvfwfuvwwwgvgxwggwwvwwxwwgwvwvwvwwwxwwwwwxxgwxwwwwugggfwvxwwxwhffgwwxwwvwwwwfwwwwxwwwhwwwwhwxhghxwwxffwwxwwgwxxxgwwvwwwwxwxwxwwvwgwwvwwwwxfwvhwXxvxwwhwwxvGvwvvvxgwwwwwwfewgwggwvwwxgwwgwwwhwxwvwwwwhwwwggwwwwwwwxgwwxwwvwxwwwfwwxhXwwwxwgxwwxxwwwwgwvwwwwhXwgxgxvgvwwxVwxvwxwxwgvgwwwwwhhggwgwvwxwhxwxvhxfgghxwhwxxwwwwvwwvxhxxxhxwwxwxwxxwwxwwxghhwhwxwxdvvfvwwwwwgwwwwgvfgwwFvgvwwvuwuwvwwwwwwvwhwvwvvwvtwwvwvwwwwvuvwVvwwwwvwwwgwgvwwwwwvwwvwfgwuwvvwvgwxgwvvvwwvfwggvwwvwvfgWvwffvgwwwwfwvwwvvwvwwwwwwwfevwgwxxwwwwgwgwVwwwwxwwgwwwwwWwwxxwvfwvvwwwvwxwxwgwvwwwfggwgggvvggfwvwwwgwvvwVwwwwdvwwvfwwwwvvvwvvwwwwuwwgwwvwwwvgwwwwwvwxwwwwwwwgwwwwwwwxwvwwwwvwhhwxwvxvwwVwwvuwvwwwxwwvwwwugvwwxwwgvgfuwwWwwwwwwwwxxwwxWvggvwxwvvwwhwxwwwwxxwxwhvwwwgwwwgwwwwwwwwwxwwwwwwwfxwwwwwxwvwwwwwwwwxwwwxwvgwwvwwgwwwwxxwfvwwwxwwxxxwfwwwgxgwwwxhwwwwxxhxwwvwwgvvxwxxxwxhhhwxxxxwvwwvuxvwxwxwxuxxwwgwwwxwxwwwwwwwwFgwxwgxxgxwwwwwwwxwwxwxwwxwwxhxxwxwwxvwxwxxxvwxwxhwwxvwxwxxwwwhwwwwwwfwxwwxwwwwwwwxxxwxgwvwhwxwxxxwxxxxxxwwxvxxwxxxgwxxwwwxxxwxxxxxxwxvwxxufvwwvwvxwVfffvfwgvvvwwvufwguvuvuwwwfgvvwwwvvwfvvwvwvfwwfvvfgvwwwwggvwvwwvuwwwwvwfvwvgvwggwwwfvvwwwwwwvwwvwfvwxvguwgvgwwvwggwwvvwfvuxwxwvvwvvwwwggwwwvvvgwwwwwwwwvgfvwwxwxxvuwvwwxwwgxvgwvgvwxvwgxwwwxwvvfwwvgvggwgvfwvgwggwvwwwxvgwwvvvwvwxvgwuvwwwwvvwfwvxwfvwwwwwwwxxwwhgxgwxhwhvwuvwxwxuwwxwwxwwwwwwwwwgghwwvgwwxfvuvwxwwxwgxvwvwhwwvxwwggvfwfwwwwwgwxxwwxxwwxwvwwwgxvwwwxgxffggxwwwwwxxwxwwwxwwvwxvvvvwvwwwxwvwwwwwwwwwwwvwwwxxxwgwwvwfvwwwwwwwwwwwwwvxxwxwxgwwwwxwxvwxxxwwwwwwgxxxxhwwwvvvxwgxvxwuwwwggwxxxwwwvwwwwxwvwxfxwxwxxwxxwwvwwwwwwgwwWxgwwxwwxxwwgwwwxwxwwwxwvxvwwwwxxwwxwxwwxwxwwwwwwhwwwgxwgxwwwxxxgvwewxwxxwwwvwgxwxxxwwwgxxwwwxwwxxwxxwwxwwwwxxxxwghwxwwwwwuggwfvwVwwuwwfvgwFdvVvfwvwfuwgegfvwwwvvgvwgvvvgfgwwwgvwfvvwwfvvwwwvgfwfgwwgwvwwxfvwuwvvvfvfwwwvxwwvwwgwwwwwwwwwwgffwgvfvvwgfwgvvwgwwgwgfWvwfuuwfwwvwwxfvgwwgggwwwxwgwwvwwwvwwgwwxwgwhxwhvxwfwwvgwwwwhggxwxwWwwwhwxhwxwwwwwwfgwfwvxvgggvwwwwgwwvwwgvvwgfxuwwfwvxvgwwgwwwfvwxhvwxwwwxgwwwvxwxwgwwwwwwwwwwwvwvwwhxwhggwwxgxgwwgwvwwwwxxwwwhgxwwwgggwwxvgwwgwxwxwwwwWwwwwwwxxxwwxwgwxwwwwxwxgwghwxxxxwhwwfxhwxxgwxxxwxwxxwxgwwwwwwgwwvvgwxxvvxxxwwwwwwxwwgwwxwxwxwwwxxwxgvwwwwwwxxwwxwxwwxwwxwxxwwxwwwwxwxwggwxwxxxwxwfwxxxgxwxwwwwxwxwxxwxwgwxwxwxxwxwwwwxwgwxxwgxxxwwwvghwxxxwxxwwxxwxwwxwwwwwwxxwwwwxwxxwxxwwwxxwwxxxwwxwxwxxxxxxgwvxgwwwxxxwwwwwwwwwxwwwxwwxxxxwwxxxxxwvwwxwwxhxwxxwwxxwwxxxwwwxxxwwxwvvwwwwwwwwvvwwwwwwwwwvvfvWvvgwwfwwwxvguvwwwwwwwxxfwwwwgvwwwfvwgvwfvxeuuxvwvgvwvfwvwvgwxwwfvvugwfwwfwgwvfggwvgvwggvwvxvvgvwwwwfwxvgxxf5SfvvvvwggwwwwgvvgxWuxwwwwwwfWvwvwvwwwxwfvwWvwwwwwxxxfwfwgvgvwwwwwghvfgvvwgxxxfwwwwgvwwwwVuxwgvfvfvxugwvgvwfvvxgvwvfwwfgfwuwvwwwwwggwwwwfvxfwwvwwwfvwwhvwwwwwwggwvWvxwwwwwxwwvguxwwwwxwwgvfguwfvwwwwxwxwwgvwhguwxwxwxxffwwggfwxwwgwvvgvgvxghwwxxxwwwwugwwwxxxxuwvwwwxxwwwWuwwgwwwwxxwghxWuxxxxwwwwwwwwhVewwwwwwxwwxggvwwwwwwwwwwxwwwwgwwfvwxvwweuvwwwwwwwxhwgwxwxwwwxwwwwwwwwwwwwxxgwwfvgvwwwwxwwwgvgwwwwwxwwwwggfwwwfwxwwhwwwwwwwxxwwwwwwxxwfwwfwwwwwwwxwwwwxwxvvgwwwxxwxgwwVuxwwfvxvwwwvwxwwwwgwwwxwwxwwwwwwwxwxwwwxwwxxfuwwxwwwuhwwwwwwwwiwwxxwwwggfwxxwwwwwwxxwwwfwwfxwwwwwxwwxwwwxxxwxwwwwxggvwxxwxwwxwxxwwggwwwwxwwgwvwgvxwwwxwxxxwxxwwwxvgvwwgwUvvwugvwwgwwgvxugvwfwwwUvvwvwewgvwwvggvVwwwgvvwwwwwwvewwwwgwwgvwxgwwvwwgfwvwwfvwwwgfvwvwwwewxxuvgvUgfwugvwgvewwwugvwvvwVwwwxwgvfvvwWWfwwwwfvvwxwwwwwwwwwwvwwvwwwvwgvwwvgwvwwwvxwuwvxvwwvgwwwfwwewvgwwwwwwgvwwwwvwVgwgwwwgwwfvwwgwwvwwwxxWvwvfxVwwwfvvvUvvwwwwwwwwxwxwwxxxwwxxfwxvwxxvwxgwwwwfwvxwwwwxvwwgwxwxgwwwwgvwwwgwvvwwwvwwfwwgwxgvwwwWvwewwgvwwwxwwvxxxwwwxwwvxxwwwwxxxxfwwwfwxxwfwvwwwxvxwfwwwxvwwwwgxxxxxxwwwvvwwwuwwwwwuwgwwxvxggwwwwwxxxwxwwxxwwxxwvwxxxwxwwvwwxxxwwwwggwxxwwwwxxxwwwxxxvwwgxwxxxwwvwwwVhwxxwwvxxxwxxwxxwxxwwwxwwuxwuwxggvwwwvwwwwwxgxxvwxxwxxxxwwwwwwxxwwxwxxxgxxxxwggUxgxywxxwxxwxwxwxxwwwxwvgxwwxxxwxwvwxwVwwxwxwwgxxwxwxxxxhxxxxwxwwxxxxxxxwwxxwxwwwxxwwwxxxxuwwxVvwwwwwvggwewvwvvgvvvwfvvwfwwwwwfwVewwfwwfwfwwwfwwwwwwwwVvwwwwvvvwgwwwgWwwgfwwwwwwwvuvvvwfwggxxwxxwwwvwxxggvwgvwVufwggvwwwwefuwwgvxwwwvvwwwwwwwxwvvwxxxwwxwwwwxwwwwwvwfvggwxwwxwgwwwgvwvvxwwwwwxwfvwxxxwwwvwwwwwwwwwgwwwwwwwgxVgxwvWwgvvwfwwwwwwggvuwhxxwwxgxxvwgfwwwgwwwwxxwwwwwwwwwxxwgwwxwwwwwwwwwwwxwgvxwgvvxwxwxxwwvgghwwwwxxgwwhvwwwwwwxxxfvggwgwgwvvxxxwwwxgwwwxwxwwwwwvfwwwxxxwxxwwfwwxwxxwwfwwwgvxwxxxwxxwxxxxhwwwwwxfvwwfwwwfvxwwxwwwwwxwwxwwwxxwxwxwwwwwwwwgxxxwwwwwxwwxwxwxxxxwwwwwwwxwwwwvwxwwxwwwvxwwwwwxxxwxxxxxxxwxwxwwwwwwwwvxxxxwwwwwwwwhxxxxwwvwwwxwwwxwwxgxwwxwwwwwxwxxxxwwxwxxxxwwxwwxxxxwwwxwwwwwxxxxwwwhwxwwwxwxwxxwwxwwwwxxwxxwxvxwwxxxxhgxxwwxwxwxxwxxwwwxvxwxwxxwgwxxwwwxwwxwyrwfgfufegggwfVufwvwvgwvvwwvwwwwwvfvVdewgwwwwvwwwwgxwgwvfwgugvwwwewUvwwvwwggewxwxwwwfvfvevvdwwvevwwwwvuxwvfgfwf4BvwwwgvvwwvguvwvgwvvwwwwwwggwwvwwwgvwgvgwuwwgwxwwwwwwWugvwefwwwwwvgwwwxwwwxwvwvwwvuwwwvvwgvgvwwwwuvvwwweggvwgugfgvufvwwgvvwwwuVvfgwwvfvwvffvfgvxuwwffvxwwvgdwwvwxgwwwwWgfgvgwWuwwxgwwwvhwxfwgwwvvwwVdwgvhvwwwwwwwxvwwwwgvfVdfvvwwvvvwwxvvwfwxwvvxxwgfwuwwvvwwwwwwgvgwwvxwxwwvgvxxwwwgwvgwVdvgvwwwfxwgxwwwwhwwxvgwvwwwwwgvwxwwwxwwvwwfwguvwxwwvxwVdvgwvxxxvwwwwwwwghwwxwwwwwVwfwwgwwhxxxxegwgvhxwwwxxvghfwvvwvvwwwwwxwwwvwxhgxwvxxwwwwwwgxwwgxwwxwxhgwwwwwvwxxxvxwwwwxwwxvuvvxwwvwxwwvgwxwxwgwvwgwvVxwxwwwwwxvgxxwwwwwfwxwwwwxwxhwwxgxvhwwwwwvgvhxxwvwxvwghwgvgxxwvgxwvgvwwxgvwgxvhwwwwwwxwwwwwxvfwuwvxxwxxwwxxwwwwwvwvxxxvwwgwwwxwwxwwxvwwxwwhwwwwwxxxhwwwvwwgvwwhvwxuffwevvvfwwwwwgwVveffwvgwwwwheevguwwuwwvwwuUfuwvwwwwfvuvwvevwfvwuwuwgvwhgwguwwgwvfwuwvvgwfxvwhwvvuwwwwvxwwwwewvfvfUwfUwfffvVeuwwvffwwvwwVugfvvgwvwwwwwwgVvfggwgwxxwffufvvfufwvwvhfvvvwwvwwxwvwvgvvvwffvhwwfvwvwgwvwwgwwfvvvvgvwwfgfvvwwfgvwvwvfgwvgvfvuuvwgvwwuwvvvfwvwwwgwwwvfvwvwwvwvwxwgwwwwwwwwxwxxgwvwwwwwwwwwxwxwwwvwvwxwwxwwwwffUWwefgwvwwwfvvwwggwgvwxwwwugvxvwwhwgwvxvwfvwgwwwvwxwffvwwvvwhwxxwwwwwxwwwwwxwwwwwwxwwwxxwgwxwwwwgwvwwfvwwWwwwgwvwwwwwvwxwVwwwwxwguwwvgwwvwwwvwwwWwwgwhvwwwwwwwxwxvwfvuvwfgwwvwwgvwwwxvxwxxwwwwvhwwwwwxwxwwwwWxvxvxwwwwvvwwwwvwwwhwwwvwvwwwwhxwxwwwgwvuwhxwWuvvwwwwwwwwxxwwwwwwxxggwwxwwxxvwgxwxwwwxvvxwwxwhggxwvxhgxwxwwwwwwgwwwgxxwxwxxxwgwxvvgwwwggwwxxgvwwwwwwvwxwxwgvguwhwxwwxwxwgxxvxwxwwwxxxxvvwwwxxwxxwegffvfwgvwvvgvwwwwwfgwggwwvggvvgvwwvwwwwwvwwWevwvwVwwvxvwgwvwvvvwggwVvuwwxwwwwvwwwxwxvwwwfwvwvwwffwwvwvwxwhvwwwgwvwggvvwwfwggwfwfwgffvvgggvvggwwwwwgfvgxwwgwgwxgwwgxwgxwwxwgvggwvggwvwwgvwgwwxwwggxxwwwgggwvwwwwwxwwwwwggvwgxgwgfvxfgvvwgwwvvwvggwwwggvvxwwgwhfwwwwgvvxwgwwgwwxwxwwwwwwgwwgvgvwwgwwwwgxghwvwwhwwxhwwwxwxwgxwwwvwvxxwggwwxhwwwvwwvgfvgwvwwwwwwwgwwwggxwxwwxwhvwgxxxhhwwwwxxhxwwxwwghxvxwvgwwwwwxwxxhgwxxwxwwwwwwxwhwxxxxxxhwxwwwwwwwwwwwwgxwwwggvwwghwwwwgvggwwxgwwwwwxxwxwxwwweuvgwwwwxvxxhwvvvwwxwfwvwwxxxfwwwxwxwxwwwgvwgwwwwfwwwxwxxxhwhfvvgwwwxwxxwxgvxgxxxgxxxwwvgxwvxgwxxwxwwxxwxwgwxxwwwxgwgwxxxwgwwwwwxwwwgxwxwxxwxxxwxhxxxvgxwxwwwhhwwxwxwwxwxwxwxgwxhwxwwxxghwxxxxwxxwwwxwwwwhwhwwxgwwggwwgxwvwvxwgwxgxxwxgggxwwwxwwwxwxwvhwwwxwwxwxwvwxwwxxxhxxwwxwwwvwxwwxxgwgfxvwxuwwvuwfwfvgwufxgvgfwfwffwvwwxwvxvwwwwwwwvxwwwwwwwvxwwwgvwwfwwxwwfwwgwwxwwwwwwwfuufwggwwfwwwvvwffUfwwhvwwvvwwwwgwwwwwxxwwwgwxxwwxwvwwgwwwwwxxvwwvwwwxxwxwwxwxwwwwwvwvgwxwwwhwwwfwxxwwwfwwwxwxwxvwwxwxwwxwwwwwwwwwwwxwwwwwwwxxwxxwfwwgwwxwwvwwwwwwxwwwvwwgwwvwwxwwwxwxwxwxgwvwwwxxhwwwwwfvvwwxxxxwxhhfxxxwwwxwwxwwwvwwwxwgwwwwxvwwwxwwvwwwwwvwxwxxwwwwwwxxwxwwxwwgvvxwgWwgwuxwxwwwwwwwxxwxwxxxxwxxxwxwwwwwxwwwwxwgwxxxwwgwwvwwxxxxwwxxwwwwxwxxwxwxwxwwwwxwxxxxwxwxxwwwwwwwwwwxxwwxwxwwxwwxxwwwwwgwwxxxxxwxwwwwxwwwwwwwwwwwxwwfwwxvgfvvgwwwgwwfvvvwwwvwwvwwvvwwwvwwwVewfvvvwwwwwwfvggvwxwwvvwwwwwfwgwgwvwxwxwwwwwwvvfvvwwvwvwvxgwvwwwwgvwwwgvvxwwwwwwgvvwvvfwwwxwvgwVuvvwfwvwevuggvwgwwwxxwwwwwwwwxwwwgwwwwgxwxwwwwvwvxvwgwwwwwggwvgwxxwfvwwwwwwxxwgwvwwggwwxxxxwwwwgvwwfvvxvwxwwvwgvvwxwwwgwghwwwxwwxwxxwwwxwxwxxxwwwwwgxwggvxwwwgwgwhhwxwwwxxwwwwgwwwxwwwwwwgwxxwwwxwwwwgwxggwwxwvwggwggwxxxxxwwvwxxxwgwxxwxxxwwwwwxxwxwwwwxxwwwvxwgwfwxfvwwwwfvxxxwwxwwxxxxwwwxwwwxgxwwwwwxxwxwxxwwwxwwwwwwwwwwwwwwxxxxxxxxxgwxxwxxwxwwwwwxwxwxwxxxxxwwxwxwxxxxwwgwwxwwwwwxxwwxxwwwxxwwxwwwwxwwwwwxxxxxxxxxxxxxxwwwwxxwgxwwwwxxxwxxyxvwwwxxxvwwwwxvwwfufwwvvwuwvwffuwwwwgugwwfvvfwvvwfgvxwwwfgvwggwwwwxxwwfwwvvvvwvwwvwvfvvwwwvwvvggwvewwvvvfwwwvwvwvgvvwgwvfvwvvwfwwwwfwvgwvwwgwvgwvgwwggwvvwvhgvwwvgwwwxwgwgxwwxwxwwwwvwvvvwwwwvwgvvwxwvfwwwwuwvwwvvvwfwxxvwvvvfxwwwvxwwfwwvgfvvgwwvvvwggvwwwgwvwwggwewgwvvvwwvwwvgwgfvwggwfvgwgfwwxwwwwwwvvwwwfwwwwxvgxwxwfwwwwwwwwwwwwxxgwwvwwwwwggwvwwgwvgxwgwwvvvwwwwxwwwwgvvwxgwfhgwxwugwvwgvxgxwvwvfwwgxfwvwxxwwwgxwwvwhwgwxxwxvwwwwxwwvwwxwwgwwwxwxxwwwwwwwfvwwwwvwwwwwxwxxwwwxwwwxwwwwxvwvvvvxwfxwvvwxxvwwxxhfwvxxxxwxxxvxwggvwxgwvwfxwwwwwxgwxwwwhxvwwwwwwwwwwwwfwxwwwwwfwxxwwvwxwxgxwwhwxgwwwwwxwxgwgwwxhwwxwhxvxwxwvvwgvxxwxgvwgxgwxfwxxhxfwgxgxxxwgxwhxwgggwvfwwxxwxxxxwwxhhfxxwxwwwxwwwwwwfwwxwwwgwwwxwwwwxxwwxxxgxwvwxxxhwxgwwwwwxxwhwgwwhxxwvxwxwgxwxwwxxwxwxwwwvwwxwwwwxwgwfwwxugffvffgvwwwvwwwgvvwfegfuwvvuxvwwuwwwfvvwuhgwvvwfvgxvxwgwfwwfvgwvwwvxvgvvgwvvvxwxwxvwvwWvwgwwgfgvvwwwwvvxvwwxvwfwvwvvwgvgwvfWvWvwwvgwwgwxwggwgvvvwgwvwwwwgvwwxwwwxwwxwxvxvwgvuwfwxwwxxwxxggwvwvwffgwwgwwwwwwwxgwvxgwfxggvwfgvguwwgfvxwvwwwwwwwwvfwfvvwvwvvwwwvgwgwwgwwwwvwwgfwwhwvwwwxhwxwwxxxvwwxxhgwvuxxwwwuxwwgwvwwxwwwwwwxwhwwvfvgwugxxwhxxwgwxxwwwxxwxggvvwvxwwvwxgxvwwgwxxwwxwwgwxwwwwxwwxggxxxvxwwwwxgfvwwfxxwxwwxxwvggxwwwwgwgwgxwwgwwwgwwwwwxwxwwwwxxwwwwwwwxgvwwxxwuxwwgwxwxxwvwwxwxwwwwxgwwxwwxwvwwhxxwxwwwwggvxxxggwxgxxwwhwxxxwwwgwgexxxxxxxxwwxwwwwwwxxwwvvghxxxwXvfwvhgxwxxhwwwwwwxxxwxwxwxwxwxwwgwxwwwwwwvxwgwxxxxwxwxxxxxwxxwwxwwwvwwwhwwwxwwvxwWwwwwwvxxwwwvvwxwxxxwxhwvwxxhxwfwxxwxxxwwxxwwxwhwxxxxxwxwwwwxxxwwwwwxwwxwghuvvwfvvewwvgefvwwFduwwfvwwfwuvgvwvwwvgfwefvvvvgwvvxwwwwvhvfwvwwwwwwvvgwfvwwwvwvwwfvwvfgwwwvvvwvwvwuxwwfvwwwwfvwwgvvwwgffvvvwfvvwwvgfguwfvvfwwwvwfuuwwvwgvwwxwxxgwwwwgwwwvwwxgwwwxwgvvwwwwwwvxwwwwvwvwuwwxxwwxwvvwvfvwgfwgwfggwwgfwgwwwvwwxfwggwxwgvfxwwwwWvwgvwwgfwwwwwwxgwvwwwxwwwxxwwggwwwwwwwxwvwxwwxwwwwxghvgwwxxhvxwwvwwwwhwwvwwwvhvwwghxvwfwwhwxwxwhwwhvwvwwwWwvxgxhwwxxwxwhwxvwwgvwwwwwwgxxwxwwfxwwxwvwxwvwwvxwxwwvvwwvgxwvwwwwwwwwwwwwwxxwwwwwwwwwwwwwwwwwwggwwwwxwxwwxwwwfwxgwxxwxxwxwwwwxvwwvwwwxwwgxwwwwwwwwwwwwxxxwxxxxwwxwvvwxwwwwwwwxxxxwwxwxwwwwwwwwwwwxxwxwxxxxwxwwxxwxvwwxxxxwwwwxwxxxxwxwxgwgggwxwwwvxwwwxxwxhxwxxwxwwxwxwwwhdggwwvwwwwwgdfwvxvvfwwvwvwvwguwwwgwwwwgwtwugwwgwvxwwvvxwgwwgwfwvvvvwgwvfggwwwvvvvwxewwxwwgvgwfvwwwFwvhwggwwxwwwuwgwvwfuvvggvwvwwxvwfwffgwwvgwxwfwwgwwefgwwwwgwvgwxvwwwwwxwwewgwwwwxwwwgwugwvWvwwwwvgvfwuxwwwwwwggwwuwxvWvwxwwxgwwwvxwwwgevwvxwWgvwgwwwwwwwwwwgwgvwxwuxxgfwvgwgxwvxwgvwwwwwwwvxwwwwvwvxwxxvwwwwwgwwwgwwwxwxwgwwwwxhhwwwvwxwgwvwwwgwwwxwwxwwgewwwWwwwxxwhfvwxwxwwgxxwgxvwgwxwxxxwvwwwxwwwvwwhhwgwwwxxvwwxwwwgwwwhwwxxwwxhwxxfwwwwwxwwwxwwwwwgwwwxwwxwwwxxhwwxxwwwvwwxdvxxvxxwxwwwwwwxwwwwwxxxhxwwwwfwwwxvwwxhwgwxwwwhwwhgwxwhxwxxwgvvhhwxxwfxwxxxwwxwwxwwwxwwxwgxwvxxwxxxwwhxxxxxwgwvwxxwvxwxwxvwwxxwwxxxwxxxwwxxxfwgwwxxwwxxxxxxxwwxxgwxxgwxwwxxxwxxwxwxwgxwxhwwxwwwwgwwxgxxwxguxxwWxwxwvwwwwwxxwxwwwwxwxxxxxxxxwgwvxwxwwwxxwxwxwxgxxxuffwfvvvUvvvvfwvwfwvfgfvvwxdvwefvwwwwwwfvvwwwwxefwvfTcfwvwffgwvvvwwwxwvwvwwxvvvwvVwwvwvuxvfwvxwwwxxxfcefwTefvfVfwfvvvfffwwvwwvgwwvxvwfwvfvwwvwwwwwgvwxxxvwfefvfFVffwwwwwwgwwgvxwxxfwvwwwwxxwwxwgwgxfvvvvvvwfgvwvvwuTewwwWfuwwwwwtvvgvwwwuxwvvvwvwwwwxxwwVewfwwxvggwwgwwwwwwwwxwwwxhgwvwwWvwwxvxvwwxwxwxxwxhxwcfevVuuwVfugwwxefVwwgWwwwwVwwwvwwwwwwwwwwwxwwwgxwwwwwfuvwwGVhwwvwwwwwxwhxwwwwxxxwwwwgwxwwxxhxxwwwvUwuwwwwwwwguuwwwwxxvgwvwwwwxwwxxxxxxwfuwvggvwwwwwwgwwxhxgxfvwvwwxxwwwxwgWwwxwwwwwwwfvwxxwwgvwwwxwxwwwwwwwwwwwxxvxxxxwwvvwwwwwxxgxgxxvgwxghwxxxwxxwugvwgwguwwgwfxwgxvxxwwwxgvhwxxxwgwwxwxxwwfggwgfxxxwwwgxwwwwwxxwgxwvwxwwwwxwwwwwhwxxxwxxwwwvvvwwwxwvwwwwgwhwwxwwwgwwwwwwwwxwwwvwwxwwvwxxwwxxhxxwxxxwwwwwwxxxgwwxxwhxvvwuwwgvfvwwvvfvvvwvwvvvwwwxwwwwwxwwxvvwgvefvvvWgwgwwwwxxwwvwxwwwwvvhwxwwxwwwwwwxwuwwfvvgvfwgwggvwwwvwgwwwvwwxgvvvgwvwwxxfwwxwxwxgvfvWgwwgwvxwwvwwxwxwwxwwwxxxvwgwwwggvwwwwvwwwevgwwwvvwwxwxuwwwxwxwvvwxxwwwvwvwwxwwxxwwvgXhwwwwwxxwwwXgwxxxfvvwvwgwwwwxevgwwwvgwwwwwwvwxxxwwxwwxwwvwxwwwvwwxwwwXhwwxxxxwxxxvwwvvgvvwvvwwwwwxvvxwwxwwvvvhwxvgwxwwwxwwwvxxxxhwwwwvwwxwwwxxwxwxxwxwxhwxwxwxxwxxxwxxxxxxwwxwwwwwwfwwuwwwwwwxxwwxxwxwvwwwwwwwwxwwwxxwxXgwwwxxxxhwxwwwwwwwwxxwxxwwwxwxwwwxwwwxxwwxxxwhwwwdVVgevvfvvfevwevvvgwwfeffgvvgwwwvwwwwwwvwUuvfwwwvuvfgvfwUUdegvwvgfwwggwewxwvwvwwuvuUggwvwvguwxxwwwvxwhuwwxwwdUVvufVveduuffwfVUvgwwwVgffvgwffwwvuwwxxxvwuwvgvwggwwwwffeuWfgwfWgvvwvwfggwgwwhxwwwgwwvvwvwwxwwwwvwvwvwxWwwwxwvfwffuwwffewvwVVfwxwfevvgxwwhvevvgwwwxxFWfwwwwwfwwxwhwwggvvwwgwUvgwgvwWWwgwwxggwhxwvfgggxwwwfwwfwwwwwgwhwvwxgxwwdVfugwwwgvffwFVegwwwwvvwguffwvwfxwxxxgxwwvwwgwxxxwwxxwfffgwwwwWfxvfVwggvwxwwwgggwwxggwwwwgwwwxvwwhwxwxwwgwvfwwwwwvvwfvxwvffwwxvvwwwwwfvvxwwwwwwgfdvUwfwvwwvgwvwwvxwvhuwwwgwwxwwxwwwwwwxwxxhwxwgvwwvwxwwwxwwwwuwxgvwxwwwgwwxwwwwwxwwwwhwhwwgwxvfwfwxxvvwwvwwxwwWxwwxvwwwxgxxwwwwwvvevWwwvxvxwVffwxxxuwwwxwxwwwxwxxxwwgggxwxxUwvwxwvgvwvwgwhwwwwwxxvwwxxwgfgXwgwxwwgxxwxwuvxwxwxwwxvgxwwgwwwwgvwwxwwxxxwwwxxwwvxxxwvwwvxwxxwwwhhwwwwvxwxxxxxxwxxwwxwxwuwfwvvwfwwvwwuvvwuvwwvvwwwvwvwvwxwxvwwvwvvwwvwwvwvwwwweewwvvwwfwfevwfwwvwvhwwvwuwwvwwwwgwvfxwwwxwwwuvvgvefwfgwgwueewgvfffvwwVwxfwvuuwgwwwwwgvvxgwfwwxxfeewvgwwwwvvwwfgwxvwWwhxwvwvfwwwwwwgwwwgwwxgwxxwvwwfvwvvwwwwweewggwvevwwvwwgwvwvvvwwxvwfvwxvgwwwwwxwvvwwgvwwwwwxgwwwwxwwwgwvwwxwhwxxwwxxwwwwwgwwwvvwwwfwwvwweewwwuwwvvvwvvwgvvvgwwwwwwxuwwvwexwwwxfwxvvwwwwwvfwxvwwgggxgwgwvwwwwwwwwwxxxvfvwwgwwwxvwwwwwwwxwvwvwwwxwxwwwwxwwwwgxxwwwwwwwxwvwwxwwxwwwwhxwwxwxxxgxvwwfwxwwwwxxwwwwWwxxggxwwwwwwXwvxwwxxwvxwwvwwwgxwxwwxxwwxwxwwwwhxxwxvxwwwwgwwwwwwwwxxxxwxwxwxxwwwhxxxvwwxwwxxxxxwwwwwwgxvvgxwxwxxxwwwwxxwxwwghwwwwwwxhwhwxwwwwxxwwwxwhxgwxgxxwxwwwxxwwwwwxuwvwwwwwwwwvvwvwvwguVfhvwwvwwwWvgwugwwggwuuvvwvfuVvwgefxwwwfVwwgugwvvgwwwvwwwxxvgwwwuvwwuvwvwwwvwwwxWuVvegwwwvwugvwxgxwxfuVwwvfwwxwhvWwwgvgwwwwxwwxxwwxwwwwwvwgwvvgxxgWwxvwwwxvwgfwwgwvvwwwxwxxgfwxfwgxvwwwwxwvgwxxwwvwxfwghwwvughxwhwwyvvggwwwxwvwwxwwwwwxfuvxwwxvwwxxvwwgwwwxwwvgwxwwvwxxwhxwxvwwwxxwwwwvXgwwxxwwvgwwwxxvVwwxwwwwwwxwgxwgwwwwxwwwxwxwxwxwxxwwwwxwxxxxwwxxwwxxwwgwvwwvwwxwwvvxxxwvwwxxxwwgxwwxxxwvwwhxvwwxwxxxhwhwvwxxxxxwwxwvwwwwwwwwwxxxwwwxwxxxvxvwUfwwfvwffwvufvwvVvwwwvveefwwfvUvvvvfwwxvwuuvgfwgvwgvgxwwwggwwfvwfvwvwwwgggwvgvffwggwgvwvwwwvwwwgwxxwggfwwvwxggwwffvvufgwvfwwvwweVvwwfvgfvwwvfwvvwgWvuwfwwxgvwwggwwwwvxxgwfgvwgwxwwwwgwgwvwwgwwwxxfxvwwwvwgwwwxwwwwwwvwwgwxvfwwvffegwvfvwgfvwwwhvvffvwvwwvvwfwxvufwwwwwgwvwvwvgwwwwwxgwwwwghwwwwwwwwgfgvwhvgvhfxvwwvvgxwwwxfxgwwwwwxgxvwgwwXwwfWvvvvwwfwwwwwvgfvwwgvwwwfgvwwvgufxvwwwwxwwvvgwvwgwxwwxfxvwfwxwwwxvwwwxxgwgvxwhgwwxxwwwvwwgxwwvwxwXxvwwwwwvvvfvwvhwwwwvwvwwwwwvwgwxxvwgwwxwvgwvwxxwwwgvewvwwwwwwfwwgxwwvxwxggwwwwxwwwxxwgwvwxvwwxvwwwwwxwvwwvwwwxwxwwgxwhwwxxwwwwvfxwwxxvxgxwwwxxwwwwxWvwwvwxwxwwwwxwxwxhwxwwxxwwwgwwfxwgfwgxVvvvwwxwwxgwvwxwwwwxwwvwwwwhwWxwwwhgvxgxwwxxgwwgxxwwgXxvwWwvgwwwxXxwxxgvuwgwwfwwgwuwvwvwxvxxxwwwwwfwxwxxwwwxvxvxwgwvwwwwggWwwwxwwwwwwwwghwhvxwwwxwgvgxgxwwxxwwWxwwxufggvwwweuwfwgfwvwfwwvvwwwwUvvwwffwwxwwwwuffwwvwgwvfuvwvvvwwvfwgwfEdwwvfwvvwxxwwvgwwwwgwvwxvwwwvxwxvxxxwwTdfwvvffggveevvfvgvvwwwvffwvvwfwvwwfvvvgwwwwwffvvwwwxgwwwfVgewgwxwwwxwwwwwwvwxwxwfxwwwwxxwfvvwevuwgwvvvvwwvwxfggwWgvwgvwvvwwwwwwwxwgVuwwxwwwwwxfvwxwwxhvwxwggwwwwxwwxxwwwgvwxxxwwhdgvvvvggvwwgxfvvwwgwvxvwwwhVfuwwxwgwwxxwwwwvwwwfffwwwwxxwwwWewxwwwgwxxwwvwxxwwxwwxxwfxgevwwxvwgwwwvxwwwwxwwvxvguwwgfwxvwwwxwwvwwxxxggxwxxwwxwwwwvhwgwvwwvwxwwwwxxwvwwxwwwxxhxwwgwwxxwwxxwwwwxxwwvhwxxwwwvvvwwvvxgvxxwwwxwwwfvwxwxxxxvwxxwxfwwwwwwwxwwhxwwwxxxxxwxwxwxwwxwxwwwxwfwwxwwxxxxwwwhvwxxwxxwwwwxwwwwwwxxxvwxxxxxvxuuuwvwwuwwvwgwdvvgwvwefgwvwvwvvwvwefgvwwwwvwvvwvvvvvfwwwwwvwwwgvfwwguwfwwgvvwGwvvgwwwvwvwgvvveggwwwwggwgfvgwwwwwxfwfvwwvwwvgfwwvwvWvvvvuevvvhwwvwvvgwvvgwwvxwwffuwvwuvwwgwgwwvvvvvvuwwwwwhvwwvwvwxwvwwwwwwwewwvgvwwvwgvwwgwuwxwuvvwuuvwvgfwgfVfwwwwwvwvgwxuwfwvwwvwwwwwhvuwwwwwwwwwwvwghwwwwxwgwwgxxwwwwggwwwwgwwwxgwwwvwwwwwwwxxWgxvwggwxWwwwfwgwwxWgvwwxwwVuewwwwhvvgvwgggwvwvxwwxgWxgxfwguwvwXgvugwxwwwvfwwwxxwwwgwwvxwwvwwxvwvvwwggxwxxwgwwxgwwxwxwvvxwwgwwgwwvwxvvwwwxwxwwwwwwwwwxwxwwuwwvugwxvvvxwwwfxwwwwxxwhwwxhwvxvvwwvwvwvvwxwwgwwwwvxwxwwxwxwwwwwwwwwwxwwwhwwgwwwvwwwwwwwwwwwvwwwwwwwwxXwxwxxwwxxvwwggvwwwwwwwvxvhwwwwxxwwwwwxwwwwwxwwwwwwwwxwgwwvhxwxwwxwxwwxwxwhwwwwxwxxxvwwwwwwwvxwwwxwwxwwxxwxwwxvxwxwwwwwxwvxxxxxwwwxwgwwxxwwxxxxxxwxwwxxhwwxxvvxfvwwwwwwgvwvvwwwfvgfvfgvwwwwhvvvgvwvggwwggwvvxwwgwwguwvvvwwvgfvxvhwwVvvwXgvxwwxxwwvgvhgggwhxwxwxwxxxwwwwwgvvgwvwWgvfggfffwwgwxgvwwwwwwxwgwwwxxwwwWgvwwwwwwfwxwWgwgwgwxxwwwxxwxvxxxxwxxwvwxwfwvwfxgwvxevwvxvvvwxwwwgwwxvwxvwwwwwxvwhxwxgwwhwgwvwgvvhhxhwxWwwwxxwxwxxwxxwwgwxwxxxxwgvwwwgwwvxfwwgxwwfwxwfwgwxvwxwxwxvxgwwwxwgxvwwgxwgwwwwxxwwwwwwwwwwwxwxxwxfgxvwwxwwgwwfwgwwwwwxxvwwxgwwwwwwxfhwxwxwwxxxhwwhwwxwwwxxwwxvwwwxxwwwwwxxxxwxxxwwxxxwwwwxxwxxxxwxxxhxwwxwwxxwwwxvwwxhwwxgxxxxxwxwwxxxwxxxgxxxxwwxwxxxwxwwxxxwxxxwxwwwxxxwwwxwxwxxwxwwxxxxwwxwxxxxxwxxxxxxxxwxuwwxvwwgvvxgwvwwgwvgwwwvvwwwwWffwgwxwwwwwwvgwwwwwwvfxwWvuwwwvgfgwwwwwxwwwwxvwWffugvvwgxxwwhvwwwxxvvwWffwgWwwwvvvvWwxwvgwwwwgwuxwwwxwxxWffvgvfwwxwxhwwxvgwgwxwwxvwwwwvwgWfvgwvvwgwxwxwvfwwwwWfvvgwwvwwxwwwxgwgxwwwwvwwwwwvwvxgXwwwxwwxwxwhxwwwwgwvwxwwwhgxxgxwguvvgwVfwvwwxwwwwwwxvwggwwvwwxwwxwwwvgvvgwvgwwwxxwxwgxxxwxhxwwxwwwwvgwwvxwwwxwvwwwvwwwwwxvwweggwxwwxvxxwwwxxgvwwwxwXwwvwwxxxvxwwwxwvxxxwxxxxwxwgwwxwwxxxxwfwxhwxxxxwwwuwgwwwxvwhgfxwxwwwwxxxxwxwwwwhwxwxXhgwwwhwhvxgxvwwwwwxwxwxwwxxxwxxxxwxxwhwwwxxwxfxvfevwvwwvvvfwwwwvwgwvvvvwvfvffvgwwfevuwwwvwevvwwewwfvvwvvgvwxwxfWgwwxfvvwgvvwvwwwvwwxwvwxxxxevuwfvvfffwvwvwefvvwWvxwvfvgwvwvvggwgwwfvwwwwwwwggwwwwffvwvvwwgwvwwgvwvwvwhwxwwwvwwgwwgwwxwxxxvwxvwwvvwvwwgfvvvuwfgwwxxwvwwxvxfVfvvwwwWwwwwxgvvwwwwwwwwwgfexwwwvwvwvxwwwxwhwxxwfvvwwwvxwgvwxxgxxyvxxfgvwuvvfvwxwvfvwwwvvfhwxwgvvvwvwvvvwwvwwwwwwgwwwvxxwwevvwvxwwxxwwwwwwwvxxwvwwxwwwwwwxwxwwxvxxwwvwvwwwxwgwvwwwhgwvwwwwgxxwxwwvwvwwwwwvwgvWvwwwxwvwwxxxxvxwgwwxwxvwwggxwxwgvvxvwxxwwwvwxwxwwgwwvgwxvxxfwuwwwwxwvfwxxvxwxvxxxxxxwxwfgwwvwxwwwxwwxxxxwwvwxwwwxxxwxwwxxxxxwwwwwwxwwxwwvwxgwwxxxxwwxxxgxxhwvwwwxgwwwwwwwxvgwwhxxvwgwxxwwwwxwwwwwxvwxxxgxwxxxwwxwxwxxxwwxwwxxwwwxxuwwfvwfwvwwvuwwvgwffwfwvvwfwvwvvwfvgvwvgvwwvvwwvxgwvwwvvxwxvwvwgffwewwuwwevwxwfwwvwvxwxwhxvfwxvxgwwwvwgwwwxwwwwgwwgwxgfwwfvWvwggwfvfwWvxfwwfxwwwgwvvfwvfwgwgfwwwwgwvwwwwwwwxwfgwgwwwfgwwxwggxwwxwwhxgxwwxwvwxwhwxwwwwxxgwxxgxxwwwwwUgwfwevwwvwVxggwwvwxxwwwwwfwwwgwwvwxvggwhwwwwxwxwwxxvwfxwgvfwxxgwwwwxwxxxxxxxwvwwxwvxxxxwxwxwwxhwhhwwxwgwVfwwwvwxwwwxWwwwgwxwwwwwxwwwxfgwxwwxwwwgxxwwwwwggxwfwwvwxxwwwwwxwxwxxxwxwxxxwwxwwxxxxwxxwfwwwwwwwwwwvvxgxxwvwxwwwwwgwwxwwxxxvgwgvwwwwwxwwwwwxwwxwxvwxxwxwxxxxxxxvwwwwxxvwxgwwfwvwxwwwxwxwxgxwgxxxwxxxxxxxwxxxxxwwwwwxxxvxxwhxxvxwxvwxxwxxgwxwwxwgwwwwvwxwwwxwwxwxxwwwwwwxwxwwxwxwxxwxxwgwxwwxwwwxwwxxxxwxxhwxwxhxvwwwwxxwxxxxwgwwxwwwwwwwxxxxxxxxwxxxwxxxwhgwwxwwxwwxwxwhxvwwxwhhhhwwxwxwwxwwwxwwxxwvxwxwwvvwwwwwwwxfvvwgvwwwwwwxfvfvwwwwxvxvwvvwwwgffgwwwwxffvgwwgwwwwvfwvxxwfvvwgwwwwgwwvfvvgwwwvvxgvgvgwvwxwxwwwwxxffggwwwxxvfwvvwxxwxwhwxxwwwwwwwxwvvwgfwwwwwggfvvwxwwwwxxwwwwwwwwwwvxxxwwxhxvwvwvwwhxvwhxvxwvwvfvvwwwwwwggxwwxxwwxwxwwgxxxwwwvwwwwxwxxwhxvwwxvwwxwxwxwwwxwwwvxgwwxwwwwwwwxwxwwvgwwwwwxxwwhxwwxxwwxxvxvvwwxxxxxxgwxvxxwxwxwxxvvwwwwxxxvwvxxxxxwwwhxxwwhwvwxxhxxxxwwvwxxxxxxxxxwxuvvwvvwwxwgwwvwguVwvfwwwxvwvuwvvevvwffwwgwgvvwUuvfxvwvvvwwxvfwvwwvvxgwwwwwxwwvwwfwvwwwwwwvwggwwwwwwwgxhwuwwvgwwwwgwUVgwvgwwwvwwwvvUfuwvvhgvwwwwvvwgxvfxgwwwwwwwxwgxwwwwwhwwwwwwwgvxwwxvwwwxxxxhwxxxvwwwwwwwwgwwwwwwxwvgwfvxwvwWwxwwxwvxwhuWwwwxvwwxfvwxxxxgwhwvwwwgwxgwwwhhxwxXwwxufwgwwwwxwgvxhwxwvwwwwwwvvvwugwwwvwwxxwwhvwvwggxwfwwwwxxwxxwwxwxxgxfwwwxwxxwwwhxwwvxwwwwwvxfvvwwwxxwwwffwxgwxwwwwwvvxxwwwwxxxxwwwwxwwwwwxxxxxwwgxxxwxwxxwxxxxxxxwxwwxxxwwxxwvwhxxwxxwxgxxxxxwxxwvxxxwxxwxwwwxhwxxxwwxwwwxwxxxwxwwxvxwxwxwhxwwxxxgxxxxwxxvwxwvvxwwvwwwwgwgfvwfwfVVwvwvfgwgvgwvvxggvvDefwwwwwwwwxgvvvwwvxwwwwwwwwwgggvvxgwgwfwwwwvwxwgxwxvwwhxxvxxxvwwgwwxwwwggvvDfevgvwwwgwwhVewvvwwwvwgvwfgwwwxwwvwgwfwwwwwxxwgwggwgwwwghwwwwwwxxwwwwgxwxvwwwwwwwhwwvwwwgfvfvwvwvwwwvwwwwxfwwwwxwfwxvwxwgxwhvgwxwwgggwwwwhxwXxhwvUvwwvwwxwwxwxgggxxxxwvwwfwwwwxgfvwwggwgwgxwwwgvwwwwgwxxvwxwwxxwwwxwxwUwvwwxwxwxxhxwwwwxwwwxwwhxxxxgvxxwxwwwwwwxwwxwwfVVwwwxwwwxwxwxxxwwwwxwxxwwxwwxxxfwwwwwxxwxvwxxwwxwgwxxxxhwxwxwxwxxwxwxxfwxxwwwwwwwxwwwwwxwwhwwwxxwxvxwxxwxwxwwggxxxxxxxwwghxxxxxwxwwwwvwxwxxwwwxxgxwwxxxxxwxxxwxwxxxxxwxxxwxwwxwwxxeevweuvvvwwxvgwvwwwwvgvvwwwvvwuvvwwWfwfuvwwvvvvvwwwwwvwwwwwvvwvwvfwvwwwvwWwuwgxvgwguxgwvvwwwwvwgwwxwwvwwhwwgvvwwxvguwwwffvwwwwvvfwwvgvwuWfweuvvgvwwvwggvwvvvhwxxwfwvwgvvvfwfvwwwwwfwwwwwhwwxwhvvvwvvwwwwwxwxwxwwwwxwxxuvvwvgvwvwwvvwefvwxwwvxwwwwgvgvvfwwfwwvwwwwvwvwxwwwwgwxhwwwwggvwgwxgvwwwxwxxgxwwwwwgwgxwxxffwxwwwxwwxXfwfggVvvwwvwwfxgvvvwwwwwwwxwwgggfugvfwwwWWgwuhwgvwwvwwwwxwwwwwwwxvwvxwxvgwhwwgwwwxwwwwwgvwgwxwwxxxwxxhvxwwwwxwxwxwwwwwwwwwwggxxwvwwwxxwguwwwxwwhvwwwwvvvwwxxwwxxxwwwwhwgfxxwwxwwwxggxwxxwxwwwwwwvwwwwxwxxfwwxxxwvwvwhwxxwxxvwwxwxxgxwxxhgxwxwwxxxxvwvvwwwxfgwxwxxxvxwwwwwxwwwhwwgxxxwwwxWwwgxwhwhxgxwxxxxxxwxxwwvxxwwwwwgwwwwxxwwwxxxxxxhwxwxwwwxxwwxxxhxxwxwxgwxxxxwwvwxwxxxwwxxxwwxwxvwwwxvgwwwwXvgvfvwgwwwwwwvvvvUefwwwxvwwwwffwxfwwgwvwfvwwwwwwwhwwwwxwwwwwgwwwwwwwxwhwvwxwxxvvwgeUwwwwwwwfgwwvwwxfwwwwwUvuvwwgfwvwwwxwwhvwwwxwwwvxwwwhwgxwwwfwvxxwwhwwxxxxwwwwxwwhwwfwfhgwwxxvwxxwvwwwwxwwwxhwxwxwwwwXvgfvwwwwxxwhwwwxxxxxxxgxxwwgwhwxwwxxvvxwvwwwwwwwwhwvwwwfwwwxwwgwwwxwgwxwgxwxxxwxfwvwxxwwxwwwxwwxvvxxwwxwxwxxxwwwwwwwwwwwxhwwwwffwxwwxvfxwxwwwwxxxxwwgwxwwwwwxwwxwwxxxxwwwwwxwwwxxxxwxxxwxxxxwxxxxwvwxgwwwxxwwxxxwwwxxxwhyxxwwxxhxwwxwwwxxwxhvxwxxxxxwxxxxwxxwxxxxwxwxewgfgwwvwwwwwwfgwwwgwgvwvfvuugwwwwvxwwvwwwvfvVgvwwxwvxwwwwwwgfwguvwwwvwwwwwwwwwwwwwggvufwwvgwgwhwwwwwvxvwxvwgwggvfwwfwvegvwUfvwvwvgxwwgvgffvwwwffwwwvwwgggvwvxwfvxwwwgvvfvwvwvwwvwwwWfwvwwwgwvvwvwvgvwwwwwxxxwXvwxwwxwfvwwwwwxwvvwwxwVvwwvwwvwwwwwxwwwgwwxvwwxgwguwxwhguxhwwwvxvxvwwwwxwwwxwxxwwwxwwxwwgwwwxwwwxwxfXhhxWxwhwgwvvwxwwxwwgvwfwwwgfwgfwwxgwwwwwwxwwxwxfwwwgxwwwwvxwwgwwwxxwwwwvxwgxxwwwwxwxvwwxxwxhgxwxxxxxgwwwwwwxwgvvvxwxgwwwwwwwgxxxhwwvvvvwwwwxxvxvwwxxwwwwxxxwwwwwwxwhwxxxwxxwwwwwgwwxxwwvvxvwxwwwxxvwwwwwwwxwwwxxuvwxxxwwvxwxxxxfwwxwxxwxxwvwvwwwwxfvwwxwwwxwwwgwwxhxhwxwxxxxxxxxxwvwxwxxxxhxwwxxxxwxwvxxxxxxgwwwghwwwwwxxwvvvwxxwxxvvxwwhwxwwxxxwwxxxfxxxxxhvxxxxwwxxhxxwvxwxwxwxxwwhxwxhwwtgfwfvvwwwwwUvuvvwwvwwwfwxuvuwvfuwwxuuvfwvvwxvvwwwwuwgfwhgwgvwxwwfvvwxxwfUtvfwgwwxvvfwfvgvxxwdeefffUvwgwfvvxuwgvfwwfwuUdfffeewwxxwwvwvvwxwgVevwgvfwwwwwgwvwwgvwxvgxvvVfewwvwwwwxwwwwwwwxwwfwgffvvevVgufuwwwwvwvwwfveffvvvgwxwwxwwwhwwwxgvwwhhffgvvhwgwwwwxwxxwevvwwwvwwwxwxgwxwwwwxwTffvUgdvvwgxwxfgwwxwfwggwwxwgVvwwgwxwxgwggvvvfxwxxxefewgwewwxwwwxwwxxwhxxxvwXfwfggxxxxwggfxgwhwvwxfwwxgvxvvwwwwgwwxwfwwwwxvxvvwwWewgwgwwxwfvvxwwwwxhwwwwvwxxwxwxvwxxwwvxwwxxwwvwwwwxwwwwwwwxwwwvwwwxxwwwwwggxxwxxwwwwwxxxxvwwxwxfffgvvgxwwxfuwxxxwxgwwwxxggwxwhxVfvwhgwxwxxxvwxxxgggxwxwxvwwxxwwhwxxwvwwwwfxwvwxwwwxhxxxxwwwwgxwwxwwwwwxxwxwwwxwvvuwxxxevvfwfwffwwvvvfwwwwvwwwvwWgvwvvvvwwvwwwwwwwwvgfvuvwvwwxxvvwwwwwvwvwvvvwgwwwvxgwxhvwwwwwfewvwvufwwwvwwwvwwvgxvwwwvwvwfwvwvfvwwgfgvwvfvuvwgwwgwvfgwvfwvvwfwwwfvvwwwgxwwvxwwwvuwvwvwwwvvwwwwwhwvfxwwggvwvwvvwwwgwwwxwwgwwwxwvfvwvfvwvwwgvvwgvwwfgwwwvwwwwwwwvwwwwvwxwgvwgwwwwwwwwwwwxwwgwwwwgvwwwvgwwwwwwxxxwvwwwvwgxwwggvwwwwwhgwwxwhwwvgvvvfggwwxwxwwvvvwwwggwwwxwxwgwvxwwwwwwwwfwwwvvwvwwwwwwfwvxxwwwwwxwghxwxxfxwwwwwwxxwxwwwwwwhwwxwvwwwwwwwwwwWggxxfwwwwwvvwwwwwxxwxwgfwxwwwxwwwwwhwvwvwwwwwwhgwxwgwxwwwwwvgvwwwwwxwvwwwxwwwvgwxwxxxxxwwfgwwxwxwwuvwwwwwxwwxwxxwwxggwwvwhwxxvwfwwvwgwxwgwwwwwwxwxwwwwwwxwwgwwwgwxgwwhwwwwhwxxhvwwxwwxxwwwxxwwwwhwwvwxxggwxghwxvxvwwwxxxwwgwxhxxxwwwwvwhxvwxxwwxggwxxwwwxxwxxwxxwxwhxwfwxxxvwwgxwwxfvvwvwvwdvwwdfwvfwgwfvwuwwvfuvfwxfffgwgfwwfguwvvgvfwwwvwgwfvfgftgwvwwffwwwvvwgvgwwvgfvgvfwVgwwvWgvvwwwwwwxwwXwgwxwwfwgfVegfgvefeuggfwvgggevvwwgvgwwvwvwvwguxwwwwgwwewfwwwvgvufwfgfvgwvvwvfwwfvwwwgwwwvgwwwvwggwwwxwwwxvxwxwwwwwwwvwwvwwwwuguwuwuffgvgfgvufwvvfffvfwwgwvgxvwwwvvgwvvWfwggwWwwwxwwvwvwvwVwvfwxwxhgwwghgwvgwwhwvgwwwwwwwwxhHgwWwwwgwwWvvvfWfwGvvwugvwvgfwwwfFUwWvggtWgwwhwhwwwxxvwwwwwwhgwwhwhxvgwvwwugwhwwwfuwwxvvxXwwwwxxvwWxwwwwwwwwvhwwwgwxxhxwwwwufwwwwwwvvgwwwwwvwwxwwwwwwvvwwwwxxxwhxvwfwwvwwwwwwwwxxvgwwxwwwwwwwxgwxwwxwxhxwwwxwfvwvwwwvwgwwxgwvwxwwvgwxwwvwxwgxgwwwvwwwwwxwwwwvwhxxhhvxwwgxxxwwxxxwxxhwwxwxwhvvwwwfwwwgwwgwwvwvxvwwwxwfWwxxxhxwwgwggxhwvwhwxwwwgghggwwwwwwwxhhwxxwxwvwwxxwwxXwwwxxwhwgvvwwwxwwwvwxxwwgwwwxwxvvwwxwxxwxwxwwwwwwwwvwwxwwwxgwgxhwwvxwxwwwxwwxwxwxwxwvwwuwwwuwgwwwwwwvgwgvvwgwwwvwwwwvvfwwgwvwwwwwvuwvwwwwgwwxuvwwwwwxwwwvwwwwxvwvvvwegfwvgwxvwgwwwwgwuvxxwxwvfffvxfvxwwwvewfvUwwhxvgvwvgvwwwxxwwwvxxxxgwufggvwxxwwwwwwwwxxwwvwwwwwwxxxwxwwwhwwhwvwxfwvgwwuwwwwxwxwxxxwfwfvwwvwwvwwwgwwwgwwwwwwwwwxxwwwxwwwxwwvwuwgvgvxwxxxwwxxwwgwwwwgvwhwxwvxwgxwwxwvvgwxwxwxxwwwwwxwxwwwewvgvxxxxwwxxwwxwxwwwxxwwwxwxwwwwwwwvxxwxxxwxxwwwwwwxwxwwxwxxwwwwwgwwxxwxwxxwwwwxxxxxxxxxxxxwwwwxwhwhxgxgxwwwxxxxwwwxxxwxwxwwwxxxgwxxxwxxxxxwwwxwwwxxxxxwxxwwxxxxwwwxxxwwxxwxxxvxwwwvwwvwwwvvuvwwUdevwwwwhgwvwveefwwxwwxvgwwwwwwwwwgvgwwwxwxwwwwwfwwxwxxwwwwwvvxffwwwwwUedvwwuwwwwvvwvwwxwwwfwwwxxwxwwwgwwwwwxwwfwxxwwwxwxxxwxxxwxwwwwwwxwxwwwxwwvwwwwwvgvgwwvwwvwwwxxxvwxvwwwxwhvgwfuvxxxwwwwxxggwxwxhvwwvvwxwwxxwwhwwxwwwvwwvwvwwwwwvvwwvvxxwwwwwxxwwwxwwxvwwgxwwxxxfvuwwwxwwwwwxwwwvxxxwwxxxvwwwwwweefxwwxwwwwxxwxxwwwwxxhxwwxxwxxwxwxwwwxwwxxxxxxxxxxwxxhwxxxxxxxxxxwxxwwwxwwwxwwxxxwwxwwwwwwvvwxxwxxxwxxxxxxWxxwxwxxxxxxxwwxwwwwwyxxxxwwvvvwwwwxwgvvgvwwgfxwvwwwfvvuuwfwfwvwggewfggvvgwwxxgvvwwwgwvwwwwwwWuwvgwggwfwxwwgvvvwfwwvvWwfwwwvgwwgvfgwwwwgfvwwvfvwwwwwvgvfwwvfwwwwwwgwvgvvuvwwuxvfevfwwwguwwwwwwwwvvwwwvvwwxwxvwwgwwgwxwxxwvwvwvvwvwvwwwwgwvwwxxwwvwvwwvfwvwvwgggxwgwwgvwwfgvgfwvvvwwwwwxxfvvgwwwwvwvggwhgwwwwgwwvwwwhwgxxgvhXWwfvgwgwvwfwvffwfwhggvwgwxvwgwwvwfwwwwwwwvwgfvfwggWwwwxwvxVvuwfwfvwxgwwwwhvgwwVweghwxwwwwwvwgwwgvwfwwgvgxhgwgwwwvwwwgwxxwxxfgvwhxgxwwgvwwwwwgwwwxxwvxwvvwxwwxxwwxvwwvxhxxwwwwxxwxwxwwwwxwwwgwxwxxwwwwwxxwwwxwxvgwwwfwwwwxwvwxxxwxgvxwwxxxvwwxxwwwwwwwwxxwwgxwwwwxwxxwxwwxwwwxwwwwwwxwgwwwwxxxwxwxwxwxwwhhwxxgwvwwwghvxwhhxhwvwwwwwwwwwwwxwvwgxxwwwvwxghwwwxxxwxwwwxxxxwxxvwwxxxwggxwwwwwxfwwvvggfvvgweuwwwvfwwvwvgvwvwwvvuvwwwxgwvxvwwwwwfxwwwwgvvvwxvvxWuxwvxvWvvwwwwwvwwwwwwwWvxwwwxwwwwwwuwxwvxwwwwffuwwxwwwvvvwwgwfgwwvvvvvwvvwfwwxwwwwvwwxwwwvwwguwwwwwwwxwwwvvxxvwwwwxwwwwgwwwvgwwwwwvwwxugwwgwwvgwwwfvwwwwxwwwwwwwwwwgfwwfgvvvwxxwxvwgvghwxxxwwvwwWvwvwxwxxxwxxwwxxxwwwwwvwegwxvxwwwwgxwwwwhwwggvwvvgvwwwwwvwwwwwwwwwwwwwwwxwwwwxxxgvxwwwgwwwwvwwwwwuwxxwwwwxwwhxwwwwhwwwwxgwxwwhwxxwxwxxwvwwvvwwwxvgwwwwxxwwwwhwwxwxxxxxvwgvwwxvwxwxxwwxxxxwxxxwxwfxxxwwxxwxwxwxwxwwwxxvxwwxxwxwxvxxwxwwgwvwwvxxxxwxxxwxwfvvwwxwxxxhwvwwwxwxxxxwxxgvwxwwwwwwxwwxxxhxvwgxwwxwxwhwvvxxwwwwgwvwwxxxwwwwwwxwxgwwwxwwxxwwwwxwwxxwwxxxxwwwwwwgwxwwxxxwwxxvwxwwwwwwwwxwwwwwwwxwwwgwwwwwwwwwwwwwwvwgwvwwwxxwwwwwwwwvwwgvgwwxwwxwwxwvwwwxwxwxwfvwwwwwwgxvxxwwwwwgvwwwvwwwgvwwwwwwwxwxgwvwwwwwwwfxxvwwwwwwgwvwwwwxwwwxwxwwwfwwwwxxxwwxwxxxxwwxgvwwwwgfwwwvwxwxwwvwwwwxvvwxwwwwxxwxwwwxvxxxwwwwwxxxxwgwwwxgwwgwvwxwwgwvwwwwwwwwvwwxwwxwwwwwwwwxwwxwwwvxwxxwxwwwwxxwxxwwwxwxxwwwwwxxxwwwwxxxwwxxxxxwwxwxwwwwxxwwxwxxxxxxxxxxxwxwxxxxxxwwxwxxxxxwwxxxxxxwwwxxxxxwxwwxwxwwxxxxxxxxxwwfgwuwwwvgfwewvgwwfwugvfwvfvwwvgewwxwwevuwvwfwVvegfvvwvwvwVwfwwwexwwvwwwwwwgvwgxwwvwgwgvwwvwvwwwvwfxgwgfvwxWwVwggwwggvvvgevgwfgwvffgfVveWVvvwxwwwwwfwfvuwfvgxwwVfewwwggxxwxwwvvwwwwwvwwwwxwwwxwwfwwxwwwwwwxvvxxwxxwgwwwwxwxxwwwwxvwwwwgfwvuwfggwgvwwwvgxvwfwfwwwfwwvwwxvggvvwwwwwwgwwgwvxwwxwvvgxvwwwxggwwxwvwvwgwwwwxwxxWxvwwwxwwxxwgwwwvuwwwvgwfwggvvwwgwvgxwxwwgwfwwwgxwxxvwwwwwwwxwxwxwgwwwwwwxwxwxwwxwwxxwwxwxwwwwwwwxxxxxwxvwwgwwvwxvwwvwwwwwwwxwxwgwwwgwwxxxxwwvgvwxvxfxxwwxxwvwxxxxxxwxxxwwwwhwwxxxwwgwwwwwwxwwxxxwwxwxwwxwxwxxwxwxxwxxxxxxxxwwwwxwxwxxxwwwwxxwxxwwwwwwxxxwxwwxxxxxwxxxxxxwwxxwxxxwwxxwwxxxxwxwwxxwxwgwvxxxwwwwgwwwwxxwxxxvwxwxwxxwxxxwwgxUvuwgvewuwWwwwgvwgwvgwgwwwvwvguwwgwwwwwwwvwxwxwwgwvugwwvwevwwxwwwwwxxwwwggvgwwwgwwggwwwvfgvgwgwwwwwwwwxwwwwwwwxwwxxxwwwwxwwxwgwwwwwwwxvwxxxxxxwxwxVuuwVwgfWUwgwvugwwwvWwfwwxwvvfVgwxwwwxwwwwwwwwxxgwxvwgwgwwwxxwwxwwxwwxxwwxwwwwxwxwwwwwwxwxxwwvWvgvuvgxhwxgwfvxwwxwgvxwwxxxwxxxwxwxwwvwxxxwxvwvwwxxwxwwwwxwwwxwwwxxxwxwwwVwvgvWUvugfgwxwwwgwwwwwwwhxgwvwvuwhwwfwwwwxxwxwxxwvggwugwgwwwghwwxxxxxxwwwgwhwxhwwwxxwxxwwwwgwwxwwggxhwwgwwxwwxxvgxwwwxwwwwwwwwxwwwwxwwwwxwwwgxxwwxwxwwxwxxxxwwwwwewWwxxwwwwwfuvxwwwwggwxwwxxvxwxvxwwhwwwwgwwxxwwwhwxwwxgxxwwxxxxwwwwwwwwvxwwwxwwwwwwwwxwwvwwvxxxwxxwxhwwwwxwxxxwxwxxwvwxwwwwwwwwwxxxwxwxxwxxxxxxwufggfuvwTdfwffvvfvvwgVuwdgvvfffwfxvguwwwwwgvvvwfwwwwvwwwvvvvvfwwwxevwxwwvvggwwwxgevwwgvhwgwwvvxwwwxwfwwweuwwwvfgggwwuwgwwwwvwwfwwwxgvxwxwxfwgfwgwvwvxwgxxwwwxxvwxwxwwhxwfwvwfEdweevvfVgevvvfvwxfvvwwWewvwgwvwwwwvwxwwwwwwwwxxwwxfwwwfvgwgwxwwwwgxwwwxwwwxxwxwxxxwxvvwwvfwvvvwwwwwvwxhvwvxvwwgwvwvwwxwwwxxxxwwhwwvwxxwwxwwxwxwwwhxxxxvwxxxvwUvvwwwvgvffwwwwfggwwggwVfuwwwvwwwwwwvwwfvwxwxwwxxwffwwwwwvvwvWgvwwwwxwxwgwwxxwxwwwxxwwxxwxwxxwwxgwvfwwxwxgvwwwwxxwxwxwvhwwwwwwwwxvwwwfxwxxwwxxwwxggxxxxxxuffwvwwwfvvvwwvvwwwgvwwwwwxwvxhxxwvwxwxwwwxwvwvxwxgwwwwxxxwvwwxxwwwxwxxgwvvxwwwwwxwwwwwwwwxxwxwxwvxxwwxwxwhwxxwwwxuwwxgwgwTftwfffwVvuwfwggdvfffvxggwVvvvvxwwvvwgfVwwwwwwwwwxfwwwwgffvgwvWvWvgfgwxxeuvwwXwwvwgvxvwwxvwxwwwvwxwwwwwggwwwwwvgvvfgfwwwwwvwxwxxgxwwxwwgxwxvwwwwvwwvxwwxxwwwwxwwxxwgwvxwxwxwxxxxwxwxxxxVfewwgwwEvWvVVuggGUwxwwwfwfwwwwxvefvwwwvwvgxwwfwVwxgwgwggwhwvwgwgwxwwxfwvhwgwwwwxxxxxxwxwwhwwwwghwvwwhwhhwxwxwxwvgWuwwwhgwvwwgfvVwxhhvgwggvwwwwwwxwwxwvxwxwwhxwwwwwxwxvhwxhwhxwggwwxwxxxwxwwwwwxxwwwwxeguVwwgvfgftvvwdgVvvvvwwvwxvwgvwwwwxxwvwwwhxvxxfwgvfwhftwVXvgwwgXwxxfxwwxwxwxxwxwvxhxwxwxwwwwwwvgwwwwwgvgwxgwgwwxwxwhxwwvxxwwfvwwwgxgwxwxxxwxwwvxxxxwxxxwxVvGvfgvwfwvhvxgvfgwhvxvwwwwvwwvvwwxwxwwwxwhwgwwwwwwwfgvWxgwvxfwwwhwxgwxwvwwwwxxwwwwwxwwwgwxhwxwwwxhwwwwwwvhwwwxxxgxwgwwfwwwwxvwxgxwvwvwxxxvwghwghwxwghcffvVfeveVvvVvfwVvuwvgvgfFdfvwwwffvVVSwvxwwefffvvwxwfvvwwvwwvvfwfgvvfdwvvfgwgxvvvwwwwfwvuevvwvwuuwwvwvwwwgvvvfwfeewVwffwgfvwwwwvwwwwgwwvwxxwxwwxuwwwvwvxwwgwvvvuwvvwwwwggwwwwwxxwwxwvwxwwwxvxwwxwvxwxwxvffVfvffwUVefvfwvfUvvgwveSvvvgwwUgdvddvfwwgwwwvewvffvwwgwwwfwwwwvwwwwwwwxwwwxvwwgvxwxwwvvwwwvexwxuwwvxwwwwgfwwwwwffwfvvvgfwgvvugwfgwwwWxwffwwwvgwxxhvwwwwwxwxwwvwwwwgwwwwwwuwhwwxwvgwvgxwvwvwxxvgvwwugxwwwefvvffEgfVevgwvwffVfvgwwvwfgwhwhVVewvggggvwwwwgvwwwwvhwwwwwvffffwwwwvwwwwwwwwxgvhwwgwfwvxwfwwxvwwwwwwxwwgwwvwwwfwwxwwwwgwxvxxWwwxxwwxwgfxwxxxxwwwxxwwwwwwvvhwwvwvwwxvwwxwwxvwwwxwxxwwwxwefVwvfvfgvvvwfxwUvvxwvwvgwwwxvvvvwvgvvgvvxwxxwgwwxgwvwwxxxwwwxwgfwxwxfvgwwwwwhwwwgvwxvwwfwwuxxwwugwvwwvxwwwwgvvwwxwxwvwwhxgwwwxxwwxxxwwxwwwxwvwhxwwwxwwwwxxxwxwwxgwwxgxvwwwwwwxwwwwwwwxxwxgwxwtgvvwvwetuwvffwetuvfvvfefufwwwwUuuguvgwgvvwvwdVfufvwwfvvhwwwwwwdfuuvwvwgvWweVvwWvWwwwgwvgvtevwvfggvxwgvvggvWwgwvwwVuvwvwwwvwxeVvwwwvwVvwwwwxuwwwWwvwwwwxuwwwwwxuwwvvhwwwwfwvwgwxxwevwwxxwwxwwwwwwwwwwgwvfvvxvEewwwweTfewwgfevUwgwufvvwwvwffxwwxffefggwwwgewwvwwvwwvxvwwxvwvwwxwwWgwhwwfwwwvwxwxfWwxwvwwvewfvwvuvxwfegfhgvwwwxvxvwhwxvwwwwggwgwvxwwwwhwwvwwwxwxwxwwwxwxwwghwvwwgVuwfvwwwvwwvfVfvvfwvvvwvwxwvfwvwwwwwwwvwFfugwwwwwgxwvgwvggvwwxwvgvggwgvwvxwwfwvwwwgwgwxwwhwwwwwwxwwwxxwwxxxvvwwwvwwxwexwgwwvwxxwwwwvxwwxwwwxxwgwwxwwwwwuwwxwxwwwxwvvwxwxxwvVfvwvwwwwhVevfwWwwwfwvfwxwvwxwwuxxwwwwfwwwgwwwxwwvwwvwvwgxWwwwwwhvgwxvwxxwwwwwwxwwwwvgwwvwxxwxwvvvwxwwwwwgxwxxxwxvvxwfhwgwxxgxxxxwwvwvwxwgwgxwxwfwwwwwswwgfuwwfwvwvWfwfvugvggwV6TuwwfvvvwgvffwvwfvvvwWvwwvwvgwwwxwwwwwwgfwwWvwgwwwwwwwwvWwgwwwgwgwWvvgwxvvvxuwxwwgxwwgxwxxgwwgwwwvxgwwwwwvgvwwvwwxwwxwwxhwxgvwwwwwxxxxgwWvwvwgxwwwxgfwwhwxvxgwwxwxwwwxwgwwxwgfwvwfvgwwgfwfwwwvgfwwfvuWggggFevwwwvwgwwvxuxvwWVwwwWfguwxwwwwwwxxwwwvwggxxwwxwhgwxwwgxwwvhgwwxxwxgwwwxwwxxxxwgwwwwwwvwxhxgfwwxgvgwwwgxgwwwwxwxxxwxgxxwgxwxwvxhwxxwwgwxwhwwxxxwxwgxwwxwwxxwxvwgwvVfwwggfwwvwW6TuvwvwxwwfxwxwwgwwwhxwgwxgwgwwxwxghwvwxxwWvgggwgwwwvwwwwvwxggwxwwwwvwwhwgwwxxggwwxxwxwwwwxgxwwwxwwxwwxxwxwxxvxxxxwxwwwxwwxxgwxwwwwwwwwuxxwhxgwwxwwwwxvwgwxxwwwwwxwxxxwgfwwwgwgwwgfWfvfhGuvwwhwxvwwwwvhvxwwwxxxvxgxghxvxwxgwvxxgwwxxxwxwwwwwxgxvxxwwwwvwhgwxwxxwxxwwhuhwwwxxxwuwxxwxhxvwwwwxxxwwxwwwwxxwxxxwxxxxwxxwwxxwwwxwxvwwfwvgvwwwvwevuwvwwgWvwvwwxfwugwvfwvwvgwegVgwvgwwwxfwvggwwwvwvxvegwwwwxwgwgwxvwvvvwxwevwwxwhwwvwwwvwvwffwwwxwwxwvgwwwwwwwxwxxwxwwxwwxvwwwvwvxwxwwwxwxwwxwxwxxwxxwevuwvegwffwwwwVggwwwwVgvwvwxxgVUwgwexgwwwwwxgwwxwxwwwwgwwvwwwwwxwwxxwxwwwwxxwxxwvwwwxwwwwxxxwxwwwwwxxwwgWvwwgwgwwxwVgvwwxxwxwwuvfxgwgwwwxwxxwxxvxwxwxwwwwvwwxwxwvwxxwwwxwxxxxwwwxwwwwxxxwwfwugvwvvvgwwwxwgVUwvwwwuvfxwxwxuxgwwwxwwwwwwxwwxvgxwwxwvfvwwwwxwgwexxwwwgwgwwwxwhwxxvxgxwxwvwvwxwxwxxxgwwwwxxwwxwxxxwwwwwhwwwvwxwwwxwgwwxwxwwxxwxxwxwwwwxxxwwwwwwwwwxxegVevwwwwxwgwwxxwwxvxwwwxvxgxwvwwwwwxwwwgwvgxwwwxwxwwwwxxwvgwxwwwwwwhwxvxwwwwwxxwxwwwxxwwwwwwwwwwwxxwwwgwwwwwwwwxxwwxxxwwxxwwxxwsvwhfgvxUWUwvvwVVuwwggevfvvvwwvwvwvwgfTwffwvgfwvwvwvfgwxvwwwwgwewvwwwfwwwgWwfvwgwwwvgwwwwwwfwwwwwvwwvvhwwwwgwvwwfwVxgwwfvwwgggvxvxwxwvgwxwvgwwwwwwwwwxwwxxwhfvxwxwxwgwvwwwwxvxwxgwfxwwwwwfgvwvvvfWvwwfwfffwvfwffffvgwwugvgwvfvwwwxgVvvvwwfwwvvwwgvwwwvxxwwxwwwwxwwwwxwxwxxwwxvxwxwvwwwwwvvxwwwwfuwwwwxwvuvwwwvwwwwwhhwwxwwxvxxwgxwxxwwxwwwxwwxwhwwxwvxxwvvxxwxxwwwxwwxwxvvwwvwvgvEgwvvggwgwwwVwvwwxgwgvwvxwUUVhwwwwwxvxvwwwvwgxwwxwwvwwgxwvxvgxxvgwxwwvxvwxwwuwxfwwxwhwvgWhxxggvwxxggwwwwwvxwxwwwuxxwwxwwwwxwxxxwwwxwhwwxwwwwvxxwwxwwwwwwvuwwuwwgwgvugWwwvwgwgwwwwvxwwwvggxWgwwxwwxxwwxwwxwvxxwxggxwxwxxwhwwwhhgxxwwwwwwxwvwxxwxxxwxvwxhwwwxxvvxxxwxxwxxxxwxwxxxxwxxxxwxgxxwgxxwxwwwfwwwwwxxwxuwfxfwxfwwffwvfwvxgvwgugvgWwwwwWggwgxwwvWugvWgwwvvxxwwwvvwwwwwwhwgwxwuwwwXwwhwvxxwwvwXwwxxgwwwwwwwgvgwWwwwwggwxxxwxxxxfxxwxxxxvxwwwxwxgwXwwvxwwwwxgxxxxxwwvgwgwvgvfwVwwwgwvvwwgxvvggwvgwwhwwwgwwwxwxwwwxxxhxwxwwghgwwwxwwwxxwwwxxhxwwxxxwxxxwwwgwhwvxxgwwgwwvwvwgvwxhxwxvxwwxxxgvxhhxxwxxxwxwxxwhxxfwxWggwwvwwgxWeguvggwgvvwxxxwwwwwgwgwxxxwwwwwgwwwwxggxugwhvwwwwwxxxwxxvxxwwwgwwxxhxhxwwxwwhwxwxxxxxxxxwxxxxxxxywxgggfxgvwwwgwwgxwxwwxxwwwwxxxwxxwxxxwgvxhxwwxxxxxxxwgxxvwwxxwxxwxwwwgwxxxxxxxxwxxwxxxxxwxxxxwxxxtvvweduwfvfwTffvwvfwwvfvfwuveuuVfvwgvwfuuwwgfwvvwgwwxwwwwwfeuevgvwghevvwggfgwvwxggvwwvwwwvxvxwwvwggwxxxwfuvffvwuwwvwvwwwwvfuvgwfwwwwwwwxxvwwwvuvwgwwxwwxwxxwxvwwwxxxwwxxxvvuwUduvewgeufvfvwwvwwwfwvwwwwwfEUvuffeguvgvfewwwwwwfwwwwwwwwwwwwwwwwgggwvwxwxxwxwxgvwxwvwxxxwxwfevvvvwvwwwwwvuvxgwwgwwxvwxWuvwxwxgxwwwwxxwwwwxwvvWxxwggxwxxwwxxfueVuwfgwWudvwwvwvwwvwwxvwwwwwwvvwxwwwwwwwxxwxwxxfwgvfwgfwvwvgvwwwxwxwwxxwwwvwwxhvwvwxxwxxvxwuwwgwwwxxxxwwxwwxxxxxxxxvwwwxxwvgwwvxwxwwwwxxwxvwxxgxxxxvVVevevvwvvvwvxgvxwwfxwwwvvwgvxxxxwwwwwwxwwgvxwxxwwxxxxwwwwvxxwxxwxfwwvwxvvwwxwxxvwwxxwxxxxxxwgxxwwwxxwyxwwxwhwhxxwxxdUUvefvVutwfUdwffvugfefvVwwFuugeeeggwewwhfUTgfwwvwxvvwfvvwuvwfwfvvuvvwwwxwvuwwvufVvfuvwvwwvwwwfvwwwwwwwfuvwffvwwffwvfgvvwwvwwwwwxvvfwvwwxwwwxxvwwwxwvwwgwwwwwxxwvvxwxwwwxxwwwwxwwxwwvxUvewdfuwfUfveduwdfewgvwguvxgveeevvvwevwguvwUdugwffwvwgvwgvwvgwwwgwwxwvwvwwwwwgwwgwvgwwwwwwwvwwvxwwxgfuvfwvxwwvwwhVvvxxwwwxxxwvwvwwvwxxwwwhxwwxwxwxwwwxwxwwwxwwwxwwwxxxwwvwxxwwhwwwxwwwwwwxwgvVvugeUdvugVvewgWeEUgVwvwvwxvgwxfgVvwwwwwhgwvfWgwvwwxwxwfeewfugwwvgwvgwvxwwvxwvwxwgwxwxxxwwwwwxxwwwwvwwwwxwwgwvxwvxxxxxwxxwxxwwwhwwxwxxxxxxwvwwxxwwvxxxxwxwwxxwxxggwgwwwwxeVfvfvgffvwuwfuewwVevwwwgwgfwvwwwwwxwwwxxwwxfvwvwvwvwvvgwwvwwxxwwvwxwxwwwxvxxhvvwwxwxwwwwhwwxwwwwxxwxxwxwwxxwwxxxwxwxwwwwgvxxxgvhwwxxxxwwxwhvwxggwfwwwVwvwgevvwwwwwgwgfWfvwgwggfwwgggvffvgfWwwwxghWwwwwwwfwgwvvwxxwgxxwxwxwxwxwxwwwwxwxxxgwwxwhxxwwwgwwvwxfwggwwgvwfxxxwxxgxxxxggwwhwwxxxwwvwwxgwhwxwxxwwhwxvgxxxgwvwwgvwffwfvvwwWgwwgvwwwwwggwvegvwxvhwhwgxwwgfwwxwxwwwfvxwwxxxxxwwwxxxwxxxxxxwxxwxwwvgwxvwgvxwvuwxwwxwxxvhwxxxwxwwwxxxvwwhwxwxxyxwxwxxxxxxwxVwwgwfwvgfWuvvuwgggfvgggggvxffWvvwwvvwwxwwxhwgwvxvgwxvwgwwwxxxwxwwxwghwwwwxwxwgxhWgxxwwwxxwwhwxxxxwxxxxwwxxyxxwwgWgvuvVwwvxwwgwwwwxwwwwxxxwxvvwwxxwxwfxhxwwhxxwwxxxxxxxxwwxwwwwxxxwxwxwxxxxxxxxxxxwxxxxuffwffvwwuuugvvevvwVewwVvwwvfesvfcVfvwwwfvwwfefvevvwgvwxwxgvguTewwUwgwgfvwwwwwwwwgwwwwvffvfuvVwgwgwwgwwwwwwwxwwgftvtfwvwvffvfwwvwgxwxvggwvwwwwwwwgvwwwxxvgwwwvfwfvwwxwwggvwxwwwvxgfwvwwwgxxwvxxxvxffvwvfwwuwwwgwwv4ewvwwvfgfwdefuUvuwgwgwwfffTgTgvwxxgwwwwfgwwwwwxwgwwwxwwxgxwgwwxwwVwwgvxwxvxwgxgufvvvwvwwvwwwxvvwuwguwwgwxwwwwfvwvgvxwwwwwxgwwxwwwgwwwwwwwvwwwvwwxwwwuxwxwwhxwwgwwxwvwwwwvwfuwvgvvwwwuwvwvgwvwvwfwvwxwvfevVvevvwwwxwvvwgwwwxxwfvVwuvwxvwwgxwwwwxwxwwvfwgxgwwWwwwwwwwwwwxgwwxwWwxwxxgvwwwxxxxwxwvwwwwwxwwwwwwwwwwwxvxfwwxwwwwxxwxxgwwxVwghxwwxxwwwvvxwxgvfgwfvwuwxvvvfwwvwvwwwwgffvwwwhwwvwxwwwgwwxwxwwxwwwwwwwwwwwhgwvxvwgwwwvxxxxvwxxwwWwwxxxxxexwhvwwxwxwwwwwwwwvxwwwwwxwxwxwwwxxxxwhxwxhggWwxwwwwwwwwwxwwwvwwgxwwggwvfewwvvvvvwgwfvwvuvwvvvfvwwfvwuwVvUvvgwgwfvwwwVfvwwwwwvwvwwwwwxvwwgxhwwwwwwwwwwwxwwxwuhwwvxxwvwwwvgwwxfwwwwwwwvgfvgwfwvwxwwwxwvwxwhwwwxxvwwxwwwxwwwwwwwvwwxwwwwvxwxwxwwwwxwwxxxwwgwwwwwgvwxwwvWvfvvfexwvwvvvwvwwvvgwwvwffgwvgwwfuwgvvwvvgwwwwxgwxwxwgxhxxxxwxwwxwxxvxwwxxxwwxwvvxwvwwwwhwuwvwwuxwwwxwfhwgxvwwxxwwwxwxwwwhgxxwwxvwwxwxhxwxxhxxxxxwxwwwwfwfvwwVwVvvwvgwvvvwxwwwxwvwwVwvwvgvwvwvhfvwwwwwxggwwwwxuwwwwwwwxwxwwwxwwwxvwwwgwvwxwwwwwwwxwxwxwwwwxwwxwxxxwwwgwwvxxxxwwwwxxxwwvwxxxwwxxxwwxxwxxwxxwwxwwwvvgwwhgwgwxvvwvwwxwwwwwwvwwxwwfwugvwwwwwvwwwwxxwwxwxxxwxxxxxxwwxxxvwxwxxwwxwwgxwxwwgxwxwwxxxgwwwwwxxxwxwxwxxwxxxxwxwxwwxxxxxxwxuvwwVgggvxwfvwvwfxfvfwffvwdfgvwfwwvgfwvvwwvwwwwtvwfGWvwvwwvwwwwggvwwwwvwwgwwwgvwgwgdwgxvwwwwwwwwwwwwgxwwvwwwwwgxwwxxwwwwwguwxvWwwwvxxxxwwwgwxxwwwgwwwwxxwwxgwwwwwwwwwwwhxvwvhwxxxwwxwxxwhwgxwgwwxgwwwvwvguwgGvwvwwgwuwwwwvwvwuvvwWwwwgwfwwvvwwggwxwwwwwwxwwxwfxwwuwxwxxwvwwwvwghxxwgxxxwwxwxwwwwvwwhwwwgwwxgwwwhwwxwxwvwxwwwfwxxwwwxwxxxxwxwwxxxxxwwwwxxxxwxvxwwxfwvwwuwfwvvfggwuvwggvgwgggwgwwwwwwwwxxvwwgxwwxxxwwwxwwgwxXfxxxgewxwwxwwwxwxhwxwwxgwwxxwxxxxxwxwwxwxwwwxgwgwxwgwxwwxxxxwwxwwxxxxxxhxhxxxhxwwfgwgwwwxwxwwwxwwvwuxwwwgwwvxwxwwxxwgxwwwxwwwxxxxxxwgwwXxwxwxwwxwxwwwxxxwxxwwxhwwxxxwwxxxwwxwxxxxwwxxwwxxtvgwffuvfvvwvggwwvwwwfwgvwvwVfefeffvfVefwgwvwxfwxgvgwwwwxwxgwWwwwwfwgwgvwvvwwxwwwwwwvwwvwwwgwxwwwxwxwgwfgwwfgwwvwvxwwwxwwxwxxvwggvwggwwwxwwwxwwxwwgwwvxgxwwwxxxxwwwwwwxxwxgxhxwwhwwwffvvfgwuwwwwwwxfwgwwvgvwwvwwvWfwfwwffvwwwwwxgwggwwwwhVfvwwxwwwxxvwhwxxxwwwwgxwgwwxwwwxxxxxvxwwwwwfvwgwwwWwwwwwwwwwwwwwxwxxxwwxwwwvwwwwxwwwgxxxwxwxxxxwvxvxwwwvwxwxwxwhvwwxwfwwwvwfwgfwwwwwgwwwwwvwxgwxgfVfvuwffVVvxvwwwxxwhxxwvwwvvwvxwxwwwwxxwxwwxwxwvwwgfwwwWgxxwwxwwxvhvwwwgxvwxwwxxxxwxwggwwhxxxwxxxxwxwwxwxxxwxxwxgwwwwxxwxvwwgwvhfwxwfwvxwgvwxwwxvwwvwwxxwwgwxwxwwwgwvxxxwwwxwwhxwxwxwxxwwxwwwwwxwxxwvwxxwwwhxxxwwwgwwxwxhwxxxwxwxwxwwwwwxwxwwxwxwwxxxxxxxwxxuwfgvwvewwxffvvvwvgefgugevwwwwevvwgwfVgfvvgvwwwevvwvwwxwwwwwvvwwgwvwvwgxwwwgwwwgvxwwwxwfvwwwwwwwuwwwwwvxwwVwwwwvvwwvgwwvvwwwwwvwvwwwhwxwwhwwxwwwxwwxwwwwwxgwxwgwvgwhwxwgvwwwwxxwxwwvwwwwwfwwuwuvwwevvgwfwwvwxvvwvwvwwWvwuwwwwwwvxwvvwwwwvvvvgwgwwwwwwvvwxwwwwxxwxwxwxxwwxwgvgvwwvwxwwxvwwgwwwxwxwwwwwwwwwxxgwwwwwwxwwwwgxxxxwwwwxxxxxvwfvvuwwgvwvwvvfvwwgwuuvgwgwwgwvwwwvxgvvwwxwwwwwxwxvwvwwwwwxwwvuwxwhwwwwxwxwvvxwxvxxwxxxwxvwwwwwwwwvwwxwxxxxxxxxxxwwxxwwwxxwwwxxwwxxxxxxxwwVwxvwwwgwwwwwvwggwfwwwgwwhwvxwwwxwwxvxwvwwwwwvxxwghwwxxwxwxwxwhxwwxwxwwxwxxxwxwwxwxwxxwxwxxxxxxdgfwfvvwefvfvuwVwewegewegfvwvwffvwfffefvwgvwweEEvVwvwggvuwxwxgwvwwfevwwfwfwwggwvvwwvwvwvxvgwgggwwxwwugwxgxgvvwxgwxvwwxxwwwwwxwwgwggwvvVfgghwwwwwwwwwggvwvwwwwxwggwfwxwwxvwwwfggwvxwwwxwwgxxwwxwwwwwuwvgvwwxxwwxwxwwvxwxxfgvfggvwwVuvwfwgWgwwxgwfvgwvggwfvVgfwwguwfvhgwffvwfxwwvWvgwwwwvwwwwwwwxwwwwwxxwwxxhxxgwwwxwwgxwxxxxvwxwxxxxwxwxwwxwfwvxwvwxvwwwwvwxgwxuwwwwwwwvwwwxwwxwWxxvgxwwwxxxwwxxgxgxxwxwxwxxwwxxwgxwxwwwxwwxhxwxxxxxxwxwxxwwgwvvgfggvwwfVfvgwwwvwgwwgwgEEwwvwwwwwgwwwggwfwwghxwwxgggwuxwwwfxwwwwfwwxgXgwwwwwwxxwwxhwwwxxxwxgwvgwxwwwwwwxWwwvxwgvxwwwhxwwwwwwwgwxxhxwwxwwwwwwhwxgwwxxwxwhxxwxxwxxwhwxwvwgwvxwwxexwwVvvgwggwvWwxwwwxggvvwxwwXvwxxxwwwwggwxwwxxxxwwwxwxxwhwxxwWxwxwwghwxxxxwxgxxwxxxxxxwgxwxwwwxwwgxwhxxwwxxxxwxxwxxxxgwxxxxxxxxxwxxxxwxxwxxwxxxwwxwxxxugfVgtgwvffvefwwvwvwvvvwwwwwwUutvewfvwwwvwwxvgvgwwfwwwwwvgevwwvwvvvwwwxwwwwwwvvgTvfvfvwwwggfvgvwwxwwfvvvuVfwwwwxfwwwwxgwwwfuwwwwxwwffwgxxwxwwgwvvvwwwxwwwxwxwwxgwwvvwvhvwwwxvwxvwfftvwVDwudVwVfgvffvwxvwvwwwvwgUgfuVvwfwwwxwEfvfwwwwwgXwgwwgwvgwwwwxxwhwxxxwvvwwgfwwwwwwwwwxwwwxfgvFeweggwxwwxwfggvwgwgwwwxgwwggvwwwwwwxvwwvvwfwwwwwwwwwfwwwvwwgwhwxwwxwvwwvwwxxxwfwvvxgvwwwfvefugVvwwwwwwvwgwvwwwggwxxvgfwwvwwxwxxwevxvgwxwxwvvfvvgwwwwxwwwgvwhxxwVuxwVgxwhgwgvxwxxxwxxgwwvwwwwhxwxwvvwwwwxxfwwwxxvxxxwwwxgwgvxwwxxwwwwxxhxwxxxwxxxffxffVvwvwvxxwwfvugwwewgwwwfvwwwwwxwxxwxwegwgwwwwwxwgwggxVxxxgwwwwwwwxxwwwwvwwxwwwxxxwvxxxxgxwxwwwxvxxwvwwwfvwwwwwwgvwwxxxxwxvxwxwwxwxxwwwwwxwwwwxwxxwwgxwfwwxwxxxxwwxwwxxxtwgffwvfvwuwfEEuvvvvffvvgfwgvvffvwfgfvvwwwvfvvwgvwvwffwhwwwwffwwwwgxgfvwwxwwxwwwgwwwwfvgwvwvwvxfxgwwxwwwggwfvwgvwwwwwwwgwwwxwxwwwwwwwwwwwxwxxwxggwwvwvvwwwwwwwxxwwvgvwwwvxwwxxxgvwfwvgfvvgfvfvffvwgwwggfwwvggfvwgwwxfvwvwWvwvvwvwgvwggvxxhwwwwwwwwwwgwxxwwwxxwwwwxxxxxvxwxxxwxxwvgwvxwwwwwwgwwhwwxxhvvwuxwwwxgxwvwxxxwxggxxwxwxxwwxxwwxxxgxwhvvgfWfugEEuwwfuwfwwwwvwgwwgwvggwwxwwvwxwwwwgxwhwwwwxggwgwwwwwwwxhvxgwwwwwxwxvxxxxwwxwhwwxwwwxwxwwfwvwwgwggwwwxhvwhxxxxxwgwwwwhwwxxwwxgwwxxxwwwhgwxxwgwhxxwwwggvwgwfuxwwgwwwwggvwwxxwwwwgvwwXvgwuwwwwwwxxxxxwwxwxwwxwwxhwvxxxxwxwwxxxxvwwwwgxxwwwxxwwwwxwxvxwwxxxxxxxwwxxxxwvwxwxtwwxFgewVfuwUgevvvvxWfUvfxfuwggwwwwwvwwwwwuwwxuwgVxvvwxwxwwgvvwwwgwwwxwwwwwwwghwgvwwxvgwwguvxwwxwvwxwwwuwwwgvfxvwvwxwwxwvxwwwxgvwxwwxwxwvvxhxxxwwwwwwwwxxxwxgxxvxxwwwxwwxhgxxxggvwgVuvWweffffgvwwwgwvfwwggvwwwwwwggvwwxWwwwhgVvwwwgwwwwwwwxwwvwxwxwwxxwxwwwwxgvwgxxxwwwxwwwwwhhvvwxgwwwwwwwvwwvwxvfwwgxvxwhwwwwgvxwwwxwxxwwxxxwxwxxwwxxgxggwxxxxxxxwwxwghxxvxwwxfwxWgUvwvwwfwvwgWvgfFWgwwwgvxwxwwwwxwxwwxwxwxvxwxxwgwvwwxwwgfwwhvwwwwwwwvxxxwxWWxwwxwwwhwwxwwhwwwwwwxwwwwxgvgwwwwgvvwxwxwwxxvxxxwxxxxxwxxxxxxxxxxxxwwxxxxxxwxxxxxwxgwvwvwvwwfgvwvwwwwxhwvgvwgwwwvvggwxgwhwxwgwwgwwxwwwxxxgxwwxvwwxwwxwxxhwwxxxhxvwgwxxxvxxxxxxxwwxgxxwxwxwxwwwxwxxwvxxxxwxxxxxwwxwwxxxxxwxwwwxxxwxxwwxwxwgwgvvgwwwwWffwvwgvgvXgfwggfwvvwwvgwwgwwvvvfwfvvfwwgxwxxwvwhxwwwwwwwxhwvwxwvvwwwvxwxxhxwuwwwwwwwwwggwvwvxwwhxfwvwwwwxxwwwgwwwxwwwwvwxwwwwwxwvvwxwxwwwxhxuxwuwwfwxwwxwxxxxwwvwwgvvwgwwwggvxwvgwwwwxxvwffwvwwvvwvxwvvwvgwwwgwxxxxgvwwwxwxxxxxwxwxxwxwwvwwvxwwwxxwxxwwxwvggxwwwgxwuxxxwgvvwxwfwxgwwwxxxxvwvxxxxxwwwwxxxvxxxxxwvwwgvvwWffwgvwwwxWgftwwwwwxxwwwwvwwwfwxxwvwgwxwwxxwxwvwwxxwxvwhvxvwvwxxxxxxwxwwxwwwhhxwwxxxwwwvxwwxxxwwwxwxwxwxxxxwxxxgwwxhxxxxxfwggwwwxwwvvwxxwvwwxwwwwvwxwxxwwwwxxxwwwxwxxwxwwwxwgwwwwwxwxhxxwwwxxxxwwxxxxwwxwwwwxxwxwxwxxxwwxxwxgwvwwgwwwwwguwfwvwfggwwvfvVfewvgwvvfvgwvwwvvweuvfvxxwwwvwwgwgwwgwwwwwwvwwgffwwwwwwwwwguwvwwxwwwxwgwvvgvfxwvwwhwwwwxwwwxwxvwwwwxwwwwxxwvxxwxwwwwwwxwwxwwwxwwxwxwVegvvvwwwwwvwvfgvfggvwvfvvwvwwwwwwwgvvwvvvwwxwwwwwxxxwwwwwwwwwwwwwwwvhwwwxwxwwxwwxwwvwwwwvvvwwwwwwwwxwxwwwvwxxwxxxwvxxxwwxxwwxxxxwxwxwwvfwwwwxwvfvgfwwwwwwxwgvwgvwwvvxgvvwggfgvxwwwwwxxxxwwxvwgxvwvxxwghxwxxwwxxwwwwwwwxxxxwxhxxxxwwxwxxxxxwxwwxxwwxxwgxwxwvwwwvvvwxwwwwwxwvvwxwwxwwwwxxwwxxgwgxxxxxwgvwxxxxvwxwwwwxhgxwwxwxxxxwwxwxtgwwguvwvwfxvgfvVfdggfUvvwvwVwfggetgfwWvwwuwwdfUffvWfvvvwwfgwwvwgvvwxfwvvgwvvvwwgggvwwxfwgvwffwvWvvvwwggwwWwgxvvvgvfvewgwgwwhwvwwwugvwwgggwwwxwvwwgwwfwwxgwwwxxgwwwxwwwwwvgwvxwxxwwwwwxhxhwxxWvwwVgvwwwxwxgwxwwvxwffwfhwvwvfvgfvgfFfvwggfgvVvwxWEgffwwgvggvwwwwxUvfUvgfgvwwwwwwgwwwwxhxxwxwxwfgwxgxxhwxxvwhewwwwwwwfwwvwwwgwwgwvwwxwfgfgvwWwggwhxwgwwfxxwgvwwfwwhwwvwwxwxwxvvggwwwgxwwwwxwwvwwxwhwxxwxwwwxggwvWwxwwxwwwxxwgwgxwvuwgwwfvwvguwwwwvfgVgfVGwwwxwxwwvwfvgvgwwxwxgvvgwxugwwxwwwvvwwxxhwhwwwvwwvgxwwxxwvwwuxgwgvvwwgwwwuwwhHgxwxwwvwwvgvwxxwwxwgvgwggwwwvwxgwwxwwxhgxvwxxwxxwxwxwwwwxwwwgxwxxwxwwwwwxwxwwwhgwvwwxwfvfwwggVwwvxfwvwgvWwwwgxgwwgwgwggwwwwxgwwwhwwxwwwwwwggfxxwvxwxwwxwwxxwwwwfgwxwwvwwwxxxxwwwxxwwxvwxxwwvhxxgwxxwwvwhgvgxxxwvwwxwhwwxwxhxvwwfxgvgwxwgwtxfwewfwufwfWevvvvwfvfwvwvwgwvwfwuwfFTvfwVfgwvgvgvfvfwxvxwwwwwvvwgvvwxwwwxfhwvwwwhwgvvwwwefwxgxwvwwwxvwxwwvvxgWuwwwwwwgwwwvwwwxwwgwvwgwwwwxvxwwgxxwxxgvvwuxvwwvxxwwgwvxxxxhxwwwwxgxxWvvuwwvewvwwggvvfvvgfgvvwfwggVwvgvvgwvvwwgxvwwwvwgVewvxgwgwvwwvwwwwwwvwxfvxwxwwxvwwwxwvwxxxxwwxvwwxwxwxwvwhwwhwvvwhgvhwvxwwwwwwwxwwwxxwwxvxgxwwxwwwwxwwxwxxwwxxvxxxxwxxxhvwvxfFTvvvwwxfwwgvwvvwgvwwhwgfvwwgvxvxwxwxwwwxwxxxwxwxgfvxvgvwxxwvwvwxwxvxwwwwwwwxxhghxxxwxwxxxgwwwxxxwxwxgwwvxwxxxxwgxxwxwxwwwwwwvwxxxxxggvxwxwxhxxwwhxwxxxhxxxxxxxxxwxhwwhwxvgvfvfvwwwwwwwwwvwwXewvwwhwwwgwwwwxxxwwwxwhwwwwwxxgxwwxwvwgxwxxxwxwxwwwwxwwwhwwhwxxwwwvxvxwwgwxxwwwwwxxxxxwwwvwxwgxwwwxxwxxgVwvwvwwwwgvVwwvwwgVxvewwwwfwguxfvWvwwwwgggvvgvvuwwgwwvwwgwwwwfvwvwwwwwwvwwwxwxxwwwwwwhwewggwgwgxwwwwwxVwwwwhwwwvwfwwvwggxwwwvguxgwwxwuwvwgvwwwxwvxgxwwwwwxwwwwxwwwhgwxgxwxxgxwwvuvgvwwvwwwvWfwwwwfwvwvVwvgwgwwwwgvwgfwwwwvwvxwxxwgxwvwwwxwwxxxxxwvvxxxwwwwwwwWwwwwxwvwwhxvvwwwwvgwwxvvwwvxfwwwwwwxwwwwxxxwxwxwwwxgxxgvwxxwxwwwwwgwvwgvvwfvVvwwwvwgwwwVwwuwwwgvWuwvwwwwwwxgvxxwvwxxwwwwwxxWwvwwwwwvwxwwwwxgvwwwxwwwhgwwwwwvxwwhxwxxxwwxxgxxwwwwwxxxwxwwxxxxwxwxwwgwvvvwwxxgwvvwgvwwvxwgvvwxwwwxxwwwwxwwxxgwwwxwwxwxgwwxwxwxxwwwxxwwxwwxxwxwxxwvwwxwxxwxxxxxxywwxxxxwvxwwwwwxfwxvxwwwwwwwxwwwvwwvgwxwwwwwwwwwvwvwwwgwvwgwwwvwxxwxwvwxwwxxwxxwxxwwwwwwwgwwvwwwwwwwwxwxxxwxwwwwxwxwxwgwwwwxhwwxwxxwwwwxwxxxxwxwxwxgxwxwwwwxwxxxxwxxwwwwwxxxwwwxxvwwgwwgwwwwxwwwwwwwwvxgwwvxvxxwwwxwwwwwxxxxwxwxwxwxxwwwxxwwxxxxwxxxxxvwwwwwxwxvvxwxwxxxwhwxxxwxxwxwxxxwwxxxxxxxwxxxxxxxxxwxxxwwxxxxxwxwwvxwxwwxwxwwvwwxvxwvwwxwwwwwxwxwwxxwxxxwxwvwwwwwxxvxxwxwwxxwxwxwxxwxwxxhxvwxwxxxwxxwwxwxxxxxwxgwxwxvxwwhxxxxwwwxxxxxxwwxvxwxhwxxxwhxxxxwxxwxxxxxxxxwxxxxwgwxwwxxxxxwxxwxxxxxxwxweffwevvwTeveffggvwwggvgfvwwvxfvwwvffwvxwxgwufwvxxvwwxfvvwVVcwdfvwVVvvggvvghwfvvwgwwvwvwugvwgfugwwwxwxwxxxfwdtvwfvffvWfguvwgvuwwgwfwwhwxgvvvwwxwwxxwxwxwxwuffwvvwvvvxwxvwwwwwwvwgwwwvwxgwvxvwwwwxwxwwwxxwxxwxxwewvwfFdvcfvwVfvVVegghUvvvwgwwvvwvvvguxvxxfvvwxxwwwwwxxwwvwwwvffuvxwGuvwxwwxxwwgvxgwwwgwwxhwwwxvwvwxwwwxxvxgwwhufVewgWwuVeugvwvwvvegvwwwwgWwxwgxwwvwwwwwxwwwwwvvxxwwxxwvwwwvfvwxwwxxxwwwvwwwxgwwwxwxwwwvwxxwxwxxgwwwxxxwvwwcuvwVvffvgfwffvxwefwwxgvwhvxhvfvwwwwwwwwwwwxvwxwwwwwxxeUewfGffVvuwvwfgwvxwwwwwvhwxvwwwxvxwvwxwwwxxwwxxwxwxvwfgvwfwgwvgfxwwgwwwwwxWwwxxwxvwxwvxwwxxxxgwuwwxwwvwvwvhwfwwwgwwxwwxwxxwwwwhxwwxxxgwxvwwfxxvwtgewfwwwgwwxwfvfffwvwwwhwwwwxgvhwwwwwwwwwgwxwwwxwxxfvvwwVwfxwwxwxwwwwwvxxwwwwwwxwxwwwwxwvwxxwwwxxwwwwgxvwwwhvwvwwgwwwwwwwxwwxxxwxvwwwwxwxxxwxwwgxwvwwxvwwwgxxxwhwwwxwgwxwxwxwwwwwwwxxwwvwwwxdUUvfvvweevwvfUveuuvvgweVfvgxVvvwfwwvwwxwggevwwwwxfuguwgeVTvefvtgevgwffvvwvvgfvwvwwwvwxwwvvwwwxxxxwwUdvweefwfevvwwgefUvwwxgvggwwvvfwvwwwxwvwvwxxwxwwxwufUVvvwwwwwxfwvxwvgwwwxwvwwwwxwwwwxwwgwwfvgvwwuEUfvvwtfevwvwUvvvvgwfgvvfwwxwvwwfuwxxwwwwwwwwwufvxwwvuvwwvwvvwwwwwVewwxwxxxwxwwwxwggvwvUTffvxggvewxwEeugwvvwwxwgwwwvwxwgwgwxwgwxxwwxwvvvxwwwwwwvxxwwffwxvxxwwxwwxxxvwwwwwwwwxxwhvTuvwvvveevwwwxfVVvwwwfvvgwwvgffvxwwxxvwgxwwxwvwxvVTvewfwwVuvfgwwEvugxwvwxvgwgwgwxwwgwvwwwwhwwwxwufwxwwwwwxxgfuwwwwwwwvxwwwwwgxvwgxwxxwxwfwvwwwwfxwwxuwgwwwwxxxwwwxwwxvxvxwugfVvxwwxvVgwwgwvwwwwvxwwvwwxwwvxxxxwwhwxxwvuvxwvgwwgwwxgvxvxwwgxxwwwxwxxwxwwwwxxwhvgwvwwvxxfvwwvwwwxxgxxwwwwwxxxwwxvxwvwgwwwxxvwwgwwwxxhvwxxxwxwwhvxxwvVfwvwgVuvwfgvVvvxVfxfgfVvvwwwxwhfvxwwvxwxwwwwwfuwxvhwxfwwwwvfwegffwvwvgvwwwxgvwxwxwwwwvwwwgvvxvwwvgwxgwfxwwxwwgwwxggffffwfwvwgfvgwgwwggwxwxwxwgwwwxhwxxwwwxwxwxwwvgwwuxfwfWxhxwxwhwxvwwxxxwxwwxxxxgwxwwgwfggwvugwVwwwwwxwvvwxgxvgwvwwvgwwwwgvwwwwxwwwwgxxgwwxxwgwhwxgvwwxxxxwwxgxwxgxxwwwgwxhhWxvgxwxxxgxxwxvggguvxgvwwgwhvwxgwxwxwgwwxwxxgwwxwvxxwwwgxghxgxvwwvgwwxwxxwxwwxxxwxxwxxwwgvvwffevvgfgvvwfggfvvhwwwgvwwxggwwvwwwgvwhvwwxxvxwxxfhVvvvvwfwvwwwwwgwwxwgvwwxwwvxwwvgwwwxxwgxxgxwxwxfgfuwxggvvvwgwgvwwxgwxwgwwwwwwwxxwwgxwxxxxxwvxwwwwwxvgwxvxxvxxxwxxxxxwwwxxwwxwvgfgwwwvvwwvgwwggwwwwxwgwwxxwwwwwxwvxxwwwxhwxwWwwxwwwwwwwwwwgwxgwwxxxxxxgxgxwwxxxwgwwwwwxhgwwxvwwwwwxwwvwxvwwxwxxwwwwxxwwxwxxxgxxxxxxwxgxwwwwwwxxygxxvxxxxxwxxxuffvgwvvvvvwvgwfuvwwwhgvffwhxwetvfgfwxwwvwxuffgwwWwxguvwvVeevvwfvvwfFdvxgfvwxxwwsfvvfeuwWvxwwffuwwvwwxxwwesvwwefvfvwwwxffgewwxvwwxwwxwvgfwvfwwwwwwxwfvvvgwwwwtWfwfffffwwxhwvvwwvwwxwwwvwwgwwwwwwwwgggxwwwwxfvvwggvvvgwwwwxv6euxwvguwvwxwtfvvfvwfwhxffuuwwvwuxhwhxwgvwwwxwwwwvxwxwffwxxvwgwwevwgwgwwxwxwvgWtwwxwvgvwwXvuUevgvwwvwxgffdwwwwhwwwxwVvuwgwhvwwxvggxwwwxwwfvvwgwwwvwwwgvugxxwxwwwwwwwwwwxwwxxxwwwxxwxwwwwdtvwwVwvfwvffgfwwwgwwxwxvgewfwwwxxxewvwxgxwxwgvVevVvgvvvwwxwWvuwvwvwgwwwwUvevwwgWwwwwwxvgwwwwxwxwxxwvgggwwwxxwwxgvwgwwwxwhwxwVxvgwfwwxWxgwwwxvxwvwxwwwxhwvwwwwwxxxxwwggwwwxvwxwxvgwwxwwwxwgxwwwhxxgxuffwwwwwgvwxxxvfwwwvwgvwxwwxgwxwwwwxxxwhwwvwxwwwwwwwvwwwvwwwwwxwvfvwxhwxhxxwwwwwwwwwwwwxxwwwwxwwvwwwgwwwwxwxxxxxxhgwgxvwwgvwvggxxwwwwwggxwwwgxwvwwxwxwvxxhwwwxgxwwwwwwgxwwwxvwwwxwwvwwwwgxuFefvvvgvvvwewwfuvfgfwfgWvguwuvgvvvfvgvwgwvugVwvvhufvuvwwVvvwvuUvgvveugwfffwgfuweuvwvwvwtwuwgfdvtvwwuwgvgvvwvwfvvwwwvwvfvvxvgfwfgvwwwweVfvwfwwWvfWgwwevwgfgvwgwxwwWffVvwvwwwwwwfgwvvvgvwwwwwwwgfugwgvfwxwvwwwvwwwvwwgwwwgegwvvwwwxgfvwvffvffwvuwvvegfgfuwvdwghwvuffwVwuweuwvvhwwfwuwvwwfffgvvgvwgwwwwwgwwwxwhwwvwwvvfvxwwxwwfwxwgvwvwvgvwwwvwwggwwvxwxvvwwWgvvvxgvvxwgvvWgvxewwwwwwwfwgwwwhwwwwwgwwggwwwvwwwwxwwwwwwxgwwwvwwwxwwhgvggfxwwwwwwvwwwxgwwwwgwwuwgxvwgwwxfugvfvfvfvwvWfvwfgweVfvwevwggwvwwWwwgwgveWwwwvwwggwwwwgfvevwWvvwvwwgvffgfwwuwwgwxfvwwvwwwwwvwvgwwVwwwwwwwfvwwwwvwwwwwwfwwwwgvvwvxwvwwfxgxwwgwxwwwhvgwwwewgxggwxvxxxvvwwwhvgwgwwvxvwgvxvxvwfwxwggxwxvhhhwvwxwwxvgwwvwwwvwwwwvwffvgwWfwwwgwvwwvvwxwfvgwhWvwvwwxwgwwvwwwxxwgwwwwwwwwwwxwvxgwwhUwgvgwxwwwwvwwwwwvwgxwgwfxhvvwwwwgvghwxfvxvwVwwwwwvwxwwwwwxggxwxwgwWhwwwwxwwxwxxwxwwwwxgwwwxxxxfxvgxxxxwuvxxxfffwfvfvfvvxffgVVefvfwfeVfwvgwwfvvwvgwxvxwwwfwgwevgwwgvfvgfgfwfvfwffwwvgfwfweggvvgfwfwvgewvwvwfvvwwwgwwwwwvwxgwwgwwVfVgvfgwegWvwwxfggfwxfgwvwxwxgugggwwwwvwxxVwvgxxwhwwwwxegwwfgvwwwwxgvvwwghvgwwxvwxwwwwxxwwxwwxwxxxwxxffvwffgwvfgvgvwvffwWvvvfffwvfwwfWfwgfwxgwwfvgwwwwgwxwwwwgwwwgwwwxgwwwxwggxxhwwwwwhwvwwwwwxwwwwhxwwxhxxwwwvwwgfwwwxwwggfxwxVfvvwgwgvgwwvvxwgwxhwwvxxggggxWWfxgxwgxwxwwvxgwxxwxxhhwwgwwwxwxxwwwwvwwwxwwvwffUgvggxegWwwwwffgfxxwggvvwxxfuwggxwwgwxxWvvhwxwgwwxvfwwwgwwgvvgvxwWvvwxgwfwgwwwwvwwwwgwgwwhwwwgggwgXWfxxxgwxwwwgwwwwxwfxvwxwwwgvxgvvwxwxwwwwxwwgwwWgxwwgxwvxwwxwxghWffxwghhwxwwwwwhgwwxwxxhggwwwxxxxwugwgwwwgwwxxggwvwxwhwgwvwwwxhwxwxxxwwxwwwwxwgwxxxwvwwwwwwgwwvwwwwvxwwxvwwwwvvxwxxhxwxwwwwvhxxwwwxwxvwvwgwwxwwxwxxghwXgfxwfhgxxwwxxxggwwwwxwwwhhgxwwxxwwwwwwxwxwwwxxxwxvvxwwwwxxwwvxwwwwxwwwvwwwrwggvvwgvwwwhffwvwwwxfhgvvvwxvwvwfxfvwuWwxwxwhfvwwxwwxwgvvwwUuwvxwwevfwwfvgwvvvvwvwvxvgfevfwwxvwvWxfvwwwwwxgxwVggvwwvxwwWFDwwvwvgfvvwwWfwwhgxgVEgwvwwgwwxwxwxgxxwwwhfevfwwwvwwgxfvvxwgwwhvxwxwwwxwxwwwwwxwwwxvvwxfwvwwfvvgffvvxwUuwgwfuvgvwwxvxwwfvwwhwwwxgfuvggwwwXwgxgWwwxgwvvvwwwgwgwwxWvggwwwwvvwwvwfwwxwwgwvwgxwwwvxggWefhgvvvvwWfwwwhvfuvgvggwwwWxwwwwgwwxgwwhwwgfwwxwxwxgwwwhxvvwxvwvxhgxxvwwxwwwwwwwvwxgxwwwwxwxxwxwwgxwxxvwvwvgfgVEwxwvxwwvvwwgwwxgWFDvwuvwwwgwwxgwwwxfxxwwfxfvevfwgwvwwxfvwwvwfwxgxwwvwuvwWwwgwwwvwwhvwwwwwggxxwuWwxvwwwgwwxhwwwwxwwwhwwwxwwwgwgwxhfgxxwxwwwxxwxxwxwxvWxwxwwwwwxgwgwwgfwxwwxwwvwxxwxxwvvwxwxwhfwwxwhffvwxwwxwfuvgvwgxwwxxwxgwwwwhvxwvvwwgxxwwwwxvwwwwwxgwwxgwwwwwxwxwwgxfxwwwwwwxwxxvwwxxxxwwwxgxxwvvwwXwwvxggwwwxwxxwwggxxwwhfwwwwwxxxxwwxwxwVgwxgxgWgWehxxwxxxxwwxxxwxfwvwwxwwwgvgxvdwwwvwxvfvwwwwvvwwvfvwfwwffvgwfxwvvvxvwuvvwvwvwvwffvgGgvfvgwxvgwwwvvwwhwwxwwvwxwwfwvwxwwfgwvvgwvvgwwgwfgvwwwvxhvvvgxwwgwxwxwwwwwxhxxxwxvwgwvwwwxwxhwwvxgwwwvggwwwwwxxhwwwwgwvxvwvwwvwfgvwwwfUvwWfufvvvwwwhwvwwwvxhvwxwwwwwvwwwwffxwgwfwwwwwwwhwwwxwwgwxwvwwwxwwwvxwwxxwgxvwxvvfwwxxfvwwxwvwfgfwwxggwwxxwvxgwwgxwgvwwxxwwwvwwgxwwwgggwgxwwhwwxwgxxwxxvwwwwwgwwfwwvvggvvwwffvwvxvxggwwwwvwwvfwwxxxxwwxfhvwwwvvgvwwwhfwvwggxvwuwxWwwwwvwwxwwwwxwxwxxwwwvvwwwgvwwwxwwwvvgwxvwvwwgxfxxxwxxxvxwxgwxxgfxwhxwxxwxxwwgwwwxxvxxxwxwwxwxxwvwwwwxwwwxxxgvvwxwwvvWgwwwxwvxwgwwwwwwwxwwwwxwwwgwvvwwxwvwwwwwgwwWwhwxxxxvxwwxwxwwwxwxwfxxxwgxxvxwvgwvwxxwwxxwxxwwwxxwxxwxfvwwwwwxhwxwwxwxwwwwwwxwxxxegVwgxvwvxwxwVvfwwhwwugvwwwwgxwxwgvwvwVWVvwhgvvfwxfwvwwfuvgvvvwxegewxvwwfvwwwwwgvgvvwxgwwwwVwvwwhgwwxwxxwwwgxgwwVWfwxUVfvwwxwwwwwwwghfvwwxvwwxwwwgwWwxwwwwxxwwwwgwwxwwvwwxfwwxwhxwgvxwwwwxfxxfwxwxxwxxwxwxxxwwgwwwgvgwggwfVfwwwgevwxgvggwwwxwvxgwvwwhwvgwwxxwwwvwwxwwwwxwwxgwxwxghwwxhWvwwxhxwfwwxxwwxgwhxwwwhxgwgwgwxgfwwvxvvwgwwxgvwwwxvwxwwxwxwgxxwwwwxxxxxwxwwxwwwwxwxwxxxwwwwgxgwvvwwwxwxwxxwwwwxxxxwwxwvvwwwwggfwfVUwwgxwgwwvwWWvgwvvwwwwwwhgggwwwwxxxvwffwxvwwwwxwxwfwgwwXwxfwwwvwwwxwgxxxwwxwwxxxwvgUvwwwvvhwVgvegwwgfwwxxggwwwvxwwwxxggwwxxxxxwwwwwwwvxxwxxwxwwxwwwwwgwxxxxwwhwwxwwwxxwwgwwwwxfvgwxwwwWwwvwwwvgxxwxhwwxvwwwwwxxwwfwxwwvxwxwgfwwhxwhwwwwwvwxxxwxgxxhxxwwxwvwwhwvgggxxxxxwhxwxhxxxxxxwxwwwvwxxxwxxxwwxhwxwhwwxxwxxxxxwxwxdUUvUevwfvuwgWfvfvvwvwvvwwwwweuvvefevwwwgwfVVwfvgxfvfxdVfwfgvvevvvwwgwwxwvvxxwweUTgfeuwgxwwwwwvvwvwvwwwxetuwffUvwffwwgffwvwwxwwwwxuevvfvfwwwxxwxwwxgwxxwegfvvuhgwwwwxguxwwvxxxwwggwvwwxxwxgwwxxxVvfxdWfwfgfwfvwuwgwwxvwwwweFUvfvvgwwwwxfuvgwwxwxxxxwufvvvwwwxwwwxwwwwwxevwwwVevxxwhwwgwxwxxwwgvxfFUwVudwwvxwwhguvgxgwwwxwwwxVgwuuhwwwvvwvvwwvgwvwxxxewwxgvwwxxxxxwwgwhwxxwwwvwvxwwgxxxwwwvxxwxxgxgduuveVVvvfgwgvwwuefvvwxwxxfevvvwfgwxxxwwxwwgwwwxxwwxfEUgUudvgwwxwhfvxgwxxxgWfvwwwwwwxwwxwwxwgvwxwxwvvwVwvvwwwwgxgwwwwwwxxwwwwxwwwwxxxxxxwgxvxgwvvwvwxxxwwxwvxvxwhwwwxxwxxxwxwxxwwwweVVgvwgwwxwfvuwvgxwxwxwwhwwxwwwxwwgxwwwxxxfwwwffwwxwwwwwwhwxwwwwwwgwwxxxwwxxwwxxxhwgVwwuwgwvwwwwwwwxwwhwwvwwxwwwwxxxwvwgwvgwwxxwwwxwwxxxgwgwxxxwxxhxgxxxuVVvfuwVetvtfVvfuvgvvufvvwwwfuuwuwwuwwwgvvwuhwwwvwetuwWffvugVfgfguvWvVewgwwwwgwxwgwwuwwgvfgVvuwvgvwfvvwgggwwwwwvwwwVveguggwvfwwfwuwvfvuwfvvwgwugwgwxwwgvwwxwvvwxwxxwxuwwvwvfwwwwwgvxxggwvxwwwvuwwwwxwwwwxwxguuwuWVuWVwfvfguGVwwwwwvvgwwvwugvgvuwFevwvWgwVevgwwgwfvgvwwwvgvwwvwwgwwwgwwwwhvwwwwwwwwwxwwwwggfwwvwvwwxxgvgxwwwwgvwvggfwfgfvwwgwwffwwwgvwwwwgxxgwvgwxwwxwwwwvgWwwhhfgfxxgvwfvwxwvwxwxwvwxwxwwwwvwwwwvxwwwxwwwwxxxfudgtwfugwwWfutgwgwvwfuuwggwfwwvwwwgwxwwxxxxxxvvwWvuWfufvwwfvwwwXgwwxwwwwwwwwwwggwxwggwgwwwwggfxwuwhwwvwgwwxvwxwfevvhwwhwwxxxwvvxwwwgwwwwwxvwfgxxwfvxvgwvxwxwwwwwvwwwwxxwxwxwwwwfwvxwwwwwgwxwxtwvfvvWvvwhgwWvvxxwvwwwwwwvgwxxxwwxxwwxxwwgvwwWgwwwgwwwwxwwxwwwxwwwwwwwwwxwwwxwwxwwxxwVvfxwhwwgwwxwxwggwvwxwwwwwxxxxvgwvxwwxvvwwxxwwxxwxwwwwxxwxwxwwgvxxwxxwxwwhwwgwxwwwuxwwwxwwuuvwfggwwwxwwwwWfwvwwwgwwwwwvgggwwwwggwxWwvxxwwxvvugVfvuvfwwwxxwwwwwxwwfgvwwhWWgvvwgxwwwwwWwhWwwwwxwwggwvWvvwwgfxxxgwxwxxhxwwwvwxwwgvxwxwgwwxwxxwwxwggwwwxwwwuggxwxxxgwwvvwwgwwxwwwxwwxxxxwwwwxvfvWffuvvwwfwwwwwfvwwggwxwfwxwwxggvexxxvwwxwgwwwwhgwwwwwwwwgwhwwxxwwwxxwxwWhvxvwxwwwwxxxhwwxxxwhhwwgvvvwwgwwwuhgwwxwvxvwgwgWfwwwwwxxxwgwwxxwgxxxwxwxvhgwgxwwevwxxxhvfwwwxXhwwwwhhxvxxxwxwwhxxwwxwwhwwggfggwWvffwWgwwgwgwgwwxxxhgfwvwwvwgwwwwwwwxwxxwWguwgwgggwuwfwwxwxhwvxwggvxwxxxgwwxwhgxxwxvghxwxwwwwwxwgxwvwwxwxgWwvwwxxxxwxwgvxwxwxxxxxwWwwwxxxxgxwxfwhxhwwvwxxwwxxxggwvwwwwvuwgxfwwgwwxvvwxvgwgwwxxvvxxxhxxxxxxwwwghgvwgwxxwgfgwhxhxfwhwwxxwxwwwwxxxxxwwxxfwvwxxwxwwwwwxwxxxxwxgxxvxxwxxxxxxxxwxvwxxxwwxxhhwxxxwwxxxxxvgwvutvxwvwvfvxwwwvwwwfggvggwvvfvwwvwfgwwwhwwgwwvvxvwxgvwwveuwvwwgwvwgWwewwwwwvgvffvwvwwgwwwwwxwwgxhwggwwvwwvwfwwvwvwwwgvvwwwvwxwggfvvvvwwwwxwxggwhwwgxxvwwfwvwvwwwwxwxxwwxxxxwwwvvWgxwxggwwxxwwwwwxgffvvwxxwwxwewwgvdgvwwgwwvgwwvvgwfxvxxgvwwwhwgwxggwxgvxwxwwwwxwwfhvxxwwxwxwwwwwwwxgwxxhwwwwxgwwwhxwxxwvhvvgvvwxwxwxgwgvwxwwwwgvwvvWwwwwwggwwwxgxwxWwwwwwxxwwwwwwxxwwwwwwwvvwwwwVwhwwwxxgxwwxvxwwwwwxvvgwxfwwwwwwggwvvvwwgwgvvvwwwggxwvwgwwxwxxxwhwvvvwwvxgwhwwxgwwxxwhvvwvvgfvxxgwwvxxxwggwwxxwwgfwgwhvgxwvwwxxxxxwwvgwwxwxwxwhwxxwxhxwwgwhvhwxxxxxxgxwxwxwhgwvwxxwxxxxwxxwhwwgwwwwgwgwwwwvxxxxwhwwwvwfwwgxgwxxgxwxwxwwxwvxxxhwwwxwvvxwwgfxwvwxwwgwxwwfvhhwxxhwwwwgxxwwxwwgwxwwwwxgxxxhwwwxwwhgwgxxvwxwwgvxwxwwxwgwyuwwwvfgvvwvvwwwfwggfVuwgwweufgvfwwwwvwwevVvuwvwwweufgVvuwwxwwwvtfvuwwvwwvewweefgwwxvwwgvuwwwwwVvuvevgXwvgxvwwhvvgwwwwgwwwwwwgvfvvwwwwxvvwwfvvwwgwgvxwfvvwvhwvxwwfvxwwwvxwwwwxxfwvwvwfwxvwwwvwwxwwwwwwwwwwvxwwxxxvwxgwwxvwwxvuvwvuwvwgvdgeuffwwwwwwgvuwwvwxVfuwvgxgwvwxvwwgvgVwwwwwwwwwxxwxxwwwxwwxwxwwwxxwwxhwwwwwxwxwwwwxwWwwvvxgwvwwwvvwwgwwwwwvwvxwxwwwwwwwxxhxwwxgxwvwwwwxxwwwxwwwgvwwwxxxwwxwxwhwwwwwwxgwwwxwfvxwwwwvvwwfvvwwgwwgvfvvwvwhvxwwfvvwwwvgvxwwwwwvwwwwwwwwwwwwwgwwwgvwgvxxwwwxwxwwwhwwwxwwxwwgwvwwxwwgvxhwxxwwgvxwwxwwwxwxwwxwwwxxwwgwwwwwxxwwwwxxwwxwwwwgxxxwwxwxwwxwwxxwgwxxwwwvwxwvwwwwwwwgvwwvwwgxwxwwgvvwxwwwwwwwwwwxwwwwwwwwwxwwxwwwwxwwvwxwxwwwwxxwgvxwwxwgvwxwwxxwwwxwxxxwwwxwwhwxxxxwxwwwxxwwwxwxgwgxxxxxxwwwxwwwxxxwxwwxvwwwxxxwhvwxwwxwxwwxwwwtVefvvwVwvwvwvwfffwuWfgffwwfvvwvvvwfgFwXvwgwwxUgFvvvvwgwvwvgwVvvwufevvfffuuweWvgevfweuvwvwvgWvWwWvwgvwvxwwufwwwgwgwhvxwgwwfvvxgwgwvwwvwuwUWfwwvfvfwvwwxvwffvvFwffwvwwwgwFwfgwgwggwwvxwVwwwgwxewvwgwfwvvfwwgwwwwwwwwwvWgvvvwvwvwvwwxwgxwwvwwwwwWgfwugfgefgVvuwvfvgfugwvdwgvgwggfWvgwwgvwwxwwfewwwgwwwXwwwwwvwwgwxwfvwwwggwvwwwwwwwxwwwgwwwxggwwwwwgwwwggggwwggggwgwwwxgggwwwgwxwxgvwvvwwggVwhwxwfwfWwwgxggxvwwwwvwwwxwgwgvWwwwwwxwgvvwxhxhwgwhgvwwwgxvxwwvwgwvwhgwwwwggwwgxWxwwwxUvuxggfwvwwgvwfWfvwfvwwgwfwxwwffvwWwegwwwwgwwwVfegwhwgfxvwxwvwgfwvfwgvwwgfgwwwgwfWxxwfgvfwfwwwwwgwgvwwwgxwwwgwwggwwgwxfwwwxwxwwvxfwwwXwwvwfxgxwvwwgvwwwwxgwvwwwhwgwwwwwwxwwwwwvxxwwWvgwhhVxwxgwwvwxxwwwxwvgwwwgwwxwgvwxewwwwwvwvwhwwevhwwwwwvwvxfwgvvwvxvvhwwxwwwhwxwfwwwwwwfwwwwgwwvgwxwwwhgwgwfxfxxvwwwwhgwhwxwfwwwwwwwgxxhxwwwwxxwvwwwwxwWvgxhhWwxwwwvwvwwxxwwxgwgxwvhwwwwwwgxxwwxwwwwxgxwxxwxwwxxwwwwwwwwvvwxwwweVdeffweugxegVffvwwgfxffwgfgwfgvwfwVvvgvwfuvwuvwVwvxggwuvwwfwvvfufguffwWvvwvffVwvvWvuwfwwgvffwtvgvuevwfvfvufwwgxvxvxvwgvwvevffgewfwgVwVgffgvggwvwgwwwffvWgVgwwwwwggfvvVvwfwwgxwwxwfwvfvfvfwwwfwwvwwwggggxwwxwgvwwwwwwgvvgvvwwwwgwwfwwgxvuwwwfvuwvffvtWwwfwvwfUWVwvvFgvffggwfgvweuvwvtwwvwwwuuvgvgwwewgwgfwwwvxgwwwvwwgwwwwgwgfwgwgvwwwwfwwwvxwwwxwwwxwhwhgwgvwvxfwwggfwfvgfgwwwwwwwfuvVwwvwwwwggwgfwuwwwwhvgwgwxxwvwwghgwggwwWwvwwwwvxgwwxhwvwwwwXXgwwwwwggwwwxwgwwvwwxhwwwxwwgwwhvwxfvwefevfwgfgUfvgfwvwwvgvvfgwfgvfwUgwgvwwwwwwwwWwwfwxwxxxgwewfwVwwwwvgwwwfwWwfwxvwwwwwfwwwwwwwwwgwxwwwxxwggwwwggwwwwwfwvwgwuwxfgwwxwxwwxxhgvwwvfwwgwhvggxwwwxwvwwxwxwvfwvwxxwwvvwwuwwwwxuwgvgwgwwxwhgwwxxxxvxwxwwwvwvVwfvwvwwegfvgwggvgvwxwhgwxwvwwgxwwwwwwwwwwwvwwxwgwxwxwgxfwvwwWwwwgwwxwhhfxwwgwhwwwxwxwwwwwwhwwxxwwxwwhwwxfgwwvxxxxvwwwggwhhhgwwhvhhwwwwhgwxwwxxgwxhwwwwwvwwxwwwxwwwxwvvhwffwxwxwxxxxxxxxwwxxxwxefUwUvUvvwuxvUvvfgvwuwwgwwwEfuvefvuwwwTuvwdfVwwvwwfwvwvgeUwvwegTugvevevugUwwwwVwvwwwgwugUwfwgwevtvfvgvfvfgwgwwvwewwwwEvfgdwvvwwwwdgggwvwwwxxuwvwUvvwwwxgwxVwvwwfxwxxxtgwfuwgwvwxwxfvwxgwwwfwwwwwwxwxwwwxfwgwwwwwxfvxvVewuwwfvvwegVwwvwfwfgwwfvvgfwwvVvuwwwwwewVwwwvwvgvwwvwwvgvwgwgwwwxxgvwwwwxwgwfgvwvwwwvwwwwwgwwwxwwwvwwwvvwxwgvwfvwvvvwwwwwgwgVwUwwxewwwfwwwwxUvwxwwwxxwggfvvwvwwwwwxwvwwxwwwwwwwewwxwwwwwwwgwwxxwxxwwwxwwwxwxwxVvegugwuwvfwwwuwfwVvvwgvvxwvvvwfvvwwgwgwwxgvwvxxwxvwfvvvvgwfwVwVgvfgwgvwwxwwgfvvwwwgwxwwvhffwwvwxwwxxugwefvfwwxwxxvwgwvxvwxwwxgwwwxvwgwggvggwxwwwwxwxwfuggwfwwfxwwwxvwvwwxwwwvxwxwwwfwvwwwxwxwwwxwxuwwgxVwwwwwfwxxxggwwwwxxgvgwxwxwxwwwwwwxxwwvwxxxvwwxxwfvwvwwgwwwwwxgwxxwvxwwwwwwwwfvxwgwwxxxwwwwfwvwwwwwxwxxwxwvgwvxhwxwwxwxxwwwxwwwwwwxgvxxxwxwwxwwgxwwwwwxxwwvxxxfvvgwwwffvgggwgfVgvEfuwgwwwWdwwwuvvwegvVfvwgwwxgxwgwwwwwuvxwvfvfwwhwwgxwxgWwwfvwwwgVwwwwwvuwvvggwgWufwgvgxwgwwwggWdvgxwvvxfxvVvuwwwvwwgxwwwwxwwvwhxwwxxxwxxxxxwwxwVwgvwwxwwwwewwwWfuvwxxhwvvwwwvxwwxggwwwxhwwxvwxffvwgfwgfvgxggwwwwwgfwwvggwfgwwwwwwvvwwgwwwggvvfwwwwgwwwwgwhwwgwwhwxwgwghwwwXfxwwxgwvxwgwxhwgwxxhxwgxwgxhxgxxxwhwwwxvvwwwfvxwxwxgwwwwwwvwwgwwgxgvxxwxwwwxwwwwxwxxgvxwwxxwxvxxgwwxwwwwwwxxhwwwxwwxxxgxwwvwwxxxxxxwwwhgwwxgWevhvwvwgwfwfEgvggfwxwxvxgwwxgxxgwwxgxgvvxxxwhwwxxwxxwwwfwwhvwxvwggfwwwfgwxvxxwvwwgwwwwxxxwwwwxxwxgxwwwwhvwwgxwxwwwxxwwwxwxwxgwxwwvxxwxfwwwxwxgxxwfwwxxwwxwwwvvfwxxwhwgwwhwxxxxxhwwwxxxxxwxwxxxwhvgwvwwwgwgwfvwwggvfvwxwxWhgxhwxwxwxhwwgxhwxgxxwwwwwxhgwwwwwwxvxwxwwwxvxwwxgxgwwhxxwwxxgwvxwgxxxwxvwwxxvwvxxxxxvxwxxxwhxxwxxxxxxvvvxxxxwxxxxhwwhwwxwwxxwhxwvwwvwwxwxwwwxxgwxxxugVvfvuggvfgUxwxvwwxwvgxgwwugvvgvxfgfwwxwwwwwwwxwwwvvfevwwvgwvwgvwwwxwxvgwgewvvvwvwvwwxgxgxxxwfwwwfVUgguwxffwwwwwggwwwxxggfwwwvwvwwgwwxvxxwxxwxwgwgvvvggwgwvwwwwwwxwxxwwwvxwwuwwxvxwxwxvwxgvvwuWfvvgvgvuwwVvvxwwwwxwxfwvgvvvvwvwvxxwwvwwwwwgxxxxxwgwwxwwgwwwwxgwxwxwxhxwfxxvwwwwxvvwwwhwwxwxWhxxwxvgggwwhwvxxxwwvxwwVwwwwvwwwhgwwgxwxxwwwwxxxxwxvxwvvvwfwwwxfwxxxxwwwwwwxwxxxwxxwwgefeughfvwwvWwwwwwwWwwxwxfgewwwwwwwgwxwwwwxwwxxxwwwgvvvgwwwwwwwwvwwgxxxwwvwvvwwwwxwhxwwgxwvwwxxhwfWVgVevwwvvwwhvwvwwwwvxgwxwvwgwvvvwwxxxxwwvwwvwfghwxwxwwwgwwxxxgwxxxwxwxxwwwwvwhwgxxwvwvxhhwxwgvwxwwxwwwuwwxxxxxwgwwwwwwwxwwxwxwxwvgxxwxwvvwwwxxwwxwxwxhxwwwwxwxwxxwwvwxwwwwwwgwxwwwwwxwxxwxxhwxgwwxwxxhxxwwxwxxxxxxxxxxdVefvvffvwwegFufvvwugegvgFfvwwgvuwvvvvwhuwgwvwvgwwfvvwwvwvwwgwufvfvggvVvuvvvugfguvvggwvwwvwuvftvgvfwvwxuwVvuwvwvgwxwwwwwVuwfgevvfvvVvefwgfvfwwvWwegwxvgvwwwggvwwwwfxvgwvxwxwwwwwvxgwwewwegvfwvwxvwwwwwwwwvhwvwwvvfwxgvwwvxwwwwxvvxwxwwwwwfvuwugufwvWuvuwveVfwfuvgfwuwwvgvffeuvwfwvhvwUvvwvgwgvxwwwwwvvwwgvwwwwwwwwffwxwwxxwfwwwggvvvwwwwwwwwwwfvwwgwwgwwwvwwwwwgfwwwvwgvvggwvvgvwggVwwwwwwgwwvxxxgwgvwwgggwhgvgwfwwwwwvvwwxgwwwwgwwwvwwggvwfvxgwvxggwwxwxwwwwvxwwwwwfvwugeuffvvgvdgwwgvfgwggfdgwwvgvwwgvvwvwwwgwwvWvwwwhwwgwvxgwwwffwwwwwewvwwwwwgwgwfWwhwxgxvwxvwgvvgwWvgxgwvggvwwwwwwxwvxwvvwwvgwvwwwwvwwhxvwwwxxhvxwwgvwgxwxwwgwwxwvxxxgxwxxwwgugvwwxvwvwxWfxxwwwwwvwwxwwwxwxxwwwvwwxvvvwwufvwggguvwxxgvwwvwvgwwvwguvwwwwwvgwwwwwwggvwgwwxwgwwwwwwwwvgwgwxwwvvgwwgvxvgwvwxWvvwwwhwxwxfwxgvxwwwwwwwwwwguhwvwwwhwwwwwgWfxxwwwwgxwxgwxgwwxwxxxwxgwxvvwxwvwwwxwxxwwxwgwwwwxwwwwvwwxsfvwgwfgfgfwfgVvgwfgvgfgVvwvgvvffgVvhwfgVvgwxwwxwfgffvwfwfffvfwvwvxvwvwwhvwwvwgwfffvfwfxwwugwfwvxwxgwwggwfvvvgU5vwxwxgwwwfU5vwwxgxwvxwwxwwwvvwvxwgwgwvxhwxwwwxxxfgVvwwfwvwwxvwfwwxwwvxwwvwvwwvwvxwxvhwgwgxwwgfffvhwwfffvgvwvggwwgwgvgwxgwfffvwvwxwwxxxgvvwvwgwuwhwwwxfwwwwwwxxfvwwwwWwwwxghwwVwwwfvvvwwgWwxhwvwwwWwwghwhwwxxfvggVfgvvxgvwxvwfwgvvwwwwgwxwwwwvvgwxxwxwwxxwvxvhgxhwwwgwwwwwfvvxxwWwxvwwfwxwWwxgwwwwxvxwwwhwxxxwxwgwwxwwwxxwwffvwfU5vwxwwgvwgU5vwwxhgwxxvxxwwxwwgwxwwwwwvwvxwxwgwxxggVffwvwvvxxfwfvwwwwgxwxwxvwvvwwxwwwwwwwvggwggwwgwxwwwvgwwwvxggwvwwfwgwwwwwgwwxxgxwwxwfwwwxfwwgwxvxwxxwwwwgwxvvwwxxwwwwvwwxvvwgxgwwwxwhhxwwggwwxfgVvwvwwvwxxvgwwgwgwgwwwvgwvxvxwxwwxwhwwgwwxwvwwxfvwxwWxwwvwxwWwxwwgwwgwwwwhwxwwwwxxwgwwhgxwxwgxwwhwxxvwwwxxxwwwgwwwvwggwwwwxwhgwwghwwwhwwxxwxxfgwwxwwhwwwxwhxghvwwxxfvwxwwxwxxvffvVfeefvvwvwgvffvgfvvgwvweufxfvwufevvxgwvvfwvwvwwwwgvfvvvvffwvgevvvvgvvfvfguwvvvwwwgvvffvvfwwwxwwgvwvvvvwwxxwwVvfVfvffuwgfewwfwxxgwxwvwwxwguwVfwvwwvwwwwwwgwhwxxxuwvwgvvwvwxwgwwvwxwgwwwwwwwgwvwwwxwxwwwwwvvgvgfwvWfwwwvwvgfvWvfggvwwwgwwvfgvfwfwgxwxgxvvvvvggvvwwwwwwvwwwwxggwvwwxxwvwwvxgxxwxvwwwwwwwxxwxwwwwvwxgwvwwvwwvvvwfwuwwwwwwfvwwwvhwvgwwgvxgfUfwfwwwvwxvxwvxwgwwwwxwwxwvwwgwwxwvvwwxwgwwxxvxwwwwwvxwwwwxwhwwwvwfwwwwwvwfveVfwffuwfgvewvvfwghwwwvwxwguwVgwvwgwxwwwwwwxwgxwxwvvvffuvwwwffxwwwwwvgggwhgUgvfvwvwgwwwxxvwxxwxvxwxgwvvvwwwwhwwwvwxwxwxwwgWwwxvwwhwwwxxwwhwwwxvwwwwhwwxhfxxxggewxwfwwwwgggwxxwxxwwwwvxwwwxwxuwvvfwvwgwxwwgvvvwghwwwxwwwxvwvwwwxwxxxvwwwxwwxwwwwwwxwfxwxxgwwwvwwwxwwwwxwwgxwgwwhwwxxgfwxxxghhexwwfwwwwxwggwxxxxxxwvwxwwxwwwxwwxwwwfwwwgwwvwxwwgwwxxwxwxwwxwvwwuxwwwwxwwwvwwfxwwwwwwwwwweuwwwgewfguwvwfvvwwwwwvwxwwwwvvwvvwwwwfvwwwwwxwxgwffvvvwgWfvvwwfuwwwvvwxwggwwgwwegfwwwwwfwwwgvwwwxwvwfvwwvgwvgfgegwwwwxwvwvvxwwwxwwvxvwgwwvwwwfwwwwgwwvgvxwxwxwwwwwwvfwwxvVwxwxwwgwwwwWgfevwwxwguewfugwxwwwgwxwxVwwwgwewwwwxwvwwxxwvgwwwxxwwwgvxwwwwwwxxvwwegxwwxwwuwgxgwwvfwwvfgwxwwvxwxuggwwgwfxwfwwwwfvgwwwwvwfhgvwwxwwwwxwwvxgwgfxxwwwxwwwwgfxwwwwvwwgxwvwwwwgwwvxgwvfwuwwgxwxwgvwwwwwxwvvwwgxwwwvxwwwvwvwgwwwvwggxxfgwvexxgwwxxwwwgwuwgwvxwxgwwwxwwwxxwwxxgxxwwxwgvvwxxxwwwwxwwwxxxxwwwwwgwvxwwxwwfwwwwwwxwgxxwwwwwwwwwwwxwfwvvwwwwwwwxvwxxxxwevwxwewwxwgwwwxxxfxvgfwxwxwwuwxxxwwgxxxwxwxvgvgwwwwxxxwwvwxxvxxwxxwwxwxvwggwwwwvwwgggvwgvwwwwwvgwwwwggvxfwgwxwVvwwVUwvvwwgvvxwwwvwwwwwwwwvfvwwwwwwwwwxgwwwwvwvwggwwvwwgwgvwwwvwgwgwxfwwvwxwwgfwgwwwgwwwwwwwgwxgfUgwwWugxxhghwwgwwxwxxwwwwvhwwvwvwxwwxwgxxxxwvgwwwgfwwwwwvxwwwxwwwwwxwgwwgwwwwwwwvvgwwwwwwwwwwwwwgwwwwwwxwwwgvvwvwwfvvwwwxxxwwxxwwwwgwxxwwxwwxwwhxfxwvwxwgvxxghxwfwwwvxhxgxwwwwgwwwwwvvwgwxwwxgwxwgxxwgwwxvxwgxwxxwxwxhwwwwvxwxggxwwxxwxgwwxxxgvwxwwwwwgxxxwwgwvvxwvxwxwwwgwwxwgwwwwwwwwwwwvVVgvxVvvhvxxxwgwxwwwxwvwwwwwwwwxwwwxwwvwwxvwxwxxwwwwxgwvwxxwwxwxwwwxxwwxxwwwwwxwwxxxwwwwxxwwxxwwxwwwwwwwvxxwxxxhwxxxwwwxxxwwxxxwxwwgwxxxgwwwwwwwvxwwwwxwxxxwhvxxwvgvhhwwxwxwwxwxwxxhxwxgwfxwxxxwwwxxhwxxwhwhwvwwxxxxxwxwwxwwwxxgwwxwvwwxxxwxxxxwxwfwxxgxwwxxxwxwxwwgwvwwxwxwxvvfefuwwwgxwvwgwfexwhfwwwwevuwfgfvxwwuvwvgvfvuwgwxvwwvwvuwvwvvwvwwwgwwwwwwwwxfwffwwwwvwwwwVwgwxgxwwwwxvfwvwvwfwwvvxvwfVfvffwvwxfgfwwgwxwgxxwfwvwwwwvwxwvgfwwghvxwwwxwwvwwwwwwwwwvvwwwxwgwxwhvwvgwwwwwvvwvgvggwvgwfgwwwwwwwxgwegfvvwvwxwgvvwwxwwvhwwxwwwwwvwwgvgxuwwwxwwwwxxvwfxxgwwgxgwgxgwxwxggxwwfhVvwvwwwxxwgfvwwwgvwwxxggvvwwxvgxxwwwwwwwwwwwgwuwxwvwwwxwwwwwxwwxwvwwwwxgwxxgwhwwwgwxgwwxwwvwggfwwxwgwwgfvwfxwxxxvffvwwgggwxgvwxwwwwwwfwfvvwwwgxwwevwwvxxxxwwvwvwwxwgwwhxhwvwxwxxwvgfvwvwwwxxvwxxgwxwggvvwxwgxwwgxvwgwwwwxxwwwwxwxgwwwwxxwwwgwwxwxxxxxxhxwxwxwxxxwgwwvXwwxwwwwxwvwwxwwxxhxxxxvghwwxgfwwvhxwxgxwwxxvwxxwwwxwwgxxwxxwxxxgwxxxxwwwwwwwxwxwhwgwxwxwhwwgwxxxwxxwxxwhwhwwxxwwwwhwgxxxxxwwwwvfwwvugvfwvgfwGefvuvwwvwVgvgwwwvwVfvVutvfuwwwxwgwxwfwvggwwvwgffxwwwwgwvggvvwgfwvgvwwwwvwwvfwfvwvggvvwwwwwvwvwVggxwvfvwWWegudvxwgxwgvhvwvvvwxwxxwwvwghwwxgwwwghvvvvwxgwgvgwvwggvfxwvwwgvwwwxwwwwwwvxgexxwvxgwwvwwxvwwwgwvwfwWwxvwwvuwgWuffxwwwwuwwxwgvgfvvgwfvwfuwwwxwgwwgwwfwxwgwxwfxwwvxxWxxvgxgvwfwvxwvxxwwwxwgwhwvxwvxxvxwwwvwvwwxwwwfwwgggwwwvxxvvwxhwwwwwxvwxgwxwwwwwxwxwwvwvxwwwwwwwxgvxxxxxwxwwxxwgxvwwwwwxvxwgwxxwgfhwxwwwgGevVvuwwwwxwwwxwgwwwwgwwgwxwwhwvxwwhwwwvwvwxwwvwwgwwwwxwwxggvxwwgwwxwxvwxwwwwwwwxwhwwwhwwwwvgvwxwxwwwvwxvwwvwwvxxwxwwwwxvxxwxwwxwwxwxgwwxgwwwhhwwwwwxvxwxwxwwuvwhwxxwxxvwvggVvugwwwwgwwwxwxxwwwwwxhwvxwgxxhwwwwwxwxxxgwxwgxxgxxxxxxwxwxwxwwwxwwwwwwhxwwhgxxwwvfgwwwgxxxwxxxxxwvwwxgwxwxwwwxxwvxxwxwxxwvwwxxxhwxwwgxwxwvwggwwvvvwVUwwwvwwwwwfwgvvwwvwwwvwvwxwfwgwfvwwgwVvuvxwwwfwwwvxwwvwfgvxwwwwwwwwwwwwwvwwwwwwvxgfvwfgwwwwwwwwxwwwvwwwvffUwxgxgxwwwwwgvxwxwwgwgwwwfewwxwwwwwxwxwwwwwwfvvxwwwwwwxwxwxwvwxwfwwwwxxxvvxwgwwwwwwwgwwvwvwwwwwwwwwvggwvwgwwwwwwgwwgwfvwvwwvxwwgwvxvxwxwxgxwwgwwwwwwwxwwwxwhxgvxxxwxwxwvwgwxwwwwgwhhvxhfwxwgxwxwwwwwwwwwvvwxxwwxfxxwhwvwxwxwwwwxxwhxwxwwwwxxxwwgwvxwhhvwxwwgxvwgxxwwxvxvwwwwvwVVwfhgwgwwwwwwvxwwgwvwgwwwVwexxwwwwwwvxxxxwwwwwgxwvwvxxfvwxwxwvxwxxvwwvxvvvxwwwxwxwxxxwvwxwwwwwwwxwxxxgwwwxwwxxwxwxxwxwwwxwwwwwwxxxxxwwxwwwwwwxwwwxwvxwwvvwwxxxwxwwwwwwwxwxwxvxxxvwvwxwhwwgwwwwvxwvgvwwxwwwhwxwgwwwwwwxxwxxxwxwxggwxwvwxwxwwgwxwwwwxxwxxhwwwgvwhxxwwxxwwwxxxvxwwvwxxxxxwxwwwxwwxwwxxwxwwgwwxwxwwxxvwugwxvvvvvffvwvgvwvvwwwxfwgwwevvevgwwvxvwwwfwwwwwgwxxUvfgveewfffwwfvfvwwwwxgwvwwwvfewfwegxwxwwwvwwwxwxxxUvuwVwffgwfwwewgwwwwwvwxwgfwvwfwvwxxwxwvxwxefvfguvwwvfwwxgvvwwvwwvwgwvwwvwvvxvwwwwwvxeffgvfwfffugwvwfefvwfvgxwwxwfVfgwwxwwwwxwWgfwgwwxxwxVguvvfwwgwwgwwvwwwxxhwwwwxwwgwvwhwvxhwwwvwwwwwwwhwwgwwxwUVfvffvwgwwwwwwWfvvwwwgwvwwgwvgwwwwvwwxgwwvwwwwwwwwxVvfwfgvwwwgxuwwvvwwxxgwwvwgwwgwwwwxwvwxxvgvvxwwwxxefvefvevvwvwvwwugfwwwfwwghwvgvfwwwxgvvxxgwwxUgevvfwvvwvwwgwwwwvwwwwwxxwwwwwgwwxwvxwxwwfvxxwwxwwwfgvvWwfxggvhxwwgwuxwvxvwxhxhwxgwvwwwwwwxgxwwwxxwwxwxxxgwuwgwvwwwwxxxwvwwwxxxxwxgwvgxwxwxxwxxwxxwfguuvwwwwwwwwwffgvwwwgwwwwvwwvxwwvxwwxxwxxwfvvgwwwwwwxwwwwvvgxxwwxfwxwgwwxwxxxwhxgxwxhwVvwvwwwvgxwwewvgwvwwwvwhvwwhwhxwxxxwwxxwxwxwwvfwvgwwwgWfwxgwwgwgwwwwxxwxwwwxwwwuVvwegvgeffwVffefwwgfexegfwfgWwfvvgtwuvvgewvWvwvwwfwwewfwvvegfffdfwwfffwvwvwgggwggwwuvwwfwevfgfwwwwwvgvwwfwwwwwxxUufwvwuufvvffvwfgffwvwguvwwgvwvgwvwwwxwxwwfugwxwwvwuwwgwdvvwwwfvwwfwwhggwxggwwwwgwwwvxvwwwgwwwgwwwgwwwxwwwdVfwwuvveVfvvufvfffwwwwevuwwvvwvguwgvvfvwvxwxWfvwxwwwvwwwwwuffwvwvwwggwwuwhwgwfgvvgwwwxgxwvgwvwvvwxwxghvwvvwXhwxwwhweffvwfugVfwvwfwvffevwgwfvWewwwgfwwwwwxxhvgvwvwwwxwxwvwwgvxgwxwgvvwwwgwfwvvgvwwhwfwwwwwwxwwxwwwgwxwwwwgxwwxwwvwgxxxfvvfuVfffwewvwvffwgwfvWwVvvxuwvwwvwwxfwwwwvvwxxwwxwvwxxvvvuwvffWvuwwwfvfgwxvwvhxxxwwwwwwwwwhfggwwwxwXhwwxXghwwtwfwvwwwfvwwvwfuwwxwxwhwwwwwwwvgwxhwwwwwwggwxwfwxxwwvvwwwwwwgguwwwwxwgwwxwxxwxwwwwwwxwxxxxwvgvwhhwuwgvvvuwvfvwwuwfuvwwwwvgvwfvwgvwwxwwwwwwgvwwwwwvwwwwwwvwwwgwWwvxwvwwwwwxwwgfwxxwwwwgwvwhxvxwwgwgvxxwwxfwvwwwwwwwwwwwfgwwwvwwxvvvwwvwgwwhwgxwwxwwwwggvxxwwxxxvwwwwwwwxwgwxwgwxxwwwxwfwwwwxwwhfwvfwvfvvwfwuuwgvvxfgfwwwwgwwwxwwwwggwxwwwwgwvWvfgfwvvgWvvwwhhwfvfwwwhwwvxhvwwxxvwwwxxxvgxwwwxvwvvvwfvggfwwxwfvwwwhwwwwwwwxwwxwwgxxxwwwwwgwwgwwwvwxvwxhwxwgxxwvxwxwxxwxxvwwwwvuwfvwgwwwgfvwwwwUexwfwwwwwgwgwwwwwggwwwxwxwhxxwwxwhgwfwwwwwwhgwwxxWwwwxggwxxwwxxxxxxxgxxwwxwwfwwxewwwVvwxvWwwfwwwgwwfvwvwfwwwgwxxwvwwwwxwxwwxwwwwwwwxUwgwgxxgxwwwxxxxwxxxwuwwgvffvfwvvvVgvwhwvfwwwhgxwwwxxxwwwwwxwxwwwxwWwfwvgwwewfwwxwxwwgwxwhxwwxwxgfxwxhxxxhwwwhxxwwwwwwwwgwwwxwwwxxwwxwwxxwxxxhwxxxwggwwwwwgwxwwhxxxwxvxwxxwwxwxxwwwguvwwvxwgwwwfwgxwxuwxwwxwwwwwxxxxxwwwxwwxxwhwvwxgxhwxfghwxxxxXgwwxfwxgxwxxwwxxwxxwxxwhxwvhwwwwxxxxfwwxwxxxxxxwxwwwwwwwxxxwxwwwhxxxxxufvvvvwfffgWWvvffvfwwwWWewgwxvvvwvwfwwwvwwfguxwwwwwvwwfffvVWvvvgvwwwwVWuuwwgwvwvxvwvvwwwvgwwwvwwwwwwwhvwxfvwwwwwfWWfvvwxvgwwwwwwvwwxwwvvxwffwwvwwwgwwwvgwwxvxVWvgwfwwvwvwwwwxwwvwvwwwvwwwvwwwwwvxxxwxwwfvwwvwwffwgvvwfguuvwwwvgwhwwgwwgvvvwgwxgwwgggwwgvwwxgwhvwwxvwxwgwxwxgwwxhwvwxhxvwwwwfwvwwxwxxwgwhwwwwhwggxxwwvggwfvwwwvwhwwwwvwwvgwvwfgvwgwvfvvhvxwwgwwwwwwgwwgvwwwxwxwwwwxwwwwwxgvwwxfwvwwggwwxwwwxxxvwwwfvffvvvfWWuvwwwvgvwxvwfwvhwhggeuvgwwwwwwwwwwxxwxWWevwgvgwvxxwfxvwxxwhwwxvwwwgvfwwwwxxxwwwwxwwxfgwwwxwxxwxvwvwvxwwwxxwhxwhwwxwwwvxwxwwwwvwxwwxwhwwgwwwvwvwwwwhwxfxwxwgwwvwxwxxxwhgxwvwwxxwwgguuvvwwvwwxwwwwwxggwxgwwxwwwhwwwxwvgwwxwxwxxxwwwvwxvwxvhwhxvwhxvwwxwhwwwwgwvxxvxwxwxwxwvwgxwwxxwwwwwxxxwwwvwxwgxwwwxwwwwwwwxxxxxwxwwwxfwwxxwgvwxwxwvwxxwwghwxggwxgwxgwwwwgvxewvwvfwgwwvwvwvwwwwfvvvfwwgvwvwvxwvwwvwxgvfwvfwvgwxwfvwgvwxwvvwwwwWVevuVfvvfwvwvwwwvwvgwwwgwwxfvwwvxxwwvwwwgfgwvwvwuuwwevwwwwwwwwwxwxvwvwwwwvvwfwwwxvfwvwwvwwvwwvwwwwwwxwwwwwwvwwvvfgwwwWfuvuVwvfwwwvvwwwwwwvwwxvfwwwvwgvwwwxxxwwhwgwwwwwwvxwwwvvwvwxwwwwwxwwwwxwwxxhwxxwfwwwvuwxguvvwguvwfgxwwwvvwwwwwwvwwwwwwwwvhhwwwgwwwvwvxwxwwvvwgvwwxxwwhxwxxhwwwwwwvvwvwxwvvwwwgUvgWvuwvfvwwwvxwwxwwwwwwwgwwwwhfwgxxxvwwwwwvwwhwwxwwwwwwwvwwwgxgwxwvwwwxwwxwwxxwwvwwwwwxwwwwwxxxxwxxxxxxxhwwwwwwwwxxwxwxxhwwwxxxxxwwxvwwwwwxwwwwvvgvxwwwwwwwwvxwxxwwxwwwwxgvxwwwxxxghwxwxwwwxwwwhwwxvwxgxwwwwxwwwwxwvvxxhxxwxxxwwxxxwwxxhxwwxwwwxxxwxxwwxwwxxufwwgwwxfvuwgfueVVfveewefvwvwwTvwwwfvvwvuefevwwvvuwfwwwxfffvvefufvwvfvggfvvwWVweVfwgvvfVgVweWgwfwwvwvvfgWvwgggWxvwwwgeevwwgfvwvvgwdVffvwwgwvvwvxvwfggfxwwxwfvvwxwhwwxwwfwwggvgguwwwxxgggvgWwgwwvxwwWvWvwfvWwwxwxwWwwwwwgwwwwxvxeffwwgvwgufwgweEUvgggwfffgwwwgvggwwxvwwvVgfvvwwxfvvwwwwvVVxfgwfgwwgvgwWWfxxhgfwWfgevgvVvwgvwwghwwwfghxvwvhwxgvfWfvfvvwgWvgwgwwVVfeggwgvfwgfVwwfwvgxwvwwxwxwfggfggwgfwwuvwggwhwwxgwwwwgxfgwwgxvxgwwggvfgwwxwwwxwxwxwxwwghwxwfvwwgwwwwwgwwwgvvgvvgfffvfvwfvvwvvxgwewxvwwgwxxggfgwxewwwvwwhwwgvwvwgvwwgwgwVVgghgwWwvgwgxuvwvwgvgwwxwhwggwwwehxwGgwwwwufwfvwwgvgwwxwvwfwwxwvxwxwwvwxwwwxxxgwxwwgwghwxwwwgwwwwwwwwwgxwxwVwwwfwvvxvwwgwgxxxwwxxwxwwffwwwwwxwvvwvwgwWwwfwwvvvwwxffxwxwwxwwwwwwvhvgvvvwxwvwwggwwxwwwxgxWvwGhhvwvxwxwwwgxxgvvxxggvwxwWwxwwwwwwwgvwwwwwwxwwwwwgwgwwwwwvwwwwvxwxwxwwgwwwxwgwvwxwwvxwwxhwwwvwgxghxwwwxvwwxxhxwxvggwwwwwhwwvwvguwwvgfwvwwWguvgwwwwwxvwwwwegfwWgewwwwwgWguvwwwwxvgfwWguvwvvgwwWguvwwwwwgwevWwwwvwwxwxwwwvwwvwvvwwxfwwwgxwvvvxgwwwWguvwwwwxwwwwwgvwxxgWguvgwwwxxwwwwhwwwvxwwwwwwxwvxwwxxwwvgwwWguvfwwwwwwwvwvwwuvvwgwwvwwwwwvwwxgwguwwgwwxhwwxxwwwwxwgxwhwwwwwxgwwwXwwxxwwwxwxxwvwwxXhwxxwxxvwwwwvvvxvxuvvwgwwwewwwxwwxwwwxwwwgwwgwwwxwxxxwxwxwxwwwwwwgwwwwwgXwxwwxxwxxwxvxxwxwwegfwgweWguvwwwwvwwxxwwwxxWguwwwwxxxwwwwwwxxxWgevWwwwwwwwwwwwwwwwwwwwxgwxwwxhwxxxxwwwwwvwwxvwwxxwxgwwgxxwxwxxgwxxxxgwwxxwxxwwwxwwgwwxwxwwwgwgxwvwwvxwwxxxxxxxwwxwWguwwwwvxwuwwwwxwxwxwwwwxgwxxxwxxxxxxxwxwvwwwxwwgvwxgwwxXhwxxxwxwwxhwwxxwxwxxxxxwwxxwwxxxwhwwxxwxwxwxwxxxxxxwwxwxwxwwvxxwgwxxwxxwxwwwxxwwwxwwxxvxewuwwwwwgwfwwfvvwxwgwfvvvgwwvvwwwwffvvwwvwgwwfwfxwvffvvwwwfgfwwxwwgwwwfffwwgWvxwevvggwwxxxfwgwvfvwwwwxuegwgvwwwwwwvwwvwwwxxwwwxwuwvwhwxwxfvWwvxxwwwwxvvwwxwwvwwwwuwwwgwwwwxwvxwxxxwwwvwwxwwwvvwgwvvVfwwxgvwvwxwvvwwwwhfvvxwvwwwvwwwwwwwwwwwwwwgvwwhwWwwwwxgwwyxxxxfwvfwvvgwwxwfufwwvgwwvwwwwwfxwwgwwwwwxwxgwwwwxwwwxxxfvwwwwgwxxwxwwxwxvvwxwwgfUwgffvgwwwfffxwgvwwwwwwgvxxwwwwhwxwxwgvUvwfwwgwxfvVvxghxxxwwwwwwwxxwvxwwxxwxhwxwwwwxwwwxwwwwwwwwwwvhwxxxwwwxwxxvwwxwwxwwhwvxwwxxwxfvwwwwvwxxxxxxxwxxwvwwwwwvwwwwwwxwwwwvxwxwwwwwwwgxxwwgvwwxwwxWwwgxwwwwgvwxxxxxxxxgxxwwwxwwwxxxwwwwxxwxvwwwwwxxwxwxwwxwwxwxxxxxxxxuvgwgwvwfwwgggfvvwwwgfggfwvvwwvwwwvwwwwwwvvfwgwwwwwwvwfwvwvwwwwggvwfWewvgwwggfhwwxfgwgvwwxhxwwvwweuggvvwxwwgwxxwxwxwxxgvwgwwgWguwwgfgggwwwgvwwgwgwvxggwgwgwUgvvwxwwgwwwwwxwwvwwwwvwwwvwwgwvwwwwxwwwwwhwwvwwwxxhwxwwwwwwgwwwwghgwxvgvwgvwwVvfwfwwwxgwwwwgwwwxgeuvwwwxxwvWxwwwgwwvxwghfvwwxwwgwwwwhggvggvwwwxwxxwxxwwxxvvxxxxwwwwwWwvxxVvuwwwwgvwwwxwwwwwxwxxwWxwwxwxxxxwhgwxxgwwxxxwxwwwwgwwxwvgwxwxxwwwxwwxwhxwxwwxxvgwwgwwWguvvxfwwgwgvgwwwgwwwwxgwwgwUgwwwwxxxwxwxwwgfwwvwwwwwwhwwgwxwwxwwhxgwhwvxgwwwvggwxxwxhwwxwxxwgwwgxwwgwgxwvwxwgwxwwxhwxxxwxxwxfwwwwwxwxwxwwvwxwhwwhwvxwxxwxxxxwxxxxxxxxxxwwggxwwxwwvwwwwxhwwgwwwwwwwwhxxwwwwwxwxxxhwxwxgvwwxwgxxxwwwwxxwghwxwxxxxwwwwgwxwwxxxxhwwxxxxxwwwwwxwwwwvwwxxwxxxxxxwxwwxwhxxxxvwwxhxwwwwxhxxxxxwufveefvevwWvwwvwwwwvxgwwwvvvffvvggwwvwwwwwwwgwwwwwwwxfwvxffevgfvevgvwwwwxwwxwwwwfwvwfwwwwWggvxwxxwwxxxxwvvvwfffwwvvvvwwwgwwwwxwwuwwwwwwgwwwxwgwwwwwffggwvwwxwwxwwxwvwgfwxwhxxwhxxxwxwvgvwfffwfgwwfvvwwfggwwwvvwxgvwfvvwvvwgwwwwwwVgwwfwwwxwwwwwwwfgwwgwhwwwwxwfxxxwgxwwwwwwwwxhxvxxxxuwwfuvwwwwwwWfwwwwwwxwfwwgvgwwwgfwwxwwxwwwxwvxwhxxgwwwgwgxwgwvxxxxwwfwvwvwwgxxwxxxewwvVuvvgwwwvgwwgwwwwvwwhxxwfegwvuhxfwwxwxwxxxxgffwegfgwggwwwwwwxxwxxxhwwgwwwgxwxxgwxwxxwfgwvwgwxgwwwwwwxwwwxwvxvxxxwxxxxxxxwwxwWfwfwvgxwxwwwxwxxwwxhxxxwwwwxxxxwwxwvwwvwwwwwwvxfvwxwwxwwwwvgwwwwxxwxwwwwwwwwxxywwwffwwvwxgxwwxwxwxxwwwgvxwvxwwwxfwxvwwwwxwwxwxwwwwwwwxxxxxwxxwwxxxwxxxxxwwwxwwwwwxwxxxxhwxwwxxxxwxwxwwxuvvwwwwvwwwWffwfwwwwuvwffwwwwxwwvwvvvvfgvwwwwfwfvvvwwwwxwgvgVewWgwgwwwWgwvvxwxwwwwvhgweevgwgwwwxgwxwwxvwwxwggwvwxvvwwwwwfvwwxwwxwwWvwfuvwwwgwxgwxxwwwwwvwvwwwwvwwvvwwwwxxxwwwwgwwxvxwxwxxwvvvwWgvgVewwwgvwwgvwgXuvwwwvwvwweevvwvghhwvwwgvwxwwwXgwwwxxgwvwwhxwwhvxXhwxxwhwxxwhxxxxxwxxhgvwwwwuuvvvwwwwxvvwwwgwwwwgxwgwvhwuwhxvwxwwwwwwwwwwwwxwgwwwxwgxxxxwxgfhvwxvwwwvxxwxxwwwxvwguvwgeuvvgVuwgvwvxwfvfwwwxwwwwwwgfewwwxxxwwxxxgfvwXgwfvfgXhwwwxhxwvgwwxwxhhvxwxwwxwxwgwwvwvfwwwfwwwwxwwvxgxwwwxxgxxxxxfwwvwwwxxwhxxwgxxwxwwxwxwwwwwwwvwwwfvvwxwwgvwwwwxwwwxxxwhwghwxwxhwhwwxxxxhxxxwxxwgwwwvwwwwwwxwxwwxxwwwwxxwxwwgxwwwxwwxvwwwxxwtgvgggwvgfwfwwwfWWwwwwwGfvwwfvvwfVevwwwwGVevgwvwwwxxwfWWwwwvxGgvvwwwfgvgwwwwwwwwGVevwwgxwwvvwxwgwwxxwwwxxwgfgwfwwwwwwgwGgvgwwwxwgxwxwwhwwwvwxwwwwxwxxwwwwxxwwGgfgwwwwwvvxwwwwwxxwxwxwvvwvwwwwxwxhvwwwvggwwwwxfwwfuuwgwxwghvwwwWwvwgVeffwwwwwvxwwwxwXwwwvwwwxxxwwwwwhgxvwWwwwxwghxhwhwxggvvvwwWwwwwwwhwwwwgxhwxhxxwfwwwfuuxvwvgvhgwwwWwwwvgxxwhwxgwxwwwgxxxwwxwwxxgwgxxxwwwxWgwwwvwwhwwwwxgggwxwwxwhwwhxwwwxwxxwxwwwvfvvwgVefwwwvwGVevgwvwwwxgxxwgvvwwwwwwwxwwgwwgxwxwwwwwGVevwxwwwwwwwwgwwxwgxxwwgwwxwxwgwwxxwwwxxwwxwxwwwwwgwxwwwwgwwwwxwxhxwwwwwwwwwxhgxxhwwwwwxwvwwwwwwvwvxwxxhxgwwwwwxwvwwwxwxxxxwwfVevfwwwwxwgwWwwwvgwwhwwgwwxwxwxxxwxxxhxxwgwxxvvwwXwwwwxwxwxwwhxwwhxwwwvxhhxwwxwwwxxxwxwwvxwwwwvxxvwxxhwhwwwwwwwxxxxxwwwwwxwxxwxwxxwxwxwxxwxxwwwwgwwwwxwxxwxxwxxugwwvfgwvwwguvvwvwwwvwgvfwvvwuwwgwgfvvxvwwwvwwvuwvwwxwwwvwgftggwxvwwwwwufwuwwgxwwwvfwwwgwwwwxgwwwvxxwxwxgwwvfvvwvwvwvfwvtgvwwwvwWwxvuwwvwwwggvxwuxwwwwhxwwwwwgvvwwwwWwwwfwxxwwgwvuwwxwwxxgwwwwwxhwwvwwwfguuwwgwwwvfvwufwuwvwvwvwggwwvvwwvvxgvgwwvwwwuwvwwvwxxwvwwxwwwwwwwxwwwxwwwgwvvvhwxwgxwhwxhxwxwwwfwwfuwwwwhxfwwwtwvwwvwvuwwgwxwwxxwwwwwwXwgxfwwwgvwwwwxvwwwwwwXxwgxwwxgwwwwvwfwxxxxxxgwwxwwwwxvwvwwduwvwwwwwwwggfvtwvwwwhvfgfwfvwvxwwwxwwwxxwWwwwvgvwwwwwwwwWwwwhwwxwxvwwhwwwgwxvwwxwxwwxwxwhfxwwvwxwxwwhwwwxxwxhxwwwwwwwwwxxwxwxxxwwwwwxxgwwwwwxhwwwwwwwwxxxxxwwwxgxhxxxxwxwxxxwxxhwwwfwwvwwxgwwwwwwxxwxwwwwwvwwxwwwwxxxvxwxxxvxwhxxgwwwwwhwwgwvwwwwxxxwxwwwwwwxxhwwxxxwxwwwwwwxwwxwwwxxhwxxxwxwwxwxxwxxxwxxxwwhwgwwxxwxtvfvggvwgwwvvwwvwwfvwwvwwwvvweuvwwwewwffvuwvwuvwwwwwvggvwfwfvwwwwvvfvwgfwvwwwwwwwffduvwwdfwvwggwvwvwwwwwvvvfvwwwwwvgwxvuxfwuvxwxwuwxwwvuwwwvvwwvwxwvwxxwwgvvwuwgwwwgvwwvwwwxwwwvvvwwwxvwwwwxwvwxvwhvwwwwwwvvwvwwwwwwwufVgvwvwwwwvwwwegfdwwwwdfwvwwwvfgvvfwvwwvwwwvvwwwxwwwwgggwvwwwxwwgwxvwwgwwwwwwwwwgxvwgwxwuvvvvvwwvdvxwvwwgwwwvvwwwwuwwwvvwwvgwvxwwuwxwwwxwvgxxwwwwwxwxhwwwwxxgwxwwwwwxxwxwwwwwwwwxvxwfwvvwwwwwwwwvwwwwwwwwxwUvvvwWgvuvxwxvgffvwvxwxxxgvfwvfhwwxxgxvxwwgxxwxvvvvwwwwvwwxwxwwwwgwxxxxwxwxwwwgxwwwxwwwwgwhxwxxwwwwvwwwxxwhwxxwwhxwvwwwwxwxxwwxwwwxwwxwvwxxxxxwxwxwwwxxxxwvwfwwvfxwwvgwwvwvxxwxvwvxwwwxwvwxwwxxxwxwwwwxxxxxwwwWwwxuwxvxwwxwwxxwwwxwwwwxxxwvwfwhxxgwwwwwwwwxxwwxxwwwwxwwxxwwwwxwxwWxwvxxwxwxwwxxwxwwxvvwffVvwwwxgfvvwwvwwvfwwwwwvvvwwwgfVfwwwwVvwvgvwfgWwwwgwwwwwwwgwvwfwvfuwvwwwgvgxvwwxwwwwwgwwewwwvwfwwwwwwwgwwgxwwwwwgvxwVgwwwhwvwvvwvWwfvwwfuwvwwwxwvWvgxgvwwwwgvwwWxwwfwwfWwwwwvguwvwvxwwwwhwxwwwwwwwwvwwwxvwfwxxwgwxwwgwwgfvwwwwVfwvfwvfvgwguwvgwvwVwgwwwguwvwvffwwwgggwwwwWwwwxxxwhwgwwwwggxwgxgxwhxwwhwwwwwxgxwhwwxxwxwxwwwghwwWwxwwxvwwxvxwwwwwwxwvwgwwwwvwgwvvgwxwXwwwwvwwwxxxwxxxhwwwxwxxhxwgxghhwwwvwwwxxwvvxwwgwfvwwxwvwwwwwwgwwwvwwwxggwvgvgwwxwwvwwwwwxhwwwxwwwwvwwxwwwxxwxxwwwgwxwxwwwwwwwghwwgxxxwxwwwxxwwwwwxwwwhxxxwwwwwxxxxwwxwwwwxwwwxxwxxxxwhwxwwwxxxwwwxwwwwxxxwggwvxwwwwxwhvwwxxwvwwwwgvwwwwwxwwwwwxwxwxxxwxwxwxxwwhwwxxwxxwxwxxwxgwwwxhxwxwxwxwwwxxwwxxxxwwxwwwxxwwxxwxxxwxxxwxxwxxxwxwwxwwxxwwwxwxxxwuffwevfwwwwgufvfwvgfwgWuvwvfewfgefvvwgvwfeefwgffwfvewgvewfvwvgwwvgvwwwvgwvwxwwfeefffwggewgwwwuegvgwvwgwwxVfugVggwwwvgvvgfgwwwwvwwwwxefvwfwwwwgwxwgvwgwwwvwxxwxuwwfwgxwwwvgxVwuwwwwwwwwwwfgfvvgwgxgxvwwxwwggwgxeefvwgvwwgfgwvgfgwwwwxvwxhwxVVewfvfwwwvgwwxfvvwwwwwwxwxhwweggxwfwWwxuwxgwwxwwwwwwxhwvvggwgwwxxxhwvwhwxwhvhxwUVVwewvwguvwxwfgfwgwgwvvwxxgfevvfwgvwwwWwwggfvvwwgxxvgwgvwggwwxwwwxxxxxwwwwgwxxxwxwxwwwwwhwwgghwhwxwWwwwggxwwwWwwwvvwwgfwvxvwwwwfgvwvwvwxwgeegwegwvgwwxvxvvwwwhwwwxwwvwwuuwvxxwwgxfvvwxgwwwhwffggfwvhwxwgWgvxwxwxwgwvxwuwwvvvwxfwwwxgvwwwwwgwwxgwwwwwvhxwwwxxwwwxwwwxxxxxwvwvvxwwwxwxuxwwwwxxxwwwgwxxwwxxxvvwwxvgwevwwwwhwvgvwwwwwwxxwvfwxwwwwwxwwgvwwwwxwwwgwvvwxwwhwwvhhwwhxwwwgWgwgwxwxwwxwxxwxxgfwxfvwwwxwwxxwvwxwwwvxxwwxvwwxwwxxwwwwwxwwxxwxvwwxxwwxwxxxxxwwwwwxwwwxxwuvwewvevwwfeUwfvwwvxfefeuuvvvgdVwvwfwgvvwgfUTvuvgvgwfwvwvvwgvvgfvdvefwwvevvwfvwwvvwWWvvwefvwfwWgwwvgeuVwfuwhxwgvwwvfuvfeffUwUufxfVfevvwfuvvvhvwgfUgfvvwwwwvwwgvVtuxWvwgvwwgwwwffgfvvgvwwvwwwgfxvfggvwxwwxwvvwwuwwwwxwxwvxgwwwvxwwuvwwWuvefwvevwwGvvfwvwTvuvvfugvdVweuuwfwwggvveevwvfvwvfwewwwhvwwwvwwwwwwvwxwwwwwwggvwxWhvvxwwfwwwgwxwvwvwwhxvgwvwwvvwwvvwgwvwvwgwguwwwwwfuxgggwwwwvvxwwxwxwgfVevhfwgwwggfVwgwvvwvxvwwxxwwwvwwwwgwxwghgxwwxhwgwvxxfhwvwfxfwhxgwfgvwwwwwwwvguwevvwVvvvwwgggwwVguwgwvwwgfvxwxggxxxxwxwwfgvwwwwwwwVvwgfwGwwxxvxwxhwwwxhxwxxxxxwxwxwvvvxwxgwvxgvwwwvwwxgxwwwwwgxwwhvwwwwxxgxwggxgwxvfwwwxxwvxwwvwwWVwxxvvwxxwxgwxwwwxwwxwwxwgvwwuvvwggwwvwxuvwwvvhgwwwvgwwwgwwwwxxxvwwwwxxxxvwgvwvxhhwWwwgwHxugxvwxwxxxwxhwxwwwxxwxwwwxwwxwwwvwxxwwwwgvwwwwwxwwwwwwwwwwwxwwxvwvvwxxwwxwwwwwvxwvwwxvxxwxwwwwwhwxwwwxxwxxvwwwxgwvvfwfgvvwgxvwwwfwefvwwgwwwwwvvwwugfwgwvvwwfvvwwggggvvxwwuvwwggvwwwwgvwwwwwxvhwwwvwwvxvwwwxwxgwxwwxwwgxfwgwwvwwvwwgwwwghwvvwfwgwwffwwwwhxxxwwwghwfxvwfwwhwwxwwwwgwvwxwwxxxxxhwwwwwggwwgvwwwwgvwxvvwwfwvgwwvgwwvufvwufvwvxwxgfwwgxwwwgvwhxwwxwxwwwwvwwwxwxxhxwgwgwwxwxxhwxwxxwxxxxxxxwwwfwwwgfwvvwwwwggwfwwwwwwxxwwvxhxwgwxwwwwwwwxxwwxwwxwfwwxxwxhxvwxwxxhxxwxxxxxwxxhwxwwwwwuggwvvwwvwvwwxwwvwvwwwwwwwxwwwwwxxxxxwwvvxwxwwwvxxwwwxxwxxwxwwxwxwxwxxwxxxxxxwxwwwwwfwxxxxwwwxxwxwxxwxxwxwwwxwxvxwxhwwwxxxxwxwgwxwxgwuvvwwxwwxxwvwwwwxwxxxwxxwwxxwxxxxxwwwwxwxxxxwxxwwwxxwwxxwxxwwxwwwgwxwxhwwwxwxwwxwwxxwhwxxxxwwxxxxwxxugwefffeuvwVgevwwwvffxwgvwwgwVvvvfeuwwffvfwwguvwvwfxwvgvwWfuvgvfvwffvvwvhffvfwvxwfwuwvweffvfwvwgwfvgwvwwgwwxvxwvfuvwefevgwgwvwwgwwwwwvwwwwwfvwvvwwvwwwwxwxxwvwvfgfwfvwgwgvgwwwgvwwfwwwwfwuwwvwwwxxxvwwggxweffwUVewwwvwfwfvwVfvwvvgwwwvwwgfvwgvwvwwwwwvwwwgwwwwwwvgfwggfwwgehwfwvgxwxwwwxwwwwghvvgwwxwwwwvwwgXvgwhwvUgfVfffvffwwgfvVwhwwWvgwwwfvvfvvvwwwwxxwwwwwvwugvvxvwxvwwwgwvWwxwwvgwgwxwwgwxgxwgxwwwgwxwgwwgxwwwwgwwvvwvvVfuvvwwxfwfwwwgvggwvwxhvwgvgfgvwwvwwgwgwgxxwwxwxxwwwwwegfvvwvgvxwgwwxwgwwgwWXvwvggwxgxxwvwvXxvxhxwxuvfvggwwwxvwgwwuxxxxwwxxwfwwgvuwwxxwwxxxxxxxwwvwvgwgWwwgxwxwwxxwhxwwxvwwfxxxwwxhwxwxvwvfwggfvwwggwvwwwwggwwwgwwvwfwwxwfvxxwwwwwxvwwvhvVwgwwwxggwwxxwxWwwxwwwfwwwwwwwXwwwwwwwwwwgwxxwuwwxwwwwwwwwwwxwxxwwhxwwwwwwwwwwxgwxxxxwwwwwwhwwwxwxwwxxwgxwwxwwxwxwxxtfgwvfgfevugWfduvwgwvwwwgfdvwwwvwvfWffuwwwwwuwvwwwwxwggffwwuwVfduwgwwvwgwwwwwwwwwvwVffuwvvwvwwwwwvwvwwvxwvgfwVffuwxwxwwuwvwwvwgvxwwwgvwwwwwwwxwwwvxwwwxwxxwWffufwwwwxwwgvxvxxwwwwwwuxwxxwwwwwxwwwwxwxwwwvvvvwwgfdvwwwvgvwwvwwwvwwgvfvuwvwvwxwwwevuwgvfvvwwwxxvwwwwwwwwwwgwwwxwwhvfvxxxwvwwwwwvwhxwgfvwxwgwwxuwvwvvwwwwwwwevuwgfvwwxwxwwgvwvwwxwxxwwuwwgwxwgwxxxxwxvwxxgwgvfvxxxwwwwwwxgvxwxwwwhxwwwgwwwvwefuwVfduwwvwwwggfdvwwwxwwwwwwwwvxwxwwwwwvxwxwxwWfduwwwgwgwwxxwxwwxxwwvxwwwwwxxwwwxxxxxwwxwwxwvwwgwwwwxwxgwwwxwwwgvwxxwwwxwxwxwxxgxxwxwxwwwgwwxxxwxxwxwgwwwwgvwwwwwwwwxwxwwxwwwgfdvwwwwwwxxxgwwwhvfvwxxwvvvwwwxvwwxwwxwwwwwwxvwwwxxwwxxgvfvwxwxxxwwxxwwgwwgwwwgxwwvwvwwwvhwwwxwwwxwgwxxwxgwwwwxxwwxxxxwxxwwxwwwwwxxwxwvwxwwwxwxxxwxwewvwggwwvwwgVgfwwgwgvgvhvgwWwfvWwVwwgwwwvvwvvgWwwwwwxwwwwwggTwwgfwfffwwwwxuvWgwvwggggwwwggfgwuwwwwwvwgghxxhxwfwGgfvvhwvvxvxvggFgwwwxgxvwwwwxvwwwwwWwxxwvwwgwxwgvwwgewgwvwwvxggxvwhgxwuwwxwwxxwwwxwxhwwgwwwwwgwvggFwvwgWvWwvwvuvwgwGgvwfwWvvwhwuhwxfwvwwWwvwgwwwwhwwwwwwwwvwffvwwxwxwwwvgxgwfwwwgwgwxxwwwwwwwwwhxgwwxwvfwgwGwfgfwuxvwvwgwvgwGwvwwhgxwhgxxgwwwwxgwvxwwguwwwffwwggvwwwxwwwwwxxxxgxwwxwwwwxxvxxgxwxxwvvgFgevwxwwvwwgvgwFgwxxvxwwwvxwvwwwwxwwxwxxxwwwvfvwgggwxwwxgwvvwwhhhxxwwwwxwvgvxwwxxwxuwwhwhxxwwwwvwwuwwwwwxwwwwxwwwwwxvxxxxxwxwxgxxxxwwwwwwgwwwwhwxwxhwxwvxwxvxwwxxxhxxwxwgwfVwfgwwxwwwvvwwwWgxwwxwxfwxwwgxwwwxwxxhwxgwwxxwwgwxvggwwwwwwwwxxxwxxxwxwwxwwgxwxwxwwxxwxwwxxxxxxwuwwxxxxwxwwwwwvwxwxxwxxxwwwxwwwwxwwwwxwxxwxxwwwwxxxxxxwwuwvwvuvwwwvwwwvvuxwfvwwwwvvuwfwfwwwwwwugfwwwgwwwxvvuwguvvvwwwggvgggxvxevUwUwvfwgxgwwwvwwxvvwwxxfwgfwfwwwwwwwvwwwvwwwwwxwwvvwgvwwwwxxxgxvxwwwxxwxwgfwfwwwwwwwwxwwwxxgvwwvwvwwwxwvwwwwwwwwfwwwvwwwwwwgwvwevvxwwvgwwwwxwvgvfvvwwxwffwfvwwwgxwwxwwgfwhwwwxwwxxwwxvwwxwfwgvgvvfxwwxxwvwghwwwxxwxvgwwwvvwgwwwvfggwvvUwwxwwgwgvwwgwwhxwfgfwwwvwwxhwvwwwvVwxwxwvwfwxggvwwggxwwwwwxxxfvvxxwwwxxwxwvwwgwfwxwwwwvfwguxwxwffwwwvvxwwxfwvxxgwwxxhwgwffwwwxxxwwwvxvxxxvvfwwwwwxxwxxxwwgwhWwxwwxxvgwxxxxwgwwwwwxxxxgxwwwvwwxwwhwhwwhwgwwwxwwxwwwwwhxwvxwwxvwwwwwxxwvgwwvwwxgwwwgxwwxxwwwvvxwxwvwgwgwwhwwxhwwhxwwguwwwgwxwxwxxwwwggwgxvgxxwhWwxwwxxwwwxxxwwxwgxwwwwwxwwwvhxxxwxxgxxwwwxxxxwxwwgwwwwwwgxxwxwxxxfwwwvfwgwgvwwwwvwwvvwwwwwwwwewfwvgvvwguwvwgfvvguvwfvgwwwvxgwwwgwuwwwwvwwwgwgvwvwwwwwwgvwvfvvvwwgwwvwwwvvgwgwwwvwwxvgwuwhwvvvvwvwwvvwwwevwwwwggwwwvvvvwxgwwwxvvghwwwghvwvwwvwwwwwwwwwvxwwwwvwwwwwvxwvxxxwxxwvxwwgwwvwwvvwwfwvwvwvevgvwgfwwufvvvvwwwwgvwvvvwevwxwhgwgwwwwwwwxwvwxwwwwwwwwwgxwvxvwvwvwwxxxwwwwwwwwvxxvxxxxwwgvvwwwwxxxgwwgwgVwxwxwvxfwwxwvxwwxwwvvxuwgwggxwvwxxwvwfxxwwwwxwwwwxxwuwxxwxwwxxxxwwwwhwvwxvwwwvvwxwvwwwgvwwwwwwwwgfwwwxvvxxwevwwvwxxwwxwwwvwvwwxwwwwwxxwwxvwvwwgwwwwgxxxwwfwxwwwvwwxwwvwwwwwxxwwwxwxxxxxxxwxxwxwxxwwwwwwwxxxwwwxhxwfwwwvwxwxxwwxwwxvgvvwxwxwwwwevwxvxwwwwwxxwxxxwxxwwwwxhwwxwxxwxxwwvxhwwxwxxxwwfwwwwwwvvxwwwvxxxxxxvgwgxxwxxxwxwwwwwgxwxwwxxwxwxxwwxxwxwwxvwxvvwwfvxgUUfgfvfgufgVevvgvgvwVVdvwxefdvWUfvwggvUuuwggfvwwwgvuwwwefewwggvwwwgfuufwhgvwggvweffvdevuwgvvwwhgugvwgvwfwwvxWWdvwgffvewWWevwwwwEeuwwwvgwgvwVuuwfwxvgwwWvvgggwwugxxwwgwwwwfvfwvwvhwvwwwgxhgwxwwwxwfVwwxfwwwxxwwvxwwwwwxxwwxvwwwgeevvWfeuvvgUfvxgwvfTgwgVffgVvuefvfgufwfweuvvwfvfvwvwwgwwgxwgxwwwwwxwvgwwhwxwvWwwwxxwwewggxwxghwwgwwhwvhhgvwhgwxvwwwfvwuwwxwfwggfvvwwwhvfgvgfeEwvxvwwwwxwwvvwwfWVVwvwfhwuwgwwwxwgxwwwwwWwwwwwhwwwgwwUwxwxwwxwxwwwggxgfwvxwWtvwwwfwgwVvuwggvwWfvgvvwxvwwwxfvuwVwuxwwxEguwxhwgvxwwwwwwwvvwfVwvwwwwwwwhwvwwxxwwwwgvvwwwwfwWhxxwxvxwgxxwwxwwwwxwwwxwgwwxgwwwwxxwggwvwxxxxxxwwwwxwxgwxwwxwvwvwwwwhxwwwwxwwxxggxxxxxwxwwgvwwgwvvwxwgVgwhgvwgwwwxwwgvwwwwgvwxwwgwwwxwvgfxwxwxwwwwxhwxwxwwwwxxxhwvwwxwwgwwwxxwvWwwwxwxwghwwwwvxfgvwvxwwxwvwvxxwwvvwfwvwxwgwwxxwgwxwwvvwxwexwwwwxgwwxwxxxwxxvxwwxwwxwwgxxxgwgvwwxdwfvvwwvvxwwvvwwxvwgfwwwvwvwgffvwgwwgwgwgfevwwvewgwwxwfwgwvwfwgxwwwvwwwwvwwwfwxwwgwgdfwfvdvggvwwwvwwwvvgwwwwxxxwwwwxwwfvvxwwwvvwxwwwwghwgwxvWWfwwwwWwVgxwxvwwwwgvwxwwwxwwwwvwvwfwwwwvvwfwwgwwxxwvwvwvwvwwxgwxxxxwwxwwwwwvwwwwvwwggwvdvxvgvwwwvvwvwwwwwwwvVwWwfwVwxvwWxgwwgvwvwwwgwvxxwvwwvwwvwwwwwwwwwwwxwxwwxwwwwwwugxwxwgwwwhxwwxxxxvwwvgggvdwxwwxxwxwwvwwwwvwxwwgWwvwvwwxxWgwxwgvwwwwwwgxvvwwwwwgwwwvgxxvwwxxggwwwwxwvxwhwhwxwwxxwxvgwxwwwwwwvwvwwwwwwwgwwwghxwwWWvwwwfWwVgwxwgwwwwxwxwxvwWwwwgWxwwwwwwvwwwxxxxwwwwvwwwwgvwxxwwxxwgwxwwwwwgxxwgwwxwwwwwwxwwwxxxwxwxgxxgwvwgwwxxxvxwfxxwxwxxxxxxxxwwxxxwwvwfvwvxvxwwwwwxxxxxwxggwwwxwgwxxxvwwvhwwwxxxxwwgwgwgvvxwxxxxxxxwwwxvxwvxxwwwgwwxwwxwwxwwwwwwxxxwwhwwwxxwwxxxwwxwxxwxwwwwxxxwwwxwgxwxwwxxwwwwxxxwwxxwwxwxxwwxxvvwgwwgwfvvvggggggWfvvwfgwggvvgwvxggvegwvfvxwwwwvxgwwwxwwwvvwwwvfvwwwWwvvwgvwwwwvvvwwvwxwxwwgxwgvwwwwvvwgwwevgvfvwgxvwxvvevwvwvxwwwwwwxgwwwxWgvvwwwwwxwwwwxwxvvwhxwwwxwwwvxwxvwwwwvwgvwvvvwgfvwvwfvvwgwwwxwxvvwvvwwwgfwvgwvwwwwvgwvwxwwxwvwwwxwwwwxwhhxxvxgxxxxwvxxwwxxwwwwwvwwwxfwvxgvwgwvgwwwwxxgwwwwwwwwxxwhxwwxwxwxvwwwxwwwxwwwxwwxxxwxwvvwwwvwgWwwwwwgwvvwwxwgvwwxgwwwxwxwgxxwxgxwwwwwhwgwxxwvwwwwxxwxxwxwwwwwwwwxxwwxxwxxhxwxwxwwwxxxwwvwwxwxxxwwwwwwvvwwvwwhwxwwwxwxvxwwxxwwxxwhwxxxwxwxwxxxhxxxwxwwwwxxwwxwxxwgwwxwxwxxxxxxwxxwxxxxwxxwxwxxwxuwwwwxwwxuwwvwvwfgfwgffvggfvwvwgwfwwwwvfvUfwfggwwgwxwvxfwwvwvxfVUeffVwhgfwwwxfwUwvvwwxUgfwgxgxfvwwwewfwxgvxVffggVVwwwxxwwwwwxwwwvwgwwxwvwwvxvwxvxghffxwwwxwwwxvwwxgxggwwxwwwgvvwwwwvgwgwfwuwfvxgxfwwwvwvuwwxwxVewgwVwvwgwxwwwwwxwwxwwgvxvwfwvvxxxxxwwxhgwvwxvvvxvwxgwfwvwgwvhwwxwwvwwwwvxwwwVexgVwwwfxuwfwuxvhxwwxwvwvwhxwwwwvwxwvwwwwwwwwgxfwxgwvxvxwwxvwxwwwwwgwxwxxwxwwwwxwwgwxwxwxWVfggVVwwwwxwxwwxxwwwxxxfvfghwwxxxfggfwwhwxxvwwwwxxxwwwwxxwwxxwxwwxwwwwwxwwxwwxxwwwxwwxxwvwxwwwxxxxxwxxxxwwwxxxxxxwxwwwxwwwwwvwwwxxgwvwxxgxxxwxwxxxxxwvwxwxwxwwxxwxwwgvwxwxxwfxhhwxxxxwxwxxxwfxwxxwghxwxxwgxwwxwwwxxxwhwxggxxwxgvwhwxxxxwxwxxwxxwxxxxxvwwxwwxtvvwfvvwfvvwfffgvvwwwvwWwwwxwggfvwvgwfwvwwwxwwxxgwwvwfwggvwvwwwxxfvvwwxwggVwwwxgvwxwgwxwxwffvvgvevvgwgwfwvwwwwwwxxuwguvgxwxwxwwxwxxwfffvvwwgvuuwwwwgxxvwxxgwxxxwxwwwVfegvffVgFuUegfvfwgwwwfvvwwwggffvffvggwwhwwwvxwxvxwwwwwwhgwwgwwwvxgwwxgggwwxwwxxwwxwwgwgwwwwxxgxwwvwxxwgwwxxwhUgeuddfffvvwwwwwvvwwxggwgwfgwwwwwhvwxwwvwwxxwxwvwxxgvxgwgwxggwvwwwxxwwwvwwxgvwxxxwxwxxwwxwwwwVwvxwvfwfVewgwwxwfvwxgwwxxvxgxwxwwvxwfwwxxxxfVvwwxwwgxxfwxxxwxwxwwwgwhxxxxgxxxwxxwvfwhfwfwxwvwwwwwwxxxwwwwwvxwwxxwxwfwxwwxwwwxwwwxxwwwxwhxwfVevwfwvggggwxwxvvwwwwwxwxxwwwwwwxwwwgwwwxxwxgxgwxwxwgwwxwwwxxvvxvwwxwghwwwxxxwxwwwxhwxxwxxxxwvvvwwwvwwgvwwwxwwwggwgwwxwwwxwxwwwxvwvxvxwwwxwwwxxwxxwwdgvwgwwVuvxwvgwvfgwwwgwfVfwwvVuvwuwwwwwfgWwwwxwwwfwwxWfFwvwgwgvhfwhgxxvwvwgwgxewgfgxwwgvvxxwxwxUeuwtgVwwvfwvvvwegfwwvwVwwwuwwwvwxwfwxwxwxevgegvhwwvwwgvwwwwvwwwwvuwwvwwwxwxwxwwEvewgeVwfVfvvgvgUVFfwwvxVefgvWwxuWfvvvvwgwvxxvwWfffwwvxvwfwxwxxfwffvWwWgwfggvwvvgwxxxxwWwwwgwvwwwwwwwvwwwwxgvvwxwxwwxhxgTVfvffwwedvgxwgefffeggwwhwwwwvwuwwwwwgxwvwwwgvhwwfwxwgvvwwugvwwxwwwgwvwwxwgwwwwwwwwwhxwwwgwvwwggEvuwewgwwwvwwvxfFUwwvvwwxwhvwwvwwwwwwxWwfxhxvwxwhvffwvWwgvwwwxwwwwwxxgwhxhwwxxwxwhxwwhxwxwxwwwgvvvwwwwwwwfvwxwuxxwxxxxhxwwwhxxxwwgwvwvwvwwvwwxwwxwwxwwwxwwxwwwxwxwfxvegefwgwwgwfwgwwVVVgwVwwgggwghwxguvwxwwWwwwwgwxwxwwgwwxgwwwwgvgwgxxwwwhwwxwggxghxxxwwxwxXwwgxhwxxwxggxwffwwvgwwgwwwfuwgwwwwwwwwgwwwwxxxwwwvxwwxwwgxxhwwxxxwwwwhxxvxwvwwwwwuwwxgwvgwvxggWgxfwwgwwWffgvggwvxwwwwwhwvwxwwxwwwgxxxwwvxxwwggwxgwwwwwwwxxwxxxxwgwxxvxxXxvxxxhgxvxggwwhvewfxwwwwwvgfwwxwwhwxxxwxxwxwwwgwfhuwxwwwxwwwxwwxvxxfxwxwxgwxxwhgwwvWgfWffgwgxWWghwwwgvghggwggwwvWgwxgwwwxwVgghwwwhwwxxxwvgxwxxgvxwxwwxwwxxwwhwwwghxxgxwxxwhwhXxxxxxwggwggwwuwwxvwwxgfgxxhvXwxwwwwhwxxxwwwxxwxwxxxgvxwwwxgwxxgwxxhxgxxwwxwxhxwxwwfwwwwwWgfwvgwvgxWffwwwwXwgxwxwxwwwwxwwwxxxxxwwwgwwwwxwwwxwxhwwwxxxxxwwwwxwxxwxwigxxxwxwwvxgwwvwxvxwwhwxxwwwxhwwxxxxxxvhxxxxwgxxwwxgxwwxxxwxwhvxWffgwgwwwwxwxwWvggggwwgxhwxxgxxxxgxxggxwwhxwvwwwxxvwwxwhwgwxxxgwwxxxxxxxhxwxxxfxwwwwxxuxgxxwghxwxwxwyxwxxwwwxxwwwwwhxxwwwhxxxxXxxwxxsfgwfffwggwxfgfwfvvwxwwgfwwwwgvvgfvFwwwgfffvwxhwvwvwfffgwVvwuwwwwwwxwxwwxxWwgWehVwwwxgxwwgxvxxxwfVvgfvgvegfwwvgeVfwvwvuwgvvwvwfwwwwwwwxgwwxxgwxxwxVuVwfdhvwxwgwvwwwxwvxgwwwwwwxwvxwwwwwxwVfUfvfwwgfewvvwhfffhwwwvwewgxFf5vWuwwgwwxwwfTvWggWwwhwwwwwxwwwwwwxhwgwgxwwwgwwwwxwwwwwwxwwgvxggfwgwxhgwvxwxxxwwxhwWEfVfwvwwgwwwweSvWwvwwwwWwfVwvvwwhvwwxwvwwwwWwvWxvwxwgvxwwwxwwwwxggwgwwwwxwwvwwwwggfxwwvgWvwwwwwwwvVwvgfvewfgwwfgvwxgwvwwxfVevfwvwwwwwvvwwwwxfwgwvgevvfvwvgxwwwwwwvxwwwwxwwwvwwgwxxxxwwhxxwxwwwvggwwwwwwwwwwfwwwwwuxwgvwwwwwwwwwwvwxwxxxxwxwvvwwwwvwwvwwwxwwxwxwwxxwwxxvxxwxxwffTvwvfwwwxvfggxvvwwwxhhwggffgwwgggwgwhvxxfgxxwwwvwgwfwwxwxxwwvwhxvxwxxvwxwxwxwgwxwgwvxwwxxwxfvvgwwxwvwvwxxwgwvwxwwxwxxvgvvwxwvxwwxwwwwwwwxwxwwwwxwwwgwwwwwxwwwwwxxwwxwgwvxxvgwwgvwggffvvvfwwfwfwwxweVgvvvwggvvwwgwwwwwxgvuxvggVvvhwwwxwvwwfwwvgwggwgwvxvwwxwfwwwgxwwggwxwxgwxvgvxwxgwxxvwVuvvgwgwwvvxfgfgwwgffgwvxxwwguwwwxxvxgwwxxwwgwwwwuwgwvwwfxvwwvvvggwxgwwwvfvhvwxwxvwwxwwwgwxwwgfwgvgwuVgvvwwheVffWuffffVuwgvgvggwuwhgwvwggvwgVvwgfgVwgfvgvwgwwxxwvxwgwwhgwwxwwwhwxgwwxwwfwwwwfwgwxvxwwgwxwvwwhVvwwxxxvvfgwvvgwgwvxvfffvwgvWvvxwwvxwwgwxwwvxwwxfgvwxwgwwgvwgvwwwhwwvwwwxxwvwwvgwgfuxvxwwxwwwwgvxwwuhwweuhwwxwvwvwwwwgvwwwwwwvgwwwwwwwwwwwgvwvwgvhvxxwwxxvxxwxxwgwwwvwwxwvvxwwwxwxxgwgvwwwwxwhfwxxwgwxvxwxxwvwfwwhvwwvxwvvwgwxwvxxxxwhvxwxwhghvxwxxvhwwwwwvgwxwvxwwwwvwuxfxxvwwvwhvxwwxhvwxwwuwwhgwfgwwwxwwgxxwwxwwgvxwwvwwwwwxvgwwwxvwxwwxwxwfwxwhwxwxggwwgwvgwxwwxxxwwxwwxwwxgwhxxwwxwggWxggxwhwxxxwgwwxWvwwwvwvwxwxxxvxwvxwgxwwxwxwxwxxwwwwwwwwvwwwxvwhwxvxuwwxwwwguxgxwwvghwUwwvxwgwvgWwgwwxVgfxvwwvwwwwvwwefwwgfwwgwxvgvwwewfwwwggWgwwwgwvxvwwggwuvwwVvxwwwwxgxwWwwwxwwgwwwwwwxuxwgwwwwwhuwwwgwgxvwvwvgwxwwuwggwwwwwgfwwwwvwuwwwwuwxwwvwwvwxwxwgfwxwxwwwwwwxwwxvggxwwwxwwwhwwwxggwvggxwwwwwwwgwwwXgfweWfvGvvwWgfvwVVvFVfgwfwgfwgwfgvwgwwwdwwgffgwgwgtgwvhwwgxxwxwhxxggwggwxvxwxxwhwgvgxwhWwwwxwwwxvgwwwxxxwwwhxhwwwgwwwwwwfvwwfgwxevwfvvwfeffwgvWvVvvuwfwwxfvwwwwwwvwvwwwwwwwwwwxwwwxgxwwgxvfwwwwwwxhxwggvgwhvuwxwwwvwxwxwxwwUwxvgwwwWwfwwxwXvgwgwwvfwxwwwwwwxwwvwvfgwwxvgwwhvwxxhwwwwwhxwwxvwwwwxwwWvwxwxhwgwxxwxxwwwxxwxxxxxwwwwvxwwwgwwwwwxwwhfwxwxWxwwvxxxxhwWwwwWxvwwwwxwwwwxxwwhwxwwxwwwxxgxwxxxwxwxvwgvfwvwgwfwfwwgWfwwgfgvgwwwvwwvwgwxwwwxgxwwwwwwvwxvwxwxggwxwwvxWwwwwxwxwwxxxwwxxXggwwxwwwwxxvxxwwxxwxgwxxhxwwwwgwxwwwxvxwwwxwxxwfhwwwgwwwwxwwwwvgxxxxwwxvwxwxxxwwwhxwywxwxwgxxwxwhxwwwxwxegVwfwvwwwgxwwwwgwwwwvwgwgwwwwwvvwvwfvgUwwwwwwgfwxwvwwxxgxwfugwwgwwxwgvwxgwxwxwwwwfwxvwwwwwwwwwxvwvxvgvVWfwwgwgwwwgfwxwggfvwwwvvhwwvxwwvxwxhwwwxwxwvvwxwxvwwxgwwxwwvxxxxwwxwxxwxwxwhVvfwegewUVfvfwwxfVfwwxgwvvwgwwwwfVUwfwVgvexwxfvgwgfwwvgggwxwhwhwwxvwwwwxwwhxwwxwxwwxggxgwwwgxgwwXgwwwwxwxwwhxwhxxxwugvfvwwwwwwwgvxgevwghwwvwwwvvwwwgwwwxfwgfwwwwwwwWwwwwwwxxwhwxwwwwwwwgwwwwwxgvxhWxvwxwxwvwwwxxgvwxwxwgxvgvghfvwxfxggwvwwxwwxxwWWvvwggwwwxxwwvgwvxhwxwvwxwwxxfwwxhxwfwxxgwvwwxwvxxxxxwxwxxxxxxgvwgwwvwwxwxwxwvwwxxwgwvwwwwgxwwwwhwwxxxxxxvwwwwwwxwxxwxxwwwxxxxxwxxVWVVwvwgwWwxxgwvwwxgwwwwwwwwhgggwwxggwwhwwvwwwgxxhwxwxwvwhwhgwxwwwxwhwhxwxxxxxxxwwwwxwxwwwwxxxwwvxgvvfwxwxwwxwxvgwwwwhxwxwxwwwxxxwxwwwwxwxxwxwxxwxxwxwxwxxxxxwxxxxxwxxxwxuxvxwwwwwwwvgvgwwgwwwwgfwvewgggwwvgwgwgwwwwwwwwuffgwwwwxwxwwgvhvwwvwgxhwwwwxwwwwgwhxwxwwwwwxxxxxxwwwgwvvgwgvwwwfwuvgxfgwxwwwwvxvwxwgwvhgxwwxwxvvvvwwwgwwwxwxwxxxxwxxwwvwwwgvxVffvgwgvffgwwwwffvggwwwwwfwggwwgfvwxwvwwvhwwvwxwwhvgxwxfwgwgwwxwwwxxxwwgwwxwwxxxwxhwxxxwxxxgwvvwvwgfwxxvwvwwwwwwwwgwwggxwwxxwvwwwvwwgwwwwxxwxwwwwgxwxxwwwxxxwxxxwxxwwxxvwwwwwwgggwggvuwhgwvwxwwxvgfwwwwwxxxwwxwgwwgvwgwgxwwxxxxxxxwxxxwxxwxxxxwwvwxwvxfwwwxwxhxwvxwwxwvwwxxxxwwwwvxxwxxxwwwxwWwwwwwwwWfwgwwgvwxgxwxvwvxggwxwwwxxwwxwwxxgxhwwwwxxwwwxwwvwwxxwwxxxxwwxxxxxxwxxwxxgxxxxxxwxxwxvwwwxwwwwxxgxxxxxxxxxxwxwwwxxxxxxwxxxuwwxxwwgxwwwxwhvwwwxgwgwxxgxvgwggwgwwxgvVwwwxxwwxwxxxxxwwgwggwhwgwwxgwhvwxwwxxxwxgwgghvxxwwxxwxwxxxwwwgxwgwhwwwxwwxggvwwwxfwwwxgwwwwwwwxxwxwwxwxwwxgwwxwwxuxfwwwwxxvxwwwwwxxwwxxxxxxwxvxwhvwgwhvggvwfwwgfgvwwvwfwwwwxxxggVgwwhwwwxxxwggwhxxxvwxxxwwxwxwwxwwxxwwvwxwxxxxhxxgxwxxxgwxxxxhxxwxwihxxxxgwgwwxfwwvxwfwwwwxxxuwwwwwgwwxwxhwxvhxwwwxwxxhwwwwwxxxxwxwxwwwxxxxhxxwwwgxxxwwxwwxhxxxwwxwxgxvgwggwwwwwggVgxwxgwwxgxgvgxwxwhwwhwwgwxxgwgghvxwwwxxwgwwhxxgwxhxxwxwxxwxxxxxxwhxgwgwxwwxxwxwwwxwxxxwxvhwxwxwxwxxxvwwxwxxwxwxwxwxxxxwxhxxwwwxhwxxxxxxxxxxgvVwxwxwwxggwhxwxwwxwxxxhwwhwxxvwwxvxxwhwxxxwwxwxxxxxxxxxihxxxhwwwwgxxxxwhwxwxwxwwxwwxxvwxxxxwwxxwxwxxxwxxwxxxwwwxvxxxwwwxwxxhxxwxxxxxwxtggwguvwfvufgVwwwwwwwwvwwwfxveewfwfvwwwwxwvxfwgwvwwgvuxhgVvgxwwwwwgwgxvwwgwwwwwwffvwevwuwwgwxugVvhgwxwwvfwgwvwxxfvwwwxvwxffgfvwwfuxgwwxvvwwxwxwgwwxwxwxxxVudwUWFvfgfwgvvwwVfwwwwuvxwwxueVuVevgWwwwhggwfvgvxvwvwxwwwfwwvgwwwwvwxxwvwwggfxwwxxwwvwxgvxwxwwxxxwyxhTffvVfuggwwwwwvwvvvvwgwwxgvuudugvggwwwhxwgvxgxwwwxwvuhwwwwxgxwuxvvxwgxvvvwwfwwwxwwwVuxfUTvvwvWvhvwwxwwxwwwwwwwwvxwwwxwxwxwwfvwwwwwwvxggwvxxwxxxxxxwxxxxvwgvwvvuvwwxhwgxxxwwwgvxxxxxxwwwgwwwwxwxxxxwwxwwxwxxxwufevWffVfwxhgwwwxgvwwwwvvwwggwwxxwwwgwxwghwvxxxwvvxwwfwwwwwwwxxxwxxxwwwwhwvwxxwxxgxxxxfuuwvVfwxxwvwwwvwxxxwwwwwxxxxxxxgvwxwxwwwwxwwwxwxwwvhxwxxgWwWvvwgwwvffwgwvwwvwggxwwxgvxvvwvggvfvwwwgwwggxwgwwwhwwwwwwvwwwfwwwwwwwxgwwwvgxxgwvxxxxxxfwvxvvvwwwwvfvvuwgwwvwvvwvhwxvwwvwvxwxxwwwwwwgvxwhxwwgwxxvwwvwvwwwwvxwwvwwwwvwxwwwxwxwwxwxxxggvwvVefgwWfugggwwvfwgwvwuwwgggwVvvwggfvvwgggwwwehgwvhxwwwwhwwwwwwwwwxvwvxwxwwwwxxwwwwxgxxwwvxwwxwhxxwxwxxxxwvvwwuuvvuuvvgwwfvwwwgwwwwwvwwwwvxvwvvgvvwwvxwwwvxwvxwxwwgwwwwwvwxxwwxgwxxxwwwwxwwwvxxgvfgwfwwgvvwvvwwgwggWhwwwwwxwvwwwvwxgwwwxgwxwxwxvxwwxxgwvwvwgwvxwxwwwxxxxxxxxxhxxxxwxwxxxwwvvfgwhwxvwwwwwwxwxgvvwwwwvvwxxwhxwwwxxwgwvwwfxvwgwxxwgwwxxxwwwxwxwwgxxxxfwwfwghggwwvxwxvvxvwgxwwxxxxxwvwwxxwwwwwxxxhwxwwhwwwxxwxwvwwwxwgwwwxxwxxxwxxhxhwxhhwxxwxxwxxwwgwwvwwvwwfwxxwvvwxxwxwwwwxwwwxwwvwxwwxxxwwwwwxwvxxvxwgwwwwwwgvfvvxwxwwwvwxxwwwwwwwwvxwwxwwwxvwwxxwxwwwxwxwwwxwxxwwwxxxxxxxwwwwxgwwwwwwgwwwwxxwwxvwxwxwxxxxxwwxwwwwxxxxxwxwwwwwggwwwgvwfvfhxwvwggfwwwwwwwgvwwxghwwxwxxwxwxxwwxxwxwwwwwwwwxxwxwxwxxxwwwxwxxxwxxhwwfvwwwxwwwwwwwxwxwxwxwwwwwxwxwxxwxxwxxxwwwxxwwwxxxxxxwxxwywwxgfwxwvwwxgwwwxwhwwwxvwxxxxxxxxxwwxxxxxxxxxxxxxxwwxwvgwwwxwxwxxxwxxxxxxxwxxgwvgwggwxwwwwwxxxwxwwxwxxxwwwxxxwxxxwxxxxwxxxwwxxwxxwwwxxxxxxxxxxyxxxxxgwwwxwxyxxxxwwxxxxxxgwgvvwgvwxgwwwwwwgvwwxvwuvgwxvxwfgvgwgwwwvxwvewgwhxwwwwxxxwvwwwwxwwwwxgxxxwxgwwwwwxwwwwwxxwxxwwwxvvvxwwwwwwwwvvuwgwgwxxxwxwwwwwwwxwgwxwxwxgxwgvwwxxxxgxwxxxxgwwwfgewwvvwwwwwWwwwvgwwwwwwxVVwVvvgwwfexwwwwggwhvwwwhwxwwxwgxwxwwxxxwwxwxxxxywwgwwwwwxwwhwwvwxwxxwxxxxwWgwgwwhwxwgvwgwwwgxxwwwWfwwwxxxxwhgxwwxxgwwwxwwxhxwwxwxwwxxxwxxxxwwwwwwfwwxwwxwugxxwgggvvwwwwwwxwwwwxxxxxwxxwwxgvwvwxxxwxvwxxxxxxxxxxwwgwwxxwwxwwxxwxxwwwwxwwxxwwxwwxxwxxwxwxggvvgwwgxvvhwwwwxxwwggvvgwxwgxxxwxwwwwxxxgxwwxxxwwxxxxxxxwwxwxwxhxxxxxxxwwvvwxwxxxxxwwxxxwxxwwwxxwxwwxxwwxxxvwwxWeggfwvfvfVvvhufwffvffwvgfveUgwwvvwUfvwffwfVvfffvwwwwwwgwwfwwWwwwwwwggwghwwwwwwwxwgwgwwwwwwwwwwwwxxwxwwvwegvwvgwggvvfgwgufvwfwwwwxvWwwffwwfvwwxwWggwhwxgvwwwxwwwwxwwxwwwxxwxxxxxxwgWgWevvgfwUffwgUwffgvffgfgwwwgegweVWgUuvwwxwhVffwgwvgwwwwfwwwwwWwvggwwwgxxwxwwvxwwwxwgxhwxxwxfwwxwwwxwwwxhwgwwvgvwggvvwwwwfwvwwvxvwwwwvwwwVwfgwgwwwxvwgwwwwwwgwxwwwwwwxwwwwwxwxxxwghxxwxwxvvvgvwvwwwgvwggwvvwwwwwvwvwwwgwwwwwwwwwwwwwhvgxxwxxwhwwwvxwxvwwxgxxwwwwwwxwgxxxxxwxxwxvvwwwwwfwwxvxwwwwhwwwxwwxwwwxwwxwxxwxxvxwwxxxvwwwwvxwwwwwwxwwwwxvwwwxwhvwgwwxwwwxwwxwgwwxxwwwxwwxxwwxxxxwhwxxxxxxwxwxxwxwwxxxxwxwwwxwxxxxwxwxwxxxwwxwxxwxwxwwwxwwxxxwxwxxxwvvgvgvwxwvxfwwgvvgggfgvffguvwgwfwvwwwvwxfxvggwvwwwvvwgwwxwxvwVvwwvwxwwggwhvwxgwwwgwwgwwxwwvwxgwwxxxxxxwxxwwgvwxvgvwxwwwvxvfwwwwgvwxwxwwgwgwxgwwwwwxfwvwgxgxwwhwwvvwwwwxwwwgvxhwxwwfvwxwwwwwxwwxxwwwwxhxxwgggwfggvfwwfvwwffWvggwgffgxgWwffffwggwwgvwgwwwgfffvwgfwvxwhwwwgwwxxgwhwxxxWwhwxgxwwgvhvxxwwvxxwhwwxhwvwgwwwwwxhhhxwxxwgggwwwgwxgwwwvwxgwwwwgwgwwwvwfwgfvwwwwvwxhvwwwgwwwwwwwvwwwwwhwwwwxwwwwwwwwxgxwwxvvvxxwxxwwwwvwwvwwhvvwwwwfwgwxwwWgwfxwvwwhvgfwwgWxgwgwxxwvwvwwxxggwwwhwwxwwwhwwwvwvxwgwwxwgxxxhxxwwwwwwxxxwxxxwxxwwxvxwwwxwwwhgfgwwwgwwgxwwwwwxxwwwgwwgvxvxvwwxxxwhwxxwgfxwwwvwwwxxxxvgxghwvwwgWgvvwwwwhwwfggggwwwwwwwxwhgwwvxwwwxwxxwwxxwwwgxwwgwhxxwwwXwxwwwwxhwxvhhgxwgwwwxxhxwgxwwwxxxwxxwgwwxxxwxwxwgwgwxwxwwwwwvxwwxwwxwwgwwwxwwxwxvxxxwxxwwwvwxxwxfwwwwxgwvxwxuwfvwwwwvwfxwwwwwwwwwgwwfvvwfwwwvgfwwwvxgwwwwvfvvwwWvxwxxwwwwwwvwvxgWvxwwwxwvxgwwhxwggwwwgwxwxxwwwxwwwwxfvvxfvvwwwxwgwvvgwwgwvwgwwgewwgwxwguwwwxxwxwvwwuwvwwwfvwwxwwwxwwxvvwwxxwwwxxwwxwwwwwgwwwvgfwfggwVgwvwgwxfvvwfvvxwwwgvgfwfggfWwwwwxfwvwwxwgwwggwwwwwxwxwwwwfwwwwwwwwxwwxgxwxggwwxwwwvxwwxxxwwhwwxxwxxxwxfwvwewwwwxwwvwwxwwgwwwwfgwwvwwwwwwwxwwxwwwwvwwwwwvxxfwwwwwwwwwwwxxwwxgwvxwwfwwxwxwwwwwwwvvwwwxgvxxwwwwwwvwgfwwxvwfxvwwwwwxxwxgwwwwwwhvhxxxwxwxwxvxxxwxwggwwwwxuwwxwwxwxwwwwxxwwxxwxxwwxgvwwvvwxwwxwxgwwwxxwwwwwwwwhxxwxxfwxxxwwwxxwwxwwwvgxwwxwwwxgfvvxwwwwwwxxwxwwwggfvwwwwwwxuxwwvxhwwwxwwwgxgwvxxwwwwwwwhxwxxxxxxgxvgxxwxwxwwxxwxxxwxxwxwwhxvwxgxwwgvwxuvwwwwwxwwwxxwwxwxxxwwxwxxvwwwfwxxxxwwxwxwxwgvvxufFwgfuwWwggwfxggugwvfvfwwvwwwwvgvwfwwwfwfwfvvWfgvwfgvgfgwwvwgfvwwwfwwwgwwxfwwhgwvwgwggwWwwgwvwxgvwvwxwwwwwwVvfxdvfvwwvwfefvgfwgwvwxvwgxgwwgwgwvgVwuwwwwvgwvgwxewwwwwwwxvwvvwvwwxwgvgvwvxwwvwvwwvwvwwfgwVvfwwvwgffwvwgfFewvwvgVuvwewfwfgfWvfwvgevwwgFfffvwwvwwWwwwwwwxvxwxxxggxwvwwgwwwhwwgwwhhwvwwwwwwgwwwwwwwwvxwwgwwgxxgweefvvwfwggwwwdffwvvwgwwwwgwwvtvvvwwxwfgwxxwugvggvxvfwvgwgwxvwxxwwwwwvwwwwwwwwwvvwwwwwwwwvvggvwwvfwwwfvwvwgwvwwwVgvwgWfvwxwxwgvwwwfxwvgvwwxwwxgxwwxxwxwwwfvwgxwwwwwgwxgxwgxwwwfwvxwxxxhxxxxwxxwwwvxwwwfwvwwxvwwwvWvwxwxxvwggwwwxgxvwxwgxvwwxwwxxwwgwwwxwhwwguxxwxwwwwwgxxwxwxxvgguvwfwwhxwxfwVxwvfwvwwwgxgxggfgwxxwwwxgwwwwwxxwwwwwxgxxxwxhwwwgxwwwxgxxwwxwhhxxwgwgxxxhfwgwwxvxxwwwxgwfwuwwuwwwfwwguwwwwhxwvwwxwxxwxwxwwwwwwwwxwxvwwxxxwwwwwvxwwvwvwxwwwxgwxxwwWxggxwvwwgwgwhfgfggwwwwwwwxxwxwwwWgwgvwwwwwwwwfVvgwwwwxxgvxwxwwxXwwwwxwxwwxgvwwwxxxxwxwwxxwxwxwxwwwwfvxwwxwxwvvxvxwxwwwxwgvgxwxwgxwxxxxwwxxxwwwfvvxwwwxwxxwuxwwwwwwxxwxxxgfxgWggwwwwgwgEVvwwWxwwwxwwwwwgwwvwvxffvWwhwwwwwwwwwwxwWwwwxgwwwwwwxxxxwxxwxxwxwwwwxwwxxwwwxwxwxwwggxwxxvwxwwwwvwvxvxwxwwxwwxwwvwgxxwgwwgwwhwxxwwwxwxwwxxxhxwwwwvxwxxvxxxxwxxxwxwxwwwxwwwwwwxgwwwwggwxwxwwwwwxwwwwwwxxwgwxwwxxxxxxwxxwwxxxxwxwvwhwwxxxxxwxhfgwwwxxwwgxxxwwxxxwxxwhwxhxxxhwwwwwxxxwwxwxwxwxgwwwwxgwhxhxxwxwwxwgwwwxxwxxxxxxxxxwxxwxwwwxxwwxxwxxxvwxxxxxxwwhwxxxwxwhxxxxxxxwxxgxxxxxxxxxxxwgwfggvxgvgvxwxxvwwwvwxgxwgwfwxwwwwwwwgvxxwxwwgvwwwwxxxhhxvwxxxwxxwxxxgxwgxfvwwwwwwxxwwxwwfwwwxwwxxwxwwwfvwxxwxwywwwxwxxxxvwxxxxgwfgfvggggxvwgwvwgwfwwhxxghgvwwwwvwxxgvvxwwwxwxxxvwwxwxgwwhxhxxwwwwwwxwwxxxxxhxxgggvwwxwwwxwwwwwwwxwxxwxwvvxvxwwvhwxxxwwxxxxgvxwxxwgxwxxwxxwxwwxwxwxhvxwwfgvggwfgwwxxwgxxxhgwwwwwxwxxhxwwxwfwxwwhxvwhywxwxxxwxxwxwwwgwwxwxxgwgxxxxwwwxxxxxwvxxxxxxxgxxxwwxxxxxgvgvvxgwgwfgwxxxxwgxxxxxwwwwwxxvwvxxxxwxxxxxxvgwxwxhwxwxxwxwwxxwxxwxwwwwwwwxxwwxxxxxxxwwxxwxhxwxxhwxfwwgvfwwwwwfgfwvwgvwvwwwwwxfwwwvwewvwwvxgxwfvfwgvwxwwxwwxwVwwwwwwvwgxwwxhwwwgxxwvwwwgwxgwxhwxxxwgvwfwwwwwgVwwwwwwvxwxwwwwxVwvxgvwvxwwxvxwwfwxwwxwxvwwvwuwvwxwwwxwwxvxwxwwvwxwxwxwwwxxgwxwxxvvggfffwvgUwUgfffvVwgwvfgfwwfwUggwvewfgfvvwvwxfgwWgfwvwwgwwvwwvwwhgwwwwxgwfgwwwwxxwxxwxxwvwWwgwwxwwwwwgvxxxxwwgwxxggwffwggfwwwwwwvwvwwgwvxwwwwwwwwfxwwwwxwhwxwxwwwwwwxwwwwwwgwgwhgxxwwwwwwxwwvvxwvwxvwwwwwwwWgwwxwwwwwgvwwggwwxwwwwwgvwwwwwxwxwwxgwwwwwxwwgwxwwwwwwwwxxxwgxwxxvwwwwwvgwwwwxwwwwwxxwuxxxwwwwwxxwwwwhwwxwgwxwwhwxwwwxwwwxwwwwgwwwwgvhWgvwgWwwxvvxwwwwwwwwwvwwxvwwwwxwffwwwwxhwwwwwwwxwxwwghxwxwwxwwwxxgggwxwxwwxwxxxwwxxwwwxwhwxvwxvvxxwwwxwgwwwwxxxwxxhfwwxwwwwwwwwxxxfwxxwwwwwxxwxvwggwwwwvwfwWwgvwgwfwwwhwwwfwwgggwxvvwvxfwgwgwgxgwwvwxxxxgvgwgvvwwxwwwwxwwvwwhxvwfgwwxgvwxwwwwxwxwwgwggWwwxwwwvxggfgwWgwwxvwwhwwwxxxgwwxxwxwgwwwvwwxwgwxwwvxwwxxwxwwvgwwwxwxxgwfwfffVgfvwfgfVfwgwwvuvvwwxfhVVffvwwgwvwvwvxgvwhwhgxwwgghxvwgwwhwwwggwwwvwggwwwxxxhwwwwwxhwvwwxhwuxgxWxwxwgwgxhwgxvwxxwxfggwfwfwwfvwwwwwgvfwwwgxvfwgwwggvwwvgwwxwwwfxxvhwgwwxwgwwwvxvvgwgwwxwwxwwvxwwwxwwwvxxwxfxwwwxxvwgwvwxxwwggfvwwwxvgggwWwvxwwuxxwxwxwgwvxwwxggwwxxgwxwwggwvwwxxwwgxfvxxxwxwxgwwxwwwwwwwwhwxxhhxxwwxwxewwwxxxwwxfvwxwfxxxwwwxxxxxxxwwxxxxxxxvwhwxwxxwxwxhgvwxxxxxwwxwxwwggfwgxfwgwwxxwxWwgwxWgwgwhxwwggwvxvxwwgwxxxvwwwwxwxxwxxwxwgwwwwwgwhvwxgxxwvxwxxxgwWwgwxxxxwxwhhwxxwwwwwwwxwuwwwxwwhwgvwwwwwwxwxxgwxxxxwxwxxwxxwwwwvxxxhwxwwghvxwxwhwxwxwwwvvwVwgvwfwwvggfwgwwwwfwggwvwwwwwgwuwufvwgvwgvwvwwwvgwwgwvwwwwwvgfvwwwgwwgvxxxwgvwfwfxwwxxwgwwvvhxwwgwxvvvwewwwxgwwwvwwwfwvwgvwvwvgvwxvxxgwgwwxwwwwhwwwwwwwxvwwxxwwgxxwwwwfvwxxwxvxwwwvxwxwwxwwwgwwfgVvuvwwgvffgVwvwgfewvvwwggvVvvVgeVgvwxuwwVfevwgfVugwwgwvgwwhwwwgwwxwggwwxwxxxwxxxxvwwwwgweggwwwhwvwwxwwxggwwwwwxgvvwfeuegwgxwwvwwwguWvwwwwwvuuwwvgvvwwwvvvvwufgwwwwxwwwvvwxgvwwxwwxfwwxwvwwwwwwwuvwxxwwgwwgwuvwfvvwvfvhgewwwvwwwwxxwwwwwwwhgwgxwwwwwwggwxvxwwwwxxxxwwwwwwwwwxwwxxgxxwwwwvxwvwxxwvxwxxwwwwxwxgvwwwxhhxewwgvwvxxwwwhxvwgxfxwwwwxxwxxwxwvxwwwwwgxwxxvwxxwggwwggvvwxxxwwgwvwwwwwxwwwwwgwgwgxwwwgxwxwwvwxwxwwwvwwxwwwwwwwxxwgwvxhgwwxxwwwwVwvwwwwwwwwxhvwxhxwwwwxwwvwvgxvxvxwxxwwwwvwwxvwwxxxwwwvwwxwxwwwgwwxwwxwwwvwxwwxwxvwwwVuvgvwwvwwwvwgvgwggwgwwwgwwwvwvwgvwvvwwxwWgwwvgwwvxwxwxwwwwwwvxwxwwwwwwwwwwhxvwwwwwwwwwxwwwwwwwxwxwwwvxvvgwwwwvwgfwgvwwxvwwvwxvwxxwxgwwxwvwxxwxwwgwwwwwwgwwwxwxxwvwxwwxxwwwvwvfwgwvgWwwwwvvgfwvvwWegwwWxwwgvWfvfwvvgwxxwxVuwWwwvvgxgwwwggwvwwwwwwgxwwgfvwxwwxxxwwwvgvwwgwwxwxwvhwwxxwxwwwwgfwwwwwvxwguwgwvwwwxwwfwvwwvxwxxxwgvxwwwwwwwwgvwwwxwwwwwfwwwxwgxwwxwwwwxwwxxxwwxwxwxwwxwxwvvvwgvwwxwWgwwgwxwxxvxvwvxwwxgvwwwgwvxxxxwwwwwwwxxxxxwwxwxwxwxxgwwwxxxxxxxxwwxxwwvxwxwwwwxwwxwvwhwwwwwwwvwxwxxwxwwxxxwxwxxfwwwxwxwwxfgwvfwvgwxxwxgvvWxwwxwxwwwxgwwxvxwvwxgwwvxwwwxxwvxxwwwwwwwgxwxgwxwwxxwxxgwwwxgxwhxxwwhvxxwwwgxwvgxwxxwwwwwxvxwwwxxwxxwxwxwxxwxwwxxwxxxxfwxwxxxxwwwxvxggxXvxugwwxwwwVWvwggfeeghwfwghwwvgwwwxwwWeffgwwgwwxwwgxgwvxwvwvvfxxwwxxwwgvwxxxhvwhwxxxgwwfgwxwvwwwwvWeWgwwhwwvfxwxxwwxxhwxxxwwwxxwfvfxwxwhvxwwwvxxwxwxvxhwxwwxwwgvgUVwfvvwgWgwfeegfwggvgffwgwwgvVgggwvxxwffvgwWggwwxwwgfxwxxwwwwwggxwfwwwxxxhhxxxwgvxxwxgwxxxgwxxxwwxwwwgvwgfgxxwwwfvvwgWgvvwxwwvwfwwwxwhvwxxwwwxwwVwwwxgvwwxvxxwwvxxwxwxxwxxwwwvwwwwwxxxwxxwwgvgvwxwwvwwxvggvwggwwwxxvxwvgxwwxgwwxxwxxwxwwwxywxxwwxwwgxxxwwwyxxwxxxhwwvwwvwxwxgvgwxxwwwwwxxxxgwxxwwwwxxwxxxxxxxfwxxwgvwwwwwwxxxgwwhxgwwwxhvwxwwxwwwfxwwwwwxwxwwwxwwgxvwwxhhxxxxxxwxwwxxxxwxwxwwwvxwwwwxwxxxfwhxxvwvxxxxwxxwwxxwxwwxxxxwxhxwxhxxxxwxwxwufwWwexxwgvggwwwggwvwwwhwwgwuxfuVwwwxwwxvvgwgvwgxwwwwwvwvwvxggxuxwgwvvxhxvwwwwxxvxvxxwxwwxWfvvgwwwxvvwvwwwwwxvwuwwwxxxVfwxxxxvwwwwgxxxvvvxhwgvgxfgwxhvxxxwhgxxxgwfwgfVhggwvWgWwwwwwgwvwwgxguVuwwvWwwwxwgwwwvgwwxwxwxgwgwwxwwxxWwwxxwxhgwuhwvgvxwxwwwxxxwxxxxwvguwwvgwxxwxwwvwwwegwwgwwfgxwwwxwxvwwwvwxwxwwuhwwVgwwxxgxxwvxxwxwxxwhwwwxvwwvxwxwfuVvwxwwwgwvvwfvxvwwxwwggwvgwwwxxwwxwxxxwwwxvxwxgxxvxhxxxxwxwwgwxwxxxwvxwwwvwxwxxxvxwhwxvhxxxgwvxxxxxvxxxgxxxwwxxxvxwgwwxxxxwxwhwvguVgvvWwwwwwwwvwwvgwwxwxwwwxwwwxxwxwwwwgxvhwvWvxxwwxxwhxxxwvxwxwxxwxxwwgwhwwxxwwgxwwxywxxwvxwwxxgxxxxxxxxuwwggwwwxgffxgwvwwvgvwwwwwxxwxvxvvggffwefufvxgwvvhgvwwwwxwwwgvwxxwwvgxwwxwwwwwxwxwwwwwwxwwxwxxwwwwwwwwwwwwxwwwwwwwwwwwvwvxgvgxwwwwuuhwwwwwxxwxxwwwxwwwwxwxxwwwwuuwwwxwxwvwgwfwwTEvwffwwfvgvwwwghvwvwwvwgwwfvgevegxvggvggwwgvgggwxwwxwwwwwxxwxwxwwxwxxwwwwxwxwwgxhxgxwxxwxwwxxwvwwgwvxfwvwwwxwwwxwxgwwwwwvvvxwvgwgwwwwwfhwwfxvwwgwwgxwgwxxwxwwxwwxwxwvxfwxxxxxwgvgwxwwwvwgwwxwhwgwwwvhwxvfwwwxwwwwvvwwwwwxxxwwxwxwxwvxwxgwxwwgwwxxwxwxwwwwxxxxvgvvwvwwxwxwxwwwwwxxxwxwwwxxvhxxwxxhxwwwxwwxxwxxxxwxxxxxxwxwwwgwwwwgwggxgwxwwgwwhxwwwwwwwxwwwxwwwwxwxvvxxxwxxxwxxxxxhxwxwxxxxxwxxwwwxwwxwwwwxhhxwvvwwwwwwwxxxxxxwwwwwwwxxwwwxwwwwwxwxhwwxwwxxwwxvxxxwwgxwvvwxwhgfwghwfffwgvxwwwwwwvwvwvUffwwwxwvxwwwwwwwfxxxfggwfwxwxhwwxxwwwxxwxwwgwwxwwgwwvfvfgvvxxwxvvxwxwxxgwxxwxxvxxwwwwwwxwvwvxxxwhxxxwwxxwwvvwwgxxgfwvfwwegugxhwUfvgwvghwgfwwUVwwvwwgxwwgwwwvwwgwxwwwwvgxwwwgwvvwwxxwhwgxwwwwxxwvxwwwvxxxhwxxxxwvxxwwwugufgwwwwgxgvwwxwgwvwxfwxxwxxxxwxwwxwwwvxvwwxwxwxxxwvxwxwxxxwhwxwxwwxwwwwxwwgwxwwvghgvwfvwwwxwxwhwwwxxwwwwwxwxwxxxhxwxvxwwxwwxxwxxxxwxxxwvwxxwxwxxwwwxhwwwwfwwxxwvxwvvxxwwxwxxwwwxxxxxxxxxwwwfwfxwwwwwhwwwwwxgwwwxwxwwwwwwwwxxwwxxwwvxxxgwhxxxxxxwxxyxxxwxhxgwwxfxgwwxwwwwxwwxxxxwxwxxxwwxwxxxxxxxxxxwugwgwwxfvwxwxwwwwwgvgwvwwwwwwwwfwwwwwfgwwxwgwwwfwfguvwxvgfwwwwvgvwwvwwvxVevwvgwffwwwewgvgvvwwwxvvvvwwwwwxwwwxwxugfgvwgwxwwwvwwvxgwwwwxgwxxwxevvwveVvffwwwxvVgwwwwwvgxxefgvfwwwfvxxwwwwxxwwxxxVffvgwxxggwwwwvwwwwwxwwwwffwgxwhxwwwwxxxwxyUefefwgfvwwwxwvvfvxvfwgwwwxgxxvufwwxwwwxwwwxxxxwhvhefwfwvgwwwwxwxwxwvwwwwgvwwwwxwwwwxxwxxxwwwvfvwvwwvwwwvwwwwwwwwwxxwxxggevvwxgxwxvwxxwwwxxxxxwwvwwwgxfvwwwwwvwvxwwwxxxxvvvwxxxxxwxxwxxxfvvvwxwxxxxwwxwxxwxxxxvwvgvwxvvxwwxxwxwwxxxvxwxxgxxwwggwwgwvwwxwwxxwxxwwwwxwxxvxwwvvxwfvwwxwwwxvxwxwwxwwwwxxxwwwwwxxwvgwwwwwxwwvwxxwxxxwwxwxxwwvxuWVwWvvVvvwfwfwWwvwwgwfwwgxffwvxgwvxwgwwxvhvwvvxfvvxxwfvwwgfevguwfwwwvWfwwxwggwfxwwwwuwvwwuwuvxvxwwxxwhgwwwwwwewvwffwwwwfgvwvgggvfwvvwgwxgvuvwwhgvwwwwwwvwhwwwvvwwuwvffugvwwxvgwwwwwxwgwwwxwwwwvwvwwwwwxxxfwxwwwwhVvvfwwgwvgfWwfgfggwWvwWgfwwhfxvgWwwvhVvwxVxwvwvvhwwhgvghwgwxggvwwVvwfwvwwwgwwwvwhxfgwwwwxxXfwwvwwvfgwxwxfxxwwxhwwwwwwxxwxufgvWwvwVvvgwgfwfuvggwggwwvwxxwwwfggxvhfvfgxwwgwxhwwwxxwxvwgfvwvgvwwgwwfvwwfwwgwvxwwwwwvfffwgxxwwvxwvwwwvxvwgvwgwwvVvfvVwvuwgggxgwwwwwvwwgwwgwxwwwwwwwwwxgxvfUwfuwwgvvwvwxwwwxwwwhxxxwhxwxwwxxwxwxxwwwwwwwxvgwvwwvwWwwwwgwfwvwhgfvwgxWvwgwxgxwwwxxhxxwxwwwxvgxwuwvxvwfvvxvggwvvxxvwvxwxvxwwwwxxwwxxxwhxwwwwwwgfwwvwfvVgwwgxVfvwxWwhwwwwhwfxxvgxgwwxwxxhxhxwwwhhxxxfwuvwwgwwwwwxxVwwwxvxxhWhhWwxwwwxwxxxxwgwxxwwhvwwffuwvwwwvxwfxwhwgvwvwWwgwvwvwwwwxxWwwxxvwwxxwwgxgvwwfhxwhwwgwwvxgvxxwvwxwwxwxgxwwxxwwvwwwxxyfxgwgwwfwwwfwgxwwxxwwwvgwxwwuxwxwxwwwxwxwwggwhxwxxxgwwwwgvxwvwggvxvvwwxxvwvwWwwwwxwwwgxwwxwxxxxxxxxgwgggxuwwwfwwxwwWwwwwWgvhwxwwxwgwwxxwwxxxxxwxwvvwfwwwgvwwwwxxwwxxgxwwwxwxwwwxxxxxvwgxgwgggWfwtfvwwFvghwwfvvxgwvwWfgwwWwwxwwxxxxwxxwxxxxxwfwxghwwvgwwGvwxxxwwwwxwvwwhgwwhwxxwxxxwxwxxxxxxxxxxxwGggfGvvfwxvxxgvgwhwwhvwwwwwwwwxxxxxxxxxwxvxxxwxwwwgwwfwwxwxwwwwwwxxxxxxwfwwxwxwxxwhxxwwwwwwxwwwvxuxvgwwggxvxgvxwwxwxxxxxxxxxwwgwxwxfxvwxXwwwxhwwwxxwxwxxxyxxxxwwwwwwwwfgvwwxwwgwxxwxwwvxwwxwxwxwxxwxxxxxxwfwwwxvwwxwwwwwwxxxhwxwwwgwwwxgxxwxgwgwugwgvvfxgxwgwwxwxwuwwwwwxwwxxwxxxwxxwhxxvxwxWvwwvwwgvwwxxxxxxhxXwxxwwxwxxxxxxwwwwwwwwxxwwhwwwxxhxxxguwwxxxwwhxwxxxxxwxxxwvggxwwwwwwwwgxxwxwxwwxxwxxxwxxxxggwvwxwwwwgwwvvgvwwvwWwwxwwwvwfwxxwwwwgwwwwwgwvwwwwvgvwgwggwwwwwwwwgwxwwwxwgwwwwwwxvwgvwxwxwwxwgvwwwfWwgguwwvvwGfwwwxgwwwwwwggegwuwwwwwxxxgvwwwxwxxxwVfwwfwwwvxwvwxwvwwwwwvxxwwxvwvwxvwwwxxhwxwxwwwfvwxwgwwvgwfwwvvggwwfwwwwgwwwgvgggwFwvgwwgwwwgvwgwgwgwhhxwhvwgggwwwwgwwwwvwwwwwwwxwwwwgwgwwwxxwwwvwwfxhwxfgwxwwwgffvgwugwggwxwgfvgwWwgwwwgxfwwwwwwvxxwvvxgxvgwwxfwxxwwwwfwwvgwwwwxxvwvvvgwwxvxwhxwwwgwgwwwwwwgxwwxwwhwwwwwxfwwwwfwwwwvvwxwwwwxxwwxwwwwhxxxxwxxxwxxxwvgvwwwxxvwvwxwwvxfxwwxxwxxxwwwxxxxwxwwvwgugweWwwhxvtfgxwwvxwgweWxxWgxxxxxwwxgxvgwxwuvgwwgwwxwwwwwwvxwwwwxwwhwxxxwwwwvwwwgwdwvxwwhwxvgwxwwwwwxxwgvggwwxwxwwxxxwxxhxwxxwwwwwwwwxwxxwwwxxgxxxxxwgxwwwhxxxxxwxwwxwwwwvgwWwwxwxwvwwwuxwwwwxwxwgwxxxxwxwxwxxwvwwwxwxwxvwwwxxwwwvwwwwwxxxwwwwwxeffwfwvvvvgfwUwggwwvgvVvwvvvwvvwwgwwwuwvwfwvwfwgvwvwgvvwwxwwfwgwffewgvwfuuwgfwvgfwfvwwwfwgfgfvwvwgwvwvwgwggggwwwxxwwwwwfvwwgufwxwfvvvwfVvwwvvwUddwwxvwuwgwewgvwwwwwxfffvvwwgwwwgwvvwufvwfuuxwvgfffvfvwgwfwwvfwvfvfvwwwwxwwwwwfwxggvvwgwgvgvFewfwVefwffvvVUefgfwvfgwwfwwwVvwwxwwVvuwgwwwVVwwwwwwwvwwvgwvwvfwhwwWwggvXewggwgfwghWwgwfvwwxwxwvwwgwwwwxggwxgwwxwwwvegwwvvwVfuwxwwgUddggwvgwfwWwgwgvvvvwwhgwwwwfvwwwwgwwwwwwwfvvwvwgwwvwwwgewwwwWwvwvvfwwwvxwwwwgwxfxwwggvwhwgewfvwvvwwwwvwwfvgvVvwgwvxvfvwhwwwwvvwgvwwxwfvwxwxwxwxwvwwvwfgvwwwwwgwwwwwvwwwWvxwwxwwggwgvvwwxwwwggwwvxwxXvxvwhwvwwwfwwvvguwvwwxwvwgwwxgwvvwwfgvvwvxvwgwxwwWvvvwgxfwwwvwwVvwxvwwwwwwwwwvwwgwxvxvfwwvwwgwwwwxwwWwgvxvxwvgffvgfgwhhwwgVfvhgwwvghhvxxVvxgwghggwgwxhwxgwxgwwxwvwwhwgwwwxwwwvxWwxxfxwxxxwwwxxwhgvxwgwwwgwwgwxwwgfxwxwvwwwxvwwwxhwgevwwwhvwwxwwxxxwgwwWwwwwwxwwwxvwwxxwwwwwxwwwwwwwgxwxwwwvwgwxwwwwxvwwxwewwxxvwwxwxfggwgwwwxfwvwxwwwgwwhwwfwxwvwxwffwwwvvwwwxvxwvvxfwfvgvgwgVegfgvxwfwxxxxwgfxfxxwwvxwwxfwvwwxxwxxxwxwfwgwvwwwfvvxvgfwwwgwwhwgwwwwgwwxhvvgwwhvwwwxxwwwvwwwwwwgvxwvxgwwxwwwgwwxwwwwwwwwxwxwxxxxxwwwwxgwvwwwgwwfgwfxgggwggwxWwuwWgwuwggwxwwwwgwwxxwxggggwxwvxwxxxwggwwggwxffwwxfwwggggwxxxggwxxwwwwgwxxwxwxxxvxwxghhxhhwghwhwwvwgwwwwxgvvwxwgfvfgfgfvwfwxxvwwgwxxwwwwxxwwgwxxwwwgwwgwwwwgwwwwwwvgwvgxwxvvggvwwwwwwwvwwwwxwwxwxwwvggvxfxwxwwxWfwugwhgvwxwwwxwwxxwxxwxwffwwwwwvxxwwfwwwgxwxwwwxwxxxxxwxwwxxhwxgwvxxgfggwwwxwwxxwwwhxxxvxxxgwvwwwhwvwxgwxwvwwwwxwxwwxvfwwgxghfxwwvxxwxxxwwxwwwwxgwvwwvxvgwwfxwwxxwwWWxwxgxxfwwxxwhwxhxwwxxxwwhwxxwxggfhwxhwgwhxxxxxghxwwxxxxxgwxwwggxhwwwwgwvxwwgwxwxwwwwwghgwwwxvwwxxxwwhwhwxwwhwwhvwwwxxvxwwwxwxxxxxwxvwwwwgxwgwwwvxwxwxxuvgwwwwwwgwwvwwwwwwvxwwwgwwxvgwwgfwxwfwwxxwwgvwhwwwxwgwvwggvwwwgwwgwwwghwwxxwgwwwvwgwwwwxgwxxxhxfwwgfWewWguwwvwwwghfvwWwvxwxwWguvwwwwwgxwxwxgxwwwgxxxxxggfvgwwwwgwwvwgwxwxwwxwwvxfwwhwwwwvxwxxwwxxvwvvwwggfhfggwgwvgvwgwwwVvuwwgwwwgwwwgwgwgxwxwhwvwwwwwwwwwwxhwgfwwxgwwwvwwwgvwwwhwwwgxwvgvgwxwwwwwhwwwxhxxxwwxwwggfwfgwggvwwwxwVvfwggvgvwwwgwxwwwgwxwwhvwxvxwwgwwghwwwvwvvwwvwwxgwgwwwfwwwgvxwwwxwwxgwwgwwxwwwwxwxwwwxhvwwwhxwwvxgwwxgwwwwwxxwwxghwvxwxwwwxxxxwxxvwwvwwgwgwhwwwwxwxwwwwxgwxxwxwwwweugggwUgwwvgwwwxxwWxxwwgwUgwwwxhxhxwwxxxxvvfwvvwxvvwwwxgxwxwwxwwvggwxwxwwwwgxxgwwwwwgwwxwwwxxeuvwxwwxwxhxwwwwxxxwxxxxxxwwwxwxwwxxxwwwxxwxgwwhwwxxxxxxxxxxwxhwxwxxwxxxxwwvwfwwxwxwwwwxwwwvWxvvxxwhgwwwxwxwxxxxhwxxxxvwvxgvxwwwgxxxxwxxwwxwxxwxxwUwwwxwxgwxwwVvvwwxgxgwwgwwwxgwwwxfwxwwwxvgwwwwxwgvxwxxVvwwvfvwxgxwvvwwwWwwwgvxwxwxuwwgwvwwvwwwwwwwwxgwgfvwwwgxwwwwvfggwwxvwwxxxxwwfxwwxgwhxwgvvXwxxwwwuwvgwvxwwwxwwwvwwvwvxwwwxfwgwgxvvvxwxwxwuwvwgwwwhwgvwwwghwgFfvxhwgevgxwwvWfvxvwwgwwWguwxwwxwgxxxwvwxhwgwwvxxxwWwwxgVwwwwxgwgwwgvwwvwxxwvwxwVwWwwWWvvxwWfugxxwwwwwxwwxwuwwxxwwwwxvxwhwwwwwwwhgwwwvxwwxwxxwvwwvwvgwwwwwuwxwwxxwwwwxxwwvxfwwwwwvwvwwfwfwwvuvvwxwwwwwwwhwxwwxxxxxwwwwwwwvxwgguxwwxxhwwwwwxxxxxwxxwwvxxxwwwxxxxxvVvgwwwwwwxwgvxwfxgwwwwvwwwwwxwxwgxhxwwwxwwwvvwxxxxwwgwxgxwwvwvvwxgwxwwxxxwgwwxvwwxxxgvgwhxxwxwxxxwxwwwxxxxxvxwgxhwwwwxxgwwxvwwwxvxwwwxwxxxwxwxwwggvwwwwxxwxxwxwgfXxwgwwwxwggwwwwwgvgxwhxxxwwxwxwwwfvwwwwxwwwxxwwwwxxvxwwwwwwwxwxwgxvwgxwggfwgwwxwxghwhwwxwxwxwvwwxwvwxxwwwwwhgwwxwwfxwxwxxwwfwwvwvwxgvwwwwwwgwxwxxxwwvwwwxwxwfhfwwhwxwwwwgwwhwfwwwwwwwwvhvxwxfwwhxxwwxvwxwwfxwvwwxwwwxwwfwwwxxwwxwxxwwxwxgxvwwxwxwhwxwwxwXwgwwwgvwhwxwwwxwvgxxgwwxwhwwxwxxwwwhxwwwgxwxwwwwwwwwwxgwwwxxxxhgwxwwwxxwwwxwxxxwvxgxxxghxwwxxwggfwfwwgwwhwwgvwhxxhgwwxxwwwwfvxwvwwgxwwxxxwxxxwgwwxvwvwfwfwwxwwwxwwwwwxxvwvwwwwwwwwxwxwxgvwwwwwwwxwvwxxwfvxwxwxxwwhwxxxxxxghwwwwxxwgxxwwwxwxwwxxxwwwwhwwwwwwvhwxgwwwxwxvwwgvwxwwhxwwxwwwwxwxxwxwvwxwxwwgvxwxwxwxxwvxwwwwxxwwxxhxwxxxwxwvwxfwwhxxhwwxxgxxxxwwwwxxxwxxhxwxwxwwxxwwxwxxxwwwxxxxghwxwxwwxwxwxxxwwvwxxxwwxxwwwhxwwxxwwxxwwvwxxwxxxxwwwvvwxxwwwxxwxxwwxwxxwexxggvvxgggwxxgwgvwwwwwxwggvwwwwxxgwvwvxxxgxgwgwgfvwvwwwwhwxxwwwgwwwwwwhxwxxxgwwfgwwxggwwghgwhvwwwxxxvhwgvwwwvwgwxwxwxwwwggvgwwwvxwwxxxvwwxxhwwwwgvwvwxxxxxgvwwxvwwwXVeggWfgwfwhggxwvxwxwxxwwgwwevwxgwgwwxwvhgvwxgxhxgufwwggvgxwxwwwxwwxxxfwwWwxxwwwxxWgWgwvwvvwwxxxwvwxxwxgVevhxwwhxxxwwxhwwxgwwxxgwwwwwwxwwxxwwhxwxwwxwxgwxxgvwwgwwfwwwxwwwxxwwxwxwuvwwwxwxwixxwwvWwvwwwxxxxxxxxxxwhxxhxwxwwvwggfgvwwwwwxxwxgxwwwvwxwxwxwxxxxxxxwxwvwwgvwwwgwxxxxxwxxxxxxxxgxwfvwgvwvxwwwxhxxxxxxwxvwxwxxwxxxwwxhxxxfwgwwwwxxxxxxxxhwxwwwgwxhwgffwxggxwxhvxwxxxxxxwxwxxwvxxxxxxwwwwwgvxxxwwxxwuwwgwwwfwgwwggxwvwwfwwgwgwwwxwgwwwwghwxwvvgxwwwxwvvhxxwwvwWwvfwwvwwwwgvwwwwwwwxxgwvvvwvvwvwgwwwxwhwxxwwfgwwgwfwVeUuuwfwwwwwwUvvwgxvvvwwvfwfwwvxgvvvwwwwhxxwxwwgvwvvvxUvvwgvwxwwwwxxwwwxvvwwwwuwwxwwwwwwwxxwwwvwwwwETgfwfffwWgwfvgwgvvggwwwgwwUwwwwfvwgwxwwwwxwxxwvxhfxxfwwfgvwwwwwwxwwwwwwxxwwxwwwwwwxwggvwwxhxgwwwwxwxgwwvvxfffwUuuwgvXgwwwwwwgwgxfwwwgvvxwwwvwwwwwxwwwwxwxwwvxwwwgwvwvfwwwxwwwwwwwVewwxwwvgxwwwxxwwwwfwwwwgxwwvwvggwvvvggwwxwxhvvwwxwxwwwwggfgwxxwwwxxxxwxwwgwwwwwgvvwwwwwwwwwwwwwxxwhxwwwwwwwxwwwhwwxgwxwvfwfwwvwwwwvvwgwgwuwwxxxgwvwwxxxwxwwhwwhwwwxgwwvvvfxxwwwwxxwwxwwwxwwwwwwhwwxwwhxxwxwwwUwwwwfvwwxwwgvwxxgwwxwxwwgwggfxxwxxxxwwxxxxwxwwwwxwwwxwwwwwhxxwwwwxwwwxxwxxwwwxxxwwhwwxxxwwxwwwxwwwwwvvgwwvvwwvxwgxhvxwwwwxxwwhwwwxwxwwxwvxwxwxwvwwwfwwwwwwwvwwwwwuggwgwvgwwwwwwxwwwhhwwwwwwgwxwwwwwwvwwwggfwwxfwwwxfwwwgwgwwwwgwvxgwwxhwxgwvxxxwgvwxwwxfwwwwxxxxwxxxwgwwwgVewwgxgwvgVewxwwwwxwxgWVvfvvhwfvxwhhffvhxwxxwffggwxwxwxwwgvxhxgxxxffvxwxwwwhxwxxxxxxwgwwwxWgvwvvWvuxgXgwgXwgvwwwwvwggWwgwwwvwwgvxwhgXwhxwgvwxwwxghwgWxgwxfvxwvwwwgWwxwwwwwxxxxwgwxxgxgwwxwwxwhwwwxwhhxxhxxxwwWffwwwwxgwvxwwwxwgWwggwwvwxwxgwxgVgWwxxwhwwwwwxgxxXxwhxwxxwxxwwwwxXgWwwwxxwxgxxxwxxhXxwwwwfvwwwhxxvwwxxhhhwwwxgwxwxwwgwwwxwwwggwwwwwxxwvwxhxxwwwwvxwwgvwxxxxwwwwghghwwgxxwwwwxxxxxxwwwxxgxxxxxxxxwwggvVvehfvuxwhWwVvehxxwxxgxwvvefXxxwwwxwxxxxxxfvvgwwggxwxwwwxwxxxxxwxxwwwwxxxxxxxwwxxxxwwxwhggwwxuvwxhgghwhxwxwxxgxwxwwwxxxxxwxwwxxhxxxwwxfwxhwxvxxwwwgwxxxxwhwxxxxxxxxwxxxgxxxhwwxggfgxgwwwhxhggwxgxxhxwwgwxwhhxxwhhxhxwwxwgxwwwwxwwwxxwxhgvwhxvwxxwxxwwwuwwwfvVwwwfwWvWwwwgwwwwwggvwwwwwwvfvvvwwgwwwwwgfwwwgwwwwxwgwwwfvwgvwwwwwwgvgvwwwxwwgwwwuwwfwgwvxfvvvxxxxgwwwWvvwwfgvfgvwvwwvwvvwwvxwhxwwwDuufwwxxwfwwwwhvxxxvvxvuwwffvfwwwuwxvvwwvvwgwwwwwwfvvwwwwxwwxxwwwwxxwvvgwgVgvfwwgwvwwVwwgVwwwwgwwwwvFewffVvgevwfgvvfwwxXfwwvwxwwwxwgwwwgwwgwwwwxwwxwgvwfwwwxxwggwwwwwwxhwwwwfxgxhgxwxwxxwfwDuefvwvwwwxwfwwwgfwwwwwwwwwfuvwwwwXxxwwwwwwxxvfwwwwwwwxwgwwwwwwxwwwwwwwxxwgwvxwwxwxwfwwwvwvxguxgxvwvwwwwvwxuffwwwwwwwwwwWwxwxxxvwewwwxxwwxfgwgxxwxwxwwvgwwwwwwxwwwxwwhwwxhgwxwgwxwxwxxxwxfxwgwwwwgwwwwhwgwwxwgwwwwhgvvwwgwxwxxxwwwwxgxgwhgxgxgvwvgwwwxwwxwhxwwwwxxxwwxxwwhxwwwffwvgwxxxwfgwgxwwwxxxwxxfwwwwwwwxwwwxxxxxwwwxxwwxxxgvwwwhxxxwxvxwxwxwxxxfxxwwwxxwwxwwxwxxwwxwxxgvwwwfwxxwgxgwwwxwxwwxxhgwhxwwxwxxwxfwxxwxwwwxgwhvwwwwxuwwwgwvgvwwwwvvgwffgvxwgwwwffgwvggvvwwwwwvggwgvgwwwwwxwwgwwvVegwvwwwvffgvgvwwfvvxxxffwgvwwwwwwwwwvgwwwwxvwxwwwgvvfvggvfwvwwwfgvggwvwwgwwwgwGvwevuwgwgwxUeugwwwwvxgwwxwwffwwgvwwvwxwwwwvvfwwwwwwwevuwtwwgvvwgwwwwvwvwxwwxwwwgwvvffgvwgwwwwww6egvwvfvxvwgvgfgwfvvfgwwwgwfffvfgvwgwhxwxffggvwwwvwwwxxgvgwxwwwgvxggvxwgvwwxwxgvgwxgwwvwgvwwwwhfhwvvfwwgwvvwxwxwfvffwwvwwwxwwvwvUeugwwwwvwwwxwxxvgwGwwgvwwxgwxgvwvwwwwwxwwvgvvgvwwxvwvwwwwwwvwvwwgxhxwwwgvwgtwwxwvwvgwwvvgwwwwwgwwgwwwwWwWwwvggwwxfvwxvxvwxwxwwxhxwwwvwwxwwvwwgwwwxxwwwvwwwwwwvgwxgvwwxxxwwhwwxwwvwwwwwwwgvwwvgwvvgwvgvxwxvhwwvwvvvwxhwwxvwwwxwgxwwwxgwwwwxwgvwwwwvwxwwvxwwwhxxwwxwxwwwfvwWwWxfvxwwhfxhxxxwgvwwwwxwxxhwwwxwgwhwwwxhggwvwwwwwxxwwfvwwhvwwwxwvwwwgwxwhwxvgwwgwgwxwwhwgwxxwwwxvwxwwxwvxwvxxggvwwxvwvvwwwwwwxwxwxwxwwxxxwwwwwvwwxxwxwvxfwwxwwwwwwxwwwxwxxwwxwvwwxwhgVvuxhwgvvwWwwghfwwwXwwvwxgWvgwwwwwuhwxxgwwwhwgfgwwgxghvwgxwwwwxWwwwwwxwwwxwvgxvxwxwxwxwxwxwwgxwwxvxwwgggwwhWfwwwwgfwwwvwxwgwwwwwuvhwwvwwwhwwgxwwXwwwxwwvfggwugvwwwxwwwwxxwwwwvxwwwwxxwwwxxwwxgWwwwvvvvwhgvwWwxWwgwxGvwgwWWgwxwwwwwgwvfwwvggwggxwgwwgvggwwwxgwwwvhwxwwghwwgwxxwgwggwxxwhwhxxxxVvwghwwwxxxwwwxxwwhwwgxxhxgxwwfxwwwwwwwwwxgwguwhwggwgwwxwxgvwWwwwggxfwwwwxxwwwggwgxgwxVvwvgvxwxwvxwwvxfgxwxxwwwwxuwwvxwhwwxxwxwwvhwgfxwghxvWwwwwxwvwxxwwhwwfwxwwhwxvwwgwwxgxwxghgxwvxwwxxgxxvxwgwxwxxwxwwvxxvwxwxwxhwxWwxwwxxxwwwwWwxggxwwxwwuwxwxxvxwwwXwwgxxxxwwwwxxwxwwhxxwwhxxwxxwwwwxwvwwxwgWwwxwxxwhwwwwwxgvwxwxghwxxwxwxwxwwwxwxxwxxwxwgxxxxxwxwxwwxwxhxvxxwxxxwxxhxgxxxxxwxwxxwgwxxxxwwwwwgwwxxhxxxxxxhxxhxxxwxgwxwxwwxwxwxxgwwxvxxwwwxxxxhxgxgxwxwxxxxxugfgvggwhugwvgwgfxwwwgwgvwffvxxxgwuvhwwwwxwwxwxxvwwwggfwvwvwxvxvgvwwwfwvxvguwwvxvvwxwfwwgwwvwvVwwfvvwwgwwvgwwVwwfuxwxwwfwvfwwwxwwhxvwgwwxhxxwxxxwwwuxfvwfxwwxwfwvwwwwgwwwgwvxvwxwwhwvgxvvggwwwwwfffgwgvvfwfgfwgggxxgwvwwwwwxxwwfwwWwfwgwvgwwwVwvwwwgwWwgfxxwggvwgxwwwwfwwwwfwvxhwwxvwxxwwgwgxxxwxhxwwxxxwxwggxxwwxxfwwfvvwwwgwxwfwuxwwwxwwgxxwxfgvwvxwxgwfwxwfgggwwwwxwwxwfwwwwwwwwwxwgxgwwwwwwwwwxwwwxwwgwhxxwwxwwwwwwwxwwxvwvgvxwwvwgwwwwxxxWvgxgwxwwwgxxwwxxxwVfwwwwwxwfwxxwwwwwwgxwxxxwxxxuwwwgfwwwwwwwxwwwxuxwxxxxwxwwgwvvwgxwxhfwwwhxghwfxwxwvvgwwwvwwwxxvhwwwwwxwwxwwwxwwxxwxgxwhwvwwwghvwwewvwwwxwwgwwxhwwxxfwWgxwxwxxwxwxwxwwxxwxVwvvwwwwxwxwwxhhxxxwwxxwggxxxxxxxggxxxxfvvwgwwwxxxgwghwgwvwxwgxwwwwwgxxggxxxwwwhxwwxxvxwvwwwxxxwxhwwwwwwxwvwxwwxxwxwwxxxwxhhdggwVvwgwfxvggwgwwvxwvvfwfwvWvvxugvwwwwuwxvgggvvvvfhuwwwgvvwwwwgffWwvxvwggwwgwxvggffvvwxwwghWvwwwwwghwgxVvvufvgWvfvvhvwvgvwwvwxvwhwgWvvvvheevgwxhwuexuwgwwwwwwwwvwvVwvxfvwwgwuwwwwwxwwgvxvwwwwxwwvxxwwgwwwwxwwxgfwwxgwgGewWfvwgggwwwwwWgvwvhwvgGuwgvvwgvgxvwvXWguwvhwgvwfXwxfxvwxxwxgwwhwwwxxxxxhwwwxxxwwwwwwwwwxwxxwGWgwwwwwhxwxGWhhgwvgggwvwFgewwxwwWfvxwgggvxwwghwwWfdgwwwwwwHwvwwvhgwwwwwvwwwwwxwvxwwwhwwwwwwxxgwxwwxwwwwgwwwwxwWggwwwwwwwwghwwgwwwvwwwwwvwxwgvwvwwwguwgwwxwwwvfxwwxxwvwxwxwwwwwxwwwwVwdwgfwwwwwhGwugxwxxxxwwwwgwxwxxhxwwwxxxwxxxuvwxfvfwvwxvvgwuwwxvwwwxgwweuwvwwwhxxgwwvwwxxwgwgwwvxwxxxwwgwxwwwwxwwwwxxwxgwvxxwwwwwwxwgvhwvwvwvvwxwWgvxXhgvwxxxwxwfwvxxxxgwxwwwwxhxwwxxxwxxwxgwwxxvxxxwwwwwxxwxxhwxxxxxwxwxxwgwxwwwhhwwwwwxwwwwxxxvhgwwwfwxwwwgwggxxwxwwhwxxwwwwxfhwwwwxxhxxwxwwwxwxgwxwgwxwxwxwwxvwwxxvwvwwWwvxgvwfxwvvwwggwwwxXgwgxVvwgfwwwhvxgwwwggwwfwxfwfwhwwwgwvgwgvwwxwwwggwwwwwwwwghvwxwwxwwxwwxxwxgwwhwwghxgwxgggvxwgwxfgWwfvwxWwvwwhxwwfgwwxxvwwxwwhgwwxwxhwwhwvwwwwwvwwwwxvwwvxwxvxvwwxvwxwfxwwwwxhwwwgwvfwgwvwwxgwewfwggwxhggggvvwgwgwwWfgwvwWwWguxwwgwwwxwgwggwxwwgwgwfwgwgwWwwwxxghwxxxgwxgxwxwgxxxhwwwwxxxwhxxhwxxwxxxwxWhwfwhwwxwxwgwwWwxvwwgwvgwggvwhwxgwgwxvxgwwgxwxhgwvvwxgwfwxxwwwwxfwwwxhwwwwwwwwwxwxxhwwvxxxhwxwxwwwxvwgwxwgwuwgwWwxxwWwvwxghwwxxgxvwxwwxwxwwxwxwxwwwgxgxwwwwwxfxgxxxhhwwxgxwxxwxgxxxwgwxxwgvwwgwgxwxwwvwggwvwhwwxxxvxwghwwwwwxxhgwwxwxxvxwwwxxxxwxxwvxgwxxxwxxxhwxhxwwxghxxxxgxwwwwgxwhxvwxwxWwwwhwxwwxwxwxhwwxwxxxxwxgwxwwwxxxwxxxxgwwhxwxwxwwxxhhhwxwxxgyxxxwgwwwxxxxwxgwwxWxwwwxxwxwxxxxwxxwwxwxxxghhwxxwxwwwwwwxxwxwxxxxxwwxxxwwgwxxwxfgfwgwvgvxWwgwwwggxwwvwwfgwvwfggwvxvwggwwgvhwwwwwwgtvwfwwwwuvwwvwwwwwwvwgwvfwwwgwwxvwwwxwwfwwwgwUwwwewwgwxwgwwwwwwewwVwwgvwgvwxxfvxxxxwxwxgwxvxfwwwvwvwwwwwwwwwwxxvwvwvwuwwwxwwwvwxwwwfwfwgwgwvwwwgwWgggfgwgwgwvxwwwwvwVFgfwwgvwvwwwfwwwGwffwxwxwxwwwwwxwwgwwvwxgxwxwwwxxwwxxwwgegwggwxwxwwxhwxuwwhwwxwwxwxvwfwUwfwvxwwwvwwVwUwwwwxwxggvxvwwwwxxwxwxgXwwvwxwwwvgwvwfwvwwwvwxxwxwxwxwxwwwwwvwwwxxwuwwwxvxwwGwvvvxwhvwwggwxgwwwwgwwxxwwxwwxxxwxxwwefwgwwwwwxwwwwhwxwxwvwxwxvwxxxxwxxwwwxvxgvgfgwwgwuwwvxwxwwxwxxxuvwxvwwwvxxwhwwwxxxxxwxwgwxvwwwgfwwwwwxgwxwwwwwxwwwhwxwwhwwwwwxwwxwvxgwvgwGgfwwwwwwwwhxxhxxxwxwwxwwwwhwxxwwxxxxwxwwwxgwvuwxwhwwfwwwxxxxxwwwwwgxxxwhwwwxxxwxwxwwwxwwvwvxwwvxwwwwgxxxffxxxxwwwxwxwwhxxhxwwxxwxwxwwvxxwwxxxxwxxwwwwwwwxwwwwwwxwwxwxtvfwvfvvwwvfgvwvwgwvvvwwxfvwwfwwwwvwvwfwwxwgfxxxwvfvvvwvwwgwxvwwwhwwwwgxwwxvwgVwwxwgwwxwfvxgxwxxxxxxfwffdwWVfwvwgfdwgwxvvwxxwWwgwvwwwwvwgwvxgwxxwwxwgUgwuwfwvwwwwwwwwwwwxwxwwwghwvxwwxwwwwwxwwxxwgwvwvgfwwwgwxxggfVgvwvgggwvwwwWgwwgvwwwgwxxxFvhwwwwxwvxwwWvwgxgvggwwxxwwggwwwwxxwgxvwxwWwVwxvwgxxwxxwwvhwwwvwwwxgfwewvggvgffwwggvhwwwwxwwwwwwgwvwwxwhwwxvwgwwwwwwwxwwgwwxwxfwwvwWwgwffxxggwwxxvwxxwfvwxwwxwwfgwwwwwvxvwgvwwwxvvwxwwxwwvhxwxwwwxxwxvwxwgwwxwvvwwwwhwwxWwxwhxxhwvwxwwwwwwwxwxxxxvwwwgvdgvuWgwwwgvdgxwwxwwxwwxwWvwwwwwxxwwwxWwxwwwwwxxwfewwwwwwwwwwwxwwxwxgwwwwwwxxwvwgwwwwwwwxhxvwwwxwwgwhwxxgwuwxwxxgxxwvwwgwwwxxxwgwwwwxwwgxxxgwWxwgwgxxgwwwwwwwgwxxwxxxwwwxxxxxwgwuwwwwxwxxwwwgwwwwhwxxwwgwxxvwxwwXwwwwwwwwxwvwxwxwwvwxwuxwwxwwwwwxwwwwwuwggvwwwxgwggvwwgwwxwgwwwxwgxwwhWgwWgwwwvxxwxwxxwwwwwwvxgxgwxwxxxwgWwgwxgvxxwxwxwwyhgvxeWwwwgwxxhwwwvwwwwxwxwwwxvwhwxwxxxwgwwwwwxwxwxwxwxxwxxwwxxxwxwwwwvgvxhwxWfwwgxwxwwwwvwwxwwvgwgwwxWgwwWwwwxxxgwwxwxggwwgvxwxhwwwhwxxwxwwgwxxwwwxxxwxwxxwxxgwxxxvWwwwfggwvwxwxwwwwwxwvwwvgwwwxwxwxxxxxxwwxxgwvwwwgwwwxwwwwxxwxxwwwxwhwwxwxwwxwxxwxxwwxwwgwxwwwwvxwwwxxwwxgxxxxxxhwxxxwgwwvgwwwxvxwxwyxxwhwxxxxwxxxxwwwwvxwwwxvvwghxxvwxwuxwwxxhxhxxxwxhgwxwxwxxwwxhxxhxggxwxwxwxxxxxxxwxxwwwwwwxxxwwgwvxhxhwxxhwxwwxxxxxxxgxxgwxxxwwxhxxxwwxxwxxwwxwwxwxwwxwxxwxwxxwhwwwwxwxwxwxxwgxxxyhxxwxxwwxxxxvwvxhwxwwxwxxxxfwxwwwxxxwwwxwwwwxxxwwgwfwvhgwwvxxwgxwgvwwvwxgxwgwwwwxwwwxwxxwvwwwwvxhwwxgwwgwggxwxwwxwggxxwxxwggwgggxwwxxewvwgwhwvwwwwwxxxvwwwwwwwwxgvvhgwwwwwwxvxxwxwwxwvwwVewgwwvwxwwhwvwwwwxgvxxxwgWfwgvfgwxwwxuegwwggwwxxwwwvvwxwwwxxwxwwwxwwwxxwxwgfwwwwvwxxwxWgguwwwxxxWgguggfxgVvewgxgxxwwwgvvwvwwxvxgwwxxwwgwgwwxxwvwxxxwwwwwwwxwhxxwwwwwxxgwwxwwwwgvvxwvwwwwxxwwwxxxxxxxwgwxxxhwwwwwwgxwwwxgfvwwwwwxxwwxwxxwvwwxwxwwxgvwxxwxxxwwxxwxwwwvxwwxxwxxwwwwwxxxwwhxxxxxxxwwwwwwxxhwxvxxwwwwgwxxxwvwvwxgvxwwwvxwgxxxwxwxxxwhWwvxwxgwxwwwxwwxwxwwwxwwwvgxVvvwvgfuwxgwvwfwwwvvwwwwwgwfwgwxugwwvwwwvvwxgwwvxwwfvwvwwhvwwwwwvgwwwwwwwwvxggvwvwvxvggvwwgwwhwwwxwwwwwgvvxwwVvxfWwvhvwggvfwwwwhwwwgwwgwuwgwwwwwwwvwwwwwxwwvvxwwwvwwvwwfwwwwwxwggxvxvwfvvwwwwwuwwwwwxwwwvuvwwgwwxWfgwwwggwwwvVwggfxgvvwVgwvgvVhwxgVvwgvwgwvgxfxwwxwwwxwwWxwgxwxwwgwwwwxxwxhfwwwvgwwxgxwxwwfwgvwwwgghwwxwfwwvwvwwvvwhvwxguvggwhuxhgwwWwwxwwgwwwwwwwwvwwwwvwwwwwgwwvxwwxxxwggwwwgxwwgxxwxwwwxwwwxgwwwwwvwwxxwxwgxgwWvhwwwvxggwwwwwwwwwgwhwwwwwgwvxxwwwwgfwvxwwvgwxxwwwxwwwwxwxwvxwwhwwwxwxwvxvwwwwwwwwxwwvhxwgvwxwugxwvwhwwgwwhwxxwwhwwhwxwwxwvvwxwwvwwxwxwxwwvgxhgxwvwxwwwxxgwxwxxwxxxwwvwfwvwxwwxwgwwxwwfxxxwwxwwwxwxxxxgwxgxxwwhxhgwxwwwxgxxxxwxxgvxwxxxwxxwwhwwxgwwxvxwhwwwxgwgwxwvwxxgwwwxxwwgwwfwxwwwxwwvwxwxxwXxxxwwxhvwxxxwwwvxgxwwwxwwxwxwwuwxwwxuxwwgwgwgwwfgewfgggwwwwfgfwvvvggwwvVVwwxggxfgfwfwggWwvwwwwwwXWuwwwggwvwggvwwWwxxfWgfgFvvxWvvxwvvwgwWhxxxvwgwwwgFfvvwvwvwwxWVewfvgWvvfgxwgvwwxfvfggwwvwxxfvwwwxhwwxwgfgfwWwwxfwfxwgfvwwwggxwxwwfvwwwwxwxwwwxxwxwwgwwgwvwvwgGtfwxfwgvvwW7ugwggggvvvggfWwgWwVffggvvhvxwwgfgvggeGewxvgwwwwxwwwwwwwwwwwwxwvxxghvvvgGGwwwwWwgghwxgwwgvvwxh8VhvwxhWvwwggWVeggwwxwwgwWfUvwhv8wgxwwuvggvxwxgxvgwxwwwwwxxvvvgvxwwxwvvwwwwxgwgWwwwxwvghHWxwwwhwwvwwhwwxvwwwwwwxxxgXvwwvxwvvwvwwwwgxfwgvwwwggfwvvvgwxwwgxwewfwwwvxxgxgvwggwwwWwuwwwwwwwwwWwhxxwwVevwXxwxwwwwxhhwxwwwxwgvvgvwgghfvfxvxwguwxvggfwgwwwwvwxgvwwghwwgggwwvhvgwwxwxwwwwxxxwxwwwwwwvwwxwwxxwgwxwwwwwvvwxxggwugwvgxwxffwuxxwWxxwxwwwhwwxwgxgxxwwwwxxwwwfgxxwwgvgwhvhwxwxxwwuhhhWxxxwxxwwxvxwxgvxxxgwwwxggxxwgwwxvgwxxwxwxwwxvxxwwwxwxvwghwxwwwwwxxwwwwwwwxwXwwxwhxxxxwwxwxwxhwxxhgwwwwwvvwwwghwhwxwwxwxwvegxvwxfxwwwwhxwhxxxwgwwgwwxwwxwxgxvxhvwwwwxwgwvwxwwwxxxwxvxghfxxwxwwwwxxwwwwwwxwwwwwxwwxwxwxvxxwwwwwwgwwxwxfhvggwxgxxxxwwxhwwxwwfwxwwwxwgxxwgxxxxwwvxxwxwgwxgfwwxwwwgxhwgwvwgwxxwwhwgwfwwwhwhwxghgxwxxwxhhwwxgwvwwxxwxxwwxxwxwxxwwwwvggxxxxxvwvxhxhxxwwhwgwvgwwwwwwwwxhhwxvwvhxxwgwwwwwhxxgwwwgvxwgwwwxvxvwgxxvxwwxwxwvwxxxxgwwxwvwxwxwxwxxxhwxxxxwwwwwwgxxxxxxxgwvwvxwxxwwxxxywwxxxxxxhvwgxwwgxwwwxwxxwxxxwhwwvwxxwwxvxxwxxwwwwxxxwxhxxxxgwwxxvwyxwwwgxxxwwxwwwxxxxxxxxhxxxxwwwwxxxwxxxxxxxxwwwxxvwxxhwxxxxxwwhxwwwxwwwgxxwwwxwxxvwwEvgvxvgvwwwvfwwfwvwggwgvwwvwgvvvwxwxgwgvwfvwxxwwvwwwwewwwwwwxwwwvwwvwwwvvwwvwvxvvxwwgvwhgxwxfwgfwwvvgwwwgvwgvfwxwfxwggwwfwvwwwwgWwvwvwwwwxwvwwwvfwwwwwwxxwfwvwgwwgwwuwwxwggwuvwwxevvxhVexwwgwwwwwgfwgwFgfgwwvxggvgfwwxwwvgwwgwfgfxfxvxfvwxvwwgxwWwgwvxwwwxwwvxwxwgxwwxwwwwvgwxgwvwwwwwwwwxxwxgvhwvfwwvfwgggwwvxgwvxfxwwwwgggwgwwvxgwwfwwffwWgwwvxwwwgwgwvgwwwwwxwvwwvwwwgwgvxwwwwwwwwxwvwgvwwwwwwggvwxwgwgggvwwgvhwwvxgfwfwwgxxgvxvxxxxwwwwwwwxwvwxwxxwvwwwwvxgxwxxxwwvwwhwxwwxwwxwwhggvwwggvvwxgvxhfwvwwwxxwvxvwxxwwwwwwwwwwhgxwwxxwgwwwxxwwwwwwwxwwwwvwwwwwxgwxxwwhhgxwxwwgwgwxxwwgwwxxwxwwhhhwxwwxxwwxwxxwwxwxwwxwxxwxxxxhxwwxwxwxxxwxxwwhgwwgxwwwgwwwxwxwgvxxxwgxxwwxvwxyxwwxwxwwxxxxwxwwwxwwwvxxwhwxwxhxgfgwwwxwwhwgwgwwxxwgxwxwwwghWwggwxgvxwwhwwwwVWgvgwwxwghgxxwwxwxgwwwwwwwxwgvwxxgxxwwxgwgwggxxwgwwxVgvwhxwgwwxwxxwvxwwwwwwwxxgwwwxxwxxwgwwwwxwwwxxwwxwxwwwwwxwxxwxxxxxxwwwvxvxgwwwwwwxfhhvWgwwxgxwwxxxwwwgwwgwhgwvxxwhgwfggxgwgxxwxxxhwgxxwxgvxhxgxwgwwxhgxwwxwwVwwgxwgxxxxwwwxWvyxwxxwxxxxwggvwvgwgwgvhwwwgWgxfgwxxwwwwVgwgxxwxwxxwwxwgxxxwxwwVxwghxwxwwwwwwgwgxwwxwwwwxwwhwgwxwxwxwwxwxxhhwxxwhwxwxgwgxxxxxxxwwwxxxxwxWxwgwxxwwxwvxwxwxxwwxxxxxxwxxxggwwwXxxxwxwwwgxxwgwxhxxhwxwxwxxxxgwgxvwxwwwxxxxxwxxxxxxxxxwwxxxwwxwwwwxxxwwxghxxghxwwwwvxxxwxxwhxxxxwxhwxxwvhxxxwhwxxgxxxwxxxwxxwwxxxxxwxwxwgwwxxxhxwwxxxhxxwxxwwxwxxyxhxwxxxwwxwwxxxxxxwxxwxxtwgxgwwwfwvwVwgvwxhgvgxwwwwwwwwgwwxwhwxgxwvxwvwgwgwfxGgfufwwwgwwwxwwxwwggvwwxxwxxwxxwxwxfwwwgffwwwgwwgxwvwwfvxwxwwwwwwwwwgvxwwxffgvfwwvwgwwwwwwwwwxwuwhwxwxwxvxwxwxxfwfwggvwGffwwvxgwwwwwvvxxxwgwggwgxxwwwwwxvvwgwxxwxxwxfgvgxgwwwwwhxwwwxxxxxhwwxxxxvhwvWxwvxwXxvxxxxxgvgvwwwgvwwxvvwwgwwvgwwwvvwvvvvxwwwwewwggxxxwvxxfgwvWwwwxwxXxwvxwxxxwgwxgwwwxxxwxwwwwgwvggvwwXxwxwwxxwgwwhgxwwxwHgfwwwxwwwxxwxwwwwxxxwxxxwwwgwgvwxgwwhvxgxxxxxgxwgxxxwwxxwxwvvxvwgxxwxxxxwxwwxxxxwxwxxgxxwGffwgwwwxwwwxwxxhwxvxxxwwxxwwggfgwwwxxxxwhwvxxxwwxxvwxxwwxxxxxxxxfwvxwxxwxvxwwxwwwxwwxwxxxxwwvwwxwwwwwvwxxwxwxwxwxvxvvxgwwwwwwWgvvwxgwwwgvwgxvfgwxwwwxwwxxxwxfvwwguwwgvwwwwwfwhwwwwwwgxvwwwwxxxwxxxwxxxxwwwwvvvvgwwwvwfxgwvgwwgxwwxwwxxwxwwwxwgvwwwvvwfwxgwvwgvvxwwwwxwwwxxvvwwgfvxWgvwWgwxevwvhhxfwwgwwwgwwfhwxvwwwvwwxgxxwwxxwwxwwfvvhwwfggfgwvxhwxgxwwwxxwfwgwxwwxxhwxxwxxgfvVvvwffwwgwxvvvWwwwfwxwwwwwwwwwxwwxwxwxwwwwxxfgvwXgvgwxwwwwxwxxfwwwxwwwxxxxwwwxwwxgxwwgwxwgwwwwwgxxxwxxhvvxxwvwwxwwxxxwxwxwxxxxxxwxwxwvgwvgwwwxvwxwvwxxxxwxxwxxxvwvvhwwxvxwwxwxwxxxwxwxxggwgggwwgwxxvwwgwxwxxxvwhwxxhxxxxwxwgghxwxwwxxxwwwwxwxxvxgwwwwhxxxxwxxwxwwvvxwxwxwxvwhxxwwxwwxwxwxxwwxxxwwxwxwxwxxwwwxxewxwxwwwwwwwfvwwxxggwgwwvwxgwwgwwxwwxwwwwxwwwxgwwhwggwggwxWvWwxxVvwwxxwxgwgwxwxwxfxxgxgxxwxwgwwwwvgwwwvwwfwwwvgxwwwxwgwwwwxgwwwxwxWwgfvxxfvwfxxxgwWwhwgwwwvwwxwxfwwwxxwxxfvwwxwWgggVwwwWVWvxwgxfvfwwvwwwggwvwgwxvxfwhwxwwwwwxwxwwwwwwwhxwwwggfwwvwxxwxxxyWxwgxxwwwxgwxwxwhwwwwxxwxxxyxgfWgwwuvwwvewfevwwghwvxwwfwwvwgxvxvxxxvwvxgwxwwxwxwfgfwwvwwfwwVwfwgxwwxxwxxwwxwgwxwxwwhxxxvwwxgwxgxwxWwwwgwxgwwwggvxwxxhhgwwgwwxxxWvWwwwxwxwxwxwgxxxxxxxxhwxwxxwwwhwxxxwxwwwwxwxwwwWwwwwwwxxxxxxxxxxxxguwfhxxxwxhwvxxgwwxxxxxwWfWxwvgvwxvxxgwfwxwwwhwwxxwwxgxxxxwwxwwxxxwhggwxwwvwwxxwgwhxwxxxxhxgwwwxxxhxwxwxwxwvwvwfwwwwxwwwvxwhwwwwwwwxxxwwwwxhwgwwwvwwwxgxxxxxxwwwwwvwwwgwgwwwwwwwwwgwvgvwwwwvvxwwvgwwvvwxwwxwwxgwfwwvwvwwgwvvgxvwwxxxxvwvxvwvwwxwwxwwwwxwxwwxfgfwvvfgwfgvxvfwwvvwgvwwgwggVvwvwxwxwwwwvwvxwxwfwefvvgvwvvuvwwwwxwvwwwwwuwwwxwvwuwwxwxxwwxxwwvwwwgvfwffwwfwwgffwwggwfvwvxwwgufwwfgvwwvfwgwvgvxwvwvwgwwwxxvwggwwwxwwhxwgwxwxhfwxghxwgwwfwwgxxxvwgwwwwxhhwwhwxxvxevwdevwgvvxuwwdewvxfvwuewwwvwwfwhdvwwwwxvvvtwwwwgwwwuwwvhfgwwgvwxfwwWvwwwwwghxvgvfvgwwvwvvwgvwwwwfwvwhwwxwxfwwvwwwwwwwvwxwwwvxwwwwvwgwfxwxwwvxhhwhvvwwhwwwxwwxwhhwvgwwxgwxxxxhxwguwwvvvgggwwxxvwxwwfwgxvvffwwhxwwvwxxxwwwvgwwwwxwxxwxxwwxwwwwwxwwxxxxgvwwgxvwwxxggvvgwwwwxwwwxvxvwwwwxwxxxwxgwgwhhxxwwxwgxhwgwvxyvwhWxgwxhxgxwgwxhxxxfwwfwvxvgvwwvxxwwwvwwvxxwxxxhwwwwwwxwwxxgxwwwxwwwgwwwxxxwwxvwwwwwwxvwgwwwvgfwwfwwfgwvwxxwvwwvwvwxwgggvwwvgwxVevwwwwfvwwvwwxggwwwwvwwvfvwwvvgwvwwvwwwxwwwwxwwxwvwwwgwwvwwxwfVvwggwxwwxwxvwwvwgwwxxfwwxwwwwwwwxfvwwwwwxvvfwvwwvwvwwwxwxxgwxwwxxvgwggwwwVwwwwgggvfvwgfVwwwwwwfvwwvwwwwwxxwWfwwwxxwwwwhhwwfwwvwwxwwwvxwxxwgVuxwxxwxxwxfwwxxxxxhhwxwvxwgxhwxwVwwwwwwgvwwxwWUvwvgwvwwgvxwvwxwgwwwxwwhvxxwwxxxwgwwvwwxwggwwwwxgwvwxwxwwwvwxwxxxwxwwwwwwwxwwwwfwvwwwwWwvwgwwwvxvxwwwxxvwxxxhgwwwxxxwwxxwvwgwxwwwxxhwwvwwwwwxxxwwxwwhhwwxxvwvwwwxhwvwxwvwwvwwgwxwwwxwxwwwwwwwxwwwxwwvwxwwwxwxxxwwxxxvgwwgwwwxxwVwwwwxwxwhxwwxxwxxwxxwwxxwxxwxwwxwwwvhwwxxgwwxwwgwxwxgwwxwwxxxhhxwxwghwxxwwxgxgwxxwxxwxwwxvwwwwxwwwwxxwxxxxxwwwwxwxvxvwxxwwwwxxwwwwxwxxxwuwvwwgwfxfwwgwwwwwwwvWwvwvwvxgffxxgwvwvgfwWgwwwwwWxwwggvwhwvwfgvxwwwwhwwwwgwxvggfwwwFVvwwgwgxgwwxwwwwxxhfwvvwwwxgWUgwvfgfvWgvwgvwwwwwxwxvwwvwwwxwxwwwwwwwwwwxwwwwwFVvwwwwxwwgwgwwwggwhxxwwwwwvwwgxwwwwxwxwwxwxwwewwxggvwggwxfxvxffvvwgwwVWevwWwwvfgwVvgxwwwxwxgx5FevggwggxgwxwhgggwwwWwwwwwgwxwwgWxgwxHwxxgwvxwWgwxgvwwwxwgwwgxwwxwxwxxhgvwvgwVfvxgvvwvwww5FevwWfwvggwwvvwvwxwhgxwwwfwwxxwwgwwwwgwwwwvwwwWgwwhgwxwxwwwwxgwgxhgwxwwxuwwwxxwxhwwwxwwwgwxxwwvwwwwgwgvxwwwwWvwwwxwwxwxxhWUwwvwwwwgwwxwxwxxxwgwwfgvwwxwgxwwgwxwhxxxwvwgwwwwxxxxwwxuvwvgxvwwxvwwvwxwxwvwwxxwwxxwgxwwxwxxxwxfvwvwwxxxwgxxwxwvxwwwwhxxwhxwxxwxwxxuwwwwwxgwxwxxwwxxwvwvwwggxwhgWuvwWwxwxxwxwxgvvxgxwxwxwxwwxwwwxwxxwxgxwwvwwwvwwwwxwxwxhwghhwxxxxwxwwxxxxwwxxfwwwwwxwxuxxwvxwxwwwwxwxwxwwwwwhwxwwxvwwwwwxwwwxgwwxwwwwxwxwxgxxwhwwxvwwwxhxgvwwxvwxhxxwxxxwfwxfwwwxxwxuwfxwwxxxwhxwxwwwgvxfwxgwwwwwxgggwgvxwgwxfwxwvvgwwvxwwvgxwgwhhhWggwwxgxfxhxwwxxxxfwwwwwwwwwgwvwgwxwwvwggwgvxxwxxffwvwwwwwwwxwxgvfhgwvxxxwgxxwxxxxwwwxxxfwvxhwggvggwwVwwwgwwwWeguugwhxhwgwwxxxxxxxgvwwxwwWwXwwwwgwxgwwvxxxvggwhvwwxxgxwxwxgugvuwwwwwvxwwvvwwwwwwvwwxgvvwwwwwxwxxxgxwxgWwwXwwwwgxvvxxgvwxwwxxxxxwwxxxxwxwxwwhwggwwxgggwvwwwhxxwwwwhwwwWggvxxxxxxgwwhxxhwwwxxwxvwxxwgxwwwwwwxvxgwgwxxwwxxwwvwxxgwxxwxwxxxxwxxWugvwxxfxxxwwxwwxhxwwxxxwxxvWgwXwwxwxwxxwxxwwvxxwwwvvxxwxwwxxxwxxywxxxxwxxxxxwxxxxxxxxxwwuwwwwwwwgvwggvwwvwwwwwwwwvwwgvgwxwwwwfwggwwxwwwxxwxfwggGwvvgwwwwwwgwvwvwvxwvwgwvgxwxwxwwwwxxwwxwwwfvwfugfgfwvwvwggwVvvwwxwgfvfvwugwvvvvggwvxwxvxxvwffvvgvwvwwhgwvvgwwvwwxxwxwvvvwxwvwwwvwggxwwfwgghwfggwwwwwGfgfvvvwgfwgwwxxgxvwwvxwwwxxwxgvgwxxwhwwwwwxwwgwvwhgwwxxwxvwwwxwxhwgwxwxgwxxwxxvxxwvhxwwxxwhxxwvvvvvxfewwfwvVfugwwwwgwwgwwwuvvxwwwwvvhgwhwuvwfwwwgwwwvwvwwffxwvxwwwwxxwwvwvwwxwhwwfxwxxgvwxfxwfwwhxvwxwfvwwwwwwwxvwvwwwwfwvxwwxhwvfxvwwwwxxwxfwvwwwxwwgxwwwwxxgwxxxfwxhxwwwxwwxgwxwxhxxvxfwwvvwxwxxgvxwwxwwwXxhwwwwwwxvwwxxxvxwhgwxxxwwxwfwwwgxxwxwwggWgxxhwxwwwwxxxwgxxgwgwwxgwhxwwwxxxwxwwwwwwxwwwxwxghxxwxxwwwxhwwxxxxwwxxxhxhxxhvxxxxxwxxxwxvwvhwxvwxxfxwwwxwwwwwxwxxwwxxwvxwxxwxwxxwxxxvwwxwxxwwwwwwxxwxgwwxxwvwxwxxwxwwwgwwxwwvwwvgwwxwwxxwxxwwwhxwwxwxxxwwxwxxwwwwxxvgwwxxxwxxxvhxxhwwwxwxwwwxxwxwwwvwwwggwxxwwwxxxxxxxwwxxxwwwxxxvxxwwwxgwwxxxxwgwwwwwwwwvxxwgwvwwwwwxwwwwvwwwxgxwwwwxhgxxxxwwwxxvwwwwwwxvwwwhxwgxxxxwxxvxhxxxvxwiywxvwwvgwwggwwxwwgxgwxxxwxxxxxwxxgxwgvgwwxxxgwxwwwwwxxxgwwxxwxwwxwwwxwxwvwwwxxvxxxxwwwxxwwxxxwxwxgxxhxyxxwxwwxwwwxwxxwwyxxwxxxxxxxxxxwwvhxxxxxxxwxxvxxxwxwwwxxgxxwhxhwwxxwwhgxwiyxxxxwxwxgwxwwwwxxxwxgxwwxxxwxxxxxwgwxvwwwwwwwhwwwxwwxwwwwwxggwwxgxwxwxxfvvxgwwvwwwxwwxxwwwxwvwwwxwxxwwxwgvwxwwwxwxwwxwwwgxxxxxwwxwwwxxwwwxwxxwwxhwxwwxvwwwgwvwwvfwvwxxwwwwwwxwxxxfvvgwvwwxwwxwxxwxxxxxxwxwwwwggfwwwwwwxwwxxwxxxwwwxxxxxwxxwxxwxxwwgvffvwwwwwwwxwwxwwwwgwwxwgwwwxxxwwxgxwwxwwxwxxwxxxhhwwwxxxxxwwxwgvwwxxwwwwwxwxxwxwxxwxxxxwwwwxxwxxxxxxwxxxyxxwxwwwgwwxxxxwhwvwxxxgwwwxxxxxxxwwwwwgxwxxwxwxxxxxwxwxwxxxxxwwwxwwxxwxwxxxyxxwxxwxxxxwvwwxwxwxxxxwxwxxxxwxxxxxyuwwwwwwwwwgvwwwwwwvvxxgwwhwwgwvwwwfvwwwvuwhgxuwwwwxwwwwfwwfvwxwxwwwxxwwwwvufwwuvwwwxhwxhhxxWvuwWffggwvwwwgfevwwxwwwxxxfvvwwwwggwwwwvggwwgwxwfufwvwvwvvwwwwxwwwwwwwwvgwwvwgxxxwgwxwwhwwwxwvgfwvwgwvwvWgwwwwwwwgVwwvvgwvwxhxxWgwwgwggxxgxwxwwwwwwxxxxwgxxxwxwwxxxghXwwgwwgwwxwxwxxwxhxhfhxhwfvvwWvvwuvvwuvWfvxgwwuvvxfvwufvfuvwxwvwwwwufwwwfgvwfwwwwvwgwvxwhvfWwwwwwxgwvwwxgwgvxwxgvwgggxwwwvwwgwwwfxxwwwwwwvfwhWgvxxxhfvwwwvgxxxwwwxwwvvgwwvwwxxxwwxxxxxwxwwwxxxxwxxwxxxxxxvvvvvgVwvgwwvwugWgxwwwxxgwvggwxwgwwxxwxxuvwwwwwvxwxxwwwwwxxxxxwxxwwwwwgxwwwxgwwxwgxwwxgxxwwvwxxxxwxwwwxxxxwxwxgwxhxwwwwwWwhwxxxxhwxxxxhxxxxghgxxwwxxxvwwwxwwwxvvvwxwwwwwwwwwwwxwghwxwhwvxgwxWhwhwwwxwwwwwxwxwxwwgwvwxhwvwwwwxwxxwwwwwxxwwwxwwwxwxxxxxxwhwvwwwwwwxxxxxxhxxwwwwxhxhwxxxxhxwxxxwwwwwwwwwwwwwwwwxwxwwwxwwxxwwxwwvgxwwwxxwhxwwwwxxxxxxxwwwwwxwwwxwwwgxgwwwxwxxxwwwwxfwxwwwxxwxxxxxwwwwxxxxwwfwwwwxxgwxwwxxxxwxxxhxhxxxwhxxxxhwxxxhwxxwxgwgfwwwgwwwxwwwxxxghwhwxwwwxwwxxxxxxxxxxwxwwwwxwwwgwxwwwwxxwxxxwxxxxxhxxxwxxxwxxwgwvwwwxwwxxxxxxwxwxwwxwwwxxwxyxxxwyxxwwwwwwxwwxwxxvwxxxxxwgwwwxwwxwwxwxxxwxxwxwwxxwxwxwxwxxxxxxxxxxxxwxwghwwxwxxxxxxwxhxhxxxxxxxxxwxwwwwwwxxxxwxxxxwxxgxwxxxwwuwwvwwwwxwwvxwwwwgxhwwgwwwwvwwwwxgWwwWgwwxgvgguwwgwwwwxwxwVgfwxhwwwwxwxxwwvwwxwggxxxwvfwwWvwwxwvgvwwvwwxwxwvwwwxgwwwwwvwwwwwwwwWxvxwwwxwwxxxwxwwwwwhxuwgwhvvwwwxwwxewwwwwwwwwwxwxfffvgwwvwwwvwwfvfgvgwxwxxggvwwwxwwgwwxwwwwxwxxxyfWWvwvwwwxwxwwxwxxxwffggvvxwxxguvfgvgvxwwxgfvwxwxwwwxxwxwwxwxxVwwwwwwvwwgWwvwxwxxvwwwgxwhwxwwxwwwwwwhwwxwwwxgfvwwwwxxwwwwvwxxwxxgxwwwxwwxxxwwxxxwwgvwwxwwvwwwwxxwxxvwwvvhxxwxwwwxwxwwwvwwxwwwxxwxgxxxxwxxxxgwwwwwxxgxwxxxwxxxxxggxwxxxxxxwwxwxxvwwwxwvgxwwxxxwxwwwwxxxxwxgxxxxxxuwwwvwwwwxwvvgfwWvxgvgwwwhwwwwfvxgwgvwgwWwvvwvgwwgwwgvwwgvffguwfwfwgwwwgwgfvxwhwwgfvwwwwwwwwwwwwwvhxxvvwffvhwgfwfgvwgwwvwvwwwgwvwgwVvwxwwfwwwwvvwgwwxghwwxwfwvvuwwwwxwvvwwvxxwwwwwxgvwgwwwwwwwvwxxggfwxwgvxfgvfxwffgfwgwgVuwxwwxgewvvwgwvgxgggggvvwggwwvwwWwwwwwfwwhwfwwwxwwwhvvxwxwwxxWxxxxwwwwxwvxxxXfwwgwhgwxhhwhwwfgwwvvwVvwxvwwwgvvwfVwfvwwxxgxwgwwwgwwvwwvwwwwggvwfwwwwgwwhvwwwwvgvwwwwxwwwwwwwvhwxxwxwwwwxghvwwwxxxwwwgwwwwgwvxwwwwwvwwwwwwwwwwwfwuwwxxwxwwvwgwwwhhwgvwfvuvwwxwwvvgwwhxxwvwwxxxgxxxwwxxwxhvwwguwgwwwggvvwvuggfwwvgvvwwwxwwwhwwxwwxgwvvvxvvvwwxwhfwxwxvxvwxwxwwxwxvwxxwxwwwwvwgwxwxxwfvwwwggwxxxwwwxwxwwwxxgwwxwgxvwhxxxwwwxwwwxxhxwxwxwwxhhxwxhwxwxwwxxwgwwwwwxxxxxwgwvwwwwgwgwwgxgwwwgxwxgxwwwxwxwxfxvxgwxwxwvwwxgxwvwwxwwwwwwxwwwxxwwwwvwwwgxwvwgwfwgwggfwvhgfvwxxgwxfggwgwwXvwwgVwwvwwxwxxwgwvwvwgvwwewgwgewvwgxvvwwhfwhhgwwwwwxwwwwWwwhvwgxgxwgxxwfgwgwvfvgxWfgwwfwwfvwwggwwwwwwvwwgwwxwxwxvxwxvxgwvfvwvxwwfwxXewwwwfgwwwwwxwwwxwwwwwwwwgwwhewvffvwfvgxhVgwfwwxvvwwwwwgWvwwwwwgwwwxwwxfvgvgwXwwwwxxxwvwwwwwfwxvxwwgwxwwwvhhgwggXVwgxgxwwgxxwwxwxwwXXhggxxhvwWwvvvwxfwwwwxwfvwgwvwwwwwwfwwfwwxwwwfgwwwxxwwwhwwvwxwgwvwwwwxwgvwwwwwwvxWhfgwwwffwwxwxwxwgxxvxgwvvwvwwwvwwwgwwhgwvwwvwwxhwwwwwwwwxxxxxwxxxwwewgwfwvxwxwxxwwhxhxxvxwwwwhxexwxwvwxwvwxxxhwwwfwwxwwwwxxwxwwwwwxxgwwwgvxwwwwhxwewxxxxwxxxwfxwvgvwwxwxvxwfwvhhwwxhwwwhwwxxwxxghwxxxvxfwxwwxxxhxwxvwxhhgwxxxvwxxxxxwxxwgxxxwxvwwgvggwwwvwxwxwgxhgxxxxwwvwwxxwwwxxwxxwxwvxxxxxxxwgxwxvxwwfgwxxwxgwvwwuwgxfwwwhgwgwxgwhwwgvgwwfwwvwwgwvxwxwffwwwxwxwxwgWxwwvXwwwXwwfwwwwwhxxwwwvwwxxxxxwwxxxxxwfvvwwxgvggxvVvwwxgxwxgffWwvwfvvwwwxfwvwvhwgwfwwwxgwwgvwvvwvuwvwvxwwwwgwwxxwgwwgwxwwwvgWxWwguWwwwwwwwggfwwwvvxxxggwgvwgfvwwwwxwvwxwxxxwwxwwgwwwfgwxwxxwwgwwxxxxxxxvwwxhxwgwxwwxxwwxwwwxxwxhxwxgfvfeugvxvgvwwuxwwwwwxwxxvxfegwxvwwwhgwxxwvgvxwxxxgevwvwvwxgwvwwwwwhwwwwxxxwvwxwwxvxxxxwxfxwwxvwwxwfxfxxxwvwxwggwvxxwwwwgwvxwwwxwvvxxwwwwwwwxxxwwvwvxxwxxwxxxxxxwwwxvxyxgwvvwwwwwwxwwwxwwxwfvvvwxWwxwxxxwxgwfwwwwgwwgxvxhVxxxxxxxxwxwwxwgwwwwwwwwxwxwvwxvxwxxgwwxxxxxyxxxxxxxxwwxwwxxxwwwxwxfgwwwwvwwxwwwxxxxxxwwwwxwwxhwwxwxxxxxwwwxwwewwvgwwwwWwgwwwwgvxwwvgwwvwwxgvgwwffwxwvvwgxwwwxhwxwwwgwvgwvwwwwwwwwxwvwwxwhuwfgwvxxwwhvwwxwxwwwxxwwwwgwwvxwgwwwvuvhwwfvwwwxhwgvwfwwwwwwwwxwvwgwvwwxxxgwfwvwvwfwwvwwxxwwwwxgfxwvwwwwwwwwvwfVvgwguwwfwgwggvwwgwfwwxgwxffevvwwwwwwgvWvwwxwxwwwghwwxuwfwwwwhxwwwxwxwxxwxxxwwwhxWxwxwhhwwwwhxxwxWfhwfwwVwwgwwwwwwvwwWgvgwwgwwwwevfwuwxwfwgwwgvwwwwwfgvwxwwgwvwwwwxxwwwwxxvwxwxwvxwwwggfwvwwxxxwwwwwwwvwwwwwgvwxVgvvxgxwwwxgwwxxwwxxxwyxxguxvwwxVgvwwwwxxxxxwwxwhxxwxxxxxxvxwvwuwfvxxvvwgwwvwwwhwwwwxwvwxxxwwxxxxwxxxfwwwxxxxxwxxwxwxwxwxwxxvwwwwwgwwwxWwfwwwwxwwxgxxwxxhxxxwwxwxxxwxxwxwxwhxxxwxxhxxxxxxxxxvxxwxwxhxxwgwwwvwwwwwxxwwxxxwxxxxwxwwgxwwwwxhwwwxxxwwxxxxxxxxxxxwxwuwgwwwxwwwwggwgwgwwwwwwwwwxwwwwwwgwwwggwgwxwgwwwxgwgWwvwwwWgvggvghgwwxxxwgvwxvWwwghwghwxvhwxxvvwwvgfwxfgfFwwvwxgwxwxwxvwwgwwgxwwxxwwwwxwxxxwwgxgfwvWgvwwwwwxgxvxxvvvxxwwxxwgxwxwwwwwvwfxgwgwwwewxgWvwwwgwgwvxwxgwwwgwFWuvwwwgwwxgWfwXwwwhwgwxxwwwgwgwwxvgwgwgxwwgwhwxhhwwgxhgwggghxwwwwWxhghxxxwwxwwxwvwggwevvxvxgwwgwwgvxgvhwfwwwFVufwxvggwwxvwwwhwhwwwwwwgfvgwhwwwgwwwxfwwhwxwxxxwxvxwxxwwwvxxwwwwwxwwfFwwhwgggwxvfwxxhgxwxxxwwxxxxwwwwwwwxwwxxxwwwwxxvxwxwwhxxxxxxwxxwwwwwxwxxxfvvwwhvwwxwwwxxwwxxwxwxxxwxxwxxwwgwxvxwwwwwxxxxwwhwxxxxwxwwwxxvxwxxxwxwwfwwwwwwwxvghxxwwgwxwxggvgxhwhxxxxxwxwxxxxwxwhwgxgwxwwxxxhxxwwwxwxxxxxwwxxxxxxxxwwwxxxwvwxvwwxxxwwwwwvwxxxxxxxwxwxwwxwwwxwxwwxwxxwxwxxwwxxwwwxxwxuwwewvwwwwghwwwhwfxxwxxwwwfggxxwwxxxwhwwgwxxfwvWvVxwwxwxxwwwhfwWewvwgwxxxwwwxhxxwvvvfvgwxxwwwvxwwwgwwxxwwwWwxxhwvxxxxgwwwvfgwxwwwxghvguwfvgwxyvxwgxuwvWfVgwgvwgwwggxxwwvwwxhwxgggvgvgwwwxwfwvwwwggwxxhxwggfwwxwwwwwwwxhwwxgwgWwgwfgxwxxfggwxwxhwwxxfugVvgvwwxwwgxgwwgwgwvwwxwgfwvwxwxxxwvvwwgwgwxxWgwvggwgwxwhwxwxwxwxxxfwwxwwhxxVgvwggxwwhwfwhgwvwgffwWvwxvxxxwxwxWvWwwxwwxhxwxxwxxxxxxxxxxxxhwgvwxxxwwwwwwxwxyyxgwwwxxxvwxwxwgvwwwwwhhvxxwwxwxxxxxXvVwwgwxwxxxwxxgwxxwvwwvwwwxxwgWvxxwwhxwgxvwwxwxxxxhxwxwwxwxxxvwgwhwwwwwxhwgxxxwgvwwxxwhwgvxxwxxxwwxwxxufggwwwwwxwggwwwxwwwwgwwwvwwwgwwwvwvwwwvgwwgwwxxvxhwwwwvuwwwgwgwgwwxwwwxxxwwvvggwvvgwvwwwwWgwwwxwxxwuwvwvfFwwgwfwgwwwewwwwwwvwwwwwvfwgwxxgwvwwxxxwwwxwwvwwfwwwvxwgwwwwxwwxwVgwvwwwxwwxxxxxfwwwvgvwwwggfvvgggwwwgwFVuvgwwvvvvWwwwwwwwghwwfugwgxWgvwxwxgxgwhxhwwgwwwgwxwwwgwwwxwgxwhwxwwfgwgwgwwxXwwxxwwwwxWxxxxwwwvwfgwvwFVuvvxvgwvwwwwgVwwwxwwgVuwwvwvwvgwxwfwWwggwgxwxwwxgwwvvwgwxwxwvgwwwwhwwwwwvwxwxgwvwwxwvwwxwwxwvwxgwwwwwgxggvwwwfFwwxwwwxxwwwwwwwvxwxxwvxwxxxwxwwgwwvwwgxwxxwxxwxhxxwxwgwxxhxwwwxxxxvxxwwxwwwuwwxfvwwxwgxvxuwwhxwwwwgwxwxxxxwgwwwwwxxwwgvwwxwwwfwxxwwhwvxwhwfhwxxxxwwwxgwwxwwggvwwvwggwwwxxwwwhxwxgwwwxwhwxxxwvwxwxwwxxhxxxwwwwxwwwwxxgxgwxwxxwxxwxghwxwwxwxxwxxwwhwwwwxvhwwxgwxvwxxxgvwwxwxwwwwwhwwwwwgwwvwwxwwxwwwwxwwwwxwxxwwxwvxwgxxvwwwwwwwxwwgvwwwgwwxhwhwwgwgwwxwwWwwxwwfwWwgwxgfxwwhwxvfgwwvwwwhwwwxxhwwwhwxwXwwvxwxevwxfgxxwxwwxwvwwWwgvwwVwewWvwwwwwfvxwwwwwgvVvfxxxwxgvxgwwwxwxgwwgwwwgwvwwwxvvwgxwxvwwggfvwxwxxwxvwxwwwxvwwgwwffwWwgvfvfghgwwwwhwwwvxhwwgwgfwggevwwwwgwvwxwxwxggwfwwgwxxggvgwgxgfxhxwhhxvxxxvvwgwxwhwxghvgxwxxwxhwgwxwhwwggvweevvVfefwgvvfvwxgwggwgvwwwwwfwggvwvwxwxgxgWwewxffxvfwgxxwgwgvxgxwvxwhhfwxwwxwvwwwgwvxxvwwggwfggfwgwVwgwvwwfwwwwVwfxxvxvxvxVwfxxgwwwwwgfwxwwgwwwgwxxxxwvwxxwxwxxxyhxxwwwfvwwxhfwwwwhxwxxwxwwxxxxvxxxxwwewvwxwxxxxxwxxhwwwwwxxwxhgxxgwwwwgwfxgwgwwggwwwwxwwxwwxwxxxhwwwvgwxwwwgxwhwvxxhxivxxwhxwwxwxgfxxwwwxhwxwvwwxwfwevxwwxwwxwxwwwwwxwxwxxxxwwwxwwxxwwxwwxwhxhwwwwwvwxxwwwwxvwwxgwwwwwvxxwxfgwwwwwwxvwvvfwwwwwwvwgxxwxwwvvwwwxvxxxwwwwvgwwxxwxwxvwxwwhxgxwxvfvxwwwxwwwvvvgwwvwxwwvwwxxwwwwwxwwxwxwwxxwvwxhgwwxwwwwxwwxvxxvwvxxffwwfwwxwwfwwvvfgwwwxwgffvwfwwvxwwxgwwwhfwwxxvffggwwxxwwhwwxwwxxxfvgwwvgghxxwwxfxxhxvxxxvfgwvwwvwwxwwwvvwvggxxvwgwwwvwwxxxxwwhwwvxxwxvwvwgwggghvwwghwvxwwvwxvwxwxwxxwxxxwvvxwwwxgwwxwwxwxxxxwwwwvxxxxxwxxwwwxwvwxwxwwwwwwxwxwxxvxxwwxwwxwwwxwwwvxwwwxwwwxgyxxxwxwxwxxxhvwxwwwwwxwgxxxwxwwxwgwgwxxxxxwwxwxwwxxwwwxwxxxxgwxwgwxwwxxwxgvwwxxvwgwfwvwwwgevwhgwgvvvVfgwfvvwwwwfewhwgvwwgfvwvwwwfvxwwwgwxvWtgwgvgvgfvwvwwwxwwgwwxwwWgvvwufgwfwwwfvwwwwvgwwwwwwgvVvwwwgwgwfwvwvwgwwwwwwwwvvwuvxvwwevwgwwvwwwwwwwvvwwgwwxvwgvgfwwwwuvfwwwwwwvwwwwvwwwweVwguvvffvwWtggwvfvffwwvwGwvuevgwvvwwwwvwevwwgwgWwwxwxwxhwvwxwxhwvwhvxwGwwwwwgwwghXvvwgwgvfWwvxwwgggwvxwwGewwhwXvxgwgfvvgxvxwwvvwwwwvfwvwwwvwfvwvvvwwffwwwwvwwvvwwwwwxwggwwwwwwwwgwxxwwvwwxwwghWuxwxwwwvwwwxggwwhvwwwxwgvfxxvwgwwwvwxvwxwxwfvvxwxxfwvwwwxuxwxwwwwwwwwgfwwvvwwgXxxwfwvwxhvxxxxxxxgwwwvwwwxwvgxwwvwxxwgwwwwgwxxgwvwwxwxwwwxvvwwwwhwwxwwxxvxxwxwxvwwvwwwvwWwwwwwwwxwwwgxwWgwxfwwvxxxxxwgwgwwwwxwhgwxwgxxxxwwggxhvhxxwwhwwxwWwhhxwvwwwVvwxwgwxwxwwwxwgwwwwwwxxxxxxxxgwwwwwxwxwxwxxxwwwxwhwwwwxgwxvwwwwwwwwgfVwxwwwwgwgvfgwwwwwwxgfWxxvgfgwwwgwvwwxwwgghfgWvgwwvxwwgxxgwwwwxhxgfggvwxvvwwwggxwxhwwwxxwwwgefgvvvwgvVvgwgfevugwwvvwxxfvugwxFfuhgwvwwxwxwwgfgvewwevvwvwwwgvfwwwwwwwwwxfVfvxewhwuwvvwwvxwxVwxxwwgwhgfgvWvgewvVfvwgwgvwvwxggWfVvgvfwvvvxwxxWewWhwhgwwxwhfvwwgwwwxxvwfwxwhxxwwhxwgwxwwwfgwxwwwxwwhgvXwgWghvwwwwxwwgfevfuwgwvxvwwVTvggfWVvuvuggvdUVdWfwugvxwxvgwwwwwhxwuvuwvwwxvwvwwwwwwvehgggghUgxugwUwwugwwgwwvwggwwxgwvvexwwvgxxxfwugwgwwgwwwgxxwwwxfwuhewvxwxxxxxxgggwgvxvwxwxwgwwxwxwxwwewvxwxwwxwxxxxwwwwvvwwxxwuwwwvgwwxvvxxwxxwwwwwwhxhxwxwxfxwwxxxxxxwwwvhwwwggxxxxxwxxhfwwwvxwxvxxwgvxwwwwwxvxwwwwvxwxxxxxwvwxxwxxvgwgxxxwxxwxhwwghxwxvwxxxwwxwgxxxwgxxuhwvwwvvvvxwwwwxwwwxwwwwwxxxwwhvwxfwxwwwwxwwwwxwxwwvwwhxwfvuwxxvwwxvwgxgvwwxwxwwgwwggwvwwwffvwggwwwxfwwxgwwwxhvxgwvgwwwwwwwhxWguxxwvfvxgwvwxxwwwvwxwwwwwxxvgwvgwwgxvwxvvwwwgwvwgxwvwxwgVvwwwxwwwwwwxwxwwhwwvwfwwwwwVgwvwvxwwwwwwwwfwwxxgvwwgwfwwwwFVtuwwwfwwwfvvwgwwwwfvffevwvxgxwwgwwggvxwhxxwxxwgwfwgggvvwwwwxwhwwxWwxxwfvgwxwwwxxwwwxwxgxxxwwgwFVtuvwgxwfvfwgfwwwghxwwgwvwwwwwwwgxwgxwxwwvwwxwhwfwvwwgwxwwxxwwwwwwwwwwxxvwhwvwvwxwxxwwwxwggvxgVwvxwwwwwwxxxxwxwwwwwwxwxxxwwvxxxwxgwwyxwwxxxxwxxhxxhxwxxxxxxwwwwwwwwwwxwwwxgwxvgwwwxgxvgxwxwgwwwxxvwwwwwwwwxxwxhwvxxxxwwxxxwwvwVffvwwwxxxxwwwxhvxwxwxxwwwxxxxxxwxwwgvxwwwwxwwxxwwxxxwxxwxxxxwxwwwxxxgxwxwxwwwxhwxxxwvwxvwwwwwxxwxxxwxwwwwxwxxxxwxgxxxwwxwwxxwwwxwwwxwwwwwxwwwxxxxwwwxxwxxxwwwxxwxwxxxwgwwxwxxfwwxxwxxwwxwvfwwfwwwwwwgwvwwwwgxwvwwfwxvxwvxxxwwwwwwvgwwxwwwwxxxwvwvwwwvxwwwxxwxxwxwxwwwwwwwwwwxwwwwxwwwwxwxwwwxwxwwwwxwxwxwwxwxxwwwxwwwxxxwxxyxwwgwxxwxxxwwwwxxwxxwwvfwwwwwwwwwgvwgxwwwxxwxwwvwwwwxxwwwwwwwxxwfwwxxxxxwxxxwwwxwwwxwvwwgwxxwxvwxxxxwwwxwwxxwwxwwxxfwxwxxxwxxxxwvvwwwxxwxvwvwxxwxxwxxxwwwwwxwxwxwxwgxxxwxwxxxxgxwwxwxwxxxwwwxxxwxwxgxxyxxwxxxxxxxwxxxwvxwxxwxxwwxwwxxxwxwxwwwwxvxWwxgwwhwgxfxxwfgxvfxwwgwwxwwxfvgwxwxwgggxvwwwvhwhxwxwfwfgwwwxxfgwwxfxxwxxhxxwwwwwxwwwwwxgxgwhxxvwhxwwgxgwxwwxvwxgfwwwwxwxxwxwxxwwwwxxwxxgvxwwwwxwwwxggggxgxxgWwwxgwxwxwwwwfxwwxwwwxxxxxwwxgUwhfUwvwhWfgwvwfwwxfgggwhffwvhvfwwwgxfvvxwwWgwxgwggwhgUfwwxUwwwghhfwwxwxwhhxgwxxwfffgxXwwxwhhwxXxgwxxxxxhwxxgxwgwvVwwgwfwfwggvwXgwwwwwwghwvvgwwwgwxhwwgwwwvwwXwxxhwfwwwgwxwwwwgwgwxxxxxwghwvgxvwxWwwwwwgxwxgwwhwfxfxxxgwxwxxwxxwwwhxwwxwwxxxwWwxxxxxwxhxygwxwwxxwxxxxxxwhxwxvgwwwxwfwwwwxxxwgwxwwxxxxxxxxwxxgwxxxxxxxwhxxxxxxwxwwyxwxwwwxvwwwxxhwwxwghwxhwwwxwxxhwxxxxxxxxxxxWgvwxvwxwwxxwxxxwxxxxxxxwxwxhxxxxxwxwxwxwwwxxwxxwxxwxxgwxxxwhxxxwwxxxxwwuwvwfvxwwwwvvwwwwvwwwwwwwwwfwwwwwwwwxwwwgwwwwwwxwwwwwwwxwwvvfwfvfwwwwwwwwxxxxxwwvwxwxxwxxwwwfwvwwxxwwxxwwwwwxxxxxfvvwgwwgvwwwxwgwxxwwwwwwxwwgvwxxwxwwwwwxxxxwwhhwxxwwwxwwxxxxwxwwwwxxfvfvwvxwvwxwwfwvwwvwxwwwxxxxgxwvwvxwwwwwwxxxhwwxxxxwfwvvvvfwwvwwxgwwxvwxxwwwgxwwwxwwwvvvwwwwwwwwxxxxxxvffgxwwghwxxxwxxxhxxxxxfwxwwxxwxgxxxwwgvxxwxwxxwwwwxxgwxxxxvvfvwwwwxwwvvvwwwxwvgwwwwvwwxwxvwwwwwwwwwwxxxxxhxxxwwxxwwxhwwwwwwwxwwwxwwwxxwxxwwxwwxxtgvwvwvwffvvvwfwwwwwvvwwgwwvvuwvvvwwvwwfufwwwvxwwwvwwwgwwvuvwwwwwwwgvwwwwvxwgwwwvwwwwxxgwvvvvwgwvvwvgwfwwwxwvwwvwgvvvvwxxwwvwvwwwwhwxxxxxwxxwwxxxxxxxxfVfgwggeffgvwwfvwwgwwvwfwvgwvgwwwwwwwwvwvwgwvwvwvvgwwwwwwxwwwxwwwwwgwwxxxwxxwxwwwwxwvxvwxhwxwwxxwxwwvvvvvwfwwwwfvwwgfxwwwwwxwwwxwwwgwwwwxxxwwxxvwwxwwwwxxxwxxwvwwwwwxxwwxwefvvfxwvvfwvwwggwwwXwwwhwwwwxxgfffxwwxwxwwhwwwwxgvwxwwwgxwxwwwwxxwwxxxwwxxwxwwwwwwfuwvwgWffwxwgvwwwgggwwWhgwwgwwxwxxwwxwxwwvwwwwguwxwvxxxwwxwxwxxxgwwxwxxwwwvgwwwwwwgvvwwwwgvuwwWwwvwwggvxxwxwwxwwwxwxwwxwwxwwwxxwwwwwwxwwxwwxwwwwgwwxxxwvxxxvxvwxwwgwwwwwxxxwwwggvxwxvwwxxxhxwgxxxwwxvwxwvxwvxwxhxwxxwwwxwxtwxwwwwwwwwWvvwwwwWeVWwgwwvgwwwWwwxwwwwvWwgwwvgwwxwwwxwwwvwwwwxhxwxxwwwhhwxwwwwvvxxwwwhhwxwwwGvfwwwwwxXwfwwvgvwxwxxXwwwwwwxxhxxwwwwwwxxxwwwwggwwgWvvgwxwgwwwgwxwfwwfwwgwwvgwxwwxvxwwwwgvxxwxxwwwwxxwwxgwwxxwxxxgwxwxxwhwwgwxxhwhwwxxWwwvgwxvwxuxwxwwwxwwxwwxwwgwwwwwhxxxwhxwxxhwyxxwwxxwxxwwxxwvxwwwWwvwwwwwvwHvfwvgvwxwwxxwxxwwwxwxxXwwxwwvwxwxxhwxwvwxxxxXeVvwwwwwwvwwwxwhvxwxxwwxxwwwwxxxwxwxgwxxxxWgwvgwxwwvwwwwxxwuwwgwwwxvwxhwwxxwxwwwwhwwxwwwghwxwwxxwxxwxxwwxgxxwvwwwxxxwxxxwwwwwxxxxxxwwwwwxwxxxwxxxhgefvgvwvwevwwvwwgvwwwwwwffvwggwfvwwuwwvwvwvwggwwgwwexwwvwwvfwwwvvwwwwwxwwxwwwvwuvwwwwwwxwwxwffwxvfwwVfwgvgwvwwvwwwgwwuwwwvfwgwwxgfwwxwxxwwwwwvuvxwxwwwwwxxvwgwwwgvxwxeevfvffvfewuwvwwfVfvwvvvgufffwwvvffevvwwvwgvwwwwvvfwwvgvgwfwwgwwwwvwgwwgwxwwggwwhwwwvwwwxwwxwwwwxwwwwwgwxffvvfwwwgWvwwwwvvwwwwwwwhwfxgwwwvwvxxwxwwwgvvwwwwwwwwwvwvwwwwwwwwwgxvwxwwwwxxxwxvvwwvuwvwvvwwwvxwwxwfvgwwwfxwggwwwwxwhwwxvvxxxxgxwxwxxwwwvvwwgwxwwxvxxxwwwxwxxwwvvwwvwhhvwxwwgexxwxxwwhxgwggwwwwgvxxxwwwwwwxxxwxwwxgxwxxwxxwxxwxwwwvwufvvwwvwvwvevgxwwvwwxwxwwvfwwwwwwwwwwvwxwgwwwxwwwwgwxgvwxgwwwwwhwgwxwwxvwgxwwwxhxxwvwhwvwwwwwwxvwwwwwxwxgwwwwxwwxxxxwwxgwwwwxwxxxwxwxwwvwwxwxwwtwwwvxwvvvvvwwwftvwgwwwwwwwwwfwwvxvwwvgvwvwvwwwvvxewwwwxvwwwwwwwwwwwwvvxwvxwwxwwwwwwgfxwxwwuwxwvfgwwwwhwwfwwxwxwfwwwwxwwwvwwxwxxwwwwwxxvxwwwwwwwxxwvfwwwvwgVuwfggegwgvvvgffwwvugwwfdfwfwwvhvwwvwwwvwwgvwwwvwwwvwwwwwwwvwxwwwwwwwvxwxgwwwwwwwwwwwxhwwxvvwvwvvffwwwwwfwwwwvvvwwwuwwgxhxwwwwwwgxwwwxwwwwwxwwxxxxwwxwwxxwwwwwwwwwwgwvwvwvwwvdfgwwwwxwwvvxxvwvwvwxxvxwwxgwwwwgwwvxwwwxxwxxwxwwxwwxgvvwxwuwxvwwhwxxxgxwwxgwxxhwxxwxwwwxxxxxxwwxxwfwFwvgguwwfwvwvwvwwexwwwwwwxgvvwwhwwwwwwxwxwxwwxvxwwwwxwxxxhwxxxwwwwwwxxwxxwxwvwhwwwxwwwwwxxxwxxwxwxxxxxwxxxxwwxxwxwwwwwefggvwwgvwvvvvVevgwffwfvwwwwgwwfwfwwwwvvvwgxwwxffvgvwwgvwwfvffvfvwwwfvgvwgwwwfvfwwvwvwwwwwgxwxxxwwWvvvgvgwgvvwwwgvgwWwvwvwwxwwwwvwwwvwwxwghwxwxwwgvfwwwwwwwwgxxwwxxxwwwwxwwxxwwwwxwgwxhwwwffvgvwwfvvwgvwwfvgvgvwwwfgwfwwwvwfvgvwwwwwwwwwgwwfvwwvwwwwwwwwwxwxwwxwxxxwwvwwwwwwwwwwwgwwxxxwxwxxfvwwwwvwwwwggwvxwgwwfvvxwfwwwxwwwgwwvwvwwxwwxwwwwwxwwxxwvwxxwhxvxwxwwwfwvwvwwxhwxwvfugwwvgvgwwwwgvgwwgWwghxwwfvwwxvwwxgwwwwxxxwxwxwgvfwwxwxwwxwgwxxxwwgvwxwxwwwwxxwwxwxwxxwxwwhffvwvwwwwwgVgVwhxxwxxwwwwwxwxwxxxxwxwwhhfhvvwxwxxxxwvhxwxwxxwvvxxwfwhwxxfxgwwvwgvwxwwxxwwwvggxvwwgwgxxwwwwvxxxwgwwvggfwwghxhwgwwwwxxxwwvxvvwgwhwwgxwxwxxvwwhwxwwwgvxwxwxwxwwxwxwxxwwxxwxxwxwwwwwxwxhwgvxwwxhwxwwxxxwwwwwxwxwwxxhwwwxwgxewuwfwfxfwfvWvwwwwwfwvgwwvvwgvUwwwwhwvwvwwwgvwwwwxwwwwwvfgwvwvxxwwfwvwxwwvwxwxwwwxwxwgwffvvfvwxwwwwvvwwwwvgwwwgfUfwwgwwxwwxwwvwwxxxwwwwwwwwwxwxgwvwxwxwwxwxwwwxwxfvvwfgfwuegvvwwvVfwwwwwfufwwwxgffvfvVvwwwwwxfvwwwwWwwgwwwwwxxwgwwxwgvxwwwxwwwwxxgwwwxghwwwwwwxwwxwwxxwwfvvvwwgwwwwvwwgvwvgvwvgwwfvwfffxxwvhwwwwwvxwwgvxvxgwwwwwwwwwxwwhwvwwxwxwwxvwxwvvwfffwvwwuwwwvvwWwwwwwggvwwwwwxxwwwxwwwxxxwxwwvwwgwwwwwwwwwwwxxwxxxwwfwgWvwxxwwwxwhwwfwxwwgvwvxwxxwwxxxwwwxwxxwxxxwxxxxfvvevvgwuwvvxwxfvvgwwwgwxwwwwwwxvwwxxxwwwgxwwwxxxxwwvgwwwhxxwxwvwyxwxwhxwxwwxgxwwwxxwgwxwxwxwwwvxxwwwwwxwxwxhwxxxwxwxxwwxxwxxwxwwxxxsvwvwwwgwvwvwxwfwgwwxwwvwgwgfexwwfvwwwxwwxwxffwgvwvgwwxvwwwwwwfwxxvwwwwxwvvwwwwXuUvwwwvvwwvfhwhguwwwgwwxxwxwxxxgwgvvwwwwwwxwwwwwxwwwwwwgwwxvwvwwvgvvwwwwxwFfwwwxfvwwwwvwgwwwwwxwgvvwwwxgxwwwxwwwwwwwxxgwwwwwxwwwwwwvwxwwwwxxvwfwgvvfhwfvwwwwwwvwhxwxwxwwwxxwvwvggwvxxwwxwwwwwxwwwxxwxxvxwwwxxwxwvgxfwwwwvwwwhguwwvwgwwxwXuUwwvwwwwvgghwwwwxgwfwwwwwwwwwwwwwwvwvwwwxxwgfewwgwwwwxwwwxxwwwvwxfwwxwxxxxwxwxwwxxwwwvwxxxwvwxwhwwxxfxfvwvwxxwgvvwwwwwwvgwvggghwwxwxwhwxvgxwxxxxwwxwwwwwgwxgwvxfwwwwxxwxxwxwxwwwxxwxwxwwxwxgxwwxwxxwxfxxwvxxxvwxwxxwxxxwwxUwwwVvwwgfvuwvgwwwwvwVwWgwwwfwwwwwwwwvxwwvvwgwwwvwwwxwwxwxvfvwwwgwvxhwgxhwgwwvxwwwwwwxxwxxwxxxwxxxwgwxwxgxgxwwwwxvwwwwwvWWvvwxwvwvwvwwwxxxvwwxgwwxxwwwwvwwwwwwghwxxxxwxxwwwxwxxxxxxwxxwxVvvwvwwvfggvwwgFfvwWwwWfugvwwvfwfwgguxvVvgwwgwgvgwvwwwwgfXwwfvwxgxwWwwwwxvwvxxhwgxgxxwwwvgwwwxwwwwxghxxxvxxwwwwwgwwgwgvxvwwxwwwevgxVwwwwwxwwwwvuvvxhwwxwxwwxwxwwwgwxwwwwwxwxwxxxxxfwwwwwxwwxwuwwxwwwgvxwvwvxxwxxwwwxwwgwwwuwwwwfgwvWfvgwgwuwwxwwwwwwfxgvwwwwxggwxxxfgwvxwwxgxxwxxwwwwwwwwwxxxxwwwxwwwgwhvvvwwgwwwwxxwwhwxvwwgwxxwwwwxvwxwvxwwwgwxxxwwwxxwxxwwvgwwwwwwgvvXxwxWguwvwwvvxwhwwwxwwxxxxwxwgwvxwxwxwgvgwwwwxwwwwuwxwwxwwwxwxhxxgxxwhwxwgvxwxgxxwxwgxwvwwwwwxxxwwwhwggxwxxwwwwvwxxxxwwhwvxxxxxwxxwwxxwwxgvwwwgggwvwvwxxgwxwfgwWVeuwwwwgwxwwwxxxgvwwxwwwxwwwwwxwxwxwwxwxwwggwwhgvwwxwxxXffuwwwfwwwwwwxxgwwwwxwwwxxwxxxxvwvwxVewwwxwvwxwwwxwxxwwxfwwxxwxwxwwwwwxxxxwwxxwwxwwxxwwwwxyxgwxwvwwxxxwwxwwxxwwwwxwxxxxxxxxwxxwwxxwhwwwwxxxxxwxwwfwwXffuwxwwwxxwwhgvwwwvvwxxxxxgwxwwxwwwxwxxxxwWVeuwfwwwxxxxxxxwvvwxxwwxxxxxxwwwxxxxxwwwxxwwxgwxfwwxwwwxxwwxwxxxwwxxxxxxwxwwxxxxwwwwwwxxwxxwxwwxxhwwwwwwwwxwxxxwwxwxxwyxxwxwxxwegwwwvwwWuvvwvgfWwvwvvwwwvgwvvwvffwwgwfwxwwvwwwwxvhvvgwwwvwxwxwxwgwxwwwwwxwxxxxxgfuxvvgwvwvgwvwxwwxwwvwvxwwwwwxwwwwwvwwwxwwwxxwgwwxxxxvvggXVegfwvwvvwwwfvwgggwvwwwxwfwwfvwvgfgvguvwwgwwwgwgwwgwgwgvwwxggwwxxwxwhhxxwwwwhgwxxxxxxxwwwgvvwvfwwwgwxwwxwwwxwwwwvwwvxxxwwxxxwxxwwwwxxxxxxvvwwvwvwveVgwwwfwwwwwwwgwwxwxhwxwxvgwwwxwwxwgwxwxxxwvgwwwwvvwxxwxxwwgwwxxwxxxxxgwvvwgwxwwxvwwwVwvvwvwwvwwwWwwvwvwwxWwvxwwxxvwwxhxwwwwxxgxwwwwhwxxgxgxgvwwxwxxwxwwxxxxvvwxwwvwxwwxwwwwxxwxxwvxxgxxxxxwxxwxugfgvgwgvvwuwwfvwwwwwwfwvwwVwwgwwgwfwvfwgffwwwwfwfWwxwgwwxwvfwwwuwfwwwwwxxwgwwfwvwxwxwwxwxwxwxwVwvxfwvwwgwwwwxggfvwgwxxwggwwwwwwxxvwwwggwwxxwxwwgwwgvwxwwwwwxxxxxxxwhwwxwwxwwxVfegfffwffffvuwfVfvfwgwfggwwwvgVgWvgwwwggwwvwwwVfgvfwwvfgwgwwwgwxvwwwvwwwwwxwwxwwfwxwxxxxwvwxwhwxwxwwwwxxwxxwhxwwhxxWwgwfvvwgvgwwVgvghwwwwwwggwgwvxwwwwwwwxwvwxxxwwwwwwxwxxgvwxwwxxwxwwxhwgxxxwvwxvwwwxxhxxwxxxxxgvgfgguwwfwwvfgwwwxgwwfgxwwwVfvwhgxwgwwwwxxxxwwwwewgwgwwwwwxxwxxxxxwwwwgxxgwvwvwwwxwvwvwfwgWvxwxhvwxhfxxxwwwxxxxxxwwwwxwxwwxvwxxxxxxwxwwxxwxxxwxwwxxfgfvwvvwwwwxvwvfwwwwxwwwxxxfvwwvvwWwwwxxwxwxwwghgwgwwwwwwvwwwfwwxwwwxwxxhghxxwwwwwwxwxxxwwxwxwwxgwwwwxwwwwwwwvxhxwwwwxwwxgwwxxxxxgxwxwxxxwwwwwxwxxxxwxywwwxwuvvvwwwwvwfwwwwwwwwgvwwfuwwwgwwwwwwwvgwwwxxvwwxwwwxwxwwwvwwwwxxwwxxxwxhgvvwfwwvgwxwwwwxwwwvgvgwggwwxwxwhxwxwwwwwwwwxxxxxwxwxwwwvwwuwgvgwwwvwwfwwfvwfeuvwvwwwgVvwvvvwfvwhwxwwwwvvwgwwwwwwxwwwwwwgwxgwgwxxwwvhwxwgwvxwxwwxxxxxxwvwwvgxxwwxxgwwwwvwwxwwxwvvvgvwxwxxxgwwufxwwxgxxxxwxwgxwxwwwwxxxwwwwwwwwvwxwgvwwwgwwwweuggwwwwwwxxxxxwwwwwwwwwvwxwxwwxwgwvwxxwwwwxxwxvwwwvhxxwwxxxxxxxxyxxxwwxxwwxwwwwgvwwVuwwwwxxwgwgwvwxvvxxxxxxhwxwwxhxwwwwxxxxhwwxxxxxwwxwwwwxxwwwvwxwwvxxxxwwwxwxxxxxxxwxhwxxxwwwxwxxxxuwwuguvwwvvwwwwwvwwwwgwgwvwxfguwvwvwvwgwfuwwvwwwwvwvwxwwvgfwwxvwgxgxwwwvvwwwxwwxvxwwwwwvwwuwwwwwwwfVvwwvwwwxwvvfvwhgwgwgWwwwxfwxxwvvwwxwwxwwwxwwwwwxxwwxxwfuvwvwwvvvvuvggFfvwwwWgvwvvwwwvfggwvwfgvWwvwweewgfwwwfvWvwgvvwwwwWwwwgxgwhxwxwwwxwvwwwwwgvxwwgwwwwwwwvgwwwwwwwwwxuuwgfwwwvwxwxwfVwwxwwgwxxwgwwwvfwwxxwwwxwxwxvxvwwuwwxvxwxwwxwgxwvvwvwvvwvwwwvwwwwwwwwwwwwwwvwvugWwxwwxwvwwwwgwxwwwwwwwwwxwxxwwwwgxwgvwvxxwwhgwwfvwwxxwxwwxxwxxxxxwxxwwxwwvwwwwxxwwxxwwwfvwgVwfwhgvvfwwwwwwwwwwwwwwwxwwxwwwwwwwvwvwxwwwwwwwhwwxwwwxwwxxxvgvxgwgwxwwwwuxwwxwgvwgwvxxwwgvwxwhwfwxxwwwwwwwxwxxxwwwxfxwxwwwhwwvwxxwwgvxwwvwwwwxgwgvvwvxwxwwgwwgwxvfvvwwvgvvwvggvgvxgwxvfvvwwwwwwxxwvwwvvwxwwwwxwwwwfwwwwwxwxxxwxxwwwxwwwhwgwgwwvwwxwgwwvwgwwwwwwwgwwxxwgwwwxxwwxwwxwwxwxwwwxwxwwwwwwwxxwwwwxxwwwwvwwwhwwgvwxwWwvgvggfxxwgwwwgwgvwgvwwvwwwhvgwgwwwwxgvwxwxwhhxwwvgwxxwxxwvwxxwwvgxvwxxvxwwxxvwxwwvxggxwvwxwvwwwxwwgwwxvfwwwxvwgwwwxwwxwwxwwwwxwwxxwxwwgwxxxwxwvwwxwxwgxxwwwxwwwvxwwwwwwwwvwwwxwgwwwwwxwwhxxwxxwwwwwgxxxwwhwxgwwwwwxwxwxxxxxxwwwwvxwwwxwwxxxxwxwwwwwxfvxwxwxxwxwwwfvxwxwxxwwxxxxxxvwvwwxxxxxxwxwxxxxxwwxxwxwwvwwgghxwwwwwxwwgwwwwwwwwvhxxvxwgwwwwwwwwgwxwwwwxxwxwxwwxxwwwxwwvxwvxwhxxwvxxwvwwwwwwwxxwxwwxxwxxxxwwvxwxxwwxxwxxwwhxwwwwwwxwxwxxwwxhwxwwxwwwxxwhwhxxtgvwvwvwvwfwwvwwwwwvwgvwwvfvfgvvvwggegwwwwgwwewvwwwwhwwwewwwvwvwgvvwwxwxvwwwwwwwwwvwxvwxfvegvwwwwwwwfwvwwxxwxwVvffwwxffgfwwuxwgwwwxxhwwwvxgwxxxwxwwxwxwxwxwwwgxvvxxwwxxwxwwxffvVgfwvgwwwwwxwgfwwwwgvvwwfwvwuffgwwwwwvwvwvwvvvhwwwwwvwwwgwwwwxxwwwxwvwxwwxwxwwwwwwhvwwgxwhwwwxxwxwvgwwwwwwwwxwwevwwwWwwwwxwwxfvwwwwwwwwxvwwgfvwxxwxwwwwwwwwxxxwwwgwxxwfwwxwwxxgwwxwxhwwxwxwwxvvgwvwgvwwwvgwvhxxgwvgwvvwggvwwwxvwxwwggfwwxxxxxwwwwxwvxwxxwxxxwwggevwwvwxvgvwwwvwhwwxwxwvfgVwxwwwxxwwwvxhxVwxxwwwvwwwwxxwxwxwgxxguxxgwxwwwwxwwwwwffwvwwgvvxwfvwgwwwwwvwvxwxwwwwxxxwwwwxxxwxwwxxvwwwxwxwxwwwxwwwxxwwwvwxwwwgxxwwwwvvgvvwxwwxwxwxxhwxxwwvwwwxwwxxwxwwfwxwwxwxwwwvvwvwfwxvggwwwwvggwwxwvvfwvvgwwwvfwwwxwwwwvwwxgxxwxwxwwxwwwxwwhwwwwwxwwxwwfwwwwgwvwwwvwxwwwxxwgvwwwwvwggwwwwwgwxwwxxwxwxwxxxwvxxxxxvwxwwwvgggwxwfgwwwwwfwwxwwgvfwwvxgvwwwwvgwvwwvwgwvfvvxxxhwxwxwwxxxxxxvwwxwxwwwwwxwvwxwwwxvvxwxxvwwwwwwxwvwxwxwwhxxwwwvwwhxwvxwxwwxxwhwwxxxgwhxxxxwxxgwvwwvwgvwwwwgwwwwxwwvwwwgwgwgvvwwwxwwxxwxwxwxwxxxwwvxwxwwwwwxgwvwxwwxwxhwwvwvxxxvxxvwxwwwwwvxfwxwwwgwwwwwwxwgwwwgwgxxxwhxxwwwwwwxhwxxwwwwhxxxwxxwxxxxwwxxwwxxxxwwwwwwxwxxxxxxwxwxxxxxxyxxxxwxxxggWvwfwwvgWvWfvugvwwgwwwvwvwwxvwvfvwwvwggwwvwvwwwxxxgxwvwvwgvhxwgxxwugwwwwvxxwxxxgxxxxwgxWwgxxwvXwwwwwwxwxgxwwwwwwxxwwxwgxvwwhwwwwhwxxxwwwwxgxxwwwwgwfwwwwvwgevwvgwwwghwgevwgvxwwfwwwwwwvvwvxwwwvwxvwxgwwwwxxxwwwwgwwwxxwwxwxxxwwwxwxwwxxxgwwwxxxxhxxgwwgwvwwwwvwggwwwxwwwvxxxxxvwhwwfwxxxwxwwxxxxwxxxhwxxxxxwwxgwwwxxwwwxggwfwwwwwwxvhwwvxwwxwggwvxwwwxwwxwvvwxxgwxxwvxgvwxxwwxwgxxwvvwvwxxwwxwvgvxxwwwwxwxwvwxxxxwwxxxwxwxxxwwxxwxwwvvwwfvwwgwwwwgwwwwghxgwwwxxwxxxhxxxwxwhwwxxwxxxxxwxxxxwwxvwwxwwxwwxxxwwxwxxxxxgwxxwxxxwxxxxxxwwxxxxxxxxxxuwwevevgwfwvwwwwwwvwwwgwvwvwvwxvwvwwvwvwwwwwwwwwvwwvwvxwwwwwwvvwwwxwxgwuwgvgvwxxwxwwwwgwgwuwwwvwxwwwxwxxxxxgwwxwxhgwwwwxwxwxwxwwvgvgvwvwgvwwvvwwwgxvwvwvwwwwvwvwwgvgwvwwwwwxwwvwgwgwvwwwgwwwwvxxwxxxwwwxwvxxwxxxwwxwxwxwwwvvwwwwwwgxxvwxxvwwwwwxgwxwwgwwwxxgwwwwwgwxwxwwwxxxxxxwwwxxwxxwxwwwuvwwgvgvgwwwhwwvwwwWgwxwwwwwwwxxxxgwwwxwwxxxxwvwxxxwvvgVewwwxwwwwwxxwxwgwwxxhxgwxxxxwwwwwxxxwgxxxxvxhvxwxxwwwwxwfwwwwwwwwxwhfwxwxwgxwwwwwgwwxwwwwxvwwwxxxwxwxxwxwxwvwxwwwwxxwwwwwwwwxwxxwxxwwwxxxwxwwxxwwxwxvvwxwwxxvxxwxxxxxxxwxxxuwuvvvvgwvxwuewvwwwwwwgwwgvwvugwwwwggvwvwwwwwxwxwwwwvfxwwwxwwwwxwwvgwxwxhvvwwwxwwfwvvffwwgwwwwvwgwwwwwxwwwgwwwuwwxwxgwwwxwgwxwwwwwwwwxwxxwwvwwwvwxwxfvvwvfvvgffvfvfuvVfwwwwwwwwwwwweufWgwvwwwwwgvwVvvwwwwgwwwxvwwxwwvwwhwgwwwwwxwwvwgxxwwwwwwwxwxgwhwxwxfwfffuwwwwwfwwwvvwxwxWwgwwwvwwwxwvvwwwwwwwwwvwwwxvvhxxwxwvwwwwwhxwwxxxwxwxvwvvwfweewfvwwwfwwwwvwwwxwxvwgwwxwgwwxwwvgwvxxxwwwwwwwxvwwxxxwxwwwwwxwxxxxwxxxwvvwwgewwgvvwwhwwwxwwwwwwwxgwgwxxxxwxwxxwwxxxwxxfwfvwwwvfffhxxgvgwwvvwvwwwgvwwwxwwwvhwxwwvgwwgvwwwhxwwwxwxxxwxwxxwxwxxwvxxxxwxwWwxgwwwxxxwwwwxwxxvgwwxxxxxxwwxwwwwxxwxwxwxxwxxxevwwwvwwwfwWwwxwwwwxwgwvgwwvwwwvwwwxvwwxxgwwwwwxwxwgwxgwwxwxwxwwwwwwxwxwxxwwxwwwwwgwwwWfuvwxwwwwxxxwgvwxwwwxwwwxxxwxwxwwwgwwwwxxxxwxwwxxgwwwevwwwWfvfwvwwggwgffwwwwwvwggwwwgwwgfwwxVvuwvwwwwwwwxwwwwwwwgwxhwwwxwwxwwxggxwxwhgwwhwwxxxxwxwhxxxwwwwgvgvwxveuvwwwxhvwwwwvwgxwvxgxwxwwwwvwxgwwxxwxxxxwxxwwxwxxxgwxxwxgvvgvwfwvwxhxvwwxxwhxwxvxwwxxwwwwwwxxxwwxwwwxwxwxwxwxxwwwxwvvwwwwwvhxxxwwwvxxwxxxxxxhxwwxwwwxxwxxxxxwwwvhfgvwxxwwvwwwxgwwwvhwugwxwxxxwxxwxxwwwxxxwxwgxwxxxxxgxxxxwxxxvwwwxwwwwwwwwwwxxwwxgwwwxwxxwxwxxxxwxwxxxxhxwxxwwwwxxxxwwwwwwxwwgwwwwwwgeVgvwvgwwwwwwgwfxwwvwgvwvgwwxwwxwxwwwwwxxxwwwwxxvwwgwwwwwwwxxvxwwwgwvxwwwXvfvhwwwwwwwwgwwwwwwwxwxxhwwwxxwwxxwgwwxxxxxxxxwwwwwgwvwwwwwgwgwwwwgwwwwwwWvwwgwwxvxgwwgvxwvvwwxwwwxwwxxxwwfwwwxwxxvxwgwwxwwwxwwxxxggwuwxgwxxwwwwxxvxxxgwvxxgwuwwgwwxxxxwxvwxwvxxxxwhxhxvwxwxwxwwwwxxxgxgwwwWvfxwhvvvgwwxwwwwwwhwxwwxxwwxxheVuwwwwxxxwwxwgwwwvwwxwwxxxwxwxxwwxgwwwwgwwwwwwwwwwxxwwxwwwxxhwwxxgwxwxwxwxxvxxwxxwxxwxwwwxwvxwwwxxwxxxxxwxwwwwwwwwwwxxxxwxwwxxxwwxvwwxwvgegwvwwwwfeWgfuwwgwvwgvwwxwgfwvgwwgwwwgvwvwwwxxvxwvxxxhxxwgwwgfxwxwWxwwwwwxgwwxxwvwggwwvvwvvwwwwwwwwwwwwhwwgwxxwxwxwxxwwxwwwwwfvxwxvwwwvfwwwggwwwwwvgwwxwwfwvxwgwwwvwVvwggwfwxwwwVvwgwwhvwwwwwxxwwwvwxwwwxxxvwwwwwwwwwwwwwwwwxxwwwgwvwwxxxwwwwwwwvwwvxxvvvwhwwhwxwfxwwvwwxxwxxxxxxwxwwxwxwxxwxxwgwwwxxwwwwvwvwwwwxxxwwgwxwwwxxgxwwwxwwxwxxxgwxwxxwwwxwxwxhwwxwxwwxwxwvvwvwwwxvgxxxxwwxwxxwwwwxwxwxwxwxxxwxwwwwgwxwwxgwwwwfwxgxgwwwwwxxwwwvxwwhhwwxxvxwxwwxxwwxwxwvwwxwxxxvwwxxwxxxxwwxxxxxxwxxxxxxxxwxwvwvwvwwuVwwwxwffvgvgvvvwvwuWgwwwwvgvfvgwwvwxwwxwwwwwwvwxgwwwxgwxwwwvwwxwvwxwwvxwwfWwwwxwgvwwhgwwxwwgwwxgwwwwxwxxhxwxwwwwxwxxxwwxwxwwxxxxxwwxgffvvfwffvwgWvvffffffvwwguWwvfxfvvgvgvgvwxwfvvgwguWvwxwgvxxwwwwwwwwxwgxwwxxwxwwxwvwwxxwgxxxwxwxwwxgwwghwwfwfgvwwwwxvwfvvwwwvWwwwwwgwwwvxxwwhvwgxwwxwwwwxgwwwwxwgwwxwwwwxigwxwwwxxxwxgvwwxxwxwwxwwxxvWwwxwwggvxgwvwxwwxwxwwwwwxwvwwwxwxxwxwwxxxwxxxxxxxwxwxwwwxxwwwxxwwwwxxxxxxxwwxxxwxxxxwxwwggvvvgxwwxwfvvwwwvWvwwxwwwwxwwwwwvgwwwgwwwwwxgwwwwwwwxxxhwvxwwxxwwgvxwxxxwwxwwwwwxwxwwxwxwxxwwwwwxwwxwxwwxwwwwwxwxxvwxwwwxxwxxwwxgwwwxwwwewwvwwwwggxwgwfwegvggwwvwwvgwVvwgfwvfvwvgwvvwwwwwwxxgxxwfxwxwwwwwxwxwwgvwwwxwwwxwxxwwwfwwvwgxwwwwwwxgvvwwxwvxvVgvefwwxwwwwvwxggxvvwwxxwxwvwggwwwwxwwvggvvxVeewggwgvvxgfwgwfgwuwwwwvvwvvgwvwvgvfwxghgwwwwxwvwvwgwgwgvwxhxwwwxwxhvxxwvwxwxwxvwwxxwxxxwwwvwwwvvwvuwwwvwgwgwwxwvwvwvvxwxxgwgwgwwxwwwxwxvxgxwwxwxwwxxwvwxxhwgxgvxwwggewwvwwvgwxvwwxwfvvwwwwwwxwxwwxxwvwwwxwwwxgwxxwwwwwwwvgwxwxxwxxxvwgwvwwwvwxxxwgxxxxwfwxwvxwwfvgwvgwwwfxwxwwwxwwwggwxwwwgvxxxwxxxwxxwwwxxxwxxwxxxgwxgwwgxwwxwxxgwwxwwwvxwwxxxxxxxxwwxxxvwwwwgvgwwwwwwwwfvvwwwgvgwgwwwwwwwwwwfvvwwwxxxwxwxwxwwwwwwgwxwwxwxxwwvxxwxwxxwvhwwwxwwwwwhwxwwwwwwwwwwxxwxwxwxxxxxxxxwxxwgvwwwwwwwwwwwgvwwgvwxwwwwwwwwwwwwwwwwxxgvwwwwwwwwwxxxwwwwwwxxwwxwwwxxxwwxwxxxwwwwwwwxwwwxwwxxxwxxwwwxxwwwwxxxxxxxxxxxxwxxxxxwxwvxwxwgwxwwxwwxwgwxwwxgwwwwxxxwwxwxxwwwxxxxwwxxwxxwwxwwfvwxxxxfvvwwxxxwwwwxwxxxwwwxxwwwxgwxwwwxxwwwwwxwxwxwwxxwxxxxwxxxwwwxwwwwwwxxxwwxxwxxxwxwwxxxdwwgwgwwwwwvwfwwwfwwvwvgxwwwfgvvvwwfwFwwwggwwvwwwwwwwfwwwvxwgwwwwwwwxxgWwwwgxxwxxgwgxwwwwwwwxwwwwxwxgwgwwvxvvwxwwvwfwvwgwxwwFgvfwwwwwwxxgxwxwwvgwxhwwxxxWwwgwwwwwxxwwgwvgwxgwwvvgfdgugwffgvwwwvwvwwgwWevvfvhvgwvxwwgvvgvxWgwwgwwwwxgwxwwxhwwwxwwwxwwwwxwwwwvxwwxwxhwwwwwxwwgwwwxxwxxhwvvxvdvwwwwwxxwvvvwwxgxvwxwwwevwvxvgvvxwvvxwWwhwwwwwwgxwwwwxwxxwwxwhxwwxxxwxwwxhxxwxwwxggvxwvwwwwuwgwgwwhwwwgfvxwxwwxwvvgwwhxxwfwwwxwwxwwwxxxwxxxxwwxwxxxhwxwxxwxwwwwwxxuwxwxwvxgvxggwxwwxxwwgxxwxxwxxxwwwwwwxxxxxhxxvxgwvwfwxhgwgwwggwvwwwwgwwxwgvvgwxwwxxvwwwWxvwhxxgwwxwwwwxwxxxxxwwxwxxxxwxwwxgwwxwhwxxxwwwwwvwxxxwwxwwxxxwgxwxxxxxwwxwxwwwxxtvgwffvvwvvwvwwxxxxgwwwwgwfgwwwvhvvxxhxxwxxxgwwwvwgvwvgvwwgvwxxwvxwgwuwwwgvwxxxVfefvgewgfVvvwxwwxwxvwwxvwggwwwxwwwfwxxhwxxwxwwwwfgwwwxwwwwxxgwxwxxwxxwgxwwVfvvfwvvgggfwwwWvwwxgwwwgwggvvwwgwwwxhxwwwxxxggvwwwwwwgvwfgwxxxvxxxwxwwwwwwxwwxxxxwwhwxeffvwffwVvvwwwwgwwwwwgxgwxxxxwvwwxxxwwwxwwgwwxwxgxwvwwwxwxxwxwxwwwwgxwwxxwxxxvwxxxfvvwuwwwwgfwvvwwwwxwwxwxwwwwwwhwvwwxwwwgvwvwvwwwxxwwxxxxwwwwwwwxwwxwwxwxwvVevvvwffVVxwwgvwwwwwxwgfwxhxwwwwfxwvxxxwwxxwwwxwvwvgghWxgwgwvwxhxwxwwwxxxwwvwwxwwxwwhwxvwfwwwxwwxwxwwvfxxvxwwwwwxwxwwxwwxwxwxwxwwvwvwxwvxwwwwwxwxhwgwwwwxxxxxxxxgwwxwwwvvgwwwvhwwxwwwvwwwwwwgWwxwwxxwxxxxxwvgxwwwwwvvvxhwwwwvxxwwxxwxwxwxwwwxxuuuwvwwwfvwwvvvuvvwwwwfwgwwwvxwwuvxvvgwwvwwwwxwwwxvwwgvfwvwwvvvuuvwxwgwwxvfwwwwwvwwvwwvgwwvuwwwguwvgfwuwwwwvgwwgxWgvwwwgwwugvwvvwwwwgvwwxxxxxvwgwfwwwvwwwhfwgxwwwwxwwxxgwxwxwwwwxxxxdvvggvvwvWvvwwvfVfwwggwVuewwwwgwwvvvvgwwwwwwwwwgwwvvwwwwwwxwvwGwvvvvwvwxwwwwwwwwwwhwwvxwxxwwwwvxwwwvwwhxwwwwgwefgwvgwuevvwvwwvwvggwwwvvgvwwvwvvwwfwxwwwwwwvxwwwwvwxxwvwvwwvwvhwwwwwwxxgwwggwxwxxwxwwwwwxvhxxwwwwvvwvwgvwvvwweuwfwwvwgwvwvwwwwxwwwwwwwwwwxwxxxvwevvvgwvwwvgwvwwwwwvxwvvwxwwwwwxxxwxxfgvweggwvgwwvwwvwwwwwwxwxgWwggxwwwxxwwxXwwwwwxwwxwwwwwwwgvxwwvwgwwhxWgxgxwxxwhwwxwwwxxxxwxvwvvgwgffuwvwwvuwwxvwfwguwgwwwwwxwwwwxwxwwwxxwvvvfvgvwuvgwuwwwwggwvwXxgwwwwwxwwxxwwwwwhwwxvxhwwxvvfwwwwwwwgwxwwwwwxWwgvugwxwxwxhwhxxwwwwxwwwwwwwxfwwgwwwvwghwwwxwvwxwwwxwwwwxtegwWfgwUvwvwgwgvfxvwgfvvwgvwwwWwvwwwvvwwxxwxwfwwxVwwwgggwewvgwdwwffwxgwwwvwvwwwvfvwewvwfwwwxwxwwFgewfvvwvVvwvwwVfVvwhgggvwgwwvvwggwwxwwwxxfwwxwxwxvvvwVvvwgvvxvgvvwwwwwwxwwwgwxgwwwxwvwxhwxwxxxxxxwEWffwWgweffvwvuvfVVwwwwfvuwwvwfwGwvwvgvxwwwfwvwxwgvwwwwwhxvgVwwwwwewwwwggxgwwvwhwfvxgwwggvxwwwxvxxxxwvgwwXxwxxxxgVffwguvxfVwwvvxwFffwwgwxvwvfwgwVwgxvwvwxwwwwwwwhhwgxwwwxxfvgxwWvxwwwwvvwwwwwxxwwwxwwxwxwwxxwwwwhxwxhxxxwwfvvwvgvwtwfwwwwWvwwvvwvxwgwwxwxwwxxxvxxwxvgfwgvfwvvwwwwgxwxwwxwwwwwwwwwxxhxwxvwwvfUwggwgfvvvxwffFWwghwwwhxxxwwwvxxwwxxwvxxgxxhxwwxwfvgxvxwwfwwwxwxxwhxwxxwxxwxwxvxxxvxwvxhgwxxwxvwxugegvhgwvxwxwgvfgvwwvwwwgxwfwxwxxwwvvxwwwwxwwwwwxvwvwwwgwwwwwwwwwgxxhxwfwwxvwwxwxwxvwxwwwgWxwhgxxwvgxxxfwvgwgwwwwwegghwgxvvwvwwxwxwwwxxvxgxghwwvxxwwxxvwghgvwwwwxvwwwxxwxgwwwxxxwwwxhhwwwwwfvvvvevefvxuwwvUffvwxvwfvwvvxvgvxwwwvuwvwwwxvwwxwwvvwevwwvfuvwwwuvwvwwvwwwvwxwwwfuvgwwxxwwvwwwwwwxwveVVffvgffvfwwwvfvfwwggfuvwhwhvvvuvvwxxxwwwwvvwxwvhwwwxwvvwuvfgvwwvwxvuvwwwhvfwvgxfwwwgvvwwxxxwwwhgvxvgwvvvwuewvvvvwwwweevvvvwwvvvvwgvvvwvvwvwwvgvwgxwwwgwwvwgwggwgvvwwwvwwwgwvwwwwwvwxwwgvwvvgwvgwwwwwwwxwwxwxgwwwwwwweVuvvvwwgfvvwwvwvvggxwwhwgwggwvvgvvwwvxwwwwwgwgwgxvwwwxwwhvgwwxwwwwwwxwxwwwxwxwwvvvwwwwwwwxgxwwxxwvhxxwxwfvfvfwwvfgwvwvvvvwwwwwwwgxwvfvvwwwwvxvvwxvwxxvgvvwwvvwwwwwvwwwwwvwwwfvwvwwvxwwxggwxwfxgvgwgwwvvevvwwwgwgwwwgwwgwhwggVuvvwwvgwwxwwxgvgWfwwwxwwguxxwgvwwwwwxwwhwWxufgUxwxxwwwwWWfwwwxwwwwwgwxxwwwxxfvwwwwwwvwxvvvwxwwwwwwvwwvxwwwwxxxxwwwxwxwvwwwwxwwwwwwxwxwxwwxwxwwxxwwwxxwwwxxxxxxfwgxwwwvwwhwfgxxwwxggxvwwgxwhvwvhxwxxwxxxwwghwwwwwwvwxwwwwwgwwwhwvwwwvwvwwgxwwxxwwhxwxwwwwwxudfwgwwxfvvvvfuvvwwffwwwfuvgwwvwgxufVwvvvwvxevwgwgfvvvwwwvwwgwwvwuxwwvvfwvuwvwwvwvwvvwuwwwxwfgwxwgwwgvwvwffvwwvwvfwfwvvwwgwwhxxxxFwfwvxwwxwxvvvwguwvwvxwfuwvwwwxwxvWvwvwwgxwwwxwwwwwwwxufwgwwvwuvgwvxvFevwgvwvvuwwvugffvvwvWwwwwvgfdhwwgwvwwfwwgwwvfwfwwWvvwwfvgvwwwgwvfwxxvwwvvwvwvxxxxwwwwfwwxvwwwuwhwwvVvggwwwxwwfdffwvwwwwwwwfvwXwwxwxxwugvgfgwwwwwwwxgvvxwwwxvwuwgxwvwwxwwxuwwgxuxwwxgvxxgvwwwvvvuxwxxwffgxxwvvxwxvwwwwwwwfvvwuxwxxvvvgwwwwxxwggwwwwwvwwxvvvwvwwwwxwwwxwwwwwxwwvvwwwxvgxwxhuwffwwwvwwwghvwgwgvwvwgwwwwwwhfgxxwxxwxwxxxvvfvwwwwxwwwwhwxwwwwwfwxvgxxggwwwwxwxxwwxxvggwwgvxwVuvwwvwwvwwwfvwwxwhvxwwwvwwwwwhfwwwwvwvvwwwwxggxuvvvwwfvvxwxwxfxgwWwwwwwggxexwxgwXvfvgwwwwxxxwxvwwWgwxwwwwwvgvgwxxggxwgwfggwvgxxvhwvwwwwxxxvxwwwwxvwwwxwwwxvvxxxwxxxgwwxvwxwxdwvwwfxgvuxwffvfvxwgwwvgWwgwggwwgvxvgvtxuhwgwxfVwwwwwwwGtwvwfgwwgwWwwwfwxwwwvwwwwvwwvwgfwxtwwguwxvgwwvxwwwxuwfvwvgvgEfwVvfgvWvvwwwwvvgWwvwwgwvvvwfvgxwwwggwxwxxwwwwxwwgwwfggwgwwvwxgvwwwgwwgxxwwwgvxxxvhwgwwwwvhxxxxwgwvxvgwfffvgvfww&TvggvgVuufvwwgvgvwugwgwtguwwwfuvxfgvwugwvggvfvwwgvwwgwwvwgwWgvvwwwgfwgvwwfggwwwvwwhWvxwgewefwvwgxVwvxwgwgtvUVwgwwgFUdWwwwgvfwgwwwwgwGvwfgvvWvxwwgwgwwwxwgwwgwwvwwwxwwwwvgwhwgwwwfgvwwgggwfwwhgwxwwwwuxxwxwwwwwwxgwvggxwwwvwfwwwwvggwvxugvwfwwxwgxxgWwwwwgvvwwvwwwwgxwxwxxvwwwwgwwxwvvwwfxgxxwwwwwwxxxfwhwwxwxvwxxhwwwwgwvwxfwwwwwwGvvxfgwgwwguwwvwwvwvwxgxgxgwwgvgvwwwwwvguwewvwvxwgxvwgfgvwwwwwwwxxwwvwwwggxXwwxxwwwwxfgwvwwwhwvXwwwfvwgwwwwwgwwwwWeuWwxwvgfwxwwvhxWwwwggvxwvwwgvwwvwwgwwwgwuwvvwxhWwwxwwxwxxvghwwwwvgwwgwxwvwxwwvwwwgwwxwvwwgxwwvgwwxwwwwvwwhuwwwwwxwwwwgggwwgwfvgwxxwgvxwwvwefwwhwxwwwwxuwgvwwvwxwxxwwwwwwwxXvwwwvwvwvsvwhwwwfwVxwhfgvwwwwwwwvvwwvwgggvwxwwwwvxxxfgvxgwegwwfvxvvvwwvxfuwxwvwvxwwxxxwvuwxwvwxUWUwwvwwfvwwwxwfWvxwwxwwwwgvEwwvggwwxwuwwxgwvvwwfwwgxwwwfwwwxwxwhgwvwwgxwgwgxxhwxgVVuwwgWggvxgwvfffwwwvuvwwwvggwwvxwwwxgvugwxwxwwxxxwggwfvwvxwxwwvfwxwwwwvxwgwwwvgxwwvxwhWwwxwhxvvwgevfvgwwwwvwffffwwwwwvxxwVwvwxvgwxwwxwvwgwwwwhxxxwxxvvwvgwwgwxwvgwwxwxwwvvwxgwxwwwwwgwwwhgxxxwxwwvwwwwwvgxugvwxhhwwxwgvvwwuwvxwwvwvwwfwwwvgwvxwwxxwwvxxvwxxwwwxwwxfwgfTwwwwwwwxwxfvwwxvxwwxxxwwUUVwwuwxwwvxwvggwwwwxxxwffwwwvwwwgwwxgVwxwvvxxwwxhxfxwxWgwwxwxwvgfwwvvhwxfxvvvwwwgxwwwwwwwwxxwwxwxxxwwvwvwwwwwwwwfwwwxxxwwxwhwwwwxwxwvwxwwxxvfgwwgwxwwwwwvvwwwwwvxvwvgWhwxwwxwwxxwxxwxvwvwwxwgvvvxxwwwxwwxxxwxwwxxxwxxvwfwwfwwwwvwwwwvvvwwvvwwxvvxwwwvxggxwwvwxwwwwvwwwwgvxwwxwvvwwwxwwxwxwvwxxfvwwxwvvxvgvwwxfvwwwwwwwwwwwwhgvxwwwvxwwwwxxwwwvvxwvwwgwxvwxwwwvxxwxwwxwwwwxwwvwwgvvgvwwvwwwvvwwwwfvwwhwvwwwwwwvvvwwwgwgwwwwxgwwwgwgwfwwwwxwxwwwwwxwwwwwwxwvxgvwgvxwwxwggwgwvxxwvvvwfvwwgwxvfvwwwwwvwgwfvvxwwvxwwwxwwwwwwgvwxxwwwwxwwwwwxwhwwwgwxxwwxfxxwwwwwwwxwvvwwvwwwwwvwwwwxfvvxwvxvgxxwwxwwwwwxwwwwwxwxvvvwwwvwwwwvxwwvwxfgwwxwwwxwwxxxwwwwxwhgvxxvvvwgvwxwwxxwxxwwwwxwxxxxwwxxxxxwwwxxwwwwwgwgvxwxwwxwwxwwxxxwwxxvxgwwvxxwgwwwwwwwwwwwwwwwxwxxxxwwwwxxxwxwxgxxwwwwwwxwwwxgwxwggwgvwwwwwwwxxxxxfwwxwwwvvwxxwwxwwgwwgwvxxwxwwwwxxxxwxwxwxwwxwxxgwfwxxwwxwxxxwxwxwuwfwggfvvwffwgggwvvvvfxwwgxwvxffwgwgwwwxvwvhxwwwwGwvvwfufvvhwfwhgwvvxwvwwwwwwxwwvwwgxwwhwwwxxxvwwwgwwgfggvwggwwfewwxwwwwwxgwxvwxxwxxgwxxxvwwxwgvwwwwfwvwvwwhwwwwxxwxfwvwxxxvxxwxxwhxxwwxxggvwwgwvwggwvGfgfvwwwVfugwwvwwvwfwxgvxwgwwwxxxxhfxwwxxwwvwwvwvgwvgwwvvvwxwxwwwwvwwxwwwhxwwxgWgxxxhxwxwwwwwwwvxVvvwvwwgfwghwggwwgwhwwfwvwwwXxxhwxwxhvwwwxwwwwwwwvwwxwgxxwxwwxxwxwxwwwfxxwwxwwxhwwxwwwwxwxxwvwwgwvfvfwvvgxvgwxuvvxwhwvwxwwwwwwwxxwwxxwgvggxwvwuvwxwwvxxwxwwwwxxgvfxvwwxgwwxwwwxxxwxwxwxgwvvwvwwwxxvxvvhgwxfwwwxwvwwwwxxxwxgwwwwwvvgwwwxwxxwvwhwuxwfxwxxxxxxwxwxvwfwgwwxgwvwgvgwhxwvwfwwwhfwvwwvxwxxghxxwwxxgwwxwwvxwxgxxwhwxxwwwgwxvwwxhhgwwxxxwxwxwwwxwvgxwwwwhxwwvwwxwxwwxxxxwgxxwxwxxvxxwxwwxxwwwxwwxwvwwffvxwxwxxxwxwuvwvvgwfvwvwgwwwwwwwwvwwffwwwwwgwxwvxwxxxwvvwwgwvuvwfvwwxwxwgxwwvgvwwwwwxwwwxvwwfwvwwwWvugwwwwwwwwgvvvwgwwwhvwwfvwwwwwvxxwvvxvvwwgwvwwwvwxwwwwwwwxgggwxxwwxwuvvwvVevggwWvugwgwwwwwgvwxwvwwgfwwfgwgfvvvwxwgvwwvwwfvwvwwgwwfvwwvwwwvwwwwwwwwwwxwvvWgvvwxwxgvwwwwxxwxxwxwwvffwuufvgvfgwvwfwwwvgwxwwwwvwwwvvwvwxvwxwwvxvwwgwwxxwwwuwwvwxwwvwwwwwwhvxxwwxwwxwxxxxxwvvgvvwvwwwvwwgwxgxxvwwwvwwvvwxhwwvvwwwwvgvxwxxxwvwxwwwwxxwvvvvvfggwxxwgggxxxxxwwwgxxwwvwwwwwwxxwxwwxxxhhhwwxwwgwvwwvwwwgxxxxxxxxgxxwwxwggxxxxxxvwgevvwgvwvxwvxwgwwwwwwwhwwvwxwwxxxwwwwxwwggevwwwwgvxwwwxwwxgvwwxwwxxwxwwxwwxwgxgfwvwvvwgwwwwgwvwgwwwxwwwwhwvxxwxwxxhwxxxxwxwwwwwwxxxwxxxxwxxxwxwxwwwxxxwwxxueevvuuweevvvvvfvxvgvwuwwvvxfduvtgwuwwefvvwgvwvxfvwxwfuxuetugwfwfwvVewwhwgvvxwtwvuvvfvehwvvfwvwwwwgwwwetegueuwvwfwfvwffvwwgwfwxxgwuwvwuvvxwxwgwvwfuxwvwxwxxxwugfwvvvfvvwwwwgwwgwwwwgwxwxfuuwwwwwwwwwwwwwwwxwxxxxwxxxfuwueuuvvwffwvuevwvwgwgwgfwtfwfvvxwwvvwwwuuvuwvuwvwvvwwwvgvvwwwwfuvwwgvwvwwwwwxwxvggxwwvvwwxgwwvwwvwwvwxxwwwwwxgvtefvffvvfwxwwvwvvuuwwvwwwwwwwxuufxwvwwwwfwgwwwwwwwxwwgwwwwgwwwvxwwvwwxwxwwxwwwvvwxvwxxwwwwwxwwwwxwfuuwugvuwvvvwvuwwwwwwuvxvwwfwwvwwvvxwwwwwwxwxuwevevwvvwvuvfvvwxvwwwxwwwwwxwvvwgvwwwwwwwgxwuwwwdvewwgwgwwweuvwwgwwwxwxwxxgwwwwvwgwggxwxwwwwfgxwwhVutwfvgvwgffwwwwwwxxxxxhxgfwvxwwxwggfwwxgwuwwvuvwvwwwvfvvwvvfwwwwvwxgwwwxwvvwwwwxwwwwvwwwvwwwwwgvvwgxgwwxwwwxxxxxxwwwwwwwxxvvvwvvuwwwxwwxvgvwgwwxwwxwwxxxwwwxwwvxxxxxxwwfuwwwxxgwwwwgvwxxxxxxwwxxwxxwxwwwxwwevvWuvwwvwgfeugwgwwgwggVfwvXgwgfggwvwwuwwgwwgvuxgwgwxgggxwedwWgwfwvwggwxwwxwwwwwWwwUvvwwgwvwwhwwwgWwwwhwwggVgwgfevfwwgwgwvxxwwxwwhgvvwwwxxwxwwxwxxhgvwWvfwwwwWwhgwwxxhwwxwwwxwvfwxwwgxgxwhwWfewggwVfvvFeuwwefgwwwgvgwWwfgfWgfwwuvwvvfvVvwwwwvWwxwxwgxfwgfgwwwfhggwwwwxwhwwwxxxxfwvwgXgwwwwwwgwwwWHgxxxwwgggvVvfxfvvxvxwwWvgwgwgHgwhwwxgxwwwwwxxwwxwwxwwwwwwwwfwwwggwWxxxgxhwwwxhXwwxwxxwwxxwwwxxxxhxxxxxwvwvfVfgvvtvwgxgfvhgwwxwwwxwhwvwwxwwwwhwwwwxxgVvwewvwwwwxfvggWwfxwggxwxxxxgwwwgxxxwwwvxxwxxxwxwfvuwwgwhwwwvwwgwwhxxxxxxxgxwwwwgwwgxxxxxwwxxwxwvwwxfuvvxwwgwvwwxhhwwxwwxwxxwwwxxwxxxxVggWvvwfwvfuvVwfvgwggvxxwwwwfvxxwwwxwxwwxxhhwwwwfvwwwgghwxwwwvgvwxWXwxwxwgwxxwwwwvwwxxxxxwxwvxwwwwwwwvwwwxgwfxwxwwxxxxxwhxhxWwwxxwwwxwvwxvwwwxxhhwxxwwhwxxgvxxhuevvfuwwwwvgwwwxwwwgwwwwwwvwfwxwwwwwfwwwwgwxxwxvvxufvwxwwwgwwxwwwwxwwwvwwwwwxwvwvwvxxwwhwwfvwwvgwwwWvwwwwwfvwwwugewVwfvwwwwxwxvfwwwgwxwwxgfwwgwwwwvwvwwxwwgfwwwgvgwhxwxxwwxxxeevwvgvwwwwwvwfwwwgwfwuwwwwwevWvfvuwfwgwvvvvwhwwwgxwxwxhwwwwxwwwvwWwuxxvwvxhvfwwwwwwwfwwwwgwxfwhxwwwxwufwwfvwgwwfwwwwgwwwfwxwweevwvvvwwgwwwwwvgwgwvwxvxwvvwvwwwwwxwxfwwgwwwxwwxxvwgwwwgwxxwwwxwwxwwwwvwwwxwvgwwwvxxxwwwvwwwxwxwwwgvvxvxxvxwvgvgwwxxwwwwxwvvwwwwwxwwwwxxwwwgewvwwvwxxwvvwwxwxwwwvwvwvwWXwxxxwwwwwxgxggwwwwwwwgwxxgggWxxwwgxwhwwwwxwwxwxxvwvvwxxgvvwwvwvxwwxffvfxgvwxxxwwwwwwwwwvwwwwwwgwxvgxxvxwxhwvgvwwwggwxxvxgwxwgevvwwvwxxwxxwgwwhghgwxxwvwggWfwxxwxxwwxwxwwxwwvwwhwwwwgwgxwxgxxwwwwxxwgxwxuUfUvfvvuvwffwvwwgwwVvwvwvvwtwwvfwfvvwwVvwwvwwgwvwwgwwwwvwfvvuugwvwvwgwwwwwwwvvwwvuxwwvwwvfwxvwwwwwxewvwxvVvwwgvwwwwwVvwvvgvuvgwxwhvgwwVfwgfgvwwwxvvugfwwwxxXwxwgwfwwexvwwwxwwwgwfwwwxghgfxwxvwwgwwxwwwwwgxvwxfvvwvwwwfwgevxvggwvgwwvdvwffwwwwvvwefvudvwwwfuwvgfgwwewguwvwvwwwwuwwvwwfxwxhxwgwxwwvvvwfwgwwwwvwwwwwwwvwgwexvvwvwwVuwwwwxxwvdvgwfggwgwghffffdwwvwwwgwxxvwuwwwwwwvxwwwwvwxxggxwvxwvxhgxwwwwgvwxwxwxwxwwgwgxwvwgvvwggVwxwVvwvwwwwwxwwgwwwfvvgvwwvwuvwxwxfxwxwfwvvwxwvxwwgwwhxxgwwwwwxhwxwwwxxxgwxxxwxxxwdvwwwwgwvwfwwwwwwfgxhwfgvwvxxgxxwxwggwxWxghgxwxxwgvwvwxhwwxgxxehhwxxwwwwwwwwwgwhvxwxxwxwwggvFwxwwffvxwfgwwwwgxwwwwwwwwwgwgwvwwwwxgxxwwxwwwwuxwwvwwwxwgwvxwwxxghwwxxwwwxwgxwwwwxgwwxwwxxewvwwwwxwwwwgwxwvwxxwxwxxhhwwwwhxxwxwxwwwwwwwwvwwxxxwxevwwxxwwwwwxxxxxxwwxufwfuvwfvvwufvuuwwfevgVvwwfffvvgfwwwwvfffvvvwwuwwfwgwwfwuvvwwvuwfvxvggwvvvvwvfwuewvgwwxvwwwwwxwhwhwwggfwwgwvwgvwegvwfWvwwwvwvvwwgxfvfgvwwvuwvwggfwwxwwhgwXwxwwggwevvwfvwwwxwvwxxwXwwwxwwgxwwfwgvxwwvwgxwxgwxgWgxvgwvvwvuggwwwvfgfvVvWvufevweevvgfwfvvgewwvgvwfuvwgvwvvwwggvvwwvwgwwwfwwxwfwwwfwvwwwxwggwwwgfwwwwwvvwwwgwvwwwhhwwvWhvwggxwwvwgfvwvWwvfvwwegvfffwwgvwgwwwxgwwfuwwfgwfvwxwxwvgfwwfxhgvwwgvwwwwxwvgggwwwgwwgghvvhgwxwwwwwwvxgwgwwwxvxgwwwwxwwwwwwwwvwvwxwwuvwgXvwwvfwgvwwwwewggfvvwwwwwwvwwgxwvwxfxwvwwwwvfwfvxvxfwwxwwhxwwwvgvwwxwvwvxwxxwxxhxxxwwwxwwvwwwufwwgwwWwfwwggwhwwwUxwgVwfwwvhxxwwxhwwwwWwhwgggvgwwfwwwwwfwhxhggvhvwgvxwwxwwwwfxwgWgwwwxwwxwgxvhwwfxwgvvwvwwgWvvwggWwwwwwfwewwvxgwggvwwwxxxxxwwwwhxxwwwxvvxgwgwwvvhvwwwhgwwwxwwwwvggvwwwwxxwfwxxwxwxwwfwvvwwhvwwxwWgvgwfxhxgwwwwgwwwwwwgwxwwwxxwwwxwwxwwxxvxxvwgwxxwhwxgwwwxwwwhhvvwwwwwwwwxxxwxxwwugfwvvvuwxvwwwxhwwwhwvwwvuewvwwfwwvwgwwwwwwhwwwwwwuwxwwwwwwwwwwxwxgwwwwvvwwvxwxwvwwxgxxxevguwwgwvwwwwgwvwwxwwvgvwfwwwggguxwgvwwvgwxggxxwwwvggvwwwwxwwxxwxwxvwvwWwgwxvwxhwxxwwxxggwxggvvugwvwvwxwWwwwgwxwwwvggvwvWvwwvvwwwfwwwwwgwvvwXvwgwwwWgvwwxvxwwvhwxwgwwwwwxxxwwxWggwwwxwwwuxwwvuwwwwwgwxwwxxwwugwfwwwfuwxwxfwwwwhwwwvwxwwwvvwwxwwwwwwxwwguXwvxgwgxwwwwhuwwwwxgwwwgwxwwxxwvwguwwxxvxwwxwxwxwxuwwewvwghvwwwwxwwvWwwhwwvuvwxwwgwwxwwwwxwxxhgxvwwgwwwwuwwwwwwxwxxywwwwwwgwwxwwxwwxwwwxxwwwwggwgwwgwxgwwxhwxWwwxxwxwxwwWvfwwwwwgxxwxhwxgwwxxxxwwwwvwwwwxxwwwxxwxxwfxwxhvxgxxxxwvwwvwwxwwxwwwwwwvwwwxwwwxwvwxxwxwwwxwxwxxwxxwxwWwwwgvvxwxwxxhxwhWwxxwwxxwxxwwwxxwxxwwwgwwwwwxxwwxxgxwwgWwwxxwxwxxxxxxwwxwhxwwhxxwwxvwgwuvgwxxwwwwwxxwwxxxwxxwufvwvwweuvxfffffvgvvxuggvwwvfuvwfefwvvvwufffwffxguevvwwwvwwvvwwvvwfvwvxwwgwgvwvvwwvwfvwfvvvwwwfwwwwvwvwwggvfwggeewvwwewfwgfuwfffwfvvwwwvwwgvfvgwgvgwxXgvvxgwwhgwvwwvwfvvvwwxvvvwgwwwxwwwgvwwwgwxvgwwgwxxwxWvxwwxufwxvwvxvgvwfvfwffwwvwwffvwwwvwfefgeevwffegwvvfvvwgvwwuvgvhwvgwxwwwvwggwwwwwwwxwxwwwwwwxwvvwwwwwwvwwhwvxwvwwxxwwwwwwwvfufweewwugvvgwwvevfvgvwgevwvggvwgvwwxvgvwwXwwwvwgwgWvwwvwwxwwgvwgxxxvwwvwxxwwxwwwwvwvxwWvwgwwwwwWvhxwwwwfwwwgfvwwwfvwggvwvwwgvwwvwxggvwvwgeewwxvfvvxwwwgwvxwwwwvwuwwvwwewvgvwwwwwwxwgwwxwxxwwwwxxgwwwwwwxgwvwggfwwxwgeufvhwvwwwwgwhvxvvwwgwwxwxwwwwfwhwwggxgvvwxwwwxxxvwvhgvwxwvwvwxhvxwwwxhxxwwhxwwwwvxxvwwvwggvwvxxwfwugwvwfgvwwwWuxxwfwgwxwwvhxwwwwgvfwwvwWvvwvxgwgvwxxxgwwwxwxwxxxwxwwxwvxwwxgwxwfvwwwxvxwxxxwfxwgwwwwggxwwwwwxwwwxxxwwwwxhwxvxwhwvwhwxwwwxwxvwxxxwwwxwvxxxxwxwxxwxugwWvfwuvgfgvvxvwwvfwgwuwgwwvWvwwwfgwvxggfvVgvwvuvwfwxgwxwugvVuwvwwwwggwvxvwwxwvgggfwgvwwfuxuxwwgvgwwhxwwgwxvvWwwfgfwvwffgxgUfvgvfgWffXvwwwvgfvwvwwwgwwevVgvhwxxgwwwvgvVwvwwvwwwhwgwggvgwhvxwwxwwwgwvwxvwxwxvxwvwgxggxwxwwwVgvhfffvggwfvwwfegffgeffevgvgwgv6dvgvvwgvvwfgwEfugvWvwugwvwWgwvggwgvgVwwwwgfggfghhXwgwgvgvgVwvgwwxhwfwwwgwwwWvgwhgxwghWhuxfEevVfvgfvwxvww5fdWvWfgwgxvxwxgvwwwggwgwgwwwfgfgVwgxwwwwvwwwgvvwwwgwwwwxvwvwWvgwgggxwggvvghgwvvwwgxwxvwwxwhxxxxwwwfwxfgfwwxgvgvwggwvhwwhwwvwwvwxwwwwwggwxxwwxwvggwvgwwwwwfwfwwWwwxhvwwwwxwwwxwwxwwxwwvwwwwwwvvwxgwvxwwgxvvggwwwWxwxwWwfxwgwwwwwwvvwxghxxhxwvxvwwwvwvxvxvxwxvwwgwgxxwwwfvxuwwhwwgwuvwxwwwxwwxwwxggfwGvuhwwwwwWvvhwgfgwfwvwvwwvwxwxggwwwwwwwxwwwwhwwxwxwwwVwwxxwwwwxwwwgwgggwWwXwfwfvwxwwwwwwwxwwxgwxwhwwwwwwwwwwwvvxvwwgwxwwwxffgwgWggwxvwvwwwwwxxwxwwwwwvwgwwwwwwwvwwwfwgwwhxwxwwvwwxxwwgXwxwvxwwwwxwxwhwwwfvwxwwxwghwwxvwgvvgwwgwvfvfwfwwgwwgxxfvwvvgwxwgwwwxxgwvwvwuwwvwxwwwxxvwxxvwwgwgvvWuvwxxVgdwgeUuwvwvwwwwgwwwwgfwwxwfvvvvwwwwxwxgwwwwxxxxwwwvwwwwwxgwwgewwwxxwxvxxxwxwVfuvvgfwwwWwwwwwgvwxxvwxwVwgwfwvwgvxwgvvwwwvwxxwgxwgwWuwwwxxwxwhxvvvwgwwwxgwwwwwwxxxwfeevUvufgwvxxwfvwwwwxxwvwevvwvwwxwxvgxwwwxxxwuvwwwwwxwxwfvxxxxwxxwwxwwwvvwvfuvwwxwwvwwwwxhvwwwxwxuvwvwvwxwwxxxwwwwwwhwwwxwwxxxwwwwwwwweUvwfVFwwxwwvvgxgvwxxxwwwwwvwhxxxxxwxxwwwxgxwxxwvxxxxwxxxxxggwvxxwxvgwxxvfvwvxwwwwwwwwxwxxwwgxwvwwxvxwwgfwwwwwhxvxwxxxxxwwwwwwxvwwwwwwxwwwhvxwwwwxggwwxwwxxwxwwvwwwgwwxxxwhwxwvxxxwwwxwwxwwwwwxxxgxwuwwfwuxwwwwvVfgvwvwvhvggfgfvuwvvfwwwwvfwvfgfvegxwgwwgwwvvvwhwwvwwvggxvgwvwhxwxVewwwwvvwxuxgwwwwuwwxxxwxgvgwvTVgvfufgwwwwwVwgwxvxvgvwfwUgwgwxwgwxgwwxxwwwwwfgwvwxgvgwvwfwwxvwwvewwwvwxxxxwwwwwwxxfvuwvfvvw6dwUvdwwVwgwuwgvvgvVfwvfvfvuvVvfwvwgwfvwgfgwwUvwwvggfwfvwwwvwgfwwffwgwgwwxwWwgxxwwgvvwwwwgvgwwwwgfvwwgvgfwggwguxwTUwFfSgwwgwwwWgwufvfvgwwgwwhwfwwghwxvwwvwwxwewwggwxwxwxwxxxwwfvgfvfwxwwgwxwxxgwwwxxwwvwwwWfxxhwxxhwwvwwfwwxxxwvwuvfwwwwwvwgwVgxwvwxwxgwvwwvwwwwwwvfxwwvxwwwxvwwvvuwwvvwwwvfwwxggxwxwvvgvwhwxwwxwwwwxwwggvwvwwfgwXwvxggwwvgwWwhxwwwvwxhxwgwwvxwwwgxwxxxggwwxwwwwvwgwwxxwxwwxxwwgwxxvxwxvWgvxwxwgWvgxwwwwgvVvwgegwvwxxVvdggVUwwgwgwxvgwwwwwwxxwhwwwwwwgwwxvgwxxfvwvfgwgwxvvvvhgfxwxhwwxwwwfwwgwwxwwwwwwxwwfgvwwvgwwwwwwxxxwwxfgxvwhvfxxxxwwxwwwwwgwwxwwvxxwxvgwwxwwwwwwxwxwwwfgxxxgwxxgwwwxvwvwhxvwwvwxvvggwwwwwffwvvwwfvgewvvwwwwwgwwfwwwwwxvxgxwvvvfgwvwwfwwxwxwwwxfwfwwwfwwwvwwxwwwxfxwxxwvwvwvvvwwvwwvxvwvwwwxwxwxxxvwwwgvwwvvegvgwggwwwfvwwxxgxwwvvwwwwwwwwxgwwwxwhxxwwwwwwugvxwwwwfwwwhwxwxwwwwwwvwxxwxwxwxwwxxvvwgffwvfwevvvgvggwwwgwgvwwvwwgggwvwwfvvwhwvfvwhxvwvxffwwwwwwwvwwgwvgwwwgwxwhwwvgwxxwxxwvvwvxxwvwwxvwvwwxwxwgwwwgxxhwwfwwvvgwugvhvwwwefvxwxwgwxhwwvwwvwgwvwxhwxwwhwwxwgxwwfxwwgwwwvwvxwyhgwwxxxwwhxxwxwwxxwxxxwwxxwwvwwvvwfwvgfvvwfwuvwwwwwwwwvxgxwwvwwwwwvwfwxxwwwwvxwwwugvwgxwwwvwwwwvxxxfwwxwxwwvxxxwwxxwxgwwfwwxwwvgggwwvvgvgvwgxwxgvxwvxwwwxxwwxhwhxggwwhgxxxfgxxgxvvwwwwvwwwwvwxgxxgwghwxgxgwwwxhwghxxxxxwwfwwwggvhghgfwwwxwhvwxwwwgwwxwxwgwwwwggwvhgwxvwhwvgvwgwgxvwwwwxxxxxwhxwwxwxwxxwwxgwwxwxxxgwwwxwwvxgwwwwwgwwxxwhwwwwwwwwwwxwxwwxhgxxwwxxwwxgwwxxvwwvwxxwxxxxgwwwvxxwxxxwxxwxuwwwVxwxwgwwVgwwxwwwvwgxgfvgwvvvhwwwvwwwxwxxwxwwggwfxwwwXwwwwwvxxxvfuewxwevwxwvwgxxxwvwvwgwvwxwgxwwwwwwwgwwwxwwffuvffwwwxhwwwxxxvvvvwwwwxwwxwwwxxwxxwgvvwgvgwxxwxwvwgwwwhwvgWwguwvwwwwwwgwvwfgwwwwwwUvfvwvgwwwfwgwvwwwgxwwhwwwwxxwvvwwxwxwwwwwwwxxxvgwwxwfWgvwwvwfwgwxxwwxxwfxwggwuwwhwwwxWxwvxvxwxwxwwwxxwxxwwxvxvgwwwhxvwwwwwwwgwwwxwgxxwwxwwxxwvguwwwwvxwxwgvgfwgvwxxxwxwxfwwxwwwwwwxhwwgwvvvvwwxwwwwxwxwwwwfvvwwggwxxxxhhwxxxwwwxxxwxxwxwxvxxwvvwwXgxxwxwwggwxxgwgwwwwgvwwwwxxwxxgvvgvwwwwwxwxxxxxwwwxwwwxvxwwxxwxhwwxhhwxxwxxwxwwxwxwwxxwxxxwxxwwxwxwxwwwxwwhxxxhwxxwwwvxwfwxwwxWufgvwwwwfffwfwvfvvvvfvuwwgewwwvvwuwwwvvfwwvwwwwgwvwuwhwwvgvwwwwvfvwwwwwvvuvwwwvwwwgwvxvvwuxvgvvvwwfuxfugvvvwfvwwvwvvvwxwhwgvwfwgvfwvwwgffvvwgvwwwwwfwwwwwwwwwvwwwfvvwxgwwwgwwvuwvwwwwwwgxgfhwwwwvvwwwfvfwwvwvuwwvgwvvfvtwevwwwfvwvwvvwwfvwwwwvvwgufwvxgvwwwwvwvwwwxwwwvwgwwwwwwgwgwvwwwwhwwwwwwgwvwxwwvgvgwwvwfvwwwvuwwwgwvfwuwwwgwwvfxwwufugwwwwwwxwwwhgufwewwwwwvxxwwwwwwwxwhfwwxwxvwwwwwwfvxwwwwvgwwwwvxwwwwgfwwgggwwwwvvgwwwwewwwgvwwwwvvwwgwwfwwwxwwwwwwwwwwwwwwwxwxwwvwvwwwwxwwvgwwxwgwxxwwwgvwgwwwwhwwwxxxwgwhwvwuvwwgxvfwwwxXxwwgWwxVgxxwwwWwxwxxhgwwxwwwxxhwxgwwgvwwwwvwgwvxxwxwwvWwwvwwwwwwwwwVwhvwwwwwwwwwwwfxwwwxwwWwvwwwwvwwwgwwwwxwxwvwwvxwwwxwxxvwxwwwwxwxwxwvwwwwwxxwgxgvwwwwvwwwxhwgwwwxgWwwgwxwxwxwxxwvwwwwwwwwwwwwwwgvwwwwxfwwwvfwwvwvwvvwwhwwwwwgwfvvwwgwwgxvgfwwvwwwxxwvwvwwwfwwwgwwwwwwhwvgwwwvvgvwwwwwwvwvxwvwwwwvxwgwwxfwvvxfvwwwwwvvwhfwgwgfwevhxvwvvgwwwwwwxfvgwxwwwxwwwwfxvwvvvwwwwxvvwgxwwxwgwwwvwwwwwxwxgwwgxxwwwwwwgwvwvgwfgvwwwwwfffwfggwwwvxwwfwffgwgwwvwxvxggevgfggvvgwggwwxwggwwwwwvvwggwwgwvfgwwwvgwgfvvgwwvwwwxfwvgvvhxwvwwxhwvvgwuvvfwwwwwwwgeffvwgfwwfwwvvfvwwwxgwwxwxwxggwwwwwwgxwxwvwvwwvwwxxxwwwfxhggwwwwwwvwxvwwxwwxwwvwhwvwwxxwfwggfwwgwggwwxwvwwvwwwxfevxwwxxwxxwgvwxvvwvxwwvwgxxwfxxwfvvwwwwwwwwwwxwwwwwwxwwwwwwwghwgxwhwwhwwwwgfvwxxhwhwwxwwwwxxxhwxwgwwwwwwvwwwxwhxgxxxxwwwxgwgwwxwgxwxwxvwggwgwwxwwwwgvggxxwwxxvwxfwwxxxwxwwwxwwwxxwwgxxwghvwwxwxwwgwwgxhwwgwxwwwwwwxhwwwxwghgwwxwwgwwxgwwwxwwwxwwgwwwwxwwwvwxvwxhxwxwxwwfxxwxwxvwxxhxxwxxxxwwwwvwvvxhwwxxguxvwvfwfvhvwwwvxwwfwwwwwwwgvwgfwxwfgwvwwwwvgwWuwwwwwgvwwvwvxWuwvvwwwxxwwwwvvwwWwuxwwwwwwvxwxxgwgvwwgvwwxwwxwwwwwwwwwvwxwgUewfvfgvgwwwwwgvfgwgwwxxwwxxwwwwwwwwgwwwvwgwxvwxxhwwvwxwwwwwxwxwxxvwxwxwwxxxxgvvxw6SvgwfvwvfwgggvvwwfwwwvvwwUvuwWvuwvgwwwvvgvxwgvwwwghvwwwwfwvwwwwwwwwfwwwwwgwwgwgxwwwwgwgvwwhgwvwwxgghffvvwWxvUUwwwwwgwfgwvxwvfwwwwgvwgxwwgEfdfvwgWvgwxwwvwwwvggvwwwwxwwwvwwwwwxwwvwwwxxgwgxvwxwwwwgvwwwwwxwxwwggxxwxwwwgwvwwgwvwgvwvwwwwwwgwwwwwwxxwwvwwgvxwwwxwxxxwwwwwwwxwwxwwwwxwwvwxwwgwxwxwvxxwwwwwwvXwuwwxvxgvvwwxwgwwxwwwggvvwvwvhhwxwgvvwxxxwfgwfwwwwxgwwvwxhwvxwwwxxxwxgvwwxwxwwhwgxvxvgvwwwVvegwwfwwxwwwwxwxgfhwxwwgfwwxwwwxwwxwxvfwvvxwwwwvxwhwxxwxwxwwwwhwxgwxgxwwwgwvwxwwwfgwvwwvwwwxwwwvwxxwxwxwwwgwwwwwwwxwxgwwxxwgwwvwwwxwfvwwwwwxwgvgwvwxhwwwwvwhxwxwwwvwfwvwwwwvvwvggvfvwwwwwgvggvuxwvggwfvwgvwffvvvegfwwxgvwwxvvWgwvxgVuwxwwffvxxvfwgwwvwwwwwvwwwxvfwvwwvvwwwxxwgwxwvxggwgefvwwvwxxwwgwwwwwwwxfvvwwwwwxgugxvgwggugxwwwwxxxgvwgxwxxfwwvwxxwwwxxgwvgwvwxfgvfwvxwvvxwwwvvwwwffVvwvvwvgvwwxxVvuwgwgfgwwwxwwwwgvwxgwfuxgvwwwgvhwgfvgXVfvuwwwwwwxwwwgvxxxwwwgxxfvvfvwfxwxgvugxvgWwwwwxwxwwvxwgwwwxxwvgwwxxwxxwgwhfwwxwxwwgfxhgxxwwwwwxxwxwwwxwwxxwwvwwwxvwwfugwvvwwxwwwxwwwxwewwwwwxxxgggugwwwwgvvfvwxvwwvwxwwwwwwxwwxwwwwvwwwxgwxgvwwgwwwvwwgwwwwxwgwwxwxxwxxwvxwhxxgvwwxxwxwgwwxwxwgxvwxwgvwvgvugwxxgwwwvgvwxxwwfwxwxwxwgfvwxxxxwwwxvgwgvwxwwwwwhhfwwxxwxxxwxwxxxxxwwwxvwwwvwwxxwxxhwwxxxxwxxwwvwxxwxwwwwxwwxxwxxxwxxxwwxwwxgvxwWvwGwvtgfWvxwwwwuxwfuuwWwxvvwfvuwuwfVffUvvwxwfwgwwgthugwwwWuwwwwwwwwgwwgufgwxfwxwwgvwwwxwwxxvwxxxggwvxwffwVxvfhwfgVwffvvwwwvggVwfuvxgvwwwwfvgxwvhwwhxwwwwffvvwgwwwxgxgvxxxwwwgxwWWwwWgwwwxWhfwxxGgXggwwgwvfwxWwvxguwfvggVwwvgvvVwggUwfwfvfgggfwxwwffvggwgVvvxfwwvgggfxwwwxXwfwxwwwhxwwhwgwvwgxwwxxwgxwfvgwxwxxhvVwfvwWwwfgvggffvwwGwxwwwwwwwfvwvwXwwwxxvwwxwvwhwwxxwgwwwwwgwwxxwwwxwwwgvwxxwxxxxwwwvxxwgxwhgwxxWfhuwwvvwvwvwweuuwwwvxwgwvvwvwvvvxxvwgvwwwwxxxwwwgwuwfvwwWvvwxwgwxwwhggvwwhwwxgwwwxxxWwhwxwvwwwfuvvffvgwxgvUvwwwwgwwwgxwhVfvfwwxxgwhvggggggXgwhfhxvwvxxhvwxwgxxuwxhfwwwgwwxvwxvxxhwwhwxgwhvwXvxwxgfwvxwvwwexwgfwwwwwwvxxwxxxwxwwxxxwxvxhwwwwxvwxxwxggxwwxwwwxgxxwxvxxwxwxwxwfvvxwwxxxxwxwwvwgxxwwvxxxwwhwxwgwwxhwxxwxwwxwvxwxxwwvxwvwwwxxwwxwgxwwuvwxvvgvwgvwwwwxwwwwwvwwxhwwxwwwwwwvwhhvgwvwvwwwwwvhxwvxwgwwewwwxxwwxwwvwgufvwwwVvwgvvwvwfxxxwwwwwwxvgugwwwwWwwxwwwxgwxfvhgwwwwfwwvwwgvwwxwgwwwwwxhxwwuvwwwwwwvwxxwxwwvxvwwvvwvwwwgxwxxwwwxwwxwwxxwwxhxxgvfwvvWwwxgvwxwwvwgwwwwwwwwvxwwxwxvwvwwxwvwwvxxxxfxwwwxvxwwgugwvgwvgwwvxwwxxxwvwxxxxhufvwwxwwwwxxxwwwxxxxxggfwwwwwgwwfxwwxuwxxwxvxxxwxvxxgwvwuwxxxwwhxxgwgggwwgwgwwwvwwvxwwwwxvwwxxvvwwgwxwxxxxwwwwxxxxxxxxwxxgwvwxwwuwwxwvvwxvwxwwxxwhwwwxxxxxxwwxuevxwvwvvwwwwwewxvwgvwwvwwwwwwwwwwwwwxwxxxvwvwgvvwwwfvvwxvgvxfwgwxvwwvwwxgwvwuwhxwevwwwWugvwvxvgwvwfvwwwgwwwwxvxwxwxwvwxwxxVugwwwgwwwwxxgvwwxuvwxgxxwwxxvwwwwwvwvvwwvuwwvVvwwwxxvvgwwvwfvvgwwvwwgwwwwwwwwgwxxevwwxxvwwuwwwxxwxgwwxxxwvwwwxwxwxhwvhxwyVvgwfuvfvxwvfvwwvwwwxxwwwWwwxvgxxwxwwxvgwxxxwwxwewvwwwwwgwwwxxwwvvwxgxwxxxwwwxwwwwwwgVufgxwwvvwwvwxwvwwwxwxwwwwxwwWufwwwwwvwwwwxwxxxxwwvxwwwwxwxxwvwwwwwwwwwwwgwwxwwwwxwggwxxxfwwwwwgwfxxvwxxwvxwxwxxxxvgWwvwWwwwwxwgwggxwwwwwxvxwwxxvwwxwxxvwwvwxxvxwwufwxxwhxxwxxwxhwwxxwwghvwwwwggwvwwwfxwwwwwwxvwwwxwwwwxxwwwxwxxwwxxxxxwwxxxuwwwwwfwwfwwvggwfvfwxfhvwfwwgfwwwwwvwwwxvvwvwgwxxwxwxgwgfvewxwguxuwwwfwwvwxwxwxvxgwxwvxwwxwwwwxhhhwwvwwwfgwvwwvwwWwfxwfwgxwwwwwwgvwxwwwwwxwxwwxxxhgvwggxwfwxwwxwgwxxxxxvxxwwwvwwxxxxwwxxxxxxgfwvfwUwgvguwewfwfVwwwvgxvwwwwxxwwwwwwwvwwwvwvxwwxwwwwxxwwffwwvwgwfwwxgwwwvwwwxxxwwhwxxxgxwwxwwwxxwwwxxxwhwhwwvwWwVwvwffvxwwwxVwvgwwwwwgwwxwxwwwxwfwwwxxwxxxxgwwwfvwwwwwwwvwwwwxxxxwwxwxxwxwwwwwxwhxwhxxxgwvfwwfvfgwwwvwfxgwwwvxxwxwwwwwvxgwxxxxwwgwxvhwwvvwgwwxwxwwxwhwxxxwxxxxhwvxxxxxwwxxvwxvgvwwwvvgwfxwwxwvwwxxxwxxxxvwwwxxxxxxxxhgwxxwvvwxxwwwwwgwvwvwhhwxxvxxxxwwxxwxxxxgwwxwvgvwwgwwwfvwfxvwggxwxgwxwwhwxxxwwxwxwgwxwxxxwxwxgwxwvvwwwwwxwwwwwwwwghwxgxwxxxwwxwwwxxxxxwwxwwvvxvxvwwwwwwwghwwxxwwxwwxwwxxwwwxwxxxwwwwwwxwwgwwxwwwwgxwwwxxxwwxvwgwwxwhxvxxfvwwwwwxxvvwvvhvvwwugwwxwwwvwwgwwgvvwgvwxgwvvvvgxvwvvvfwwwwwvgxvxxfwwwvvxwxwgdVwwwwwwwxwwwwwwfwwxwxgtVvwwwxxxwwxwwvgxvfvvxwxwxxxwvwwwwvwvwwxwvgwwgwgvvhxxwwfwwwwwxxxwxffwxwvwxwwwxwfwwwwwhvgxxxgwfwxwwwxxwvgwwwvvvwxwxxwwvwxxhxxxffffwwwwvwwxffwwwugwwxwgxgvuxgwxwxxvwwgwwwxxwwvgvwwugwvwxxwxwwxxhwxxxxxvxwwwwwxxxwwwhwwvvwwwwwgtVwwxwwvwgxxgtVwwwwwvhwwxwxwxyxxxgvwfwwxxxwwwwwwhvvwvxxwxvwxxwxgwwwwxxwxxvgwwxwwxwvfwwwwwuwfwgvwgxxwvgwxwwwwwwwxwwxfgwwugwwxwhwxxwwwxwxhxwxgxwwxvwwwwwvwxxwwxxxxwxvxwvwxwxwwxvwxwxwxxwxwvwwwwwgxwdwgwwvwwwvfvvfvwwwvuwwwxvvwwwvwwvvvwwvwxwwwwxxwvvwwwsVwwuwvwwwwuvgwvwwwwwwwvwwwuwvwwwvuwwwwvwwvxfwvvvwgfgevueefvguwwwwfwwfwwwvwgfwfwgvwhfgwvxvxwgwwgwwevvvwvwwvwXwwwwwwxwxgguwwwvwwxwwxxvwxvwxxhfgfwgfwwwffwwwwgcVggwwwffwwwwwvwwwvugwwwvvwwwxguvwwwvgwwwwvwwxgwwwxxgvxgwgwggwwwwgxxvwxwvwhxwwwwxvvwwwwgwwhxwhwvwvwwwueefwwvvvvwwwgwvwWwwwfwtwuvwuwwxwxwwwvfwvvvvwxwwwwwwwgwwwwwvwwwwwwwwgwwwxxfwvvxvwvgVwwvwwwwwwwwwvwuvgwwwwwWvwvwwwvwvvvvwvvhxwgwwwxxwwxxwwwvvwWwvwxxgwwwwwwwwwwwhxvxwwwxwwxhwwxvwwfwwwwwgwwwwwwwwwvvxwwwwfxgwgvgwwgggxxvfwwxwwwwxxxxxxxwwwxwwxxvvwxwxxwxwwghvwwwwwwwwwwwwfwwwwwvwwwvwvvvvwwwwwwhxhwxwwwxwxwwwwwgwwwwvxwwvwwwghxwgwwxxgwxwwwxvxwgxwwwwgxxwwwvwxgwwwwwwwvwxvwwxgwwwwxwgwxxwwwwxwgxxwxxvvwwxhxwwwwwwwwwwxwwwvwggwgvvvwgvwwwxhvwwwvwwgwwgvfwwwwwwfwgvwwwwwxwvwwgvwvwfdVvwwgvxxgwvwvwwwwwwwdVfwwxwwvwvwwxwwwwvwwwwwwgvfwwwfwwgwvgfwwxwwgvvvwwfwwwwgwwxxwwwxwwvwugvxwwwwxxxxxwxwxxwwwgwxwxxwxxwxfwvwgvgwwfwugwgffwwfwvdUvwxvvgfWfwegwxwwwxdVfwgwgfwgwwwhwwwwgvvwwxwwfxhXxwwWxxxvvgwwgwwxwwxwhhwwwhxxhxwxwfgfVwvufvgvgvwUfvghvvfvvwwxvgwgwwwxwwwwgxgggwwWgxwwfwwfgwhwwgwwwwwwwxhwhxwwwwgwwxwhwwxhvwwwwwwwwvwvwwwvwwhwvwwhvfwwfwwwxxxxxwvwugvwvwwwwxwxwwxwxxxxxywwxwxwgwwwxxxwwwxxfgxwwwwxvwwxxwwxwghxgwwwxxwwxwxhhxxxxxwwwxxgwwxxwxwfwwgwwwwfxvwefvvvvwgwwgwwfgvxwxvwxwwwwwhwxxwxwwwwffxwwwwwhxxxwvgxhwwvhvwvwxxxwWhvwxxwwxhwwwgwwwxwwvwwwwwwwhgwwvgwwxwwwwhhwxwxwhwfvvvwewxxvxxwxwwwwyxwwwvwxxvwwxhxwvfwvwvvwxwxvwvwvwfxwgxvwwvwwwfhvwwwggfxvwwwwwwfxwxxwxwwwuvwwfgwvwvwgwfwxvwwwgwwvvwwwhxwwxgwxxwxfvwgvvwvwgwvwwwxfgvwwwwvfwwvwwwfvgvwwxwwxwwwxvvwwwgwwgxvvwvwvgwwxhwwwwwxxwwwvwwhwxxxxwvxwwdwwffvvvgwwwvxfUvwhwfvwwgxwvggfwvwwvvgwxxgvvwwwwxvwwvwxgGgvwgwgwwwwWfuwwxxwvwwvvwwggxwxwwgwxwwwwxwvxhwvfvwfvgfgvwvggwfvvvwwgfgfwwgggffvwvwuwvwvwwwxvvWggwwWgwvwxwwwwvwxvgwwvxwwwwhwxwvwxggwgvxvxxWwwxvwwwxwhwxxwwvwwwhvvwwwvwwwwwxggwwgxfxwvxwvfwvvgxwxwwwwwwwwxxxwxxwvwvwwgwxhwvxwxxwhwwvwwvwwxxwxxwxwgxxxvxwxxwwfwwwwhxwxwxhwwvwwxwvwwwwxxvwwxwxffvwwxwwwwwwvwxvxgwgfwwxxwxxxwwwwwxwxwwwwgwfxwwvwwgwwwxwgxxxxxwxxwwwwxwxwwwwwxwvvvxwxhxwvwwvwwwwgvwwxxxwwwwvvxgwwxxwwwwwxxwxxwfwxxxwwwfxxwwxxxwxxwxxwxxxwwwwfxwhwwwwwwwwxwxwxwwvwwxwwwwxwwwwwxwwwxxwwwxxxwxfwwwxxxxwwwwwfwwwvwwwwwfxwwvxwxwwxxxwfwwwwfwwwxwwfwxwxxwxwwwvwfwwvxwxwwvwwwwxxwwvxwvwwwwwxxwxhwwwwxxwwwwxwxwyxwwxxwwxwxxxwwxxxxxxwwwwwwwwwwvwxwwxxwwwxvxxxwxwxxxwxxwwxxxwfxfwwwxxxwwxxwxwxxwxwwwwxwwvwwxwwwxxwxxwxwxvxxxxxwxwxwfwxwwvwwxvxxwwwxxxxwvwxxwxwxwxwxwwwwwxwwwwxxwxxwxxwxxxxxxxwxwwxxxxxxwxxwwxxwxxxwxxxxuxvxwwwgxvvwwhvggwvwvwwwgwwwwvwwWwwwwwwwxvwwwwwgvwvvvvwgvxxwxvwvwwwwwgvwwxwwwwwwxwwwwxwwwwhvwwgwgvwVfffwgwgfwwwgggwvxfvWfwgvwxwwwwwvgvwgxvwwwwvgwggwwxxxggwgxwxxwwwxxxvgwwhwwwfwgwwwvffgwwwvwvwxwggwwwwxwxgvwxwwwwxxgwwwwwxwuvgxxwxwwwwxxxwwwwxxwvuwhxwxhxxgxwxxxxxxgxxxwgfwwwwfgwxwxffvgwwgwwwwwwgwvxwvwvwvxxwwxxxxvewggwwxxxgwwwwxgwwwxwxxxxwwwwggwxxxxxxggwhxwwwwwfwwggxwxwxvxxwwwxxxwwvgwwxvxvwwxwggwxxxwxxxxwxwxxwxxwxgwgwwwxwgwgfvwwvwxxgfwxwxvxwwwxxxgxxxxwwwwwwwwxxhwwxwxxwxwwwwwwwxvhgwvwwxvwwgwxwwxxxxwxxxxxxuffgxxxxwxwvhxxwwwwxwwxxwxxgxhwxxxwwwxxwwwwvwwxxxwxwxxwwxwwwxwxwxwxwwxwwxwwxxxxwxxwxxxvvwvvwwwwwwwwwxwwxwwvewwvwuvgwwwxwfxxwxwwwxwvugwvvvxvwxwxxgvvvwwwWhvwvwwwevwwwffwvwvwwwvfvgwwxwgufuewwwxwgwgxxgufgwwxvvwwwxxvggxwwwwwxxxfwwwwgvgwwwgfwwwwwwfvvuvgwwwwwxvvwxwwwvwwwgwwxxgwuwxxwxywfgvvwwwxxwxxggVvfvvwfwvxwgwvxwwvwwxguvwvwwvwvwxwwwfvwwwwfwwwwwxxxxwvxwxxxxwxwwvwvvvxwxwwwwwwwhwfufwwxxgufgwggwwwxxwxxwxxxgvvvvwvxgxvwwxxgxvvwxwwwvWhwfxwwwwhxxwwxwxwgwfwwvVwxxwwxwvxgwvwggwxxwwwwvwwxxwwwxxwwwxwxxxfvfxvwgwxxxwwwxwwxxxxxxxxxwxxegguefwvgvvvvggwfvgwgfwwwwvwVvvwwwvVwgfwvwgwwwwvgwwwfVwwvugvwvvxwwwwxhwwwgvefwgwwvvwwwufwvgvwwwxwwwvvVgfvwfvfvvWwvfwwwxfgvvfwwwgwwwwwwxxwxwggevvgvwwgwwwwwwwxwvwwvxxxwwxwxxwwuvuwvvwgveefvwFVwvwwwufvwgwvWvefuvvwfuvwwwwwVvwwwvvhfgWvwgwwvvwwwvvwgvwHwwxwwxhxwXhwfvgvwgwwhwgfwvvxXWwhhwhwxfWVduewVfvwvwwfvwwgwvwWwggxGvwvWfvwwwvxwfvggwwwwwggwhxwfvwWfwgwxxxwwwwwxxwxxwwwxwwwwxwgxxwwvwwvwvfvuwwvWwwfvwwwwwxxxwwfvxxvwwwwxwgwwewvwwwwhwwwgwwwgxxwwxxwwxxxwxxxxxwxvwwWvwwxwwwwgwxwwxxxxxxwwwwvwhwxwwwgxxxxxvwvwwxhwwwwwwxxwxxwxxxhhxhxfvvwfwwvvvwwwwwUvvxgvwwfgwwwgwwxxwwwxgxxwxwhxwxvuvwgwWwxwwwwuvwHWvhwxhxwwhhwxwWwwxxxwxxxWwwvfgvwwwwgwwwwwgwxwxwwwwwwxwwvhwwwgxwwwwwvvwxwxgfxwxwhwwwxxvxwwwwwwxxxwwwgvwwwwxwwxwwwxwwwwwwwwwwxxwwvwwwwwwxxwxwxwwwxwxwxwwwwwxwwvwwwwxwxwwwwwwxxwwwwwwwxxwxwwwxwwhwxxwxxxxwwwxxwwxwwwxwwwwfwwwhgwwfwwxgxgwwwwgggwwxxxwwwwwvwxvwgxxhgwwvwwwxxgxxxxhxxwwxxwxxxwxxxwxxhwxxxggwwwwwwwwwwgwwwxxwwwwwwxxwwwxxxxwwxxwxwwxxwwxwwxxxhxxxwxgwxxxxxwwwwwwwwxxwwxxwxxwxwxxwxxxxwwxwwwwwwwwxxxxwxxwxxxxwyxxxwwwwxwwwxxxxxxxwwwfwxxxwxwxwhwwxxxxxxwxwwxwxxhhxwxxxwxxxxwwxwwwwwxwhwxhxxxxxxxxxxxxwwxxwxwwxxxxxwvwwgwwwwvwfwwxgwwvvxwwxxwwwvwwwxvwxwwvvwxwgwhwxxxxfwvvvvvwwwxxwxwgwxwwvwxwwvwxwwwvxxxwwfwwxwxxwvwwgxvwwwwwwwgwwxxfwwwwxxwwwwwwvvwwvxwwwvxxfwxwwwwwwgwwwwwxwfgwxxwwwgwwvgwxwgvwgwwwwhwwwwxwxxwxxxxvwxgwwxxxwwwwwxwxxwhwvxwwwvwxxffwwwwxvxwwwvvxvhvwxgxwwxwgwwxghwwvwwwvwxwwxxxwxwwxxxxwwwvwwwwwwwwwwwwxwwxvxwwwwwwxxxwwwwxxxwvxxxxxvwgwwxwvwwwxwvwgxwwwwxxxxvwvgxxxxxxxggwxxxwwgwwwwxxwwwwxxwxxxwwxxwwvwwxxxwwwwwxwxxxwxxwxxxxwwwxwwxwxxxwxxxwxwxwxxwxxxxwxxxxxxxwxwxgxvwvwvvvwvwuwwgwvwwwwwwvwwwvvwvwwvvwwwwwhgvhuvhvwwXvwwhxwwwxxgvwwwwwwxwxxwggxwxxwwuvvvwfuvwgfvwfxxvwwfvvwwwwwfuwvwwgxhvvxgwwwxwwuxgxwxvvwxxvhxwwxwxwwhwwwwwwvwvvwwxwevwwgvwuwwwwwvvvvvwwwwvwgwwwwvwwwwwgvwwxxwwgvvvwwwwxwwwwxwxwwxwwvwgwxvxwxxgwxwvxvugxfvwwwwvvvwvhvwgwgwvwwgwvwwwwxwwfvwwwwvwggxxwxwxxvwxwwxwwxwxwwxxwwxwwvwxwvwwgvwwwwwwvxxwxxxgxxwwuxxxxxwxxwxwxwxhxwxxwwhxxfvvvfwwwwxgwvxwwvvhwwwxxxxvwxhxxvvwwwwxxxvxwwxxwxxxxwxxxwwvguvvwwxwxxxwvvwxwxxxxwxwvxxxxxxwxxxxxwwxxxwvwxwxwxxwxwxwxxhwwxxwxxxwxvxxxxxxxugwgvgwgwfwwwvvwwxwwwvwwvwwgvwvvvwwgwuwffwvwgwgwxgxwwwwxgwvwwdfvwwwfwxggxwvvxvvwgvwwwwggwwvwwwxwwwvvwgvfwwwgvuwvwwgvwwudfWwwwwwvuvwwvwxwvvwgwgwgwgxwwvwwwwvwwvwvvwvwwvwwgwgxhgwwwwwwwwwxwwxwxxxxwwvgWwwvvgWvuvwwwfvgwfwwwvgwwwggwdfwwvwwvwvxwwwwVvgfwfgvwwwvwwwwwgvwwwwwwwwxwgfgghwfxwwxwvwwgWwwvwWwwwuwgwgwwgxxxvwwwgxwgfwvefuwwwvxwedfWvfwwvwwwvwxvuwvwwgxwwvvgggvwwxwwwxvwgwwxwwvwwwwwwgggwxxxwwwxwwgwxuwwwwvwwgvwxxxxwvwwxwwxwvvwwwwvwgxgwwwwgwxvxwxxwwwvwwwwfwwxwxwwwwxwvgwwwwxxxxhwxhwxwwvxwxxwwxxxxxhxwwwwwwwgvwwwwwvvwWwgxxwwwgwxgxwxwxxwwhwvwwwwwwwxwwxxxwwxxxhwwxwwxwwwxhxxwxwxwxxwwwvuwgwwwwgvwxvxxwvwxwwwwwxxwxwwwgwgwhxwxwggxxwhxxwwwwwgwgwwwxwwxwxwxwwhwxhwxwxxxxwwvwwwwxxwwgwwwwxwwxxvwwwxxxwxwhwwxxwwwwwgwxhxxwxxxwxwxwvwwxxwuwwvwgwwwwwwwxwxxvwwvwwwwfvvwwfvwwwwwwwwxwhgevwgxwvwxtgwwxwvxwhwvwwxwwwwwxggxwxwxwwwggvwwfvvwvwwwWwwvvwgvvvwwweefggwwxwwwggvwxwgwvwwwxwgwwgwwgvhwwxhwxwxvgfwgtfvvwwxvfwwgevwwgvvwxwwxwvwwgwwwwwwxwwwwxwwwwxhwxwxwwwwgfwwxwwwxxwgwwxwvwxwwxwwwvwwwxwxwwhhwwxwxxwwwvfwVvvwwggvwhvvwwwwweuffwwwgvwxwvwvwgwvxxwwxwxwwvvwvvvwwwxwgwxgwxvxxxwxxxwwwwxwxxxxxxvwwvvwwwwgwwvwvvwwxxwwgwwwgwxwhvxxwwvvwxwwxhxwhwxxwxwxxxwwwxffwwwwwwwwwwwxwwxxvvvvwwwwgxxvxwwwxwwvxwwxxwwxwxxwxxxxxxxwwwwxfvwwwxxwwxxhwxwwxhwvxwxwxxxxwxxwwghwwxwwxxwwwhxxxxxwwwxwgwwwxwwwwwxwxwwwwwgwxxxwxwwwxxxxxwxwwxxxwxxxwxxxxwxxvwwwgvwwwwggWvfwwwgvwgwgvvwvhwwwvWwwwvwvwfvwwhgwxwvwgxwfwwufwwgwhxxefwwgwgvwvvwwwvxvxvvvxfvgxxxvgwgwwvgwvwfwguevvwgvxwwvwfwwwwvwwvwwwwwxwxxwgvvvwwxvwwgvgvwwwwwxxxwxwgxwxwxwwwxxfvvwWevvvWvfwvgwwfwwgvvvwxwwwwwfVufwgvvwwwgvefwwgvwgwwgwxxwwwwwwwxxvwvxwgwwwxhgvgwhhfvwvxwwwwhxxwxvgWhxvxxwxwfgfvvvwWvuwwweuvwgvwwwgfvxwfvvwfwwvwwvxwggvgwwwwwgwwwwwegvvwwfwwwwwwxgvwfwxwwxxwwxxxwwwwxxvgwgggwwwvgvewgwwwwxxwwvgvxwxwxxwwvvwwwgvwwvvwwvvwxxxwxxxwxwxwvwvwwwvwxgwvxwxxxwwwwwvwxxwwwwwwwxwxwwwvvwgwxwxwwxxxxxwxwwxwxxxxwwwxxwxwwvgfvgwxvwfwwwgfvwxwxwwvwwwwxwwwxwwwwxxxevwxvfwxgvvgxXhexxwxxxxxvwxwxhwgvwwwxxwwwwvgwwxxxwwxwwxvwwwxwwxxxxwvwwxgxwwwwxwxwxxxxwwxwxxwxtwwwvwwvwwwvwwvwwgwxgvwefwvwwvwfvwvwfewwVwevexwxwwwwgwewwwdvWwxxgwwggvwxxguvwwgvfvgxuwwwwvvxgxwhwvwxxxwxhgfvwwxvwgfvwgfvgwfgwxUwvxgwgvxWgwfvvwvvFvvwwwwwxghxwwwvgwwWvgwfwwwxvwwwhgwxhwxxwwfvgvwgxxxxwxwwxxhvwwhvwwwwgggwvwwvvvfgfgwggvegfgwfgggfvfwwgfwwwwvfvgwWffvwwwwwwwwwwggwggUvwxhwwvwfhwgxgxwwwwXwgwggxhwwgwhwxgggfvxwgwwxxwwwwvxwwgwwwfwwggwVvggWgggwwxgwgwwfvwhwwwgxwvxwgwvxgghwwwwhwwfggxwwfwxxxwwwgwwwggvxxxwwwwvwxwwxvvxwxxwgwxwwvvwvwwwvvvvwfwwvxwwwxgfvwwvwwUvwxwvxwwxwxxxwxwTvWwvxwvxfwxwvfwxgxhwfwxwwxxxxxvhxwgvxvwvwwwvxgvuxghwwwxwgwwxwwwwwwwwfhvgxhxwxwxxvwwgwwwxwvgxxwwuxxxXwxxwxwwwwwxxvxwxxwxxwgwwwwwfwwwfwwwwUwgxgvvgwwwwwhfwxxgwwwwwxxwxwwgxwUwvxwwwwwxxwxwwwxhxwxhwwxxwxwwxxxwwxxxwwwxwxvxwxwwxxwxhwwxxwxxxxggwwwxxwwxwxwvwxhxwwxwwxwwwwxwwxxxxxuxgxwwvwwwwwggvwwwwwxgwxhwwwwwvwwggwwxwwxwwwwwwwuxwggxwwwxxwxwxwvvwvxwwxwhxxvwfvuwwffwfwwwwwgwwwxwvwuwwwxwwvxwxwxwwxwwgwwwwwxwwwwxwxxwxwwvwxxxxxwfwvwvWfvvgwvgxgwwwvgvwwwwfwwvwvwwvxwxvwwwxxwxwvwvgwgwvwhwwwwwwxvwxwwuvgwwwwxxwwwwxwxxxxwwvffvewfwvwwxwwxwwwwxxwgwwwxwwwwxxxxxxxxuvgvggvxxwwwxwxxwxxwvxwxxwxxxxxvvwwfwwxwwwxwwwxxxwwwwxwwxwxwwxxvwwwwwwxxxxxxxwwwwvhxxwwfwvgWggwwwwxhwwwxxwxvxwwwwwxwxxxxwxxxwvwwxwxxwwwwwxwwwxwxxxxxxwwwwwwwwwxwxxwwwxxwwwwwwwxxwwwwwxvuwgwwxxwxgwwwxwwxwwxxxwwvwwxxwxwwxgxxwhvwxwxxxxwxxwwwwwwvxwxxxxxxwwwxuwvvvvwwuvvwwwwwvwwwvvwwwwwxwwwwwvwvwwwvvwwwvwwxvwwvwwwgwwwxwwvwwdfuwwxvxwxxxwwggvvwwwvvvgvwwwvwvxvvwvwwvduVgxwwwwfwwwwxxwwvwvvwvfwwwvxwwwvxwwwwwwhxxvwwxwxxxwwggwfgvfdfwgvvwwgwwgvvvwwvwwgfwvwgwwwwwvvwwwwwvwwwwwwwwwwwwwwgggxwvwxxghvxxxxwwwwxvwgwvwxxwwwxxgvvxxxxwwgduVfvvwwwgfvuwfvvhwxwwwxvwwwwgxwwgwvwwxwwwwwwxvwvxwwwwwxwwwwxvwwwxxgwwxwwvwwwggvwwwvgfwwwwwxwwwvwwvxxugwwxxxwvwwhwwwwwxwwxxwwhwwgxxgxxxxxwwwgvwwwwwvxwwgxwXwxxxxevwwhwxxxwxxwwxwxwwwvxxxwgvxwxhwwxgwxwywvwwwvgwwwwxxugwxxwwwxvwwwxxwwwwwwwxxwwgwhwwwxggxwxxxwhwxwfwxwxwwwxxxvvwxxwwvwwwwwwwwwxhxxxxwxxxwxwwwwwwxxwwxwwwwxwwwvwwxgwgxwVwfwxwxwxgwgwwWwwwgwvwxgwwvwvggvgwgVfvgvxuxwwgggwwwgwwwgwvwwwuvwwgwvwxwwwwwwwgwfwvwwgwxwwgwwwgwvxwxvvwwvwxwwwwxxwuxxwwwwvwwwwwxvwwxwxxxwxxxxxwxxvuvvwgwfVffugfggfVvfwvwvwwguwffevfvgwwwxfvfwwgvwwxxwgfxvwwwvWVfxwuwfwgwhhwxwvwxxwfVffwwvwwggvhxxwwxwfwvUgegwwvuwfVvewwgeguwhxvvwwvuwgxwxxwwvguvfwwgwwfwfwfwgwewvwxvfwwgvwxxgwwwxvwxvwwxxwgwxxvxwxvvgwWwgwwwxhwgwxWgwwwwwwxxxxgwgwwwwwwgwxxxwwvxwxxhxxxxxwwwvwwuwxwwwwxxxwwwwxwxxwvwxwhwxhxxxwwwxwxxvxwxxwxxwxxwxxxxwvwwxxxxxwWwgvfwfgwwwxgwvwxwvxvxwxxwvxwwxvwxwwwxxxxwxVgwxvxwwwgvxxxwxwwvxxwxfxwwwwxxwwwxwvwvwuwwwxxwwvwwwwwxgwvwgxwxwvwwxxxwwwwxxvxwwwvxxxvwwwwwwfgwwwhvgvgvvgvvvwvvwxwwwwgwvvwvwwxwxwvwwwwwxwwwwuewvwwgfwwwwwuewvwwwxwwvwvevgvwwwwwwwwwvvwvxxxxgvwvwvvxwwwwxxwwxhvwwwwxvvgwwwwxxxxxvwwvfvwWfeewvwfgwvvwfvwwwvguwwwuefwwwwwwwgvvxvwvwwwgxxvvgvvwfvgwwvwwwwwxwgwgxwwvvwwxwXxgwwwxhxwhgwyvfffuevwwgwhvWwvwvvewxxgvgVeuffvwwxxwwwgwwwwvwwxvxxfvvwwwwwxgxxwwvxwxwwgwwwxvwwxvwwxwwuwhwwwwxwxxxwwvwvvxwxxgwwwwwxvvgxfxwxwxxwxwwwxgwwxwxwxhwwggxwwwwxwwwwwxxxwxxxxxwxwxxwxxxwxwxwhwwxxwxxwwwwvvwfwgwwwwvwwvwxwwvwwwxvwvwxgwwxxxfvvxwwxwxwwxxxxwxwwgxwXhvxwxhxwgwxxxxhwwwfwxgwfgwwwwwxxxwxwwxwfxvxxwxwwwxwwwwhwwxxwwwwxwwwwwwwwwfwwxwvfwwvwxwwxxxxwwwwxwxwvfvwwhwwwwwxxwxvwwwwwwwwvwvwwwwvwvwwwvxvwwwxwwxwxxwwwwxxxwvwwwxwxwwvwwxvxwwwxwwwwwwwwwwxvwwwwwwwwwwxwwggwwwwvwxxwwxxwwxxxwwvwwwxwwwvxxxxwwwwwwwvwwwwwwwwwvwwwvvxxwwwwwwwxxwxxwwwwwxxxwwwvxwxwxxxxwwxwxwxwwxvvwwwxxxwwxxxxxwwxxxwwwwxxxwwwxxxvwwwxxxwwxwwwwxwxxxwxxxwwwwxwwxwxwwxwwxxxxwxxxwwwwwwxwwxwxxwwwxwwxwwxwxwwxwxwxxwewwwwwwgwvwfuvvwwxwgfwwfgvufgwwvwgwwvwwggwgvvwwgwwwwxwgwwwwvvwgwgwwwxxgvfwwxwgwwvwevfwvwgwfvvwwwxxwgwwxxhwvwvwggWwvwgfwvxwfgwfvvwVwvxvWhwgvwwgwwxwgwggfwgwwxwwwwwwwwvvvwxvwwwwxgwgxhegwwgxwwwwwhwwwwxxhxwwxxxwwgggwffvgwvvvfvwVfvgwwwwvwwxwvffffvffvevvwwfxwvfvfwgwwvfwvwvwwwwwwfwwwgwvwwvwvwxwwwvwvwxwgvwvwgwfwfxwwhvwxxwWfxgfxXxwhvvwvgwwvfgwwxwwwwfvvwgwfuwwxgwfgfwxvwwfgwfwwxfwgwggwxxwxwwwwvvwwwwwwwgxwwwwwgwxwewgxwwwgxvvwwwvwwwhhwgwgwxxwwwwxwvwwwwwggVwvwwfvwgxxgwgwvwwwwxxfwwxxxwwwxxhxwgwvvwvwwwxxwwhxxxvegwwwwwxwwwwxxvxwwgxwwwwwxwxxxwwgwxhwxXhxgwwwgwwwxwxwxxxxwwxgWxfxxwwgwxwwwwwwwwxvhxxxxwwxxxwxwhwwxwxgxxxwwwwwwgwwvgxwwwwfwwxgwwxwgfwwxxvggxwwggxwwxxxwwwgxxwwxfwgwwwvhxxgxxwwxxxwxxwxxwwxwxhxwxxxwwxwgxwvwxwwwxwwxwxwwwwxwwhxgwwwwvwwwxxwwwwwxwwwwxwxxwxxhxwxxwwvxwwxvwxxwxwwwwxwxwwwwwwwwxwwwxwxxxxwwwwgwvwwxwwwwwgwwxwwwwwwwwwwvxwgvwwwwxxxwxvwwxxwxwwwgxwwxgwwwxwwgwwwwwgwvgwwgwwxwwwwwwxxwwwxwwwwxwwwwwwwxwxxwwwxxwwwwwgvwxwwfvwwwwxwgvwwwwxvvwwxxwwwvwxwxvwwxxwwwwxxwxwwwxwxxwwggvvwxxgwwwwwvxxwwvwxwwxxwwxwwwwxxxxwvvwwwwwwxwxwwxxxwxwxwxwwwxxxwwwwwxgxwxxgwwxwvxwwxwxxwwwwwxwwwxxwxxwwwxwwxwwxwwxxwggwxwwwwwwxwxxwxxxxxwxwwwwwxwwwwxxxxwxwwxxvvwxwwwxxxwwxwxxvxwwxxwxwxxxwxwxwxxxxuwvvwwwffwwvwwwvwwwfvgwvvvwvwfwfufwvwgvvwwwvxwhwxvwwVxwfwwwxwffxwgwwwxwvvgwwwvvwwxxeggwvwwwvxWvuwufvwfwVvuwgwvvwgvxhwxwxgfufwwwwvgfwwxxwwwwwwwxvwgwgwwxwxfvvxwwwxwwxgvfwwxwxxhvxxwwwxhwxwvwvfxwvwggfwgvwggVwwwfwwwgguvwwvvvwwvxwgwwvgwvwwvwwxvwwvwwxwfgwgfwgwwwuwwwvwwxvxwghhvefwxvwxvwwhvgvwwxggvwxXvwxuwwfvvgfwvwgxwgfgwggfvwwwwwwwgwvwxwwvgwvxgwwwwwvgxxhwwwfvvwhwfwwvxhwwwwxxvxxhxwxxwwwwwxvwxwxxwwwxxwxwvwwwwxgwfvwwwwwgvvfwxhxwwwwwwxxwxhxwxxhwwwwvfwxeffxwvwxhwxwwwwxwxwxxwwxvgvxwxxxxgguwwwvwwggwwwwwwwxxxvwwwwwwxwwwwwxwgwvxwwwgvwxxwwggxwwxxwwxwxxhwxvwfvvwwxhwvvwgvwxwwwwvwwwwwwxxwxxwxxxxwwVvwwwwwwwwhvwwxxwxxwwgxwwxhwxhwxxwxxwwwxwxwwxxvgwwxxwwwxwxxxwwvvxxvxxxxvwwwxxxyxxuwfwwwwwvwwwxwUgwwwwwwggvfwwgwwvwvfVwvwwfxxxwxgxvugwvwwwwfvwwugwwxxxgvxwwwwwwwxgxhwxvvwhwfwwvfwwvgvwwwWvUwgwwvwwwgffWwvxwwwwxxfvwvwwXwhxwgxwwgwwxfxwwwgwwwxwwwwwxgxwxwxwhxwwxhWvwwwwhfUwWwgwuwwfwfwwwwwwvgvvvgvwwwvwwwfwvvwgwvwvwwwgwvwwwwwwgxwfwwwfwwwwvhfwwxxvxwwwwwgwwWwwwvhwwwhghwwwwhxwggwwwwfwwwUwgxwwwwfwwwwvwVwwvwwwwxwwwgvwxhwxgwwwxwwwvwWwwwxwwwfgwwuwwxwwwwxhxvwwwwwwwwwvxwwwwxwxwxgwxxhwwxwxxwWwwwwwwhwvvgwgwwgwxwwfgwwwxwwwwxwhxxxgwwxxevgwwxgwwxgxwwwxwxwxxxxxxwxgwfwwvwwwwwgwwvxwwgguwvwxXxwxwwhxwxhvxxxxvwwwxxxxxxxwxxwxwxvxwhxxwxxxwxwxwgxwvwwwwxwvxwhwgwwwwwxfwwxxwwwxxwxxxwxxwfwwxwwxwwwxxwyxxxgxxxxwxxwhwwwwwxxxxwxwwwwgvxwwxwxwxxxwwxxwxwxxwxwwxxwxxxwxxxxxxxvwwefvwUuvwuuwfvwxwfwwvfuwvwwwwwvwvgwvwwwgwwwwwwvwxvvwvevwwwwvwwwxwxwwwwwgwxwwwwwvwwwwwwwwxwwxwwgwwwwwvvWgvuxwwxxxwhvwvwwwwwxxxxxwxxwwwxgwwwwwwwhxxwxwwxxxxxwfuvvuVvUvwwwwfevwwgwVfvvwwwwgwwwwvwwwfwwvwwhwwwwxwvvwwwwgwwwwxgwxwwxwwxwwwwhwwwwxxxxxxwvgwwgwwvewvfvwwwwwwxwgvwwwwwwxxxxwxxxxxxwxgwxwhwwwwwwwwwwwxwxwwxxxwxxxwxwxxweuuwveuVvwuwvwxvwwxwwwwfufwwwwvvWufwvwwwwwwxwwxvxxvwvVvwffuvevvgwgwwwwwwwxwwhwgwvwvxxxwwxwhwwvwwwwwwwwwwvwxwwxwxxwwxxxxxxxxxxwwwvwwwwwwxxxwxvxwxwxxxxwwwwxwxwwxeuwwwwwvwwxwvwwwxgwwwwxxxVwwwfvxxwwxwxwxxwwxwwwwvwwwwwwxwwwwwxwwxwwgwwwwwwxwgwxwwvxwwwxwwwvwwxxxxwwwxxwxwxwxxwxxwwwwxxvwxxwxxwwxwwxwxxxwwxxwxwwxwwwwvvwuVegvvweuvfwvwvftguvVvgwvwgwwvwwwwvvvgWuwwwwvxwxwwvwvwfvgvwwgggwgwwwwwvvvgxgwgwwvwwvwwwhwgwghwhvwwVggvvwwgvwxffVwwwggwvwwwxwxwwwwxxwwwwwwwwwvwfwvwwwxwwwxwwwwgxhwwxxwxwweuvwvfvgdevvwfwwwEuvwwwffwvwvwvfvvwwwvgwgwxfvvuggwxggwxvvwfwxfwvwWxwwxwwwgwxxwwxwwwxxwhghxwwwwwwefvvwwgwwwwvxvvvughwggwwwxwwhwwwxwwwxwwxxxxwxwwwwwwxvhxxgxgwgxgwwwwwwxxwxxxxxwvwdutgvvgvvfvtvveugtvfwwvvvvgvvwwvgwxvvwwhxvxwwvffvvWvWfwtwfhueevWwgwgwwgwwwwwwwxwwhwWwwwvwwwwwwxwvgvwgwwwxxxxxwwwxwxwxvwvvwxwvwxwwvwxxwxwwwwfwgtvfVvuwvvxvvvvwvwwwwxgwwxxwxgwwxvgwgwvwxwwwvwvfvgwWwwwwwwwwwwgwwwhxwxwwwwgwgvwxwxvhwwwwwxwxwwfwwxwwwwwwxwgxwxxwwwxwwwvvxwwvwwxxxxwwwwwxwxtfvwwfwwFeefTffvgwvwxgvwgVevVefwfwwfffwwgxwVuevfwwwvwwxWvvxuwwuvwwwhwgvwwwvvwwwwxwwwfuwwwfxfvvhgwwxwwxwwwwwxvgVwwvggwgwffvggwwwwwxggwxwxwwwxwwwxxwwwwgwwxfxgvxwfvvwxwgxhwxxxxxxggvxxwfvvwgffvfUfvUdggwWwwwhhfwvgfgVwwxgvvvvvhvxwxwwwgvhvxwwxwwwgwwvwwgwfwxfwwwwxwxhwgvwxwvwwhxvxwxvwwwwwwxxxgwvxwwgUeugffvvwfgxhvhvwwwwxwwxxwwxxxxwxxxxwxfwxfvWwwwxvxxwxxwxxgggxxwvwwhxwxWuvweffUfFevwfGUVvvwgfVVwfwfwwwwwxwxwwwxwwwxwwxwwwwwxugWwwhgwxgvXgwffxxvwwwwggfgvxgvxwwxwxwwwwwXwwwhhxvgwwxwwwvwwwwwwwxxxgwxxxwxxxwxwxwwxxxwwwwwwwxhwwwvWfgvvvfefVwwvxgwfvwgwwwgwwxgfvwwxwwwxhvxxgwwxwwfvwgxxwwvwggvvfvgvxxwwwwxwvhwwxxwvxxgxhwxxgWwxwxwwxwvxxxwxxwxxxxwxwwwxxwxxwxxhwxgwxxxwhwxxxwxwwwvwwvfvwwwvvevwwwwwfgvvwweuwwfevwvwgwwuewvwwwxvgwwwvwwvwwwwvvvwxxxwwwwvgvwwwvwxwwwwvwwvfvwwwvxwwgvxwxwxxfvWwwgwgwxVwxhwxwwvwwwwwwwwwxwwwwxwwxxwxvevwvvvgvwwwufvwwwwwvwwwwUfvgwvgwwwwwwwwwwwwwvwwxxxwwwwxxxwxwwwwxxgxwvwwwwwwxxgwwwxxwfgvxwwwxwwwvwxgwwuvwvxvxxxvwwxxwwwwvwwwwxwwxwwwxwwxxxwwxwxwwwweuwvgvwfvWwwwxwUfvvwwwuvwxwfvwevvgwwvxxfwxfwwwvwwfewwwgwgwwwgwvwwwvxvwxevvgxxhgwgwxwwxwvwvwvwxwxgwwwwxxxxxwwxhxwwwxwwwgwwwxwwwwwwxxwwvxxgwwwxwwwwwxuewvwwVwxxwwwgwwvwwxwxfwwgwxwwwxwxxwwwwwwxwvhxwwwwwxxxwwxfwxwxwwxxxwwxwwwxvgwwwwxxwvwwwwwwwwwxwwwwwwxwwxxxxwwwvwwwwwxwwwwwxwtfwgwvwfwfwwwUfvfwvfevvTUwvwvwvvgwvvfwvvwffwwfwwwvgwwwwwgwfwwVfwvwgwwxwxwvwwwwwvvwvfwwwvxwwwwwwwwwgwwvwfvwwwvfwwfwvvwwwwwwvwwwgxwwwxxxvwwvwvwwxwwgwxwvwxxwwwwffwfwvwTUwvgwUvwvwwguwfwfwgfvwvwwwwwvwwggfwwfwhwvwwwwwwfwwxwwwwxwwwvwwwwwvwwxwwwxwwwwwwwvxxgvxxwwwvwwgwwxwfwfwXvxxxhxwxgwwwwwwwwxvwxxvxxwgwevxxwxxvxxwvvxxxwwvvvvwuwfwvwvgfwvvvwwwwwvwgfvfwwxwwwvwwwgfwwwwwvwwwxvvvwwwwwxwvwvwwwhwwwuwwwhwwwwxwwxxwwxvwwwxxxxxxxxwxxwgxwwwxwxxwxxvxxvvwvvwvguwfxwfuwwfwwwvxvwxwwuwwvgvxvgwvwxwxwwgxwwwxwxvwwxwwvwxxxgwxwwgxxxwwwwwwvxxwwxxxwvwgxgwwhxwxxwxxxwxxwwhxxxwxwwvwwgwWueuvgvvvdtwwgefeffvggwvwvvwwfvwwvwwwvwvwwwwfgwwwwxfvvwgwvggwxwvwvffwWxWfwwwwwwvwwwwwwxwwwwwgwxwwwwwwwxwvwewgwwwgwxwwwvwwgwwwwwwvfxxwxxwxxhwwwvwwxwwwwwwxvwwxwxwwwggwwwwwxvxxwVuwWuvfwwwwwWfgvFwdfegwvgwfwwwwwgwwwxwxwwwwxwxwgxvwgwggfwwwwwwWxVwhwwwwxvwwxwxwxwwwxxxxwxwwwwwwwwwvwgwwwwwxwxwvwwgxewwgxxwwgwxxxhgxxwwxhwwxwxwggxwwwwxhwwxxywxwwwwvvwuwwwfwvwwwxwVvwwgwggffgwwwxvwfwwxwxgvwvgvwWwwxxxwgwwwwxhvwwwwwwwwwgwxwxvwwxwwwwuvwwwwwwwwwwxhwgwxwwwwxxwwwwwxgvgxwwwxwxwvwwxxwwxhwxxwwwwxxxxwvwwwxwxxwxwxgxvxwwxgwwvgwvgwwwwgfwgxwwhwwwxwwggfgwxxwwwwwwwwggfwfxwwwwwxwwxxwwwxwxgwgwwgwxxhxxwxwxwwwxwxwwwxfgwwxvwxwwxwxvwxwxwxxwxwwwwwxwxwxvwxxxxwwwhxxwxwwgwxxwwuffvguvwesvwtWfwfvvwvwwwuUevfvvwdtvwvVevvggghwvwuffwwvwwgwwwwxgwvvvVeeweffffggvvxwgvwgwwwwVwVvgwwwwwwwwwwwwvwwwxwxwvvvwvvwvfvwffvgwwwwwvwvwvwvfwvvxxwxxxgvwwwwwxxxvxxvgwfvvwwwxwwxhwwxxwxwxwwvvwwxwxxwwxxxxwxxxhfuvwfFdvffgewvvwv6euffgffdgvugffgfwWvugvwgggvfwwvfvwgwghwwwwwhgxgwwxwvwxwvwwwwwxxwwwwgwvwvwwwxwwwwvwgxhwxvwxgvffwfvwvwwxwxguwvxxvwhwwxwwwwwxwgwwwhwxxvwxvwxwxhxxwgxwhxwxxwwwwxwwwwxwgwwwxwwwwxwwwVxvwxwxwwwvwwwwetvsfvvvgfwwvwtfvvevwVvuwwwwvgeUvevgwfwvgwwgwxwwwvggxwwgxfgfwfeuwvfwwgwfvwgwgwgwhwwwfwwwgWwxWxxwwwwwwxwwwwwxwwWvxwwwwwwwwfwhwxvwwxwwwwxwwwwgwwwwxwwxwwwwxvwxwwwxwwwwxwxwvxxxxxwxwxwgxxxwwggxvwwwuffffufvvgggxffuugWtwvggxwwwewvwvgwwvxwvwwwhwhwwxxwwwwwgxgwwwwvwvgwwwwwvwwxwvxxxxgwwwxxvwwwxwwvWwwwwwwuxhwgvwwwwwwxxwxxwxwwwxxwwwxwwwwwwwxxxwwwxhxwgXvxwwwwwwwgxxwwxgxwwwvwwwvwgxvwgwvwfwwgtVwvwwwfwwfffvgvwwhwgtVgvwfgwwwvffgwvwwwxvwwxwgwwvvvwwwwwvwwwhfwwwugwwvvwwwwwwwwwugwwwvwxwwhwgxwxxxwwvwvgxwwvvwxxwwwxxxwwwwwxxvxxvvwxwwxwxwxxgwwxwxwwwwxxuwwxxxfvwgvwgdVwwvgvgwwwfffwwwwxgtVwvhwwfwgvwwwwwxgwvwwwxvgwgwxwugxhwwxwwghwwxxwwvvvgwwwvvhwwwwwxwwxxxwwwwxxxxxxxxxxxxvwxxxwxxwgxxxxwxwvvwvvwwwfvwfwwvgwwgvvxwvwwhvvgwwvgwwvxwxwvvvfwwvxwwwxwvvvuxgwwwxwxvwvwxwxwxwvwwvwhvvwwwxxxwwxwxwxwwxyxxwwwxhxwwwwwxxxxwxxwwugwvgfwwffwxwwvwvwwgwwxgwxvwwwwwwxgxxwwwwxxvwxwxxxwvwxxwwxxxwxxwxwwwwwwwgwwxxwwxhxwxxxwxwxxxxxwxxxwwwxxwsfgwvwvwfVvgVuVwVfUfwwwwEfVfgvxVwvgvgevwvgvvffTvvwgfvvgwxfffwffffvgvfdhvfwwwwxhwvwwwwxfvewvfvwgwwwwwwvfwwfwwxwwwwggwxgwVegfvwxgfewwgwgwgwwwwfgvgxwwwwwvwwwwxwvwvxfgfwvwuwwwvwgvvwhxwwwwwwwxgwwwwwwwwwvxwxxwxxfvvwwwgeVfwvwfffgwwweSvWgwgwfgvwwwvwwwfwwvfggwwvwwgwwwwwxwwwxwvwwwxwhwwwwxwwwvwwwwwxgwvxwwwwwwwwxxvvwhxvvwxwgwwwgfwwxwvuwgvxvwewwwwwwwWxwwvwwxwuxwwwxxwxxwxwwwwwwwxxvgwwgxxwwwfwwwxwwwwhhwgvwxxxgvvgWwgvwvwwFf5vgvxVwvvwwfVevwvwgvwxwxgffgwxwxvgvvwwfvFWehfwwwwWuwwggfwwhggffwvwwgwxwwwwwwxwwwxwgwxwvwwwwwwVwwwwwwxgwwvwwxwwxxwwxwwgggwxxwwxxgwwxwxwwxwwgwxxwvwvwwxwwxxwxwfffvgxgwwvxfTvWhgwvwwwwgWvwwvvwwwwvwvxwgwhgwvwwwwwxwwxwwgxxwwwggWwxwxxWwvWwwwwwwxhxxwxwxxwvxxfxwwwgwhwxvgwwwwhwwxwwxxvwwfwgxxxxxxgxxxxwvxxxwxxwxxwwwwxhwWwxwwvwwwwxwwwwwwxwxxxufvftfgfvvgvVdwwwwwvwwvwwwwwwfevffefvwvwvwgxvvgwvvgwxwvwvffvfwwvwvvwwwwwwgwvvwwfuvvgwvwwwxwwwwwwwwhwxwwwfvfueFwwwwwxwwgwwwxwwwwwwgwhwxvwwxwvwwwwwvwvwwwwwxxxvwwvwgwvwwwwwwwwxwxwxwetgvwDewufewVgvvVvvxvwvgvgfwwuevvwvwgwwwwwwfvvvexgxxwwwwvgwvwvxxwwwwvwxhwwwhwgwwwwVwwxwfvwgvxxxwvfVwefvwxxxfwgwvvgwwxwwwwvwwwwwwwwvwxwwxvwwwxxwwwwwxwwggwfwwgwwwwwxwxxxwwxwvxxwvfwxfwgvxwwwUtugUfvuuwwvvgwvvggwvwgvwwwvfvwwwwwxwxweuwwwvwxvgvTvfffwvwwvwggfwwwgvVvVwgxhxvwgvwwxwxxxwxxwwwfwwwwwxwxwfvxwwwwxxwwxwxwxxxhwxwxfxwwgfwwwxwxxwwxwwwxwwxxfwwxwefwvevwwxwwwEfvgfvvgwgwwwvwwwwxxxxvxewgwwvwwfwwvwwwwwhvgwvgvwwwxwxvwgvvwvwwgwxxwgxwxgwxxxwxgwwwwfxwwxwwwwfwwwxxwxxwxxwwwvwxwwwwxvfvwwwxxwwwxwxwxxfxxwggeufgedgwfVVvvvwwvwwwwvwvuwgvwvgfwUVvwwwwwwwghwwwgwxffwwwgvwwwvwfwvxwwwwxvwgfwwwwwwvgxgwwwwxvwwwgwxwuwwwwgvvvwwgwwWxwwwxwwwwxwwwwwxwwxwwwxwwwwxxxxvwwxwxgwxwwwwxxxwxxwxgvvvfvwgUVuUuvfvWwwvwwxwwxwvWfvwvwVfdvwwxwwxfwvxwxwwwvxxgwgwfwwwxxxxwvhwxxwxwxwxxwxxxwfgvwwwwwwxwwwWwwxwvwwxwwggwgxvwxxxwhhwxgwxxxwwxwxgxhgwxxxwxxwxwwxxxxwwfvwVvwwwgfvwvegvwwgvwvewxwuwgwwwwwwwwgwwwxwwwxxgwwxwwwvvvwvwwwvguuggwwwwgwwwxxwvxxhwwwhvxxxwxvvwwxwvvxwxvxxxxwxxwxxxxwxxvwxxxxxxwwxxxxxxwxvvgfvwwgwvwwwgwvwwvwwwxwgwvwghwwgxxwwwwwggwxxxwwxwwwwwxxxwwwxxxwwwwwwxxwvwvwxxwvwwxxgwwxxxxwvwxxxxxxxxxxwwxxxwvwxwxxxxuwxwWvwgvvfvWfvwgfvwgwwuwggwwxXegwwwxWugwWggvvxwgvwwwwvvwwwvwwxwwxwhwwwxhwwgffwwwwvvwwhxwvwxgwgwwwgvwxwhwwxwxwwwwgwxhvxxxwxxxwwxwhxxwgwwvwxhxgwxvxwxwvxxwxxxxwxVvwwWeffvgwegvgWegwwxwwfvvgvxwhfwwwgwwvvwwxwxxwwwwwwwwhfwwxwvwwxgvwwwxxvwxxWwgxvwwxwwwwxxhgxwgxggwwwvwwvwxwwxwwxxwxwxxwvwxwxwxxwxhwxxwwxvxxxxxyvwxxwwwgvvvwwwfwfuwvWwvuwfwxxwwvwwwxwwxvwwwxxxwfvwwwvvwgwwwwfvvwvwevgwwwxvwwwgxhwxwwxxwxwxxwvwgwwxhxxxxwxwxxwxwwxwxxxxxfvvvgvwuwvwxVvwwgwxffvgwwxwxxgwxwxxxxxwxxxwwgwwvwgxvwvxxwxvxgvhwwxxxxxxxwxwxwwxxwxxxxxxxxxxxxxxwwxxxvwwvfwwxxgwgxgxvwhegvvwwgvwfgwvvvvwwguggvwwfxvwxwwxwvwgwwwvxggwwxxwwwvxwwfwvwwwxxwxwwvwwwwwxxxwwxxwwvxvwwwxxggwwwxxvxxxgwwwwwxvwwxvwwuxxwwwhwwvxxwxgvgxwwwvgugwwvvxfxwfwwwvwxwwgegvfwwwwwwwwwwwxwxxwwwxwxwwwhvwxxwwvwwxvxwwxxxxxxwxvvuwwvwwuvwxwwxwwwwwxwgwxhxwxwxxxgwxxwxwwvwvvwvgwwwfxwgwvgvwxwwvxwwwvwxwgwuwvxwwxwxwwwwvwxwgwwxwwwvwguwvvwvvxxxwwwwxxxxwxxxwxxxwxxwwxwwxxwxwvwvwwwgvwwwwvwwwwwgwwvvwxvvwwxxxgvxxwgwwwxxxwxxwxxxxvxwxwwwwwwxxxxwxxwxwxxvxwxxxxxwwwvxgwvwgvwwwwwvwwwwwwwwwwvwwwwvwwvwwwwwwwwvwxgwxvxwwwgxgwwwwgwwxwwwwwwwwxwxwwwwwwwwxwxwwwwwwxwwxxwwwxwxwxxwwxhxwxwxwvvwwxwvxwwvwwwwgwwwvwwvwvfwxwwxxwgwvwwwxxwxhxvwwxgxwwxxxwxxwwxxwwwxvwwwwxwxxwwwwxxwwxwxxxxxxxxwwwvwwvwvwwvwwgwwwvwxwwwwwxvwwfwwgwwwvwwwwwgxwxvwwwwwxxwwxwwxwxxxwwwxxxxvfwwwwwwgwwwwwxwwwwxwwxwxxxxxwwxwxxxxwxxwxxxxxxxxxxxxxwvwguwwfgvwvfwwfuvwvUvwffvvfgwwgefggfvVvwvvweDUvfggfgwgwwxxwfwxfuwwgvvwwvWvwgwwggwwwwxgvfwgvwgwvwxwwwvwggWwwwwwwwvvxwwwwfwwwwvfwwwgwwwwwwwwwvfwwxgwwgwwwxwvgxwwxxgwfwgwwwvgvwxwwvxwwwwwvxwxwwwxwwwxwhxwgwwgfwwvfwwwvwgDUvwwwfwevwfwWwfvwwgwgwuwvwvxwgfwfwgwgfvwgggxwgwwwwwwwxwwxvwwwxxggwwwwwwfxwxgxwgwwxfwgxwwwwwfxfwgfwwwwWwwwwwvwwwfxgwwwwxwwxvvwwvxwWwwvwxwwwwxwwwwwwwxwwwuwwwwwxvxvxwxwwwXwwgxvxwwggvwwvfvgufwwwxvgwvwfWvvugggwvwgwfwwwwwwwwwwwxfvgwWVwwwwwxwgwfvwhvwwwwwwwfwXwwwvwwwvwugwwwxwwwwwvwwwwxwvwwxwxwxwvwwgwxwuwgwxwxxwxvxwwXxgxwwwxxwxwxwwxxwxxxxxxwxugwwxgwfvwwuwwVfwfwVvgwgwxwwwwwhwwwwvwwxgfwwgggwxgVwwwwxvgwwxxwvwxWxwwxxxwwfhhwxxfxwwxfwwwvxwwhxxxxxwgwgwwwxwwwwxxxxxwwwxxwgwxxwwxxxwwxfwwxxwwxwwxxxxwgxxsvvgfVwwffgwVugwfgwwffwwgfwwwwvvwffSEwvfvwvwwgvffwvwwvuwwwwwwwvwwgvvwwwvfvgvwwwwwwwvwwwwffwvwwvwwwwgwwxxwwwwwwvwwggwugwfwwwxvegxwwwwvwwwwvvwfwwwvwwwvwwwwxxxwugwwwvwvwwwvwwwwxwxgwvwwwwwwxxvwxwxgVvwfevwVugwwvwwwewwvfxgfwvwugwgSEwvvgvvwwwwwvvwvwugwwwgwvwwwvgwgwugwwxwwwwxwwwwwwxugxwhgwwxxwwvwwxwugwwwwwvwhwwwvwvwwgwwwgwwfwwwwwhvxwxwwwwxwwwwgwxwwxvwggxvwgwvxgxxxwxwwwwvwwwwwwwvwvfwffwfwggwfwwvwgwwWwwwwwwwfwwwwwwvwvwwgfgwwwwwwwwwwwhxxxwwwvevvgxdvwfwwwwwxgwwwwvwwwwhfwwwxwwwxxwwwwvwwxxwwwwwhwxxwwwwwxhwhwvwhxwxxwwxwwwhwxxwxwxxwhhwxhwwxvfgwvuwwgwxvvvwfufvxugxdwwfwvwwfvgvwwwwgvgwwwwwwxvwwgwwwwwxugxwwxxwxwxxxwxwwxwxxvwvhxxvwwwwwxwwxwxxxwwwwgwwwxwwxwxhxxwwxxxwwhxwwwxxxxxwxwwwwwxxwwxvwwwwwtfWwwuvwfvvwvfvwvdeVvevwefuvwvwutvfvwfwveewgvvvffugvvvfvwvwgguwfwfwvvgvwfvwvwVwwwwwwffwvwwvwfvfuvwwfwgvxVvwWvwgwwgvwwvgfwwgwwwvtwvwvghgwgwwxvwggwwwwgwwwwuvwxwwxxxvuwxvvuwxwxwvwxwwwwwwwwvwwxxwwxwwwwxxxfvvwffwgWvwwvUfvvwvffwvwwwgfefuwwwwfVvdwwftvfwwwwfwfwxwvwwwxhvwgwwwwwxwggwwwvgwfwxgxwgwwxxwxgxvwgwvwxwwxwxvvvwwvgwvwwxvwWwvwwwvxwxfwwwwvwfvgwwwwxxgvwwWxwwwgxvxwxwgwfxgxvwvwgguwewvtvvffeffvwvuxvvwwwwvWfwfvwgvfxgwggvvWwwwwwwwwwwwxvvwwtvwvwwwxwwwewgwgvwwwwwwwwvxfgvwvwWxwvwhwhwvxwwwwxwwuwxwxwxgvxwwwxwvwwwwwwxxwhxwwxxwxwxwwwxwxwxxxvxwxwwvwwwwwwwxvwfvwwwVwwevvwgfwvwwwgwwggfwwwxxwwwgxwgfwvgxwwwfxgxwxgvwwwvwwwgwxwghwwwwxxwwxwwwwwhxwxwvxvxvwwwwxwxvwwwxwwwvgwwxvxwwxwwxwwxxxxxxxgwwwxwvxvxxwwwxxgxwxxwxwwtwwwfvwwgvwxvgwwwwgwfgewgVggvwwwwgWvfwwVfvwvgewwvweggevwwxwwxwvvwwxwvwwwvxwwwgwwxwwvgvwwwgwvwwwwwwgxwwwfwxwwwxwwwwwwwwwwwwgwwwwxwxwwggwvwxwxwwhwhxwxwxwwwwxwxwxwwwvwwwwwxwwwgwxxxwxwxxxgxxwxxwwwwggvvgwvfdgwVgwvgwwgfwwvvgwwfggvfwgwwfwvfgwggwwgvwwwxwvwxgxwxwhwwxwxvwwxwwxwwxwxwxvwwwwgwvxxxgxhxwxwxwxwwxxgdxwwxxxwwwxwxwwwxwxvxwwghxwhxxxxxwwxwxxxwwwwxxxxxxwxxwgwwwwwwwwxvwfwwwwfwwwwgGVwvwGwvgwxxwgvwwwwwwvvwwwwgwhwwxwwwxxwwgXwwwWwxwxxhwxgwwwwxwwwxxwwxvwwxwwwhxwxgxwwxwwwxwxgwxvwxxxwxxwxxxxxwxwxxxwxhwwxxxxxxxxwxxwwwfwwwwvgwwxwvgwwggWwvxwWwhxwhwxwxwwwwwhwwvwwwwwxxxxwxwwhxhwxxgxxxwxxxxxgwxxwxwwxxxxxxwxwxwwxwxwxwxwwxwwxwxwxxxxxxwwxxxxwxxxgxxxxxxxtfwwVvefguwfVevwwwgwvfuwvwffvvUWfuwfgwfvwwfffgvxvvxwxfwvwvvvwfvvvwwvwwwxxwvxwvgwfxwwwwwxuuwwwwxwxwxxwwxxwwgffvfxgwwwgVwwgvwwwwuwgwwwwwwwwwwwwvwwvgwfwxwwxwgwhxxwgwvwwwxxwwwxxvfvvwfffwfgwvgwvwgwwgwwwwwwwwgVgvddffhwxfwgwwvvwwwwgwwxxhvwwwxwwvwwwwwwwxxxwxwvwwwwwwxwwghxxwwxwxxwgffvfvxxwxxwwwwwxwwwgvwgwxgwwwwxwxgxwwxwwwhwwwxwvgxxxwxxxwwwwwxxxxwwwxxfvvwVgFuvVevwwfffwgwvwwwhwhwvwvfvvwgvwgvwwwxwxvwWfvvwwvwwfvvwxxwwgxxwxwxwwhvxwwwvwwwgwwwwwwgwvxwwwwwvwgxwxwwwvwxxxxwxxwxwxxwwwwxxxwvwxwwxhwxwwvfffueefwvwxwwvwwwfvxxhvwwwwwwwwxgwwwwwvxwgvvwwwwxwwgxwwwwxwxxxwwwxxwwgwfgxxxxwwwgwwxwxvwvxwxwxwxwvwxxxxxxxxwwwwxwwggxwxwxwxgxxxwwxwwwwgwxvuvgvfvwfTTvfvwwfvffvvvggwvvwwfvwgvvvvwwvwwvfvfvvwvvwwwwwwgvwwwwvwwwgvwwwwwwwvgwwvwgwwwwwwwwwwwwgwvvgwgwwvxwwwxgvvvwwwwxwwxxwwxxvvvwwxwxxvwwxwwxwxxwwwwwwgvggTTvveewvvvegfvwwvwvvgwwfvwwvvvvvwvvfwwwvwwwvwwwvwgvvwwwvwwwwvwwwwgwvvwwwwwxvvwxwwvwwwvwwvwwxwxwwxwvwxfvwvvgwwwwxwvghwwgxgwvwwwgwwwxwwwwxxwwwwwgxgfwwwxvwgwxwwwwvvhvxfvvwvfvvwwwwvwvwvgwvvfgwwvgevwwxwgwxgwvwgvgvwvwwxwxvwvwvvvvwwwwwwwguwwwvvwxwwwwxwfxwxwwwvxwwxwwxwfgwgwwxxwxxxgwxwxwwxwwwxxwgwwfvvewwxwwwwwwfugwwwvwwvwwvwwxwxwvwwxuhwwwwwgwwwwvwwwvwwwfxhhvwwwvvwwwwwwwxvwwwwwxwwwwwwwxxxwxxhxxwxxwxxxxvwxwwvwxwxxdfWuUdefVueweUTvUtufgVfWeVfvwggfVuvguffvuvwwguvfFewwgvwfvwgwfvugwffwfgfvgwvgwfgwwxwxwwvwwwwwwgfvgwwwxwhwgwwxwwhwxwxwwgxegfvugwgvxvWfwwvwguxhwvwwWvxxwxgvxhwwxxwwgwvwwwwwwwvwwxwgwxwxxxwxwxxxxxwxwwVueggUfVfEUvwggegUffxggfguffgvWfFevvvwfuwwgvwgfguwWvgwgfwgwgxwggwwwwwwwwwvgwwhxxxwwxwwwxgwwxwwvxwwhwgwwwxwwxxxvWfwwvwgwwXgwgwgwxWfwwfgvwgwwvwgwwxxxvgfxwgwwxxvwxxwwgvxwxwwwwhxgwwwxwwwwxwxxxxwvxwvxhxwwxwfeuvefUdguvVdwfVVvwwWfgwwwhvwdWfvgvwvwxvwFuugwXgwwwhwwwwvWvwvwfgvvwwhvwwgwxgwwxwxwWvvwwxhwxwwxgwgxxxxwxwvwgwxgxxwvxgwwxwwwwxxxwgxxxvgwxwxhxxwvwxwxwwxwxwxhwxvxxxwhwwwxwwxwggwxwvfWvfwfffvvvwgvwVvwfwgfgwWwggvxWWuvvxgvwwfuxwxwgWgvwgggxgxwwwgwgwxwwwwwwxxwwwxhgwwwxwxwwxxxwwwxwxxwvgwwxwxxgwvwwwxxwvwwvwvxxhwwxxwwxhxxwwhxwxxxwxxxvxxwxxwwvxxxxwhwgwgggwxuwgwusvvwfgwfggffvwgdfvwwfvvvvuvfufffwvwwwvvvvvwfvwfwwvwwVvgvguvwwwwwvgfghfwwwvwgggewwwwhwwvwwwvwxwvwvgwvwVgwwwwwvwwwwwwwguwwvwwgvgxwwwwvwwwxxwgvwwwwvxxxxxfwwwxxwwwgwwvwwxwwfuvwgfftgwwwwwwwGfvwUwcwvwgvfggfuwwwwwwwwvvwwvggwwwwwvgwfgewwwgXggxxvwwxwvwxvwxxxvvwwxwgwwwwxwwwvvvwvwxwhwggVvwwggxwhxwwwvWwvhwwgxgxwxwwgxwvgwwvwxvxxwwwwxwxhxwwxvxwwwvvvvvvfgevfwwvfwuwwwwvwwwvwvxVfgwfvvfwvvwwwwvwwwwxgwwwfwvvwwvwwgwwwxxgwwwvwwuwgwvgwwwxwvxxgwxwwwwvwwxhxgwxgwxxxxxwwwxwxwxgwxxwwvwxwwwxwwwxwwwxxxwwxhwxwvvuwwwwuwwwwwgwvwwgwxwwgvWvwvvgwwwwwwwwwvfgVwgwxwggwxwwxhxvwgxwvxxwwxvfwxxxwwwwwwxhwuwwwwxwxwxxwwvwvwxxhgxwxwxxvwwwgwxwxxwxwwxwwwhwwwxwwwggwxwhwwvwwxvgvwwwxvwguggvvwwwwwgeggwfwvwwwvwwuvwgegvvvfvwwxuwwxvwxWwwwwxuwwwgvgxwwwwwvghvwvwwxvxwvwxwwgwvvvwwvxvwvwvwxxwwfwwwwwxwxwwwgwxwxwwvwxwwgwwwwwwvvwwxhwxwvwvxwwwxxxgvvwgugwwwvwgUguwwwvvwvwvwvvwwvwuwuwwwVvvgwwvwgwwvwxvwwhwvwwwvwwxwwwxwwwgxxvwvwxwxvvwfxwxwwwwgxwwwwvvwvwwwxvvvwwwwwxwwwvwwwxxwwhgwhxwwxxwwxxxxwwxxwwwxwwwwwwwwwvwwvwwwwfwwgwvwwxwwwwwwgvvxwwxwxgwuwvxwvwwwwxwwvwwxwwuvwfwwvxwwwxvwwvwwgvhVwvuvvwwwwwvwwwwxwwvxwxwwxxxxxxwxxhxxwwvwvguvwwwxxfvvvwwewgxhvvwwvxwwxwvwwwxwwwgwwwwwwgwwxwwwwwwvvwwxwwxwwxwwwwwwxwxwxwxwwwxxxwwwwwwvxwwuxwwvwwwwwwewvwwwwwffwwfVwfwgUwvvgwvwgfvwwggvfeufwwwwvxxwwhvxwwwwxxxggwwwgwwgxwwwwwfwwwwwwwvhugvgwwwwgwwxwgwxxvwgwwvwwwvwwwxwvwwxwvwwwxWwwwxgwxwxwxwxxwwwwhwhvwwwxwxwwxwwwwxwxwxwwgvwwgwvgvwfwWgwfvfgwggwgggvgvwveuvwvwwwwfwwwwevgwxwwwwwxxwwwwwwwwwxvxwwwxwwxxwwwwwvwwxvwwwwguhxwwwwhvwwwwhgwgwwwwwwxxwwvhwxxxwwwgwuxxfgxwwwwxwwwwxvxwxxhxwwwxwhhxwwwwxxxxwxvwwwvwggVWgvwwWvwwfufxvwxwvwxwwvxgwwxgwwwfvwxxwwwhgwxxvxwwvxxgfvvhwgwvwhwxwwhwwxwwhvvgwhwwwxwxwwwhxxxxxfwxxxxxxwwxxxwxxxxxxxwwxwwwwwguWwwxxxwwwgvwvxgxwxwwwxwwxhhxvxwwxwwxwwwvxxxwwvgwwvxxwwxwxxwxwwwwvwxwwwxxwwxxxghxgxvwxxxwwwwwxxxxxxwxhwwxwxxxwxwwxxhwwwhtUfffevwvvwgfdvvffvggvvfvewvuuwVvdUVfevwgvwfxvTVfvffvfVwwvwwgvexwvfvgwvvuuvuwwwwwvvuwxxwvgeefwguwfgwwwvwvwwwwwwxwvwwvgWwVwwgfwwwfgVwwfvfwwwfvwffwfwwwwwwwwxvwvgwwwwxxwwwgwwuufwxwwwwwxwwwwxxxweewwwwwwwxwwvwwwgwwwwxfvewvfvwgvfwwfwvVfuwxwUfuvfwwwwfUevwvvfWwwwwwedvVwgvvvgxwxgvwwwwwwfwvwwvgvxvwwvxwwwwvwwwwfwgvwwuwwwwxxwwwwgwwwgWUwwwgwxxwwvtvVwvwwwwwhwwvuwvwxwwggwwwvwwgwgwxwwwwvwxwgwwxwvwwwwwgwxfxxvgvwwxwWwvwwwwwwwwwfvweVTfwgxwwvfevguvgxxvwvwUgEvwvfVwwwgwxfvVvwxxxwxvgVvvvuggvxvhvwwvxwgvwvwxvwvggvwvwwwwxwwwfgfwvewxwwhxwwwvgvwgxxxwxwwvxwvxwhxwwwwwwxxvxwwxxxxvwxwwxxwvvwxxxxvwvwxxwxxwwxwwwxwwwxvfVxvuwgwvwuwffuwgwfwwwwwveffxxvwwwwgwvwggwgwfggwfxxvvgvwvwwxwwwwvwwgxgwwwxvwvgwxwvwwvfwufxvwwxgxgvwuwwxwwvxgvwxwwwwhwhxwwgwwwxwxxxgwwwwwwxxvwwgxxvwgxxxwwwwwvwgvvxxvwwwxwuwxwwwvwwgfwwvvffwwggwvwwvhvfvffwgvfgfvvwwvvffvwwfwwwvgxxwwvgwwwwwgwwxwwwwwvwwwwvwxwwvwwwwwgwfwxxxgwwxvvwwxfwwwwwwwxxwvxwwwwwvwwhwwwvxxxxwwwxxwvwxwxwwwwwxwxwwgvwwfwxwwwwfwwwwvvvwgwxwgvfwwwwwwvwvwwxeuvwvwwvgfvgwxgxwwxxwgwwwxxfxxwwxwwwvgwxhxxwxwxxwwxhxwwxxVuwxwwxwwwvwwwwwwwxwxwwgwxxwwwxwxwxxxgwwwxgwWgvwwvwhwwgvwwwwwxwwWvuwvvvvwwxwwwwwwwxxwwgwwvxvwwwxxvwwgvxwxvgxwwwwwxwwwwxwxxxwxwxxxxwxxxwxwxxxxwwxwwhwvwwwvwxwwgwwwwxgvwffwwvhwgwwxwwwhvxwwxwxgwxwwxxxgxwxxxxxxwxwwwwxhhwwxxxwwxwwxwxxxxxxxxwxwxwxgwwwxxwwxxxwxxxewwgvwvfwvvgfvvwwwwUwvvfgUVvvwvvwwVwvwvvwwwvfvvgWffvwwvwwxwwwwfwwgwwwvwwwxwwgwgwwvxxwwwwwxwfvwwwwvwwwhgwwvgvwwwwxwfvwwwwwwwwxwwxwwwwxWwxxwwvwwxxwwxwwxxxxvxwwwxwwwwwwwxwxfwwxxxxxxxxwxwwvvwxwwwwwffvvgvgwwvfwWwgwgefuvfffuWwgwgxwwwvwwwwwwwwfxgwwvwwwgwvwwwwwwwwwwgvwwxwwwwxwwvxwwwwxhwwwwwxwwgxhwgfwvxfwwwwwwwwguwwxwwwwgwwxgwwfwxxwxxwvxwxxwwwvxxxxxwxwwwxxxwwxfvxxwxxwxxwwwwwvvvguwwvwvvwfwffvewvvwfwwvwWwxgwwvwXwvvvgwxvwxwwxwgvwvwxgvxxvgwwgwewwxxuwwvwwwwwvvhwwwwwwxWxvvwwxgwxwxxwxwwxvxwxwwwxxxxwwxxwwxwwwxwxxxxxxwwwwwxwwvvwwfwfgxwvgwxxwfgwwxwxvxgwvxxxgwhwxwwwwwwwwxwwwvxwwwxgwggwwwxwuwwwwxxxxxwwwxxvfxwwwwwxwwwwvxxwxxwwvyxxvwxwwxxxxxxwwwxwxwxwwxxwvwgfwwfUfwwggwffwwwwwvwvwwwwwffwfvwgvvxwwxwvgwvxxfufffefvffegwuffvvxxwvwwwhxVffvvvgwwwxgwvwwwwxwwfUfvugfvgvfvwfVgvwgwwvvxxwvwvgwwwvfwwxwwvwxxvxVWvvvfvfwvwgwwwvwwwwwvwwxwwwwwvwxwwwwwwwxfuegvfvwvVfwgwwwvUfwwwwWfgwwxfffgwvwxwwwwgggxwxwxxwfWvuwvwwgwvwwwwwvvwvxggwvxwwvwwwwgwxwwvwwvwwvxwwwwvwxweWfuwwwwwwwwfvwvfwvvwwwvxxwgvwwwwwwwwwwwwgxxwxwffwwfwgxwxgwhvwwwvxxwwwgwwxwggwxxhwxwwwxwwVuuwewgvgwvwwvggwwwwgfwwfwvfwwwwwvwwgwefeufguvgwfwwvwfvvvwwwwwwwwwwwwvwwgwvwwwvwwxwwvwwwvwfgvvWvwgwvwwwwguggwxwwxxxwxwgfvwgwwwwwxwxxwvxwgwfvuugwfvwxwwwwvwwwvwwxxxxvhwgwxhxxwxwhxwxwefvfwvwgwwwwwWfvvwvwwfwwvgwwwgvwxwwvgxxxxfvugvvwwwwwvwvgvvxxwgfwwxwwwgwvwgwxwwuwxwwwgwvxhWwvwvwwwvgwwwgwvwwxwwwwxwwxwxxwxwxgxwxxwwgwvwuwwwwxgfwhwwxxwwvwwgxwxwwhwxwwwuffwfvvgVvwffUffuvgvgfwfWfwffgwxwWuvfwvvxWvgvgwvxweevfwvfvvVeufvvwwgvwwwwfvvgwwwwwgfwwgwwxwwgwwwvwwvxwxvfwwwwvfwUfvvwwwgfwgvwwWwfgwhwxwwxvwwgvxwwvwwwxhwwxwxvwvgfvfwwgwgvwvuwwwwxwxwwwwwwwwwwvwxxwwwxvxwwwVvvgvgvwvUfuewfwVgvgwwfvvfwgwvvwgwvwWwvfwgvwvwvwxwxwwwvwxwfwvwwvwfvwgxghwwwwwwwvwwwwuwwwxgxguwwxhxvwgxxvwvwwfvvwwfffxwwWuwxxwggwhxwvwwwwwxwgwgwvwhwxghvwwhXxwxwwwgwgwwVwwwvwwxxxvwwvgwxxxxvxxwwxwxwwwxVvevvgfufvvWvgvwfuwwvwvvvxwwwggwvwwwwwgxxwgxwwwwxwhwwxufUugvvfefvvvfwvguvwwwgvfwgvwvewwvvwwwwWwvgvxwxgwwggvwguwwvwvwwwwwwvfwwwwxgwwwwhwwgwxhxwwwxxwxxwwgxxxwwxxwwvwvwwwvwvwwxwwgwwxwwxwxwxwxxwxxxwxxwuwwWvuwgwggvwwwvgwwwwvfwfwxwxwwwwwwwwvhwhwwwxxxhwhxwvwwwgwxxgwwgwwwwxwwwwggxwwwxwwxvgwWwwwxwWxwxgwwxuxwwwxgvvwvwwwwxwwxwwxxwwxxxxxwwwxwxwxwxwwwxxwxxwwwwwwwxxxwxwxxwxwxwxxwugwwVvwVvwwugfwevwwxggvggwwwggwvwwwwxwxwwwwxwwwwwxvwwvgevwvgvvffvwvwwwhwwfvvwvwwwwwwwwvwwwxwvwgwvwxwwxxxxxvvwxgfgvvvgfvgggwWxgggwwxxgwwwxwxxwwxwwxxxxxhgvgwwvwwgwwwwgvwgwxxwhxwwxgwxxxwxhwxxwxvxgwVvwwggvuVWvwwwgewvwwhfgeewwfwxwxgxxwwwxhwwgxwwwvxwwgfwgwwwfvgwvwgwxvwxxgfwfxwxvxxxwxxxwwwwwxxxwwwgggwgwwfvwgwwgwwvvwhwxwwwwxwxVxwxwxxxxxxwwwWwgwxwwwhvxwwVwwwgxxxwhwwwxxxxxghxwwxxxwvgvwwwvvwfvvggvwvwxfwvxvxwwwwwwwwxwwxwwwxxwxwwwwxxvwvwvvgffwvxvgfvfwwwWfwWwvgwwwwwwwwwhwwxxwwxgwxwxxwwwwwvwgwwwhwhwxwwxwwwxxhwxwxxwwhwhwwwxwgwxxxwxxxwxwfwxwwxxhxxwwhwxvwwwhwwwwgwwwxxgvvgxwwvwwwwwwwwwwwvwwxgxhxxxvwxwvwgvwgwfwfvwggxWxhwwwwwxwwwwxgxhwwvwwxxwxxxxwwxwgvxxxwwwwwxwxxwxxxwwvwwwxxxwwxwxxwxwxxwvwwxwwxxxwwxvwwxxwxwwxwwwxxwwwvwvguvfgWvgvwfwwwgWfwvwwwwvwwwwxwxwgWvwwwwgxwvwvvgwwgwwwuwgWvuwwwwwwwwwvvwwvfuwwwwwxwwwwwwwwwxfwxwguvfwgwwgWvwwwwWgwwwwxwwwgWvuwwwxwwxxwxwxwgWvwuwwwwwwwwwwxxwwwwwxwwwxwxwxxwxgvwfgWvuwWgwwgWvwwwvwuxwwvgwwwwgwwwwvwvwwxxwwxwwwwwwwwwwwwxwwwwxxexwwwwwvxxwxxwxwwvwxxgxwxwgWfwwwwwwxwxwvwuwwwxxvwwwwwxxvwwwxxxxxxwwvwwwwvwwxwxwwxxexvwwgxxwwwwwwwwwwwxwwvwwvgWvuwwwvgwxwwwwwgxvwxfwwxwwwxwwwvwxwwxvwwfuwwwwwwxwwwwwwwvwwwxwwfwwuwwvwwwfxxwxwwwwxwxwwwwxwwwwxwwwxgwwxxwxxvwwwxwwwwfxxwxwxxxwwxxwxwxwxwwwwwxxwwwwwwxxwxwxwxxxxwxwxgWvwwwwxxxwwvwvxwwvwxwwxxwxxxxxxwwxwxwwxwwwwxxwwwxxxwwwwvwwwxwwxwwwgxxwwgwwxfwxwxwxxwxgxwxxwwxwwwxxxxwxwxgxxxwxwxwxwxxwxwwxxwxwwwxwxwwxxwuwvwvwwwwwwgwvwwvvwfwvwggfvufwwwwvvvxwwgewvvVwwwvwwxwvwwvfvwwwvvvwwwVWvvvUwvvvwwguwwwwgvgwwvwgwwwgwwvwwvgvwxwvwggvfwwwTvwfGvvgfvgwwwvwvwwwxxwwwwwwhvxwxwwvxwwvwwwxwwfvwwvwwwxxwwwxvwwwwxxxwwxwxxwvwwwwwwwgwwwwWFvvUwvvvwvvwwvvwwgwwvwxwwvxwwwxwwgwgxwwwwvwxvwxwxwfgxwhvwwwwwxxvxxwwwwwxwwvgwwwuwwwWxwvxgvwvwgwwxgxwwwwwwgxwwwxwwxwhwwwwgghwxwgwgwxwwwwwwgwxxxwxgwfxxxwwwwwwxxxfwxvvvwuxgvvvfwvtfwguvwwwwwwvwwwwgvwwvwvxwxwfwwwfwuvwwWuvvwgtwwwvwggvwgwwwwgwwwwwwwwvwwxwwwwwwxxwwwgwxxwwwwwwwxwwgxgxwgwxwwxwwwwwwwwwwwxwghwwwxwvwwwxxxxxwhgwhxwxwwwwwfxxfwwwvwwwwwwwvxxwwwwgwwxwwgwwvxwwxvxxxwwxxvwwxxvgvwgwWwxhwwwwwwwwxwwwwxxgwvwwwgwxwxwwwwxwgxwxwxwwgwwxwwwxwwwxxwxwwwwxwxxxwwwwwwwwxwxuwvwwwffuwwWvfeffffwfUvgvwweuvwwgvggvfWfuwwwgfvvgwxwfuvfwfevvwvwwuVeugfwwvgvwwggwgwwwwvwwwwwgfvgvwwgwwwwwwgfwwwwgwvgwvgfVvuwvwfgvvvxuxwwwwvvxvwwwwxwgvvgxhvwwgvxwvgwwvwwffxvwvfgwggfgxwvvwwwwwxwwwwfwwwwvgwgvwvvvwugwwgwvwgVvuhfgffevfwwwgfgvfwvgvvwwhwgfggxggwgggvxgxwvgfwvwvwwgwgxwwghfwxxfwfgwVwWggwvxwwxwwwvxggvxxxwwwxwxgwwwwwwwwvwvwgxwgevfxggvwfwfwugwwwxgxgxwvgvxwXWxwwfwwwwwwvwxwuhgxVxxwwwxxwwwvwwxwuwwxwxwggxwwevvwwwvwggwwweVfvwwxwgfwwuhxwwggxwwvgwwwxwwvwxwxegfvfxffwvwgwxffefxwwVvwwwgewvfvwfvwwwwwwxggfwggwgwwwvwufgWwwwgwgxxwvwfxwwuwxxxvwxwxwxxxwxvwgxhhwwwwwwwwxwwxwhwggxwxwgwwwwwwxxxwwxwWxwwxwwwwxvgwwwwWvwvxgvvfwgvwwgwwwwgghvvxwghwwgwgvwwwwxxwxwwvwwwxvvxwxxwxwwgwVwwwgwvxgwwgwxwwxxgxxvwwgxwgwwggwxgvwhvwhxwwgVxwxwwvwwwwhxgwxxwwxxwwwwxxwwwwwwwwwwxwxwwgxgvwwhxwwwwxwwxwxwwwwxwwxxufvfffvfvwwVWvfvwwvwwxvggwwxwfvffWWegwwwgwwgguuwwvwwxxwxxvvvwVWvvwwwfgwfvwwvwxwfvwwwwvvvfvwgwwvwvvvwwxvwwwwwgvfffgvgvWWfvwwffwggwxwvwhwWWuvgwvxwxwwvwwxvhwwxxwxWWvvwwwwvwxvwvwvvwwxgwwwxwvwwwxxxwxvwwxwhxxwwwxwffvfVWuuvgwwwwfguuwwxwvwwwwwwvgvwfxvwvwvwhwwwwvwwvvwwwwwwwwwwxwwvvwwhwvvgwvxgvwxvwxxwwwxfwxghxvwxwgxxwwWWegwvwvwwwwvgwxwfgvwwxwfwvxwhwxxwxwxwgwwwxwwghwgwxwvxxwwvvwwhwwhxvwgwvhwhwwxhxwgwxgxwwxwwxgvvvwvwvvxwwwvwgwwgwwwwfvvhfwvggeuvwwwhwwxwwwxhwwwwwwgwxvwfwvwwwffwwwvvvvwfwvwvxwwwwgvgwgvfwwwwvvwxwwwwwgwvwwwgwwwvvgwwwvwwwwgwxwxwxgwwwgwwxwwwwwxxxxwhwwxxvxxxxgwwwwvwwwwgwwxwgwwwwwwwwxxxwwxhgwxwxwxxxwfguwwgwwwvxggghwwwgwwxwwwwwwwxwvgwwwxwxwwxwwwwwwvgwxwwwhwwgxxwwwwwvwvwwxwwwwwgwwwvwhwxwxgvwwggvwwvwwxxxwwxwwxxwwxwxxxwvxfvwwvwxxvxwwxgwhxxwwwxwwxxfxwhwxwwgxwxefvwvwffwxwwwweevfgwwffvvwwvwvuwwwwwwvvwwwwvwugwwvwwgvwvwvfvfwwvuvvffvwwvwfwwwvwwvwvvvvwwwvwwfvvwxgvwwwwwwwwevwwwwwVfxfewugwwgWvwwwwwvwghhvxxwvwvxwxwvwwvvwwgwxwwwvwwgwwwwwwwxwwxwwxwgwwxwxgvwwwwvgwvwwwfVfvxwwwvvwwwwfvxwwwwgexwvevgwwwvwxxwwwwwwxwwvxxwvvvggwwwgxvgxxxwxwwvhwwwwxwffvwwwwwgguffwwwwwhwxwwwfxwxwxwwxwwgxwxgwxwggwxwwvfwwvhwwfxgwxwxxwwwxwwfvwwwwwuwwwgvffwwvwwwwwggwvxxwwhxvfwwwxwwwxwuwwvwuvwvfwwwwevvwwwxwvwvwwxwwwxwgwgggxwwwwvwwwxvwvwvwwgwwvwgwxwxxwxxxwhwwxxwwwwwgxwwwvwwxgvwwwwwwxxwwxwwxwwwwxwwwwxwggwwgfvwvvfwwwwvvvvxxgxwxvwxxhxxxxwxwwwwxwwxxwwwvgwwgvvwwxxxgwvxxxwgwwwxgxwgwwewwwxxvgwfwgwwwwwwxwxxxxwwwwxwvwxwxwxwwxwwwxxwxwwwwwhwwggwwwgvwwwVffvwxvwggffvwfwwfwwvgwwvwwuvgwgwwwwwwvgxwwvwxvgvwwfWwwwfwwgwwggwwgwugvgwwwwfwvwwwguwwgwdwvwwwwwWwvwwwwwwgwggguwwvxvgwwwgwwggwwwxwwwgweWwxxwwwxwxwxwwgwgwwwvvwvwxfwwvwwwxwxvwvvvxxwwhxwhwxxwwxwxwvvgwwwwGfwvwwvggwvwwwgfvgvvgwwxwvwvvtfgwwwvgwxwxxgvwwwwxwvwwwwwwwwwxwwwvwfwwwwwWwgwxvwwwxwxwxwwwwwwxxuxwxvwwvwWgwgwwwxxwwgwwwxwwwwgxwhxxwwwwwvxwwxxwxxxwwwwwwxxwwwwwwwxvwwgvwxfwwwwwvxwwwgvwxwwwwxwggewvwxgggwwwgwwwwwgwgwxwvxfxgweWwxwwggwwgxwxwxwwwvwfgwwwgwuwvwwFwvggwwwvxxwwwwwwwwwwxxxWghwxwxwwhxwgwvwwwwxxwwwwwwxwwgwxxvvxwgxhxxwxxxxxxxwwxxxxwwxwwwwxvwwxxxwwwwwgxwwxxxxxwxwwxxxxxxxxwgwwgvwxgvwwxhwgvwgvwwfvgwwxwxwxwwwxgwxxxxwwwwwwwwgwxwxwxwwgwgxhwxfwwhwxxwxxxvgwwvhxwxwwxwxwwwvwxxxwhhxfgwxxwwwwxxxxxwwwxxxwwwwxwxwwwxwhxwwwwwwwxwxxwwxxuWwvfvvwfvwxffwwwwwxwgwwwgwwgwgffwvwggwwwhwxxwwhwwxwvwvfewvvwfwxwwxwwwxgwwwfwwvgvwhwgwwxgwwwwwxvvwgffvwvwwwwxwwwwvwxwwxwVVfffwgwgxwwwxwxxxxwvwwwwwwwwvwxxwwwwxxgwwwgwwwwxxxwxxxgvgvgfvvfffufwfgwxwwgvvfwwwwgwgwVwxwwwwwxxxxxwwwwwwwwwxwwxvwxwwwwwwwwwgxvwxxxxwxgxxxwVWffvWwwwwxwwxwgwwxxwvfwxxgxwxxgwxxxwwxwwgwgwwwexwxwxxxwxwxwwwxwgwgwwwwxxwxuufwvwwugwwwgwgwvwvwvvwwwwwwwxwwwwwwwwxxxvgwevgvwwvwggvwgwxhwwvwvvwvwgwxgwwwwxwvwwwxxxwxwwwwwwwxxwwvwxwwxxwwwwwxxxxwxvwxwgwwwxxxxxxwwwwvxwwwwwxxxwxwxxxwhwxxxxxxvvWvvwwwuwwxwwvwxwwwwxvxxwwxwwwwxxwxwxuwxxxxxxwwwwwwwgxwwwwwxhwwxxxwgxvvwwxxxxxxwxxxgwvghgwxxxxwwxwwxxwwwxxxxhxywxxwwxxxwwwwxxxxxxxxtfgvvwwfwfVwwvfvvwxwUvvwwwvvvwvwwwvuwwwwvvwwwwefwwwwxvvwfvevgFfvvvwwwvwwwwwwwgfwfwwgwwwvdvvwvwwwWxwWwgwwxwwvwwgvwwvwwweugfgfvwwwwfvwxgwwwwxwwwwgWuvwwwxvxxxwwxwvggvwggvwwwwgwggwxwwwvwwwwwwgwxwvfvfvwfFfwgvvvggwvgvvvuwwwfwvvwvwwwwvdvvwwwgwwwwwwxwvwvvwwwgvvwwgwwwwwwxwwwwwgxvwwxwxwwgxwwxwwwxwhxgwxwxWwwfggxvfvwwwwxgvwxwwgwwxwWwvvhxxwwwxxwxwgxwxwwwxwwwwwWxwwwwwwxWwwwxxxxgxwxxwwxxhwwwwwfvwwvwuwwvvwwvvwewwwwvwwwWwuvwwvwgwxwwwwxxwwvfwdvvvwvvwwfvvxwwwwfwvgwvwwgwuwwXwwwxwwwwwwxwwxwwwgwwwxwxwwwgxwvwwxxwwxxwxxvxxxxvwxwwxxwwxxxwfgwwvwwxwwwwwxxwvxxwwwwwxxxwxwxfwvwvwvvwwwxxewwvvwxgxwfwgwwxwwwwwxxxwwxwwgwwxgxwwwwwwwwwwwvxwwwwgwxwwgwwxwwwwxwwwwwhwxwxxxwxwvwwvwxxwxwxwwxwwwwxxxwxwxwwwxxxxxwxwwwwuxwwxvxwxwxwwxxwwxtvfwwvwggfgwugwwvfgfvwwwWffuwVufwgFfvwwxxwwxWFfuwwwwwxwwggwwvgvwugwwVuvwvvwwvwwwvgfgvgFfvvwwwwxxwwwwxwgfgvwwxwVuvvgFfvwwxwwwxVFfuwwxwwxxwwgwwwxgwxxwwwwgwwxwxxwxwwxgFfvwwvwvvwwwwwwwhfgvwwwwwxwxwwwxwxwwxxxwwwvwggffvwgwVffugvwwWwwwwwwfwwwgVFfuwwwwwvwvwwwvxhxxwvxwxwwvwwwwwvwwvwgfhvwwwwxwxwvgxxxwwwxhfgvwvwwwxvxhxxwwwxvxwWFfuxwwwwwxwwwwwgwhwwgwwwwvwwwxwxhxxxwwwwwwxgfgvwxwwwvgwxxwxwwwvwwxwwwwvwvhvhwvxvxxgvwfugwwwgvwgwxVffugwwxwwwxvwxxwwgvxgwwxwwwxwwxxwxwwxxwugwwVuvwwvuwwggvwxgfhvwxwgwwwwwwwwhwxwwwwxwxgwxxwwxwxwxwwwxwhwgwwxwxgwxwwxhwwwgwwxxxwxxwwwgwxwwwwwvwwwwwxvhxwgwwwxxxvwxxwxxxhxxxwxgxxwxWffugwwwvxwwvvwhwwuhwwwwxwwvxwxxwwxwwwxxxwxxwwwwwgfgvxwwwwxvwhwxwwwwwgwwwwwwwxxvxxxxxhwxgwwwxwwwwwwwwwwxwwwhwxxhwwwwxwxwwxgwwwwxwxxgwhwhwwxxwwxxxxwxxxxxwwxwvxxwxxyxwwxxwwwgwgvwwvwwfgvvwwwwgwwvfwvwvvgvfwwvwwwvxwvwvvwvvwvwxwwgVvuwwxwvvwvvvewuwfxwvvxvwvwvvwvxwvwvwwwvvwwgxwwwgxgeuvxwwwwwvwwgWvuwwwwwwfwfgwgwwvxwwwwwxwxxwxvwwvfwgwwwwxwxwwwvwwxwwwwwwvwxvvwgVeuwvwvfwvwvfewewvwvvwfwvfwvwwvwxwwwwwvwwwwxwxxwxvwwwwxxwxwxvwvwwwvwwwwvfvwwwwwxxvwwwwwxwxwxxhgwwwvwwwwgggwvxxwvwxwvgwvwwgwwxwwhwwwwwxvwxwxxxwxwwwxwwxwxwwwwwvwwwgwxfwgxxxvwxxwxxwwvwwvwguuwwwwwvvxwgfvuvvwwgwwwuwwwgwwwvwfuwwwvwvwxwwguvwxwvxuwwvfwwwwwwwwwhwgwwgwxxvfwxwvwwwxwwxxxxwxwwxwgwwwwwxwxxxxxwwxxxwxgwwwwwwwxwwxxwxwxxxfxwxwwxwxvwvvwvvfwwgvwvwwxxwwwwxvxwxwxwvwwwwxxwwwwwwvxwwgwxxwxxxwfwwwxxwwvwwxgvvgwxwwwwwxxxwxwxxxxxwwxwwwwxwxxvwfwwwxwxwwxxwwxxxwwxxxwwwwxxxufwwwvvwwwxwwwwwwwwewwfwvwvwwwffgfwwffvwwffuwwwvfwfwvwvwwgwwffwgvwwgwvwhwxvgVewvgeevwgwwwxewuwvxvwwwvwgvwxwwwwwwewvxvwwwwwwgUvvfvgVWfwxwgVwVwwwfxwwwwwwwwwwvwwwvvwwwffwwwwwwxwwxxvxxxwwwwwwwwwwwwVwwwexvwfvgVevveevwwwwewwwwxfwwfwgwwwxwxwwexxxwwvwxwwwvvwwwwgwvwewvxgvvwfvvwvwwgwxvxexwwvwxxvffgxxwwxwwwVhvxfwxxxwwwxwwxwfxgvvwxgxxxxxwvxwwhwwwwwwwwwwvwwffvxfwuxxvwwwwevwwvvvwwxwwvxwxwwwwvvwwgwvvxeuwwwgwxhwxwwvwwewwwwwwwvhxvwwwxwwvvwwxvwgvwwxwxwfwgwgwwwgwgxxgxwwvwwwxxvxwxwwwwfwxxwwwwwwxwwwwvvwwwwwgvwwwwwwxvwwwwxxvwxwvwxwwwwwwxggxwwwxxxxxxxwwvwwxwvwxxwxxvwxwwwwgxgfgwwwwwwwxxxvwxwwvwxxwwxxxxxxxxwwwxhwwwxgvxwwwxxwhvwxxwxxwwwwwxvgxwvgfwwgggvwwwhgwfwfwwevvwwxgwfvwwxfxvfwgvggxvxwxxvwxwfvvxwgvwggwgfwgvvwwgwvwgvwwfxvvgwwwfvwwwwwvwwwggwvwxvwwwwhxwvxvwxwwwgwwghxwwgffwwwxvxxwggwxwxxwggvwwvwwwwxwxvxwfgwwwwxwxxxxxxxhxxxxxggwwwgwfvwwfxwwwxwwvgwgxwwwvvfwwvwwxwxgwwwxwwvxwwwxxxvwhxxwwwggvxwwvwwvvwwwwxxxwxxwxxwwwwwwwwxxxwwxwgvwwxxxwgxxwwxwwxxwxgxxxvxxxxwwxxwwwxvwwwxwxxxwxxwwwwxxwwwwxwwggwwghwwwwwwwgvvevgvevwxwvwwwfvvxgwxgxfwwwgxvxwxwxwwgvwgwwwwwwwvwfwxwvxwvwgwwwxhwwwwxwgwvxxwwxwwxwxwwxxxwgxxxwxxxwwxxwwwwwwxwxxxhxwwxxxxxxxwwhhxxwxwgvwwwvvwwwxwvwxgxwvxgwxwxxwwwxwxwvxxxxwxwxwxxwwxxwvhxxxwxxxwxxwwxxgwxwxxxwwwwwwxwxxxwxxxwxxwwxxxxwxxxxwxxwxxxxxxwxxxufuwvuvvvvvguwgufvVfvvGvwgvwfuvfugfvufwgwvwfffwvvVwuxwftvevffvvWvwfwuvgewwwwwfwwxwwefevVuvwvvwwvwwefwgwfwwxwwwwwfvwvffwvwwvwwfeWggvgwwwwwwvffvgguWwvvwxgwguvwvXwwwwuwgevvwvwgwgwfVwwwgwgwwwxwfgwgvgvwwwwgwwwwWwwvvvxwxwwxguvgvffvuvwwgvvvVgggvwwWfvgwggwvffwwvfgvvfwwwwvtvvwwvvwwwwvwuffwwggvwfwvwfwwgvwwwfwfwfwwwxewwwfwxxwxwxxwxwuwgxwvfxfxwvfwfvgwwwwwguwxxvwvxwwwevfvVgwgwwgwgWuwwwxwwwffxvxvwwwvwwwwwwxvwwwwwwwgwvvvwwVgwwfgwvxwwwwwxxwwxvxwxxeuugfgfvwvWxvWwgvvwwwwxhxefvwewvwxwwwxfvvvwgvwvwxxgwwweffvVfvffvvwwwVwgvwwvwwwwxwwvfuvVvWfwgwvgwgvvwwwgwgvwvvxtggwevvgwgwvwwxwvwwxwwwgwwggvvvwwhwwxxxggwvvxwwwwxxwwwgwvwvvwwxwwwwvwwwxwvxwwwwwwwfhwwxxhwvhwwwwwgwvhxxghuwwwfwgwwwgGgvgwvvvwwwwxwvwwwwvvwwvwxxwvvwvwwwgwwwhwwxxwvvgvwwxwwwwwggvwxggvwwxgwhxwwwgwwwwwxwwxwgvgwvwwwwgxxwfwwwwwwwxwxvwwxwwwvwwwwvgvwwwxgxxwvxxhhuwvwxwwxwwwwwwvwwwwwxwwwgwwwhxwxxxgxgvwxwwwwgxhhuvwfvxfvwgVVguwgwwwdVvVduwvuvwvefvggwvwvgvUVvUuwfwvwvgwvfuwggtwvdVweuvvwWugvvwUuwvfvwvefwVduwvwwvVvvgevwvvVvgggvvwgwwwxvWvwwwwfvvvgvvfuvwWvvwxgggwwffuwwgwvxxgwwwwggwwxxwwwvwvfuwwwvvwfuwwfwgwhwwxwwvvwwwvxwxwwwvwvxxwvwgwwfwueuvWggvwfuvwfuvvuwfgfvvvvwwvfWxggVdfgvvwWwgwgwfwwwxwwwwxvwwvwwgwwwwwxgwvvwgxvwwwwvwvwwgwgxvvwwgxexgwwwwwgvvwxxwgvvvwvvFxwxvwwwwwwwwhgwxxwwwhwxwxxxwvwwwexxwgvwvWwtwxxghxvwxgxxvvwxwxwxwWxffewVVfTuwvVffuvwfvvwvguxvVVvefvwwgwwwvwveugvhvwgwgwwwvwvvwwuwvwgwegffvwxwwxwvwwwwwvgwvwvwfxwwggVfvwgwwwvvggWfgwvwxfgvwwwwwwwfwwgwwwxxxhwxwwvxxwxvwxgggwvxwghwwvvxhwwfwwxwxwwxwwxwwwwwwxwxgwwvwwwwvwwwwwwwwwwxvvwvvfgvhvvwwvxgfvfwvvfguwwwwgwwwfwwvwgxwxxwwxwwwwxwwgwwvwwwwwwxgxvvwwwgvxwhvwggxxwhwwwwhgxwxwwwxfhgWvhwwgxxwxxxxwxvwwvwgWWxxwwxxwxwhwxxxwhwxfwxwwxxwgwwwxwxwxgwwwxwwgwwxxwxxwwwwwxwvxwfwwgwwwguvggfvvfwwgwfwwVgvewvwwwfxwwwvwgvvvgfwwwwwwguwwgwwgwxgvvwgWwvgvwwwgwvgwfvwVvwgWvwevgvvfwvwwfwwwfwggwWwwxfvgvwgvvgewwvggwwwwwwwgwgwxgxwwwwhgwwxwxwvwxxwwhxwxVgvewvwwwvxwwxwwwwwxwwgxwxwwwwwxwxwwgwwvwwwvgwgvwwvwwwWwvgfwffwvfvgwwxxwgwvgwwgvwwwwwwwwxwwwxwwxwwwwvwwwwwwwwwwwwgvwxwfwwxgwwhxxwwxxxwxwwhxxwwwwxxwxwwwwwxvwxxgvwwwwwwwxggwwgxwxxxwwxwxxwxwgxxwhwxxwwxgwwxwwwwxxxxxgxxfwxxwxxwwvxxwxwwwwwwvwwwwvuwvxVwvwvvwwggwwghwwgxvwewwvgvwxwxfvwwwwwxxwwwxggvwwwfwvvxVxwwwwxgwgXgxwwwwgvwwwwxwwwxgvwxwgwwwgwxwwxvwxwwwwwvwxwwxwxxwwxxxxwwxwxwxwwxwwxxxwwgxxxwwxgwxwxhvwxwgxwxwxxxxwxxxwxxghvwwwwvwxwxxfwwxgwwwwxgwxvwwhxxxxxxwwwwxwxgwwwvwwwwwwxxwwwwhxhxXwwwwwxgwvxxwwxwxxwxwwwwxwwxwxhxwxxwxghwxvwwwwwwwwwwxxwwxxxxxxxxxxwwxxxxxwxxwxwxxxxxxxuvvwfefUvtuweVfvwvwvUfwwfvggwwVvvwufvvgwguwgwVvwvwgugwfuvfeUTvgvggfufwgvwwwvfwvwwwwwegfvffwvvfwvwvwwwhxwwwwwgfffvwvgwffwwgvffwwvwXgwfvgvfwwwvgwggwgvgxvxhwwwgvwwwwvWfvgwgwwwwvvwwxwwgfwvvgwffwvxwxvwwwvwwwwwvxxffvfgfvvvgVuwfvVvefgwwUwuvewwfgufvwfuveWvvwhwufvgvgfwffgwwwggfUwwggUgfWvwgggvwxfwhwvwhgxvwvvvwvvVvwwgwwgwvfvWhfxwvxgvwgvwvveegvwwWggwvgxwvVwvgvwxgGwvwxvgwhxwgxxwwgvWwvwwwfwwwwwgwvwEwgxwxwWwwxhxfghwvwwwwwwwwxxggwwxwgvxgwvwxwweuvvdfefvwffvvwwgfwvgwgvxwhvgwfwwwvwxwwwwvvvhwwxwxxwxfgevfVeegvfwfwfffvvwwwvfxwwwfvgwfuvvvgwwwwvvwwvwvvvuwwxvwevvvggwvwwxwwggvvxwwwxwxwwfgwgvvwwxwxwwwxxxwwxwhwwgvwvwwvgxwwgwvwwwwwwwxwwwwvwwwwwwhwwxwwwwwwwwxgwwvwwwgvfgwuxwwwugwvwwufvvWvwwwgWwvvgwwxwwwwwwgwWxwwhxxwfvwwwfwxwwwwfwwgxgwxwwggwwwxwwggxwwwwggvvvfwxwwwvwgwwgxwWwwxxxwwwwwwggwwvgxxxwwwgwxwxwxhgxxwwhxwwgvxgwwwwgxxwvwxwxvwwxgwxhwwwhxwwxwwvvwvgtgvwvvUfvvwgVetwwvfwwwwfVevgwvwgvwfgfvwwwwvwwvwwxxwvwfwvwgVefwwwwwwwfwvvwxwwuvwwwvwwvwwUvwwgwuvxwwwfvvwgVetgvwwwggVefgwvwwwvwwwwgwwwwwwxwwxxwwxwwfVevwwvwwwwwvvwwwwuxwvvwvwwwwwhxxwxvwwwvvUvgvgVetwwwvgwwwvwwgxxwwggvwwwgwxwxwvwwwwwwwxwwxxwwwwwgvvwwwwgxwfxfwwwuxxgvxxvwwwxvwwwuwgxfxvxvxwgVetwwwgwwwvxxxwwwwxwgwxwwwwxwxxwvgxxwwxxwwxwwwxxvvwwxwwgxwwwxwwuxxvwgxxwvwxvxwxwwwwxxvwvfggvwxwwwvwwgxxwwwwwwwwgwwwwwwxwvwxwwxxwwvwwvwwvwwwUvwwwwuxwwwvwwwwwwfgvgxwvvwxwwwxwwwgwwwwwggxxwxxwwxwxwgwwgxwxxwwxxwxwwwgwxxxwwwwwvxwxvgwxxxwwwvwwwxwvwwxxwxwwwggfwwxgwwxwwvwgwvgwwgwwxxwhxgxwwwgwwwwwwwxwwwwwwwwwvuwxgfxwgwxwwgxwwwvwwwgwwwwwxwwxwxwwwxxxvwwxgwhwxxwwwwwxxhxxxxwwwfwxwwwwxxxwwwwxwwxxwxwwxwwwwwxxwwwwuwwgvwwgvwwfVWwwxvgfvwgggvfgwwxgffwwwwuwwwfgfgxxxwwwgvwgwwWvuhwgvWvvwuwwgWvvwwwgvxgwvwgwfwxwhgvxwxxwxwwwwWfexwxxwwxwwgggVVwxxwxwwwxwwxwwxxxxwwwgwvwwvwwvwxxgwxxxwwwwxxwwxxwxxxwwwxvVUvWWvguufgwwfeVfgvxxgvfwwxggfwgxgwwwwwxxxwwxwwwgfvwvwwwggvgwxwhfwwwvwgwgwgxxwwwhwxxvwvxgxwxhgxwwwffgwfffxwxwxwvvxxgxxwwwxwwwxwxxxxvvxwwwwwwgwgggwxxwxvwxwxfwxxwxwwwvxxxxwwwxVffwwwwggggVVxwwxhwxwwwwwwxgvxwxwwxxwwvwwwWuhWvwvgwwfwxwgXvhxhxxvwwxwwxwwvwwwxxXvvwwxxvwwwxwwxvwwwwxxxwwxwxxxxwxwwwxxxxwwxxfwwxwxgwwxxxxxxxxxwfwvwwhgffxxxghvwxxxwxxwvwxxxvxwxxwxwxxvwwwwhgvwhwwwvwwwwwxxwhxxxwxwhwwwxgxxxxwwxxwwwxxxxwxxwwxwxwxxwwwwwwxwxxxwwwxxwwxwxvgwvxwwggvwfwvwwxwfvvwvgfvwwwvWwwwgwwgwwwvwwwfvvwwwwvwVwwwwwgwwfvwuuwwxwgwwvwwvvwwwwuwxvgvwwwwwwfgxgwvwxwvfggvvxwwxfgwwxfwwxxwwxxwewwvgwxxgwwwwwwxxvgwwxwwxwwwwxwvwxxwxgwwfwuwxwwwVwwfvgxwvgfvfvvgwvvxgvvggggwwxwwwwwwxwwxwwfwwxxgwvvwwwwuwwwxxwwwwgwxgxwwwwgguwwwgxxwvwvwgwxwwxguvgwwwhxhxwwxgggwwxxxgwvwxvwwwwwxwwxxwwgvwxuvwwwhwhwhgvxwxwwwwgfxxwwggwwwwxwxxwvwvvvwwwwwgxwxvwwwwvwvvwwxxwuvwgwwfxxwxxvuwvgwwvxxwvwuwwvvwxgxwwwwxwxwxxxwwgwwwxxxxxwwxvxxxxyxxwwwxxxxxgwxxwwxwvvxxwwxwwgwwxwxxwwgwvxxxwwwwwvxwgxwvxwwwwwfxxwwwxxwxwwwwxwvwxwuxgwwwwfwxgxwwwwxxxwwxghwwwwfwxwwxxxxwwxwwwxxxwxwgxvwwxxxxvgwwwgwwvwwgwxwwgvwwwgwwvwfvwgfWgvwwfvwvgvvvvwguwfwgwwxvwvgwwvvwvvwwvvvwwfuwvwxwvwgvgwfuwvwgvwwwwwgwwvxwwxxvwwwvgwwwwwwxwWwxwwwwwwxxwwvgvwwxwxvvwwwwxwgWwwwwwxxvvwxxxxwxwxwxhxxwxxxwhwgvwxwwvwwfwvwwwwxvwvwxwwWwvwvvwwwwxvwvwwwxwxxwxwwwwxwwwwxxxvxxvxvwwwwgxwxxwwwwwxwxgwwwwwxwwxxwwwwwwxxxwwwwxwwwwwxwxwwwxxwwxxwxwwxwwwxxwwwwxxwxgwwwxvvvvvwxwwvvwwgwhwvwwvxwxvxwwwvwgvwwwwwwwwwwwwvvwwwxgwxxwwwxgwwwwwwfwxvwvvwxxfwwwxwxxwwwxwwxwxxwxwxxxxwwwwgxwxwxxxxxwxwwxvvvvxwvxwxvxwxvwwxwvxwxwxwwwxxwwwxxwgwxwwhwvxwxwwxxwxgwwxwgwxwxwxxxxxxxwwwgxxxxwwwxxwwwwxxwxxxxwwwhxxwwywgfvfvvxgeeuvvwwfWvffFeuwgwfgvxgVevxUuuwgUUgvgvFevfggfvwvwwgeevwfueevwgUfvwhwveewfgfvgvgetvveWfvvgwweevwgfefvggvwwwvwxwgvgwWutvwggggweVvvwxxvgwgwfwwWuwvxwwVvuwwhwwwwxwwwwgvwvwvegvwwwvwgwvxgvvwwwggxgwvvwwwvwwvwxwwxgwwwxwwwwwwgvvwgvvvvwwwVwvwgggfevfxWvfwWgeuwgetvvvxguvvvxgvvuvxggvwgwxvwwgwwfgwfwxvxgwWwxwxgxfwwwwwwwwhvxwwfxgwgwXgwwwwvhvwgwwwwwfwxwwgvgxgwvwwwwxvgwgvuwxwvwVwxwxxwwwwxhwwxwwwxwwwwvxwgwxxxxhwvwxwxwwvxwvwfwwwxwwhwwwwwgvgwxgWeuwgvwfwewgGeuwwwwUvuwwwvvwgfUutvvvxewVvvgwgwgvwvwxxwwgggfgvvvwvvwwWvwwwwgvwwwgfVUvwfvfwwwvwwwvvgVWFfwwVxvvwxwwwvgwwwwwhwwwxgxwxwxgwwwwwwwxxwxxxxxgwxxwwwxwgwvxfxwxwwxvxwxwwwfwwvxgwwwwxwgxwwgvvwwwvuwwwwwgwwuwvxwwggwgxXgvxxvwwxwgvvwwxwwwxxxwfxvwxggwwwxvwwwwvwwwwxxwwggwxwgxxgxwwwxgfwwxwxwgxwwvxwwwWwwWWwfxwGxgvwhwxwxvgxxxxwxxxxxwxwwxxxghwxhwgxwwxhwxxxwxwwwwwwxwxgwgwwwxgxwwgwgwwuvgwvvwwwvwwwwwvgwvwwgfvwwvwwxwvfwwgfvwwwwgvwgwgfvvwwfvwggwwwwwvgvwwveuvwwwwvwvwwwwwwwggfvuggwvvWwwvxvwwvxgwwgwwvwhwwvwxgwwwwwvwvwvgxwxxgWvuwwwgWwfWxwwhvwgxxhxxxxwwvwwwwwwwwwgwwxwvwwwgwhxxxvwxwwwwxwxwwwwwwgffxxwvwwwgwgvvwwwvwxwwvWevwvfvuufgxwwwvwvwwwvwwxgxggwwwwvwvwxxwwwfwxxwxwvvwwgvfxwwwxwwwgxxxwwwwgfwwwwggxwxxvwxwxwwhwwgwwwwwwgwwwxxwwxhxwxgwvwfxwvwwwwwwxxwwwxwwwxxxwgxwwfwgwxxwwwwwwxgxwhfwfvxgxwwwwgwwvwwwvgwwvgWvvwvwWwfWxwwxwgwwgvggxxwhwwwVvuwwwxxwxwwwwwwgxwxwguwvwwwwWwxwwfwxwxwwgwwvwxwwvgxwwxwwwwwxwxxxxxwxgwgxxxxwxxghwxvvwwxxxwxwxxxwxxwxgwxxxwxxgwwxxwgwwwwhwwxwwwxvwwwwhwhgwwwxwgwxwxwwwwgwwwwxxxxxxwvwwwvwwxxxvxwxhxwwxwxwxwwvwxxwxwxwxxxwxwxwwxwgxxxwwwwwwwgxxwxwwwxgwwxxwxvwxgxxxhwwxwxwwwxxhwwgxxvvwgwwwwwgwvgvwffvVwfgwffewvvVwwwwwwwwwwwwwgfvvvfwfvuwwwvwwwgfvvwwvugvvvvggfwvvvgwwwwwfgwwwwugvwuwvwwwwfvuggwfwwwwuwwwwwwgwvwwwfvwwwwvvwgwwwwxvwwwwwwxxgwwxvwhwxxwwxggvxvwvwwwwwwxwwwxwwwwvwwwxwwwwxxxwxxwwwwwwwwgwwvwwwwwwgwvfwvwuvwwwwffgwwwwwvxwhxufvwwwwvwwvwwwwwwvwgxvxgwvgwwwwwxwxwwxxxwwwwvxwwxwwwwwwxwwwxwxvwwwwwgwwwgxwwxwwwxwxvwwwwwwxwwhwwxwxwxwvwwwxxwxwxwgwxggwwwwwxwwvwvwufvwvwvwvuvvvwvugwxwugxvwufvwgwvxwfxfwwwwwwwgwvwwxvvxwwgwvvwxvuxwwwwgwwxuxgwwvvwhwwxvwwvwwfwgwvxxxxxwwwwwwwxwvwxvxxxwwwwxxxxxwxxwwxwwwwxxwwxxwxxxwxwxwxwwxxwwfwuwwwxxwwgwwwgvwxwwwhugvwwxwwgxwwwgwxwwwwhwhwxwxxwxxwxwwxwhxxwxxwwwhwvwxwvxwhxwwxwwxxxxxwxwwxwxwxxwwwwxxxxwxxwxxwwwxxwxwwwwwxxxwxxxwwxxxxwugwvwhgvxvgwwwvvwgvgwgWuwvwVwvgwvhvwvwwwwvgfuwwvWgwwwxwxwwvwwguvggwgwwwgwgwuwfwuwwwWwvwfevwwgxvvwgwgvtwwwGfxvwwgwgvgxwgvvxwwwxfWftgwfGgwwxwxwwvwwwxgwwxxxwxxwxwwggfwwwwvxwgvegwwWggwwwxxxwxwgvxxxxwwwwwwwwwwxwwwwwwvgwwwGVvvugWgwffwfgwgfwgwxwwgfvvfwwfguwwwxwwwwwwwxvwwvwwwwwwwwwwwvgwgvfwxgwwwxwwwgffwvhvwwwwgwgfgwggvwwxwwwwgfggwxwwgwwxxxhwvggvxxwwxwxvwwwxwwwgwxxvggwxwxwwwwwwxxwxxvwwwwwwxwwwxwwwvxvhwwwwuxggftgwfFwxwxwvxvxwwvxwwvwwggwxxgwwwxwxwwvwgvgwvvxgwdgwwGvwgvwWvwwwgwwvxwwgvgwwxfwwwuwwwxwwvxwxgwwxwwwxxxwvwwwwxwwwxuwwwwwwxxwwxwgwwxxwxxwwwxxwwwwxwwwxwxxWwwxwgwxxwwxwvwggxwwWwwfwxghwxwwwwxxxxwwwwgvwxxgxwwwxfwwfgwvwgwfwxgwwwxwhwwwwxwwwxxxxwwwxxwxxwxxwxvwxhwhgwxxwxwwwwxwwwgxxvxvwwxwwwwxxxwgxwxwwxwxxxxxxwwwxwwwwxxxwxxwwwxcffvfffVfevvufVvwvwvwfffwwwvvvwffwwwwvwwgwvwwwwwxVvuwveuffVfegwuvvfwgwwwwwwwwwfvvVvgwwvwvwgwhwvwwxwvffveGfuvVeufvwwvgwvvwwgvwvwwgwwwvvwwxwwwxwxwwxxffvufwvvwvwwwvwuuxwwwwwwwewvwuwwwwxwwwwxwgxxxwVfufvffwvVFfffgvvfgwwgwwvvvvwgfwvUfvffvwwvvxwvwVvwwwwwgvwwwwvgvgwfwvwvwvxgwwwvxvwgvgxwwvwvwwvgvwwgvwgwwwwhxwxgxv6UuddvwvgfvgveewvVgwwvwwVvwwvwhxggfwwxwwwfwwvwwwwvwwvfvvgwgwhwvwgwwwgxwwwgwwvwxwwwwxxxgwgxxwWwhxfevueVeefVevfgvwfgvvwwwwgwwwxwxvggvwvxxwwxvvwwwwxxwwfFdfcevugvggvwvwfvwgvwwgwgwvwwwwwwWxwuxwwwwwwfwvwgvwwvxwwwvfwfwxfgvwwwxwxxxwxwwwwwwwwxwxwwwwfvvwwwvwwwxwwwwvvxvwwvxxxxxwxwxxhxwxwxvxxwwwxvfguvfwvgwvwfwtfvvwwwwwwwvvfvvvwwwwwwxwwwgwWwwwgwxwxwxwvwwvwvwxvgxgwwwwwxwwwwvwxwwhgxxwwwwwgxxwvwwxwefwwwwwwwwwvwwwewwwvwwxwxwwxxhxwwwhxxhxwwxwwwvwwfhwwxxggwvwwgwwwwwxwwwwwxwwxwhwvwxxxwxuwfwvwwwuvvgfeewvwwvvwgwwwvvwwwwwvwwwwvwwwvwwwxwhvvwweewvefwvgwwwfvwwgvwvvwwwwwwwwwwwfwxwwwwgwwxwwxxgwfwwwvvwfgwwwvvwwwwwfwwvfwxwwwwwwwwxwgxwwwwxwxgxvwwwfwgwvvwwwwwxvwwvwwxwxxwxxuvvfevwueewwfgwweewgwweewwgggvwvwvwwwwwwwwxxxwwgxwxwwuvwfwwgvffxvwWggwwwxwuwwxgwgwwwwWxxwwxxwhwwwwvvvwfvwwwhxvevwwwwgvvvwwvwwwxwxwwxxgwxwwwwwwwwwwwvhVwxwvwwvwwwvvvwgwwwxwxwgxwxwxxxxwwvwvwwvwfwvuvfwgwvwwwvvvgwwwwwwwwwwwwwwgxwxhxxwwvwuwwvuwgwwwvvvxwhwwwwwwwwwwXhxwxvvgwhwwxwxwwwwwwwxwxwwxxhxwxwxxxwxwxwvwwwgwwwwwgwwvwxwxxvwxwwwvxxwwwwvwvfxwgvvxwgwfvwwwxuwwvfvwwxwxxwwxwwxwwwxvvwwwwxgwwxgwxvgxwwwwexwwgwwwxgxwvxvwwhxxwwvwwwwfwwxxwwwwwxwwgxxxxxxvwwxxwwwwxwfwxxvxxxwxTegvefvwUvfggugwUevvxvwgfegwwgwwgvwvwwxxwvVvwwwwxEeefwffweeegggwgVVVwwwwvffvwvwxefvvwwvxwvvwxwvwwwgvwwwwwxxwVevwgfvwdVvvfuwwfFewwxgVugwwfxvwwwwvwgvwxwwweffwwvwwfvwwvwfwvwhwwwxgvwxwwwfuxxxwxvwgwxwvwwwxEeewwfgwfUfvwgvwgVVfwgxgefwwwwvVvgwwwwvwwwvwvwgvwwwwwVfVwwwgguwvwwghfwxwfvgxxwvwwwxvwwwwxwxVvwwxxghwxxwvFevwvwUdvwwgwhgvWfwgwwgVwvwwvvwwgwwwwffvhgwxgwwfwvwwgwvxwwVwwwwWvgxxxwwgwfwwwxgxxwxwfwwwgxxxxwxwwUuvvffvvdguvfwfEUvwwwwfvfwwugwgwvxVvwwxwxweUTvvfwwduvwwhwgWfwwvhwgvwwwwfvwwwxwvwwwwVwgwwgwxwuwgwwwvxxwwWvvxxwgewxwxxxwxwxwxxgVwwwxwxwgxxwgvwwgxwxwwwxxxxwvxxxwwhweVfvvwwwwvwwwVfgvwwxwwWwgxxxevwxxxhgfgwxxxvwwwwggfwwwwwgxxxxwgvXwxxhVwwwxxgxwxwxwwwwgxwwxxwvxvwgvvxwxxvwwfvwwxgvwwxxwxwvwxwwxxwxwgwxxwvxwwwwfwxxwfxxwxwwwggwvxtwwwvvwfwVWfwvwgvfgwwvwwvfvgwwwwvggUvfvgwxwwwvwgwwwwwwvvwfgREvgwwguwwwgcVvwxvvvwwwwvvwffuwvwwwvxvvwvwwwxvvwwwVWfgwwgwwwwwfvwgxwwwwwwwwwwwwgvvwwwvvwvfwwwwvwwxwwvwguwwwwwvvvfwwwwwwxwvuxgvvvwwwvgvvwwvxvwgvfgwgcVvfvwgvfwwgREvhxwufvwwwxxwwwfvvwwwwvwwuwwwwwwvvwwwvwwwxvxwwwwwwhxwXwfwvwxwwxwwgvvwxwwvxwxwwxwxwvxwxwwvfvgvvwwwwwwxwufvwwfwvuexwvexgggwvvvxwvvwwwvxwvwwguvwxwwwwwwwwwvuxgwwxxwxwvexgxwwwgwvvxwxwvwxfxwhwwwhwxwvggUvvwfwwwvvvwwwfwxwwggwvwgwwwwwwwwwwwwwvvwwxwvfvgfuwvwgvvwwwvvwwgvvwvvvxwwwwuvwvwxewvwxvgvvvwwwxwwxwwwwwvwwxwwvxwxwwwvwxxxxwwWwwwvxvvwgvvwvxwvvwwvwxewwwwgxwxwvwgvvwvvfwvwwwuwwxwwxwvxwfxwwwvwxwwevxvgwfwxwxhwwwwwwwwwvxvwwwwxwvwwhwwwvgvxxgvgwXwwvwwxwwwwxvwwwvxwguvwwhvvwvvwwwxfwxvwwxvvwwwxwgvvwwxwwwxwwxwwxwwxwwWwxwxhwxwxfvwwxwxwhwvvwvwwwwfvvwvwwgwggwwwwvfwvwgxwwwwwvwwvwwwvgwfvvvwwvffwvxwvwvwwgwewvvwwwwvuwwxwvvvvgwwwxwuwwxvwvvxvvvwwfVfvvxwvvwgWwwgwwwxxgvwwwwwwwvxwfwwvwvvwwwgvvwwvwvwwvwvwwwvgwhwwvvwwgwwwwfwvfwgvVfvwvwwwuwvhwwwfvwwhwgvwwwfvwvwwwwgvwxxhfwvvwwwvuwwwwvgwwgxgxxwfwuwwwxvvxhfvwwxwwwwwwxvvwvwwwwwvwxgfwwgwgvwwwvgwvwwwxwwxgwwgwwxwxwwxwwvvxwxgwwwffwxxvwwxwwxxwwwxwgwwxwgwwgvvwwwxffvwvwgwvwwgwwvwxwwxxfwwggwxwwxwxvuwwwwwwwgvgvvwwggwxwvvwwwwwwwxxxwwwwwvwvwhwwwwwwvvwwvwgwwxxwxwxxghwxwvvwwhwxvwvwuwwwwwwxwwwwwwwuwwfwuwwwwwgwgwwwxwwwxxvhgwgxvwxwvxwxwxxxvvgxwgxwxwxwwxxwxwfwwxwxvxxvvwxvxxwwxxwvwgvwwxwwwxxwwwvwwxvxwwwwxxxxgwwvvwwwwwuevwvgwfffwvuwvfvggvfwwvUvfwvwvvuvwvgexgwfvwuvvwgfgweuvfwwwvvvwvffwffufvUvvfWevugwfvUvvggvVufvwffvwfwwwgvgfgvvfwwfWwwfwwWvvtwvVfwvfwvuvwuffvgevfgvvVvwwxvwweuwvvxxvWwvwvwwgxxwwfgwgvgffvwffvwfvwgwgwwxwxWwgwgvvxvgwwewwwfwvhgxwggwxwwwxwvfvwvfwwfVvevewevGfffvwwfewewWwfvfvvvvwwfwvwwwvfvwwgvwwgwwewhgwfwwwwxwfwgggwwfgvgxghggwfWxfvvxwfggwwgwuwgvwxhxwwwxgxwvxwgvvwwwwvfgwvvwfvewWwgwggvwvwvwgvvvgwxewwvxwwgwfgwgwgwxwvwwvwvwwwwwwvwvxggfwhWxewgwfxfwwwwxwxxwwwuxvxxgwxxxwgxuewwfefwvfffvvwwvfeffvvegvfggvxvvwdvvwewwwxWfgvhvhvgwxxgwgVfvvfwwgfwwvwwwvvfgvfgGwvxwggvvVuwgVwwvwwwhvwWxWvghhwfxwwwwwwwwwwwvxwxxvgwxwxhxwxwwxgwxvxxwwxgxwfwwxfvwvvwgvgwwwwwwwwxwwggwwxxvxxxwvwwxxwwvxwwwwwxWvwxxxfgvwwwwfvwvwwwevvgwgwgwwggwvwvvwwwwvwfwwwhwwgwgwgwwvwvgwggxwfhwwvgvwgWwGxvwwgwxwwwxwwwxxwwxwfvwwgwwgwgwhVvvgwvwxwwwwwwgwwvxwwwwwwwwxwvwwxxwwwwvxwwwvgxxwwxwggwvxwwhxgvhxgwvxwxxvwwwwwgwxwxwwxwhwxxhgwhxwwgcffvvwwvfwgwvffVfwwffwvwefvvvffwwwwwwefVwwwwxgvwxVfevvvfwfeewvvuwvffwwwwvfvvvwwwgffEgffwwfwwvvvfvfwgfwvwwwwweVvvfgvvVwfvvwUVefwwwwgfwwwwfVevwwvwxhgvvvxwxwxwxxxwVvfwfdwvfwwwwgvfwvwwwxgwwwugwvwwwwwwwwwwwvwfxfvgxxwwVvuwvfggfvwgwfUvwwwvvugwhffVfwwwgwxwvwwUvvwwwwwvwxgwwvgvgwgxwwwwwvgwvxvwwfgwwxwvgwwxgvhvxxwxvxwvwwhwwwhxgxgxfFdfvvvwvwwwxxeSvvwgvxwwwWvgwvvwfgwwWwwwwvgwwwgvwwvwwvwwwwwwwwwwwxwvgwwwxwwxwfgwhwhgwxxxwwxvwxwxxwwwffvfwvgwwvwxUgdvvvwwfwwxwVVewfwvxwwxwxvvvwvwwwVVSwuevvvwwwwddvwvexwvgvwvvgggwfwwgfxvwwwvgvfwwuwxxwxvxwwwxxwxxfwwgwxwxxwxgvwxwxxvgvvxxwwxwwwefvwwwxvxwwwuwwvhxvwwwwvwwxxxwxxwxxxwwwwwwwffvuuuwwwwwxvewvxwwwvwgvgvwwwwwwwxwgwwugwvwxwwxxvwxwwwvwvwwvffvwwgwwwwwwuwwvhwxwwwxwxgwvwwvxvwhwxfvvwvwwvxxwxwgwfwwxwxgxwwwwgwxwwwxwwxwwxgwwwgvvwwwxvwwfwwwwwwwwwvwwwxxwwwwxwfvvvwvvwveVVvvwvvvwggwgeVuvvgwwwfvfvgvvgwgguxfvwwvwwvwvwveveevwwffvguvfguewvvvwwvvwwxwwwvfwwvwwwwvvxwgwwwwwwwwwwhxwwfvxvfuffvvwwvvvwvwgfvvwwwvfgvvwevvwvwwwwvwxwwwwfgwwwuwwvwwwfwwwvwxwwwwwwgwwvwxwvwwwwwwwgwwxwwxxwgvUffuvwvvfvfvuvweevvwvwvvggwxvvvvvwwwwgwwxwwhvvvwwxwxgwwwvwxwwvwwwggwwhvvwwwwxwwhwwwwwwwwwgwwWxuxwwxwgxvhwvvwfwwvwfuvwvfwvvvvvwwvwwgwgxwxwwwgwvwwgwhfgUwwwxwwwwgwwwvvwxwwwhwhgxfwgxwwggwvwwxwvwwfwggVxwxxwxwxxwhvwvvxfuvvvwwwvvvwvwvvvgvvvvvwfvvvwvuvvwwwwwwvwwwxwvhvwwvgvvgwuvvgvvwvvwvgwvgwwvxwwwwwwwvwvgWWfwvxxwwxwxgxwxwwxxwxxxwxwwvwwwwwwwwwwvxwwwwwwwwxxxwxwxxwwvwwwwwwxxwgvwwwwwwxgxxwxwwwxwwwxxwuwvwvvwxwwwgxxwwxwgwgwwxvvwwxxgwwwwxxxwxxxwwgwhxvwwwwwvhhgvwwwgwxgwwgxvxwxvwggwvgWfwgwxwwxxxhwwwwxwwxvwwwxwwvwwwwwwwxvhxxxxwwwwxxwwwxfwgxwwwwxwwwxwwwxwvgwwgwwwwwhwxxfxgxwwwxxwxwwwwxwvwwwxfgfwfwvwwwxvevwfgwwfwhvvwwguvgwgvwwxgwfwwwxwwwggwfvvfefvvgvfwwggwdevwgvwxwvwwhwwwvvwwgxvwgwhfwvwxwgwwvgwfgvwffwwwwgvvxfwwwwwwwxvgggwxwhxgxwwwwvwwgvxvvfwwxwwhuwwWvwwwwwwwxwxxxxwwxwwwwwgwvvfwwuvwwgffwxwgwdewvwwwgwvwxwxxvwxggvvxwgvgwwwwvgxvvvwwwxwggwxwxhxfvwhxvwwwhxwxwxgwwwxhwvwxwwgwwwxgvwwvfvwvfwxguewwgvfvwvhwfwxwwwgwvxwvxwvgxxxwgwwwwxwwghxwwvwwgwwxgxxxyxwwvwwvwvxggVwwufwwgwwfwhvwvwwwwwvgvvffwwwvwhwgwwwvvwvwvwvwuwwfgvwfwwgdvwwvwgvvwwwxwwhwwwwwWxgwvwwvwvxwxxwwxwvxxxwwxwwgwfxgxwxxhxgxxwwwvwwxxwvwfwgwvwgwvvvwwwxwwxxwwvxxwwxxxgwwwwwwwwuwwxvgvwwwxtwwwfwvwwvvwwxvwgwxxxxwvvwwwxvwvxwxxxwvwhhwgwwhwwxxxxxxxwwwxhhwwwxxwwwxwwxwwxvwgwwwhwwuwwhxhxwwxxxwwxwxwxwwwwxxxvxvhxwxhwxwwxxxwxwvvwvfwwvwxfvvwxgwwwwvwvwxwgfvwwwxwwwwxvvwwwgwgwxwvgwffewgfvvfvwwwwvwwwwwgwwwgvvwugwwfwvwgvwvfxwvwwxhggwwvVfvwwwvfwwgvvwgwwgvvwwvwwxwwxwxwgxwwwwwwWvvwwwxvxfwgwwwwwwwwvwuwwwvhxwxwwxxvwwwfffguvwffwwgvgwwwwvwwwwwvgfvvfxwVwwwxWwwvvwwwwxgwxwhxwgfwvwwgvWwvwvwxwwxwxhxwwxwxxuvwxugfwwwwwxwxxwghgxwfuwgfwvwvwwwwwgwwwwggwvxwvgwwwvxwxwwxxwwwwxgwgxxxxxwwwwfhgwvwwvhxwxwxxwwwxwwvxwxgxwxvxwfwwVfewwvwvwvfwvwwwxwwwwwvvwwwwwwxwwuxxwfvwwvwvvwwwwwfwwwwwwvgwwwwvwwvwwwwwxwwxwhwxwwxwwgvvwwwvvuvxwxwfwwwvxxxxwwxxxxxxvwwwvwgwwvvxwwwwxwxxxwxwwxxggvvfwvwwwvwvvwwwwvvxwwxvxvvwvwwxvwwwwvwvgwwvxwxvxxwhxwwxxgxwvxwwxxxwxxhhwxxwwgvwvgwxxwuwxxxxvxxxwwhwwwwwvwxvxwxgwwwxxwxxvvwwwwwxwwxxsgfwvffffvvggevfffgfwwwwfevvfvvfvfwfevvwvgwgevffvwxwxxwvfwvvvvwfSUvvvvwvgwxwwfwwxuwgSUvvwwvwwgwwwfvwxuwwwwwwffgwfffvwwxvwvfffvfwvwgwxgwwwwwwvggwwwgvwvwfvfevvvvvvwxxwwwgwwwewwwwwwwgwvwwwxwgwwxxwwvwvwwwwwvfwvvwwgSUvvvvvfwwwxwwfwwxuwwfSUvwvwwwwgxxfvwwxuwwwxwxvgwgwwwwwwggwwvhwgwwgxwwwwwvwwwgwxwwwwgwwvwxwfevvvvwvwwwvfwwfvwwwuwwwgwwfwvvwgvwwfvxwfwwvwwvxgxwwwvxwvwvxwwvwgvvwwxwwfwvwgxgxwvvxxgwwgwwvxwwwwwgvwvvvffffvwwwvwfffvgvvwgwwwwwwvwwxfvwgvwwwxwvxxgxfevvvvvwvvwvvxfvwwuwwwvwwwvwwwwwfwwgwgwvvvwvwwwxwwxwxxwwwvxwwxwwxxhwxxxvwxxwwxwwwxxxgfwwuwwwwwxvwwxwwwxwxxxwxvwwwvwxwxvwwxwwxfevvwwvwvgwxffwwuvwvgwxwhwwwwvwwxwvwwwwwwwwwvwwhvwwxvwvvwwwxwwwwvwwhgwvgwwwwvxwvwwxxwggwwvwgwvgwvwwxxvwwwvuvxwwvwgxwxwwwwwwwxxwxwwwxxwwxwxwwxwfxxwwwxggwxgfwxwxxwwxwwxxwvxvwwxWvvwwwxfgwvwwfvxwwwffwwvwWvwvwxwwwgvwwVxvxwwwwxgefwvwweevwwvwfgwwxwvwwgvwhvwvvwwwwxwwxxxgwwwgvxxwxxvwxVffvwwwvwxfvggVWfwvwxwwwwxwxvwwxxxxhvwgvwgvwwguwxwgwwxgwwxxwwxvwwxgwxxxwxxxvwxgfwgfwwUegvgehgwwwwwvwgVwwWvwwffwvwvwwxwhwwwwgxxwwxxwxxgfwwgwwwVvgvgwhxwxxxwgxwwWxvxgwxxwwwxxxxwxxxVfwWfgvvwufwguxxWwwwwxgfwxwuxxwguwwxxwwwhvxwwWwwwWvwwxgvwwwxxwxhwxxwxwwwxwwxwwwxfVfvwgwvxgwhffVfxxvwxwwwwxwxwwwxvxxwwwwgwwvffvwwwwufgvvwwggvhxwgwvwxvwwvvwwxxfwxxgwwvwwxwwwwxWvwwwxxwwxxvwhxxwgwxuxxvwwfwxxwxxwwxxxxxxxxxxggwgvfvwvxuvwxgwwwwgwwxxgxwwvwwwwxwxxwxxxwgvvwgvwwwwwxxwxwxxxwxgwwwxwhgwxxwwwxxwwhwxwvwvwxxxxwwxxxxxxxxxxxwxwwhwggvxxwxxxwuggwwvwwwwwwwwvwwwfwwwwwvfugwwwwvvwwwwvUfvvvwwgwwxwhvewwUfwvgwwwwvevvwwwvwwxwuUfwuuvvwwxwwgvwwfwwfwxwxwwwfwxwgwvwwwgwwwwwwwVgwvfvgwwwwxxgvvvwwwwgwwxwwvwvvwwwwvwvwwwwxfvwewwwwwwwwwwwvvwxwxwwvvwwfvwgwwwwwwUfwgwwvwgwwwvefwvvwwvvwwxwwvwvwgwwwxxxwxgwewwwgvwwwxvvxvwwxxwfgfgwuwwwwwXxxhxvwWwxgvxwxwwwfwfvwxwxwwewwwgwxwvvgwugwwwxxWwgwwwgwxwhwxxvvwwxvgxxgwwwxwwxwggxwgxwwvxgxwxwwxwwgwwvhgxxwvwvvwwwwwwfwwgvxwwwwfwvvwwvwwwwxwwvvwwwvwfwevwvwwwwwxvvxwwwgxxwwxwvvvwvfwwwwgwwxwxwvwwxxwxwwwwwxwwvwwwxxvwwwwxxxwwxxxwvwwxxxxwxwwvwwvxwxxwwxvvwwwwxwxwgvgvvxwxwwwvwwwxvvwuvwxwxxgwwwvwwxwwwvhxgwxxwwvuxvvgwxxvxwgxxwwwwxxwgvvwwwxwwwgwwxwxwwwwwxwwwwxvfxxhxwvwwwwwxxwxwwxVwwxwgxwxvvwwwwwwwvggweewwwwwwwwvvwwvvwwvfvwwwwxwwwvwfvweuwwwwwwwwwwwwgeevvwwvwgvwuuvwwwwxxwwvvvwvgwwwxwwwwwvwwwwwgwgwwwwwvwwwffwwwgwvwwwgwvwwgvwwwwwwwwwwwwxhvwhwwwwxwwwwwxwwwvfwwwwwwwwwvfwwwwwwwxwwwxwvxgwxxwwwwggeevwwwwvwgfwwfuvwwwwgwwwfvvwwvwwwwwwwvwwwwwwwwwwwwwwgwwvwxwgfvwxwwgwgwwwwxgwwwwxhwgwgwwhwwwwxwwwwvwwvwgwwwvwwfxfxwwwwwwwwwxxwwwgwwwxwhwwwwwxwwgwxwwwwxgxvxxwwxwxgwwxgwgwwxwwxwwwwwwvwwwvwxvwvwwwwwwhwwwwwvwwwwwvgwvwhwwwwxwwwwwvwvwfwwvwwwwfwwwwxwgwvwwwwgwfwwwwxwwxwwwwwwwwxxvwwgvxwxwwwvxwxxwwwwxxxwwvwvwvwhxwwwwwwvxvwwwwvwwwvvwwwwwwvwfvwwvvvwxwwwwxvwvxwwvwggvwxwxwwwxwxwwwvwgxfxxxwxwvxhwwwvwwwwwwvwxwwwxwxwxvxwwxwxwhxfwwxwxgwwwwwxxwwxwwfwwxwwvxvfxxwwgwwggwgveggggVwwgwdVgffwwvugvwvUdvwwvwvvgwwevgxwwxgwvvwwdVwvvwwwfwxgwvvwwvwwwfwwfwvweuwwwwgwwwxwvwwwwxwvwwwwwxgfwwwfvwwffgwwwvwVuwggxwwwevwxgxvxvwgxwgvxwxgwwgwwwwfuwwwgvwwvxhvwwvwwfwwwwwvxwwxxhwvwwwxxwwxwwgvwwefvewxfwwwwhwvvwwwvgwugvvfwwVdwwgxwwfwxwwwwgwwwwxxwwhwwgwwwwwwwvxwhwvwwwxggxwvwxwwwwwxwxhxwgwwxwwvvwwwfuwwvvwwwvwxgwxxvwvvwVfwvwwwwxwwxgxwwxvwxwxwghwxwvwfxwwxVxwxwwVgwwxhwwxxvxvgxwxxwwwgfuwwwfgwwwfgfwfwwvvfwfvvwwwwwwfvwwwwxfwwwfwwxwxwwxwvwwfvvwgvwewwwvwwwgxvwgfvwwvwvwhwwxwwwgxgwwwwgwxxwgvwwwvxwywwxwwwxxxxxwwxhwwxwwhwxwwwwwwwwwwwwwwwxxxxxgwfgxvfwwfvwwfvgwwwwgewgvgwwwwwwxwwwwwxwwwwwgxxxwxwwwwwwxhvwwwxwxxhgwwwxgvwxxxwwxwgwwxxghwxxfwwwxxwwwfgxwwvwwwxwwxwwxwhgwxVxxwxwwwwxwxxwwxfxxgwhWxwgffwvfvwwfggvfvwfwwwwwvffgvfwxefWVeVuvvwvggwwvvwwvwvVvxvgwxefgeeevvffwwfvwwevwwvwwwvwwwxffvgvvggwwwvxwhevwwwxwwgwxxwfwxvfwwffwvwwvVvgfwwgvwwxwvfwgfwvfuwwgwhwwwvfwwwwwwxvwxegwwvvwwwwvwwwwwwwwvwwwwvgxxhwxhwwwxwwwxxwhweVgveuvwvvvwwwwwuvwvvvwwvwxwwwwwvfvfvvwwggwwwwhfuggxwwwxwgxwxwwwvvwwwwwwxhxgwwwwwxxwxxxwwwggwwgwwwgxvwwhwgwWwuhwvvgvvfwwwvxwgwxwvvwgwfgvxwxwxwfuwgwwwgwhxxwwfwvwwxwghUwxvwvwwwwgxgxwxvxwxwwxwwgwwxfxwgwhgwvwfgVxwwvxgxfwxwwhwvxwfvxffwfvffwwvVvvwwgvwxxwwwvfvfgvvfuvwwgghwvwwwwxvwwwwwwxfggffwwwwgwwwwgwwwwgwwgvwwxwevvwwwvgwvgwwhwfvvwwvWXfgwwwxwgwwgxxwwxxwwwwxwxwwwxxwwwxxwxxwwwwwxwhwwwwgwxxwxxwxxwwwwwxxwgvwwwwwwwxwxwxvwxxwwxwxuwwwwwwfwwxwvwwwwwhwwwwxwxxwvvwwgwwxwwhwxwwwwxwxxxhwvwwxhhxwxwwxwwwwxgwwhhwxwxvhwgxvwgWfhgwhhvwxwwgwwgvxwwwwwwwxwwxwwwwxwxwxxxwxgwwxwwxwwwxxwwwxwwvxgwwwwgxwwvwvwxxwwvvwwwwwwvwfvwwwwwwwwwvvwveuvvwggvvwwwwwwwwwUfvvwgwwwwwwwwwgwwvvvvvwwwwgUfvevvwvwwwwwwwwwwwwgwwwwwwwfwwgwwgwvwwwwgwhvwwwwwvgwwgwvwxxvwwwwwwwwwwxwwwwwwxwxwxfvwwhwxhxvxxwwwfwvgwvvwwggwwvwhwwwwwvwvwgxwxxwvwxxwwwwwwwvwvvwwwwwgUfveuwwwvwvwwvgwvwwwwxwwwwwvwwhwwwgwwwwgwwxwwwwwvgvwwxwwgwwgwwxwwwxxwwwxwgwgwxhvhwxwwwgvwwwwwwwwwwvwwvwvwwwwxxwxwwwxwxxvxwvwxgwvgwxwwgwwxwxwwwwwwggvwxwwwxvwgwxxxxxwgwwwgvwwwwwgxwffwgwwwwwwwxwwwvwwwwwwxwwvwwgvwgwwwvwwgwgwwwwwfwwgwgvwwxwgwwhvwwwwwwxxwwgwwvwxwwxwwwvhwwvwxxwwvwxwxxxxwwwxwfvwwxwxwwwwwwwwwxwwwxwwgwwwwxwvggggwgwwwhwwwwwxxwwvwxxwwwxwxxwxwwxwxwxxwwxhhwvwxgwwxxwgwwxwxxxwwvwvxwwwwwvhxwgvvhwwwwxwxxxwxwwgwwxvhwwxxwwvwxgxwxxxxwxuUvwfvgvgvvwvfvwffwvwwwxfdwwefwwgvWgvfgwfgwfwwwgTfwTevvvvwvwvggfwwveewufwevvwfVegvwgwvFwvWwwwfVewfffgvvwggwwvFwfGvwVwwvgwwgwvuvwgffwfvewwuUgweufwvwwxffwwfvgfuwvwvgWvvgwwwgvwwwgwwgvWwWggwwxwwwfWvwVgwwvgwwwvwwwgwxvwwwwwggwxwxwwwwgwgwwwfwwgvfvwvegvfvwfEfvwwwwfVwugwfvwVvvwwvwvvwgwwwwfVgeWwvevfwgxwxgwwwxgvwhfwwvwfgwxxwwfwghhvVvvghwgvwXxxvWwvVwhvgxfxwwVvwfvwgwwvvggwfWwguwwvfvwwgwwxwxvwVwwvfwwwxwwggxxfwwgwvwvwwwwwxwgxwvwwxgwuwwwwvwwwXxgwgxexfwvwwhfxwwwhwxwwevwfffwuvvuvwfefwTvgxvwwxvwvwgwvwfwuvvwvxVwfwwvwxwwwwwwwxggvwegvwvwwxgvwvWgwGvxvfxwwwwvvwwwwwhwvgWgwgvwwwxwwXwwwgwvvwvxwgwvwwxgxwgwvwxwwxwwvwwxwwwxwwvxwghgwwwxwwwwxvwwwxwwwwwfwwwgggwvwvwwvgwwwwwxgwwwgxgwwwwwwxwgvwgxvwvwwxVggvfgvfvwvwwxwvwxwxwxvwvwwwxgwxwwxwwxxwwwVwwxwgwwxwwwWwwgwwhgvvwwgwwvgwgxxwWxvxwwwvXwxwwxhwwfwgwwvxxxfwvwgfwwwxggwvgwwwxgwxwwwfhwgxvwwwwxxxwwxwxxxxwggxwwwwwxwgwxwxwwgwxxxxxwwwhgxxxdufueeuvvvfufuvvxvwgwvwwfuegvufvvwvwugvwwwvwwUutfgfUfvfuvgwwwvfwwwwwvwwfeevewvfvwwvwwgwwvwwwwxwxeeuwfUTvuwvvwffvvwwwwwwxdWvvfvvgvwxvvvwefevvfufvuwvfvwvwwwwwwwvwwwwwugwhwvwwwwxUedfgfUVefvvwvwwwffwwwwwgwwwvwveUfffwfvwwwwwvfvwwvwwxxwgfeWggfwvwwxfuwwwxxxvwwwgwwWwfwfvgwwwwxwvwxxwxwxxweEUvwggVvvwvwvvwvgwgwwwwwwedwwgvwxgwxgwwwhwwwwgwggfgvWwwwgwwwwwwwxwwwgwvxvuxwgwwxwwxwgwvxevuvfVdvwwgxwfvvwgwwwxdfuvuvugvvuvvwvwfVdwvgfWvvvfvvwwwwvwwxwxvduuvgvuvwvwxwwvgwxxwwwvvuwgwfuwxxwxxxxgwxwWfxwwwwxwfvwwfvwwxwwxwwwwwhwxgxhwwxwwuffvgvvwuvwwvvwwwxwwvxxwvvwxgvwxwwwwwxwwhwwwwvgwwgugwwvwwwxwwxxxwwvwwggvwxwxxwwwxwvvwvvvuxwgvwwxxxwxwwwxxwgxwgxwwvxxxxwxvwvvwvxxxwgwwxxwxwwwwwxxxwwvwxxueuwvfvvvwfWwdevvfvgwwwvvfweduvfwvwvtvvvwvfvwvfvwvuvvwvvwvgwgwvfwfedvgfuwvVfevfvwwwwwgwwwWgwefufwvVvuvvgwvvvgfvvgggvwwwwxgwvuvvefvvgwwgvugvffvvuggwvwvwwufwvWfvwwwwwfuwxwwgwwwwwwgvwwfufwwxwhwvwfgvfxwwwwwwvxvgwvgwwhwwwwwwwgwwwwvwvvvVefvVevvfgtvUfwwvwgfvffgvwTuvvvfwtvvgwwgwgfuvwwwwuwwxvwwwgvwwvwwffvewggwUwxxwwhwgvhxgvfwvgfwXhhvfwwvgxfhxwxwwgvvwvwevvwwwwwguvvgwtwwgwwWwwwvxwvgWwwwgwvvwwwwwgvgvgxwwuwwwwexwvhwwWwwhwwggwxwwwwwwvvwwgxuxwwwwwgwwvxwwwvevwwuuewvvvvfwewwffveuvggvxwwwgufvwVwvvvwwwuuvxwwvgwgwwfwwfuwwgfvvwvxwwwfvvWwguxwxwwggvwvgwgvwXhgxgvwvvvwgggwwwwvxwwgwwxvxwggwxxwxxxwxvvwwxwwwwxvwxwxwwwxxwwwvxvwwvvxgxwvwwwwwxwfxxwwfxxvwwggxwxwhwwwvwgvxxvwugvvuvwwwxwwgwevwvuwvwwwwwwwvwvwwwxxwwvwxxwwggwwwvgwvwgxwvwwWgggvwxwwgwxhxxwwwwwxuwwwWgvxwwwxgwwhvvwfwwwwwvwwvwgwhwwgvwwwwvfxwxxwwwwxwwxwxxwwwwwwwvwxxxhwwwxxwwwwwwgxxwwvwwxvxxgwwxxxxwxwvhwwxxVuvfVFUuvwwVUdvvWgvwgfWWuvvwgwvvgwggvgwwwwvwwgfuwfvvwfwxxvVgeWuegfevvuffvgfvghguwgwwwgfufdfgvfwvvfgwwfvWwwvxwwvvwxgefwwwwvvggfvffwwwwwwwvwwgvvwwwwxxwwwwvwxwwfwwewfvgveffvwwxwvWggvwfvwwwwwvwwwxxwxwwwvFWfgffVVtewvffvgeuwwggvvfgvxvwWvvvveuwwvwwewgvhvwgwwwwwvvhhWfwgwvwvWxghvxwhxwwgguwgwwxvfWxvwvxvhHhewXwvgfueevwwgwwwgfgfwgvgfvgwfwwwvgvwwwgfvvwxwwwwwwWXUgwwvwwwxgfWwwwWfuxwgWXVgwhwwfxwggfgwwwwxghfhwwwwwxuwgggfewwwvuwwwWuuwfvgvfvwwwxwgvwwvwgwwxwvwwxxgffwdfgvvwwgvuwwggwwweWwwvwwwfwxWuegwwwxxwwwHGewXvwwwwwwwwxwwwwwxwxvxxwgxwxxxxxxhwxwxwwwgwvwxxwxxvwxgwwwwvwwwxwhwxxwwwxwxwwvxxhwxffvvvvfwwvwwgvweggxwvgwwwwwfwwwwwvwxxxgvhwhgvwxwwwwwwwxgugxvgwvwwhWHexXvgwvwWWuxxwgxXXvxvvghwwwwwwwxxwxvxggfwwwxwxxxwwwwxxxxxwvwxxwwhhfxwwwxwxwhvwwxwxhwwwwwwwwxxxxhxxvgwxwvwwwvxwvwvwvxfwvwxvgvvfuvwwWvwvwfgwvvvwfvwxwwwwwwffvvwwggvvwgwwxwgxwxxxgvvvwudvvvxwvwvuwwwwwgwxwwxxwvwxuvvwwwwwvwxgwwwvvwgwxgggVwfffggwwvgwwwvwgvgvvvwwwwwwwxvxwwwwtwwwvwwwwwgvvwwwxwwgwfgvwvwhwvwgggwwwfxwvwxfvfgetvvggwwvgwfevvvwvvwwwxwwwwwfwwwwwwvfwvwgxxhxxgvvwxfvwxwwxwwxgxvxxwxwwggwgvvvwxvgvwwvwwfwwxwuggvwwtvwvggwfwwuwwwfwgwwwwwvvfwxgwwxxwwwxxwwfwwxwgwwwwwvxwwwwwhwwxwwxwwhvvvvwwxwwwwgwwwwwxxhwggfvwwvgfvwwwwxvwgvfvwvwwwwxvwfhgvwvwwuuvwwvwwwgwfgvgwxwwxfgvgxxxwwxgvwxwxxwxxxvwwvwgwwwxwwwghxxuwwwxxwwwwwxwxwwwwvvwxxvwwwwwgxxwwfvwwwwxxxvfwvwuwwxwxxvxwwgxxwxxxvyxwvvwwwxvxwwwwxwWwwxxwgwwvwgvwxwwwxwwvwgxxxxxxffxwxxwxwvwwwxwwwwxwwxxxwxxxhwwxxwxvhxwxwxxxwwwxwwgVfwgvwwwwwvwwgfugwwvwvwwfvwdVgvfuvuffwvfduuvwxxwwwxvvwgugwgwwgwvwwwgvvwvxwwwwefvvwwdvuwguvwwgwwwwwwwvvwwwvfwfvwgvvvwwggwxwwfwwxxwwgvfwwwwxwwvfwvvvgwwwwvvwvwwwgwwwwwgvwuwvwwwwvvwfwwwwxwgwwvvwvvwwwwwfwwwhwvgvvwwvwwwdVwveuvwwwvvwwwvwwwwwgwvwwxxwwgxwwxvvxwwwgvwxwxvwwwvwvwwwwwxxvwwwwhwvvxxhwwwwvwwvwwwwfvvwwgwvwwgvvwxguwvwfggwwwxwwwwwwwxxwgwwwwhgxwxwhwxxwwwwxxwvwwxgvwvwvvfvwwwwvvvgwwwvvwwxwfwwuwvxwwvvvwwfxxwvwwvwwgvwVwwvwvgxwvvwwvwwwwvwvwwvfWwvxfwvwwxvxwwxxxwwxwxwwwhwxwwwvvvwxvxvxwwxxwwgwwwxwvwwvvwvwwvwxwwwwhwwwwwvwwuvvvwvxwwwwxvwwwwxgxwxxxxgxxwwhhXwwxwxwwwxxwwxwgvggwwvewvwewwxxxwwxwwwwxxxwwwxxwxvgwwvxgwwxxgwxwwwwxwxhwwwwwffewwfwewvgvwVvvfVVEwgfWwvgvfvvwvuwwgewuwwwwfEeuwgwvgvwxwvfgTwUvvffwwwevggffVwgwfuuvwxvwfvTguvfwfwvwvffwfxvwWwwwwxwwuggwUwugvwvwwVfvvfvggwwwfwgwgvxwwwxwuwwwwwwxxffvvwefvwwfffvwgxgwgwgxwxgwfvwwwwwwgxwxwgvwvwwvwwwwvVgewfvfvegvvwfwUgexXxfvdvfwfvWfevvwwwvvvwfewfxghwfxxvwwfwghwfwwwvgxghVxwhxfgWXhdwgwvxwwxwgwXwXxfgfwhvxuwffvwwwfwxgwvdvfwWgWwUgexWgDwvwwwwwwVwvwvwwxxvwwwwwwxggwhxUxWvgWhEwWwUxfwgxxwwxwwwfwvxfxevvwvwwgfvwgvwxwefvvvvvgwgwwwwwwwxvvgwgwwwxwwxxwVvwfvgwwwwwweuvvwfvfgfvvWWUwwwvwvvwwxwxwgfgvgwgwgwwvwwwvxwwwwwwxxxvxhwwwxwwxxxxhwwxxwwxxxwwwwhgfxwhwxwxwvwxwwwwxxwxwwwxvwwvvvwgvwwgevgxgwWvvwvwwwwwwxwwxxxxgVgfwgxfgxvwwwwwxgxhgfxgfWhXUwggfxwwvwwwxwhvxhwgWxehwwfwwwwwwxxxwwwxwgwvxwwgwvxhwwwxwwwwfxwwwxvwwwwxxwvxwxwwxxgwwggfxvwvgwwwxxwxwwvwvxgwwwuevwvvfgevwwufwwwfgvvvvwvWfvwvffvvfeugxwveuwfuwwvgwwfvvvwwvfvwvfgdgffvvvvwvvvwvvvwfvwwwvwvVfufuVfvvgwvWwwfuVgvgwuggwwwxhguuwvfVfgvvwfwevefvfVfwftvwhvgfffgfwfgvuvxwvwvvwwgvxgxwxwhfgvfufwgvwxwwgwwwwwwwvgwgwwwvgvfvwvwwhfwgxxwWwgwvwwgwvgwfvwwfWevufvwgfvvvffwwegvfvvvfwwffVvfefwuwvvwgwweefwuggvVwvgwgwWvvgvfvvwwgvwwwwwgwvgxwvvwgvgwvfwgwgwwwvvhhuwWwvgwwgfevfvggfwhvwvvwvvvfGvuwexguWvwvvgwxfwwuwvfvwwwwwfwvwvxwwfwwWwxwwwwwgvvxgwtwwwvvxvvwwwgwwwxxfwfwhxgwfgxfwdvweffwvwwgwuwvfewegfvuuvvgwfvvwfgVwewxwxvuwwwwwhwwxwxggvwvfgwfwwvxwwgwwvuvWgfwvgwfgvggwwvgWwfwwgvvwvvgvwwggxwwwwwwfwwvwwwxwxwwwgwwwwvwwwxgxwgwwxwwvxwhgwgvvxwwvwxwwwxwwwwwwwgwwwxhwwwwwwxwwwwvwvwwvwgvwfwvvfwfvwxfwgwgvwwvwvwvwwwwffvvvxwxuwvxwvfvvwwuggwxgxwgwwwvvffxxwwvwwwXhuxxwxwvgwwwwggvxxxwwwgwxvvwWwwwevgvwwwwwxwwwwvwgwwggvwwwwxWvwwwwxxwwwxwwwwwxvvxvwwwwwwwwxgxhvgxhwwwwwxwvwwwwwxwxwwwhwxgwxhwwwwvwwvwfwuwfvwgvwugwuwwxwwwwwxwvwvvvvvwwwwwxwfwvwuwxvwwvvwwvwvfvvwwwvvvgwwwvwwwxxueufwvuvvxxwwwwgwwwwxffefffVwvxvwgwwxxwxxvwwwxwwwwwwwvwwvwwfgvgwwvwwwwvwxwwxxwxvwwvvgwxwwvwhvwwxwvwefwvvvvvwwgvwwvwwgxwwwxwweuvvwgvwwwxwwwvwgwuxvwvxxvwvwxxwwwwvxwwwxxxwfugwxvwwxgwwvvvwwwwfvvvgvfwvwwwxvwxwwwwevfwwwvvwwwggwvxwwxxwgvwxwwwwwwwwwxgwwxwwwwvvgwwgwvffvgfUwgwwwwwxvwwwxvvvvwwwxxwxvgufxwuwvwxwvvxwuwwfvuvvvwvuwvwwxfwuxxvxwwxwwwxwxwwxxwxwxxfwxxwwwwwwxvxwxwxvgwwwwvwwwwvwxvwvwxwvwvwwxwxxvxwwwwxwwwwuwxxxwguwxxwxxxxxwxwwvxxgwwwwwxxxwwxhwwxxwwxxwfgwwxxwxwxwxxxvxxwwuxxvuwwvvwvwvwgvwvvfwwvgvwwwwFVduvwgwwwwwvgwVfuvvgwFVteVfuvwxwwwxwvvgwwwwUeuvwwxwhwffvvwxwgfvwwxUeuwwwvwwwwffvxggfwwwwwwvwwwfWwwgfwvwvgWwFVtuwwwwwwwwgwvwVfuvvwwggvxwxwvwwgwwwxwggffwwwwvvwwwwwxvfxwwwwwwwwwwwwwwvwwwwwxwhwgwxxvwwwwwwwwwwfvvwfwgxggvUuuvhwfgwwwwfvvwwgwwwwwUeuvhwggwwwwgwwxwwwxfvvgwgwwwwxvWxwgfxhgfvwhwggwgxxwwwwgvwhgxxwwxgwwwwwwwwwwwwwgvfgxwggwwgwxwwfwgwxxxxfwgwwvgxxwwwwwwvxgwvwwwgwwwwwwxfxxxgwuwwxwwwwgwvwvxxxwvwfxxwxvwVwwgvvwvVwFVtuvwwwwwgfwwwVfuvvwwggwwxwwwvwwgwwwwfwfgwwvvvwwwwxwggwxwxwwwwwwwwgwwvvhwwwwwwwhgwxxfxxwwwwwvwxxwxwwwwwwxwxwxxxwwxvwwwxxxxwwxwwwxwwwwxwwwwwxxwxxwwhwfxxwwwxwwwwwwwwwwxwggffghwgwwwwwxgwwwwwxwwgwxgwwhhxxwwwwwwwwwxgwvwhwhwwwwxxgxgwxwwxwxxxwhxvwwwwwwuwwvwxxwxxxxxxwwxxxwwwwwxwggwxxwxwxxwwwwxwxxwwwwwgvwwwxwhxxxwgwwxxxwwxxxwwwvwwgvxwvwwwgwwwwxwxxwwwwwgwwwvwxwwxwwwwwwxgvwwwgvgwwwwwxwxwwxxfvwvfwwwvwvvwwggwxwwwwwxxwwwwwwwxxgfhxwvggwvwwwwwxxwwwxwxxgwxwwxwxxgvwwfvgwggvwwwwvgwwwwwfgwgxhgfwwwwwwxxwfvghhwxxxwfgwwvwwxxxwwwwxxwwxxwwwxxxxxxxxxwxwxvfgwwwwwfvwwgwffwgwwxwvwwwwgwgwgxwxxxwxxgwgxwxwxwgwwwxwwgwgwwwgwwhxwgwwwwwxwxxxxxwwwwgvwvggwwwwwwxwfwwxxgfhxwvfwwwxwwwwwvfwwwwvxwvxxwxwxxwwwxwxxwxwxxxxxgwwvwwwwwwwxfvxwwxwwwxwxxxxxwxfvxxwwxxwxxxwwwwwxxxwwwxxvwwwwffgwwwwwgwgxwxgfvgwwxwvwxxxfwwgwgwwgwgwgwwxxxwwwvwwxwwgwwwwxxxwwfxwxwwgwwwxxxwwgxxwxwwwwwxwxwwxwwwwwxxwxwxxxhxvgxxwxxxwwwwwwxvwwxwwxwhxfxwwwrfwgVgggffgwfFefvvwfwwxwwWugvvwvgwwfggwfgwvwwwwhwwwwwwwwxvxwwwvgwgvvvWvvwfwwgwwwgxwwwwxxvwxwFevwwwwvxvvwgwxwxwxvggwfgvwwwggvvwvwwwvvvwwwxgvwwxewwwwwvfwvxxxxwwgwefvvgvwxwgVwwfwxwwhwxwwgwwwxvvvxwwwffuVwWvgf$CvgwvwwWvgwgWfgewfwFevwWvvwwggwvvwwwwwwVwwwgwgvxwwwxxggwvwwwWwgvwxgwvxgwvwgwhxwwwwwwwvwgxvgxwhxwwwxhhgwwxxxhfWefWvfwgwvwwgvVUwgwWuwwgwgwfwxwvwwwwwwfuwwwwxggxwwwwwwwgwfwwwfuwwwwwgwgvwwxwwwgxxwwxxxwwwwxwvwfvgwwvwgwvvwwgfwvvwwuvwvwvvwfwwwwwwwwVxvhvxwxvwggwfvfwuwwwwVwvxwwwwwwwwwwxwwwhxxxwvwwwwxxwvwvvxwwgxwwvvvwgwgwgvgggvhwgvgwwxwwxwxxxxgvxxwwgwgvwvdwwvwxwwuxwwwwwwwgxvghwxwvhwwxwwxvFeefvffwvwwwwwwfevgwFewwgwvgwwwxwwxwxxwwwggvwgxwgwgvgWvvxwxwwwwwgwgwxvgvgwwwvwxwgWvvwwxxxwwwwxxxwwwxxgxggwxgwwxuwwwgvgwvwdwwvgwxhvxgvwwxwwvwxwxwwwxwwwxvwwwwwwxwxgwgvxxwxwvxwxwxwwuwwGvvwVvwwvgvweuvxWvvgvwgwwxwwwuwvgwwwwgvwhwxwwxxwwgwfgvVwgwwwwxwvgwhwvggwwvwwwxwwxxxxxwxhxwgwvvWvwwgwwvwwxfwwxwxwxwgwxxwwwwwwwwxxhxxxwvwwwwgwwvfwwgwxwxwxwwxxwwxxxxywwwEevwXfwffwgggvggvVvVFWVgewvwfwwwwvwwwwxgwgwxxfwwwwwwwwgxgwWvgGwfgwwvwwxwwgXVxxhwwwxxxwxwhwxwwxhxxxxwxhxwgfvwwwxwfvwwwwgvwwwxwxvwvwgwgfwwxxwwxxgxvxxxwxwwwwwhwwwwwwwuxxxxwwwwvwxxxwwxxxxxwwfwgvxfwwwwwwwgwwfwfwggwwwxxgwwwwxwxwgwhwhvxxggfwxwwxgvwxwwwxgwwwhxxxvwwxhxvxxxxwwwxxxxxxxxwxvwxwvvxwwwvfwwvhgxgxgxxxxwxgxxwwwgwvwwxxvxwwxxwwxwgxxwxxxxwxxxxwwxhwxfgwwwgwwwvgwwgggwwwhvwwwwwwwxwxxxwwgxwwxwxwhwgXwwwwwxgwwwxfwwxwwxxxxhhgghhhxxwwxxxwhwgxxxwxhxhwwwwxxxgwxxguvxwxxvxwhXvxvxxwxxxxxxwvwwxwwxhwxhgxxwwxwxwwxxgugxxwhxxxwxwwuwvfuvfgfwwvgwgvwvvgfwwwwwwfwwevvwegfufgwwxvgwwvwwgvwwwwwwwfewwgwvwvvwvwvwwwvwwwwwvvfxWwwwwxwwwwxvhwwwwffuwvvwwvgwfugwwwwgwvwvwwggffwvwgwgWvwvxwxvwwwwWvvwwwvgfxvgwvwwgxwwgxwxwuwwwwgwxxxwhvxxwxwhxxwfeffuVeufVvuwvfggVvuwghfgevfhgxVeVfvffefwvwfwgggvvfwgwVwwgVxwwgffwgfwwwvwfwgghfgfwxxggxxwwwxwxwwVxwxwxwwgvwwwwgxwxwxgvfUvvgvwgvvvfgfevfxfwfvwfwwwxxgfwwvwwwwuwxgwwgwwwvxgwvwwhgvwwwggxuxwxwwwwgwVfwuwuhxgewvxxwwwwggwwgwxweuvwwgwwwwwvvwgfgwWgggwwwvwwwgfvwfvwxwhvvxwxwwwwhwwwgvwwvwvvxwwwvfwvwvxwwwxgwxwugxvwwwxwwwxxwghwxxgwwxwggwvwwwwxgvvwwxwxgwwxwwwwwxxxwwwxgxxwwxwvwwwwxwwwwhwwwvxwvwwxxwwxxxwxxwwfWfugfvggvvgwwfwgfggxggvgvxxwggvgwggfwxvwgwWxgwgvvwwgxwwwxwwwgvwwgxhvwwwwvxggwxxxwwXWxwwwwxwggwgxhhwwwxwwwwxwgwwwwfvvgwwwwgggggvwwxwxwvwwwwwwwwxxwwgxxwwxwwwwvxwwxgxwxgwwxwxvwwwwwwxwxwgwxwwxxuWwvgvwvuvwwfgwggwgwewwufwfvuwgfwwwfewwvguvwgffvwwfwgfvwwuwwwwwwwuuwwfwvwfgwvwgwwfwghewwfgwwgwvwvwwxwwwwwwghxwwwwwuwfvwvwwwwvgfwvwfwvfwwwwwwwvwvgwuvwwxxvxwvwwwwwwwvvwwwwgwwwvxwwwfgvfxwgwvwwwvwwwwwxxwwwwwvvwwvWffvffggVwvwevwWWwufUvggfvgwVfegvvgwgwwxwwffwfffwVufgwwgxgvwwggwvwwxvxWvwwwxwhgfwvxgxUgvwfwwwWvwxxwwwvgwWxwwwgwxwwwffwvwwvfgvwwxfggfvgvgwffwfwxgwvwwxwwxxgxwwwwwwwhwgwwwwwvwwwwxwwwvxwfggfwfwfwwfgwxxwwvwxxwxwwwwwwwwwvuwvgwwvwgvwvfVvwewwvewwvwxwwwvwgwvwgwVwwvvhvwxwwhxwwgwvxvvvxwwwvgguwvxxwgwwgWggvxhgxwgwwwhwwvgwvvvxvwvwgvxuwwvwwvxwwxuxxgwwwwwvwwwwfgwxvwwwfwwgwvwxxwwwxvxwvxxxwvxvxxvffgfgwwefwgwfewvvfwfwgvvwwgvvwwxwvxgvwwWxwfggwfxXgwwwxfwxwvvwwxgWwwvwwhvwwwgxxfwgwgxxwwwxwhvwwwgxxwwwwwwgxghgfwvfwwvwuwguvgwwggwwwwwwvxwgwxxwwwxxgwwwuwxwwvxxwwxwwwwgwwwwwwwwxxxwwxwvwxxxwcvgvgfwggVWfvvwwvgffwWwggWvWwwwvgfgUvwgwwxvwvwwWvVwwgwgfwgwwwwgfwgx6ewvgwvhvwxwGvgwghwwwvwwwwfgwwgvwgvwwwwwwwwgwwwwwxwwxgVWfvgwvwwvvvvfgWwwwggwwwwxwwwvwwvwuwwgfwgwxwxugwxxwvvwwhvwxvvvvfxfgwwgwwxwwxwxvwvgwwwygvwuvuwwxxxwwwwxwxxvgffwGvgvfgWgwwgWCuwwgvWvfvwfvvvfgWwfwwwWgVxxfugvggfwvWvwgvwwwWwgwghwwwgwwxwwwgvxwxWggwwwvwgwwwwxwxwwwwwwwwhvhwwgwgvwwxgwgWvWwwwvgwwwwxwWvfvggvVwVtwgfwgxwvVvvwwxhvwwwWwwguxvxwwwwvwwwwwxwxvwvwfvvwwwvVtwxfhwwwwxwgxwwWuwxhvwwhwwwgfgUfgwwwwvgwvfgWwgwwgfwgwwwxvfvwwvxuwwwvwwwxwugwxxwvwgwgvwwwwwygwfwwwwxwxwwwxwfvwfghgvxwewuwwxwgwhwxxxwxxwxgvwwvwvwwWgVxwwwvVvvgxwwvxvxwxyxfWfwxxxgwwxxxvwvwwwwwuwwuvuwxxwwwwwwxhwuwwewuwxxwwwxgwwvvxxwWvVwwgwgfwgwxxfugvwhvhvwwwWuwwvwwwxwfWfwxgwvXgwGfwWvxvxwwwgwwwwwwxwxxwwwggfwwwgwWwwxhwxwgwhwxxxgwvGfwXfhvxwwwvxwgfwgxugwwxwvWvwgvwwguxvwwugwxxxwwwxvWvxvxwwxxxxwwwwwwxxxwxxgvwwxgwvxwhwwwxxwxxxxxxvxwwvxwxxufwwfffveevwfwweffwvVVxfWfvggwhwwgwwgvwufwwwwfwwwgggvwxwgwwxvefwgfggvwgvwfgwfvvwwwxgwwgvwgfvwwwwwwwwxwwxwwwwxhwfvuwufvwvwvgguwguffgwwgWvgwwwvvgvwwwgvgwwwvvwwwxwwxwgfuvfvgvgwwwxxwgwgvgwgwwwgxfvvggwgwwwxgxwvwgxwwwwwveVVfgfvvdVffgggveEUvwWWfVVfegwwgfffvVVggwvwfwxwVgwWwWvwGwgwgwgxgveewwWVwvwwggWwggggwxxhggwgxvxgfvwfhgwWwwxwwwfwfwwhhvwwwwhxwwefvweVfwwvvwwwvxfffggfwWvfwgwwggvvwvwvgwvxwvvvvvwvxwwvwwwxvvwwgvvfvxvwwwWvwwwfgefVwwvfgwvxwgxuwxwxvwwxxwwwwwwTvwwVgVwfggWvwgvgvgvVfwvgwxwwgwvwvwwvwwwffxwgxvxwxxhwfveWgwfxfvWwgwwxvwgxwwxwewxgvgwxwwgwgxwxwwxgvvxwxwxwvwvfwwwwwxvwvwwgvwwxxwxwvwwgwxwhwxxxxxwwxxggwgwxvuvwvvxwwxwwvhwwxwxwwxxwggwxgwwwwwvwwwxggwwefevfgWvfvvwWwwwVgfvwwfgfggfwghwggfgwwehxwwgxxwwwvhxwWwwgwvwwwwwvvwgggxwhwwgwvwwxhxvggwgxwfwxewxwGgwghwxwwvgvvxwwwxhwwuwfwWxvwwwwwwxfvvwwvhwfwwvwwwwvwxwvwxwwwwwvwwxwwgxwwvxwwwxgvuvwgwwwwwhwwwwwwgfvwwwwvwvgefggvwwWvvvgvfffvgwwwfvwwwwfugwgvfhffvwxvwgvwwxxwxwwwxgvwwfvfgvgwwvwwxwxwwxwvgvwwvwvwwxxwxxxwhgvwfvfgvvwwwfvvwwwvwwwwgwwwxwxwwxxwwxwwxwwvvvvvwwwwwwwwgvwwwwxxwwwxwwxxwwvxvvwVevgfvgvgvgwwgfvgvxwxggwvwvwxgvgwgwxgVgVwvhwvggwgwxwxwxwwwffwwWwvxxgvwwxxxwgwxwhwwgWxxwhxwxwxvwwhwxxxfvwwgwwwvwwwwxxwfgwwwvwfvvxvxwwghwwgxxwxxwvgwgwgxwwxwwwwwwxwxwwfwwwwwxwfxwxvxxwvxxwwxxxwgwwfvfwwwvwwxvwfvwwwwwwwwwfvwxwxwwwxwwvxwxwwxxwwxfwfwwwvwwwwwxgvwwwwxwwwfwwwxwwwwxwxxxxxxwxwwwwwvwvwxwwwwwwwwgwwvwvvwwwxxwxwgwwvwwwwwxwwvvwwwxwwwwwwwvwwxwxwfvwxxxvwgwwwgwghwxwggwwfgwwxwvwxhwxgwwwwxwxxwwhwggfwhwxwwxhwwxwwxxwxwxwxhvwwvxxwxwxwwxxxwxxxwwxxfwghxwhwxwffvgxxwxwwwwwxwxwxwxhhfxgwhwwgwgvwwwwwwwwwwwwxxwwwvwxwwwhvwgwwvgvxxfggvvxfwgwvwwgwvwggwwvwgwgwwggvwffwxhvwwwvgwggfgwvxvwwwwfwfvwwwwwwwwgwggwxwwwxwwwxfxwwwwwxwxwwfxhwwgxxvgwvgvwfvgvxwfgffwwgvvwwgwwwxwvgwvxxwwwwwwxwxwwwwwxgwvxwvxwfxxfwwxwgwwwwwxxxwxxvxxxhxwxfwvgVegvgfgwwxgggwggggfvfgvgwvWfwuwfwgfggfwwgwwWWwgwhwwwwwxxxwxwwfgvxwwwwwwgggwxwxxfgfvgxwgwhwwgwxghfxwxgxxxxghgwxxwgwwwfwxgwwwwWwuwxggwwfwxxvvggvwxwwxwxwwvxxghwwwxvhwwxxxhwxwwwWgwuxxwxvwwgvwxwxwwxxxxxwwxwfwxwgfxgwwwwwwwggwwwwggwxwwwwwwwwwhxwfwwxvwwwwwvfxxwwwxxwwwwxxxwwwwwwxwxwxxxxxxxxxxxxwwgwxwwwvxgwwwgwwwxwxwwxvwwwxvxxxwwhwxxxgwhwxwfwwxwxhxxxwxxxvxxwwwwxxxxgwwxhxwxwhwgwfwwfwvwvvgwwxxxggggwxghwgwxxwwxxwxxxvwwwwwwwwxxwggxxwwwwwvvwwxxwhvwxxwwxwhxhhxwwwxwxwxwhwvwwxgxwwhwhwwvxwwwxwxxxwwxwvxwxwghwwwxxgwwvwhwxwxwvxwwxwxwwwwwxxxwhwwwwvgxxwwvxxwxwwhxxuwwgvgvvuwwwxwwwwwwwvwxwvvwwWwvwwwxgwwwwwxwvxwvxwwxwxwwwwwvwvwvxxwwwxxwxwxwwgwxwwwwxxwxxxwxxxxwvwgwgwwwxwgwgxxwgwwwwxwxwwxxxxwvwgwwwxwwxwwwwxwwxwwxxwxVevgvgwwgvgvwvvwwgwwwxwxwwxgvgvfwwwgVgVwxwwxwwxhxxwxwwgwwgvwwwwgWxghxxxxwxwwWwvhfxwxxxxxxxxxxfgwgwvwwwxwwwwwwvxxwhvxwxgwwwxwwwwwwhxxxwwwxhwvxgwvwwgvxxxxwxwxxxwwxvxwwxxxxgxwxwvwvwwwvgwwgwwvwxxxxwwwwxxxxxwwgwvwwxxwwxwwxwxwwwwwwxwxwwwwwwxwvxwwxwxwwxxwvwwxwwwwxxwvxwwwwwwxxwwwxxvgwvvwwwxxwwwwgwxxxwwxxxxxwwwwwwwvxwwxxwhvwwxgxvhxxhxgxgvwwxxwgwxxxwxxwwxxxxwxxxxxxxhwxxgvwwwwxwxxxxwxxxwwxhvxxwwwwwwwxxxxwwwwxxxxxwwwgvxxxwxffvwffwwfwwwvfwwwwwwwwfwwwwgvwgwxwggwvvwvwwwfVvvwWgwwvwwgfvwwwwvwvwwwwxwwwwgwvvwwwwxwwvwxwwwwxwxvvvwwwwwwgwwfwvwwgwwghvwfwwwgwwvxwxwxwwwwxwgwvvwwwwwwwwwxwwxwxxwxwxwwvwggvwwgUwUfwwwGvvwwxwgvwwvfwwGgwvvGwvgfgvvwwwwgwwwhwvxfwxwvvxvgwwvwwwVUwwgwwwwxwwwwxxxwwgxwhhwwfxfxwhxxxgxwxxWvwvWwvVwwvwwwuwwvxwwwwxvwwwuwwvwxwwxwfwwxwwhwfwwwwwwVwwwwxvwwxwvxwwxwuxgxwwhwxwwwwxvvwwvewwwewvvgggwvgewgvwwwxwxwwwwvxwwwxwvxwwwwwwwwgwxwfwwwfxvwvXgxwWwxwwwwxxwxxxwwxwwvgwvgwvwwwgwwwwwwvwwwxvxhwvxwxwxwwxxwwwwwwwvwwwwwxwwwwwxvxxwwwwwwwxwxwxfvvwdfgwvvwvwwwfwwxgwvxuxwwwwwwvwwwwwwwwwhwwwxwgwwwhhwxwwvvGfwfxwxwvwwwwwxwhwwvwxWwxxwxxxwxxwwxxwwwxwwwxwwgvwwwvwxwxhxwxwxwwwwwwhwwxwwwwwwvwwwxwxwwwwxwwwwxwwxwvwuwvVffwfvuwUfvgvgwvfvwvgwgwwwgvwgvgwufgwwxwwwwgwwggvwxwwwwwwxwfewwvewhvwggxgwvwwxgwxxwvwgwwxwuwxwwwwgwwxxwhwwwwVvuwwgwwgvwgffwgfgwgwVfvwwwvwwxfwvxwwxwxgvwwwvwwwgxxwgvvwwwwvvxvwgwfgwwhwwfxgxgwxgwwwwxxxwwwwxgwWwwxwwVfffUVeweVfvefffWWfvxggfffgwggwWVWfvfgwvgggwwhwgVfgghgxVgvwWwgxwvffxgvwgxwwwhwwWgfhfxxxwgvwwgwwgggwwhwgxxxxwxwxhwgxxwxwxwhhwwVVvvffwgwwvhwfvvgfwfhfwwgvwvwgvwffwwwvvwxwggxwWgvxwgxvwxwwxwgwwvwwgwwxwwfwgxfwwwxwwwwwxvwxgwwwgwwxfwwxxWwxxwwxwwxwevvgfwgwfwgvfgugwwwgwxfuwxwwgvggwhwgwgwwgwxwxfwvxwwxxxwWvwwvxwwwxgwwvvwwwgxwvxxwxwvgwfghxxxwhwgxwxwXxxwwfwwwwwfvwwwwxxwwwvwwvwxwxxxwxxgxwwwxxwwfwxwwxwgxwgxwwwwxxxwxxhwwwxwwxxfWVvwvggvwgvwwwVffghgggwgwwhgwwfvgwfhwwWwwxwhvvvwxwwwxfxwvxgvwwwhwghwWvggwxvwwXggwgwvwvwxwXwhwxxxwwwgxXgxwwxwxxffvwwwwwwgwwwgfwvxwwwxxwvwghwwhwwwxxxxwxwwwwwwxwvwxwxghgwwwvxhxxwwwwwwwxxxxwwwxxufvwwvwwvvwwgwwwwwfwwvWfwvfwgfvwvgvvwgwwwwxwwwwvfwuwhwxgvwwxvxfvxwwvwxwwwwwwfwwwvxvvwwwwwwxvwxxwwxfxwvvuvgwwvxvvwwvVfgwfwggwxgwwxwvxwxwvwvwxwwwwwvgwwvvwwwwwxvwgwxvwxwwwxwwvvwwwfxwwwxwwfvwwwfwgVvvvewgWVgggvvwvwwwgweggggffwvwvwvwwxgVfvggwgwhxxwvxwxwhwwgggwwgwwxwwwwwhhhfwvvwxxgfwhwxwxwxhghfxwxgwgfwffwewvwwwwvwwvvwfwfwvwwwfwwvwvwwvxxvhvwwxwwwxwwhwgvwwwwgvwwwwvxvxgwfwwgwwvwwxwwxwwxvvwwvvwffwwwwfwgwwvvwffwwgxwvxevwwwvwwxxwwwgxwxxwwxVwvwgwgwwxwxxwwgwwxgwxgwxhxwwxwwwwwwwwvwwwxwxwwvwwwxwwwwwwxwwwwxwxwxxwxwvwwguwwwxwguwxwwwxxxwhwxgxwgwxfvwwwvxfwwfwwwwvwvwgwwwggevwvfvwwwwgwwwwwvgwwhvwxwwwxwwxwwxxwxxxwwxgxXwvgggwxxghwwwwwwwwwwvvwvxxxxwwxwwwwwwfvvwwxwwfwxwwxwxwxwxwfxwwxxwwwwwxxwwwgwwwxfwgwxvfwgwxvwwffwvvwwwgwvvgwvfghwvvvvwwvvwwvwvvwwwfwwvvwvwwwwvvvvxwwwwwvwwwvggwhhvwwwwwwwxxwwxxwwwwwwwvwwwvfvwvwwwxvwfwwwgwwwwwwwwvwwwgwwwgvvwwxvwwwwwwvvxxwwwxwwxxwxxwxwwwxwwwwxwwwxwvvwwVefWggugwgwfwvwfwfwWwugwgvfvwvwgfwfvwwfffvvfgwwwwwwwwwwwvvgwhgxwwhwvgwwxwxgwwwwwxwwwgwwxxghfffvvxxxgvwfxfwwvvvwwwwwfwfvgwxwwwfgwvvwwvwwwwwwxgwwwwwwxwwxwfwwwwxxxxxwwwfvwxxgwgwxwvvxwwvwxwwwwxwvwvwvgvwwfvwfggvvgwxwwgffvxvvwwwxfvwwwgwwwwwwxwwwxfvwxwgwhxggwgwxfwxfxxwwhwwwwxxxwwvwwwxwwwgwwgwhwwwwxxxvwwxwwvvxwwhxxwwwwxxwwwwxwwvxwxwxvxxwwwxxwwwgwgwwgwggvwxxuuwwxfwwwhvgvwvwwwwxwwwhwggwfgxwgxxgxwgvxwxxwwWgwuxwxxwwxhxwwxwxxwxggwxwxgvxxgwwwwwwxxwwxwwfvwwwwxwvwxhwwvxwwwgwwgxwwwxwwxxwwwwwwxwwwxxwfwxwfvgwwxxwwwwwwgwwwvgwwgvwwxVewwgvfvvwwvwwvgwwwwwwwwwwwgvfvvwwwwwvxxwxxxwfgwwwxwwwwgvxwwwwxxwwwxwwwwwwwvgvfvwwwwvwxwvwfwwwwwwvxwwfwwwwwxwwwwgxwwxwxxxxwxxxxxwwxxwffwwgwvVuvfxgwwwwwwvwwvwgggwwVefwgvwwvhwgwwwvxwgxwxwwwwwwwwwwxwwwxwwxxwxwwxwwwwwwwwwwwwwxxxxxwxywxwvfvwxwwwvwwwvxxvggwwxwwvhwvwvwxwwwgwwfwwwxwwxwvwwwxxwxxwwxxxwxwvwxwwxxwwwwwvxwwvvwvgvgvvwwvxwvwxwwwwwgwwwwxvwxwwxxwxxxxwwwwvwxxxwxwxxwxwxwxwxxxwwvwwxwxvwxgxxwvwwxwwxvwxwwxxwxvxwwxxwxwxxxwwwywxggvwfwwxvwxhwwvhvggwwgxwwxvxxwwxwxxwwhwwxwhgxxwwxwwxxxwxxwxxxxxwxxxwwxhwwwhwxvwxxwxxwwvxwxwwwxwgfwgxxxwwxwwwxxxwxwwxwxxwxvxwxxwfwxvwxxxxrgggwevfwfgwwgwggfwwwxwwgwwwwgvvffFeffgwvwwwwWuggwfwwwwwvgwwggvwgFewwwwxwgwwxwwgwwhwwfWvwgwwhgwxvxwwwwgwwwgggwfgwfxxwvgfvfwwwvugwwwggfwwwwwwwwwwxVwwwvwvgxwwhxggwfvvwxgvuwwwwwwwwvwfwWwwxwxwwxwwwwvwwwwwxwwwwgxwxeVfgwWvggWvwwgwvwWvgwggegwwWwgwgf$CvvvwwfwwwwwwwWfgggFewvwxwwggwvwWwwwgvxvgwwwhggwgwxgxxfvwwghgwwwhwwxwwwwwwwxxwhVFegfffvwwwwwwVfvgwFewwwfvgwggwwwwwwwvwwhgwggwwwvwwfuwwwxwwwwwgwgwwxwgwwwgwwgwwwgwvxwwxwwfuwwwwxwwwvffgvwxguvwwwfwfwxxwwwgfvwwwwwwgwwwwvgvxwwhxwgwfvegwxwxwxwvxwhgwxxvwfvvwxxwgwxwwxwxxxxxxvwwxxvgwvfvwwwegvhxwwwgwgwgvgxxhwwwgvgxwxwhwwwgvwedwwvwxvvuxwwwxvxwwwxwwxwxxwfhxxxxwwwxwwwfVuffuwvgwwwxwwWevWwWuwgxxxhwwvvwwghwwwxwxWvvwwgwggwggvwwwwwwxggwgwwwwxwwxwwwxxhwxwvwwxWvvwxwhwwgvwwwxwwwwwxuwwwwxdwwvwvxxxwwwgvggwwwwgwwgvxwgvgxgxwwgxwvxxgxwwgvxwwwwwwwwxxwxxxwwxvxwgvwwfvvgvwvwwxwgwvgvxwwwxffvwvwvggvgfwggvwwwwvgvgwwxwgvwwvwvwwwwwxvwwwwgwgxwxwwwwwwvxwxwxxwxwwgvgwwwvwvwvgwwwxvgwwwwwxwgwgwvvwwwvwwgwwgwggvwgwvwwxvggfgvwxvvwwwxvwwwxvwvgwgwgwwwwwxwwwwgvwwwvwxgwgggvwwvgvwvfgwvfwwvWwwgfwgggwgwgwwvfgwgwvgwggfwwxwwfwgwgwwgwxfxwwwxxgxgwxgxwxxwwxwxwwxxwwggwxxxwxwwgxxwxwgxwxxwxwvwwgwwwvwwwwwwvhvgwwwvwggwgwfxvwwwwwvwwwgwwvwwwvvxwvxwxwxwwwxxwxgxwfvwggvwwxvvwwwwxwwvwwfwwwvwwfwvwwvwvvwgwfwwxvgwwwwwgfwwwwvxvgwwwvwwhwgwgwwwhwgwwwgvfwfwxgwvxwwxwwwwgwvwvgvwwwgwvwxvxxwwxxwgwwwxwvxhxwwvwhwwwwxwwxwxwwxwxwwwwxwwwxxwxwwwwwwxwwxxwwxwwgwwxwwwwxvgffwvwwvxwwxxxwwvwvxwxfxxwwvwwgvwgwhwxgggxvgwwwwwgvwwwgwwxwwwwwxwxwwgwwxgwwfwgvwgwhxwwwwxwwwxwxwxwwgwhwgvvwhgwgwwwxxxhxwxxwxxfhxwxgwwxxgxgwhwwxwxxxxxwxwwwwwwwxwwwwwxxwwgxxxwxwwxwwwwxwwvwwvwvwxwwwxwvwwwwwwwgwvwvwwwwvwfwfvwgfwxfffwfvwwgvwwvwwwgggwVvwfgvwweVgfvvggfvwwwgvvxwwxwxwwwwwxxVufxwwxwwwwVuvwwwwgwvwxwwxwwwwwwvwxxfewwwwwwvhgwfwgvwwwvwwvgwwvvvvwwvwwwwwwxvwwxwxwxwwwvwhwxwxwghwwwwwwwwxwwgxhwxxwxwwwwwWVvvvffgFdVggWfvffgfUeuffWvwggwfvfwfvvwwgvggggwggwwwhwhwvggvwwwwfwxgxwwvwwwwwwwxxhgwwxwwxwxwwxwwxwwwgwxxhwwwwwxwxfgwffwgvwwwvgwwgwwwwwvwvfwvvfwvxwwwwwwhuwgwxvwwvxwvxvwxxxgwxwwwvgxgwxwvvwxxxxxwvwxxxwwgwxggwgwwwwwgfwgwwwWgwwxvgwhxgwwvwvwxwwwxxxxwwxxwxwwwwwxwxvwxwwxxxwwwwxwxxxhxwxxwwwwwwxwhwxwxvgwwxwwwwxhvxwxwwwxxwxwgxxvwxxwwxxxxxwwwwgfhggwxvhwwwggggggxgwwxwvwWxxxxvhxwwwwxwwwwhwvxwwxxwwwwwxwxxwxgwxwxxxxxxwxwwxwxxxwxxxwwxxxxxxxwgwwwwwxxxwwxvxxwgxxgvxvwwwwwwwwgwwxwwxwxxvwhxwwwwwwxhvwxwwxxwxxxwswwwfvfvwfgfgVegwwwwwffwwwwwwwxwgggfwVefwxwwwwwwwwxwwwgvxwwwwwVewwwwwvwwxETxwxwwwwxwwwwwwvwwxwwxwwxxxxwxxxwwgffwvfgwwwvwfwwwwwwxggvxwvxwwfwfvwwwuvwvvwwwwuwwwxwwwwgwgwgwwwwxwxxxxwvvwgwwwwxwwwwwwhfvgvffvgf#2vwfggfvwwwVewwgwgvgwwwgwwwfgggvvwwggfwWvwwwvgwgwwwwxwgvxwffwwwgvwgxvwwwgxwwxhxwxxgxwggwwwgwxxgvwwwwhwwwwwxwwgVegfwvwgfwwffxgwwwwwgwwfvwgfvgwfvvVvwvvwwwveuvwwxxwwxwwxwwwwvwgwxfvwwxxxvxwwgvwwweuvwwwxwwwwghwwxwwxvggfwvfgwxwvvfvwwwwgwvgwvxwxwwwwvwvvgwwuwgwwwvxuwwwxxwwwwwvwvgvwwxwvwwxwwxwwxwvwwxwwwwxwxxxxfvwgvwxwggfwwwvgewwwwxwwxwxwwvwwxvfuwxxwwwxwwwwwwwgvvvwwwuwwwwxxwwwwwwfvxxwwuwwwwwwwwwwxxfvxxwwxffxwVefvvvwffwgwgfwvwxwwwggxwwVvuwgvwgffxvWfwfwvxxwwfvvxwwwwxwwwwwwvwwxwwVvuwxwhxwhwxhwwgwxfvvxwwwwxwxxxggvxwwvwwwwwguwuwggvwwwwvwvwxwwxwuvwfvwwxwxwwxxxvvxxwwxxwxwwgvxxwwgvwgvgxuggwfvffwwwvwgvwfvufUfwvwwwgwhVvugvwweggvwwxfVvvwfggvwxwwvwvfVwvwwvvwgvwgxwfwwwwwxwfvvwgvvvwwwwfvvwwwxgwxwwwwvgutwvevugwvwvwgvgvWfgfvhvwxvfwvuwgwwxwwxvfvwwwwwxvwgfwvuVwvxwvgvwvwwwghwwwvwhgvvvugvwwxwvvwwwxwxwwwffeUggfvfffvgevVeEUvwggUwvwuwwgEdVffwvgfgggwgwWfeVVwwwfwgwgxgwgvfUwvwwUgffwxgwVwvwfwhwggwxhfwgvwwWwfxwwwggwwgwfhgxwwwwwxwvefevwvfevfwfvugvuffwvvgwvgwwxufvvwwwwuxwwgwffwfxwwfwwggwwvwgwwfwgwvwwgxtwwwxggvwfgwwwhwwwvxwwfxwwfwgvvwxxvxxevvwugfwfvgwwvwvVwvvggwgxwwwvwvuvwgvgwgwwvfwWwwwxwxwxwwgefgvgvgvwvwvwgwxgfwwgxggwvgwxwwwxwxwgwwxgggwwwwwwvuvvxwgvwwgwvxvwwgvwxgxvgwxwxxxwwwwxwxwwwwwvufwvwxwwwwfwgwwvwwwwwwxwwxwwwwwxwvwgugfvfvuVgwfwvwvhffvfwggVfxfwhwwwfwwwwvwxgwhwgxvgggwgwvgwwwgwxxwvwgwffxgxxwWgwxwwghWfxwwxxvwvwwwwguxxxwgxgvvWvfgwwwwxwxvwuvwwugxvwvwfvhwwvxwvwwwwwwwwwwwwxwvvxwwwwwxvwwgvxwwvwwwxwwxxgvvwwxwxxwvwwgwvwwvwwwvgugfwgwwwgvvxfgvwwwwxwggwwwwwhwvhgwvxggwwgwwwwxvVvwggvgWhwvxwwxwxgwwwwgwwgxgfxxwwwwwxxgwwxwfwxgwxvwgwwwxxxwwxgwgxwffwwwhguwwwggfwwwwxwwwwfvvvwwwwwvvvxhwxxhwwwxvuvwwwxwwxfxwxwxwxxwvwgwvwwwxxxgwxwgvvwwhgwwfwfgvfggVgvvggfvgVwgwfgWfvWgvghwwxwwwgwwwWgwggwhwwwxwgwhwwxwwwhgvwwxwxxxxwxgxhgfwvwgwgwxwxvxwfhgxhgxwxgwgwwgvvwguwvgfwwvvwgwgwwwwwwwvggwxvwwwxwwwxwhwwwgwvxghwxxwwxxxxwhxxuwvwfwwxxwwxxwwwxxxwxxwgxhwwxwwxgvWwfwgwvwvwvwgwggfXgwwxxwwgwvwhwxwwxvwxxhgxxxxwxwvgwfwwwgwxvwwwwwgwxgxxwxxwwwxgwxwhhxwxxxxwwwwxwwwvwvxwwwxxwwwxvxwwwxwxwxwxxwxwxxxwxxwxxwxwvwwwgwWwwwxwwxWvxhxxxxxwxxxxwxxwwxwvwgggfVggwwgvwvwgwwwfwggxhhwwwgwwwxwxhwwhhwgxwwxxxxxxxxwvghwwgwgwwwwwwwhxgwxxwxxwfxwwwgvxwxxxxwxhwggxxxwwgxwvwxxwwwwwwxxxxxwvxgwwxxxxwxgfxwxwxxwxwwxwxxxwxhxxxwvvwwxwxwxgwwxwxuwwftwwwwxwwuwVuwxWvwgvwgguvwvgvwgwwxvgvwxvwxxwwxxvwvwufvwwgxwwwwvgwgggwwwvgwwwxwwwxvwwxvwfvxvvwwwwxxgwwfggxfxgwwwwwwxwwxwwvwgwvggvwwxwxxwvwwwvwwwwgvwwwwxwvxxwgxxwVtugxggwwvwwwwgufvgUfEwvvwvxwxvggfvfwgwfwxxwWvggwggwwwxhxgwWvwfgGxwgxWgexgxwwvgwwwxwxwxxgwwwwxwxxwxwvgwvwwwgxwwxwwgwfwhwwgwgxwweggwxwwwxxxxvwwwwwwwwwxwwwxwxxwxwxvxwgxfwhxwwvvwwwxwvffwwwxvwfwwwwguwwwwwxwwvwwgwwwwwwwwwgwxwxwxwvwwwwwwgwwwxwxwwvvwwwxxwxwwxwwwgfwwwwwxghwvgwxhxxwwwxwvwvxwxwgxwxwxxxwwxwwxxwvwxxwwwxxwvwwgwgfvxwwwxxwxwwvwwxxwxwhggvvwwxvgwxxxvwvwwfgvwxwxwwwxwgxxxwwwxwwxxxxwwwwwwwWwxxxxxxwxwwgxwwVvwxxxxwgewwxwvwwxwvwxwxvhxxggwvwxwxxxxxwwwxxgwxxgwVfwxwvvvwgfvwgwvgvvgvvwwwgvgfvvwwwwvxvffvweVgfvwvwwwwvwffvwwwxwxwwwwxgwwwxwwwwwwwwwvwwxxVuvwwxwVuvwxwwxwxxwwwvwvhvvvwvwgwuwwxwwxwwvvwwwwxwwvhvwwwxwxxwwwwwwxwxxwxvwwxwwxxwwxxxwwwxgWfuwgwfvvvgVvvgfffwvwfwgwvvffgFdvefvvwwgvgUeegvWvvggggwvxwgxvwwvxwwwwwwwwggwxxxvxwxgwwgwwwxwwwwgwxxwwwwwwxwxwwwhfwfwxxwgwffwvwxwwwwvvxvgwwhwwxwwwvgWwwvvwwwxwwwwwxxxwwxwxwwxxwwwvxwwxxwxwwwxxvwxhvuwwvgwwfwhgwfvggwwxxxwvwgwvwvxwwwwwvwwvwwxxwwxxwvwxwwwxwxwxwgxxwxwvvxwwhgxwxxxwwwwxwxxxxxxwxgxhvwxxwwwwxwxwxwgwxvwwwwxwwwxhxxwgvxxxwwxwvgwgfvgwxwxvwvwwwwvwwxgxwxwwvwvgwwxvgWxwxfggwgwfghwwwgwhxxxxgxxxhxxhxwxxwxwwgwwxwwwgwwxvwgwvwvxxxxxwhwxwgwwwwxwwxwwxwwwgvxvxwwxwwwxivwxxhxwxxwvwwxxwwwwwwwxwuwgfwgwwvvuvwvwhwwvvgfwgwVwwxvwewwxwvfvwWggwwxhwwwwwwfgwwwwvwwwwwxwwwwxxwxxwwwgwwwwwwwwxwwxwxwxxwwwwwwxwfvwxwwwxwugwgwwwwwwfxwwxxwxwvgwgWxwwgvwfwwgwwfvxxwwwwwwwwxxwxWguwwuxxwwwxwxxxhgxwxWvwgwgwuWgfvfwvWgeWvvgvgfevvxwwwggfvVvwgvwwhwxVvfgxwwwwwxwwwxwhwgxxgwwwxxwxwxxwxwxwwhwwwwwwxwgvwwxwxxxxwwwxhhgwwwfwwwwwgwwwvwwwwwwwwvgewwwggwwxwwwwwggfwwwwwxwxwwfxfxxxwwhggwxgxxwWwwxwwwwwxwgwgfuwwwgfwxwwwvWwwwhgxwvwVxwwwwxwwwgwwgvxwwgvwggwwwgWwxxwwwwxwwxwwgxvgxxwwwwwxxxWxwxxguwwwxwxxxwhxwwwxxxxxwxxxxgxxwXxxwwwxwxwxxwwwxwwvxxgwxxxwwwgwwgfwwwvwhgwwxwxwwvwwxwhffwwwxwgwxvxxwwwwwwxggWvwwwwgxwwxxxhWxwxxxwwxwwxxwwxhhhgwxwXwwxhxvggwgvwWxwxwwwxwwwxwxwxwxxwxwhxxxwwhwwwxhwwxywwwwxxwwhxxwwgwwxvgfvgvvgxvwwwgwwxwwwwwefgWvwwvvwvggwvxggwwwvwwvvwwgwvwxvwxwwwgfwwfwwwwvwwxwwwwwwxwwwxwvwwwwwgwwwvwxwgwvwvgWwwxwxwgwuwvfvwxxwvuwgvvhwwwxwwgvwwwxwxwxwwwwwwxvwvvwxwwwgxuwwxxwxvwxgWxwxxwwwxxwwwwvgvxwwgvggwtwwfGgGvwxwwwwwwvxwgwWWguuggvgfvxwwgvwwvggwgwhgxxxwfwwwvgxwwgwfwvwwxwwhwwwvwvWWuwxxxhhggwwwwwxwxxxgxvwfvgvtfwvwwwwwwvwwvvxwwwwggwvxvwwwwxxxwguwwwwwwxgvwwwgfxgggdxxxwwwwxwxvwwwxwwxwwgwwwxwwxwgwxWwwwwgvxvwwwvxwwvvwvvwwgvwvxxxgwwvwwwwgvxwwxfxwwwxhwgwgvwxxxxwwwxwwwxxxxwwxxxxwxwxxxxxxxxwwhwgwwvxxxvxwwwhwxwwwwxgwwwwwvwxwvwvwwxwxwwwwxwwxwwwxxxxwxgwwxxhwhwwwxwxxwwxwwwwgwwfWgxvxwxxxWwxgwxxwgwwgwufwwwwewwwxwvwwwwxwwxhggwwwwxxwxvxxwwxxwxwwWgwxwwXhwwxwwhxwwxwxwxxwxhvwwwwxwwxxxxxgxwwwwxwwvwwwxxvwwwxxxwxxxwgwxxwwwxgxwxwwxvwwxvwgvwwvwwvvWfwwwwwUUwvwfwUgvxwwfwvVvgvxvwvvvwvugvgvguxwwwwwxvfwwwwfwwwwwwwwgwgwwwwwwvvwvwgwwvxxwwwwwwuWwvwvwwwwwwugvfwvwwfvwwvwvwwwwxvwwvwwwwwwvwwwwxwwwwgwwxwwwwwvxxwwxwwxwwxvwwxwwwwggvwwwwwUUwwggfUefgwwvWwgvwwwwwwwwwxVeufwwvWugwwvwvwvfxwwfwxwwwwwwwxxwxwvxwgvwvxwwwvxwwwwwwvwwxhvvgvghwxwwwwwwwwwwxwwwuvwgwwWwgwvfwwwwwwwwwwewvvwxwwgwwxvwwwxwxwwxxwwgxfwxgxwwwxxwwwwxxwwwwwwwuWwwxgwwvwwwvgegwwvxewxvwvwwwvgxwwgwwgfwvxwxgwwwwwwwvwwxxwxxwhwxxxwxwxxwxxxxxwwwwxwwwwwxxgxwxwwwxgxvwwfxwwwxwxwhxwgxxxwwwwwwwwwwxwxxxxwwwxwwwwxwxxwwxwwwwwwwwxwwxwxwgguwwxuWexwvxwvwwwwxxwwwwwwxxxxxwvwxghgxwwgwwxwwvxwxvxwxxxxwwxhhgwxxwwxxxwxwxwwxwxxgwxhxvwxxvxxwxxwwwwwwwxwvxwxwxxxwwxwvwwgxwxwwxxwwxwxwxwwwwgxxwwxwxxxwgwwweWwwgvgwgvwgwfewwfwgwgWwvgfvggwggwuxwfgwwwvhgguwegggWwvxgvvwwwwwwwwwUwvgwvvvwwwxgxwwhwwwwwwwgggwfgwhwwvxwxggwgxgWvfxxwwwwWwvxvgwwwwuvxfefwWwwggwfggwggwwvvwwwwvWwvgvwxvwxwxxvgvwgwxvwghwvugxgwgwxwwvfwwgwwwwvhxxxwgwhwwwgvwwwfwgffWVfgffwwwgVwwuWWgffgfggVvffggvgWwwwgwwxVfvWwgffufgwxgwgwwgxwvwhgfgwwwwWwwvwxxgvxghxwwWgxwwxwhWwxwwxxwgggvxWXgwwwvxwwwvffgwvvgwwvxwvwWvfgfgggvfwvfvuggwvwxgvxwwWggvwwwgvwwwvwxvgvwwxgwxxxfvwwwghhwwwwwvwwgwwuxwgvwxwwvwgwgxwwwfvvwWwwvwgvwvuwgggvgwggwwwwvxvwwvwgxwwwxxwvvwwwwwwwwwvwwwfwwwwwwwggwvwwvhghwxxwxvwxwwhwxwwvghwwggwxvxwwvvwvgvxwxxwfvewwwwxwwgwfwxxwwxvgwwxxwwwwvvgwvwhwwggwwxggxxgxwwwwwvvwxxXwwxgxwxfggvwwgxfwxwwxwfffvgvgwwwwxwwvwvfhxwwWwxwxgwffwxfvwwvwxwwwgwwwxxwxwwhwvhwfghggwxvwwwwwwwhxvwxwwxwxgwwgxfgxwwwwwwvvxvvwgwwwguvgwwwwfwwwuuxxxwhxwwwwwwwxwwxvwwxxwwwxwxwgxwwxwwwwxxwxwxwwxgwWwwwxxthgwVvwwgwwvgvwwwwgxxgfwwgwxgxwwxwgvgwhxfvwwvfwwgvgwwwwwwxxvgwwxxwvgvwxwwxgwxwvhWvvwfgvwggfwgwvwgvgwwwwxwwgwwxxwwxhvwwgxvgvgwwxwwwxwxvwvwxxwxxxxxwxxxxxwxxwwxhxwguvgwVgwfFTvffvgwfwwwwwhwxgwwgWuwfxwxxWwxhxwxxxvfgvvgvffwwwwXewhggxxxxwwxxxgwwwgvfxwwwwwgxwxxxwwxwxxfFTvggvwwgwgwwwwvwwwhwwhwwxxwwhwxwwxwxwwwwxxxwwxfgvgwVevxwxwwwwwgxwxwxxwwwhxwgxxxxwhwwguwhfwwvgxwgwwwgvgwwhwxxhxwwwxxxwxxxwvgwwgvwgxwwwvwwxwwvwxwwwgwxxxwxxxxxxhxvgWwwghwxwwxghxxwxhhxxxvwwxwwwxxwwxwvxvxgwxxxxxwwxwxwxxxxwwxwwwxhwhxxxfWevggvvhwwgwwwwwwxghgwxwxxxxwxxvxwwvxwwvxwxxwgwvwwgVvwwgwxvwxxghxwwwxxwwwxwwwwwwxxwxxxwxhhwxxxwvvhvwwxwwwwxgwxxwxxxxxxwxwxxxxxwxhxxxxxvxwgwvwwwxwxwwxxxwxwwxxxgxxXghUfwwggwffvvfgvvfwgwwwfWvwfwxwvvwgvxgxwgwwxgxwvxfvwwfvwufgwwgwxwvfwghwvvvwwwwxvfvwewvwvwwwwfxwwwxwxvxwwwffwvfvwvfwwfegwwwwwwfwwvwwvhwwwwwxgfxgwxwwufvwvwwwwvwwwwwgvfvwwwwwwwvwxxgwwwwwwwxxwwwgxwgxxwwwvVvwgggweVvwwgwvgfvwgfgvgfvwwgvxwvwvfwwgwvwwwxVvvvxwwgwwwwghwwwvvvgvfwfvgwwgwwwhvwhwgvwwhgwwwwxwwvwvwWvwwwxXxvwfwxhveefwfwggfvwwwwxvffvvgvhwwfgwwxxwvwgxwwwxwwvwwxgwWwvwxxwxwwwfvwgvwvfwvxfxvwvwwfxvwwvwwwwxxxggxwwwxwwvwxgwwwwxwxUvvvvwwvwgwwwvvwvwwgufxvwgxxwwwwvxwvfwwwvwwWvuwvwfwxvvgxvwwwvwwwwwwhwwwwwxxXxwvxgvgxvwwgwfwgwwwvufwwwxwxgxgwwxxxwwwxwxxwgxgxwuuxxwxxwwwwfxgwwwwwwxwwwwwwvwxwvwgvuwvwxxvgfwwggfgvwwwwwwwgwwwwwvvgwvwxwwvgxxfxwwxwwwhwgwwwwwwwgvwwwvggwwwwvvwvwxgxvvwgwXxvwwwgwvwhwxwWxwwfwwggWWxgvgxwxwwvxwwgwvgwwwgwwxwwwvwxwxvxwwxxwwgwwwwwwwggwwxgwxwwwxXwwxfxvwwxwwwwxvxwwhgvuwvwwxtwvxgwwhefvxwgwwwwgwhxwugwwwwwfwwwggvxxwgggwxwxwxxWvwwxgewugggfwwggvwxwwxwxhvhxwwwwwxwhwwxwWwwvxxxxxxVfwffggwwwgwwxwgfwwwwwggfhggwwxwxfwxwxwWxxxxwgfgvwxvwwxugwwwgwgwghwwwwxhwwwwwhwxxxwxwvxwXwxwxVvvwvWvwfWvvwwwwgEEvgwxwgefgxwwvggwgwxgwwxxgwwwwxxwwgwgxxxvWVwwfwwwgufggWwggwwxxwWfgxxxWwwwgwxwwhwwwwwghgxxxxwwwggeEEvwwgxffvxgwwwgfggxgggwggvxggwwwwxxgwxxxwxwxwwfwxxxwfffwfwWwUvwwwwwwgwgwwxwwfwwxwvgwwwwWwxwwwwwxhxxxxwvvvgwhwgwxwgvggwwwwxgvvwxxwggwxxwxxwwwwwxwxxwvggwgwvwvvwwvwwgwwxxxxwuxwwxwxwwwxgxgwwxxxxwxvxxwWxxxwxwvxgugvwwwwxwxWwgwxgxwwgxwwxwxxxxwxxXxxggwxwwgvwvwxwwxwwwwwhwwvwxxvxvxwhxwxxxwwgxxxwxfgfvwvwwggwwvwwWwghxhwgwwxxwwwwxgxxxXxxwxwwwwhwhwxxwxwvvgwwxhwhgwgwwwwggWxxwhwwwwxwwwwwwwxxxhwxxwvwxxxwxwwxwxwxxwfwxwwwfvwgfwggxgwxxxxwxxwwwxxhxwxgwxxwxwwwwwwwwwxvhxggvxwwhwwhxwwxxxwxxuevwvvvwvtwfgvfvwwfwwgvvwwvwuewwgVfvwwwwvwvfgvgwggwvwwvgwfvffwvVfwwgvgvfwwwwwxwwwvwwwfefwvfwwwvwgwwwwgxwwxwwhxgvffwffufvfwvffvwfVvewfwgwvfwwwvvfffgfwwwwvgwfvwvfhwwwwwwhxvuwvvUvvuvwffvwveweggwwgwwvxgvvwwvwwwwwwwwwwwwwvgvgwwgfvggfWevuffvfvwgvGfffgvgvvwfgfwhvfefvvfgwvxwwwxevvgwgWvxwwwvxwvfwwugwfgevfwgwwfvwwxghvewWWxefvvevfgGwxxwwggwgwgwGxvwwwwxxvwvUvfvUvvgvvVxwxfeweggwfwgwgwgwfgvfgwvxvgwwwxxwwgwwgwwwxwwwwwvwvggvVvwwxWwgwwWwfWxfgvwvxfwwgvxwggxwxvgwvwxwwwvwwgwvuvwufvwvwwgvvxvfvvvxwvwwvvwvvhxxxxvvwwxwwxxwxwxvgeffvweuwvgwwvvvwwfggvvvwxwdvvwVuwgwxwwwvwwwwwwxxwwwvwxgwfwwwvvxewwwfwvgwgwxexxewwVwwvxxxwwvwfwwxwxwwwwxwfvwgvgxvwfwwwwvwgwuwwwwwuwxwwgwxvxwwwhfvvgxxhwuvvwfgvvWwvwvhgxfvwwwgvwvxwwxvxxWfgwhvwvxxwwwwwwgwwwgwwwxxxhgfgwfwwfvwwwggwgvwwxhxwgwfggwvhvhWxWvwwxgwxWgwgwwgwwggweuvWwwfgxxwwgwwewwxgwgwgxxxwvgwxghhwxwfwvwxwgwhhxwfwwwwwWvxwwwxwwhgxwvxwxwvgxxgwfxwxfxxvwvVvvgwvxwgfvgwxxwxvwwxwwvwvwfwxwgVwvwWwgvwwgvxwwwgwvxgxwwxwgvwfuvwwVwwvwwffwvwfxwwvxwxwvgvwwwwwwxwwgwwwxxxxvvwvwgwwwwvwwvffvhwwwvwxxwvwwwwxwwwxvwwgvvwwwvxxwwvwwwvwvwwvxwvwgwgwvxwwwvxwwwxwwxwwxwwvwwxwwwwvwffwwwvwhvgfwwvfegvxfxwwfvfvhgvggfvgvwfwwwvwwwwwgwwxwwfvfwfxwWwvxgwfwgwwwxwvfwwwgwwhwwwhwghvwgwgxwxgxwxwwvwvfwwwxwvwgxfvffwwwwwwwwwwvvvwxxvgwxhfwwgwwxvxwwxxwvgwwwwwwgwxxxwfvwgfwwvwwvvwwwvxwvwwwwwgxwwxfwwxwwvwwXwgwwwxxxwvwwxwwwxvwwvwxwwvxgvvwxXwwwwvvwwwwwwwgwhwgwwwwwwxwvwwwgwvxxwwgfwwgwwxvxxwvwwxxwwwwxhwxgwwxwwwfvvwxgxxwwwgwwvvwwwxxwwwwwxxwvwvxwvwxgwvffwwxwgxggvfgvhvwwwwwvxxxwxwgxgwwwxxhwwwwwxVvwwwxwvxwwxwgWwfxwwgwxwxwhgwxwwwwwggwgxwfgxghfwwwwxxxxxwwgxwwwwwvxxwxwgwvwfwvwxgwwwhwgwxxxwwwxwwxwgwwwwxvwwwwxwgwvxgwwgwgxxvhxhvvxgfwwvwwwguvwffguggwgvggvwwwhwwxwwvwxxwwwwwwhvvxwvvvgwwvwggfgwghgvvgwxwwvwvwvwxwwwwxwgwxwxwwwwwgfwwvgwwwwgwwwxvgwgfvvgxwwxvgwwwhvxwwvxxwwgwxgwwwxwgwxvwwwvwwwwxxfvfgwxxvvwwwxwwvwwvwxwwxwwwxxwvvxhxvwguvwggfgvgwgfvfggwvxwwwxwwxwggewwxwgwvwgvwvxxwwxxwwwgwwwxwxwffgwghfvvgwxxvxwwwxxxwgwwgwfxvgwvvwxwgwwxhhvwhhwxwhgwgxwwwxuggwgvvgxwwxvwwwxwwxgwwghxwguwwxgwxhwwwghxvwwwxwvgwwxwwwwgvgwxwwvgwwxwwwggewfxvguwwwwxwwwxvvwvwwxvxwwxwxwwgvwwvwwhvwwwwxwgwvvxgwxwwxxxxwwxwgwxwxwwwwwhwvvxvwxgwvwwxwhwwwxvxxxxvwvwhwxwwxfwwwwgwxwwwvxwwxwgvwgwwwghvwvxxxxgwwxxggwhhxxwxgwvwwvwxwxwwwvxxxhhvxvwwwxvwwxwvwvgwxvgxgxgggfwvwvwxwwwxwgwxxwwwxxwhhwwwxxwgwxwhwxxggxgxxxhwxwxxwxxwwwwgwxxgwwvvwwwgxwhgwvgwwxwwxwwxwwgwhhggghwxwhwxwwxgxwwwxwwxwxhxwwwwgxwwxwxwwwxfwwxxwxfwxxwwxxxwwwwwwgwxvwxwxwwwxwwwwwwwggwvvwwxgxxwswwgwwwwwwgwwWvwfwvwwwwwgwwvvwgwwWvwwwwgfwwvxhfuwwwgfwwwvxvwgxfvgwxxwwwwwwxhwxvVfwgggwwxuxwwgwxgwwuhwxfwvwwWvgwwwwwwgfwwvwwvwxxwwggfgwwwgxwwxwhgwwxxxwwwxxxvWfwwgwwwwwxgfwwwggxhxwgwwwvwvwwwxwwxgwgfxwxxwwfvugwwwwvgvwfwwvgfwxwwxgfwwxwW6TuwwvwxwwxwWfvfwwwwuwxxxxvggwwwvWwvwwhwxvwfvuwhgxgvghwwvwvwxggwxxwhGuvxgxwxhxwV6TuwgwwxwwxxWgggwxwwwwwgxxxxwwfxwwxwxwwwwwhwxvxxvwwxwwfvwgwgwwxhgwgFevgxwxgwwxwxwwxvxxxvwwwwxvvwgwWvwxgwwwwwvwwwxwwgwwvxxxvwwwxwwwwvffwvgwxvxwxvwgwhgwwxwgxwwwwhwxgwvhvxwwvxxvwfvvvvxwwwwvxxwxwwxhxwgwgwwxxwwwwwwhgxwwxxvvuwxwwwxuxvwxwxxxwwxgwwwwxwwxxxwwwwxwWvwwwgwwwWVwwgwwwwxgwxgwwxxxwwxxwxvxgxwxxwwwwvwvxwwgxxxxgwwWfgxwxxwgxwwxghggwgwxwwxghwxwxgwwwxwxwxwuwxwwxxwwvwwxxwwwwxxvxxxxxwxgggwwxxxxxxxwxwwxxwwxgwwwwxdwvwwwfvwwgwwgwvxvwwvUVwwwwwvwfwwwgwvguwfgwvgvwwwwgxwwwwfxwGtwvgvfggwvgwgvwwgwwgvgwhwwwwgwvwxewwwwvwwgwwxwvwefgvuxvwfgEfwgwwfffvgwwvFUdWwgwwvggwfwwwvwvxhwvXwwwgvwwgwwhwffgwwgVvfgvwxggvfwwgwWwwwwfgwvxxwwwwgwwwwuwxwwwvfvxwWwwvWvvvwwww&TvgvvwgvfwvwwgugvwvvwwGvvxvwfvwvvwxvgwwxwwwwgwwwfwxwwwwgwwgggvgwwgfgwwwggwffwwxwfxgxfggfgwwwhWwwxwwwwxuwvgWwwwwvvgWxxwwVuufwgvwwgwGwwhgwgxxxwgwwgvwwwwgxwwwvwwgvwgwgvwwwwvwwvwwgwfggvwfwxwwguwwwwwwwwhuwwvwxgwwvwwgwgvgvwwwvgvvWxwwgWwwwwwvwwwxWeuWxwwwwwwxxwgwvwgvvvwvxxwugwwwhWvxwwwwuxwwwwxxxwvwxwwvwxwxxvgxwwwwwwvxvfwxfvgxxvhgwtgvxwggwgxwxgvvwfwhvwxgwwwgvgfwhwwwgggwwwgvtxtwwwwwwgwuwwwewefwwwwwwwvwwwxgxgxxwwwwvwwwxuhwguwxggwxwfuvxwvwgxwgwwwxwwwgxwxgwwXwvhxWgwwggwXvwwgwxvgwwwxxwwvfgvwxVwvwwgwgwvxvwxgvgvwxxwwwwgwxwfvgwwvwfVwwvxwwwwwhxugwvxwgwwvwwggxwxwxxhwwwwwgvxvwxwxxwvwwwxuwwxwxxxwggvfgtwxwwwxvwwwwwwwwxwvwwwvwgvvuwvWxwwfwvvwwwewwxggwwvgwWgwwwgwwvgxwwwwvwvwwwwwwxxwwgwggvwwwwxFVvwggvwwWwVfvxhgwxgwgfgvwvwwxwhxwgvwwwwxwxwhwfxhwvwgWUwwwggwxwwwwgvvwwxwvxwwwxvwwvxwgxwxwxwwwxfwwfgvgwvxwwfxvxgwxwvwwwwwwwwgxwxwxhxwhwxwwvwgwwwxwwwfgfvgwgwffvvwgWx5FevxgwgwWvwwgwwvwwwxxgWuvxhwgwwhwwwxhwwwwwhwwWgvwwwggwgwwgwxHwWfwxhgwwwxxwhxxwwxwwWwxhhwxwwxxgvwvWwwwgwgvwwwhxVWevwxxgvggwwxwwwwxxwxxwxxuwxxxxxvwwxvwvwxvggwwwxxwwwwWwwwvxwwvvxuwwwxxxxwgxwwwxwxxwxwwwvwvxfwwwwxvwwvvfgwWgwxwvwxwxxhWUvwxwxwgvvxwwxwxxhxxgffFVvwwwvwwgxVvgxgvwwwhgxwxhwwwvwgwxxwwwgxwxxxxwwwwxwxxxxgwwgwwwxwwwwwxwxwwwfwwxwwwwwwwxfvxgwxwxwxxgwwxwvwvwgxwxwwxwxgxwgwwwxxwwwwxwvwwxwwxfwwwxwwfwxgfwgwwxwwwwxw5FevwgxwwwgwgwxxgwwxxxwxxxwxxwwwxwwxwwwxfwwWgwwwwwwwwwxwggwgwxwwwwgwwwxwxwwgxxwwxxwxuxxwxwwwwxxwwwxgxgwxwxxwwwwvwxxwxuwxwwxxwvxwwxxxwwhxwwwwxwhghgvwvwwwwwxwvwvxxwvgxwwxgwxfwwggvvvvwgfwwwwwgvwwwwwwwwxWgvwwwgwxwvwgxwxwvfegwwwwgvwxvvwwwwwwwwwwgvwwwwwwxvwwxwwwwwwvUvwwvwfwwxwwwwwwgwvxwwwvxxwwxvxwwxxxwvwwwvwfwwwwxvwwwwxwwwwvxwwwxxwwwwwfxxvfvwfffwfwwwfgwvxewwghwguwwgvwwWvxwwWgwwvwvgwwwwxwxxxwwwwxwgvwvvwfgwxwvwwwwxwxvwxwwwxwgwvwwwwwwxwwwxxwvggwwhwwxxxffvUfgfewwwwwwwwwwgfwgwwwxxxwwwwhvwhwwxwxwxwxwwgwwwwwfUwgwewwwwwwwwxxwwvwvxghxvxwwuvwwxwxxxwwfwwwggwvvwfwgwhwvxxxwwwwwwwxwwwwxwwxgwfgwwfwwxxxwwgvxwxxwwwwwxxwxxwxxwgwwwwwxgfvvwwwwwhvwwxwwxxxwvhwwwwxwxwxxxxxxwxxvwvvwwgwwxwwxwgwwwxxwxwxwwwwxwxwxwgvxwvVwVfwvgvwwwxwgwwwWvwwwxwxxwgwgwffwxxxwwwxwwxxxwhxffvwWfvwwxwwwwwxxwxxgxwxhgwwwwwxxwhwfwgwwxwxwwhwvwvxwxvxxxxxwxxgwwwwwwxwhxwxwwxxxwwwwwwxwwvwwxwwwxwxvxxwwwxwwxwhxxgwxxdVefuvweuwwfvwvuwfvwwgewwwvvwfvwvwwugwxwwwwfwwwwxwxxfvvwefewwfvvggvgufvgxxwwwwwxwgwwwvwvvvxwvwwwwwwgwwghwwwxwwxfwvwwuguvgfvvvvvgegvwwwxfvwwwwfgfvvuggwgvwwwgwewwwwvxvwwxwwxvdvfuwxuewvwwwwvvwxxfwwvwwfgvdfvvwvwvwwwwxwwxvvwwwxwxxfvvfuWvffVvvwvwwvgfggwwwVggwhguVvufwvvwvvwwWvhfwwwgwgwWvgxwxguVvgfvuvfwwgwvvVWvvvwxxxwwwwwgggfwgvwgwwwXxWgfgfwWvxvgWxfwwedvugwugeevfhvwWvvgwfwfgwwgwwvdvvwxxvwwwwhwwvwwwwvwgwvgfwvwwgwgwggwgwwwgwwwgwvgwwgxvwgwggwxhxgwwwgxuvwwxxvuvwvffvwwwvufggvvwgwfhxvwwvvuwwwvwgwvxwwwgwxwxvwvwUvvwvvwgwgeuvwwhwgwgwwwuwvwwvvvwvwxxwgvwggxwwwxwwwWwfvwxwwwwgvwvfvwxwwwwvhwggwgwwwvwvwxwxwgwggxvxwfxwxhwwwxwvwvwwwwwvwwwwwwwvwwwwwwwwwggwgwwxxvgwwwwwwwwwxvgwwvggvVvuwwgggxxGgvgwwwgwgwhwgvvvwwwwwgwggxgxwgwwhwwwwwgwxfvvwvwvgwwwgwgfvgwgwgwwgwxhwxgxwwwwwgwxwxgxxxggggxwhwwwgxvvwwgwfxvwgwvwWwwfwgwwwwgwwvwwwxwwxxwvWwgwxxwvhwwwwwgwgwwxxwwwxwwwwwwgwwwwxwxgvwwwxwxgxxugwwgwvvxwvwgwwwwxwwgggvwhxwxgwwwhgvwvwxwgwwwvwxxwwwwwwwxvwwwwfuvwgxwwwxxwwwxwwwwWgwwgwwxwwwxwxxxxwxgwwxffFwwgwgwvxwxgwggvwwxwxwwgwwwwxwwwwvxwwwwhxwwxwwwgwvgvwwwvxhxgxwwgwwwxwxxwwxxwhxhxgwgvhwvfvgggwFVufxhgwwwwwwfvwxwwgwgwvwvwvgwxwwwwhxhxxwxxwwwgxhgwggvwfgghwwxxxxxgwhgxxxwwxxhxwxxXwwwwxxwxxwxwxxwuggwvvvwggvgwwgwwwxxxwvvxxwwxwxfghwxxvwxwwxxxgxvxxxxgvwwwgwgwwwwwxxxxxwxxwwxvwvxwexxhwgxxwxgwfgwgwwwwfFwwwwwwxwxxwgwxxwwxwwxwwggwvxfwxvwwxxwxwvgwwxWgwwwxxxxxxxxxxxwxwxxwwwxxwwvwwhxxgxwvxwxwxxxxxxhgxxxhxxgvvwxwwxxwwwxwxxgxvwwvxxxxxwxwxxwxxxxwwwwwwggwwFVuvwxvxWwwxxgxwwxwhxgwwvxwxwhxxxwxxfwxxxwxwgwwwwwwwwxwwwxxhgxxhwwxxwxwwwwxxwxwxxxxwwwxxvxwwwwwxwxwwxxvxwxxwxxwxhxwxwxwxxxvwwxwwxwwwwwwvwxwwxwxxxxwxxwwxxxxwfwwvwuwvwvxwwwwwgwwxhwwwwwwwgvxwwggwwvwwfxwxxwuwwwwvwgwwwxwvvxvvwwvxwwwwwxwwxwxwxwwvwwvvxwwwwwwwwwwwwwxwxvfwwwwwwwxwwwhwwvwwfwgwxxwwwwwwwwwxwxwwwwxwwvvwwhxxxvwwwffgwwvgfwfvvwgfwvgwwuwfwgwxxwvVvvfwgwwwxxwxwWwgwWwwxxwxwwfgwxwxwwwvxgfwuwwxhwhxvwggvwwwwxwwwwggwwwxvwgwvxwwfVwwvgwfwwwwxwxwgwWvWggwxxgvfwwwwxwwwwxxwxxwxwxgxvwwwwwvfxxxxwWwwvvwxwwwxwfwwwgxwwwxxwgwwxwwfvwwwwhwvwwwxwwxwvvwxgwxwwxxwwvwwwwwwwwwwwxwxgvgwxxwhxwxxwwwwwwwwwvwwgxxxwxwwxxxxgvwxwxwxwxwwvxxxxwfvwxxxwxxwwwwxwwwgwwwwwwwwxwxwwwWgfwwvwwxxxxVwWhxxwwwgwwwwwgxxwwwwwwwwgvwvwwwwwxxhxvwgxwxxwwwwggwwwwwxwwxgwvwwhwwwggvwxwxxxxgxxvwwxxwvvgxwwxvwwgxxxgxwwwwxxvwhwwxvgwwwwxxxxxxwxxtwwwwvvwfwugwWvwvwggwvfwgvwwgvhvgfwWvwVvwvgwwvwwvuggwwfwwgvwvevwvxugvvgvxwvxwwvgwgvvvwfwwwwgvwvgvwvwgwwwwwxwvfwWfvvwgwvvwvgwwwwvwwvwgwfvvwFgugvxhgWevWwgwvggwfhwgfvwwwvwvuxwwUdvwgwwgwxwwvfvwxwvvwwwwwwwuxxxwwvwvvvwwgfgwgwwffwwwFvwwvgfvevwwwwwEugfvvwggvWwhwWfvvhvgwwwwwWwwxvwwwwvwwxwxgwgvuwvwwxwhwWgxvwfwwwwwgwwgwgxexxgvwvvWhVhgwwwfwwvvvevwgvwwwguvwggwuwgwwgfvvvwwwwHgwwhwwwwgxgwwwvgwxwwwwfxwxwwwwvwwxwwggwxWgdwwgwwwhwwwvhwfvwwvvVvgwvwvwwwwwwwxggwvwwwwwwgwxwwwwxwwwfuwwvvwwwxxgwxwgwwwgwxuwwwgvhgvwvxwwwwvwwwwwwgwhwwwvwxwxvwwfwwvwwwhvvxgwxvxwwgwxwwxwwwwvvxxxvwxgwvxwwwxwxwwxwxwwwvxxxwvwwwwvwwwwxwugwgvwxWfvwxxwwwwgwwwwxwwxwwxgwfxwwhgggwxwxxvgwwwwgxwgwhwwwwghxxwxxwxwwgwwwxxwxwwWwgwwwfxwwxwxxvwwwhgwgwhvxwwwwhwwxxvwwxvwxwxgxwwwxghxxxwwwxwxwgWwWvgwxwwwwwwwwwxxvwwvvwvvwwwgwwgxxwwwwuwwWvfgwwwxvgwegvwgVexvFvwgfvvwvxvfWwvwgwfvxwVfffwwWvwvwxwwWwggVvwfWgwfwwwevwwWwfvwwgggfgvvfgvgfxggwwvfxwfgwWxxwwwvgwwwggvvwfwvvwfWUvVguvwvwvvgwwgfvwfvvgwwwxwwwwfvwwWwwfvwxwwvwgfwgvgvwhvvwfwvuuwvvwgxwvwveuvwwwwwwgxwwxwwhwgxwxwvvwugwxgEtvfWvgffvwgVwwgWwgWUwgwWwWvFfvufvwfuwwvwwxfVvwhfwWwxwwvxxgwwxwWxwvwhwghwVgwxwgxgwgwfXgeffwggvgwwxwwgwxwvWHXVwfxwWfvwwffgfvvwvxwgwwffggwgvHwwwwgwWWvxvvxwggvwvwfwgwgwwwwggxfwwwwvwWwwwxwgwwfxGXdgwwwwwxwwgxwwxvwxhwwXvwwwxwwwxwggghxwwvwfvwvfwwvwgfwvgvwvwxwxvxwwgwxxxxwwxxhwwwfwWfwwvvvhvffwvvvfWxxxwwgwgwwvhwhwxxwwwwwggwxwxgwwxwwxWwwwwgwxgwwwwgwwvwxwghvwxgwwwvwwwwwwggxgwwwwwwwwgvfwwwxwxhxvxwwwxwwwwxxwwwvxwwhvwwwwvWgWwgggwxxggwGUvgxWgghhvgvvwwxwxwgwwvwwwwwwvxxXhgxWxwgwwwwwgwxgxwxgwwhhfwxxxgwxxxhhwwwxwwwwwhhwhggwwWgxgwwwvgwxwwxgwxgxwwhfwwwxwhgwwwwwxxHxxxwwwxwwggwxwwxxwhvwwxxwwvxxWwwwvgwwvgwwwxuhwfvwwvgwvgvwxwwwxwwxgvwgwvxvUUwwwgwvwwwwwwwxgwgwwgwwfvvwwwxwwxwWuwvvxxwwwwwwwwfwwgfwvwwvwvwgwvwwwvgwvwgwxvvwwvwwgfhwgwwwwwgvwwgwUevFedffgvxwwwwwwxwgvwxwxxhxwwwfwgwwwwwwxwwwxwhgwwxgwvwfwfgvwwwwwxhwwvxxwwwghxxwxwgwfwwgw6SvgwwwwwgvwwfvxwwgwwgvwwwwwxVwuwgwxwwwxvwwwxwwxwwwwggwwgvfwwvwwwxwfwwwwwwgwwwxgvwwxxwwwgwxwgxwwwhwwxxwgxhwvxhwwgfwVuuwwvwwhwwvwxwwvhxxxxwwgfvfgvwgWwgwxwwwwwwwxvxxvwvwxwvwwgvxwgxwwwxwwghfxhxwwwwvwwfwfvfwwvwwxwwxwwxvwvxgvwvwgvwVvegwvwwwwwwwwwxxwxwgwfgwwxwwwwxxxxwwwvvwxwwwxwxwwxwwxgxwwvwwvwxgwwxxwwwhwvwxxxwwwxwwxwVwuwgvxwgfwWuwwwgwxxgxwvwvwhwvwghwxwvxwwwxwwxxwxWwuxvwwwwxxxxfvvwxxwwwxwvwxwwwwxwxwwxxwwgxvwvhvwvvvwvwwfwwhvwwwwwwxxxwwxxwwwgwxhwxwxwxwxxxxwwwgwvgwvwwwxvwwvxxxxxvxwxgvwwwwxwwxxwxgwwwgwwwgwxwxvxwwwxwwwfvvvwvwwwxxxwwwwgwvwxxxwxwwwwwwwwxxxwwxwxxwhwvvxvwgwWxwwwwvwwwxgggxwxwxxxgwxdfwggwvfvvwfggfgwvfwwuVwwffwgVwfwvfwwfvwuvwwgVvgfwgfuuwugwwfgwevefwgwVvvvwgwwvvwwvwwgwhvevvvwwvfvuwwgwvwwwvgwwvwvwhwfvwgefwwwvfvefvegwfgvwfvwfgvgwWffgwwVftwfwvVfufwefwgewwwwgvVvvvdeuvfwwwwwvvvwwvgwUfxvwvuwfvwguvxwwwwwwwvwwgwuxwugwfwgfVewwEuwfvwwfffWgfgfVevgffwgvfvvffgwVfggwgwWffvwgwwfvggVxvwvwwxefwvvgwgwvgvggwhwwwgwfwwwgwwwwwwWvggwWgVwfwgwWhvwgwehgwvegfvwfvvvwwwxfewvWvwfwfwfgwwfevgwwgvwvGwwwwuvgfgwvwvwgvvwwwvwwwwgwwwgwxwvxwwwvgxvwwwwwvfgwvwXgTgwxwxxwgwwvvwwfvxefewvxgwgwvwggwgggwgvvwuwwhwvfvwwvgwwwwhgwvvggvwxwvvwvwfwffwwuwghevwwvggvwwfwgvwwwxwwwugwvvwwwxwwhgwgwvwfwwxuwwwfwwwwgfvuwwuxwwwwwvwxvwgwgwvwxgxwvgxwwwwwwxwgvwfvwxuwvwwwwxwvwwwwvwwwwhwwwvwxxfhwwwwwvvvwwwwvggwwwgwWvgwgxgwfvgwffwgfgxwgwghVfvwxwwwhWWgxgxwwwxxgggwxwwwwwwwwxxgwwwgfwhvgwvwfwvwwxwxxwwwfgwwwhwxwxwwxwgwfwwxwvxwghxWgugvwwgwwwwwwgwhwgwxxxwWvxwwwwhxwgvxxgwvxxwxwvxwwwfwxwwwwgwvwvwwwwvwxwfwwvxwwxvwwwvgwwfvwxggWwxfffhxgxwgwwggxWwvwwwwfxwwffgwwwxgvxwwwgwvwgfwwgwfwgfwwgwxvfwwgwwvffxgwwxwwxvwxfgvhwxxxwhwxgxVvxugwwwxwvvhgfggfvggwwxwwwwwwwwwfwwxwwwgxwxwwvwvwwwxwxwugwgvwxfwgwhwvwwwfwhgwxwwgwgwfwwggwxwwuugvwwWwxwxwwvgfvgwgwggfvgwhvVwgWfwwffvWfwwgvWvwwwwxwwwwwwwwggggwfggvgwvxwwwggxgvwgwwxwgxwWvvgvXwxwgwwXwfggwxxgxwxwwwwwwWgwWwghfggxvwvWvwgwvgfvwgxhwwgfggwgVWvwwwgfxwwgghwvwwwxwwuwwwhwwgvwxwwfwvfvwwwfxvgwxwwwvfgvfggehvwhxhwxwvvwxwvwuwwwgvwwxwvvhvwuxgwxwhwvxwgwwwgxwwgwwxwxwwxwxwwvwxwwwwwxxwwwWfxwwwwwwxwfvwgwgwwwxxwwwwwgvwwwxvvwwxwwwwwwwwwwwxwvwwwwxvgwfxwgvxvvxfwwxxwgwhwvvwvxxwwwwxxwhwxwggfvgvweewgvvxVwwwwwfvxwvfwwxxwxgxwwwwxwgwfwwwwwxwwwxwwgVvgxgwxxxwwwwwgwxxxvxxwxwxwwgwxwwxwggggxxvxxgwxxgwwgwhgWwwwxxgfwgxxxwxwwwwwhhwxvwwvxwwwwxvxwwvwwwgxxhwxwwwxeuwvwwxxxwvwwwvhwwxvwxvwwxwhwwwwwwwxxwuwvxwvwfwxvhvwwwyxwxwvgvwwwxxgfwwwwwwxggxwfvvwwvwxxwwwvxwxwwvgvfwggfwgxwwgvgvwwxgwxxxvwvwwxxwxwwwwxwxxwgvfwvVVwwggvwwwwwwwwwvxxvgwwwwwwwwxwgvhwgxfgfgwgwwwwvwwvwgxxxwwghwwwwwvwxuwwwwwwwxwggvuvgEEvwvwwvgwgvxvwwgwwwwvgfvfvvVhwxxwgvwxvwwwwxgwgfwwvgxwgwwgwwwwwwxxwxxwggfvvwWfgxwxwxxwghhgxxxxwfEEgvvVvwwwxgwwwwggwwxxwfwgvwwwxwwvwwxwwvwwwxwwfxwggvvgfwvvxvwwgwgxwwgxwwxhvVvvwvwwfwvxwgvxggwwxwvvwwggvggxwwwxwwwwwwwvwxwxxwwwxvwwwwvwwwxwwwxwwxhgvvvuwwxwxxxxwxgxgvgwfwwwxxgvxwgxxvgwgxwwgwxxwxwxwwgvwvwgwxwxxwwvxxxvwwxwwxvxwxwgfwgwvgxwwxwgwxwwgwwxwwwhgwwwxgwxhxwwxwwwwgvffwwggwwwwxwwxxwxwwhgwwwxxxxxwfxxxwgwvwwwgwxxxwwxwwhxwwwxvwxwxwwwxxxvwgwvwwwwhxwwxhxxxwgwwxxwxeggfufwgwvgWgufwxwwwxwwwWwvgvgfwwxwgvwwwwwwwvwxvgfuwwggwvwfwfwvwwwwxwwxxwwxwwwwwwufwwwwwhwwwwxvwgfxwwwxggvvxvgVwgwvwvfwwwvfwwwwxwvgvfwxfgxhwuwxwwgwgxwwvwfwwwvgfwwvwgwwwwwgwwxhgwvgwwwwwwwwwwwwwfvwwwffuwwgfwvWfwwvvgwgwwgwvwwvwxxwwwvWfvfvfggvvwvwvvfgwvwxwgwgvggwxggwgvvwxwwwhgwfgwwgvwxxwwhggxwwxwwggxwwWwwwwwwWxfwxxwxwxvVfwffwwwwwwwfwvwwwvggwxwwwwwggwgvwwwxwwwvwwwwwfwwwwwwgwvxvwvgwxwvwvgfxwwwgxvxwwxwwwxwwwwggvxwwwwvxwwhxwxwvWwvvWwhwvvxwwwwwxxwwxvxugwwvxwvvggwwxvxwxwwgxwwwgvewvwwvvwwgvwwxvhwvwwwwwvgwwwwxwxxwxwggwwhwvvvwwfuhwvwwxhwwwgwwxwwwvwwvxvwwvwwwwwuwwxvwgxwwxwwwwvwwwwwwwwwxwwwggwwwwwuwwvvxxwxwvfvvwhuuwxwwxvwgfgwvwwwwvwwvwwwwwwwxxgxgwvwhxwxhwwwwwxggwxwxvwwxwwwwgwwwwwwwWwwwwwwhWgwxwwwxxwwgxxwwhhwwwwgxVVxwxvxwwxxwvhwwwghwwwxxwwwwwwwwvwVvvwxxwwxwwwhvwwwwwvxwxhxwvxwwwwvxfwwvwwwwvvewuwwgvfggvggUEvwwfgwwwwwgfvwwvwwxwgfwxfvxwgwfwvwVuvwwxxwwwwgffwwgffffgwgxwwvgvwgxgwvwWuuwWgfuvxuwwwwwwwvwxvwxwwwvvgxwVevvggFdSgwgwfwggguhwwwvwwwvwfhwvwwwwfvwwwgvxxhxxwvwvefUhfvxfwgwwxxwwxwwwwwvgvxwwgwxxhvwwwwwxwwxwfvvwvwwwvVfgv5DvfvvgfWgwwWgfffvgwWfgggfvgvgwguwxvggwfvwgxggwugwwwvxvggwwggwfvggvwggwwgwxgwWxwwfxwxgfgwwhwfwxwgwgwwxwxwwXwvxfxwhwvgffvfeVgUduwwwVvfwxxffgvwwwwfffwvvwwwwgxwxxwwwvwwwvvfwggwvevwwwfefewwwfwvwwvwfvvwhxwvxwxwwvxwwwxwwwvgxvwxggfwwwwgvugwfgwwwwwVvdgwwwgfvugwxgwfxxxwwwxwvfffwwfvuwgwwwfxwwghvxxwwwvvwwxxwwwwxxhwvvwwwxxxwwwwxwwwxfvfwguxvvvwVwgxwwwXvxwxxwwwgvxwwxxwwxxwvxhhwwxwwwvwgvuvwwwvwwvwwwwwwwxwwxwwvxxvxgwvwvvwhxhwXxwwgxvWfwwgfwfwwgxfffwxWvhuwggxwwwwwwxxwxxwwxwwwwhwwxvwgwwfvwxhwwgwwgwwffwwxgwwhgxwwwgwgvwxhwfwugwwwfgvwxxvwgwvwwxgxgewwvvwwwgwwwwvhxwwwvwwwvwwxxxxhgwwwwwwxxxxvwxwvwxwwwwgvwxwwwvvwxwgxxwwwwwguxxgvxwxwfufgxwhwgvxwwwvvwxxwgwwhvxxwgwwfxwgwgwvvwwgwwwxwwwwxgvvwhvxwxxwxxwwwwxwwwxwwwwwxgvwwwwxwvwwwfvgwxWfwwwwxxxxwwxwfvwxwxwfgvfgxxxwgVgwvwwvwvxwxxwxvxwwwwvxxwgwwwxvxwwwxwwwwwxwvwxwwxwxxxwwgwggvwgvffufwgwwvfgxwxwwvwvwFVtuwwwwwxwgvwgwvwwxxvwxwgwvvwxwwxhvwwvwxWyxwxxxwgwvwwgfwwxgxxgwgxwxwxxwxwwfvVfvfwwwxxvwgwxwwxwxwvwwwwwxxwwwwwgwxxxgxvxxwvwgvvxwxxxwwwvwwvxwwggwwxwhwxhvxwxxwwwxgVwwwwwxfwvwxxxwwhwwgxxxxwwxwwwgfvvwxwWgvwxxxxwwgxxhxxwxxwxwwhgwxxwxxxwxxwxvwxwwwwgwhwwwxvxwxxwwhwwxwwxxxwgxwvxxwwwwxxwwxwxwvwwFVtuhxxwwwwwxxhwwxwwwxwwxxxxwwwwwgwvwwwwvxwxwwxwxxvxwxwxxvwwwwxxxxvxxwxxwxwvxxxhvwwxwxwwhxwgxxxwxxwxwxxxwggwxvwwxxgwwwufwvfvvfwvwwevvgwugwVegwgvuvfvvwvwwwVevwwgvvwffwvgfvgguvxxwwgvvwTewvvvuwuwgwfvwwfwvgvwwvhwgvfvwuwwwuwxwwvwwvwfwgwwwwwvvwvFfwfewwvvwfwuWVuggvvggwwewvwvwfwwwvwvwwwwuxvxwwwxwwwggwgwuftwweufvwwWvvwwvugfvvwgfwuvvwxwxxwxgfwwwfhwwwvwwwvvwgwfvwvUuvwfwvx4efggwffeggxfgFwfffffvfvvwwwxxwgvfvgvGugwwvxwwvgwwxvwvfvwxxgFfhvwwhggufXhEwwwwwwwVwwwgwwhwvgwhhTgfwwhWvwffvvvvVgvwwxgwffuwvu7wwggfvfwvwwwwfwvwxwvvgwwwggwwwwvwwwwgwwwUwvgwvwvffXhcgwfhfwvwwwwwxxxwwwggvxwwwvvvwggwwfvvgvwwwwwvvwwvwxwxvvwwwwwwwwwwxwwvvhwwwwwwwwvgwwvgvwvwvgwvwwwfvvvwgwxgwwxvxwwwwwwwwwwwwwwwvwvwxwxggvvwxwgwwwvxwwgwwwgwwxvwxgwwxvghgxwwgwgwxwwxwwwwwvwwwfwxwffwwwwwwvwwwwwvwwwwgvVfuvwwxxgvVwgfgwwxwgxfwwwxxwwWwwwxwxwwwwwVwwwwvwwgwxwvwwwgxhxxgwwvxxxxUwwwxwwxwvwwwwwxwxxggwwwfwwwgwgwvwvwwghxwwwvwwwxwwvxhgXvwfxwwgwgxwxxwwwxwvwwxwwxxwxxwhgwxvwgxgwvgwgwwxxxxwwwwvvwwwwwvgvwvuwwggWfwwxfgwwwwggwwxggwwvfwwfgwWfwwfxwFUvwvvwgvgxwwwwxgvwxWegvvfwgvwwxvgffggvwwwvgwwgwwwvwuwvWvgWwwwwvxxxwwvwgwwgggwxwgvwgFufwvgggwggwwggwWvhwvwxw5edWwwhwwgwwxwwxfgwwwwwwwwxwvwVvfWxwxhwwxwxwWvxwwwxwhxvxwxggwwvwwxvwwwwfwvgfwgwggwwggvwwWwfgvwgxwxw6TvgvwwfvxvwhfvwggVvwuwwvwwwwwgvwwwwgvggwwwfwwwgxwXxwwwhgugvvVwwgwxwgwgwvwggfxxhwgwgwxwvwwWffwwwgwvwevfgxWvgwhxwwggetugxwwwwwgxwwxWwwwwxxwxwwwvwVwxxwwxwhvxgvwwvxwwxvxwwvwwwwwwggwwwwvfwvgvwwwxvvwvxgggwggvgvggvwwwgxxxwwxwGuuhxvxwWwvhwwwxxxxxggvgwwgxxwwwwewwvwwggxwxwgwwxgwwxxhwxxwxhggvwgvxgwwwxwgvhgvwxxguwgwwWhxhwguwxwwxwxxvgwwhwwwxwfvfwwxwwwwwwwwwhgwwwhhwhxxxwvwvwwgwwvwgxvfvgfwfwfwgwxwgwwghhxxhwwgwvxxhwwwgwxgwxhwwwhvgxwvwwwwxwwxwwwwwxwgxgXvgwfxxwwxwwgwxwxgwghhfgWvwgVvxwwwvvxffwwwxwhxxwggwwwvxwwwwvxwwxwxwwwwgwgwgwvxxwwwwwwwxhvxwhxwxgxwwwxhwwxxxwvwgwxwgfgwwwVvgvxvwwfvwvgfxvwwgwwwvfUwwhvgwwfwvfwvvfwwhxwwwxvwgwwvuwhwxxwwwvwwfUwvwxgwfwwxwwwwwwwwwwwgvwvfuwgxwxfvwxxxfgxxwwwxfwwgwvvwwgwwvvwgvwUwvwwwxfwwgwggxwwgwvxwwgwwguwwwxxxwvwgwUvgvwgwwvwwwwxwwwwwvwvwwwfwuwvvwxxwgwwxwwgwgwwxfwvfvwwgvgvxwwvwgwVVwxwwgWvwwxfggwfwwxwwwgwwwgwwveugggwfuwxwwgwvVVwwxgwWwwgwggwwxwiwvwwgggvguuwhwfgugwvxwwwxwwvghwwhxgwwxwvfgwwxwwwwwwwvxVvwvxggfwgvwwvvfxwvwwxwwghxwwegwwvvvwwwwwwVwwwgwvfwwwhwwwxhggvwfxvwwgvuwwfvwwwwvwwwvggwwvwwvvvxfvhvwxxwwwwwewwwxwxwvwgwwwwwxwwhxwwxwwxxhvvwuwwwxwwvvwwwxwwhxwwvwxwgvwxxgwwwwwhwgvwwgwwwvwwwvwwwwvxvwuwwvwxvgggvwwghxwxwwxwwgxwxwxhxwwwwvuwwwwwxwwvwxwgvvwvwwwfwxwwwwwgwvvwxgwwxfvwwvvvwxvwgwwwxxgwvgwwghggwwwgwhggwwgwxgxxxwxxwgwwwxvwxwwwwwxwgfwxvfggxwwwgvwwwxwhxfwwxxxxwwxvvxfggwvxggfwwgvwwgwgwwggwxwwwwwvxwwwxvxxvwwwvwwwwxwxwxxxxxwwwwwxgwwxfvwwfxwwwwwwwxwwwwwvxvxwwxwwwwwvxxfxwvugwwwwgxwvgwwvewwwgwwwwwffwwwwwvwwwwwwxgggvwvwgwwxxwgvwvwwvvvwwwwxvwwwfgwwvwWgvwxxxwvfvgwwxwgwvwxevugwwvwwxwwxwgwwwgwwwvwgxwfFwwwwewxwwwwwwwvwwwwgwwwwwWwvxxwvgxwwvwfwgwwwwvxxxgwwwwxfwwwxxxwguxwwwwwxgwxvxwwwuwwwwvwgwvwggwxgwwxgwgfggfwfvwwgwwwwwwgwwgvwwwgxxwxFVufwfwvwgwwxfwxwwxvwgwwwvgggwwghwfwhwwhxggvwwhwwvxxWxxwvggwwxwxwwwwvggwwggwwgxgefvwwwfwwwgwwvggvwwwwxwwgvfwgwwxwwwvvwwgwxwxwwwwhfgwhwwggxwwwgwgwwvvxwwwwwwxwvwwxwfFwwwxgwwwwxxwwwgwvxgxwxvwwwxwxxxwxxxvwwvgxwwWgvxwgwuwwxwwxwxxewwvwwxwxwvxwgwwxxxxxwgwwwxxwxwvwwwwwuxxwwwwwgwwwxwxxxwwgxwvwwxguvvxwxxwwwwwwuvxhvwxxwwwxfwggwxxwwwggvxfwxwgwwvwwwxhwwwxFWufhxxxhxxwvwwwxwwwwwgwgwwwgxxwxgwwvwgvxxwxwxwwwwxwxgxwwxxxxxxvxwwwxwwwvvwwwwgwwwxxwwgxwxwwwwwwwwwxxxwxvwwxwwvwxxgwwwwxwwxwvwwwuxgWvwxgwxgfghwggwwhvwgfghwwguwxwxgvwwgfwwwwwgwwwwwwwgwwwvggwwxvgwfwvwwxwhwwwwwxxwgwwxvxwwwwfwxwwwgwhwhgwvwwwwgwwwwxfgewgfwwvxwgfgvfhxgwgwwwwfwwggwwwxwvgwwxxxwwwhwxvwhwhwwxxvwwwwwxgwwxgxvwwxxxfwwwgxwwwwwgwvwwwxhxgxxxwxggxwgvwgghvwXxWfwVwfggwvggWVwhwgwvggvvwhgggwfgwhgWwhggxghVvwxwxxwWxwwhwhwwgwhgwwWxxxwxxxwgwhxxggwwxghwgghwwxhhwxgxwhxgvgwgwvgwvwXwwggvvgwwwWxxWwwwgwghxxgwxxfgxgwxxgxvwwxwwwwxgwwxwXwwxhgxwvwxgxxWgxwwxwhwxhxwgxwwwhwwxwwgwwfxxxwxgxwgvhwgxgwwgguvxxwvhwvwxwwwxwgvwxwxwwwwxwxvwwwgwgwwxxwwwwwgxxxgvwhwwxxvxgxvwwxxxhwgwwwwxxxwhwxgwwwvwwxwwwwgwxwwxwwxwxwwxwxxwwwhxhwwgxwwxxwwwwwwxxxxwwxwxgxgwwwwwwwxxxwwvwwhxgxvxxwwxxxwwxwgvghhwwxyxgwvwgWgwxwwwxhwhxhwghwxggwxwhfxxwwxxxxhwwxwxxxwwwxwwxxwwxwwxxgwxxxxwwxxwwxxgwggghgxxwwwxwxxhxhgwxxwxxgVxxwwwwxxxxhxghwfwwxwwwxwhwwxxwxwxwxxxxxxxvxxxxxxxxxgwgxwwxuwgwevvwffwwWfwwfvegvggwwgwxvwwgvwgxwwwwfxxxxxfvvxggdwuwwwggvwvwgVvwxhxwvwxfgwwwxxxxxxxxwefgwvvfgvwvgfwwwfgwxxxwwxvuwvwxwwxxgxxxwxffwwvvwwwwwwgwwwvwwxwxggwwwwxwxxxvcewwGffvfWfvwwwwfWvwvWgffwwwxwxxvgWgwwxxwwwwwxwwxwwwhwxwwxgdfvu7guvwwwwwwhghfxhwwxhxwwgwvgwxwhwgxwwxxxxxxxwxeffguvvwfffwvwhwvuvxxgwuwgwfvxgvwwwwwhvxwxxwwwwwwwwxxfwwvvwgvwwwgvvVgwwhxwgvwwWvgxwfwuxxwwwwgvwwwhvxwgwxvwwfwwvxfwwwuwwwwwwwxvuxgxwwwxwvxvgxxxxgggvwfwxwwxvwwxwwxwwgxwgwwxxxvwvwwwwwfxwwwwwgwxfwvvggwxxgwwxwwwvvvvxvwxxwwvwvwxxxxxvwwxfwxxwwxxwwwwgwwfwffwwwwvvwvwxxfwxwxvwwvwhwwwwwxwxwvwhwgwxxvfwwghgwWgwWvgwxhxwwwvwhwwwwxgwgWfwhwxggvwxvhfwwwxgxfwwwwwwwxvwwxwxxxwwwxxwwwwxwvwvwwwwwwhwwvhwxwwwuwwgxgxvwwvxxwwghxxwxvtgwwvwfvvwwvfwwfxwwxgwwhevvvwwwvwwwgfgvvwwwwVvwwggvwvguwwwfgvxhwwgxwxwvwvvgwvwvgwxwgwWwxwxxxTfwgfvvwwvwuwwwffvwwwwvWwgwwwgwwvxhxxxxwgwwxwwvuwvVvwfvgvwvvgwggwwgwwwwwwvxfwuwwxwwxvdevfgwfwVevvwwwfFfvxfwwfvvvwwwxugvwwwwwvgwgxxxwfgwwwxwwxxwwwgeevwgwvfFwewwvhwggfxggfwWwhhfwgwfggwvwhxwxwxwgxhxwgwwxgdeefwggffwwwwuwfUUvwgwwwgwgvgwvwvwwxwwwxwxwvvggwgwgwwhwvgffuwWwgwwggwdvfvgwxggwwwfwwwxvwwvhxvwxwgwwwvwhxvwwvwvwvwwwwwxgvfwwwvvwwwwxwgvwxxvfxhwxxxxffvwfgwwvwxvxvffwggwgwxxwwvwwwwxwwxxwwwwxwwvwwevxwwvhwvxfvwxwwvhwxwxwxxxwwxxxwxxvwvwuxvgwwwwxwvwwwwxwwgwxwwwxwwxxfvvwvwgvwwwwwxwxfvgugwwfwwxwwwwwxxwxwxxfwwgvVwwwwxxwvevvxgggwxwhwWuGxhWvgwhgwvxwwxhuxxxxxwxxxwwvwwwggxxxfvwwwwwwxxwvwwwwxwwwwwwxwwwwxhgxwwxwewwvvggwfvxxxxwwgwwxvvwwvwxxxxxwwwwxvwfxgwfggwgwwgfgwxWggvffvxwwwxvfWwgwggWwgwxwwvhwwwwxwwwxwfgwxfgvgfvwgfgwwgwwxwfwgwgvvwvvwwgvwwvwwwwwhxhwgvFwvwuWvwfgvtvvwwwgwgvwwvwgwwwwhwfwwwgwwxwgwwhgwvwwhwwwuwwgfuwVvvwUuwvvwwxgwwgwwxwxwwwgwxvwxwvwxwwwwwxxwxxgwgvwwwwwwfVegffWwgGfgwvwwffggwWwgfwwwgwwwfwvxwwfwwxgvxhhwxwgwgfwvgfhgggvwfwFggwgxhwwwgxXxwwwwwwgxxvxwwwvxggxhhwxhhgxwwdwfvWuwfVefWugvwfwfwVgwfvgwfwufwhvwxwvwgwwhwwxwwwwwwwwwvxwwwgufgvfgfwgvgvtguvfvvxghwxgvwxgwwhwwwxfxwwgwgvhwxxxgwxwhxfwffgwwgwwvwgfgwgwgwwvwxxuxwwwuwvxxwwwxwxwxwxgwxxfWvwggvxwwwxvwwwwwwwwwxxwgxwwgwwgvwgwvxxwxxwxxxxwwxwwxvvvwwwggWgxwwgwwwwwwwgxwwwhgXwwxwxwwfwwwfvwefwwvwwwwvxwwWwwwhwwwwwwvxwwwwwhxgxgwwwvfffgwwgggvwwwhewgwhgwgwxxgwwwwwvwhxxxxwxwwwxwxwxwxwwggvgwggWwvwwwwxwwXxHhvwxwxxxxwxxxgwwwxhwhxwxhwfwwvwwwuxwwxvwhwwwwwwwvwwwwwxwvwwwxwwxxwxwvvwwhwguwvwvwhwwxwwvwwwwwwxxhxwvwwhwwwhxgwwwwgwfvvwwwwxwvwVuwgwwwwwwvvwwgwwwxxwgwwvwwwWugwvwvwxwwWuggfwwxhuwwwwwxhwwgwwwxxxveuvgggwxwewwwvfwwwwwwvwgwfwvvwwwwwvgwwwwxvwvvvwvwwgwwwxvwwwwwwwwwxwwwwxwwwwwxwwwxwwxxdtwwvffwwgwwwWfgwWxVwxwVvwwwggvgxxgfwgwwxwwxxgefwWxWxwwxwxvFwdwhxwxwwgwgwxwxxwxxwxwwhwxgxwxvxweffvfwwwvwwwwfegwwwwwvwgggffgvwwxwwxvwwwwxwgwwwxwwggwvwwwwgwwggvgwwxvwgxexwwwwxwwwwwxwwwwwgggwxwhxwvvwvwwwwwfwwwwvwuvwvwxfgwxxhxxxwfvwwwwwwwwwwxwxwwfwwxwwwwxwxxwwxxxxwxwxwvwwwxvfxwwgwwwxwwgxwxhwwwxwwwwxwwwwwwvwwxwxwxwwxxwwgwwxwxwxwwxwwwwwgvwwwwwxwwxwxxxgvwvwwwxwgwwwwxwwwfwwwxwxwwxvwwxxxwxxhgywgvwWhwgwxhwxwggfxwwxwxwxgwwgwxxxwxwxwwxxwxxvxwwxxwwwxwwwwhwwxwgxvwwxwwwwwxxxwwwxwwwwxfxwwfgwwtwwgvwwwwwwgvuvwwwwvvwfvwwvvvvwgfwwwvwwgVwvvgggwwxwwwuwvgfvwwvfwwfuwfwwwvWxwvwvxvwgwggwgUgwgxvwgvwfwwwvwxxxhvwvwwwvvwETvvvwvffwvfvvVuuffvwwwfwwwvgwwfwxwVvwwgwwvwhvgwwgwfvUSwwvwwvvdwgfvwwxxwxgwwwwwxwwwwxwwxvwwwxwwgvwwgwwwvWfwwwvwfVVvgWwgfUdvwWwgggfwwfvgwvwwxfDvvwfvgwgwvwgxwwwxggfwgfxwWwWwuxwGxfwWxwxvwwvvwwgwwhxxvxvxwxxxvxwwvwgvwwUVwvdvwvvfwwTBuvgWwvvwwfwwwwwfwgvwxwgxvwwwvwgwwvwwgwwvggwwwwvwwwwfgvwwhwgfxwwxfxwgwhwwvwwwwwwwxwxwvvwvvwwwwwwvvvwvwwegwwwvwwgfwwwwwvwvwxgxgvggwwwxgwwwxxwWwgwvwvUgwvwgvgvwxwwxgxwwvwwxxfgwwxfwwxwwwwvwgwwwgwwwevwwvvwfgwvwvgwfwvvwwwwxxxwgxwwwvwxwgwwgwwxgvxvvwwvwxwwwxgwwwgwwgwwvxxffwxwwgwwwxwwxwvxgfvwvvwvwvwwxvUfvwWwwwwwwwwfgwwxwwwxxxggvwwgwvwhwxxwwwwvwgwvwxwhgxgxgxhxwxwgwxxwxwwxwwxGgwvwvwwGwxvwwwvwwwvvwwwwwvwvwwwfwvgwxwxxwvwwvgwxwwwwwwxwwwwffwwwgxwvvwwwxvwxgwwxggggxgvgwggxxvwwxwwwwwuwxvwwvxvwwwwwfvwwwwwwxvwggwwgwwvwwggvwwxxvvwwxwwxxwwwxwxwwwggvwwwxwwwgfvwxxwffwwxxwwwwxwwwwxwxhxxxxwxxwwfvwwwxggwwwwwggwggwvgfwwwgxwwwwwwwwwwwhwgxgwxwwwgxxwwwwwwwwwxwwgvxxxwxxwxwxgwxvxxxhxvwxgvwwwwgfvwwggwwgvwgvwggvggwvxgwwwwwwwxwxwwwwgwwxwxxwwwwxwxwxvwxxwggwvxxxwggvgxwwwgwxvghxwwxxwwhxwwwxxxhwgxvxxggwffwwgfwwwxxggwvwwwgwvxwwwwwgwgwgwwwwvwwwxhgwwxxwwwgwwxwgxwwxgwwxvwwwwwxwxxxwwxwwwxgxwgwwvvwwxwwwwwxwwwwwghxwgwgxwxwwxwwxxwxxwwxwxxggvwwwxwwwwxgwwxwwwxwgxxxwxwxxgwxxxxvxwwxxwxxwwwwwwxxwwxwwhwwwwwwxxxxgxwwxhgvvvxwwvwwxwwwwvxwwxxxwxwwxvwwwxxhxwhwgxxgwwxxxwwwwxgxwxgwxxxwxwgxxxwxwxwwxxxxxgwxxhxvwxxxhxhgxwxxxxxgxwwwxxxxwxxwxwgwwwxwxwwwwwwwwwgxvwwxgwwwwxxvxwxvwxwxwxxwxxwwgxxxgvxwxwxxxwwvwxxwxxhgvwxgxfffwfvgVfVgegwwffvwgwwgfwwwgxffUgvfwwxwwvxugwvwwwgwwwfvfvfgfwvfgwfgvwffgwwgwwxwwwxvggxwgwwwgwwwwgwwwwwwxwwfvvxfvfwegWwwvfgwwxggfxwwvxegWgvvgwwxxgwwgwwwwxwxffgffwwvwwxwxvgvwgwwwwxgwwwwwvxwwxxxvwwxwxxwwwVVefvgfwfggfgvvwvffwxwggVfvvxxwxffgfWvvwwfxvghggwvwwvxghxxxwvfwffwegwxfwghWvvvxxhwgwgxhhwxxwgxgwfwxwWffwxwhwwxvwXgfxvvxeVfwgvvggwvwvgwwfffwwwwwvgwwwgwgvvwwgwwwwgxwghwgwvwwwxwfhwwwvgwwfwfwxwxgxvwxvfwwwhwvvxwwxxxfwwvwvxghwxwwwwxwvvxgxxwfvvwvgewuggwwfWfwvwwwwgwuwgwwwvvwwwwhwxwxxwxxwxxvgwxvwvwgwwwwwxxgfwxwwxwxhxxgxwwgwgwxwxwhgwwxxxhxwxggwwwvvxfvwvwwxgwwwwwvwwwgwxwhwwwwwxwwxxwwwwxwwwwwvwwwwxxwwwwxxwvxwwwxwxwwwwwwxwwwwwxfwgwgwwwVwvgwxwxfvgwhxwwggggwwWvvhgggwwwgxhggwxwgvhxhhgwwwevgwwvwxxwhxxwwwwgxhxxWWfwwxwggXWfwwWgwwwxwxxxxwwwxwwxvwwwwxgwwwwxxwxwwxwwxxwwwwxxxxwwxxxwxvxwwgvwgwwwxwwwvwwgxvwxgwgxwxwwwvwwwvwgvwwvwwwvwfwvwhwwwfgffgwwwwvwxwwwwfwwffxgwwxxgwggvwwwwwugvxgvgwwgVwvhwwwwwugvwwxwxgwwwwwwwwxvxxvvvwvwfgvfwwwwfwvvufvggwwwvwvwvwgwwwxwfxwwhwwvwwxwgvwdVvwwwwugwwwxvgvwwwwwxxwvwxxwwwwxwgvwfwxxxgffwwwfxUfvgwxhwvwwwwxwwwefvvxwvgwwwwwwhvxxgwwgwvxxwxwfwvhXhvvfwhwhxwwxxwxvvwgxhwhgwyxwwwvwvgfwwwxdUvwxwwWvvwwxwwwwvwxxfhhwwgwwvwvgwwwvwwwwwwxwwxwxvvgxxxvxvgwgwwgxwxwwhvwxwwvgwwwwwgvvwwfWfwvgwwwgwwwxhvfwwwwxfgvxwvwwwwxxgvfwdVfwvwwgwegwxgwwxwwxwhwwxwxxxxxwxxxxwhhwvwwwxfwwwwwxwwwfwxvwwvwxwWhvxwwwwwwvwwxwxwhhwwgxwxwwwwwwwwxfwgvwwxwwgwwxdVfwwwhgggwxwwxxxxxxgwwwhxxwwxwhwhxvwwwwwwxxxwgwgfxxwwWghvxxywwxwwwxwxxwxhfvvwwwxwwwwwxxwghxwxwwwxghxxwwwvwvwxwwxwwwxwfwwwwxxwwxgwxwwwwevgWwggwgxwwwwgwwwxxwxfvwwwwwxUwxwwwwwwwvwgvwwvxwwwxwxwgwwxgwuvwvwwwxXgfwwhxxfgwxgxwvgwwwhxvxxfwvwWwwwvxwwxxVgfxvwwvgwxwwxeWfvggwevwwgxwWwwwxwwwgwwwwgwfwwxwxwxwxxwwwvwwVvxwwuvggxGvvwggwxfvvwvfwwfwwxvwwwwwxxfwwwwxxxwhvwwwwwwwwggwwwwxWgfvvxwxfeffwwwwwXvgwwwwxwwhgWfwxwwxfhwwxwwvwwxgxwwwwwwwwhwVVvxwhwgvWxhxwwgwwxwwWwwhwxwwwgfgxXgwgwwywxefwwWwwwgfwwwwwxFVfgwgvgvVvvggvgvfwxvwxfwxwxwwvgwwgwwwwxwxwgfwwxwwgwwvwggwwfwgxwhWuwfwhvuwwwwwxhxWxwwwvwwxwwwwwwggwxwwwuwwvfwgwwwwxwwxwwxwwwvxxvwxxwvxxwvgvwwwwuggxfgvwwwwxfvwxwvgwxxxxxwgwxvxxgxxxwwewwxwxwwwgwwwvgwwwwwwwwvfgwxxwgxwwwxwwxxxxwhxwfwwwuxwvwwwdwwwxxxwwvwwwvwwxwwxhwwxgxwwwxgwggWggwwwwvwxwgffgwwwhvwwwwxwvgwxxWwwxwwwwwxxwwwwgwwhwxwgwwwgwgxhwwwwwwxwwhwxwWxvxwvwxvhxwwxvwxwvxuwfwtgwvwgwwwwxvwxxxxwxwxwxwwwwvwwwwxwxwhwwgwwwwwxwwxhwxwwwwxggwxgwxxtwwxvvgwvfvwwwwwwxwwwwwwfwggwwwwwggwwgxwgvvfgvwxwwwxggxwwxxwwwwgguwwwwvggwxxwwwwwxxxxeufwvwuxwwxwwvwvwgwwwwwgwwfwvxgxxvfwvwwxwwffgwfwwxwwgwxwwgvxxvwwvvwwwwxxwwxxxwxdegwgWevgwwwvwwgggwwwxwwxxwWUvvwwvgwgxgwwwxwwwxxxxxWUfvwgwwwgxgxwhwwwwxxxwxwxxvFfuhgwgwwxwxxwgwxhxwxxUVvvVfffwvxvfxwwwwxwwwwvgxvfvwwvgwwwwwwwxwwgwwwxxWgwvggvwxwwwwwgvwxgxgwxwxwwgvxwvwgxxggwxWxuhgwxwwwwwwwwwwwxvvwgwgwwxwwvvxxxwwwWwuwwwgxxwwwxwwwxwxwwwvxwwwxxxwxwwwgwxxwxwvuxwwxwxwxwxxxwwwxxwgvvwwwxwwwgwxxwvwxwxwwwgxxwwwwgwwgwvwxwxwvwwxxwwxwgwxwvwxxwxxvwxwvVhvVhxwxwwwgxhhgwhxvwwxwwgwxxhxxwwhwxwwxxwxWwwgwvxwxxvxwwxwxwhvxxxwwxvwwwxwxxwWwwwxwvxwxxwwwxwxwxxxxwfwfgwvvgwwxfwwwwwwwwwwwwwwfgwwgwfwxwwvwvwwWwgvvxgvwwxgwvwvvvwwvvVvfwwwwwxxhwwwfWwvvwfwvwxwwxwvwwwwwgwxfxfVwwggWvgwfwwwvvwwwwwgwvxvvvwvvvwwwwwwwxvwwwgwwvxwfwvwvwgwwwhwxwwwwwwwwvwwwgxwwwwwxwgwxwvwgwvwfwfvwgvwggvwffwwgwwvWvgwvwwvfwwwwwvvggwvggwwhxgwwwxvxwwwwgwgwwwwwfwwgwfxwgwgxwxhyvwwwwwwhgvxhwwxfwxxxxvxxvVvwgvvvVvgvvwwwwvwwwwwgfwxwwvhfvvwvxhvgvwwgxvwxwvxwxwwgwxwwwwvwwgvxwwgwgwwxgxwwxwvvxwwvxwwwwwwxwxxwwxwvwvwgwvwwwvwwvgwgvwwwwwwhwwwwwxwxwxxwwxxxxfwvgvfwvwwwwwgwwxwwxwwxwxfwgvwwxgwwxwxwwhvxwxwfvvxwwwwxgwwxxwxxxwwxxwxxvwwhhxvxxwxvxwwwwhfwvfwvwwwgwxwwwwwwvgfxxwwvwxvvgwwxgwvwgwxvgwvwxgwwvwxxxxgwwwwwhwxwwxwwxxwhxxwgxxxxgwwhgwwhwwhwwxxgwwxwwxwwgghwxxxxwwgxwhxhxwgvvxwwwwwxvgwgvwwwxwwgwwwggwgwwwwxxwwxfwwwwwxxwxxxxwwxwwxvwwhgxvvfwwwxwwxwgwwwwxggvwwhwwwvwgwwfgwxwgwwwwxwVvgwwwgvwVvwxwwxhxwhwvwWwgfwvhwwwhxgwvxxwxwwxvwwxfwwwwwvwwwxxhwxwhwwwWvwvwweeffgwwvgvwvvwxwgvxwwfwwwfwwvxxxxxgvwwvwfvwgvwwwhgxvwwwxwefwwwwwxxxxwwwwwwgwgwffwWvwvVvegxfgwxxvvwwwxwgggwwgwwfvwwxwwwvxwwwxwwxwhwwwhwwwwwwgvwghxwxwhgwxhhfxwwxgxgwwwhwwxgwxixghxwhxwwgwwffvveewwwgvvgwwwgvfwwwxvwxgfxvxwwhxwxxwwwwhgxxwwxwwhwwwwwwwwwwhwwxxgwgvxgwwgxwxxxwwxwxxhxwwwwgwwwxgvwwgvfwvXwwggwwfwvwxwwxxxgwwxxWvwvvwwvvvxxfgxwxwxvwgfefwwxxvxxxxxxhxwwxwwVvwwVvwxxxxwwxxxwhxvfwxxwwvxwwwwwwvwxwxxwwxwWwwfgwvefvgwgvgwxxwxhwxwwgggvxxwwwxxxwgxfxwwxwgxxxwxgwwwvwWVxwxwhxwgxwwgfvxxhxwxxwwhyxxgwwxxgfwxwwwwxwwxxvvhvxvwwxwxwwxwwxxvwgfwffvwwxghwwxxgewxwxxxfwwwgxwwwwwwwhfwwwwfvwwvvffwwwwwxvwffwgxxwwwxgvfwwxgwxxvxwwwvvgxxwwwgwwwwwwxvvgxwhxxvvwwwwwgwwvwwgvvwwwwwggvweefgwxwwwvxwwwwvwwwxwvxvvwuewvwxwwwwwvwxxxxxxxxwvwgfgwguwvfwwVfwvwwwwwwwfevUfvgxggwwwwwwwxwxwxffwwwXwgwwxwxxwxwgxwxwfWwWfwgwxxwhhwxwxxxwxxxywvvweefgwxwxwvwvxWxvwgfwwwfwwwxwxhwxgwwwxvfwwhvwwxwwxwvwwxvvxxxwwwgwwwwxxwwxwxxwhwxxwwwwwgehwwwvfwwxvvvgwvxxwvwwwwwxwwwxwwgvgvvvwwxwuewvwwhxwwxwxxhwwwwwxxwwwwwgwgwwxxxwhxegvwwxwxxwwwwxwwxwxxxfxwxwxwwxwxgvfuevvvwwwxwwwvwwxgwwwwwggvxhwwwwxxxwxxvfwgWvgwxxwxxxxxywwyxxxvgVgxgvxwxwwxwvwwxwwwgwwxwwvxwwwwwvxwxxwxwxxxxyxwwwwfwxxuxwwwxwwfvwwuvxwvvvffwvhvgevevvvvwvuguevgwwwfgwvvvvfwwgfvxgwwfVwvfvwwgvfvwwvvgwwffvgvwwwxvwwfwffwgvwfwwwwwwgwggfwxwwwxxwxwwuwwwuwvfwwtvwwwwfwwwfwuwfvvwwwwwuvvvvwwwvwguwvfwwwwwvwwxwwwxwwwvwwwwxxwwxxwfgwwweVwxeffgwwhUgwvfwwfgvwwwXwdfwWVwwuvvwgggfwwvhwwgxgvgwfgwvgvvgvwWwfvwhggvwfXhUwWwXewghwxXxfgvvgHhfXwfYwxvguwvwfwgfvwxfwvfhwxgwwgwwvfuwwwxwvwwvwwxwwwgvwhwxwgwwhvxgwwwwxvxvfxhwgvwwhxwvwwwwxxwxgghwwfwWwwggwwwwfxgvxwWvwwwvwwwwgvgwwwwxwwwxxwxgwwwwfwvuvwwwwxuugwwwwhxxxxvuvwwwhxxwwxxxxwhhxxhwxwwwwwwwwwwhwxwxxwwwvwxwwxwxwxwwwwwxhwxxwwxxxwwwxxwxxwvuvwuwxgwufwxwwxwhxuvvwwwxwwwwhxwxgwXhvhxXhwwwgfwwwxgxwgwvghxfhxvXwwvxwxWhwwxwHgghWvvvWwwwwwwxwwwwwwgxwwxxxxwxxgwwwxwwwxwwwwfhxxxxxwwwwvwxxgxxwfgxwuwvwuwwwwwvwggvvwwvwgvwvfvwwwvwvvwxvgwvwexgVvggWgwgvvgwwwfgewgvxgfwwfwwvfvwgwwvvvvwwwwfwvwwwwffvwvwgwwwwwwgwwwwvgwvvgwwwgwg5dwfVgwfvwwwwwgwfuuvwxxEfuwwwwwvwwvwxwwVvwwvwwUdwwwvgvwwwxwgwgxvwwfewxwwvwxwwwxwgwvwxwwxvwgwwwgvwffwwwvewwgvxwgwwwfwwxggGeffUvvWfwwvwwxffuvxgvwvgwxxgxwwgwgwwwxwwwvwgwggWwXhhxwheggwvwxgwwwXxgwvxWvghwwwhwwwxwwwgEewgUwvvewwxgfvwgfwggwxwvfeTSufwvvgwwwwwwwxWgwfgwwwwvfwwwwwwwwwwwvhfwWfvwxvwvxwgevwwvxwwvgwwvxwvvwwwwwwwgwvwvfvwxxVuxvwwwwgwgwwvfgwwxxwwwwxvwxxgwwxxwxxwhhxfgwffgwvfwwwwwwfwwgwwhwxwwwwwVvwwxgwwwwwwxxhvhxwxvxfwvvxhgvxwwgwxxxwgxgvwwwhwxvwvwwwwgwxwwwwxwhufvegwvwwwxwgwwggwwgxxvxxwxxwxxxwwwfwvggfvfvwxxgfwwxwwwxxwhggwfwvwwxhxwgwhwxxgwwwxvxvggwvwwwxwwwgxxwxxXfwvxxxwwxwxxwwxxhXvxwgwvhwwwxxxwxffwxwwvwgewwwwvwvvxxwwwwgwwwwxvwxwxgwxwwewxvwwwgxwwwwwwwwxwvwwxvfwxwwwvxwwxxwexxwwfvvxuwffvwwvxvgvvvwwwwwwwvvwwvwwggwwvwwwgvwwwvwvwvwwwwxwvvxvfvvwwwwgwwvwwwwvfwvvfwvwwwvvwwwwwwwwfvvwwxwwxxwfwwfwgwwwwfvwvgwvvwwwwwwwwEdgUvuwwfwvwwwvwwgvxvwwvwxgwvgweuvwwwwwwddwfvwwwwwwwwwwwhgwwhwvwwwxwwwhwvvwgVVwvwweUwuwfwwfggfwwvwwwwwwgvwUeevwvwwgwwgwwwgvxwwxxwwxxxwwwgvfwwwwwxhwwwwvWwwwxxxwwwgggfwhwhwwwwxwvhwwhwwwvwwvUUgcSeuwfwwvwweuvwwfvgvgwgvwxgvwwwfwgvwwwxvvgwvwwxwwvwvwgwwwwwvwwwwwgwwgwwwwhvwwxwvgwwgvwwwwwxxxwgwwxwxgvwvwwwvwwwwwwgvwwvgwwgwxvxxxwwwwwwwvwxwwxwxxhhwwvwfwgwwwxvwvfxvwhxwxxgwwwxwxwxwxxxwwxxwwwwwvwwwvvwwxvvwvwgwwxwvwwvwwwvwwwwwxwxwwxxwhvvvfwhvxvvwwwwxgwwwwwwvxwxwxwxwxwwwwvgwwvVwuggwwvwvvwwggwwwxxwwwxwwxwwxxxxxwxwgxwwwggwwxhwwwwxgwwxWxxxxxxfxXWhfwwhxxwwxxwwwvwvwwwxwwwvwxwwwvwvwwvwwwxxxwxwxwwwwwvwwwxwwwvwhwwxwxxwwwvxwwxwwxwwwgwxxgxvwwvwvwvvxwgvwwwwvxvwgfvwfvxxgvfwvvgwwvwxVgwwvwvwwvwxxxxfwwvwvvwWfvfwxwvwvgwwwwwvwvxfvwgwhwwwwgwxfwvvwwvxwvxxwwfvvwvgvwvwwfvxWffffvwwwvwvxfvwwwvwgfwwxhgvvwwwvwgwvwwfvwwwwwwxvwxwwvwvfwwxxxwxwwwvwwwwwxwxwwwvwwwwwvwfwfwwwwwwwwfwwwgffgwfwwgfwvwwwfwfwggvwfwgwhVfgfgwwhwwxwwwwgwvfxwwxwhwhggwfwvfgxwwxwvwfgvwwxwhhxfvwghxvwwwgxwvfvwvwxwVvgwwVfwgfgvwwwwwgvgvvvwwwfwwwxxwwgwgwvvwwwwwwwwgwwwgwwwwxwxxffwvvhwwxgwwwxwgwwwwwxwvvvxwwwvwwgxxgfgwfwwwwxwwwxgvwwwwxwwwxwxxwwwVwvwgwwgwwwwwwwgwwwwxwwvwgwwwwwwxwxxwxwwxwxxxxhxwfxwwwgwwwwxwxgwwwwxwggwxxxwxxwwxhxhxvvgwvxwvvwwvwxwwxvwxwxwwwwwwwwxxwwwwwwgwwwxxwwgwgwwwgwxxgwVggwwwwhwgwgwxwgwxxxxwxwvwgxhhhwwgwhvgxhgwxxwwwxwxxwxxwxwwvwgwxwwxxgwxxgwwwhxxfgwwwwwwwwwxxwwgwwxxwvwhxwxwwxwwwvwgxwvwhwxwwwwwwxwwwvvggwffffWwwuwwwgvwwggwxwggwgwwewvfwfgwwWwgfvgfffwvwwwgfwwwxxgvwwWWewwwfwwxVwwggxgfwwwwhvwwvfwwwVvwwwwgwwwxwwxxwwgwxwwfwwwwwvwgwwwewwfvggvwwwwwwvgVxgwvxfvfWuwvwWwvwwwwxgwhwxwgwwVvwxwwwwwwvWwvwwgwwwvxxwwwwvuwwwwwgwwWwwXgwwxxwxwxxxxvwwgwFfgwggwvfvfgFfwvVwvfVwgwvvxWvwffvxwwwwvwwhgVvwwgvgvvxhwWwwhgwxgwewwgwwgwwVvvwxXwxgxxxgXhgwwwwgwwgxWxvhxxhwhwxxxxxgwwwggFfvfgwgWuffgFfvwwggwgwwgvwwwwgwxwwwwxgxgwwvXwwwgggwwvwwxgwwgwwgxgxgwewwwhgwwxwwxxwwxxwxwxhgwwwwwwgxwwxxwxgvhwvwwwwwvwxgvggWwwfvwvxwwfwwwwwxxgwxwxxwhhwwxwfgwwwwwxgwvwvvxgwwxxwxguwwwwwwgxxxwwwwxxxxxwxwxwvwwwwgxwwgwxwwgwvwgwxxwxxwwwwhxxgxwwghwxwggwfwwxwxwxxwwgxwwwwxxwxwxwxxvwwxwgxwwwwvwwwggwwvvxwxwxgWgwXxgwhwxhgxggvxwwwhhwxhxhxwhhgggxxwxxhxwxfvvxxxxxwwwxwwxxhhvxhgwwxxwxwwhwxwxvgwwwwhgXxwxxwwxxwwwxwvwwwwvxWwwhgwgwwwwwwxxwxghwwxwxxwhwwwwwxxwwxxxxwwxxwxwxxhgxxwwxwxvxwwxwxxvwwwxwwwwwvgWwwgfwfvxwwfwgwwwhwwxxwxvvxfvwwgwwwwwxxwxwxwwwwwvwgvuvwwxwgwvwgvwwwwgxxvwwwvvwwwgwwvwwxwxwwxwWwvwffuwwgvwwvgvwwwwwwwxwwwvgwwuuwwwwgxwwgvhwwwwvxwwwxvwwwVfufwwwxwwgwxwwwwwgwvfvwwxwwwwwvwwxvgfwWfuvxWfvwgwfwfvvwwgwwwwwwxxwvfwwUVfvwwwwwgwwwwwghxwwxwwwvvggWgfwxwwwwwwxwwwxxgxhgwvwwwWvWxxxhxwwghhwwxwxxxufvwWfUfwwwwwxwvgvgwWgfwwwwfuxgvvfgvwfxxwwwwvwxWgwwwwxwwxwwvwvggfWwwwwvwwgwwxwggxhxxxgxvwwvvuwfgwvwwwxwwgWwvxvwxwgwwvwwwwwwwwwwxwxxwwwuwxwwxwxvwvxwxxwhwgwvvgwgwwwxwwwwwxgvwvwwxhwwxxwwwwgvxvvwwwggvwxwwxwwwvxxwwwwwgwwwvwxwxxwxxhxwwgwvwuwvwwwxwwvwwwwxxxxvwwwwwxxhxwwgfvwhxwgfvfgfgvwxwxwxwxwwghxwxvwxxwgwvxwxgwvxxwwwwwwggxgwwwwxhgxwxxxxxwwxxhwgwwXhvxwwwxwxgwwxwwvwewwwxxvxwgxvwxxxvwvwwwwwwwgwfwxxwwvwwwwgxgxxwxwwwwvwwwwgwwuwwgwwwvgffvwwwwgwvwvgwfgwvgwvfuwxvwewwfgfwvvuvxwwwwfwvfvuwwwvgwfvwxwgwwxwxwwwvfwfffwegwvwwfwwwgwwwgwvvvvDSvvvvUudwwfvfgvvfvwwwfwwwfwvuwwgfvxwxwgvwwwwxwwfvvfvfvvuvwwwggwxwwfwwxwwgedvvuvwgvwxwwxvwwwwwwwwwvfvvvfegwVevfVevgffwxggwVUfwVgvgfvwwfgwffvwggwfwfwhwwgvwwwwgwgwwwwwgWffgwvxffgwvwvxwvWxwwwwfgwwwwxguhwwwXwwgwvwhwhwvwwxxwwgTUvfvvvdSdvwwVfffvvvwgfvwwxfeVvuvvvwxvggwwwwwuvwwwfwfgwwxwggwwvwwwfugwwwvwfffwvvxwvwwwgwgfvxwwwwwwwwwwgwvwggvwvwgwvuwgfvvwwwwvvwWufwgwvvxwhvwwwwvvwxxxwxwwxhxxvgxwwvfwvvfvwwwwwxwwwwxxwwwvfwwwwwvhwxwwwwxwxxghxwgxwxvwuwvwwwgfvuwghxvwvxwxxwghwhwgwgvwgwWfevuwuwvwvhwwvwwxfwfwxwwvwvwxwwvwwwwwwwvwfvwvgvwgfwwwWWwvhfwwwvwwxwxhfuvxxwhwxxxwwwwwwfWggxwxwxxfvwwxvvwwwgwwwgvxwxwwXgxwwxxxwxwwwhwxwwxxxwxwwwvvXwfvvvvwwwwxxwuwwwwwgwgwwwxwwvxwxwwwxxwwwwwvvxwvfvxwfwxxwxvgxxxwwggwvwghgwvwgvwgwwwgwvwwwvvvxVgWgWFfgwvgWfggVVwgghfwwwwwxWgwvfgfvwwwwwgffwwwwwwwxxggWggWVwggffgwgggfghggfwvwxwgWWWwVgghwwvxwggwwwxhvxxwwWwvwVVGwwwwwwgwfgVvwwggxxwwwwgwwvwwwxxgwwxxxxwxxwWgWvggfgwwwwwfwwwgwxxwwxxwghfvxwwwwwgxwwxwxwxxxwwwxfFVUgffVgfVwVvewWVWgxWhfVfwgxfvWgVfwgfvwwwwxwwwFgfgxWvgggwwwhhfwfvWwgggfwfwggfgghWwhxgwWXWefgvgxgwgwxwxggfwVwWxHWVwgxwhwgwVFUvgffgggvxwfvgWffggwWgVgfxfWWWwwwwgvwwwgWgwgwggxwwhwwggxwgWwgwwwgvghwgggWxggghwwfwwwxwwfwwxvwwgwwwXghgvwwwwgwgvvggvwgvwwwxffWwwgwwxwgvwwfxwgwxwhxwgWfwVgwgwwwxwwggfwxghvxwwhgfvwwghghxxxxhwwXXgwxwwwxwwgxwwwxwfxxwwwvwxhxxwwwwxwwxxxwwwfwxhxxwxwxwxwwxwxwxxwwwhxxgvgwVwuwgwggfvFgfgxfgWfwgwwggfwvwxwgxwwxwxWVWgwWWWwwwwfvvwhwggwgwwwXWUwgfWhHVwxxwhwwwwhgwwghgwhxxwxvwGHVxgggxwwvgwwwwwxxwwghgvwhxwwwwxxxxxxgxhxwwwwxxxwwwxwwgwwvgwxwXwhvwwwxxwwwwwXwgwwxxxuxwwgwwvwgwvwvwxwvwwVvvwwwwgwfxwvwwgwwwgwwwuxxxvggvwwgeuwwgwgwwggghvwxwggwewvvwvwwwwwwwwwwxwxwwxwgVwwwwwvvwwfxwwwuvwwxwgggvfvvwwwwwwwwwwwvuwwwwgwwvwwvwvwxxwwwwwwwxwwxxxwwwuwwwwwwvwwwxwwwwwwwxuwwwvxVuwwvwwgvvwwUvvwWfgwvwwwxwgVwgWvwwwwwvgwwxgwwvwxwwwwfxgwwgwgewwxwxxgxfxvwxwxxxwwWwwwwgwwwXxxhuxwxwxghwwwwwwxggggwvugwwwwvwgevwwwgwvwwwwwVfvvwgwvwxwwwwwwxwvvxwwwwxxwwwvxwvwxxwvwfwwwxwfwxvvwgwwwvwwwwgxwwwwwwghwwwwwvwwwwwwwwwxwxwwwwwvwwxwwxxwxwgfuwvwwwwxwwwwwxxwwvwwvwwxwwxwwhxwwwwwwwxgwwwvwwwWxxhwwwwwxwxwwgxwwXuwvwwwwwxxwwwwwxwwxwxuwwwwwxwxwwwwgxwwwwvfwvwwwwwwvxxxxwxwggwwwvwxxxwwwvhhwxwxxxwwwwwxxwwxwwxxyxwxwhwgWwxxvxwWxwgvwwxwvwwgwwxxwxxwvwxXwgwwxxxhvwwwwxxxxwWwwvwwxhwgwggwxxxwwxxwwxxwxwwgwhxwhgXwexwxwwwgwvwwfwwwwvwvwwxvvwgvgwwwxgfgwwwwgvgfevgwwwfwwwwwwwxfgwvgvwgxfvxwwvwwxwgfVWwvgvwvwwxWfvwhwgwxwwwxxwwwwgfgwwwvvwgefugwwfvwwxxwwwfugwxgdUuVwwugwwhweggvwufwwfvwvxwwwxwwgwefvwuvxvxwwvwufwwwvxxxwwwwvwwgwwvwfVfwxwwvwgxwwfgufvfvwvvwuxxFevWxfwfwxwwwwvwwhxwwwwgwwwgwghwwwwyxgwfgvwwwwwvgxxwgegVxXXfwxxwhwwwwfgvxvwgvwxvWUwgxvwUgwgvWwedgwvwgwwvgwwwvwgxvvxhwwwvxxwxvwxwxvxfxxhfwhxwvwwvvwwuwxgxxwwgwhgwwvwxvwwgvgwvwxwugvwvvwxxxwwgvfvuwwxfwwwwwwxgefvwwufvwwwuwvfxxgvwxvwvvwwwwxxxxwwgxvgWwwxwxxxxgvwwfwwxwxwuxwwhwvxwxwfwxxwxwwgfwxwwxvwxxwgxwxfxwxxggvfwwwwwwhxvwvwxvwwgxwxwwefuwwxvxwwxxxxVwVwvWxxxxxxwvwwxwxxxxwgxxwxwwxgwvwxggwxxhhxxvfGgwuugwwwvwvwwxwxwwwxwwwwxxxvwxxxxxxwexgxwwwwwxxwgfxwwwwxxwwwxxwUxgwtgxxevwgvvhgvwVWfwwwggwwefvgwvgwfwgvwwwwxwwvxgfffwggVgvxwwhxwwxwffwgegguwgxfwwwgvwwwwwwfhfvwggwwwvwxvxwwgwggggWxwxwwwwwwwgwwvhwvvvxwgUggwfFgvvxwwwgwxwwwwfwwwgwxvwegxxwwvwwwwwfvwgvxgxwvvwwgwgFwxwwwwfwfvhvxxwwwxxwwwGfxxwwwxwwvxwfvwgVVwgevgwFfwwgvggewgwwxWwVefwwfWvfvwwwwwuwwwwgwgwwwgwgxwwwxgvwvvvxwwwWxgxwxwxgxwgwwwggvgwgxFgwwgwhgwhwvgxGxfgxxvvwwgvuggfFWvwwwwvvvxhvgfwgwfwvwgWwwvwufwhwwvwwxxghwwfgwfwwwwwwgwwwVxxgxwwvwwvgWhgxwwxxwwwwxvxgghtxvxfwxwgwxwgvwxwwxwgvgwvvwvvgwvgwwwxwwxxxwwfwwgwwWxwxwwwwxWwggwwgwwgvwxwvxxgwhxxxxwVvwWwgwxwxwxvwxwwwwgwxhxhwhxwgvxxxxwwWfvxxxwwxwfwWwwwwvxwwwxgwxvwwwWvvxvwwwxwvwxvvvvwghxxwwwxwwwwxwwxwxwwvxfwgwvwvwwgxwwxwwgwwwwwgxwwwwhggvwwxgxgghwggwhwxwwxhfwxwwxwgwwwxwhhgxxwxxwxhvxxvwvxwwwwwWwgxxwwhwxgwwwggwwhvwxwwhxxhgxgvxwwxgxvwhwwhwwwxwwvxwggwxwwwgwxwwxvgxWwhxxxwwxgvwwwwwxxhwwwwwxgwxwxxwgwxxwwvwffvwwgvwxvwvxwfwwwwwxfvwgwwfwwxxwwxgwwvwwgwwxwwwwvwwxvxxvwwwxwwwxwxxgvfwvwgwwgwxhxgwwgwhwwwxxwwVwuxvwfwxwvxvfvwfgwgwwxwwvvvgvgwwxwwxxwxeuvwwwvwvxxxwwvvvwvfwgwwwfwvwwhwwwwwwvVwvwggxwwxwxfvvvwwwvvwvwvgwWuwwwwwwfwfwvgwgxwwwwwfgvgwgvwwwxffggwgvgwxxxxxwfvwwgvgwwxhwwwgxxwxxxfvggwwvwwxxhvwfwWhxvwxxxxuvvfwwvggvwwwffvwfggfwwgwfVffgwxwwvgwwwwwvgwwvvvggwwgxffwwwvffxxxwxwwwwwwgwfwwwwxwvwwwgwwgggwwgxxwwuevvvvwgvwwwwwwwwgvggwwwgwxvwwwxvwwxgvwwgvwwwwwvwvwwwgxxwwvwwxwwwwvwvxwvxxxwvwgfWwxwwwwvxwxxwxhhwvwwwxxwvwwwxwwwgwhwxwwvwwwwgxggwwwwxwuwvwfxxxwwgwwxwwxwwwgwvvwvwwxgvwwhhwwxwwwwwwwwxxxwwwwwxxwfwggxwwgxxwxhghXxewwxwvwwxgwwxxxxvxwgwxxxwwwxwwwxwvwwvvwxwuwwwxwwwwxwwwvxwwwwxxgxwxvxxxwghwvxwgxwxxwwwwwwvwxwwgwwvwxwugfvvvfxfvvggfffVwVwwwwwufwwwwwgguxwffvwgfwfwwwuwgvfwfwfgwgwghgfwgwfvwwufwfwvwggvvwwwwvwwwggwggfvvwfgwvwwgwvxwwwwvgwgwhwgfvwvgfvwwfwgwuxwfwvvVvgvwgggvgwvvwfwgWwxwvffwfwwwugfgvwwwwfwuwuwwwwfwvwwwgwwwwwxvwvvvwwfwwWvwwvwwwfwvWgwwvvwwwVevwVvWfvvwVugfegvfwwwwxwWwfvggfvvfvwgwxhfvwfgvffwvwhwgwvwwgfuwwwwwxwwwWVwfwhwwvwwwgxhwvwwvgwwfwwhxwwwwwWgWvwXxfiwwwwgfWwuvgvwwgvgVguwwwWvwwwwgvVgwfWvfwwxfwggwugvvvvwgwwwwwwwgvwvwwwwghggwggwgVxwxwwxwgwwwghgwwxvwgwuxwvwvwwwwwwVwvwwwgwwvgvgvgvwxvgwuwvwwxwhwfwxxwxwgwghhgvwwvwwwvwxhxfvvgvxgwwgwwxxwvvwwwwwwhxxxgwgwxggvwxxgwwxwwvwgwvxwxvxvwwxxwgwvwxwwwwxxwvgwwxxxvwwfwwvvxxwwwwwwwvwwxxwxxxvwwwwxwgwwxwwwwxvxfwvfgwvWwwwxwwxfwvwgwwvwwwwxxWfuvwwgwwgxwwwxwwwwvwwwwxxwwwwwwwwhxXfuwgwwghgxxxhxvxwhwxWwghwhwwwxfxwwwwXfwwwwwwwxgvwghwvwwvwwwvwgvwwwgwwhxwxgwxwwwwxwwwwwvwwwfwwgwwxgwwwvxxxvgwwwhwgwvxwgvwvwwvxxuwwwVwvvvgwgvffwfwvwggfwvwgwfWgfwwwfewwxvvwgfwVwwxwwwgvxwwgwgxhfvgggvwvwgvwwwwwWwwwwfwgwwfwfvvwgxvwwwwxwfvwwgwvgwwgvwwgwwwwvfegvwwfvwfwwwVgWVfwwwvffwvxwgwvggwwwxgwwfwwwwwwwgwvwfvgwewwwwvwwvvWwvWwwwwffWVgfgxwxwwwwvwgwwgwwgwwwxgvwgwVewgVfwvvfghVfxggfvffgfwgwWwVfwffwwffwwwwwgVfwvwwwWfwwwwghgwwgwwgfwfvhvwfwgwwxvWgwwWWgevvwxwwhgwwwwvwgwghhwwggvhvvxgVvvwvvwVwwwwghVvWVggwWfffwwwgfVvvwgvfwgxWggvwwvvgwwwgwwwgwwwwfgwwwwwxwwgggXfwVgexfffwxxxxwwwxghwwgwwghgwwwwwwwwwwwvwwwgvwggwwhgfvgxwwggwgxwgwwwfwwwxwxwwhwvwvwvwgwewvvwwvvfwgwwxwwgwffxvexxvwvwwhwwxwxxxgwwxwvhwvvxgwvwwxwwgwwwwwwwxwwwwwxwwwwxwwxxxxwwxwxvwggwwwwfwvwvwwgwwvwwwwgewwgwxgwxxvwwvwxwwwgxwwgwwwwwxwwwwgxgwvwwwxwxfwwwhwwgwwwxxwwvhxwvwhgwxwwgXwwwwxwxwwgwwwwwwxwxghwhvgwxwwwwxhwhwwgwwwgwfwwxxhhwghxvhwwwhwhwxxgxxfwwwwwwwwvwhWwwgxvhhgvgwwgwwxWhwwwwffwxxwhwxvgwxxvvwxwxgwxwvhxexxwvwxhgwwvwwggxwfwwwwtfwwVvwwfvvfUwwwwwwwwvwgvxewvevvxwwvvvwwwxfwxvvwvwgwwhevvvwwwvwwwvwwevwvwwvwxweufUTvwwwwwwwvwwwwwwvvewwxwwxxxxwwwgfwwwwwwxwvggxwxwxxgxxxwvwhxTuvveTvuUeVwVevgwVfwwwvvgvgvxvfvvfvwwwuwxfVwwwwxvwvwwwxwfwwvwvwwvwwwxgvwggfxxwwxwgwwxwvwwxxwwwwxxxxyvefewfUgffwwwwfwwwvwwxgvwwvwwwgxxgvwwwwvwxxvvwwfwwwvvwwwwwxxxwgwwxwwxwwwvvxwxxwxxfvvguwgwvfwfvwuevgggvvwxuwwwvwwvxwxwwwxvfggvvwwwwvgwvwxwxvVvxwwvvxxxxxxwgvwewfwwxwwgvxwwwxwgxxwwxgxxxxxxxvwwwvvwwxxwwwxwxxwwwxwwxxxdffueevgEgugvfwwvwfwwwfxvxgwxvxwwwwwwfxwwwvgvWxwwwgxegwwwwwvgwgxwfxxwxwxxvWwwwwvwwfxweUvvwvVfwwwwwxxvxwwvwwgvwwxwxxxwxwxwxxwwwwwwxgxwxxwgwwvgxwxVxxxuwuuvuvwfuVwwwgfwvvgvwwgwvgwwwwwwgwwwgvwwwvwwwvwvvwwwwvwxgwwwwwvwxwwwfuVvwvwvfwwgwvvfwgwwwxwwwwwwwxxxwwwwwwxxwhgxxxvxwvxxxwxxwxxxxvvwvgefWuVvvWwwgWwwwwwwvwwvgwXgvVwwwwwwvwwvwwwwwvwxwwweggvgwxxwxxwwxwwxwxwhxvxxwwguVfVwwwwwwwwvwwwwvgwwwwwwwwwxwwwxfhgugwxxxxwxwwwxwwvvvgwvwuwvwgwwvwfuvvwxwxvwxxxxwwwwvgwfwwxfxwxxwxxvxwvxvwwwwvwxxgwwgwxhxwwxwxxxxhwwwvwwxxxvhwxxwwxWvgwvgwwgwwxvwwwwvugvwvwwwxxwgxxwwxxwvwwhwxugwwuvxwwwxhxwxxxwwxxwwxxwwwwvwwggwwwhwwxwxwwxxxygxxsfgwfvvfffwwftffvwwwxxfffvwwwvgvfvvwwwvwfvwwwwwxxvwvwvffwvwVehwwwwwxgvwvwwuvuwvwwwwwxxwwxwvevwvvevfVevvvvwvgvvwwhgfwwwwwwvwfwwwwxvwwwwxwxfvwxxffuwfwvgvwwgwwwxgwxwwwxwvxwxwvgwxxwwwwxwxxxxxeefevggwfcetWuwwfffwvxwFVvWwewvwfevggwwxwwwuwvvhwxwgwwwwwwwwxgwgvxwfvwvwwwwwhgwvxwwwgwgxwwwwvwwwwxwxxwwwxuwfedvfwwvffwfwwggvfxwfwgwggfwxxwxwfwwwxfxgvxwwwvvwvwwgwwwwvwvhxwvgxwwwxwwxxwwxxffvWfvgvvwvwvvgeVfgwwxvvwxxxufvvwwwwwwxxxWgvwwvhwxwwvuVuGfhvwwgwwxwwxwxwwwxwwxwxwhxwxvxwvwxxxwvgwvwfvwwwwwwggwwwwwwwvwxwwwwwwxxxwwwgwXxxwwxwfvwwwwwxxwwwwxxxxwwxgwxgwxwxxxxxxwwxxeefdfwwxvufwgvx6VuWwwgwwwwwvUwwwwwgwwwwgxwwhxwwwXxggwwwwfvxwwwwxxwfghwvwvwwwxvvwWwwwwgxgwwxxxhwxwwhwwwwwwfwffvwwxfgvwwgwwgwxwvwwwwwwgwgwwwxwxwwxwgxgwxwxwwwwwwwwwwwwxwwwwwwwxwwxxgwxxwhwfvwwvwwwvvxwfwvwwgwvvvvwvwvvgwvuwwvwwwwwwvxwvvwxwwxwvgvvvwvwwwwwwwwwwwxwxwgvwwwwwxvxxxwxwwfvwvvwwfwvvuwwvwgwwvwwwwhwuwwwxwwhwvvwwwwwfwgwwxwfwxwwgwwxvxxvxxvvwvvfffVfgvvwvVfvwvgwgfwfwffvvgvvvvwwwvwfwuwvgwvwgvxwwwwwvxwvvxwwvwwvwwwgwgwgxxvwvwgwwggvwuwwwwwxvwwwwwfvvvwvvvwvwwwuwvxgvwwwwwwvwwxgwwgwgwgxwxwwwwvwwwwggWwvhwwxxvgxwwgwvwwwwgwwewvwgwwfvwfwuwvwwxwwvwwwwwxxwxxxggwvwwwwwvwwwwhwwwwwxwvwwwwxxwwwwxxwwwvuwwxwgvwxvvwxwwxwwwxwwwxxxwxwxwwxwxwwxhfwwxxwwxxxxxwwxxwvfwvvvvvgvwwvgwfvwvvwwgwwggwfwwgwwwwxxvhgwwfwwwgwwwgxgwwwwwwhwwwwwxwwwxwwgwxwvwvxghwgxxwxvvvwwwwwwxwuwwvwgvwwwwwxwwxwwwxwhwxwvwvxwwwvwwxvwvxxxhfwxxwwxwvwwxxwwwwwxwwwvwwwgwxwufvwwwwwwxwvwvxgvwwxwwwwwwxwwvwwvwvggvxvxxwxwwwvxvwvwwxwwxwwwwvwwvgwevvwwfwwvwwwwvwwxwvwxwwvwvgxwfwvxwwwwwwxgwxwxwwggvxvwevwfwgfgvvwwwwfgwwgvvwwwwwvwxwvvwwwwxwxwxxvwvvwwwxxxwxwxfwwxwxwwwxvwwwgwwufvxwxwfwxwwfgxwxwwwgwwwwxwwxxwwwwwvwwwxfwgwxgxwxwwwvxvwwwvwwwgvvwwxwwwxwwwxxwwwwwxwwxwvwwwwwxwwwwwxwxwwwwwvwvwwxwwwwwwwwwxxwxxxwgxwwxwwxxwxvwxxvxxwxxxwwwxxvwxgvwwwxwvwxgwvvwwwwxwgxwwwwgwwxxuxxwxwwxwwwxwxwwxwxwwwgwxwwxwwvxwwxwxwwwwwwwxwwwxwxxwwwwwxxxwwwxwxwwwxxwfvgwgvwvvwvvwwffwwwfvfvfwgwwwfwvwwwgwfvvffVvwwfwwwwgwxxxwfuvwwgwwwvwwvwwfxwwxwwwxwvwxvxvwxgwwxwxwvwxxxwxvwwwVwwwwvvwwhvgfwWwvwvwgwgwwwwvxxwxwgxgxwxxwwxwxwwvvwwwwvxwwvxgxxxxwxwxwxxwwxwvwfffwvvffvwvwgfegvwfwgfvffwfvwvwwgvvwgfwwwwwggvfgWwfwgwgwwwxwwfxhwwwgwxfxwwwwwwwgfXwxXwwgwwvvgvhvxwwxwwwwgVwvwwvxwvwvxwwfvfwxwvwwwwwvgwwxwwwwwwwgwwwwvxvwWwwxwxxwvhgfwwwwwwwwwvvxxxxxxwwgvwvgvwvwwwvxvggwgwwvvvwvvwwvwwwvwwxwwwvwxxwgwwwwgwwwwwxwwwxfvhxxwwwwwwwxxwwxxxwhgwwvxwvxwwwwwxwwxgvwfwwwhvgwxvxwwgwwwwxwxwgxwwwfgwwwwxvwwwwxwwwghvhfwxwvxxwhwxwxwwwwvvxwgwvwwggvvwwwvwwvwwwgwgwgwwwwwwwvwwgwxhvwvxgwwwggwgwxggwwxgxwwwxwwwxwwwwxwxgxvwgwxwwwwwwxgwwvxxhwxwfwwwgwgwwxxxvxxwwwgwxwxwxwwxxwwwwxwvwxwwwwgxgxwxwwvwwxwwvwxwvwxxwwwwwxgwwxhhxtgvvwwwVuvwuwwgwvfwvwwvewwwwVuwwvgwwwwwvVfvwwgwwvwwdfuvwvvhvvxvxfvwfvwvggwxvwvwvwvwxetuwuvwvwwvwwvEevwwvuvhwwvwvwxwwxxwwwwgvwxxgxvffwwgvWwxwwwwwwxvwxwwwvwxwxxxwghxxwxwxxetuvweVveVvwfwvweTfevwwfegfwvwfVfvvgvgvvwwwxVevfWwwvvvwxwwfvvfwWvWwwvwgwwwgxwhgvwwwvfwvgwgvwwvwwwwwWwwwwwhxwwvefufwwwgVvwwxfevUwWgwwwxwxwvvwvwvwwxwuwwwfwvvgwwwwvwwwwwvgvwwxxwwgwhwwxvxxwwwxxwwwexwxfwxwgxwUuugtevwuwwweufvvfwwvwvfwfwvwgwwxwvwxvwxxuvgvfgWwvwvwwwvwwvwwvwwwwgwwwxwwxxwwgvgvxwwwxffxwxhwxwwwwwgwvwwxwwuxxxwxgwvwvwwwxxwwxwwxwxwxwvwxxxvxwwwvvxgxdVfugvvguwwwffefxfWvwwwwghFfugwwhwwwvwxwwfwwwwwfhwwxwfvwwgvWwwwwwwwggwwwxwwwggwvwwwwwwwvwwwwgwxwffvvhgwvwwwwwgewvwwgwwwwwwwwxwwxxwwwwwwwwwwwxwwwvwwvxwggxxxwwwxwwvgwwwwudfwevwgfgwxvvvwufwgwvfvVvgvvxwvvvvwvvwvvfvvggwwwvwvfvgvhwvgwwxwgfvwgwguwwwvwfwgwwwvvgwwwwxwwvvwwwwwwwfvvvvwwgvwvwvwuvgwWvvwwxwxvuxwwvgxwwwwgvxwwwxxwwxvvwwvvwxwwvxwwfwwwxxwxxwxhxwwxggxxwxxxvxfuvvwwgffvfuwvvFevvgvwfdffuwgxwffggwwuwffwwwhVuvwuvvvvwwWwwwwwwwwwwvwwwwxwgvwwwgwvwwvgxxwwwwwvwxwwwvwwwwfgwxvwffwvwuvfwfwvvuwvfwwwwwwxwwvvxwvwwwwwwvwwwvvxwwwwwwxwwvwvxvwwvxxvwwwwwxwxvwwxghvfxwwxwfuvvfvwwWvwugffwvfvwXuwwwwvvvwgwgfwxvwxwwvgwwxgwwwvuwgwvwwvvwvwvwwgxuxwvwvwvgwwxfvgwvvxvwvwwvwhxxgxwvWwwvxxwxwwwwwvwwgwxxggxwxgwxxggxxwxgxwxxwwxwwvxxwwxxwwxwwwxwwwwhvxWwwxwxufVvwvFwfwwwwgfdhwwfwugvggvxwfvvwwwhfgwwwwwwvwwwggwfgxgwwvvwvxwwwwwwgwwxvwfgwwxgvwwxwwxxwxwxwwwwwgxexgwvgwxvwvvwvuwwwxwwxvwwfwwuwwwwwwwuxwwwxwxwxxwwwhwxgwxxxxwxwxwwgwhwwwxgxxwxwxxxxxfwwXwxvwwwVevwvwwwfvwvgwgwfwwwVwwgwwvwwfwgwwwvwvwwwvgwwwwvgwxwwwwwxwwwgwwwwwgwwvwwxwwwwwwxwvwxxxwwwxwwwgwhwwxwwwvwgfvwwvwwVwwwwvgvwwggwwwwxhwvxwwxxxxxwwwwvwwxwxwwxwwwxwxxxwwwxwwxwwxwwxgwwxxvvgfwggwwfVvwvvfwgggvwgVuWUvwgwvwwWwvvwgwwvwxwVwwxwwgwxxvwxwfwwwwvwggwxvwwfvwgxwxvgwxwxwgwwxwwwwvwwwwwxwwwxxwwfgwvwvfwwxvwfVwwxwxvwwwwwwvxwxwwvwxwxwxgwwvwwwwxxwvwwwxvwwwwxwxgvxxhwwxwwhxwxwwwwwxvwvvgwvwwwwxwfvwfwwvwvvxwvwgwwxwxxxwxwwvwvwwvwwxwvwwwxxxwwxwwwwwxwxxxwwwvvwgwwxxgwwwxxxgwwwwxxwxxwwwwxxhhxxwwwwxwwxxwxxxwhhwxxxwxxxwwxxwxxxwxwxxwggwwwfwwxwWfwwxwvxwwhvwwwvwxwwxwwxwghwxxwxxgvwwwxwwwwwwxwxxwwgxxxwwwwxxwhhwxwwxwxxxxxxxwvgwwwwwwwhwxwwxxwxxwxxxwxwwwxxxwwxxhhwxxxwwwhxwwxgxwvfwvvwxgvvwwxxwgwwwvvvgvgvwwwwwwwwxgvwwxwwwgxwwwxxwwxvxwvvgvvwwwwwwwwxwxvxvgvgvfwvwxxxxxwwxfwwxxwxxvxwxxxxxyhvfwvfvggfvgwwgwgwfvwwwwfwggxwwwxwwfwxwvxxxwgvwwwwwwwxxgwxwvxwwxxwxvxgvgvwvvwwwwxwwwxwwxvfwvwwvwwwwxwxxwgxwvwxxwwwxxwwxwgvvwxwwvvxwwwgwwwwwwxxxwxwwvvvwwwxxvwxwwxxwwwxwwgwhxxwwvgwxxxxxwxxxxxwxwwxhxxxxxwgfwwwwfwwvwwwwwwxwwwwwwvgwwwwxwwvvwwwxwxwxxxxwxxwwxwxwxwwwwwvwxxwwwxxxxxxwxwxxxhxxwuevvvvvwfwwwvvvwwwgwwvwgvwvwwvwwwfeuwwwwwvwvvwwxgwwwxwgewwwwvgvwwwwwwwwwvwwwvwwwvxwxwxvvvgvgWvwvwgwwwwvgwwwxhgfvwvwvwgwxxwwxxwxhwwwwwvwxwwwwhwfwwuwxxwvxwxxwwxfuvvufuvfUevwwvVfvwwvgvvvwggveVfuwvwveVgwxggvwwwwwvfwggwwgwgwxwwwvwwVwxwxwwxfwxwwwgwgwxxwwwwwxgvwvxwxxfUvvuvwwfxfwvvwwwvwvwwwfwwvwuxxwwvwwgwwwwwwxxwwxwggwfwwwxxwwgxxgxwxxxwwxwwxwwwwwwvxvwwvgvgfvwwvwgvwwwwxgwwfVvwxhwvvwvxgvwhwwhxwwwwgwwwxwwwwwxwxxwxwwwwvwxwwhvgvxgvwwwvwvwxgwxxwwwgxxxwwwwwwwwwwhwxxxxxwxwwxxxxxxwwxxxxwxxxugvgvvwwwwgwvwVvwgwgvwWwwwwwwwwwwgvwwggvwwwwvwwwgwvwgwwwwwwwwwgvwwgvxxWxhwvwwwwWwwxgwwwxwwffgwwwxvwxvgwwwhwwwxwxvwxxxwxwxwwxxwxxxwxwwxxwxxxwwwxwxxxuvxfvwwgwxwfgwwwwwwgvwwhxWgvggvwwwwfgwwvwwxwggwuvwgwwwwwwxwvwxxwwwwwxwhwwwxwxwwwwwwxgxxxwwxxwwwwvxvwfwfvwwxxwgwwwxxxwwwwwwwwwwwwxxxwwxxwvvwvwwxxwxxgwxxxxxxxwxwvwwvfuvfWgfevwwWwvgwwwgwwgvxvwwfwwwwvgWvwxxwwwwxwwwwwwvxwwxxwwgwwwvwwwwwxwxwwwxxwxwxwxwxwvhwxwwwggvwgvffwwxwxvgwxwwwwxxwwwxwwhwxwxxxwgxwwxwxwhwwxwwwxwwxwxwwvwxxxxxwwwwfwwwvwxxgWgvwwwgxxxwwwwwwwwwwwxwwwhxwxwxxwgxwvwwxhwwwxxxwwxwwvwwwwwwwxwxxxxwxxwwwxxhxxwxxwxxxxwxxxxxxxxwgwgvwguwhwxgvwxwwwwxxwvhwwhwxxwxwgxwwxwxxwxxwwwwxxxxxwxxwxwwwwxwxxxxwxwwvwgwwxwwwxwwwwwxxxxxxxxwxwxxxxxxxwxwwxxxwwwwvgwwwwvwvwgwwvwxwwwxvvwwewwvxvgffgfwvwwvxxwwgxwwwvwwwvwxxwuwxvwfwwwxwxwwwwwwfvwwwgffwwwwxwwvgwwwxwwwwuvwxwggwwwwwwwxwwwxxhwwwwvwxxxwwxwvgwwfvgwwvwugwVwwvxwwefwwggffwvvwwwwgfvwgwfwxwwxwvgxwwxwfwwwxwwxvxwxevvwxxxwwwwgffwvwvwvwgewvwgwvgxwwwwwwwvxxwvvxxxvxxwwvwxwwxwwxvwvwvxxxwxwxxxwxwxxxxxvvwwgwwwwxwwwvgwwwwwwwgvvvxxxvxxwwwvfvxvwwwxwwxxwwwwwwxvwxhwvwwvwwwxwwhwvwwvwwwxwuxwxxvxxwxxvxxwxyxxxxggwwvwgwgwgvfgWwxwxxxwwwwwwwwxwwxwxxvvwwwxxvwwvvwwwxwxxvxxwwwwwwxxxvxwfwwxuxwwxwxxxxwwxvxxwxwxwxxwvxwwwwwwvwvhfgwwwwwwwvwwwVwwgvwwvfwvwwwwffvWwwxwxgvxxwwhWxwxwxwxwxwgvwwwwxwxwxxxwwwwwwwwwwvwwwwhwwxwwwwwwwwwwwwxwvgxwwxxwwwxxwxxxwxwwwwgxvwfgVwwgwwvwwgEVvwwuwwwwwxxwwwwwwwvfVvgwgwwwwwwwwwwWwwwxgwwwwwwxwwxxwwwfwwxxwwwwwwwwwwwwvwwwwwwwgxxvxwxwwxxxwfxwxxwwwxxxxwwxwxwwwwwwxwxxxwxxxxwwwwxwwwwwxwwwwhwwwfgvvwxfwxxwwxwwwwwwxxwxwxwwwwfwxwxwwwxfgxwwwhwwxxxxwwwhgxxxxxhhwxwxxxxwwyvwxwwwwvgvxwwxxxgxwvwwvwwgwwxwhxwwwwwxwxxwxwwwwxwwhwxxwwxuwxwwwwwvxwwgxxxxwgxwwwxxxxxxwxxxxxxwwwxwxwwwvhwvvwwwxxgUgwwwwVegfvuugwwhwwvgvwwfwUfvfwxwgwwxwvwxwwgvwgxxxfggwgfwxwxxgwwxxxwwxxwfgvwwfwwgvvwvwwxwwwwwwwxxwwwwwwxxxgxxwwwxxxxwxxwxxwxwwwwxwwwgvwwwgwwffwuwVwvUfvfffvgwVwgwUVvfvvwgvwvwwwfvvffvgwwxwvwfwwwwwwgvxxwxgwwwgxhxwxwwgwgwfxxxhwxwwwwwwwgvwwwwwwwfwxgwwwghxwwwwxwxxwwwvgxxxxwxwwwxwgwxvwxwwwhxgwwwwwxxxxxwxxwwxwfgxxwfwgwwwWewexwwgxwwwwwxgxxwwwxxxwfvvwxhvxwhwwxxvxwxwwxwxwxwhwwvgwwwwwwwgvhxxwwgfxxXxwxxwxxwxxxxxvwxxxxxxxxxxxwwggvfwwwwgwfvvwgVwvwwgwWwwxwwwwwvwxwgggwxwfxgvwwgxxwvwxxwxxwxwxxxwwgwxwwxxwwxxwxwwxxfwwwxwxwwghgxwwwxwxxxxxxgwgxhxxxgwwwxxwwxxxwxhxxxvewxfuwwfvvwgvvwwwvwgwwwfwvwvffwffwwgvvwfwwwwwwwgwgwwwwvwvwwwxwwwxwwwwwvvwxxwvvvxxxxwvwvvvwwgwwgwwfewvwwggvwfwwwwvwwxwwwwwwvxxwwgwvwvwxxxwxwwxxxwwvxxgxwxwxxxwvvwgvVewfwvfuvwwgwfwwvwvwwufvfgweewgvvgfvvwgvvwwuwwvgwwgwwwwwwwwwxwgwvxxxwxxwxxxwxwwwwvwxwwgwwwwwwxwxwvwwwfvgwwxwgwxvwwxvwwgwwvwgwwwwwxxwwxwwxwwwwwwvwwxxvwwxxwxwwwvwxxfwxxvvwvwfwvwwvwwuvwvwwwvwgwgwwwfwfgwwwwwwwgwgwwvwwxxwwvvwwwwgwwxxwwwwwwwxwgwwwwgvxxxwxffgvvfwwwgwwwwwwxwwxxwwgvwwxwxxwgwwfvwxwxhgxxwfvxwwxxwgxgwwwwxvxxxwxxwxwxxxvwgwVwewvwwfxwgvvxwvwwvxwwwgxVwewvgwxvwfhgwvwwwgwwwwwhxwxxwwvwwxwgwxxxgwwxxxgvwxvwwwxxxwgxvwxxwxwwwwgvwwfwwwwgwvxwwxwxwxfwwgwwwwwxxwxxxwxwvwwwwwwxwxwwwgxwwxwxxwwwvwwwvvgvvwwgvgwvvfgwgwffvwffvefegwwwwwxgvwwwwxwgvxwxwwvgwwwwwwwwwwwwwwwwwwwwxxwwwvvwwwwwwwwwxwgwwxxwxgwggwvwwwvwwwxxwxwwwvwwwvxxwxxwwwxwvxwvvwvgTEwwgwwvfvvgvwwgvgfwvgvwwwffwggefuvvwhvwvwgxwfwvwwwwwwwwgwwxwwxwwwxxwwwwwvvwxxxwxwxxwvwwwwwwwwwwwvwwwhwwwwwgwgxwwxxxwwhhvxwwwwwxwxvwwxxwxxwwwwwwxgwwwwwwwvwwwxwgwwuuvgxwwwwwgvvwwwwwwwwwxwwwxwwwwuwwwwwwgwxwxwwwwwwhvgwvwvwwwxxwwwwwxwwxxwwwxxhxvwxvxwxxxvwxxwwxxxxwxxwvwwvvwfwwwwvhgwwvwvgvvvwvvvwwwxwwgwwwxxwwwxwwxwwhwxxgvwwwxwvvwxxxxwvwvgwxxxwxwwwwwwvwvwxwwxwwwxwwxwwwxwxxwxxxxwxwwxxxwxxxxxxwwxwxxxvgwwgfwwfvwwwgwwggggwwxwffwfewfvgfvvfwwwwevweVgvggvwwwwwwvxgwwgvgwuvwwvxfxwwwfvxwvwwfwxgwwwgwxvgwwgwgxwxxxwgwgwwwwwggvvwwvgwwwwwxwwwwxwwgvwwwwvfxvwwxwwwwxwwxvgwvwwwwwwwwwwxxwxwwxvfwxxwwfxxwhxghwxwxxgfwgvgwffwWgweVffVegvfvwWgfgVeVgwwgwvvwwwgvvfvVewgvggfvwgfwwwxwgwxwvvwwgggwwxwxhxxwvwwgewwwgxgwvwwwwwvxgwwxxwxwwwfgwwwwvwxwwwgvhwwwvwxvxvxwwwvwwwwwwxwxwwwwwxxhwwwxfwvfwwwxwwxxwwwxwxvwxxwwxwxwewvxvwggxwwwwvguwwVvwvgwwwuwgffvwfwwvwxhxwwwwfwxwwwwgvvffxwvwwwwwxuvwgwwwfvhvfgvwwwxfwwwwwvfvvwwxwxwwwvxwwxgwgwxvwwvuwxwxxwwghxvwwghvxwwfwwxgxwwvwghwgwgwwwvwwvgvwwwvxxwwgwgvwwuxwxvwwhvxwXggwxwggwvfgfgwwwwgwvwfvffwgvWwgwwgfwwwwggxgwxggvwvwhwhwwwxvwwgxgwwxwwgwwwvgvwWfgxxxwwwwxhwhvxwuhwxwwwxxWwvwvwwxwxwxwwfwwwgxwwwwxwwwwwwwxxwwwwxxxvwwwxwxxxvuggwxxvhwxwwfgwgwWvxwwgtwfwfvvwwwwfvfvwwwwvwvwwwxfvvwfffwvwwvuwwwwxxwwwwvwwevwwwvwwxwvxfvwgwvwfvvwwxxxwxvuwwvfwfvxwwgfxwwwwxwvVevwvwwwwvwwvwxxxvWfxwwwxwwhwvxxwxxwwxxxxvxwwwwwxeevffffgffvffvgvggwvwwfwwwVdvuWeefgwgwfvvwwvwwwwwxgwvwvwwvwwwgwgwwwwxwxxxwwvwwfwvwvwwxwwxxxwvwxvxfVevgwggwwxgwvwwwwwvwvwfwfwwwgwwwxwwwwwxxwwwvwwwwwwwwvwvwhwxwwwvwwwxwxfvfggvevuvwgwvvwvxwwxvwwvgwwwxwwxwxwxfffgwvwwwxwvxWwuwxxwwwvxwwxxwwwvfwxwfwwwwwwhwwwwwwxvvxxwvwxxxwgvwwxxwxxwwxwxxgwwxxxxwxwwxxUfuuFfdfwwwxwgfxwwwxgwwwwfvvwwwwwwgxwwvvfwvxwhxwwvvwvwwwgwwwwwwwwwwwxwvggwxwwwwgwwxxwwvxfwvwwwvwwwwwwwgwwwwgvwxwwwwxxwwwgxxwwvwxxwwxxwwwwwwvguvvwwvwwvvwvfvwwwwwwwwwvfgwvwgwvwwvwwvwwwwwfvvwfuxwwwwwwwvwfwwwwwwwgwxwwxwwvvvuwvwxxwgwwwwwxwwxwwvwwvwwwwvvwwvwxwxwxxwwfvwwvfxxwwwwxxwwwfwwwwwwxxxxwwwwwwxxxxwxxwxwxgvwvwwvfvwvfvwwfffgwwfvvwwwwwgwwvfwvwufgwuwwwvwfvwwwwgwgwvwwwwxwwwwxwwwwvwhwwwxwwxwvvwwwwwwwxwxwhwwgwvwxwwwfvwwvwwwvgwvwxvxwwwwgwwwuwwwwwwwvxwwxxxwxwfwwwxxwwwwxxxvxwxwwxxwwvfvwvwfwvwwfuwwvwwvggwwxwwwwwwvwwhwwxgvwwvwuwvxwwwwxgwxxxwwvxwwwwwxwwxwwwvxvwwwwwxwhvwxvwxxwwwwxwwxvxxwwwxwwxxwwuwxhwvwwxwwwxwwvwwwxxwwwxwxfvwvwvvwvuwwwvwwwwwwvxwwgwwwwwvwwxxwwwwwwwwwvvgwwwxvwwvvwwwwwwwwwwwxwwwwhgwxxxwxwwwwxwwwxvwgwxxwgggvxwwxuvwxxxxwwxwxxwwwxwwwxxxxwxwxwxwgvgfwxwxwwwxxxxvuvwgfgwuvwwugfwwvwwwgggvwwwwwvgvwwwfvvwgvxgwwwvvwwwwvvwwwxwvwwgfvvxwvvvwgvwxwvgxwwxwwwwvwwwhgwwfvxfuvvwvwwwwwwxwwxwwwwwwwwwwgxwwwgwvwvwwxgwwxwwwwwwwwwwwhwwxxgwxhwxxwxxxxxxxxwfgwWWfvfWfwuUffgWgvvgWfeuffgfvWvwwffgvgvwewwgwgxwvwgugwwvfwwwwhwgwwwwwwwvufxwwwxwwwgwvwwwvwhwwwvvvxwwxwxgwwwwwgvwfwwwwgfwvwvwwvwwggwwwwwwwxwvwwwxxwxvwxwwwwwwxwwxwvxwwwxwwwwwwufgvhxvwwwxvvwwwwxxwwxxxxwxgwgvvwfwvwvwvvgwwwvwwvwvvwwwvuwgwwwvwvvwwhwwwwwhwwwwwvvwgxwwwgwwwwgwxwxwwxxwwxwwxwwwwwwvwwwwwgwfwvwwxxxwwwggwgwvxhhXghxghwwxxxvxwwxwwxwxwwxwxwgxxxhxxwhwfwgUfVgWwuwfgvwgwwwwguWfwggwufwwxwgwwwgvxwwwwgwwwxwxwwxgwwwwwuwgwwxwxhhwxvwxgwuvxwxvvwwxwwwhwwxwvwggfwwwgwwwwwvwwxxwwwwvwxhxwwwwvhwxxwvxxwwxxxwxxwwxwwwwxwwwxwxxxxxwxwxhwxxxwxwxxxwhwwvwwxwxwwfvwwwwwxwwwwwxgvwxwgwxwwxwwwwwwwxxwxwwwwwwwxwwwxxxxwwxfvxwwvwwwxxwwvwvgxwxxxxvxwwxwxwxxxxwwwwwgwvwgvwgvxwvwggfwwxxwwgvwffvwwxwwwwwwxwwxwwxwwwwwwxxwwxxwxxwwwwxwwwxwwvwfwvwwwwwxwwwwxwxwwxxwxwwxxwwwwwwxxxwwwxxxxxwvwwxvwwwwxxwwwgwwwxxwxwxwxwxwwxxxxxxxwxxxwxwwwwvxxvwxxxwxxwwgvvwwwwwxxxxxwwwxwwwwwwxxxxwwwxwxwwxxwxxwwwxxxwwxvwwxxxxxwwxxxxxxxxwwwxvwwwwwwxfvvvwvfuufwvwwvwggfvvfwwxgwwwxgxwwvvfwwxxwwvwxvvxxwxwvwwwxxwgfvwfvxwxwxwvwwxwwwwgxwwxxwwxwxwwwxxwwvxfvwwUVvwwwxgfeugwvwwvwwgvggwufugwwwxggvwfvwwwwvgwwwwwwwwwvwxxwhxvwwwvwgwvxwwxxwwwwvvvwwwhwwwwwwwwwxwwwwwwxwxxwwwxwwxxwvwwxxxxwwwwwxwwvffvvwwwwwxxvwwxwxvhwwwvwwxxwwxwwvxwvwxwxwxgxhwwwxxwxhxwwwwwxwxwxxxgwxwwwugegwxxvwgwwxgvwwxwwwwwwwxwwxfgwwwhvwwwxwwxxwgxwvxxwxwwxwwwwvxhxxwwwwxwxxwxwwwxwwxwwxxwxwxwxxxxwwxvewwwvwvvxvgvwwvwwwgwwewfwgwwvufvwwwvuwwvvwuggvgvwggwxwwwwwuwwwwxwwwwxwxgwvwwxxgvwwguxwwwwuwwxwwgxxwuxvgwwwwxwvwWgwwwgwvgxwhwwwwvwfgwvwwgwgwwwwwxgwwwwhgwxvxwwWxwwwxwwwwwwwwgxwvwxxwwvwwxfvuvvwvvvvggfvufwgUffwfwgwgeVvvftwwwvwwwwfdvVwgggdgwwwfxwwwwgwwwwwwwwxxgwwgwxgvvwhgwvvgwwwwwgvgxWxvwwwgwwwwfvwwvvvwggwwvvwVwfvgwwwwxwfwvvwvvwwwwwvwwvgwwgwwwwwgwvvwwwwwuxwvwwwwhxuwxxvwwxwwxwwwvvvwxxwwwwwwwvwvvvwvwuwwuwwfwwwwwwgwwwwggwwuwwwwvxwgvwgwwvwxwxhwwwwwwwxwwvwwwwwgwxxgwfwwxwgwwwwwvwxwwxwwwwwxxwwxwwhwxwuxwgWwgwwwxxwwxvwxvxwxWwwwxxxxxgwwwhwwwwwxxwxgxxwxxwxxvwgvwvggwvVfffwgvWvwwwwwwwgvuxvwfvwwwwvwwwfWfwWhfwWwwwxwwwwxvwxwwwwwwxgwwwgxgwvgwxwwwvvfwgWgwxxwwxwwwvwwvwvwwvgvwwwgxwwwxwxxxwxwgwwwwwgwxwwwxwwxwxwxhwwxwwwgwgwwxxwxvwwfvwvwvvwvvuvwgvwwwfvvvwwwwvfvwxgvwwvwwwwwgvwxwwwxxxuvwwvwwvwvvwwwwwxhwwwwvwwxwxvxhwxwwxwxwwwwwwuwwwwwgvwgvwgwvwwxwwwwgwxwxwxxwwxgwwwwwwwwwxwwxwwwvwwxxwwwwggvvvffvwwvvfuvvufvvfgwgvvwfvuveuwveeffvvwxwwgvwgvuufvwwgvwwwwgwwfgvwwvwuwwwwwwgvwwwwwwvvfwxwwwwxxwwwwvxvwgvwwwewwwwffwwwwwwwwwwwwwwwvxwwwwwvvxwwxwwwwxxxxgwwwxwxwwvwfwwwxwwxwwxxxxwwvfvwvwwvvvvwwwwwwvvwxwwvwwuvwvwxwwwwwwuwwwvxwwuwvwxwwwwwxxxvwwwwwwwwxxwvwwwxxxwwwvgwwwxwwxxwwxwwuxvxwwwwwuwxwwxxxwwxwxxxwwvxxwwwxgwwxxwwwwwxwxwwgvwwvvwfvvvwvwwwvvwwvwwwwwwwwwvwwwwwwgxwwvwwwwwwwwxwwwwwwwvwvwxwwwwwwwxxffxxxwghwwwwxxvxgwxwxwwxwwwxwxwwwxggvvxwwxxxxxwxwwwwwxxxxxxwwwwwxxxxwwwwgvwwhxxxwwwwwgvwwvgwwwvgwwwvwwwfgufwwwxvgwvwvwwwwwfvwWgvgwwwwwvgvxxwwxwwwwwxwgvwwvwxxwwwxwwwwvwwwwwwhvWgwxxxwxfwgwvxwfwvwwwxwwxxxwwgwwwxxxwxwxwwxwxwwwvgvwwvvwwwfvffgwwwwgwwgfffwgvgvwgfxffvgwwwvwwvwwxwvgxwgxwxwwxwwxwxwxwwvvvwwvvwvwwxxxwxxwwwuwwwwwwwxxgvwwvxwvwvgewgwwwwxxwvwwvgwwxwwwwwxwwwwwwxwwvwwxxwwwwwwfwwwvwwhgwgwvgvhwxxwvwwvwwvvwvgwwwxvwxwvwwwwxwwxxwxxwwwvwwwwxgxwvvwxvwxwxwvwwxwxwxxwxxxwwxxgwvvwvwxvwgxwvwvwwwwwvwwgwwwwfvwhxxwgwxxxwwwwvwxwwwwwwvxxwwxwxwwxwwwxxwwxwwxxwwwwwwxxxwvwwvxwwxxwwxxxwwwwxxwxxxxxxwwwwwWgffwguVWvfvfWxvVvvggfffWgwgvgfwwfwfuugvgfgvfgfvvgwwwwwwwhgggwhvwwvwwgwxxwfwxwwxwWwwwwwwwwwwwwwwwwwxxxwwgvxvgvwwwwwwfwwgwvxwwwwxvgwgwwgvwwwwwwwwwwgwgwxxwxwwgwhwwwwxwwhwwxxwxxxwxxwgxxwwxxxxwwgweggVuwfWvgfuUgWWgvfffuvfwwvfwggfuufVuuwwggfffwwwvwwwwwvvwxxwxgWxwgxxvxggxwxwxxxwwwwhwxwvwxwvvwwhwxwwwwwwxhxvwwwhwwwwwwxxwwwwwxxgwwwxwwvwwwwwwxwwwxwgvxxwwxwxwxwxxwwwxxwwxvxwwwwxwwxxxxwwxwgwugvvvWwwgvvgvgwfgwehwgwVwgvhvwvvgggvwwxgwwgxwwxxxvvwwwxwwwxxxxwwwxwwxwxxxwwwxwxxgwvxwwxwwgxxwxxwwwxwwwwwxhwwhwwxwxwwwxxxwwxwxwwwxxxhwxxxwxvvvwvggggWwwfgwggwvwvwgwwwwvvggwxxwxxwxvwwwgwwwwxwvwxxxwxwwxwwwwxxxwwxxwxvxxwwwwxwxwxwwxwxxxxwwxwxxwwwxxxwxxxxxxxxwxxxxxxwwxxxxwxxhwxwsfwgfwvugfgwvvfwvwwwwwwwwwwwfwuggwwugwwwwxxxwvvvwuvwfwwvefvgwvwxgxuwxwwufwvgwwwwxwgxwgxxxwvfgwwSEvwvvwvfvgwffwwwwwxxwvvwwvwwwwwxxwxvffwvfwwwwwwwwxwwwwxwxwwxwvwvwgwwwxxwwvvvuvevvwffwuvwwwfwvwvgvefwvugwwugwwwwwgvwwwwgwxxwwhwwvvvvvgvwwwvugwwwwwwwxwwwwwwwwwwwgwwwwwgxxhxvwxxxvSEvvfwgwwwwwwwwvwugwwfxwwfwwvvxwwxwwwxwxwwwfwwwugwwwwwwvwxxwwwxwwxwxxwxxwwxwxxxwwwxvxwxvvvfvuguvwgwvwgwwvwwxwwvgwxwvwvgwvvwfvwwudwwfvwwwwuxwwvwwwwwwhxwwwgwvwwxxwvfvwwvwwgvwwwgvgwvwgwwgxvvwwwwhxxgwwwwxwxwwxwuwwwwgwwgwwwxwwxxxxwwvwwwxvxxwxwwwwxxwwvuguvwwwwwvfwwfvfwugxdvwfwxxwwwwwwwwgwwxwvxwwwwugwwwwwvwwwwvwxwwwhvwxwwwxwwvxwxxwwxvxxwwvgwwwxwgfgwwwwwwwgwwhwvvxvwwxxxvxxhvxvwwxvxxwwvwwxwwwwwvwwwwwwwxxxxwwwtfvvvvwwwwwvwfwffwvwwwwgwxwwwwfgwvxvvwxhwwfvvwwfevguvwwwgvwwwxvvwwwvwvvwwvxwwwvwgxwxxfvvgwfwgDUwwwwvufwvwwvvggwgwgvvvwwgxxxvwvxvwxvffwvwvwwwwxxgvwgxwwgwwxxwwwvwxxwwwxuuvvwfwwfVfvvwwvwVwvwfevwwxvvfgwwhwugwwhwvwwwxwwvwwwxxufuvgwvwwvwwvWwwvxwwfwwxwwWvwgwwwxxwvgwwgxwwgxxeDUvfvwwwfggwfvvgwwwwwwxwxvvwvwwvwwxwxwwvwwwxwvuvwgwwvwghxvwvwxwwvgwwxwxgwwwwwfugvwwvfwwwwvwVuwgwxwfwwwwwwwgwwxvxxxxxxvwevvvvvwwvvwvwvxwwwuwvwxxfwwwwwwxwvwwwwwwwwxxugfvugwwwwwwwwxWfgwwxwWwwxxwwwwwwwwwwxwwWwvxxgvwwvwwwwvwxvfwwhwwxgxwhxwwwxxwhxxwxxufvvwvwwgvxugvvvxwwWwwwxwwwwwwwwgvwxwuwwwwwxwvwvwvwgwvwwwwvfwwwgwwwxwwgwxwwwwwwwxvxxvvWgwwwwwxwvWvghwxwxxwwvwwxxxgwxwxwwwxwxwwwwwwxwwvvwwvwxwwegggvfwgvwwvgvgwwwwwwwWgwwwwwwvxvfwwwgxhvwwxWvwxxfwwwwgvwvgwgvvwwwxwxwxwwwwwwwvwwwwxvwxwwxxwfwfwwwgvgfwvwwvgwvwvgwwvwghwwvxxgvgxxwwwxwxwxwxxxwwgwwwvwwwwgwwwwxxhxgxwxxwxxxhwvwxwwxwwxxwxxxxxffwwvgffgwwgfvvwgwwvwwwgvwwfhwvwxwwvwwxwwwwwwfwwwhwwxwxwwwgwwwgfwfuvgwvwgggxwwwwwhgwfxwxvugxwwwwwhvxxwwwwxwhxwxwxwvggwvggwfgvwwwggwwwgwgwwwwxxwxwwwwxwwwwwxxxwxvhwxwxuvgwwwwwhvwwwxvwwwwxxxwxgwvxxxhwxwxwxxhwwwxwgvvhwgwvvfwvwVfwgwwxgvwwfxwfwwwwgxxgwxxwxwvgvwvvfvvxfwwwwgwwwwwxwwwwwgwwwwfwvxwggwwvwxwgwwwwgwxgwvfwwwWwfwxxwwwwxgwxwwwgxwxxxwwwxxwwwhwhggxxxxwvwwxwwxwwvxwvxxxxwwxwwhhwwxwwgxwxxvvwhxwxhwxxvwxvwwvwwwwwfvwwwwgwgwwggvgxwwwwwxwwwwgwwxwwvhxwxwwwxxwfwxfuvgwwwwwwgwvvwwgwgwghwwgwwxwwxwwgwgwwwxghhxhvhwxhwwwwxxhwwwwxwwgwwhgggxwwwwwvwwwxxvwxwwvwxwxwvwwwwxwxwxwgwwwhxwwxwxxwxwxxwwxxwwvxghwxtfwgwwwgwvwvwwffwfwwwvwvwxwwvvwwwxxwwvvwwwwxwvwfwfwfvwvwwfwvxwwwgxvvvwuvwxwvvwvxwxwwwfwwwVfwwwvwTUwwxwwxwfwwwguwfxwxxwUfwvwvwwwvgwwxvwvwxvwxvxxwxwhvfwvgwwfwxwwwUvwvwwwfwfxwggfwvvvwwwfuwwvwwvwxxfevxwxwwfwgwvwwwwwwXwevvwwwxxfwwxwgxgxvTUvwvvwwguwfvwwvvxxwwwwwwwvxvwvwwwvwvwwwxwfwgxwxxwwwxwxwxxxxwhxwwvvgwwvvwwwfvwvwwxhvwgvwxwwwgwwxwvvwvfwwvwwwwwxwwxxxvfvvwxxuwwxwxwfwwwvwwvwwwwxxxfwwxwwhxxxvgvxwgxxwwvvwwvxwwwgwwgwwwwwwwxxwxvxxxxffwwwwgfwwvxwwwvvvwuwwwvgwxwwwvwfwwwwwwgxxxwwfwhxgvwwwxxwwhwwxvwxwwxwwvgwwwgwwwwwvwwxxwwgfwwwxxwgxxwxwwwwxwwxxxwwwwwwxxwwwgxvwvwwvwvwvvwwwwvvwwwwfvwxvvxgwggwwwwxgvxxvwvvvxwwxwvwxwxwwxwxvwwvvwwwxwgwwwvwvwxhwxwwvwwvvwwwwgvxwvgwwwvwvgwxxvwvwwwwwwgwwwwvfwwwwwwgwxxwwwxwxwwwwgxwwwwwwwxxxhwwwxxwwwwxxwvvwvwvgwwwwwgvVwwfwvwvwgwwwwwwgwwvvwwwwgvwwwwwgvwxwwxwxwvwxwwfwvwwxvwgwvwwwwwhwfgwwgwwwwfhwhwwwwwfvwwwvgwwwwwvwgvwgwwxwgvgwwwwwxfghwwwxvgwxwwwwxwxxwxwxxwwxxwwwvxwwwwvwvxwwxwxwwwvfxgwwwvvxvwwvwvwwwwwwwgvgwwwwxvxwgwxwwxxxwgwvvwwwxhwgwwwwwwwwwvwwvvxwgwwwxwvwfvwwvxwwggwwwwgwwxvvwwhwwxfvxwwxwgwxwwwwxhwgggwgxwxwwwxwgwwwwxwwwwfgwghwxwxvxwwwwwwwxwfwgvvwwwwwwwvfwwgvwwgwwwwwwwwvgwxxwwxhfwwgwwwggwwwwfwwwxvwvwwwwwwwwwfxvgwfxgwwvwfvwgggvvwwggxgfgwxwfwgvxxhwxwwwgxxwwghwhwxwwwwxxwwgwgxwwwwwgwxwwxwgwxwwvwwxxwvwxwwwwxwwwxwvxwwwxwfwwwfwgwxtwwwuwvwvwwwfvgvwwxwwwwUVwwvwvwgwvwwwvvgfvwwwvwvvwwwgvwwgfvwwvvUSwgwwwxggvdvwwwwfwegvUgwevwwwvvwgwvwwwwwxvwwwwvfwwETvwvwvWfwfwgfvvfgvwwwwvvwwvvvwvwvwwxvwvwxgwwgvwfuwvvwwvwwvwxwWwwwhwwwgvwxwwxwhgwwwxguvwwfwwwvffwvdwfVVvwWwuTBuvgfxwgfwwgvwxfgwvwwxgvUfvxgxgwfwvgggwwvvvWxwvfvvgfvwgWwgxwGgWwvwxfwwwvwwxgwvgwwwgwWwwxhxwgwxwxgvwfvwvwvxVuufwxxwfUdvxfwWvwwfxwgwwvwwfwvwwwwwxwgxxwgwgwvvvvwgfvwxwWwgxwxvwwwwhwwvxgxxwwvwwwgwwwwwwxvwwvwwggwwwgwwggfwwwvvwfwgwwwgvvwwxwvxxfgwxwxvgwxgxxgfwgUgwfwwwwwwfvwwgvwxwwwwgxfgxxffwwxwwxwwwwwvwwwwvgxvwvgwwwxwwgwvwwwhwgxvxwxgwwwwwxxwgxwwwwwxwxGgwwxwxwwwwwgvfwxwwxxxvwwwvwvvwxfwxwwgwxxggwvwwwwwgVwwfwwVvwwwxfDvvxvxwwgwwvvwwgwwxwwvwxwwxvwwgwvwwffwuwxvvgwvwwgwwwwxvwfvgxxxvvwwgwwwwwwxwwwvwgwwwwwvwhGwxvwwvggwwxxvwhvwwwwgwvxwwvwwvgvvvxwgwgwwxwxxwwwvgxwwwxwwxhvgwwgxwwwgwgvwgwwwwwWwwwgwxgvxwvxwwwwwvvvxuFeVvvwfvvxfgwgfvwgwwwWgvxgwfugwgfvwwvvgwgwwxfvvvvuUvgfwvvvgvffwwwgvvxwwvvfevwwvwwwwvwwwwwwwwwxwgvvvvgvvfgvvwwwvffwwwwgvvwwvfvWvvwwfwwhvgwvwwwwwwgvgxxwwewweugwwwwwwwwwvuwvxwhxwwxwfvwvwwgwwwgwwwvwwwxwhwxxwfuvffffweVfvgfugvegfwwvwgvvWwhgvvWfvvffggvvwwvxvffvgvxgwfvxvwwwgfwgfuwwfwwwgvfgfuwwvvfgvxeggfwffwwuvxwwgvwWfwhUwVwwxgwfgWveuvwWvfWwxwvvdwgvxwwwwwwxwwwgweVwwgvwwfxvxvwwwgwgvwwwvguwvwvwgwwewwwhwvxwwfwwwfwwwfvwewxfvxgxwwwvwgwxwwuvgtwuwvwgvwwwuffwwxwgwwvwwvwgwwvwwgfwwvvwwxwwxxxxvvvfgfdvfgvvwwVwuwwgvwwhwwwxgwgwvwwwwwwxwwxxwwwwwwwwfxvgvgvwtvwwwgwgwweuwvvwwwwgwwwWwvwvgwhvgwggfvgwvwwwxggxxgwvuwgvxwwwgvhwwvgvwwwggwgwgwwwVwwwwxwxvhWvwwwvwxwxwxxugVgvvwWffVegfwuwwwvwwwwvwwuwgveWwwwwewghhvwwgxwgwwwvvhvwfvvwvwvvvwwfwggwwwwwgxvwwwvwwfvxgghwvxwgwgwfWhwuvxufvvwwwwwwwwwwffgvwvxwxwwwwgwwggwwwwxvwxwwvwwxhwwuvwwvwvwwxvgvwxvvwwwwwwxwwwwvwwxxxwxwxxwvvwwxxdwgvvwwvvvwwefgfwwxvwvwwwwwwwwwvwwwxvwwwwwwwwwvxwwvwsVwwgfvvvwgfwwgwwwwwwgwwwvvwwwwwwgwwwwxvvwwwwuwgevvwwvwffwwwxxueefwwwwvwWwfwwwxxwwwwvxxgwwvfvvwwwueefwXwwwgvxwwwwvwuvwxxwwwgxxwwwwwvwwxhxvfvwwuvvguwwwgcVggwgwvvvvwwwwvgwwgwwwwxxwfwwwgwwwwwwwwgwvwwwwwwgwwwggwwwwgwwwwwwwwwwwwxwwwwwwhxwwwvwwvuwwwwfwwfwxwffwwwwwgwvwWgwwwWvwwwwwvwwgwwxvwwwwwwxwwwwwwwxwwwxxvwwwwxvwwwwwxwwvwxxgxgwvvwvwwvwgggvwwwwxfwtwxwvwwwwvvxwxxvvvvwwwwwwvwuwfwuwwwvugwwvwhuvwfwvvvvvvwhwwwwvvwwwwwxwwwwwvwfwgvwwxwwvvxwwwuwwxwvvhxfxgxwwwwhwwwxxwgxwvvwwvwhwwxxwwwxwxvvxwxwxwvxwwgvxxxvxwxxvwwvuwwfgvwguvwwwwwwwvvwvggwwwwxgwwgwxwhwgxwwwwvwxwwvwwvxxvwwwvggwwfwvvVwwxxwwggwwxwwwwwwxwgwwwwwwvxvxwgxxwwwwhxwvvwvwxxxvgwwxgxxxwwxxwfwwwghvwhwwxwwwwwxxhwwxfhwxwxwvgwwwfwwVuvuwggfwgwwxxvfgwwhwvwvwwvwvwfgwgwvgwvwgvwgvgwvgwwvwwvgwwvxwvvgwwvwwwwwwxwwvgwwxwxvvwgffvggwgwwfxuVgvwgwwwgwvwwwxgvwwwvvfwwhwxwwgxwwxwxwxhwxvvvfwgwvvxvwwvwwhhgwwxvxwvwwwwxvwwvxwwxxxwwxxxuwfwfvxfgfvvvgeVffxwwwfffvwwvgvgwwwwwxwvxwwwgvxwwvxwvwwwwxwvwwxgwwggwxgWuffhwwgvWwgfuwwwwxwvwwwvxwwvxwwxwgxweVgvwfwwffgwwffVuxgwwvvxwxvxwwwwxxvwgwuxfwwwwxgwhxwwwvvwgwgxwvxwwvwgvgxwwwvxwwxwwgwgwxwvxxvwxvxxwwwguxgvvwwgxwvggfwwwwgwxwwgvvxxxgwwxwxwxwgxwwgwwgwxwgufvhvwuwhwfwgwwvxwwwwvwwwwwxwwwvwwxvggxwxxwvwwwxwxwwwxwxgwvwwxvxwwxfgvxgvhxhvhvxwwxwwWxggwwghgvuxgwxvxvwxvwggvwwwgwgvwxwwuvxwhfwxwxwxxwxwxwwwwwwvgggvxxgwwxwgVvwxwvwwgwwhwxwwxxwhghvwxfwxwhwxxwwUwVvvhwxgwwxxwwgwgfgVwhVvgvwgwxvxxwgwhvxwwwuhwxwxwvwwvxwwwxxwwgwxwwgfvwwxxeuxwxxvxwxxvhwwhxggwgwwxwwwvwxvwwwwwgvwgxvvwhwwxxwgwxxwwwgwwWvwwwxgwtvwfgfwwwgxgwwwwwwvvxgxgvvvwwwwwwwxvvxwwwwxgvgvvwwwwvwwfvwxwwwfwvwwwwwxwvxxxwguwwvfvvwgvwwxwwwwwwgvxgTTuvfwWwgwwwwwwxhxvfvwvwfwwwwwxwwwwxwxggwwwwxxxxwxxwxxxfvwfvfvvgfwvvvwwffxwwwwvwwvffuuvvwfvwwvwxwwgwxwwgwwxwxwvffvwwvwgxwwgwwwwwxxwwwwwwvvvxgwwwgwhgxhvxfTTuffvfwwwwwwwwgwwgwxwwfwWwwvvwwwwwxxwwxwwvvvfvvvwwwwwxxxxvwwwwxwxxwwxxxfvwfwgwgvwwvwwwxwvvvwwxvwwwwxwwwgvgvwwwwwgvwxwxwwuwwwwxwwwxxxwvwwwfwvgwwwxgfvvxxwxxxwwgwggxxgxwxffwwvvvxxwwxxwxhwwwxwxxwwwxxgffvvvwwwwwuwwwwwwwwvvxvwwwgvwxvwwxxwwxgwvwwvwvvwvxwxxfvwxxxwwwvwxwwwhwwwwxwgvfgwguwwxwwgwhgwxxgwwghvwwxwwwxxwwxxxwxxxxwwxvwwxxxxuwwfuvwvwwUEwvwwgfwwwwwfwgwvwvgewxgvwwvwwfvxwvwxwwwvvxwwewwwvuwfwvgvgwwvwgwxwwvedvvwvwxfvvwfvwgxvwgwwwwwwFcwgvwwvwwvfwwvwwwwwwwvwwwXgxxwvxwgwxxxvgvvvvvwwvwwwwvwxgwwwwwvwwvgxwhxxxxxwvwxgxwfuwvgfvveEdSfvwggvwvwwwfwvggffufgwvevwfwvwwwwguvwwfggvwwwfvgwwvuwwwVwwvgfgvvxvwwWfwwxgxweggUewwvWwvhfwvgghfwwxxvfeUdvwffuvwwwWwvwwffwvvxgwwvwxxxvgwwvwwwvxgxwwxxvfgvvfewgxhwwwxwxwxwwgwvxvwxwxxwwwxwwxwxfuvwvgfvgvwfwwvVevvvwgwwggwwwgxwwwwwvwxwwwvwgxwvxwwvxwvvffwvvvwewwgwwwvwwgwwwvwwwfvwwwwwgwvxvxwwwwwwwvvvggwwwefvwwgwvwwvgwvvwvwvwxhxwwwwxhwwvxwxwwxwhwwgxxgWghgwvUwgwxxwwwxggwxwwwxwxvwwvxvggwwwwwwwxwfgvwwwwxvfgwfuvgfUwvwxwwwwwwwgewwwwWwfwvwwxwwxxwgwwvvwfwwvxvxwfevxfwvwwvwvxwwuwwxgfgwwwxfwwwxgwwxwwwxwwwwwwWvgwwgfwvvwwxwwxwwuvwwgwfxxxhwwwwxvwwgxwxxwxwxwxwwvwwvwgggfxxxxxvgxWvxxwwwxwwwwwggvwwgwwvwwxuvffwwwWvwwvfwwwwwhwgwvwwgvwwwwvwwwwwwxwvwwwwwwwwvwxwwwxgvvwwVwwwwvwgxwvwwwwwwxwwwwdfwvwgwwgvwxwxvxwwxxwwwwwvwwwvduVgwwxwgwwwwwxxvvvvgwfxwxwwgwwxxwxxwxwwvwduVgwwwwwxxxwwxxxwwwwwwhwxwxhxxwxhxwxhvwwwvgvwvdfwvvwwwWgwwgwwwfwwvvwwwvwwwxwWwwghwwvwwvxxwwwwwwwwgwwwwwwvwVwwxwxwxgwwwxhwwwwxwwwvWwvgwxwxxwxwwxwwvvvvfgfgwwvggvgwwxwwwvwgwvvgwwwgxwvwwxwgwxgxwwwfwwwwgwwvwgwwwvxwwwxwwwgxwwwwwwwxxhxxwgxgwxvggwwwewuwvvgfgwegwwwxwwwvwwwwwwwxwhwwxvwwgwfguwvvwfuwwugwwwwwwwwwvvwwxxwgwwwxxwwwwwwwwwwvwvwvxgwggwxXwxwwwwxwxxwhxhwwhfwxwgvwwvwwxxwwwxxxxxxxxxxhxwwwgxxwhhwwxwvwwuwwwwfvwvgwwvvwxgvwwvwxwvvwxwvxwxwxvwwwwgwxvwhxxhwvvwwgugwwxvwgvwwxxWxxxxxwgxwwxwwxwgwwwgwxxwwxwxwgvwwgwwxxwxwwwwwxwxwxwwgwwxxxxwwwxwwxxwxxxxxgxxgvwwwwxwwwwxxwxwxxwxwxxxwuwwgvwfwwgxwwwwgwxvwwwwwwwwwwwgvxwxvwxwxwwwevwwwwxhtgxxwwxxwwvwwhwwwwwwwxxwwxxwwwwwvwwwgvwvwwwwxgvxwveefgfvwwxwwwvhwwxwwwwwgxxwxwwxxweuffwvwgxwwxwhwxwxxxxwwvwggdgvwfwwwwevvgwwfwvxwggvvvvvvvggxwwwfwwwwwxhvwwwgwxwwwwgvwgxwvxvwfxxwwwgwwwxwxgwxffwwwvwwgvwxgwgwwwxxwxwwfwgwwwgwwxwgxfvxwwwwvxwwxwwwxfwxxxwwwwwxxxxxwwwwwwwvvvwxwwxwwxVwwwwwxgwwxxvvwwvvwwwxvvwxwwxWwvvwwxwwwwxwxwwwwwwgwxwwhwxwwfvwxwwwxgxxxxwwxxwwxxwwxgxwxxwwwwwwxwxxwxxwwwxxwxvvwvwwxwvxwwwwwwwfvwvwwwwwgfwxxxxxxwvxgwxwwhvwwxvvxgwwhxwxxwxxgxxvfwxwwwwxxxwwxwwwxwwwxvhhwwxwwxxxxxwwxxwwxxxwxwwwwxwwxwwwvwwwwvvvfwxvwvwwwvwegwwwwvvwwfwwvwuvfvwwvuvwvwwvvvvvwwwvwwfuwwwvvvwvvvwxwgvwwwwwwvvwvvwvwfvwwfwvvwwvvvgwvwvfvuvwwwXwugwvwgwwgwggVwgwwvwvwwwwwvgxwwvvwwwhwgwwwxwwwhxvxxwwwwwwvfwwvwwvwgwewwwvwvwuwxwvwefvvfwvvwvwwwgwvwwwvxwgxvwwwgwwwvwxwfwvxwwwgwwgvwwwwwwwvvwwwgwwwwwwwwvvwvvwgvwggwuvxgwvwwxfvfxwxgwwwWwwwwwfwwgwwwwwwwxfwwwwwwgfxfwwwwwgggWxwgxvxwwxwwvwwwwwwwvvwgvwwvwvwwwvwwwwwwwwwwwxwxxwwvhwvwwwvwwwwwwwxxxxwwxxwwvwxwwxxvgwwwgwxwvvvhwwgwwwwwxwwxwxxxwwhwxwwxwwwwxwwwwxgxwxwxxwwxwxwgwwwwwwxvwwvwxvwxwvwwvgvwwvxwwvwwxwxwwxvxwwgwwvvxwwwwwwwxxwwxfwwxvwwwwxvxxxxwwwxwwvvwwvxwwwxxwvwgwxwwxwxxxxxwvvwgwxgxwwxxwgxwxwwwwwxxvywvgwwvvwwvvxVvxffwgfwwwggwwffuxugwwvvWvwgvvwwwwgvwwggwgwwwgwgvwxwwwgxvugwwgvwwfvgvvfwwgghwwwxwwwgwffwwxvgvWvwwvgwwgvwxwwwwwvvwggwwgfhwvwwgxvwwwvwwwwwwwwxgxwxxvwwxwwvwxvxwvxwgwhxxfffwggvwvwgfvwvWggfewwffwWwwwfwfgwwvwvvvwgvgfwffgvfgxwwwwwxgxwwvxwgxwwgwwguwgWwgwwWwfffwgvvxfgvwwvuwevWwhWfxvxwxwffgvfgvwxwwwwfwfwgwUwvwwxgvvwvgvxwwwxwxgwgwgvwwwfwxvwwwwwwxxwwwwwfggxggfwwwxwwvwwwwgwwwgvwxwvvhwgvwgwvwwgfvvwvwwwwxwwwvxwwwgfvwgwxwwxgWwvwvvwwwxwwfwgxwxxxvwfgwvxvuuxgwwwgwgwwwwwwxvvwwwxvwwwxwwwwxwwvwwxxxwwvwvwxfwgwwxwwwxwWwwxxxxfxwwwvwxvwxvwvwwwwwwwwxwxxwwxwwuuxwxxwWwwwwwwvgwwwwgwvhwwxwwfVvgwgwwwwwwwvwxwwwfwhgwwwxvwwwgfwwUwwvhwgwwwxwwwwwvwwfhhWwwwwxfvwwxwvwvxwwggfhvwgxgewWvgvvgwwxwxwxfgwwxvggfwwwvwwwxwxwxxwwwggwfhwwxwfwwwxxxwwwwwxxxwvhwxwxwwvwgwwfgvWwxgwwyvwwguwwvvwxvwwwfvwwvwvgvwwvfwwvfvvgvgwvwvwwwwgwgwwvvvvvvwvwwwwvwwwwwwwwwfvwwwwfwwwwwgxwwxvgwwxwvwvvwvvvvvwgvgvwwvwvwwvwvwwgwggvvvwwwwvwwwgwwxwwhwxwwwwvwwvwgwwwvwxwxwxxxvwwwwvgwwgwwwwwxwwxwwhwxwxwxuwvwffvfwwwvwvfwwvvwugvvvwffwwwvwwwfwwwwwwvwgwvwvwgfwwwhwvwvVwwwgvwwwwxwxvwvxwwwwwvwfwwwvwggwwxwgwwxgxwwgxgwhwwvfvvwwwfvvwwgxwwwwvwggvwfwgwfvvwwxwwwwwfwwwwwwfxwwggvwwghwwwvwgxwwwwxwxvggwwvwfvwwgxwxwwwwwwwwwgwwxwgwwwwxvwwvwwvvwwwwvwfwwwwwvwxwgvfvvwxxxwwxxwwvgvvgwwwwwwvxwwwwvwvwvwwgvwfvwxxwvwwwvvgwwwwxvvgvfwwwwwxwvvwwvxwwxwgggwwwgwwgxxgwwhwwwwwwwwxxxwxgwfwvfwggwxvvwvwwgvwwvwwfwwxwgwvvxwwxxxxwwvwgfxwvwwwvvwgwwwwwvwxwvwxwwxwwwxvgwwwwwwwwvwwwgwgvfxxvwxvvwwwwwwgwwgwgwwgvwwxhfwwwwggvwxgggwwwvwxwfggwwvvgwgwvwwwwwwxwwwwwgwxwghwxwwwvwwwwwwwfwwxxwwwwwwwwwvwwvxwgwwvwgxwwwxvwhwwxwwwxwfwxgwhxxwxwwxxugwgvwvwvgvegvfwwfvvwuwguwvgvwwwwvwwfFUvfvwwfwwwgwwfwgvWvfvvvfwwvffvgwgedwxwwwvfvvvuvwgwwvxfevgwvwwvxwwvwwwwfvvvwwwwf6dwvevwvwxwwwwvfvwwwwhgWwwxgvwwwfvwwwxxxwvWvwgvwwvwxwxwfvwwwxgwvgwwwvvwfwxwwwhwxxwfwwwvxwxwxwfvwwvwvvwvxffWfwffffewwgwVgVVvwfwvggvvwgwgdSufwWvgvfgvwWvwwvvwvfwvwwVuffffVwfvgggWffwvgwgwwwWxwwvVvgwgwfwfwVwxwgfvvgvwvwvgxxedugwWvgwwwwwvxwffuuwgxgvgwwxwgfgVgwwxwwwxwvuvghwwwxwvWvwwfwvwwwgwvwwvxxwwgwwwwwwwuwvWexwxvwwxvfwwvvxgwwwvvvgwwwvvwxwgvwwwwwxvwwwvfvgwwwvfwwwwgvvwwwwgwwwwwgwggvwhwvwwwwwvxwwvwwwwwxxwvvgVvxwwwwxwwfvwwwggwwwwwxxhwgwwwwwwwwwwWgwvwvxwwgwxxwgxvggwxuwwwwwxfgwwwwgwwwwxwwxvxwfwvwgwwwhhwxvwwwggwwxvggwwwvgxwwxVfvgwgwggggwfwgfUfvxwwxxhwwwgxvwwwvwwuvwwuwvhgwwxxgvgwgvgvggwwwwwwvwwwwwwVwhvwwvwfvwwwwxVwvwvwwhwegwwxWwfwwxwwxgwwwxxhwwwwxwwwgwxwwwgxxvggxwgwxxwwgwwwwVgxwwwwwxxvxwvwwwwxxwwxvwvwvghsgwwfvwwfewvfvgfvhvggwfgwwwwgeuvggvwvfgVvgggwwwwFvvgxwfvwwffwguwvfgvWewwwwgvvwvgwwwguwvwgwgwwxvwwxwwgwxhwwwwwfwwfvgwVewVvwWvwwgwvfvwwwwxwwwvuwvgwwvwggwugwwgwvxwgwwwvfwvgfvwxwwwwwgwwwvgwxvwwvwvvxxxxwwvgwwwxhwwxwwwwhwwxgvvhvffvVwvfvvgvggvgvwgVdvVgWwvfgvwgvfesuvvgwwefwgffgvffhegugfwgvwwwggvwwvfvvgwgvvghvxxwvwwwwwwwwwggwxgvgwvvvggwfwxwwwghghuwvggwwwvwVuvxwwwwfvwgWfguxwwwwvwwfutwwwwuwwWxwwvwgvgxwvgxwwxwwwvwvvwwwwvwwwgwgwhwwxXguwwwghwvvfwwxwwxwhfwfxvwhxwfvvhvwvwxwwwwugwwvwxffwxhwwvhfgxgvxxxgvvwwwwvwwwwwxgwwwGvhwwvxxWuwwwfgwgvxwwvwgvwxwwvgwwxwvwwxwwwwxwgwwgvwvwwWvvwVvvxvxwwFwVxwgwwwwvwvgwxwxwwgvgfhgxwhxwgwhggfwxwggwwxwwxxwwxwwwxwxxxwvwwwxxxxwgxghwwxfwhwwvhwvgvwwvxwgf6tuWhWvwffgvvvwggwvhwxwgwvvhwwxghwwwwwvwwgvwxghwwhvwwvvwwwwwgggxxxgvxwwxgvwwhwfwwxghwwwxwxxfvxxfxxwwwxwggwhvwwwwwwhwwxxggWVxwxwwxxXxwwxwwxwwwxwwxgxxxggwwwxwwwxxxxwwwvgxxgwwxxuggwwvwwwwgfwwwwwwwfwhwfwfvwvgwvgwxvwwwvvwxwwxwwwwwvwggwgwwwwwwwxgwwvwxgwwwxwwwhxxwvvwvgfwwwxvwwgwfwwwwxwxwwgwvwwwwwwxgxxwwxwfgwwwxwwxwwwwxwwvxwwwwxxxxxxwxxxgvwvwwvgfwwgwwvwwwgwwwwwwwxxvfwwuvwvwugxwguwwwwwwuxwxxxxwwwwfvvwwvwxxxvvwwwxxwxwvwvxwwgwgwwxwxvwwhwvwwwxwvgfwwfffwwwwwvwwwgwwxxwwwwufwwwwwhwwwwwwvwwwxvvwwwwvwwwwvwwxxxxwxwwxwvwxwwxwxwxxxwwxxwwvvwvwfvwgfwwwvxgwvvwwwxxwwxwxwxwwwxwwwfvwwwwvwxxwwhxxwwgwwwwwwxxxxwwwxwxwwxwwgwwwwuwgfxxwwvxwwxxhxvwwwwxwwxxwxwxxwwwwwwxxxwfuxwwvvxwwxwwwwwxxxxwwwwxwxwwwwwxxxwxgvxwvxwwfuvwwxuxwwguxwwwwwwwxxxxwwwxwwxghwwgxfwxfvvwwwwgxwxwxwvwxwggwxxxxwwvvvwwwwwxwxwvvxgfwxwwvwwhgwxxwwwwwxxxwwxxhxhxhxwgxwwwvvwwxwwwwxwxxwxxxwwxgvgxvxvwxwxwwwwxxevvfufwvvvvfevufwvvwvfwwvvwuwvvwvwwgwgvxwwwwwwwvfuwwwvwvwfwwwvwwwwvwwwwxwwwwwgwwwvwwwwwwwwwwwvwvfuwwwvvwwwwvfwwwwwfwwwwvwwwwwwwvwxxwvvxwwwwxwxwwwwvwwwwwwwxxwwwwwwwwwwwwxwwxwwxwwwwxwffuwwfvwvevwffwwvvwvvvwwvwvvgwgvugfwggfuwwVvwwwwvwvwwwvhwwvvwwwfvwwvggwwgvwwwgxxggwwwwwwwwwgwgwvwvwWhvwgwvhwvvuvwvvvwxwwffvwwhwvfvvwwwgvfwvvwgwxhxwxwvwvwWwwwwwwwwwvwwwxwwwwwwwvwwwxghvhxvxwwwgvgxxwvwwwxwwwwwwwwwuwvfuvvgvvwvwwwwwwwwwuwvwwvwvxxvxuwwwvwwgvwfgwwwuwwwwwwwwwwwwwwwvwwwwuxwwxvwwxwwwvfvvwwggfvwvvvwfvwwwxwwxxwwxxwhxvwwvvvwvwwwxwwxwwxxxxwxxxxwxwvwwgvwvwvxhwwwwxxwfvwwwwvwwwwwwxxwwwwxvgvffvvfwvwwWwfwwvwgvvwgwvwvwvwxwxwwwgwxwwgwxxvvxfwwvwwwwvwwwwgwwfwvvwfxWfwwwwhxwwggwwvvVggwggwxeehWWVwvgwvhwvxwwwwwWwwwwwwwwvwvwxwwwwwxwwwwwvwwxgvwgwwxwxwwxwvxwwxwgxwxvwwxwxwwwxwggwuWVwgvwggvuxwgvvwfvwvwwwgvwwuwVwvwvWwvwwwwwWfwvvwwwvwwgvfvvfUwvffvvvugvgfwxwvwwwwwwffvvewhvwvwwfvvxvwwwwxgfwuvVevvwvwgwvwgWfwfevwwwxgwhvggvgwwwvwwwwvhgvwwwWvvxxwwhvfgwffvfvvwwwwgvwwwhvwvwwxwwvvgwwxxwwxxhxxxxwwgvfgvVefvfVvwwvVfFVvgwwfwuffwwweuVWwvvvWwxvwwvwfgggwvvwwvwwwwwwwwvvguvgwhtwwwwxwwfgvfxgwvVvuvvgwuwwvwfWvwuxgwwwwxfwgwwVFvggfGvuvvwwwgfVVgwvUxwhwwufewwwwvwgwwvwwwxggvwwvwvxVudggwgTwgwxwwuWwvexxhvxwwwwwwwwwgwwwwwvxgwwwwgwvxwwwwwvfvwwugguwfwwwffWwgfwwvwxwugfwwxwwwwgvwwxwxfvgxwvgfwfvuwfwuwxgvfvvxfwwvwwwwwWvuwxxwwxvwwwwgxgwhwwwwwvvgwggvwuvfwwvgWggvwxwXvwvwxxgWevwgvwwwwwwxxwgwgXxgWgwggxwvvwwwvwvwwvgvwwwwxhwxgwwxxwwvwvgwgwvwwwxwvggwhggwvwvvgGvgwfGgvxgvVWvxvfvwvgwvwwvhwxwwgxxwWwwwwwgvugwwwuxwwwwwwgvvvxgfxwwwgwwvxwwgxwwwxvwgvvwgxwwwwwvwwxfwvxwwvgwwwwwwwvvgggxhhgwxxwwvwwwwwxghxwxwxvwvgwwwvwwwvvwxgxwxxwwxwwwvxwfwwwwwvxwwwxwwwfwwggvvwwwwwvfwwxxwwwgwwwwgwvwvUUgwwwwwwvwvwwwgxwxwvwvvwwvgvvwwwwwwwwfwvwvwveuvwvvwwddwwwxxwwxwvwwgvwwwwwwwfwwwwggwwwwwwEdgvwvwgvwvwwwwwxwgvwxwxxwxwgwwwwwwwxfvwgwgxxgwwwvwwxwvwxxwwxxxvvvwwfUvwwwwvVwuvfwvgggvwvvgwwvvwgvSSvewvwwvgwweuvwwvwwwxfwgwwwwwwfffwwwgwggvfwvxXgxwxgvvwwwfvgvwxgwgwwfvwgxgxwxgxwwwvvUeufwwwwwwwwvvfxhgwVuuwwvvgwgwwxxwwwwwwwxxwwgvwwgvwwxxwxwwwgwxxgvxwxwwwwxwwxgvwxwwvwvwwwgvwwvvwwwgwwwwwxhwwwvwwvgvxwwxwwwwwxwxgwwwwgwwwwwvfwvwwwxwxxwvwwwxwvvwwwwwwwwwwwwxxvwwvwwgwwxwwhwxXWvwvvwwwwwwwxwwwxgxwwxwxxwwwwwxxwgwwwwhxwwwxwxfwwwvgwwxxwxwwwxwvwwwwgvgvuUvuwwvwwgwwwwhwxwwfvvxvwwwwwgwvwwwwfwvvwvxxvvwwwwwwwwwwwwwwxwwhWxvwwxvvwvwwwvwwwwvwvwxxfgwwvwwvwxxxwxwwwwwwwxxhhvvwwwfxgwxhwxwwwwgwwvwxgxwwwwhhwxwwxwwxwwgwwvhvwxwxvffxvxuvwwwvwwwvwvwvwwwvvwgwggwvwwvwwwwgwwgffwgwwxwwwwwvwdfwwvwwvwwwwwvfvvwwwvwwwgwxwwwvwxfgwvwwwgwfvfwgwxvwwfwwwxxedfWwwwxwxwwwxwxutfWxwvhwwxxxwxwxwxxxwvwvgvwfwvwwwwwWvvwwwvgwwdfvwwwfvvwwwwwwwgwvwwwwxwwwxxgwwwwvwxfxwxvgwwwwgxwwwhfxxwvwxwwwwfwwfwgxwwxvvwVwfwwwwwwwwvwxwgwwwgwxwxwxwxwxwvwhwxwuxwxxwwxwxwwxwwwgxwxwwwwxwwvwvhwwxvwgfvwwwwwxwvwvwgxgvvwvwwvxvvwwwwwwwwwvXxxwwgwwwxwWhwwwwwwxxxxwwfwxxwxxwxwwwwxxwxwwwhwxwxwxwwxwgwgwwxwwwwwwvvwvvwxwwfwxwxwwvxwwxwggwwxwwwxxwwxwvwhwvwwwxwwwxwvvwxxwgxwwwwgvhxwggxwwwxwxxxwxwwwwxwfxwxwxwxxwwwwxwxxwwwwxwxwxwxtwwwvdvxwwwvgwvuvwwgvwggWuvVwvxfvvvwwgvwwWvfugggvwwxwwfwvwfwuwgewvvvggwwwwWwwhwvfwwgvwwwwxvwxfvwwgxuwwwxwwhwvvwwWTwwWfgvvwvgwvwwwgwwvWwwWwfvwfvxggwwxwwgvvggWvwwxwwgwvwfwwxwwxwvfuwhgwfwwwgwfwvgxwwgwwwwwxwvwwwwxwwuvgwgvuvgvwfewgwVuvetfgvwwwggwTwfgwgvvxwwwgwvgvgfwggvgwvwfwfwwwwfwwwvwvxwwuwvwwwwvWwwwfgxfwgxgwfvwwxxwvwvwgwwgwuxgwgwvwgwgvgvwgwfwwxwwguuvgwFwvWvwwwwwwwwxwgwxxwwwwxwwhgwvwwwxhwxwwwvgxwwgwuwwvwwfxvvhwgwhwxwxwwvwwfwvwxggxwwgwwvwhwhwuxwfvgvgVwwvgwwwxggwwwxvxwgwgwxwxwwwwxwvvvgvxhwwvvwwwgxxxxggWxvwwwvxhgwwwwgwgvwxwwvwgwggvhWfxwgwwvvxhwwwWxghUhfwwwwgwwxwwwwwwwxgwWhVwggxwwvvwwxwxxgxwxhwxxxxwfwwgwwxhwwvxxwvwxxxxwxwvwwwwwgFuuhwwwwgwuxggfgxxwwwwwgxgwhvwwwxwxgvwggxxwxwwxwwwgvwwwwwwwxwxxggxxwxwwwwxxwwxgwwwxwwfgwwwxxgwvgwwwgxxwxwwwxwfxhXFwxwhwwvwwwwwwxxwwwxxwxwwwgwxwxxxxwwwwxwwwxgwgwwwxwwgwwwwwxwxuvwwwwwwwwxugvvwwvwvwvgwwwwvvggvwxwwwhuxwgwwvhxxwvvgfvwxwfwwxwwxwwxwwgvgvwwgwxxwgwwwwwxwwwwuggwwxgwwwwwwwwwwgwwwwxffvggwfwwwwwxwvwwxvwxwwvwwgfwwwwwvwwwxwwwvwgvgwwwwxwwwxwwxvwvvgwwvwxwwwwWfwwwwfvvxxugvvwwvwhwfwgfgwvwgxgwhwgwgwwwwevgxwwgwwwxwwwwwfuugwhguwxwxwwwgwxwxwwvwvgfwvwvxwgxwwwvWvvXwxwvwgwvgfxxwwwwwwvwwvxwwxvvgxwwvxxxxvwgxfwwwxewxwhuxvwxxwwxwwvxwguxwwxwvwwwxxwwvwwwxxwwxwwxxwwwwvvxwwxxwwwwwwxxwgvwwxwwxwxwwxwxxwwwxwwgwugwwxwxwvwxxwxgxwxhgvvgwxwwgxwgwwwxwxwxwwwwvwvwwxxwxxxxxwhwxxwwgwwwwxxxxhwvxvwvwwxxvxwwwvwwwwwwxxxvgvwvxwwwwwwxvvwwwxxfefwwxvwwwwwwxwwwxwwxwvxwwgwwwxgwxwwvwwwxxwxwwwwvwhwxWvxxwWxwwwwwgfxxxwxxxwwwxvvwwxvwxgxxwwwwwxwhwwhwgwxwwwvvwvtwwugWwwxffvvgfwvgwwvevwwvfVugufwwfwweuvgwwwuvvfTwwgVwwvvwvUfwwwvvxwwgvfvevwwvvvgwxvvuwwvgwwwwwwwwuvvguwwvfvfuugwWwwgwvwwgvwWevVwwvwvxhfvwwwfwvwfxwxwfwfwgvwwwgwwwwwwwgxwxwxvgvwwevwghvvwxwwwwwwfxwwwvvxwfgwvgffvvwwUVwwvggvvevfvuvgvveuffdtvwgwweVuwgwgfuwvvfwVfvxwvwwfwxwwexwwwvxwwwwwwxxwvwwwxwwvxwehhhVvvvggwgvwwwvxfvwvffwuffVvwxehgvvfgwwtvwwxxxwgVuvwwxfwwWwxvvwxvwwwfwwwvwwxwwwwvwwwwwwevwvwxxwvwwwvwwwfwxgwtxxvhwwwwgwxxwwvwtwvvexgvuwwevvwwvxwvwvxwvwwwwuxwvwwxxwxwwwvfvwwuwxVuxwewwxwwwwwwwvwwwgfwwwwwvwwwvwwuvuxVvehvgwxwvggwwgwwxwxxwggwuwwxwvvxwvghgfwwxvxvwwwggfxwgwvwxxwwxxxwwwwxwvwhhvgwgvwvxugwwwwvuxwEdgfvwxwwfvxgevwwxwwwwxwwvwvxwwwgwggvwwwgwgvxwgwvggwxwwwgwxwfxwwwxwwxvxfwgwxwwwwwwuxvwwxvvwxvwwxwwwxgwwxwwwxwxwxwxwvwgWVhxvvvwwwwwwwwwwwxvwwwxwwwwwwwxwwxwvgwwvxwwxWwxgtfwvfugwfvwvfuvuUvvvgvwvvgfufVwgvxvgfwwwwfvvffvwVvfggvwwvwwxwfguwvfwwfwvwuwgvwvfwgfgvwggwwvvgefwwwvwxvvvwvvwwwwgwwwvggvwgvvvvvwvwfwwGUwwwfwguvwfWwgewfwfgwfvwwwggvwwwwwXvwggxgwwvgvuvfwgwvwwwfwwvwwvWxxwgwwwwwxvwvfgwvvwvwXgwwgwgxwffvwvVfvwfVfwvVfVgfUtffffvwwgvvvWfffvwgwwwvvwwffuwgWvgUvgwfwvgewwwxwvgwwwggwvgfvwghvvgwuwggugwwgxgwVgxwwhwwvhgffwWhfgwwgxvwfwVvffuwfwvwwgvggvggvvfGwgfwwfevvwwwwvhgwwuxggvwwwwwwwgxwwwwhwwwxwwwgwwwwguwgvwhhvxwwwwhwwxwwwgwvhwwwwvwvxghuXvgvwgwvwwgwfgVuwvfwwvgvgvfggwvwvwwwewwgwvfwvwxguvwwwvgwwgvwwxwwvvfvWvwwvwfwwwuwwgwwwwvvwgvvwwgwwvwwwwxwwwwxVvvwwwwvfgvwwuwwgwvwvggwfwwvgwwwgwfWfWvfwwwXgvhwfwwwfgxXXfwwfxhgwwvwwwvwwxwwxwwwxggvwwwxxxwvvxwwxhxwxwwxwWfwvvxwffwgwWwfggwvwwxwwgwwwwgfgwwWuwwwWFuugwxwhwhvwgxxvwwwgwwfwwwvwwvxwwwwvwwwwwwxwwvwvxuwxxXvwhvxwxwvwwxgwwwwwwwgwwgwwwwwwxwgwxvwwgxvgwwxwwxwvwwwgxhGUwwvxxwwxwwxhwvwvvwxxwwwhwwwwxxgwwxwxxwwxwxwwwwgwwhwxwxwwxvgfxwwhwgwwwgxxuwwxwvwwwwwwwfvwxwwxwwwfwwvwwwgwwwwvggwwwvvvvwwwvwxwwwwxwwfgwvwwwxwxxxevvgeffvwwwvvfgvvwwwvgvwwwwxvvfwwwwwwwvxxxwxwxwwxwvxvwxwwxxxfvvwvwffvUgvwwvffwwwwwwwxwvwffwwwwwxxwwwwgwgfwwwUwvwwwfwfwwxwwwxwVffwwvwvxwwwwwwwwwxwxxfxeUfufuvwfvwfwfwwwvwxwvwwwxwwvvwwwvwxxwwxffgwwfwwvwvwvwwwxwwwwwvwvwwwwxvvvvfwvfwvuffwxwvvwwxvefwwwwvwxvwxwwxxwwwxwwwxfgugvwvwwwwxwwgvwgxxwxxwwwwxwxxxxwwfvwwvwxxxwxxwwxxxwwwwxwwwxxvvfwwwxwxxvwvwwwgwwwwwxwwwwwwwwwxwxwUfvgwvwvwwwwwxxwwwwxwxxwwwwxwxgvvvwwwvxxxwwvvwvvwxxwxwwxwwwxwxxxwgvvwwxxwwwfxwwwwwwwxwvefvvvfvvggvwwvvwwwvwwgvggwxxwwwwvwwxvwwwwhwwwwwwwvvvgffvwgwwwwwgvwwwxvvvfwwwgwwxxxxvvwvvwwvvwvvwwvvwwgwvvwwwwvwwvwvvwgvwwgwvwwvvvvvggvvxwwwwwwwxwwxxwwxwxhhwxxxwwffvwfgvwfwwgfggvggwgvgwvvwvvvxwwwxwwwwxwwwgwvVvuxwvwwxvwxgfwgwwwvgggvwvwgwvwwgwwwvwgghwgwwvwwxwxggvghgwwxwxwvvgvwvvwffwwwwwweuvwwwwgwgvwwwxwwwwwwwwwwwwgxwwwwgwwwwvwvwvwwwwwwwxwwgwwhwwgwvxwvwxxwhwfwxhwwxxxvvvvfwfvvwvvwfwwwvvwxwwvvvgvvxwxgvwwwwVuwgwvwwwhwwvvwxwxxwwwwxwgwhvwxxwhgwxwvgvwwwvvvvwvwfxxwxwwwwhwwvvvwwxwxfwwxwxewwwwwwwgwwwxxwgwwwwwwwwgxwwgwwxwvwwwwwwvwxwxgvwwwwgwwwwwwwwwwxxwwwwwwvwwxwwwxgwwwwgxgvwwwwxgwgwwwgwggwwgggxwxxxxxwwggxwwxfxwwwxgwxfxgwvwwwwvwxxwwwfwwvwvwwxxwwwwwxwxwwvwwwwwxwwvgwwwwvwxxvvwwwwwgwxwwwxwxwwvxwuwwwwwuwwwuvwwfxwwwvwwxvvwwwwvwwwwwwwxwwgwwuvwvgvvwewwwxwWwvxvwwwwwwwwgwxwxwxxwwwvwwgfewwgvVvwvwvxxwwVwvwwwwxhvwwwwwwwvgxxxwwwwwvwwwfvwfgwgwwwvwxwwwwxxxxwwxxvvwwhvdvwwvewwgevwwwvveffwfwfwwwwwwwwwwwgwwwwvxwxwwxxwgwwwwgwweevwfvfwwwwwgwwvvxwwwwxwwwxwwwwxvxxxxwwxxVegvwwgwVvwvuwwwvuWgwvWegwwuvgwvxwxxwwwwwwwwwvWvvwxvtwfwwxwgxwwvvxxvgwwwwwxxxwxxxwxwwwwgwxwwwwwxwfwwvwwwwgvvxwhwwwxxwwxwwxhgvvfwwwuvgwvxwwxxwhwwhhwwxvxhwxwwxxxhwwwwwvwwwwwwwwwhVwwvwwxwwwwwxxgwxhxwxwwwwwwwvwwwwwwgwxxxwwwwvxwxhwxxxxxxxxxwxwxfgwwwwwwwwgwvxegvwxwguwwwvwwhgwxwwxxfxwwwwwgxwhxxwegvwgvguwwwxhgxwwgXhwwhhwwwwvxvxwwWxwwxxxhggwwwxwwwxxxwwvxxwxwxwgxxhxxxwwwwxxxwxgwwxwwvhwgwwwxxxwwwxvxxwwwwwxxxxxwwxuwvwwvwwwvwvxvwwwgxwwwwuhwxfwxfwwxwwwwwwvxwwgxvwwwvfvwwggwwvwwwwwwwwwWwgvvvwfwwwwwwwxxwwxwwwgwwvvvfwwxwgwwwvxwvwgwuxuvwwwwwfxxwwxwvwwvwwwwwwwwwwxvxwxgvvwWxxwwxwxwxxwvvwfVWvvwTvwwfvwWFvwxwgvwvwwvfwvuvvwwgwxgfwwxvwwwwwwwwwwvwgvUwvfGvvwvwvUwvxwwgwtfwggtwwxwhwwvwxxvxwxwgfvvvwwgfvgwwxvvwvfgxwwwxgwwwguvwwvwwwwwwxwwwgvwggxufwwguwwwwwxwvwhvxwwwwwwggvwwwwvwwwwWxwxwwwwgvwwwwvvwwwwwwxxwwxwwwvxwwxxvvvgwwvwwxwwgwwwxwxgwggwwxxhwxwvxvwwxvwwwvxxvgxwwfvwwwwxxxwwwwwwwwwgwwxwwwxwxxwwwxxxxwwgwwgwxgxxwwgwwwgwgewvwgwwwwwwxxwvwwwwwxwwvwwwgxwhwwxwwxwwwxwwvVwwwvwwwhxwwxwxhwwwwwwwvwwwwxwwgwwgwwwwwwwwwvwwvgvvxwxwxxwwwwwvwgwwxvxwwwwxwwwhxwwvxxxgwxwwwxwxwxxwwxwwgggxxwxwvwwwwwwwxwwxvwwwxxgwwuwwwwwwvvvvwwwxwwwwwwwwvvxwxwwwwwgwwwwwwwgwwwvwwvvwwxxxvwwxxwxwwgwwwgxwxugwwwfvvvwgwwxvwxwwxxwwxwwwwwxfgwwghxwxwhxxwxwuwwwwwugwwfgwvfvvvgwwwgwwwxwwwvgwxwwwwgwwwwwxwwwgwwfvwgvgwwxwwevwgwwwxwwwwwhvwhxwwxwwwvvwwvwvvwhxwgwwwevwuxwvwwxxwxxwgvgwvvwwvgwxwxwvwwuxwwxwwwxxwxwxwxwwvwwwwgwwvwwwwwwxwwwxwxwxwxwwxwxvgwxwwxxwwgxwxxwxxhwxwxxvwwwwwwwxwwgxxxxxwwxwwxwwwwxxxxwxxxxxwgxxxwwxxxxwwvwwxwwxwghvwxwwxwwwxwwgxxwxwwwwwhwxwwwxwxhxxwhxwxxwxwwxxxxwwwhhwwvvvxwwwxwwxwgvxwxxhwwxwwwhhwwxxwwxwwxwwwwxgwwxwwxwxxxxwxwvwuWwvwwwwwuwwvvvwwvvwwffwvwvwwvuwwwgwvgvffgvvwfwwvxxwgvwvwuuwfvwwwwwWffggwwwvwwxvgwwvxvvfgwwwxgvwwxwuvwwfwvvwwgwwvffgvwwfgvwwwwvwvvvxxvwwxvefwWwwvuwwwwfgwwfgwwvwvxwgVwvxvxWwwxvxwgvwwwwvvwwwgwwwhvgwggwgwvgfwvwwwevwvwwwfggffggvfVvggugvxwfwwfewvwwwguvgwgwwwewwwgwwfwvfgWWwuxwhvgvgfwfwewwwvxuwwvgwvvfwfxxfwggwwwwufwfwfwgfwwwvfxfUvggfwvwffwwfwwvewwxwgwwvwxwgvvwgwgwwwwvuwhewwwwwwwgwvgfvgxgxUfwxgfgwvwxwwgxwxwwwwgvxxwwwwwwgfwwfgwwvwvwwwVfegvwfwvxwwwWwxvwwwxvxxwfewgwvwgwuwvgvvgwwwWwwxxwwvvwggvuxwxxwvxwhvwgwxxwvgvwvwwxwwwgwwvwxxwwxwxgwvwxhgvxwgvwwwwxwwxwuvwgwxxwwxwwwwwxgxwxwxgwxxgvxwWxwgxxwxxwffvwwwwwvxwxffwfvgwwwwwwwVwwgwwwxfggwwwwwgwxwwfwgwwwvwxwffwVwWxwwwhwwwwwvvhwwhwwwwvxwfxXgwwgxwwuvwxfvwwghxwwwwwufgwwwgwgwwwwvwxwwwwvxwwwxghgwxxuwwwwwwwwwwvwgxgxwwwwwwwhxvgwwfvxxfwxwfwvwwxwewvfvwvvvwvwwwwwfwwwwvvgwwwxwwwwwvwwxwwwwwwvgvwxwwfvvhwwgwwvwxwwhfwxwwwwxwxxfwgwwvvwgfwwfgwwgwwvuwxwwwvvwgxwwwwwwxgwhwvwwwwwgwvwxwwwwwwgvwwwwxxxxwwwwvxwxvwvwWVevwvwvfWfuvvxwwuvvwvxgUvvwwwwvwwwxvvgvwwxwwwwwwwuVfvuuwwwvwwuVwvwguvwxwgWvuwwxwxxxwxwxwwfvvvfwvevwvwfwwwvvwvwfgxwvvwwvfvvwwhwwwxwxwwwghwvvxwxxvfwwwvwwwwwvwvvwwwxwwwwvgvwwwwwxwxwxhwwwwwxwxxhxgvwwvwwwwvwwwvwwwvxwwwwwwwxvwvxvgwwwwwwwwvwwwxwwxwwwwxwwxwwxwvwwwgwwxwwwwwwwwxwwwwwwvwwxwxwvwxwxwxwwwxvwvwwhxxvwwxxxxxxhxxxwxgvfwfvwvwwfwwwxwwwwwxxwwwwwwxwwwxwwxwvfwvwvxvwwxwwvwxxwwhwwwgxgwxxxxvwxwxgwxxwwwgvwwhwwwwwwwxwvxxxxwxxxwwwwwwwwwxxxxxvhhwwwwwxxhwwxwwgxwxxtwwwwwvvfwwwvvvwwwwwwxwwwfwxwwvwwwvvwwwwwvwwwwvwvvwwwwgwxwwxxFwvghxvxxewwgfgVuwwwwffwwwwwgwwwgvvwwguwwwwwxwvvwwwxwxxwxxfggwvwwwwxwwvwwwxvxxvvvxvwwwuwwwegwgxwwwfwwwwvwgwwvxwuwfwvwwwwwwwxwwwwwwwwxwvwwvvvgwwwwvvxxvwwxwxvwwwwxwftvwwfgwwxffwwwwwvvwwwxxvdfgvwwhxvwxwxxxwwgwwwwwwhxvxwvugxuwwwwwwwwxxwexxhxwwwwwwwwwwfwxggxhwwwxxwwwwwxxwxxwwwvwfwwwdfwfwwxwxgxxwwxxxxxwwwwfvxwxwwwvhwwwwxwwvvxxwwxxgvvwwxxwwwwvxwxvwwwwwwxxvwxxwwhwwwvwwvxwfwwvwwwwwwwwwgwxvwvwxgwxwwwwwxwvgvwwwwwwwxvwwgwxhwxwwwxwwxxxxhwwwwwwxxwxxxwvwxwvwwwwwvxwxxxwxxxxvwwwxwwxwwvwwxxwxwxwxwwxefffwgwfvwwvvwvvwgwvwwvegwwfvvfvwwvwvwwwvwxvgvwwvwwwwwfwvffewgufwufvwwgvgvgwvwvvwwvwgvvwwfgvwfwwvvwwffvghwgwxwwvvgvwxwffuuvFewwvfwVfuwwwvwwwvwwwwvguwwwwwfgwhwwwvwwwxwwwvgfwfuuwvvvwxwvgfwhwwWxwwgwwgewfvgwgwwvwwxwwwvhwwxwwxhwwwwUwgggfwfVvwfffvVefwwggvUddgwwwwvVvwwwwvwvwgwwggVfvwvxWgevwwgxwwwvgvgfwwvvwfvwgffvvXewggwvgWwvgwvxwwwWwwxgwxvhgwwwxxfwwhvxwwwvVvwfvwwUddwwfwVUefgwgfwfwWwvvfvfvwvxwwwvvwxvfvghxwxxwwvwgvvvwwfwgwxvwwvfwgfwvwghWwgwgwwwhwwxwwgwfgvwwvhvxxxwwxwwxvvwwfgfuwgwvfgwwwgwfvvvvvxwwgwvwvxVvwxxwxxxwwwwgwwwvwvwewgvfvfvfwwwvwwxwwhwwvvgvvwvwgwwgxwhgvwgxvwwuwvwgwvwwwwwVvwwwxwvgwwwwgwwgvwwxwwwxwwgwgxwgwwwWwxwefwvwvwgwwxwwwxwwwwgwwxfxwwxwggwwwWvwwhggwwwgwwwwwfwgwgggfffvxwwVvuwwwwwfvwwwggvwfvwwvxvvwgxwwgwxhwwgwwxwwxxvvwvwgwwwvwwgwwwgwwwxggwwwgwhwxwxwxXvxfwWwgvwxgwxwwwxvwwxgvvwxxwwwfwVVwwxgwwwwwwgewxwxvwwwvxvxgwgfwwxwwxwwwwwwwgwxggwwwwxwwwwwwxwvwhwwwVxwwxwxwxwxwxegxwvwwwwwwwwwwwwwwxxwxwvxwxwwwwwwwwwxwwwwwvvwwwVvuxwwxwwwxwxwwwvwxxwxwxwwwwfuvwwwgwwvwwwvwxxvgvfvgwwwwwxxxxwxxwwwwwwwxwxwwxwwxvwwwxxxwwvwwewgwwvwvgvxvwwwgwwwwgxgvwvgwvwwwwwxvwxxxwwwvffwwwxwwwwvgxwvwwvwwvwwxwxxvfuwfvwwuufgvxwwxxwxwwwwwwfgwgxhxwwxxwxwwxxxvwgvvwgxvwwwxwxwhuwvvxwwxxvwwwwwwwwwwxwwgxxwxxwwwwwwxxweuvwwwxwxxxwwwwxxxxxxwxxwwgwvfwwwwgwvwxwxwwwxwxwxwwwwwwwxxwxwxxxxwwxwvwwvwwvwvvwwwwwwxwxwvxxxxxwxwxvxxxwwxvwwvwwwwxvwxwwxhxxxxvwwwwxwwwhxxxxxxxxxwvxwwxxxwxwxwhxxxxxxwxwxxwxwwwwwwxxxwxxwwwuvwwwwwvvvwuwwwvwwvvvwwxwwwwwwgwwvvwvwvvwwvwxwwwwwgvwwwxwvvwwgwwxwwhxwwxwxwwvvwwwwwvvwwwwwwwwwwwwwxvhxvxwwwvwwwwwxwxwxwwwwwwxwxxgwwvvwvgvewuwfvxwwvwwwwwvwwwvwwwwwwwvwwvwwwxwwwwxvwvwwwwwvwwwwvwwxwwwxxwwwhwvwxvwxxwxxwxxgvwufwvwwxwvwwxwwwwvwxxwwvxvwxwwxvwwwwwwvxwwxwgwwuxwwvxwwvwvwvwwwgwuvwwwxwwwwwwxwwvuuwwwwwwwxxxwwhwwwxxxwwugwwvxwxvvxxxwxxxwxxwwxwxxwvxwxxvwxxxxhxwxwvvwwwwvwxwwwwxxwwxwwwwwwwxxwwxxxwxwxvxxxwxxwxxxugxwxxwxxwxwxwwxwwxxwxxwwxxwvwwxxxwwxxwxxxegwwvwwwfwxfvwwwwwwwwwgwgwffwgvvgfwwxwwfgvwgwwwwxwggguvgvvwwwwxwwwvhwwwgvwvvwwxwxwvvwgwxhxgwwvvvvvwfuwwfvwwvxvwwwwxwwwwwwvwxxwwwwwxxgwwwvggvuwwwvwwhwvxwwwvxxxxxwxwwwwwwwxhxwhxxxxxvwgwwvwwGfvvtfwvgEvwwwwxwegwwvvvFVvvefwvwwxxwggvxvggwwwxwwwgvguvwwvFgvgtwwWWvvxxwxvgxxvvFwvwuwgwwwwxwwhxxxwwwxxwVfvwdvwwgvvgwwfffwwffvvwxwwwwvwwwuwwwwuwwwxwwwwwwwwwvWwwgtwgwvxvwxwvvghxgvgwwxwxwwxwwwwgwxxxwxwxxwwxfvxvfwwvwwvgwwwwwfwvvwfwvxwwwxgxwvgwfvwuwwwvwxwwwwvwxwwxxwxgxxwxwxhxhxxwwvwwvwwvwwxwxxuwwxxwwwvwwvxwxwxggxgxgwxwwwwwwvvwwvwwgwwvxhxwwwhxxwxxwxvxxwxhhwxxxxxWewwuvvwwwvfgvwwvgwwwxwvwwxxwwwxxwwxwwwwgWgwwuwwwvvwwvvhwxhvwwwxvxxwwwxxwwwxWwwwwxxwwwwvwxuwxwwxwxwxuwwwwwwwwwwxxxwxwwxwxxgwxwwxwwwwwwxwuxwwxwxxxgwwwxwxwxwwwxxxwwxxwxxwwvvwwxxwwwxwxvgwgwvvwfvvvvwwxwwwvwwwwxwwwwwvgwvwxwwwvwxwwxxwvwwvwvwwwxxwwxwvwwxwxxvvwwwvwwxvwwxwwwwwwwwwwwwwwxwxxwxwvvwffvxgwvwxwwwwvxvxwvgwwvfwwvvwwwwwxxwwwvgwwvwwxwwwvxwwwxxwvwwfwvgxxwwwxxwvfwvvvwwwwgwfwxvwwvvvwwvwvxwwxwwxwwwxxgwxwvxvwwvvxxwwwxwvhhwvxvwgwwwxwggwvwwvxxvwxwxxwfwwxxvwxwxvwwwxwwxwwxwxwxxxwwvgvwwxwwvvwwxxxxwxxvxvvvwxvhgwxyxwxywxgwwxgxwwxwxwvvwxxwwxwwxxwxwwwxxvwxgvwwxxwxxwvwwwxwwgwwwxvwwvwwvwwxfwwwgvvevwwwwgwvwuvwwwvwwwvwwwwxwwfwwwWwwwgvgwgxwwvwwwwvwwgwwevwvwwwwwvxwevgwxwwwxwwvwxwggvwwwwwwwxxwwwwwwwxxxwvwwxvwgwwhvVwwwwxgwwwvvgvuwwwwgwwwwWwvwvwwwhwwwxwwwvwxwwvwvgxwfxvfxwwwxwgxwwvfwxwwwvwgwwwwvfwvguwgwwwvwwwxwvwwwwwfxxxwvxvwxwvvwywwwwxvwwvxwwwwwvwgvwwwwwvvxwwwxxvggwxwwwxxfvvwwwfhvvxwwwvwwxwxwxwwwwxxxxwwwxxvvwxwxxxwwwxxwxxwwwwxxvfwxwhwxxxxxwxwwxvwvwxwxwxwwwwwwxwwwwwwwxwxwvwwwwxxwxwwxxwwwxxwwwwxxxgxwwwxwwxxvvxxxwxxwwvwwwvxwxwwwxwxxwxwwxxwwvwwxxwxxwwxwwxxxxwxwwxvwwvwffuvxvwwevwgwVvgwfgwwfwwvwwxwfggwvwwwfgwwuwxgwwwwxxxgwxvweewwvwvfvwgvwwvvwgwxgvwfhevwevwwWwwvwwwxwvwgxxxgxwevwxgwwwwwwwwVvwUwvgggvfwgwgwgvwvwgvwvwgwwwwxxwwwxwwwfwwvwwwwgwwwwwvxwwxhwggwwwxwwfwwwvxxwxwxwvwwwfwvfwvfxvgVfwwWgfvVwwufwvewvevxwffwwwwgewwwgwwwvxgggwxfwxwfwvgfwxwvwwvgwwxegwwgWxwwvwxvwwwgwwwwgxxxwwwgwuggwgwfxwxgUvwfvwwgwfwvwvwwvwwgwxuwxfWwwwwxvwwxwvwwgwwwwwvwxwwwwwhxvwgxvxvxwwxwwwxxxwwxwgxwxxxxwvwvwwwwwvwvgwwvfgwwxxwwwwvwwxwwgvggwxxxxxwwwvwwwwvvvwwwwwvgxwxxvvfxgwgwwwwwwxwxwhhvxxwwwgwwwvvwxxwwgwwwwwgwvhxgxwwgvxwwwwxwxwxgxwxhwgwxxwgvgwwxxwxgxxwgwgxxxxxwwwhxvwhwhxxwvgwwwwWwwxxwwggxwwvvwwwxxgwwwvxvfwvwxwwwhwwwwxxvwxwwwxxwwxwwhgXvxwxgxwhxvxwwwwwwwxwvxwhxwwvwhgwfvxwxxvwgvxxWgwxxxwwwwwwxwwvxxwwwxwhwxxxxwxwxwxxxxwwwxfwwxxvgwxtfwwvwwwwwwwvwwwwgxwgwwwxvvwwwvuwwwvwwwgvwxwwwgwvvvwvvwwwwwwwwxfwVvwvwvwxwwxwwwvwwwwxxwuvwwwwwvwwwwvwwwwwgwwwwvwwuvwwvgwvfvxgwwwwwxxgvwvfwwwwwgvwwgwwwwwwVgwfwwwhxwxwwxwwvvwwvfgwwgvdgVwwvwwwwwvxxvwvvvufwwwwgwxwwgWvwwgWvwhxwvvfwwvwwwxwwwwwwwwwwxhxwfgwfgugwxwxwxwwwwWhwgWxwwvugwwvdwwwwwgvggwwwwvwvwvfwwwwuwggvwxwvvvwwwwwxwxvvwwfwwwvwvwwfwxfwwxwwwwwgwhuxxfwwwxwwwxwwwvwwwwwwfvwwfwwfuvwvwwwxwgvvwwwwwxwwxhwwftggvwvxwxvwwvxwwwxwwwwwwwwhxwwwxwwxxxxwwwwfwwgwwwwwuwwwwwxxwwwwwwwwwwxxxwvwwxxxwtvwwwwxhwxxwxwwwhxxxxwwvwwxwvwvxfwfwwwwwwwxwxwwxwxvgwwwxwwwhxxwwwwwwxwxwwvwvwwvwwwwxwwwxxwxxxwgwggwgvwhwxwwxxxwwgwwwvgwwwwwwxwwwgwxvwwwxxwvwwwwwxxxwwxxxxwwvwuwwxwwwgxxvwwwxwwxxwwwxxgxxswwwgvwvwvfwfwvgwwwfwwvvwwwwgfvwwwwvwwvvuvvvgwvwggvvvwwwwvwwvuvgxuvuwffwwwffvwwwgvvwwVvwvvvwgwwgffwwvxwvgwgvvvvwwfvwVewuvwwwgvwwvwwuuwghwwvWuwfvvwwwuwgguvgwwwwvwwgwwwwWvvuwvvwwwwvfvgwvwwwhwhuwwfvwfwxwwxxxwwwxwwwvvvwvwwwffvvffvwffwvwggvefvvfvvfVfvfVvvVutwfwhVfwvfugvwwwgwfvgwwwwwvffgwgvwfgwwvvwgwwwwWhgvfvwvvwwguhgwugvgvggfgwvxwfxfewvfwwdtvwwgwvuwfwewfwxgvfwwesuwwwwwvvWwwwwvwwfwuvwwwwwxwwvvwwxvhwwwwwwwwwgwggwwwvgvxwxwwvxwxWwxwxvwwwwgvwwwfvwvwxwwwvwuvgwwwwwwvwvwwxwvxwwxhvwxwwvxsuvuuwWwwwvtdwwwgwxwwwwvggwwgwxwxwxxwxxwxxwxwvwewfxwwwwvwwxwvwwvxwwfWhuwxwxwwwWwuwwwwvgwfwxwwwwwwwwvxwxwwvwxwXwxwxgvfwwuuvvwxtuvvgvvgwwwwxvgvvwhwwwwxwhwwwwhwgwwwwxvwWvvwwxwwgwwvxghwxxxxwxwwwwxwxxwxwwwxxwxxwvvwgwvxwwxvwwwvwwwwwwwwwvgwwggvwxgwwxgwgwgwwxwvxvwvgwwwwwxwwvwwvwwwwxxvwxgwwwfwwgvwwuugxXfwgvwwugwwfvwfwvvwvfuwvvwwwgwwwwvvwwwwxwwWdfvfvdfwwwuwwwgwwufwwwwwgwvwfvgvvwvxwwwhxggwxxfwwxvwwwwvwwwwwwvfgggvwwwwwgewwffwvvwwxwgwwwgxvfgxxwwwvgwgwwxwwwwwwwhwvwxgwvgvwxxwggwxwxxwxwxfvwvgdvfwvvwdfgfgefvvffvuvgwwwfgvfvwggwwvwwwgwwvgggvwwwwwhvwxwgvwvgwvxwvvwhgxwhxvwxxxvwwfxwwhvwwhxxgwwxwwfvvgvvwvwwvfvxffwWgewxwwwgfwfwgwxffwwwwwxwgwwxggwxwwxwgxwxxwwghxvhxwxxwvwwwwgxxwwvxxvxwxwwwwvwwwwxwwgwwugwvwgwwwwgwxwwwwxvwwwwxwxwwxxhwxxwwuVhwwWwgwwwxxwwwxxwwwxxxxxxxxxwxxwwwwvgwwwvvwxvxgwwxxvwwwwwxxxwwwwxxxwxwwxxvwgxxxwwxxwxhfwwwxwxxxwwxwwxxhxxgwgwwvgwwgwwwwfvgwgwwxfwgwwwvwwwxwxwwhxwxgxvxxhxxvhwgwvxwxhxxxxwxhgxhwwxxxxxgwxwhxvXwhvvvwxxwwxxvwxxwwxwwwxxwwwxxxwxhxwxxxwwxxxwwwxxwwxwxxxgwwxgxxgxxxfwxxwwufvwvvvwvwvwwxwgwwwwvvwvvwwvwvgwwgwwwwwwgvewwwvvwxfvwxwwwxxwwvvwwvwwwwwwwwwvwwwwwxwvvvwwffwwvuwwwwwwwwwhuwvvvwwvwwwxvwwvwwxwwwwfgvewwwwwwwwwwwwgxwxxwvwwhwwxxwwxwvwwwwvwwffwvvvwwvwwhwgvuwxwWfwwvVfvgvwgwwfwwwgwwguwxwwvvwggvvvfgwgvwwxxxwxxwxxwvfgfvwgvwwwwwwwvxgxwwWxgxfgvwvfvvvuwvfvwvwwvwvvwwfwwvfwvwvgwwxwvwwwvwwwxwwwxvwwwvfwwwvwvxvwghfwxxwwwwwwwwxwwwvwxwxfwhxvvwgfuvwwvwwwwwvvgxxwvvwwxwwxxwvgewvwwwgvvwwwwwfhxxwhwgwwwxwxxwxwwxwwvwwwgwwwwwwvwwgwxxwwwxxxxwwxxwxhuhwvwxgxwxwxwxxxxwxxwwgwvuvgvfvvvwwfwwwvxwwvwxgwxwwxwxvwgwwwgwgxxxggvvgvWwvgwxwwggxwvhxvxwgxxxxvxvwxwwxxwfvwwwwvvwvwwxwwwwwwwwvvwwxvwwwwxvwwxwxwxxwvwwwwwxwgwwvwxxwwxxgwwwwwwwwvwuwwwwwwfvfwxwwwwwwwwgvwwvwwxxwvwwwgwwwwwwwwwvwwvwvwgwgvvwxwwvvvvwwxwxfwwwwwwwvwvwvuuvwxwwwvwgwwwxwwwwwwwuvwwwwwwvvvvwxxWwhwfwxwwxxxwxxhxxwwvwvwvUeWVfwfffwvwvvvfwvvwwvvwVfffgfwwuuwvvwxwwvfvvfVefvVgeguvvwwvwxwfvVgexwwxwvvwxgwfuevuufwwxwuuvwvvvvwxvwwvvwxwwxwxvwvwxvwwfwxxwvfvvvvxxwwwuvvwwvvwwwwwwvwwwvxwwhwwwwwfwwwwwvwwwwwgvwwwxxxxwxuwwvwwwwxxfwxvwxxvvwwwxwwwvxxxxwwwwwwwwxvwwwxxxwxwwvwxwwxxwwwwxxvxxwwwwxwxxxwxxwwwxxxwxgffggfwwwvvxwwwxwwwxxwwwwwgffwwwgxvwwvvhxvwxxwwwvvwxxfwxxwwvwxvvwwwvgwwxgwxxwxxgwwxxxwxwwxwxwwwwwxwxwxwvwxwwtwwfwgvgwwgvvfwwgxwxvwwwfvvwgwwwgvvvwwvvvwgwwxfvvwwwwxxxwwvvvvgwwvwfeewwwxwvwwuuwxvwwwvwfffwwwgwwwfwwwwwgwwwwvvwwvggfVefvfvwgwwfvvgwwxwxwwwvvvwfvfwgwvwwgwxxxwgxxxxvwwwfeewwwwwgvwuuwwvgxxxwvvwwwwwwhwxwvwxwxxgxxxfwfgwgvgvvgfvUSSwvgggwggvfeewxfvfvggwUUfgfvwwvwfvvwwfwfwwgvvwwwxwgggfvvvwgffwvwhxXwxgghgfffvwwffghvwvgwwwwggxwxwwhvxfwxvfgUSSwffvgwwgfeewwfvfwvwvwwggfwwwgwwwwwfwwgxwgwwwxwxfxwfvvwxgffwwwwvxxgwxghfxwxxhxxwwgwwhgggwvxxgxwxfwwvwwwvvvwxwvwfwwgwwfvfwgvxxwwwwwfwvwvvwwwfxwxwgwwxwwgwwxfvvwwwgxwvwfwwwwvwgwxvfwwfggwhwxwwwgwwwWXwwwwvwwvvfwffvwwwwwwgwxhgwwxwhghvwvvwwhwxwxwxgwxhxxwxxwxwvwwwwxwgwvxwwxxwwhgxxxxxwfwwvwwwwxhwwXWwwxxwwgggwUUfgvvwwwvfffwwffgwwwwvwwhfvwxwwxwwwwwwfwgwwwgxwwxwwwfvvwwwffxxvwwwwwxgxwwwxxvxxwxwxxwwwvwxwwxwwgwHwwwxwvgvvwwwgggwwfwwxwwgwgwwwxgggwhwwwwwxxwxgvxwxwwhwxxgwvwxxxfwxwwgxwfxxwfwwwxwwwxgwwwxwwvwuwwwwxxvvwwwwvwwxwwwgvvvwwwwxwvwwwwxwvVwvwwwwgwvwwwwwwxwgwwxvxwvvgwVvwwwwfxwwxgffwuxgwvvgwxwwvgwvwwwwwwwwxwxgxwvwvwwwwvxvhwwwxwxwxvgxvvgwfxfwfvwxwwuvxvvvuwwvvwvvvwwgwwxwxvgggvwgwwwwwgwxwxwvfufwgvwwwwwwwgwwwwfewvegVxwwwwwwgwxwgwugxwvvvgxwvfwfvwvwhwgxwxwxfwwvvvhxwuuvwvwwwwwxwvwwwwvwxwxwwwwvvwxxxwxvwwxxxvwwwvwwwxwxxuvvwwgwxwxxxwfvwwwxxxxwwwwxgwxxxwwwwvxwwvwwwvwhxwvwvvevwwwxwwwwxwwxxwxwwxvwxwwxwxwwwwwvfufwwxxvvwhxvwxxxxfwwxwwfwghxwwwwxgxvwwwxxvwxxwwwxxwxxwwwvwwxwwwxwwwxwxvtwwvvwwfVwvwhwvvwwvvwwvwvwwwgvwwgwwvwwvvwgwvwwxgwvwwwvfvwuvvxguvfvvvwwxwxwwvvfwwwwgwwuuxwvwwwxwvwwxfvwwwwvwgvuwVwvwwgwfvwwfwvwvwwwwwwgwwxwgwvwwxgwvvwwuxwwwwvwwwgwxxwwxhwxxxxwwwuvwwvwwfVgwUguguwwwuwvwxVwwwvvwwwgwwwfwwuuwwwvxfwwvwwxxwwguwwwwwwwxWwwwwfvwwwvxwwwvwhgxwuvwwwgxwxwxxxvwwwuwfvwxwvwwgwwdgwgvwfwwwxwvvwgxwwgwgwwWwxwhwvvxwxehwfwxxwvwywvxwwwhwxwxwwwwvwxwxwwwwwwwvvvwxwxwwvwwwwwwxwwgwvwvwvwwwwewvwxwwvvwwwwhwwvwwwxxwgwvxufwxwxwgvwwhxxxfwwwwwxwwxgwwxxxwxwgxxwxwwwwxxxxwwxxxxhgwwxxxwwxxxwwwwwwwwxgwwwwwwwxhugvwwwwxxwxwwwwwwwwwwwwwwwwwxhuwwwwwwwxxwhxwwgwwXxvxxwgwwgwwxwwuvwxxwwxwwxwwwhxxwwxwwxhxxxxwwwxxwxwxxfxxwwxxxwxxhwxxvtwwvwwwwwwfvvwwwhgwwgfwwwvewwwwvfwwxgfvwwgvvwvxxgwwwwevgxwfwgvvvwvwwwwwgvwwvxwwWggvwfvwwwwvwwwgwwxwvfwwwVgwgVtwvvuwwGuvwgwwvvwwvwvVvvwvwwwwvxwvuwwvgfWvwwfwgwgwvvvfvwgwwfwgwxgxxxwwwvwxwwwxxwwwwxwxwxwvwwgVvwwwwvvWvugUugfevgfvwwgwWwfgwgvwfvwwgwvgwffgfxwwWvvwwwgWwwWwwwwwuwwgfwgwvgxvWvvwWggvwgfvvuvWwgwggWxgggwXxufWgxguwvvvwudvfvvwwwwutffwgwGvgwwwvvvwvwwwvwwvwwwwfwwwvwwwwwwvgxwwwwwwfgwxxxfxggwxwwvxwxwwwvvwggwxvwghwwwwgwvwwwgvvwwvwggwwwwwvwvwvgwwwwwxvwwuvwgwgwwxwgvwwvwgvufwxfgwgvxxgwxwxwwtuwvgwgxwxhvwxwwhwxwxxwwwxvwwxxwwvvwwxxxwwwwWxtwwwxxxwhwwwHxuwwhwwghwwwxwwxwxhwvwxwhwxwwxwwxxxxwhvwwwwwwfwwuvwwwvgwwxgwgwwwxxwwuvwwwwwwwxwwxgwwwwxwwwwwwxxwwwwxgwwwwgwwwhhgwxwwwxwwgwwwhfxhwwwghgwhwwgwvgxwwxwwgwwwxwwgggwXxuwxxwvwwwxwwwwwwgxwwxvwwvwwwwxwvwwwwxwwxwwvxxgwwwxvxwvwgwxwwxuwwwvvwgvwwwwwwwwvwwvwwgwvwwvwvvwvwvwvuwwwwvvwwwxwvwuwvuwwwwvfvwgvwxwwwwxwwgvwvwvvwwwwvwvvwwwwwxxwwwwvVdwvwwvvwwwwvwwvvxwwgxwwwevvwfwvwwxfvwwxwwxwwwwvwwvfvxwfvwxwgxwvvwgwwwxxxhwvxwxwfvvWgvevuffwvfvvwfvwwwvwwwwwgwguUddgwwwwwvwfffvwwxwvwgghwwwvwvwvuwuxwwwvwvwgvwfwwgxwwgwwwwvvvxgwhvvvwgwgwvxwvfvffvVwuvwwwwwwegwwwwwwwwwUddwwwWwvwxwxwwwwvvwwwxwgxxvwvvxvvuxwwwvxwhgwwwwhvwwvvwwhvxxxwwwwwwvwxxuxvwwwwwgvwgvwwwvwwxxvwwgvwwvwvxxwwwwwxxwwwwwgwwgwwwwwwwwxwwhgwvvwwwwwwwwxwxxwwwwwwxxxwxxvvwewvvxxwxwxwwwvxxwxxwwxwwxxxwwwxxhgxgwwxxhvwwwvvwwxxwwwxxwwhhwxxwxwwxwxhgxwwxwwwwwvwWgwvwwwwwxwwwwwxwxwwxxwgffvwwwwwhxxxxwwwwwxwwxxvwvwwwwwxxwwwwxxwxhgxxwgwwwxwgxxxwwwwxXxwwwwvfgvvwwxxwwggwxxwxwxwwwwxxxwwwxwxWvxxwxwwwxwxxwxxxxgwxwxwxgxwwxwwhvvvvwwwwgvwwwwgvwuwwvgwvwwwfwgwvwwwvwgwvvvwwxwwwwvuhuwwwwwwfvvwwwuvwwwwvwvwwwgwwxxvWwWvwwwxxvvwfuwwvwwwwvwvfwvwwwvwwwvwwwvwgxggxwgwwwvwwwwwwwwwwwhghwgxwwvwwvwxvwwwxwxwvgwgfwefvvvwfwwvhwvuvwwwgvgwvgvfwwvvwgwwwvwhwwwwwwvwvvwgvvwwwxvgvwwxvhxwgwwvvwxwgwwxwwwwhxwxwwwvwwvfvwwvhvwvwvwwuvfwvwgwwwvvvwvwhgwuwwwwwgwwWxvxwwgwwxwgxwwwwwxxwxwxvwxwvxwuwwxwvwwhvxwvwwwvwvwxvwwuwwwwwwxvwwwwxwwwwxwxwvwxwvfwwwwxxwwgwwxwwwwxwxwxxgwwfvwwfwwwxxvvwvwxvwhwxwwwwwxwwvxvwwwxxxxxvwxxxxxxwwwhwxwhvxxxwwwwgvwwxwwvgwwwwwvwwvvwwxwxhhgwxwxwwxxxxvwwxwwxwvxxxhxxhxwgxxxhxhghwwwwwvwwxxgwwwgwvwxgwxwwwwwvwxwxwwwwwxwvwwxxwwwwwxwwwuwwgwgwwvwwfwwfvwwwwwvvufgwwwwvwwvwwfwwefugwwwwwvwvwwvwvwvwvwvwvfwwvwwwvgvgwxwwvxfvvwwwwwwffvgxwwwwxxwwwwwvxwwwwwwfvefegvwwWuwvwxvvvwwxffvggxwwwgwvxwxwfvvwvvwwwffvgwwwwwwwvwxxhwwgxxwwwwwwwwxxxvwwwfwwgvggwvwvvgvgwVfwwwxwffVewwWgvvwffvgwwwwxxgDddfxvuwvwwwwwwwwxwwvwugugwhxwwwxwxgwwwWxwefufwwwwgvxwwxwvxvuwxwXuvgwwwvwggwffvgwvwxwDddfxwewwwxwwfffvgwwwwwwxwwwvwxgwwwxwwwwwwxefugxwwwwxwwxwewxwXuwwwwhwwwvwwwxxfwwwwwxgwwxwvwwvwvwwwwwxvwvugugwwwwwwfwwwwwgwwxxxxwwwxwhfwvwvwgwwwvgvghwwwwwxxwwxxwwxwwwhgfwxxxwxxxwwwxwwwwwwwxxwwwwwwwhvxxwwwwfwvwwwgxxwwxwhgwwwwwvgwwwwxwhhfxxgwgwwxwxxwxxxxxxxwxwxwwwwfvgvgwwwxwwwwffVewwwWxhwxfxxxxxwwwwwwwwwwwwweguhwxwxgwwxwWxwgvXgxxwwxwwwwwwwghwwggwwvwwwxwwxxwvxxwwvgwwwwwggwwwhwwwwxxwwwwwxxwxgvxxxwwwwxxwwwwwwxgwwwxxxwxwwwvwgwxwwxwwwVvufWeVvfvGuwvvwwwgvvwggvVvwwvvgWuwwwwwvwgwwwwgvvxwwVvuwwWTvdgVvfwfgvgfgwwwwwfwwxgwvgfvfvvWgwgvwgwwwxvgxwxwgwgVvfefwwgvvvwwvwgxwwvwxwwxwxwwwwxwwwwwxwwwxxwwfVvgvvWvwwwwxvggwwxvhgwxwwwxxwxwwhwwwxxwwwwxxwwwvgwwvwgwgwgvvvwgfwwwvgvxwvgwwwgwgxgwwgxwwwwhgwhvwgfwxwwfvwwhvwxwwwxuxxxxxwwxxgwwwwxwwxxhwxxwxwvfwwwxwwwxhvwwwwxgxwwxxwwxwxwwxxxhxwwwwxwvgghwwwwwxwxxvxxvxxxwxxxwwgwxxwxxFtuvevWtvgfwvxvvgvgfwGvvxvhgvgvgwvwwvwvgxgxwxwwtfggvvggxvwwweuvwxwhgxwvwwvwvgwxgwwwXxwwvwxwxvgwvxwwgvgwwwwxwwwwxvxwxwwwwhxxwwwwwwwfwhwxwwwxxxxwwxxwxxwxvwwxwwwxvffvVveuftwwhvwgvWuwwvfXuwgwwwwwwwxwwwuxxwxhwhwfvvwwwwhwvwwwwxuwxwwwwhwXvwvwvvhwwwhwhwhxwgvwxvxwxxxwvwwwvwxxxwwhxwxwxxwxwfvxgxvwxwwwwxgwxwxwwwxxxwwwhtgfwvvwwdeefgVevwwfwxgvwTffvefewfwwwWewwwvwwfffVfvwvwxfvvwwwuwffUvwgvfgffvwhhfUgdvgwewxgvwgwgvwxgvvghgwwwwwwwwgfwwgwwwvevfgvvvwgxwxwwxvvwwxwxwwxxwxwwwwUvhgfvvxwwwVgufhwgwwxfgwxwxxwwxxxxwuvvwgvuwggwvwuwwwwwwwwwwwwfvvxwwwwwfuwvwfxwwxwwvwxwwvfwwwgvwwwvwxxwfwxxwgwwxwwwwvwwggxxxwvwxwwwwfvvwfxvvwwwggwhxxwxxwxxxgggxfwxxxwwugxvfvxxwwxwgxvxhwwwxxwxgxuvuwfUtUdfvVfeeffevvwVvwwXfwfwwwwwwwwwwwwwwxwxwwwxxwvfuvfwgffeewwvwvvvgwwvwwgwxfggwwxvxwwwwxvwwxhxwwwwwxwwxwwwxwwwxgxxxvwxwxxxxwxxwxxvxwwwxxwwxxxwxxwuuvvfwfvwwwwwxgwggwggfvvwxwwwxggwwhwxwwwwvvfwvvvgvvvwwwwxwwxwvvvfxgwwxvwxvxwhxwguwxwxwwwhwwwxxwxxhwwwwxxxxxwxwxwwwwxvwxxxwxwxwxvwwfwvUvuwvWfwVvfwwwfwuwWgwwxwwwgwwwvxwwgwxwvgwxwwwgwxfvugfgVvgUevfguXewgwwwwwwwxwwwxvwwvwwwwwwxwwwwwgxwhxfwwwgwxxwvughwgwhwwwxxvuvxgwxwwwwxxwwxxwvgwwwwwgweggwgwwwgwwhwgfwwwwwxxwxxxwxxgvwwxwwwwwwvgVwwxxwwvwwxvwxxwxwgwwxwwwwwwwxwxwwwxxwwggwwwwwwwwxwxwwwvxxhvwwwwwwwxxwxwxxxxxxwwwxxxwwwxvwwwxwxxxwhwwxxxxxxwvxwxxwwwwwxxwwxwhwwwwwxwwxxwxwwwVuuwvwwxVwguffuwvWVwwwwwwvwwwvugwwwwwvxWwfgxwwxwxxwvewWgwwwgwwwhwwwwwwxhvwwxewwwhxxwwxwwgfxwxxwwwwvxwwwvwwwwxwxwwwxxwwxxwxxxwwxxxxxxxxxxxwwwwwhwwwwwwxhgxxwxxwwxwwwwvgewwwwxVvvvwxwfufgxwwwxvwwxxwhvxxxwwgvxxwwwwwxwvwwhwwwwwwwxwwwwxwwwvxgwwxvwwwwxxwwwwwwwvxxwwxwxwwxxwwvwxwxwxxxxwxwwwwwxxwgwwwxxxwwwxwwwwxxwxxdufuUutfeeuwefevUedfgfeWeEUvwggfevuvfVdwuwgwfvwuffvwvgwvvuxwveeuvgfUffUTvvfufgfUVggfwggVgvWfVdvgfWfuwwfvwgvvwwgugwgvwvwvvvfuuwvvuefvvwvwwvvwvwwvvxwxuvwwxxxvfuvgwwvwwvfvwvwwxfuwwvwwwgwgxvfvxwxwwwwvwvxxxwgfuvvwvfwffvvwvwwwffwwwxvvwvwwwwwfvvvwwxwvwwwwwwwxwwwxvwgwwwwwwwwwwwwwxgwgwwwgwwwvwxwxwwvxwwwwxxwvwwwwvwwwgwwxvwwwwwxwwxxwxxxxwxwwwxwwvwvwgwwwwwwwwxwxvxwxwxxwwgwfuegfeevdWvvvwwweUfwWwfedwgwdfuvduuvgwxwhwvvwwvwxwgwwwvufvewvffvvgwwugffwfwfvgwgvwvxvuuvuggvuvwWfxgxhxgvwwggvxwwxxxvwvwwvwhvwwwwxgwxxwvwvxwvvvwwwxwvwwwwxgwgwwvwxwwwwxwwugvgwwvvvvwwwwvfwvwwwhxwuvvwwvgxwwwxwwxxxxwwwwvwwwwwvwwxxwwwwxvwwxxwwwxwwwwwxxxwvwwxxvwwxwwwwgwwwxhwwwvvwwxwwwxxxwxxwgwvxwvvwwwvvxxtwfwwvuwvWfeevfwvwwfVevwvwfvfgfffwvfwgvUfuuvvfwvwwfvvwwwvwwvfwxwwwfffvwwgwggwwwgvevgwvwxwfwwxFfdfwvwwwvwvwwwwevfvxwwhgffvwgwgwwxwwuvwwwxwwwwxwwwwxwwgwwxwfvwwwxwffvgwwwwwvgwvwvxwwhwxxwgwwwxfvwwvwwwgfwvxvggwxgwvwwvwvWwuwwwwwwxfwwwwwwwwxwxwwxwwvwwwwwvwhxwwxwwwxwwwwwgwxvwvvxwwfwwxwwvxxxxgwxgwwwwwwwwwxxwxxwwxxwvwvxwwwwxwwwwxfvvwfvwvVevwwVdvuwvwwfwfwwvgwwvvxwfvvwwxwgvwfffgwwvwxxWeefwfwvwwwvwwwxvxwvwwxwwwwwvggxwwwwwvvwwwgwwgwwwwwxwgxwwxwwwvwxwgwvwwwxxxxxxxwwxwwvuwfvvwwvwxvxfvvwxwwwwwwwxwxwwvwwgwwwwgwwwwwwxwwwwvwxxxwwwwxwxwxxxwwvfwvwxxvwxxxxxwwwwwwwvwxxxxxwhxxwwxgxwwxxxxgwvxvxwwxwwwxwwvxwxwxgvfwgvfwfgfgvuvwgffEEggvvwvvwvwwgxgvgvwwgfwgvffgwvwvwgwvgvggfwvVVwgwgwgEEvwwvggvvVgfwwggvwwvwgwfwvwgwgwvgwwggwwgwwvwwwwxgxwwggwwwwvwxwgvwvvggwwwxxxwwxwxxwwxgfwgvvwwvwvgwwgwwxxvwwxwwxwxgwxwwwwxwwxwwwwwgvwwwwwwwgvwwwwgwwwgwgwwwwvxxwgwxxwwwwhwwwwxwwwvvwgxxvwwwwxxwggwxwwgxwwxwwgwvxwwgwxxwxhxwwxwxgggwxxxxxgwwwxwxxxwwwxxxxwwwwwxhxwxxvgwwghwwxwgwfwxhwhgvgxxwwwxxfvvwvwvwwwwwwvgfvgfvvgvwwvVvvwwvvvwgxvwwxhgwwhgwvwxxwwvwwwxwwwwwvfvvVwWfgwxwwwvwwwwvwuwwwwgwwxwwxxwgwwxxxwwwxhwxxwvwwfwvxwxwxwgwxxxwwwwxwxwxwxwxxwwxwxxxxxwhxxxwvxwwwwgvhuwwwgvwxxwgvwwwgvxwxxwwxwwxwfwxxwwxwgwwwvwwwhhgxwwfggwwxwxvxwxwwwxxxwxxwvwwxwxxxxxwwxxwxwwxxxxxwxwggxwwxwugfwwwfvvvwwgwfftvwwgvFewwwwwfvefwvvgwwgwgffVvgwgggxxxVgtgvgevuVfwvvvwVDwwvgeggwfwugVvfvvgvwwwvxwvwxVxwxwwwwwwwvffwwvwwwwudVwwwwxwwwwwwwwwhxvxxxwxvwvefwwvvvwxwxwVfgwwxxwfgwvwwwwwwwxwxwvxwwgwwwxxwxwwwvwwwwfwwwwxvffvxwgvwggwvwgwwwwvwwwxfvugwwwwvwwwwwxvwvvxwwxwxwwwxvhwgwwhwvwwwgvwwwewxxfvwwvwwwwwgwxgwvwwwxxwxwwggwwhxwwxwgwwwwwwwxxwwwwwwwwwwfwwwvwgxwxgwwxwvxxxwxxfwwfvwwgvwUutvvvguwwvvwUgfuvvwwggvwwwvgfVuxwwwwwwwwwwgxwewfvTvfvwvhvwVvwgfwwwvwwwwvwwVgxxvwxwwxwvwwxxfwwwwwfvwxwwfwwwwwwwwxxxwxwxxwxhxwwxxxxxxwxxvwwxwwwfwxwwwxwfwxwhxxwxwwxvgvwggffwxEfvfwwwvwwvvvxevxgwgxxwwegwwxxvxwxxgwwvgvwgvwwwwwxwwvwgvvgwvxwxxxxwgwwxwvxwwfwxxwwgwxfwwwwxxxxwwfwwxxwxwxwwwwxwwxwxvwXwgfgwwwwxxwxxwxfxwxwxxwxxxvwggwvwVgdwwwwvVfuvwgfeevwuvwvvwwwwweUvwwwvfvwgwwwhwvxvvgvwugeUuwwvgfwxwgUvufwwwvfuvwwhwfVFxgxwvxfwvxwwxxwwwwgwwvwvwvwwwwwWwwWgwvxwxwwwxwwwwxwwxwwwwwwwwwvfvwxwwwxwwwuwwxwxwwwvwwxwvvxwvwwhwxggwxfwfwwwwwgwwgwwgvwwxxfvwfvwwwwwxgxgvwwwxxvwwwwxwgwxxwwgfxxvwwwwxxhvwxwxxxxxwxxwwwgvwxwwxwxxwwxxxxwxwxxxxxwxxxwxwxwhxvxxwvxwxxwwxxxxxxwwwfvwvwwwfvvgewVwgwvvwwevvwuvwwwwwwwxxgwwwwwwvwwwwvvggwvvwwwwfwvwgwwwvwwxxwvwwvwhgwvgxwwwwgwwxwgvwwgvwxwvwxxxwxwxwgvxwxxxxwxxwxwwxxxxvwxwwwWuvgwwwwxvgvvwgwwwvgwwxwxvwvwwwxxxxwxwxxxwwwwwxwwwwwgwwwwwhwgxwxxxwxvwxxxwxxxxxwxxxxxwxxxxwxxxwwxvxwxuwwfwvvvvgwwuwvggfwfugWgwvwwWvWhwgvXvVwgWvwwwgvewvwWvVfvgwwvfgWfVwxwwVvgvggwhwfwwgvwwwwwwwgwxxwwxwxwwxwwwxwxxwwgwgwwwwwxgwhgwxwwxxxxwhxxxghwxwxwwvxxwvwgwwwxwwgxxwwvwwwxxxwwwwxwwwwwwwwgghwwgwwhwxwgffxhwwwwhxwxwgvwgwhwgvhwfwgwwxghxxwwxgwgwxwxwWvxwwxhvxgwxhwwwxxwxxwhxvvwwxgwvwwxxwxvxwxxxwxxxxhwxwxwgxxxyyxgxwwwwfwWwwwguwgggvgWwfwfwxxwwxxwwwxwvwvwwwxxxfggewvwWwfvggvgwgwfvwxwxwwxxwxwwvxwxhxxwgwxxwxwgxwwxhxxxxxxwxxxxxhywxwxxxxwxxxxwhwwwwvxvxwfwvwfggwvvwwVgvwxwvwxwxxwxhxwwgxwwxwwgxhxxxgwwggxwxgwgggxxxxxwwxxwxwxxxxwxxhwwwxxxxwxxxxwhxwxxxxxxxxsvfweUfffvVvEeffgvwwwwwwVeWwvvevwvfEfvwvgfvvvvVvvggwxgvxxwxfvvxfffgeVfVvSuwwwvwwwwvwgvwwfgvwggfvwwwfwwvxwwgwgwwwwxwwwvwggVfwefvwwgwgewwwgvgwwwhfvxwwwwwwwwgvgxgwwwxgwfvwgewwgwuvwwWwxwwwwwgxxwwgxwxwwwWwwxxwwwwwfffwvwfwfvgvwvwfffwxwfdwwwxfVgwwfvwvwwwgvfwwfxwwwwwwwwwwwwwwvwwwgwwwwwwwwwwwwwggxggwwwwwgxwwxwwwxgwgwwffvwgwvwvwxwwxguwwxwwwxwgwxwvwwwwwxxwwwwxxxxwwgxxwwwxvxgwfwxxwwvwwwwxwxwhvxwwxwwgwxxxvvvvFSfvvgwwevwgWvwvvwwwfVevvffvvvwvgvvwvwwwxwxwwfffvfvTuvwwwwwwvhwvvvxvvWwwvvwwwvhwgwwwwwwxwvwggxwwwwwvwwwwwwgwewwxxwxxwxwxgvvwxwwwxwwwxwxwwwxvwxvxxxgwwwwwwxfvwvxxwxxxxxgfdguwuwfwwwwuegfvwwxvgffvwwwwxwwwwwwxgwwvxwwxvwxwxwwxwwguvwxxuvwuwvwxwwwwwwwwwwxgxxfxwxwxxxwxwwwvwxvwwwwxwgwwxvwwwxvwwxxwxxwwxxwhwwwwxwwxxwhuwxwwvxwwwwwwwwwwxwxuffvfvvwVvswuVUvvvuwvwwwtfuwfvvwFvtwuffwvvvgvwwwvVevwwvwvwwwfvuwvVcufvfevffFfFdvffhwvvwgWggfvffgwfwvwvvwvgwvWWvgfwxvgwwwgvvwvwvwvgfwwvwvwgwwwgffxgwvwfvvwwxwxgvwwwxxxvvffwvwuggwwwwfvwxgwwwwwwwvwwwwxxwvwwvwxhwvxwvvwgggvvwfVvvwvVeewfffgwwwwwewwwwwwwwevvwwgwwwwwxwwwwgwgwwwwwwghxwwxgwxxwwwwvwwggwwwxvwwwgvxhxwxwwwxxvvwvwwwwxfvvwxwwwwhxwwgxwxxxvwwxxxwwwxxxwwxwwwwwxwxwwwgwwwxwxxwwwxxwxVgwghwwwwwwwwwVtgtgfvvfvweuvwsgfvVvwwvwwwwvVvvwvfwwvvvxUevgwwwvwvwwgwufffufWfvgvvvfufhgGuwgvvxwwwVvwwwwwvwvwwwvvwvwwxwwwwxwwfwwwwwwgwuvwxwwwwwwwwwwxwvwwwwwwwwwwwxxxuwuwwwwwwwwvwvwwxwxxwxwwwxwwwxwwwwxxxwwwwffvwfvwgfwwvhfuewgvwwwvxwxwwxwfwwwwuxwwwvwWwwwwxwwxwvwwwgwwvvxwgwwwwxgwwwvxvwwxxxwwxwwxxwvwgwxwwxwxxwwwxgxwwwxxxxxxxwvvxxxwxwwvwxgwwwxwxvwxwwwxwgxxwwwwwgxwwwxwxgwxwgwwwvgwggwwvwfwwfffwvwwwfwgeGgvgwwhwwfggwgfgwwwgeGfgwxwgwgfvwvwvwgeFfwfwgwgwfhwvwvwxwxgeGfgwgxwwxxxvwwxxwwhwwwgxxwwvwxwvXggxxwvwxwwwwxxxxwxxwxwwwwhghvxwwwxwwwgvvvwxwwwxxwxwwwxxxxwwwgwwggfwwwwvwwwgwwwwvWwwggwwwxwwwgwhwwwwvWwxxxxwwwxwxwgvwwwwvWwggwxxvxhxwwwvXwwxhwxxgxwxwwxwwgwvxhgxwxxwwwwxuxwwxxwxxxxxxhwwxxxgxxxvxxwxxxxxxxwxxxxxwggwwfwwwwvvxwgggwgwfvxgxwghwvvwhgvxwxwxwhwvvxwxxwvWfwffwxvwwgwvvwgwwwwxwxvwwwwwvxwgxwwwhggxwwwxxwwxwwxxwxxwwxxxxwxyxxwxwwwwwxxxwxhxwxwxxxwggwwwwxuvwgwfxwggvvxxwwhxxwxvgwgwxwxxxwwwxxwgxwwwwwgxwwwwxxvxxxxxxxxwwxwwxxxwwxxxxwwxwgwxwwwxxxxwxxwxxxxxwxxxwwxxxxwxxxwhtfUfgffgwvvwfVgwfegggvvgFfvguuwedvUTfevwgvwewwVVfvfvfffvxhvwwfevwvfeugfgfvufvgfwwwxUwfwwwwwwfVUvVvdeuwwvvwwvvfwgvvwwwggwvwvfevwwfvwwWewwwvffxwwwwgfwffwgwgwwwwwxwwfwwwwvwxxxxwgUuwgvtewwwhwgwwwwgwwwwwgWvwwvwwgxvgwxwwwxwvwwwwwvevuwwggwgwuwfgvwwwgguugxgwgefVwwwvwvwwwxvwufwwwwxvvwxwwwgxgwvwxwwwwfwwvgwgwwwwvwwwwwvwvwwwvwwfxxxwwwWwwwwvwwwwxwxwxwuufxwwwxwwwwxVVwwwwwwxwwwwwwwgwxwgwxwvwwwwwwwwxfwgxwvwxgxxvgvwwwwgwwwxuxwwwwwwxfvwvVfvfwxvxeEevugvwxwvgwwUTvvfgwwwxwfvegewghwxwxveffufwvvwwwwuvwwvfuxwwwwgfefvvwgwwwgvwgxxgwwwgfwxfwwwwwxvxxgvgwvwvxwxwxhwwxgxxxxwwwwwwxxxxxwwwvxxwuwwvgwxwwxwwhwwgwxxxwwwvwxvevvwvvvvxwguvvwgvwvgwwvgvvfvxwwwxwxwvgwwfvwVwwwwxxgvvwwgwwxwwvgwwxgxwwwwggwvgfuwfwwxwvxwwxggwgxvvgxxxxwwwvvwwxxxxxwwxxwxwxwgvwwwhwxxwwwxwwvwxxvxxwwwxgwgxwwwwvhxwvwwgxgwwgxwxuxwwvwhwvwwvvwwvffwwfvwvwwvvwgfwfgfvfwvgfwvgggfffwwhwwfwwwfggwwwgvwwvwgwwwwgvwfVvuwwwvgggfgwwwwvwwvwwxxxwvwwwwwwvfwwwvvxxwwxxwwwwwwvvxwwwxeuwxxwwwwxwwhvwwwxwwxxwwwxwwwxwwwwwxwwwwwwvgwwgwggwwwvwhwwwwxwxwwvwxwwvfwgwwxxwxwwxxwwwwfwgwwwxwvwxxwxxvxwhxwwwwxgwwxxxwgwwwxxxxxwwwwxxwxvwxwxxwwxxxwxwxwxvxwxxwxxwwgvwwwwguwvvwwvwwwwwgvvgwwwuuvwwwwwwxxwwvwwwwvwwfwwvwwvvwwxfwvwwwwwvwwwxvwwwwwwwxxxxxxxxwxxxxxxwxxwwwwxxxxxxwxxwvwwwwxwwwvvgwxvvxwwghxxwwwvwxxwhwvwxxxwwwxxvhxxwxhhwwwxwxwwxxxxwxwxxwwxxxxwxxxxxwvwwwxxxwxwxwxewwgwwwfvwxvvfvwvgwwUvvfvvUvVgwvvhvgfvgwfwvwwewwgWgfgwwwvwwxwwwwwwuvgvgfvufwffvvgwVwvwffWfWwwvgwwwfgwwwvwwwwwxwvwxwwwwggwwwwwxvwwwwxfwwxwwwwwwxuxwxwwwxxxwvwwxxwwxgxwwwwxwwvuwgwwwwwvwwwwxwwfxwxwxxwxxwwxxxxwwgxhvwwwwxwwvvwwfwwwgwwwvwwwghxxwwwgwxfvwgwwvwxwwwxwhwwxwvwvwwwwwxwwwwwwwwwxwwvwvwwgwwxxwwgwwvwfgwwxhxwwwwhxxfwwwwwwxxxwxxwxwwxwfwwxxwxxxvxxxwxwxxxvwwxxwxxwxwwxwfxvxxxxwwxxxwxwxwwwgvwwfwwwvvwvWvfvfVgvwgfwwvuwvwgvwwxvwwvwvxvxwwwwwffwvwvwhwxwwxgwgvwwfwvwwxvvwwwxgxwxgwwwxxwwxwhxvxxxwwwwwxxxwxwxwxvwxwxxwwwwgwyxwxwxxgwvwvwwxwgxxwxgvwgVwwvvWwwgwwwvwwwwwwwvuvxgwwwxgwxwwwwwwxwwvwwwwwhxwgvwvxWwwwwwwwxwwwxxhxfgxwwxwxwwwxwxxxxxxwxxxwxxxxxxwwwxxxxhwwwwtufwgedefvvweWfwvuwvgVwvgfwgvwwWvtfvffuvVVwgvfwvfwwvvgvvgwggfvgvfUvggufwfgwffwxwvgwwhwwwgffVufvtffvVFwffwwwwwwwwxwwwxwvwvwvwGvwwvvwvvfvwwgvwwwwxvvwgwugwgwwwxwwwxwxxwwxvvwwgvvwwwxvxwwgwwvgwwxwvuwvwwwwwgwxxfgwxvwxxwfxvvwufwwewvgvwffxwwfvwwwwfwvgwwgwvfwvevwwwfvxhfvuwguwvxvwwwgwwwggwwwwwxwvwgwwgxwgfwvwxhgvwxxwxxwvwWxgwwwwguvwxwwwwxwwwvwxxxwxwxwwwhwwxxwwwgxwwwwxwwuvvvxxxxxfvwvgwwwxvxwxgxvuweffvtgggvwegwwuvffxwwwvfuwvvvuvfvwwwwfvwwwwwgwxgwwwvfwVvvwewxvwwwgwwwfvwwxvwwvvwfwfgwgwwgfgxwwwwwwxvwgwwvvwxxwWhwwwwxvwwwwwxxwxxxxxxwxwwxhwxwxgwwhvwwwwwwwxwwxxvgwwxwxwwxxvwxxxxwwxvwgwVgwwwwwwxwGwvggwgwwxwwwwwvwvwwvxwwwxfgvwvwuwxxwhwxxwvwgxvwwwwwxvxwwhwwwxxwwwxwxgwxwwwxwgwwwxxxxxwwxwxwwwxwhwwxvwwxxwgwxxxxxxwggwxxxxxxgwwwxxxwxxwxwxxwvxwwxtwwwwgwwvwvgvefwvwfVvwvwvwvvwwwwvVvvwfwVggVuvwvwwevfwvwwxwwwwvewvwvvvwfwwvvvgwgwfdvvvgwwvfwggwvwwfwwwvfvwwgvwwfgggxwvwwwwwwwwwwwwwgwwwwwwvvwxwwwwvwwwxwxwwwwwvdwwwwwhhxgxwwxhxxwwvxwxwxwgwwwwxwggwwwvwwvwxwwvggxwwggwwwxwxwgwwwwwfxwwwwwwwxwwwwwxwwwwxwvxwgwwwhxwwwwvvxwxxxvxwwwwwvwwxwwwxwwwxwwwwwxwxxgwxgwxxwwwxxwwwwxgwxwwxwwxwwwwwwtvwwwwtvwvvfwevwwfwwwwwgvvwwvwgwwwwwwwwxwwwwwxxwwwgwgwwvwvvwwwfwguvwwwwuwwwwwhwwwxwwwxgwwwwwxwvxwgwxwwwxxxxxwwxwxxxxxxwwxwwwwwwxwwxwxxwxxxxwxxwvwuwwwwwxgwwwwwxxwxwwwgwvxwwwwxhxwwwxwgxxwwxwxwxwvxxxwxxwxwwxwxwxhwxxxwxwxhxxhxxwxxxxxxxwxvxxxxxxxxsgggfwgwfgfwgwffwVwfwfwVvWwwwwxgwvfvffwvgfwWwwwfT5wgwwggwwvwwwvvVwwwVwVvWwfwgfgVwgxfvwwvwwvWwgT5wgwvggwwwwxwgggvgwvWwxwwwvwwggvvVxfwwwvwwvWwwwwwwwwvwggwwwvxwxwfwwxwwwxwvWwwvgwwvwxwwwwwwwxwgwwvwwfwxwwwhwwxwwxwwxvxwwvwwgwwgwwwvwgggwwwwwfvvwxhwffwwxwxgwwwwgwwxxwwwwwgwvwwxwwxhwwwgwgvxwwvWwwwwwwwxxwwwwvwxvWxxxxwxvwwvWwwvwvwxwwgwwwxxwwwxvwxwwwvwvxxxwwwxwwwwxgwwwggwwgxggwxwgxvxxwwwwwwwwxxwwwhxgwgvwffwwvfvwuwwwffwwwgwvwxwwwwwwfwwwwwgvwwwwwhwwwwwwwwwfvgxxwvvfwffugvwdwwfgwuwxvWxvggwwwvwfgvgwwxwgvgxwwwgwwwwwwgwwwwwwxxxwgwwwwwxwwwwvxxhwwwxwwhxxwwxwwxwwwxwxwgwwwwxwxwhxxhwhwxwwxwwwwxvxgvegwwwwdwgfwghwwwwwwwhxwwghwxwwfwwxwwwwxxxwwwxxwwxvWxxxxxwxwxwxxxwxhxxgwgwxwgwwwxxwwwxwwxwxxxwxxwxwxhxwwwxxwwwxxxxxwwxwwwwwxxxxxwwgwwgvewgvfwwvfvwwvwwwwwgwgwwVuwuwVvvgwwggwwVfwwwvwwxwgvewugfxvvwvwvggwwwwwwwxwwwfUvwwwvwwwwwgwvwgwwwwxwwxxgvfwxvvgwwwxwwwfugwewwxwxwwgvxwvfvwvwwxwwwxxvwxwwWvhwgwxwwwgvwxxwwwvwvggwwwwvwwwxxxwwvgvwwwgwwwwxgwwwxxwwwwwwwxwxxvwxxxxxwgwwwwvwwxxxxwwwxxwgwwwwwwwxwxxxxxwwhwxwxwwwxwwxgwwxwwwwwxwwwwxxwxwxxwwwwwVuwwfUvfugwWvhvgvwgwwwwwwwfwgfwxwwwwwVvvvfvxxgwuwVvwwwewwgwwwwvwhwfwxxxwhwwwwvxwxxwwwvgwwvwwwwxgwxwxxxwwwhwxwwxwwxggwwwgwxwxwwwwxxwwwwwxwwwxwwwwwVfvwgwwgvwgvwwxxwwwxwwxwxVvvvwwvxwxwvwxwwwwwwxwxgwwwxxwfwxxxwwwwwwwwvwwwxwwxwwxxwwwwvxxwwwwvwwwwxwxxwxxxwwgwwwwxwwxwwwwwxtwfggwfgwwfwvUEwwvffgVwfUwwvgwvvvfwfwfwgvwwggwwfwgvwxwwffwgUwUEvwufwwfvwwvwwvvwwfgfwgvvfwwvwwwgwwwwwwwfhxwgwwwxvwwwfwwwgwvgfwfwgxwwwxgwxwwwwwxwxvxwxwwgwwffwwxghwvxwXxxxxxwwwwxxwxwwwvxwwwwvgwwwfegwxwwfxwwwvwhwwwgwvwwwwwwwgwvfwwwwgwxwxwwfwwwvwwwwgwwwwwwwwxxwxwwwgwwxwxwwggxwwxwwgwwgxwwvwhgxwwxwxxwgwwxxxwxxwvxwgxxvvwVxhwvgxxXxxgxxxwwvwggwfvwwfwwwvwguxvggwgwwvvwgwfwwfvwfgxwwwwwxwxvwgfwuwvwufwgvgwvgwfwwxwwwvxvwvgvxwwxwuhwwgwxxgxwxwwxwwvxxxwxvxxwxgwwxwxwxxgvxwwxwwxwxxwwwwgvwwxxwwhvwxwwwvxxwgwuwwwwwhwwvxwwwxwwwwwxwwwwgwwvwwxwxxwvwwwxgxwxwxwxhwxwxgwwxwxwxxwxxxhgxxxwxxwxgwxxwwxvwwFwtwVvuveffvuuxgfVvggvwggwvvwvwwwwwgvwwwgfwwfxwvwwwxwxeuxWvfvwfwfgewwWugwFFwwwvhvwwfwwxwwgwwwxwwwwwxwwxxxggwwwwvwwwxVwwvwwhgwwxwgwxvwwwwwgfxwwxwxwwwwwwhwvvgwwwwxwxwwwwwxgVxxwvwxxxwhxvwwvwfvvwvffgwvxfwwggwwxWuwwvxwwwwvxwwwxwwvxwwwwwxwwxxwwwwwwvwxWewwwwwwwxggfwhwxxwgxwwxwxwwwxwxxwwxwxwwwwgwwwwwwwwxwxwxwwvxgwvwxwxxwxwxwgxxwxxwxxwxgvhwxxwwxxwwxxxwxxwyxwwwwwwxwvvwwgewfgwvffvuwwwwwgvwwwwwwxvwxvwvgwwfwwgwgWwxxgwwvvwfvgwgwwwwxvwxxwwhwxwwgwvfvwxwwwwwwxxwggfwwfwwwvvvwwwwxwwxxwwxxxwwgwwxwxhxwwxxwwwwxwwvxwxxxxxwgwxxwwxxwxwxwwxwwwwwwvwwgwgwwwvwwxwxwwwxwwwwwwwwWvwwwwxwxwwwwgwwwwwwxwwwxwwwwgwwxwxwxvwhvwhxxwwwxwwxxxxwwxwwfvwxxxxvwxxxwxwwwxgxxwvxwxxwxxxwwxxxxwxwwxxgxxwhxwxwwwxwxxxgwxvxvvvvwwvxgvVwwwwwwwgvWxwgfwwvwgvVxwgwwxwwggvvfWwvxWwvvvwgvUuwwwgwvggvWwwwvwxwvwggwevvvwwuwxwgwwvWwxwvhxwwvwwwwvwwfwxhwwgwwwxwwwwwvwwgxwxxxwwxxwwwvvgwvwwwwxvgwwwwwxwwwvwwwgxxxwwxxwwxwxwWxwugxgwxwgwwvwwwwxwwwvgwwvgwwvggwvwwvwwvhwxvgxxgwwgwwhgxwwwwwwxwxwwgwwfwwwwwwxxwgvxwxvxgvwwwvwvgwwwxxwwwwwxxwwxxxvwxvwxxxwxwwwwxxxxxhwxwxwwwxwxxxhwxwwwwwfwwgwwwwgwwggxwwwwwwwwvuwwwwwwwvvvvwvwxwwwgvfvvgxwwwxvxvvuwwxwexxgvvxwwxwxwwxwgwxwwwxwwxwwwwhgwhwwgxwxwwxwwwwwxxwwwxxwwwwxwwxwwwvuwxwxwxvxfwwvwxwwxwgwvewwxxwwwwwvgvuggxxxvwwwvwwxxwwwhwwwwvvxwwxwwwxwxxxxxxxxxxxxwwxxwwwxxxxxxxwwhxwvwwxuwwwwwwwwwwefwwvwwffwwwVvfgwUwvxwvvvwfvwwwxvwvvfuefgwgwwwvuwwvvvgwvwgvwwvffvwvfwvvgvgvwfwwwwvwwwwguegwgVgwwwwwwwvwvwwwvwwvwgwxwwwwwvwwxwgwxwuwwxwvwxwwwxwwgwwgwwwwwvuwvwwwxfxwwwwxwxxvghgwwgwxwwwwwvwwwwwwwwvvvwwwxwwfwwwwwwguvwwxwwwwwwwwxwwwwwwvwwwwvwwhwwvxwwvwwwwwgwWwwwxwvwxwwwwhwwhgwwxwwxwxwwwwxxwwwvxwwwwwxwxxxxwwxxwwvxwwwwguwgevwvwgwuffuvgwgwwwwvwwvwgwgfwwwwwwwwwvwwgwuguwgvxxwwwxvwwwwwwwwwwvxxwwxwwxxxxxhxfxwxxvwwxwxwwwxxxwxxxwxxwwwvvwvwxfvvvxwvvwwwwwwxwwwggvwxwwxwwvwvxwxvxwwwwxwwwwgwwxxwwwghwwvxwwxxxwxxxxxwxxwwwhwxxwxxwwwwwuvwwfvwwgfwwhwfWvsggfFvfvvfgvggvufvggvwwgwfwwufffwvfwwvxvwwfvuwwftvwvwwvxgfftwwU6wwwwhwgvvfggwvwwwwxwxwfwuwvxvgwxwwwwwxwgvwwgwwwxwxvewgxwwhwwwwwxgwWwwgvgvwwwvwhwwwwwvvwwwvvgxwxwhxwwgwwwwwggexwvwwxxxwxwwvxvggwWgxwwxvwevvgxfwwwwwwvWvvxhgfwvxxwvwvvgwwvwwxxxwVwwwxwvwwgvgwXgvxwxxwgfVxgxxwxxgwwxwvvwxgwxxgxwwghwxwwxwxxxvxxwfwxwgwwwxwwvwwxwwxxxwwvwwwgwxvvxhhvxxxwxwxwwwwwwwxgwvggvvguwwwfwwwvxfVvvwwvwgfwwgVfwvwwwwwvwfvvfvwwwvxxvwgguvwgWwwwwwwwwwwwgwxwwvgugvwhwwwvwwvxwwvvxwfVgwwwwgxvwxgwxxxxgwwwwxxhwxxwvwwwxxwxxxwwwvwxxwvwwxwwgxwxgxxvwwxwxwwwgwwwwfxgwXwwvvwwxwxvxwwvwwwgwwwxvvxuvwwhvwxwwgxwxxwxwwxgxwvvxwwwwxxwhfvwwXwwwWwwwxxxwxwwwgwxxwwwwwwwwxxwwxxxxwwwwxwxwxwwwhwxwwgwvwxwxwwwvxvgwwfvuwfvgwfgfvvwuwvgUwvwfwfwgwvfeveUDvVxgwvwvggffggfgwvxwwxwwgwgUDvvwfwweggwfwwwwfwvwwwfWwgfwvwffwwugfwggwwgvwwvgwgwvgwvvvwfwwwfwwwwwwwwgwwwwwwwwvwfwwwvwxxwwwxgwgxwgxxxvgwfwwvwwwwwwwwwwuwfghwwwwvvwxwxwWxhgwxwwwwwwgwwwfwvguwwxvvwwwxWfwvwwvgwvwwgvwfwwgvwwwwvvwwvvWvwwwwwxwvwwvwwwwxvxwwwwxxwwxgwwwwwxwfgxvwwwfwfwwwwvwwxwfwwfvvxwwwvxgwwwxgwwwwxxxwxxwwwgwxwwxwwxhhxwwwwwwwwxvgxwwwwwWxwwwxwXwggxxxggwxgwwXgwxxwxxfvvfguvwwvwwvvuwfWggvvvwwwxfwwwwfvvwwwwwwwweuwwxxwwwuwvwewfffwvwwwvxgwwgeguxwwwwwwwgwfwwwgwxvwwwvggwxVxwvwwwvxwxwuxwwxvwwxwvwwvwxwwxwwwwvgxxwwhxwwwxxwxwxxwxxwxwgwxxwxwwvwwwwxwwfwvwwfXvwwwwvwwvwwwwvxuwvwwwwwwwxwwxxwwwvxwxwxwxvvwxWwxwxwwfwxwfxxxxwhwwwfgvxwwwxwwxxwwxxxwxxxxwxwxxwwwwfxwwwxwvxwwxxxwgwgwxwhvVgfxxgwgvwgwvwvvxgvWwggvwxfgwvfvvwgwwwhvgvxfgvWwwvwwwvwwfwwvwgwwxgvVvwwwwwwfwwwwwxwwxwgvxxhwxwwwwxhwxvvwxwxwvwwxwvxwvwvuwgwxwgwuwxxwwwwxvwwwwxwxwwgwvgwwxwwwgxxwwvwgwwwfwvxwxxgwwwhwwwxwwxwwhgwxxxwwwwwhwwgwwxxxgwxxwxwwwuxwxxvwxxwwvxwwwwvxwxxxxwwwvxxxxwxxxwwvxwwvvwvgwwwggvvwwfwwgwwwgwgwwgwxwuxwwwwgwwvwvvgwwwwwwgwwwwwgvwwvxvxxxxwxxxxwwwxxxwxxwwxxwxxxxxxxwwwwxwwxxwxxxwxwvxxwwhwxwvwwgwwwwwuxwxxvvwvvxgwvxxvxvxwxwwxgwwwxxxxxvxwwwwxwxxwxxxwxxxxxxxxwwwwwwvwwxwwwxvvwxgwgwgwwwxwwwxgwwwwwwwgwwvwwwwwwvgwxwwgwwhwwxwwvwwgwwgwwgvwgxwwwfxwwwwgxxxxxxwwxxwwwwwwwxxwxxwwwwwwwwxxxwvxwwwxwwxwwxwxwxxwxvwxwwxwxxwvwxgvxvhxhwwwwwwxwwwxxxgxwxwwwxxwxxwxxwvhxxxxgwxxwxwxxxwwhwxxwwxxwxxwxwwxxxwxxwxxxwxwxxxwxwxxxxxxwwwwgwwwwxgwvwggxwxxxwxwwwwwwvwxxgxxgwghwwxwwfwwxwxwwwwwxxxxxxwwwwxwxxxwxxwwwxwxxwxwwxxxxwwxxwwwxwwxwwfhwxgwgxwxxwxxxxwxwwwvvxxxxxxwxxxwxxwxxxxxxxxxxxwxxxwwxxxxxxxxxxxxxxsvfwfvwfwfwfffvfvvfwwxffGwwwvvwgfwwwwwxvgfvwwwxghVfeVffffV6tdvVuvvvwwxvwuwuwwwVvwVfvWvwgwwxvwvgwwxwxwwwwwgvewvgvvfVevfwwwvVgvwhwvgvvwwwwvwhwwxwwfwgfwwwxvwwxxfFVvvvgffwffwvgfwwgxfwwwwxfgwwwwwfxvwxxfvxwwgvwwwwwwwgvvvffwweewwgwgWxwwwxhxWvwwxwxxwxwwwwwwwwvwvvhwvvgwwxwwwgfwwwwgvwwwwwxwwwxwwwxwxvxxwWfWfwwgxwgwwxwfvwvxwwwwvwxvwvwvwxwwxwwxxxxwxxwvgwgwwxwwwgvwghxhvxwgwwwwwwxxxxwwhxxxfvfugeVfvgwwgwvfvgvvwwxvvxxxugfuvgwwwwwvwxgwwwhxxxwwefVdcuVugfuwwwwwfwwwvwwgggwUwwwwvwwwXwvwxhwwwwxggwhwwxwwvgwggwfwvxwgwwwwvwwwwwwwwxxwwwwwgwwxwxwwxwxwxxwfvfwwwvfgvwwwwwwvwwxgwwwxgvwwwwwxwgwwxxvwveWuvwwgxtfwwwwwxwwwwwgxxwxxxxxwwhwwvxxxxfvwwgvwgwvuwwwwwwwgfwwwwvxwhwwxxwwxwgwwwwhwxxfwxfvxwwxxwxxwwwwxwwxwwvxxxwxxwgxwwwxxwxwwwxwwwxwwwwwwwwwxwwwxwxwwxwwwxvxtwfwwwwwfvvvwewvwwwwwvUfgVwvwwvwxxvgVwwvvxxEvugwfeUeVwggvgegEuwwwxevevgvxvgfvewwwwuvgwwfwvwwwxxfwxwwVuxvwwwwwwxfEUvwwwwwxwgwwwwxgexxxwwwxeVfwwwvwfwwwwwgwfgUfxgvwwwfwwxgvxvwxwgvwgxxwwwwfwhgVvwwvwwvwvwgvxwvwwwxxvwwgwxVvwvwwwxfwwvwggfgwwwxwxwwwvwxxxgvxwvwwwwwwxxgwwxwxygwfvwgvvwwwwwwwxxxxxwxxhwvxgwxfwwwxxwwgwwggwxxwxwwxxwwxxxxgxvwxwwwxwxxxfvvvugVwfgwvvvwuvwvgfwvxuwwgwxwwwvxxwwwxdffugfwwTugvvgVvevwfwxvwfwwxgwwvwwxwwwxwwwwvWvxxfwgxwgvwwwwwxwwvVfwwwxgvxxwwxxxxvxxgUvvwvwwwwwwvvwvfewgwwxxwxwxxxwwxwxwvvfvvwwwwwxxxvvvwwvxgevxvxxxwwvxxVgwxfwvxxwwxwwwwxxxvwvxxxvwwwxWvwwfwwxVwwwgxxvwwxwwwwxxxxxwxwwwxxwxvwxxwvwwwwxwxwwgxxgxxewxuhhwwwwWvwvvgWuggwffeWgwwvxxwvwwwwwxvwvgxwwvxwxwwxwgwvggwuWeWvwwvxgfVwwwwgwWwwvgwXvhgwwwwwxgwVwwgwwxxwwxwwggwvwwgwwxfeWvfwvgwfwwxxxwxwxxxxwwwwxwhgeWgwwwwwwwwwwfwVwwvgwwwxwwxxxwwwwwxxxwgwwwwgvwwvwvgwxxxwwxwxwwhgwxhxwxxXwxxxxwwgxxxVgxwxxxwwwxxgvgwwxXwxxwxxxwxwXwxhgxwwwwwvxwxwxxxxhwxxvxwhhwxgwhxxxxxxxxwxxfhxxxxxwgvWwxxxhxwxwwxwxwghvvwvWwfvuhvvgwwvwwwxvwxxgwxxxxwxxxxxxWvgwgwwwvhvwxgwgwwWggwxwxgwwwxwwwgwwwxvxxwxvxwwxgwgwxhwxhwwxhwgxxxhwxwxxxwwwwhxxxgwgvxwxxwxwwhwxwxxxxxwwfwwvhxwwwgxxxfhwwxxxvwvhxxxhxhXWgwxxxxwwxxwgWxhxxwwxwxxxxxwhwwwxwxwwgwxxwvxxxxwxxwhxxxxxxxxwxxxxxwyhxxwxxxwxyxxxxxxgxxxtfwwfwvwxwwvgwfvvwwwxwgfwwwfvvwvwWgwwxxfffwwxwwxxwVvefvvvgffvfwxfffwwvwfvfvhwwVgFufvvwvxwwwwueefwwgwxvwwggguwwfvfxgwwwfgwwwxxwwvVevwvwwwwwvwxvxwxfVevvvwwwwxwvgwvwwwxxxwvgwwffwwwvwxxwwwwwwxwwxwwvwwwgVgwgwwwxwwwxfwgfvvwgxxxvwxwxwxwwwgwwxxwwgvwhxxgwwxxwwxwxxwwvwxxwwwwvwwwfvxxxwvwxgvfuwvwwwwwwxwwhgxxxwwxxxwwwxxxwvwxwwwwwwwxwvwwgxwhwxwxwxhvwwxxwffvvvgwuwgggVgvwwvwgxwwvwvwxwwwwwxxxUWfufxwwwwvwddffwwwxgwwwfvvwwwhvvwxhwwwwwgwfgxwwwfgwwwwwwwwhwxfwwxwwwxxgvxxxgwwxxxxwfvwwwwxwwwwwgwwwwghwxxwgvwwwwvxxwwwwxxwfffuuwwwwxxvvwwxxwxgxxwwwwwxvxxxxwwgvxwwxwvwwwwwwgwwwwwxwwgwwxwxwwwgvvwwwgvvxwxwxwxxvwwxxxwxxxwwxwwwwxxwwxhvwxxxwwwvwgwwuggwwwwwvvwfgwvwwwwwwvgfwvvwwvwwwwgwwfuxvxwfvvwwwvwxwwwvwwvwvgfwwwwvgfwfvvwwfffwwvwvwfvfvwwwuwwwvvwfuvwwwgwhgwwwwwwggwwwxvxwwwgwwvwwwwwwwgfwwwgfxxwwwxxwxxxxwxwgfgwwwgxwwwvwwxxxvwvwwvwwwvwxwwxuxwwwxwwwwxwwwwwwwwwfwwwgwwvwwwwwwvxgxxwvxwwwwguxwvwwxxxwwwwwxwwwwwwwwgwwxxwvvwwwwwxwxxwwwwxwggxxwwxwwwwfwwwxwxwxxxxwwwhxxxxwwwwwwxxxxgvhwfwwxxxxwxxwwwxxxxwwhxvwwwxxxxxxhgxfvwgwwwgvxvfwwvwvwufwwwxwwgwwwwxwxxwwwxhvxvgwvwvwxwvwwwwwwwuvwxwwgwwwwvwxwwwwwwxwwwwwwwvvvxvwgwgwwwwxxvwwgwwhxwwxxxxxwwwxwwwwwhxwgxwxwxxugxwwxwxwxwwxxxxwxxwwxxvwwwwgxxxxguwwxvwwwxxxwwwwxxxxwxghxwxwwwwwwvvwxwwxwwwxwwwwwhwvwwwwwxwwwxwwwgvxwwwvvvvwwwxwwhxxxuxwxwwwvwwxwwwxwwwwwxwgxxgfwxwxxxwgvxxxxwwxvxxwwxxwfwxwxxvgWwwwvwWwvwvwwwvgfwwvvgufvwwvwvgwwwgwvwgvxgwvwwgfvwwwwvwwwwgfwgvuvffuwVfufWfuvgWgfWfUfggfWvwwvgwvvwuwvwfgfgwwggewwgwfwfvxwwxwgvwwxWfvwxwwwwwwwwwwwwwgwwwwggwvwxwxgwxxxwwwwfwwgwvwwvgwxwwwgwfwwwwwxwvvwwwwwxwwvwxwxwwxwxwwwxvwwgwwgvvwgwfvvxwwgvggwwwwwwxvwxwxhvxwwwwwhwwwwwwwwxwwwgwwwWgfxwggwwxwwwwwvwwwwwwghgxwgxvwgxgwwwwwxwwwwwxxgwwwxhxxwxxxxxwxxxxxxxxxxxwxgxxvwwwwwwwxxwxhgwfuxxgxvwwwwwxvxwxxxwxxwvvxwwwvvgwwgwvvfwwwvwwgvvwwvuwxgvwwwwwwvwxwxxhvwxwwfvwvwwwuuwwfvwUVfvwWvWfgvwvuwfwwvwwgwwwwwxwwgwwvwwwggwwwwgxwxwwwwwxxfxxwgwvxwxxhxxhxgwvXhvvwwwvwwwwwgwwxhxwwwwwwvwwwvwxxwwwwxgvhwwwwwwwgvwxxwwvxxxwxwxwwwxwwxwwwwwwxxwxwxwwwwwwvghxwhhwWgwwgWwvwxwwxwgfvwgwvxxgwwwwwwgwwxwvxwwwxwxwwwxwxvwxxxhxhxxxwwwwwxwwwxwxwwxxxwxwxwwhwwwugVvwwwvfwwwgwggvvwwgwwvggxvxwwgwwgvfWVvwwwwwgwwwwwwwfvugvfevfVUvvvguWfvxwwggwwhwvvvefeuvvgwgVevvwfgwvwwwwwxwxxgwgvwwvggugwgwvgvwwwwvxwghfvwwwwvvhhwgwwxwfgUgwvwwxffvwwwgvuwwxgwxxwfwwwvWwwwwwwhvwxwxxxwwxxwwvxwxxgvwwwwwwVvxwwvxwwwwwwvwvwwwvwwxwwxxwxvwwwwgwxwxvxwwxwxwwVxfwwwwwwgwwvxxwvxwvgwwwwxwwwxgwxwwwwxhxwfwwxWwxxxgwxwwxhhxwhvgxwxvwwxxwwxfwxxvwxxwxwxwwwgwwxxwwwxxgwwgwgggfvxvgvwwwwvwwxwwfgevwvvwgwxxwxwgwxwwxugvewvvwwwvwwuwvvvwwxvvwhgwwwwwwwwwvwwwwvvvxgwgvwvvwwwwwwwxvgvxvwwvwwwxvxvwvxwwwgxxwwwwxwhwwxxxwwwxwxxxfgfwvwvwgwxwxwwwhwwxwxgwxwwxxxxxwwxwxwwxwwxxvwwwxwxwwxxxwgxwxwwwwwxxwxxwwwwgxgxvxxvwwwwgxWhwwxwwwwvwwxwuwwxwxwxhxxwxwxxwxxxxxxxxwwxxxxwxxxxhxwxxwxwxxxwxxxwxxxwhwwxxxwxxxxuxgxwwwwvwwwxfwvwwvwvwvfuvgvvvwxvwfwvwvwwwvuwgwwvwwwwwwwvwwwufvuwwgwvWfvgwgwfvewggvwfwwwwwgWggwwxwwwwwwwwxxwvwwwwxwwwfwwvgvwhfwvwxxwxwwwwwwxxwwwxxxwxwwxwggvggxfwfwwwxwvgwwwwxwwwwwxxxxxhwwwxwxgwxwwwwwwwwwxgwwwwxxwwwwxxwwwxwwgxxxwwxxwxwwwgwxwwwvwwwwwwxxwxxxxwxwwwwwwhvwwxgwwxxgvwwxvwxxxxxxwxxxxxwxhxwwwxwwxwwwwxvxwwwxwwwvwxwwwvfwwuvgwgwxwwwwwwwwwwwwwwwxwxxwwvvwvvwuwxxvwvwwwwwvxwwwvwxwxwxxwxwwxxwwxwwwwxxxwwvxxxwwxwwxxhwxwxxwwxxggwwwxwwxwwwwwxxwxxxxxwwwvvxwwwwxxxwwhxwwwwxxxxxxxxwxxwwxxwwwxwxwwxwxwxxxxxxxxxxxxxxxxxwxwxxwxxxwwxxwwwgxwwwwgwfgxvwggggvxhvxwwxwxwxwgvgvvgwwwwwgwfggvwgxfvfvwfvgwxvwwxwxxwwwfwfwwvxxvxgwxwwwgvxwwwwwxgggwxgwwwxggvgxwxgwfgxhxxxgvgvwxwwwxxwxvwgwwhwxwgwfgwwgwwxxwxwxwwxwxxxxwxwvwxwwwwxhxvwxxxxxxvwhwwgwwwwwxxwghxgwgxxwwwwwhxvwyfwwhhxwxxxxyxxxxxxxxhxvwxgxwxxxxwxwxwxhxxxwwxxxwxxxwwwwxghgvwwvvxxgwwwxxwwwwgwfwxfwwwwwwwwwwvxxwxwwwwwxwgwgwxxwwxxxwwxwxwxxxwwwvhwxxwxxxxxxvwvxxxxwxwwwwxxvwxxxwwwxxxwxwxwwwwwxvgvvxxxxxwxxwxxxxxwhgvxxxwxxwwwxxxwwwxhwxxxxwxxwwxwxxwxxxwxhxxxxxwxxxxxxxxxxxxxxxxxwxtgvvvvwfevuwvwVwwwwwgwuwwwwweuwvfewwvwxwvgwgwwwwxxVutgefEeegewfgefweVvgwwfvwwgwwffevevefgvwvggwgvgvwuwwhwxwwVutwvVTwgwguguwgvgwwwwxxwgwwwwwwwvhwxgwxwhvxxxgeWfffveUewvwwxhwwwwvwvuwxwwgwvgwwfvwwxxwwwhwxxvxvvwwuwwxgwvwvgwgfvwwfFuxvgvxxfwggvwwwxwggvwgvxxfggfwwvwvwwhgvwwvWuxwgwxxwwgwfgwwuwwgwwwgvwvwwwwwwwxgvffwwwwwwwwvguxxgwxwwxwxvwxhxxxwwwxwxhwxvwwwwwxvwwxwxvwvgvxwhwwwwwhxxwfwxewvxwxwwxxwxUuuvugfvuwwwghtgVwfwwxVxxwfgwwvwvwxxwxfvwwgwxxxxdfeufeffWwvwxwvvvvxufwwxwgwdufvwwfwwxwwhfwwxwhwwwwwvwxwwgvffwwhwvvwhwxxwwwwWwxgwwxxwvxwxxwxwwvfvvwVvwwwwgwggwxwvxwwwwwwwwxwwxwwwwwwxwwxuvgwvwwuvwwwxgfvwgxvxwxwgwwwwwwxgwxxwwwfwvwgwvwwwxwgwvgugwwxwwwwwwwgwxwwwwvwvwwwwwwxfgvwwwwxwxxwxxwxwwwxxwgxwxwxwxggxxxxxwgvwwwvwxxvxwwwxwwwvxgwwwwvwxxxvwwwxwufFwWwfvfwgvgegVwvvwfgvggwgvwgvvvwwggwgvfvggvwvwwgfvgvwvfvugvVdvfgfffdfwvwgvgwfwuguvwxwffevuwWfwfvwwWvwgwuggvwwwhwwwwfvvxwgWgwgvwwwvwgwvWggwgwxvuwvvgxgwwxwxxwwwwwxwwfwfgvWgwffwwwguwxwfgwxwwxwwwvvvwwwwwwwwxwvxvgwwwwwvwwwwvwwvvwwfvvwfwvwuxwxwggwxwwwwxwvwwxvwgwxxwxwwxwxwwvgwwvwwgwwxwwwwgwwwxwgxxgwwgwwwwvxwgxwxwwwfwwxwxxgwggwvgwxwwwwgwxwfxwxwxwxhxwxwwggxwxgxwwxwwvwvwwwxwwvvxwvhwxwvxfhggwxwwxxwwfugufvfwgwfwvfgwvxuwvuwwwwgwwwgvwgwggvgxfwxxwwuefvdfdfwwugvggvwxwfwwwwwvvwvfgwwwvwfgvfwvwwwwwvwwwxwvvxwgwWwwxhwxwgwwgvgwwwwwxwxvxwgxvvwwgxwgxvxwxgwvgvwwfwxwwwwwuwwwuwwwxwwxuwxwxwwxwwwvwxwwxwvwgvwvwwxwuvwvgwwvxwwvuxxxxwvgwwgwghxxwwfxhggvgxwvxwvwwvwfwgwvwxwvxwwwwxgvxwwwwwwxggwgwwxwgVxwwwvxwvxwwxvxxxxwwxxwxwxwwwxwxvwwwwxwxwwWwhwxxxwgwwwxgwxwhwwxxxxxfwxwxxxxwwwvwwwgwgvgwwwwwewevewwwfwfwgvwwgwfwwvwvvgwvwgwwwwwwgwwwxwwgfgwgvvvfgewuvUwgwvwwVgWgfvwggwwwwuvwwVwwvxwxggwwxwwgxwxwvggwxwwevhwvwvwfwgwwwwgxgwvwwxwvwxxwwxxxxxwxfwvvfwVwwwvxwwwfvxxxwxvxwwwwwvxwwwxwvwxwxwgwxwvxwwxwwwgwwgwwwwwwwwwgwwwwwwwwvxwwgwwwwxwxxxhwwwxwwwxwwfwfwvvvwgvxvwwvwwxxwxvwwxwxwwgwwwwwvwxwxxwxwwxwwwxxwwwwwwwwwwxxxwgwwxwxwxwxwxwwxxwxxxwwgwwwxgwxxwwxwwwxxvvwgwxwxwvxxxhwxwwwwhwxwwxwxwxgwxwgfwvwwwvwvvgwfwxwwgxvwwvwxxwgwxxxwxwwvvuwfwfwwwwvwwwxgwxhxwwwwxgwxwwxxwxxwwhgwxxxwvxxwwwxvwwgwwwgwxxxxxxvwxxwxwwxwxwxxhxwwwgwgxwwxwwxwxwxwwwxwwxxxxwxxwxwwxxwwgwwvwgwxxwgwwwxxwxwxxwwxwwwwwxwxxwxxvwvwwwwwwwxwwxwwxgxxxwxwxwwxxxxxwxxxwhhwxxxxwwwwxxwwwxxhhwxxwxwxxxwxxxxxwwxwxwxxxxxxxxhhwwxwwxxxxwwhxwwxhxvxhwwwvwvvwvhwwwwwwxwwwvwvgwfugfwwwwgfwwwgvwwwxvguvgvwwwwxwwwvwxvffgwggvwwgvwwwwwwwwfhxgffffvfvggwfwgwwwvgvwwwvxxxwxwwvwwwgwhwwwugwxxwxwfgwwgwxfxwwvwxxwwxxxwwwuvvwwwwhwwwwwxwvxxwvgvwevgwwwxwwwwwwvvxxxxxwwvvwgxwwwxxwxvwvwwwxwxxxwwgxxxxxxwwvgwwxwvwxxwxxwxwxwxwwvvgwwgwhxwwwvxgwwwxvwwxwxxxwxxhxwxwwxwwwwxwxxwxwwwwwwxxwxwxwgxxwwxwwxwhwvwwwvgwfwvwghvwwwxxwwgwvvwgwxwvwwvxxwxggwgvwwwvvvwwggvwwwwwwxwwwwwfwvwwwvwxwwxxwwvwxxwgwwwxxxwxwxgwxxhvgxgwgxwxxwxwxwxwxxhwwwwgwxwxwxwgxwxwxwwxxhxwwvwxxgxwxwwxxxxxwxxxxxwxxwxwxxwwxxwvxwwxwxwwxwwwxwwxxwwwwxxxxwxxxwxhxwxxxxxxxwxxwxwxxwxwwxxwxxxwwxxxxxxwwwffvufwvvvvugfxegvuuevfffuvwvvfvwfwwfvvvvfvvfvvfuuvwwwwwwgVguuwufvfvufgevuvfvfvufUwgwfwvvvfffeuuwwwwwfuufwwwvxwgwvvwvvwwfwwwwwwwvgvvvwwwwxvgvwwwwwwwwxxwwgwggvwwwwxwxwvwwwwwwwwwwwwwwwwxvwxwwvwwxwwwwxwxwwwwwvxvwxxwwwwwwvwgwwgvvwxfwwvxwwxwwuwwwwwwwwwwwwwwwxwwxwgvwvxwwgxuxwwvwxwwwwwwwwwwwvwwwwvvxxxxwxvwwwwwwwwwxwwxxxwwwvxwwwvwwwxwwxwwwxxxxwxwxwxwwxvwvwvfvwuwwwgeugvvvewvvvvwgvgwvwwvvvwxggvvwwwxxgwvxwgvvgwvvgguvwxggvwvgwwwwxfwwwwggvvvwwwxxxxwxxwwvwwwwxxwwghvwwxxwvvwxwxxwwwwwwwhxwwxxwxwwhwxxxwxxwxwxwwxwwwxxxxxwxwwxxwxxwwxxwxwwwxwwwwwxwxwwxwxwwwwxxxwxxwxxwxwxwxwwgwxxwxxwwxhxwwxwwwwxxxxwxxxxwwhxwxxxxwxxxxxxxxxxxwxwhwxwxwxxxxxvwwgxwvvwwxwfwvgwgvwvWgfvvgwwwwvwwwwvvvwvgfwwxgwwwvvggvfWvwgwvvvhvffvggfwgufgwgfuvWVwvwvvfvvwvwwggeefvWWfwwgwwwwwwwgvwwwwwwwhuwwggwgwgwxxwxwwxxxwgwwhwwwgvwwwwwwwxxwwwVwwwwwffwwwwwhwwvwwwwxwwvwhwxwwwgxwxwvwgwwvwxgWwwwwvwwxxwwwwwwwxgwwxwwxvxhwxvwwwwwvvwgvwxwwfxwwwwguwwwwxwwxwwwwgwggfxxwwwxxgxwvwxwwwxxwwwwxxwwwwwgxxxwxwwwxxwhwxghwwwwwwxwwwvfwxwwxxxxxxwxxwxwxxwvxfwvxwwvxgggvwwvxwwgwwwxwwwgwwwgwxwwwvuwwhWwwwgxwgggvwgwgwwwvfgwwgwwwxwwwwwwvwvxwwxwgwwwwwwwwwwwwwwwwwwwwhwxwgwgwxxxxwxwxxxwxxwwxwwugxWwxwwwxxxxxwxwxwhwwwxwxxxvvvvxxxwwwxxxxxhxwwwxwxxwxWvwwxwwwxxxgwwxwxwwwxxwwwgwwxwxxxxxwwwxwwwwxwwgvwwwxxwfxfxwxwvhwwwwxxvvwwwwxxxwxxxhwxxwwgxxwwwxwxwwxgvvwwhxwwwwwwwxxxwwwwwwxwhxwxhxxvwwwxxxxwwwxvvwvwvggvfwvwfwfvwfwwwwwwvwfewfgvfevevwwwwwwvfgwvvgwVvwwgwxvwfvefeffwffwvuvwvegegugwgvfVevewfVvVgwvwggfwwgwwgvgwgvvvwfwvgwwvwvwggvwwwwwwwwwwgwwxhwxwvwvgwwgfxxwxwwwwwwwhxxwxwgfwvwgwgwwvvwvwwxhwwwhwxvwwwgwwwwwxwwwxwfwwwhxwxwwwvwwvfxuwgfvvwvwwwwvwxgwwwfxvwwvwwxxvwxwvwgwvhxxwwwwxwwwvvwxgwwvwxxwvvghgwVwwwvxwvwhwwwwxwvvxxxwwwwghwggwwwwwxwwxxwwwwwwxwgfwxxxxxwwxwxhvhwwfXxgwfwxwwxwvwwwxwxwhwwxwgvxwegwwvxxwwxxwwgvwuwevwfgfwxwgxwvwvwwfwWwvhwwwwvvvfwwwwwgwfwfxxhwwwwvvfffvfwwvwwvwfwgwwgvWgwwvwfwwgwvvwwgwgxhxwwwvvwvwxwgwwgwhwwhgWhgwwhxxvwwfwvvwhghxhgwwhxxxgwwwwxwxxwgwwxfxwwxwwwxhxwxgxwwwxxwwwxxwwxxxxwxxwwwwwwuwgfvgwxwxwvwwwwwffgvwwwgfvvwwxvxwvwxwwgxwhwwwgwgwgwgwxvxxgwwxgWwfwgwxwwwwxwwvuxhxwwwWwwvwgwvhxxvvwwvgwgwwgwwwWwwxggwxvwvxggwwxhwxwxwxwwxwvxuvxhxxxxgwhxvwhvwwvwwfxwxxXwuvvwvxvwVxgwvwfvxwwvfwuwgwvvwwwfwwvxwfwfwfwwwwvvffwwwxvvvwwxvgwvvwwvwwfvwwvwvVefwwgfvuwuxfvfwvgwvwggvfvvwVwevuwwvwggwgwgwvwwwvxwggvwfVvwwxwwggvwwwwwwwvwgxxfwwwwxwxxwwvwwvwvwwxgwwfgwgwwwgwwwvvwwwwwxxwxxwwwwwwwwwwwgwwgwwwxwwwwwwgxxxwvvwvwvwwwwwxwvxwwwwwwgwxwwwwxwxwwxwgwwwwwwxgwxxwwvwxxgvwwwxxwxxxxwwxxgxvxxwxwwxwwwwxvwwxwxvxxxwwxwxxxxfxwvxxxxwxxgvwuwgvwwgwvvfwwgwwwgwwwvwwwvwwwwwwgwffwvxvwwwwwxvvwwvvvgwwvxweewwwwgwfwwgweewwwwvfwhwhwvwvxvwwwvvwwwxxfxxwwwwfwwwwwfvggxwxgwxxwxwvwfwvxwxwhxvvwxwwwxvwwwvxwfxwxwvwxwvvwwwwwwxfwwgxwwwxwwwwxwwvxxgvwwxwxwwwwwwwvwwxxwwwxvvwwwwxwxxxwwgwwgwwgwxgvwxxxxxxwwgwwwxxggwwwxwfxvxwwgxwvwxxxwxxxxwxwgwxwxwxwxwgwwwxwwwwxwvxxxwwxxwwwgwvwhwwvxgwwvhgvgwvvgfgwvwxwwwwwffvvwvwffvxwVefvwwxgwvgvgvwwwvwvwfggTEwwgggvfxgwgwwffgvwwVufgwwfvwggxgxxxvhwhwwwwwwxwwwxwxwwwxvwgxwvwwwxxwghvvwwwxxxxwgvwhwwwxxwwwwgwvxwwwwwxxwwwwxwwwhwwxwwwwgvwwxwxvxhxxwxwxxvgwxwwwwgvwwxwwwwwwxwwwwwwwwwxxwxwxxxxwwwxvwxwwwwwwxwxwxxxwxwwhwxwxwwxxxwxvgxxwxwxxvxwwwxgxxxxwxxwwxgwwxwxwxxwwxwwxwxgwxxxwxwwwwwvxxxxwwwhwwwwWuxwwxwvwwxgwwvxvxwwwwwwvvgwwwwwwwxxwwwwxxxvwwvwxfwwvxvvgvwwxgwwgwhhvvwgvvwwwwwvwwwwwwwwwxxwwxhvgwwxwwwwxxxgvwwxxwxwwwwxwwwhxxxvwxxxxxgxxgvwxwwwwxxwwwxxxwxxwwwxxwxwwxwxxwwwwwWxxwwwxwwwxxvwwwxxxxxxxwwwwxwxvvwxxwxxgwwxhwxxwhvwgvgwxwwxwwxxxxxwwwgwxxxwxwxxxwxxxwxxxxxxxxxxxwhxxwwwxxxxxwwhwwvhwwfWvxxwwwwwgwwxxwwgwgwwgvwwwwwhwxwwhwwvgvfvwgVwfvggvgwwwwfwxwwgvvwvvwwwwwwwwwwvwxxhwwgVwvgwfwwwgxvwxwwgwwwvwvwwwxwxxxhxxxwfWvwfvwfwwwxwwxwxwvxwxwxwwwxwxxxxwwggvwwgwwwghhvvwwwgvwwxxwvwxwwwxxxwgwwwxvwxwwhxxgxfwwwwwwwwwwvxgxwwgwfwxxwhvvxgwwwxgwxwxwxwxxxxwwxxwwwgxwvwwxfwygwwxxxxxwwwgvvwwwvxwxwgvwwwwywwwwxwwxxwwxxwwgwgwvvwwvwwxwwwwwxggwwuwhwgxxwwwwxwwwwxwwgvwwwwwwwxxwwwxwhwgxxxxwwwwxxxxwxwwwwwxwwxwwwxxxxxwwxwxwwwwxxxwvwwwxwwwwxxwwxxwwxxxhwwhwwwxhxwxwwwvxwxxxxwwwwwxwwxxgxxwxvwxxxwxxgxxxwwxwxxxxgwxwwwxxxxxxxxwwwxxwxxhwwxxwxwxfvgwfwfwgwvgvwfvvwwgffvwwvwwwfwxvffvwwfwwwvwwewvwfvwwvxwwvffvVvvffvffvffwfvwwfvwwvvwgfwvwwvvfvwfwxwgvvvwgwufwwwgwwgwwvwhvgfwgwwwvvwwewwwWggwwxwxvwxwwxgvwxwvwxwxwxwwgwevwvffwwvxwwwwvwwwvvxwwwgxgxwwwwwwwwwgxxxgwwwwxvxwwwgwwvwwwfgWwwfwvwwwwwwwgxwxgwwwvvwgxxxwwwxfwwwwwwwwfwwwxvwgfwxggvxvwwxwwwxwwvwgwwhxwwvwwgwwgwwxgvxxxxxxhxwxxwxxxxwwxwhwWwggxxwwwwwxwfwwxwwxxxvxwwwgxxxwvvwvvvwwgwgvvwvgvwwgwwvxgvwxwwvxwwvwwggwwxwxwwwwwwwvvwwvwvvvwwwvwwwvwwvgwgwwwwwwwwvxgwwwxhwgxxvwwvwgvgvwgwwvxvwvfwwwvwvxxwwwwwhwwxhvxhwwgwwfwxwwgxwxwwwgwwwwvvxxwwxxxwwxwwwxxwxwwwwwxxxwxwwxggvwxhxvwfvxwwxxwwwhwwwxwwwxwxwwgwwxwwghwxwxxxwgwwwxwwgwwwxxwvwxwvwwwhxwwgxwwwwwwwwxfwgwvwvwwwwvwwwfxwwhggwwxwvxxxxwxwgxwhxwwwxhwgxwxxwwwwxgwxwgxwvwxxwxwhwwwwwxxwgxfwggwwvwvvvwgvwwvwwggwwfwvgvwwwwhwgwvvwWwxvwgwwxxwgwvgvfevffevfwvffwgvwvvvwxfwfgffuwwgwvwwwgggvgghgggwwhxvwxxwwwwfvxwwvwwgfguwgvwwvwvwwWwwxwxwwhwxwxwwgfvwwuggvwvwwwhwvgxxXgvxwwxwwwvwwvgwvwwxwxwxgwwxxwxwwwwvggwwwwwvgxwwwwvwxwwgvwwhxvwwwxxxxxwwwwwvwgxvwwwvgwxvwwgwgwxxgwwvvwwwwxgwhwvwwvwgxxxxuwxwwwfwvxwxxxgwvwxwwwwwfhwxxwwxxxwwxgxxxggxwwvwhxwwgwuxvvwwxgxxxxvxxxwwhvxwwwxwgxhxwxvwxwgfwxvwvwwwVvwwfWwxxwxwxwwwxgwwxhwxwxvwfvfwvgvwvwgwwggvvgwgwvwvhgwfwwvvvwwwwwwwwfwgwwxwwvvwwwxxxwuvwxggwwwwxwxwxwwwxwxwxxwwwwwgvwwwwxWwwwwwwxvxxwwwxgwxwwxxwhwvxwgwvwhwwwwwxxgwwwwwwvwhwxxwgwwxwwwhwxwwxxwxgxwxwwwxwwwxwwgwwwxxwwwhwghwxvhgwvxxwwvgxxwxxgwvwwxwwxxxwwwhwxhxfxwwxxxxxxwwxxxxxwxgwwhxfwvwxwgwxxwxvxxwxwwwwvwVwwvwwgvwwVfwvwwvwwvgvwwgwgufuvvvwWgwvwvwwvwvvwvvwwwwwvwggfuvwgvfwffxgfufgwUgvvvwwvgegevfvdewwvwdwvwfwtwwvvgwwwxfwwuwhugwwwwvvvwvwwwwvgxwhwwXwvwvfwggwwvwwwwwwxwxvfwgwgwvevwwwwgvvwwgfgwvwfwwgwvgvwvwwwwxwwvwwvwwwxwvwwvvwwwwwwwwwwvwwWwxwvwgvwwwwuwwwvuxwwgxwxxxwwxwwwwwwwgwvgwwwxxwvgwvwgvgvwvwwwwvwvvxWgwwwwwwwwwxxvxxwxwwWwvwxwwvwxwwwwwwwgxwwwgwwwwwwwwwwuxhWvwxxvxwwgwvwwwwwwwxwwwwxgwvxwvgwwfwuwwvwwvgwwwwwwWwwxwgwvwvwvvxwwwwWwwgwwvwhwvvwvefffvwxvwwwwvvwgvWvhxwwwwvuvffuwwwwwuwwvfwvufhwgwwwwhwwwwwhwxwwuwwwwhxxgwuwwgwvwvxwxwwxwuxwhwwwwwvxvvvgwvxwwwwwvwwhwxwwvwxxxwxxwxwwwwwvwwwwwwwwxwwwwgwhvwxxxvwxwwwwwfwwwvhvwxwxxwwwwwwwwxwwxvxwvwxxwwvgwfvwwxxxvvwvWhvwwgwwwghxwwwxxwxwwwwxxxwwxhxxxxwgxwwxwxwxwwwxxwxxwxwwwwxwvwxwhwvxxxwfvwwwwwwvwwxwwwwwwwwwwxwwwwwgvwwvwwwwwwxgwwgvwxwwwwvvwggfxggxwwgvwwwwwwxwffgwwwwwwwwwxggfwwwwxwxwvxwxgvwxgxwgwwwwxwxwwfgxwwwxwwwxwwxwwwwwwwxxwxwwwwxwwxxwxxxwwxwwxxwwwwxxwxwwwxwxwwwxxxwxwwxxwxxxxxxxxxwwwwwwxwxwwxxxxxxxwgwxwwxgwwwwwxvwxwxwwwxwxwwwwwwvvvwwwwxwwwwwxwwxwwxxxxxxwxwwgxwwwvxxxwgwwxxxxxwxxwxwxxwxxwxxxxwxwxwxwxxwwwxxxxwxxwxxxxxxwxwxxxwxwwhvxvgwwxwxxgfvwwwwfuufxwgxvwgwwwxgxfvvfwvwwwgxxvweUwwvwxgfwfuevgwwwvwwgvvvwvggwwhwxwwWufvwgfwwxxxgwgwxgxfwxxwwwgwgfwgxwxwxxwwwwwgwxxwgxwwwwwwxxgvgwwwwxwwwwxxxxwwwwwwwwwxxwxxvwwxwwxwvvfxxwwgvxxgwhxxxxwxwwxwwwxxgwxwwhxxhgwwwwgxhwwxhxvwxxxxgxwwwxxxxxhxwxxwwhwxxxxxxwxwxwxxxxwwxwwwxgxwxxxxxwhxxwwxwgwhxwxwwwfvfghxwxxgwxwwwxhxwxwxghxwwwwwgwxwxwWegvxgvwvwwwwxxwwxwwxwfxvxwwwxgwwxwxxxhwxgxxwwxwwxxxwwwwwhxxxwvxxxwxxhwwwwxwxxwwwwwwxwgwwxxwwxxwxxxxxhxwxxxwwgxgwwxwxwwxxxxhxvxwwxxxwxwwgwwwxxwxwxxxxxxgwxxwxwxxxwxwxxxxwwwwwhwvghwxvwwwgvxwwvwwwwhwwgvwgffwgwwgwwVvwfggxwgvwwwegwwvwefwgfwxvwwuvwwggffvfgwwwwwwvgwwvfxwwwwwwgffwxwwxwgfwwwwwxhwvgwwugwwxxwwwhwxxwxgffvwegwvvwwvgwwvvwwwwwwgvwxgxgwxwxxxwgwwwwvxwhuwxwwxxwwvxxgwwfxhxwwwwxwvgxwwwhxgwwwxxwwxwfxVgvxxwwxwxwxxxxwgwvwwxwwwwwwxxwxhwwwxxxxwwgwxxxxxwxwvwwxwgvxxvxhwwwxwwxwwwwxxxxvhvwwwwwwxwwwwvgwgwwwxwwhvxvgvgxxgwvvvfwwwwwvvhvWxvwxwwwxwwwwwwwwxgwwwxwwvxxxwwwwgwwxuwwxxvxwwxxgwxwwwwxvwwwxwfuxwwwxxxwwwwwwxgfgxwxwvxxxhwwxxxxxwxwwwvxxwxhgvxxxgwwxvwwxxwwgxxxwwxwxvxwxxxwxxxgxxyxxwxxxxwxwxxvxwxxxwxwxxxxxxwwvgwwwwwxwghvfwxwwwwwxwvwfvwwewfvfuvwwwwwwvwvwwwgwfgeTvwwvwwwwwgwewwWgwwwwwwwwwwfvVvwxwWwwwgwwwwwxvwwwwxwxwxgwwxwhwwxwwwwwwwwwxwxwwwvvwwwwwwxwwwxxxwwxwwxgwxvwwwvwxwwwwxwxwfwxxxxwwxxwwxwhxuxwxgvwwxwwxwwvwvwxwxwwwxwvxxwwwwxwwwxxwwwfwwwxwwxwxwxxwwwwwxwxxxwwwxxxxwxxxwxxwxwxgxwxxwwwxwwwhwxxwwxxhwxxxxwwwwxwwwwxwwwxwwxxwwwfwvvgwfxxwxwwxxvwwxgvggwwwwwxxwxgwwwwwwvwxwvxwwwwwwxvfwwxwxxwwxxxwwxxwhhxxxxhgwgxwgxxxxwwxxwxwwwwxwwwwwwwxwfxxxxxwwwwxwwwwhxwxwxwxxwxhwxxwwwwwwWwgxwxxwxxwxxxxxyxxxxxwwxxxxxwwxwxxxwwwwxwwxwxwwwvgvUwvwgegefguxwwfhwwvwuwvwUvffvwvxwwvwwwwwwevwwvwfvfvgwgwUvfffwfWwwegweUvwvfgvwvhwwwfvvwfgfgvwwgwfwwfxwwvwfgvwvggxwhxwxwxwwwwwwxxxwwwwhwwvwgvwwfwwwvxwwwwxwvwxxwwwwwxgwxwwvxxxwwxwwgxxwwvfwwwgfggwvvwxwxwvxxwwwxxxwwxwwxvvxwwwwwwgxwgxwwwgxxwwwgxwfxwwxxwwwwxxxwxxxxxxwxxxxxwwwxwxwxxwwwgxxxxwwxgxwxvxwwwwxwxwxxxwwwgwwwxwwwwvfuweVfwhxvxxwwwxxwxxvwwwwwvwfvvwwwwwxwvvfgwevwhvwvwuwvwwwwwwwwvggwwxfhwwvwwwwwxxxvwwgvhxwwvfxxxxxxwxxxfwwwwwwxwxxvhvxwwwxxxxxgvwxxxxwxvwxfvghwwxwxxxgxxwxwxwxwwwvwvwxxwxwwxwgxxxxxgwxxxxwwxwwgwxwxwwxxwxwwxxxxwxxvwxxxxxxxxxxxwxvxxxwwwwxxwxvwwwwwwwwvxxwwwvvxwwvwxwwvwwxwwwxwwwgwwwwxvwvwvwvwvvvfwgvfvgwwwwwwwwhhgwfwwvfvxwxwwwwxhxxxxfwvxwvvwwgwwwwwvwfwwvvwxwwwwwvfxxwxwwhxvvffwfvwvfwwwgwwwwwwxwwvwwwvwwgvgvwxxwxwxwwxwvwvwwwwgxwxwgvwxwwxxwxxxxxwvfwwwwgwwwwwxxxwwwxxxwwxxwxvvvwwwxwwwxwgwwxxxwxvwhxxwwxxwxvwwwgwwhwwvwwvxwwgxwwxwwwwxxwxwxwxwxxxwvvwwwfwwwwwvfvvvwwhgwwwwwxxfwwwxwxfvfvvfvwwgvwwgwwwwwwxxwxxxfwwvgvwxxxwwvwwgwwxwxwgwwvfvxwwwwwwwwwxxwwwwxxxxxwxxwwwwxwwxwwwwwwhxxwxvvxivwfwwwvhwvwwxxxxwwwwxwxxwxxxwwvwwwfwwwwxwwxwwgxxxxwwvwwxgxwwxxwxwwxfvxxwwxxxwwxwhwwxxwwwwwgwxwwxwxwwwwvxwxxxxwwwwwfwhxwwxxwxxrwfggwvffgfwwWugeggvwwwfVdfgwvgvwwfwwwfwvvwwwgwvwwwwwwxvwfufewgugf4BvvwefwgugwWgfvvwwwVdvwguvwwVwwvvwvwwgwvwwvgwwwwwxwgggwvwwwwwwgwwwfgvgvgvvvwgvwwxfwwwwwxxxVxvhwxvwhfVufewUvvvwwwwvgufvwwWuwwxvvwwfwwvxwxwwvwxwwxxwvfwuwwwwwvwvwwvwvguvwwwwgvvwxgwwfwxwgxwVdvgwvwwwwxvwvxwwxgwvvwggwvgwxwwwwwwuwwvhxwvvwwwwgwvwwhwxhxwxvgxghwxwxxxxwwvewxvvwxwVvfgwxfwxxwghwwxxxgxwwwxwwgvgwwxhwwwwwxwwwwwvwvwwwvfgwfwuwxxxxxvxxwxwwwwxxwxwwwwwvfwfvwwggwvuwvwvwvvwwvvwvgwvwewwwwwxvfwxvgxwwwwvvVdefvevwwvwwwvvffvfwVdwwwwwvwwwwwgwgwwguvvwwwvgvvwvwwgwvwwgvwgvggvxgvhwgvgwwwvhxxxwwvwwxxxvwgvwwwdwwvwgvgvuwwvwwwvxgvwwwwgwxxwwxwwwwvevwwuwwwwwffvxwwwwwxwwwxwwwwwxwwwvwxhgvwggwwwhwwwwwwwvwguvvwwwvgwwxvvgvxwxwxxvwxwgwwwxxvxwwvguwxwwwdwwvwwwxwwwghgxhgwxwxgxhwwxwwxwxwvwwwwwxgwgvwwwwxhwwvhwwxxuwwVvuxewvwvgvwtvvwxguvgvwvwwwwgvvwvwxwwWwwwwhwwwwTvewgegvfwfgvwegXwfeWFevvgvwwfwwgwwfwwwvwvwwwwwwxwwwxxxgvwvvxfwwxgwwwvWwgwwwxgwwwxxwwwwwxxwwxxhwxxwggfwgwwwfwvwvgwwwxwwxwxwhwgvgwfxwwwxxxwxxxggxwwvfwxwvggwwwvxgegwwwhgwgxwwwgwwxxwxwwxhxgwxwguwXgevwwgwwwvwGfxhwwwxxwxxxwxxwxwxxhxxxwxwhwvwwwvxgxxwxwwgwwwfwwwxwwxwwxxyxxwwwwxwwwwxwwwxwhxxxwwwwWwwgxxxxxwwxxxxwxxwxxfwvgwwfwwwwvwgwvfwwwfwwxwgwwvwwvwwwxhwxgxfwvwvgvwvvvwwwwwgwwwwhwwwwwwxwwwhxwwwxwwgwXgwwwwwgfwgvwvvwgwhwxwxgxxxxxgxwwxxxwxwvxvvuvxwxwXhgxvhxxwwxxxgwwxwgwfxvwwwvwvvwwwwhxwwwxxhgxwxwxxxwwgvwwxxxxfwwvhhxwxhhvwwxxwwxhvxwxhwwhwwwxwvxwwvwxvxwwwxwxwxvwxxxxxwwxxwxwxwhwxhxwxwwhxvxwwwvuvxxxwxxxwwxwxxuvvwfuvfwwwgvwwffvffUwwgvwwwgeuvvfgevevvvwvvwwwfvgwwxwfefUeUTvfffvwwvWgfvvwggUvveewvwEdfeffVeevggwwwvgwgvfwwwfgxwWwgvvtuwgvgwvfvvgVugfWvgvwwwgxvwfgvfwvwwxwgwuxwxwwwwxxxgeVfvgfufgwffgwgwfvVwgggWggwxwWfvvwfwffxwwgwgwvwwwuwwfxwwwwvwwgvwwwgwwwvefvwxfwvgwwxwgffvvwgvvxwwwgwvwwgwwwwwwgvUfwwwvfvffwwvvwgwwUwhxwvVhxfwvgwwwvfwwwwwwwwufxgwwggwxxwvwfvwvwwvwxwwwuvewvwhwvgvghwvgvxwwxwxxwwvvWvxwwwvgwxwggwwwwwwXgwgfwvwwfggxvwxgGwwxwhwwfvwwfwwwwgggxxxwxvVvvwwegfvgvgwufvwwvvvwvwxwwwvgwgwfugwgvwWwvvwwwxwwwwxufvvfvffvfwwffwfuvewvvVvgwhwwwfwwwvvvgvwvwwwgwwwwgggwgwxgwwvwvgwvxwxWvvvwwgxwgxxggvwxwwwwxwwwhxxwwxwhwguwgvfwvggwvwwwhwuwwgxxwwxwwwwwvvwxwwwxwwwwwxwwVvwvgvgxwvwfvgvwvfwwgvgvwvvwwvwwwxwwwwwwggvwxhwhxwvwwwwvxwwgfwfvWhfWwvxgwvhwwvvvuxxwwwwgwWvvfwgxxwwxguhxhwwwfgwwxwvwwwfvwxxwwwxwxwhwwxxwwxwwwwwvvgwwwwwgvxxwggxgvwwwwwxxwxvwwwggwwhxxwwvwhwvgufvwwwwvvvwwwwvwwwwvvwfgvwvwvvwvgewwwvwuhwgwvvvgvwwvwvvvwgvewwfffgvewvwggvvvfvvwwvfgfuvvwwwwwvwuvgvWwvgwwwwwwvwwwwwwwwffwvfgwvuwwwwwgvvgwwwxfvvwxwwwxwvwwvvwvuwwwwwvvvwgvwwvfvwwvwvvwwwwwwwgxvwwwwggwwwxxfvwwwwwwwwwvxxxwvwwvxvwwwwwvwwfwxwvvwwgwwgwxwwwwwgwwhwxxwvvghfwwvvfhwxwwwvxvhxvxvwwvwwwxwwxgvuwwwwfwxxwgxxgwxwwvxwgxwwwxxwwxwwhuwxxwxwxxwwwvfwwxxwhwxxwwxxxwxvwvvvvwwwvvvwwWfwwvfgwvwwwwvgwwgwxxvxwwwwvvvwwwvwwvhvVfvfvwgvgwwwwwvwwwwwxxwwvwxwxxwwwwwwwxwwgvwvwwxwxwwxxxwxwxwxxwwxgwwvwwxxgwwwwwwwvxwwxxxvwfvxwwvgwwwvvwwfwwwwvxvwwwwxwwxxgwwwwwwwwwgwwwwwvwxgwwgxwvwwwxfwwxwxwxwgwgwvvxxwwwwwwwguwwWxgxwhxxwxxwwxxxwwvwxwxwxwxwwxxxwwwxwxhggvwwxwwswwwwwwwwgffwwwwffvgwffwgVegwxwwvggfwwwwwxvvwVefwwwwwwwfvfvwVewwvfggwgwf#2vwwgvfwvwwwvwwvfgwvwvwggfwwwvvvwwwvwwguwvvwfgfwwwwwwwgwfggwgxvgfwwgwxwxwgvwwwwuwwwffwgwxwwuwgxxgVegvwwvwfwwwfvwwwwwgffxfvwvvfvwxwvvgewwxxwwgfVvuwgvwwwwwwwxETwwwwwwwVewxwwgwwwxwwwwwwwwwvwxxwwwxxwwffwxwxwwxggxwxxwgwgxhwwwgxxvgwvwxwwxwwwwwwwgwhxvwvwxwwwwwwwwvxxvgwwxwxwwxwgwvxwxwwwwxfvxgxwwwhwxxwgvwwxwwxwvxxwwgwwxgfvwwgvwxwwxwvwxwwxwwVvuwhwwwxwgggfwwwwwwvvwwfggxwgggfvgwwwwwwwvwwxuwwwgvwggwxuvwxxwVefwwvfwfvgwwgvvwwwwgwfveuvwvwvvxwwvfuwwwwffxfvvfvwwwwxwwxwwwwwxwggfwxxvVvwwwxwgwwwwxxxwwwwvWfwxwwwwgvwwwwwwxwuvwwwWvwgvwwvvwwwuwgwwxxfwvxwxwxwwwwwxvvwwwwwwvgwwwwvwgwwxwwxfvxxwwxxxwxwgvxwwwxxxwwwwwhwgwwhweuvwhwwwvxxxxwwwxwwfvvxggvwwggvxwxuwwwfvwwxwwwwwwxxwxwwuwwwfvwwwwxffwwwxwwxxxxwxgvgvxxwwwxwxxxwgvgvxwxwvxxugwvgvwfuvwvwveffwvgfwUgfvwwwvwvvwwwwuvfvwvvwvvwwvwwwwwefffWfuvefevfgfwUVewggfVfffgwvWVfuvegfvvggwgwgWfwgghvVwwgwxgweuvwgvfgwgfvwwwvwwwgevffwwxwvwwxvwvwwwwgfvwwgwwwxxxxxxVgevvwffwvwgwgvfwfvhwfwwgfvwvgwfwfwgvxxvwgxwwggwwxggwuwwwwwvvwwgwgwwwVfvgxwVwgwxwwgwgwwwwuxvwwwwwwwwwwvffxvhffwwwwgvwvwvvxhwwWwwgwvggwxwgxxxxwwwwgxxwxwwhwwwgvvfwvwvwfgwwwwwwvgwxgvwwwgwwxxxwhgwwxWwwwwwxwwwgwxwfwwwwwwwwvwwgxwwwwfvxwgxhvwwWXxwfxwwxwgwwxwwwwxwVvvvuwvwwwffwufvwwwgvfvvxwwgvgvwwwgvvwvwwfwwwwxxfeueffvvwvvwwvwgvwvhvvgvwwwwgwfgvwvggwuwwwfxfwwwwwxwgwwffwvwwwwxwwwxwxxwxwgwvwwxgxxxxwwxwwwwxxxwfvfwgwfvwvwxxwwwwwwwwwwwggwxxwwwwwwwwgugwvwwwwvwvwwvwwvwxwwgwgxwvwxxxhfvxXwwhxxwvwvwwgwxwwwggwwgwgXvugvvwwgxwwvXxvxxwxwwwwwwxfwxvxxwwwgwxwxwxhxwxxxxwwwwwwxwxwxwvwxwwwwhwvvwxwvxxwxwwwxwwxwwwwxxuwwwwwwgwuwxgwvgvgwgwwwwgwwuvwwxgwxwvwwwxwvwwwwwwevevwwvgvgvwxwvwvwwwwvvwwgvgvwwvgVexxfwwwwwwxwwgwwwvwxxxgvwwvwwgwwwxwwxwxxwxfwvwvxwxwwhgwvvwwxxwwwwwwgwhwwwwxwgwwwwxwxwxvwwwwwwwwwgwwgxgxxwwvwwwwwxxwxwxxwxxwwwvwwgwuwvwvwxxxvxwwwWgxxwxxhfxxxxxwwgwvwwwxwwwxxwwxwwxwwwxxwvwxwvwvwxxxxxwxxvwxwgxwwwwvwwwvwxwwgvwvvwxxwwxxwxxwxxxvwvvwwxwxgwvwxxwwwwwxwwwxwvgwhvwwwwwxwvxwxxwxwwwwwxwwwwxgwxwwwwxxxgwwwxwwxxxvwvwxwxwxxxxwwwwhxgwxxwwxwwvwwwwvwxwwwxxwxwwwwwwxvxxwgwgwxgwwxxxxxxxwwwxxxwxwvwwwwxwxwwwwxxwwxxwwxwxxxwwxxxwwwxwvvfgfwwwfwwwfwwwfwfwwwwwvwfwwvgwvxwwwefvxgvwwgwvgwvuwwvwvxxgwvwgtvgwUvwvwgwgwwxwwUwfwvwfwGwvvwgwwvgfgwgfgwGgwxwhvxwwwgvxwfwwwwwwwvwwwgwwvvxvvxwwwwgwwwwfwwvxwwWwgwwuewwgwwgwWgwxgxwwwwhvwwwxuwwvwwwwwwfwwwwvwwwxwwggfwxwwwvwwwvwwggwwwxwxwwwwwwwwgxxxwggxvwwwgwwwwwwwgwgwwxxVwUwxxwwxgwwhwwxgwhxxhxxxxffxxwwvwwwwgwvxwwwwxwwwxwxxwwxxxxxxxwxxwwfvwwwewxxvwwwwwxxwwwxwxxwxxwxxxuvwwwxwxxwxwwgwvwgwvwVwwvwvwvwVgegwggvxwxwwwvwxvwxwwwwxwwwxwxwwwwfggwfwwgvwuwwFgfwggwxvwwwwwwwgwwxwxwxwwwhwwwwwwwgxwwhxwwwvxvwgwgwxwgvwwxwwwxxwwvwxwvwxvxxxwwhwxxxwhxhxwxwwgwxvwxxvwwwxhwxwwxwwxxwhwwhwxwwwwwwgwwvfvxxwfwwwxuwwwxgXwxxxxwxxwwwxxxxxxxwwwgvhwwwxxwxwwvGwffhwwwwvwxwuxwxxwxxxwwwxxxwxwxwxxwwwxwwwxwwxgwwxwwxwxwwxwwxwwxwgwwxwwwxwwwxwxvxwwxwxxwxwwwwxxwxwxwvxwwxwxwwxevffvfvuvvgfwgwvwvwwwwgfgwwxfguwvvwvhffxwwgfgwwgwwwxevevfvgvgvgvwggfvgvwwwvwwgxgvgwgvvvgVexwwwwgvwwgwhxwxwvwvxfggwgggwgwwffgwwxwwwxwgwwwwwwwxwwwwxxwxfwgwgfwwwvwwgfvwwgwwwvwwxxvwwggvwxxwwwwxwgxwvwxgxwwvwvwvwwgvgwwwffgwwxxxwvgvwxgvwwxwxwwxwxhhwffwvwvwwwWgxvwwxxxxxxwxwgwuxwgwwxhxxxxxhwxwwxxvggvvwvwwwxwwgwwwxxwwwxxwxxwwxwwxwwwgvxgxxxxwwwfwwwxwwfxxwxwwwwwxxxwxwxxxwxhgxhhgxwvwwvfwvwwwvwwwffgwwwwwwxxwfwvwvwwwwwxxwwxwwxwwvvwvwwfwgwwgwwwvgwwxwwgwhvwwwgfvwxxwxxwxwwxwwxhwwhwwwwwwwwwwvwwwvwgwwxwgvwgwwxwwvwwxxwwwwwxgwxwxwfvfvwwxwxwxxxxwwwxhwxwxhhfwxwwvxvhwvffwwvwvwwwxwwwvwwwwwwhfwwwwwwxwwxwwwxxxxwwwvwwvwxxxwwxwxwxwhxhwxxwhgwxwxxwxwxfwwxgvxwwwwxgwwxwwxwwwwxgxxxwxwxxwfhxxvwxwwwwwxwwwwwwwxxxwwxxvwwxxgwwhgxvvwwxgxwxfvvvvwwfgwwvvwwgvgwvwvwwvwwvvvxvwvvvwwffwvgfgwwwvwwwfvwxgvvwvfvffvvgVegvggvvwwvwvvWwfuwWwuvgfvwwwwwwfxwwvhfwwgwxxvwwvfwgfvvvwvgvfwfwvvwwvwwwwwvvwwwgxwwwwwwwwvwuuwwvwwwwfxwwfxvvwwwvvvvvwwwwwwxxgxwwgwxvwwvwwvwwwwwffwvwgwwwwwwwfxwfxwwvwwwwwwwvxwwwvwgwwwffvvfvgwwwwgxgwxwgxwgxxwvghwwwgxxhgfxhwwwfgwgvwxwfwwhgxwwwwwxxxwxwhvxxwwWwvuwwvwxwxxwwwgvwxxxxwxxhwwxxxwwxxhwfwwvvwgwwwvwwfvxwwwvwwwwwwwwfwwwwwvwxwhwwwwfwwvggvggvwwwvxfvwwwvhwxwwwwwxvwwwwwxwggwwwwxwwwwwgwvwxwwxxwvwwwxwgwxwwwwxvwhwxxxxvwxxxwwwvwxwwxxxwxwhgwwxhxwwgwxxwwxgwwwxgwwwwwwwfxwxwxwxwwwwxxxwwwxwvwvvwwwwgwwwwxhxwxxwwwwvwwhwwxxwwwwvgxwfxwxwwxwwxvxxwwwxgwhxwxwwwxxxwgxvwxwwwwwhhwwxxhwwwwxwvvxxwxxhwxxwwwvxuwfwVffwVvewffuvfffgveexfwwvwgwgwwfwwuwfvvwwgvwwgvwwwwVVVfeUTvdfefefVVggfvwWWfvggggwwgfffvvWwwwwvfwwvgegVvWwgGwwVwxgvfuvwgfWvgwvvWvugfwfwgwvugwwwwvvgwvgwvgvwwgwwwwwxwwxwegfwfffvwvvwvwfgVfVwgwfWwgwxwgwvgwvgvhgvwxgxwwvwgwgwxvwwvgwvvwwwgvwwfvfvvwvfVxgfwvvgxwwgwvwwwwfvwwxwwggwxwwxwwwwwhxwvVVwvggwgwwvgwvgwVWwhgwugxvvfwvfwwfwwxwxwwwwhwvWhhgwwwfhwwgWfwwggwgxwwvwgvfvgxggwwxwxgfgvvwwgwwxwwwwgvwwxxghxgwggwwxwxwwvgwfwVwgggfxgfVwWwgvvfwxgxwxwxxwwwwwxgWxhwwvxwwEwvwgvgfvvfvwvVevwgvgeuvwwwwwvffwvwvwgvwwvwxwxwhxxeVfvefggfvvwfvvffWggwfwgWwwwwhgwvfgvwgwhxwwgwwggwVwhWwwwxwwwvgwgwxwwxvwwxfwwvwwgwxxwwgwwvwwwxwgwwwhgxvxxxgWfwwfggwwwfwwWgwwhvwwwwvwwwhwvgxwwwwxxwwwxwxgwgfvwwfwVgWwwggfugwwwxxVwwwwwwxwwgvgwvggvgwwwvwgvwwxwhvwgvwvvgxxhgwgwwxfwwVwgvggwhgwwGwvxwwxwwwwWxwgwwxwvgwvxwhxwwxxwwhxwwgwwwxwggwvwxwwvwgwwhwxwwwwwuwgwgwhxgvgxvwwwwhwwvwwvwxvwxwwwwwxfwvgewuwwwfvvwvvvfvvvgvwwuvwwVfwvwgvvuwevvgwgwhvvvwwvfwuvwvugwwwwfwwwevwWfegvffvgffwWuufwfwfvvVvffgevfuwwwvuvfwvgvuwfvfwxwxwgvuvwffVwwwwvxvwvuwwvWvfwggvwuvwvgwvwvwwvwwvwwwvxgvffgufvvwvwvwfvwvvvfvvggwwvfWvvggvwwvvwwwwxvwgwgwwuvwvwwwwwvvwvvwwwwwUwwwwgwvwwwwgvvwvwgvwvwfxfwgxuvvwxwwwwwvwxwvwwvgfwvvhwwvgwwwWwwuvwxwgvvvwwwwwgxwWXWvwxxwxwwwgwgWvgwwvvwvwgwvwwgfwwxwgwghwgxgwwwwwhwxvwhvvwwwwgwxxwwwwwxghhwfxgwgwgwwuwwgvwwxwwxfgwgxxwwxvgvwuwwgvvvvgwwwvvwvgwvWwwgwxvwwwvvwwwwwwwggwwwwwxwvwfvvvwffffwwwwwwgwvgvgwwxwwgwfvwffwuxwwwvwwvfwxwvwwwvgwfvxwxwxxxvvewwwxwwgwwfxwxgwxwwxwwxwwxxxxgwggwvvuvgwvwwwxvgwwwwfwwvWwuwwwxwxwxwwwwwwfwgwwwwwwxwwwwvvhgvwwxxwvvvwwvxwwwwgwvwxwgwvwwwvwfxwvxwwvghvwhwwwwwwwwvwwvwwwwwvxwxvfxxwwwvwwvvwxxvwwgxvwxxxxgxwwxvwxvxwwwXwwvxhwvwwwwxvwxwxwwxwxwwxhxwwxwxgwxxwxhwwxuwwwxxxvfvvwwvwwfVvvvvwwwwwwvvvWwwvvwvwwvvvwwvvvvwgwwvvwwwvwgvgggtwgwvtwwwgwvwvwwwwfwtwgwuuvwvwvgvfgwgvuuvvvvwvwwxvvwwwwvwxwgwxvuvWvwfwwWgwvwvwwwwwwxvvgwxwwwwwwvfwvwvwwvwwwvtvfgwvwwwwwwvvvwuxwwwxggvwwwwwwwxwvwxwwwwvwwwfwwwwwfvwwwwwwwwxwwwwxwxgwwwwwgvwwwfwwwwvwwwvxwhwvwvwwfwwvwwwwwwwxxxvvuuuxwwghvxwwvvwxwvvwxwWwwwwhvwxwwwwxvWwxwxxwwvfwwxwwwgvvdxwgwwwwwwvwwxwwwxvwwwxwuxxwxwvvwggwvwgvwwwwvgwwvvxxgwwwwwwvwwwxgwfvxwwwvwuwvvxwwfwuvwwxvwwvwfuwvwwewwwwwwwwwwwxwwwwxwwvwwgwwwgxgwwwxvwxwxxwwwgwwxwxgxxwxwwwvwwwxxvwwwxwwwwggxwwwwvwwwxvvwwwwxxwxwxxxwwxxwwvvvxxxxwwwwwwxwwwwvuwwxwwhwwwwwwxxwwxwwwxxxwwwwwxxwvwwwhxwwwxwwhxwxwwwxxxxxwxxwxwxxvwxxwxwxgwxxwwwwvwvwxwwwwgwwgvfwwvwvwwUUwvfuUvgwfwwvggwggxgvgvvgeguvhvxwuwwwwUUwggvUfevwwwwwggfwwwwwgwWwgveuefwwwwuwvwwwwwwgwWwxgvwwwwwwwvgwwwvuwuWvgfwwwwgfwwxgwgwwwwhxwwgwxxxvwxxxwwwwwWwvvwwwvwwwwwwwXwWxwwwxvfwwwexwvwwwwwgxwxwgxwwwwwwwwwwwxwwwvwxfgwwwwwfwwgwxwwwwvxxwxxwvvxwwxvvwxwwwwfgwwwwfwxxgwxxwxwxxwxwwwgwgwvxgwwvwgvgvxwwwwhxgwwwwhwwwxwwwxwwxgwwwxgwwwwwwxwxwwwwxvxxxxxxxwxwxvgwwxwwwxwxvxwxxgfxwwxhwxwwxwwwwwwxxwwxwwxwxwwwwvwwvwuwugegvwvxewxvgwvwggvwxwwwxwfvwwwvwwwwwvugwwwewvwwwwwWWwwvwwwwwwwgxwwwxwwvxwwwvghxxwwxwwxwwxwxgxvxxxfwxxwwxxxxwxwxvxwxxwwxwwxwvwwwwwwxxwwxgwwxwxwwxxxgxwxhwwwwxxwxwxwvwxxwxhxwwwxxwwxxxxwxxwxwwwwwwgxwwvwxxxwwvwxxwwxhhvxwwxxwgwwwwwxxhgwxgxwwxxwwwxwwxwwxxxwxwxxwwxxwxwxxwxwxwwwwxwwxwxwwxxwwwwvxwgxxxwwwxxxxxwwwyrvvgvfgwwgfwwxvwwvefwwwwwvwwwxvvvfwWugfwvvwwwfVdfvfwwwwwxwVfVvwguggguwvwwuwgugwggVwwggwwvgf4BvugfvfwwwvxwgwvwgVdwwwwwwwvggwggffgufwvfwwwwvxhvwwvwgewwwwwwwgxwfwwwvgwwwwxwxhxVVdgevfvwwwwxwffffgwVdwwwwgwgvvwwwgwvwvwwhfuwwwwwwwvwvwwwgwgwwwvwgVdwwggvwwwvwwwwwwfguwwwwvwxvwwvwwvxwwgwvvwhwvwvgwgwwWwwvgvgwxxxfgwwvxwwwwxhxwhwvwwwwwxwwxgwvguwwwwwfvgwwwwggfwwuwwwwwwxwwwxgwwwwwwwwvwwhwwwwgwwwwwgwwwvgxwgwwxwxhhwfwuwwwwwvwgxxwwwwvwfvwwwwxwfgvffwxvuhwwwgwwwwwwwxwfwvwvgvxgxwwhfWefuveuvwwgfwugwWuwwwwwhwgwvwwwvgwwxvvgwwvwvuvvwwwwggwVwhwfvxgvhwxwwwwgvwgvgxwwhwwgvgwwhwwgvwwwdwwvwxxxuwwwvwxwwxwgvgvvwgwxgxvwwwgvwxwvwwvwvwxxfevvwvwwwxgfwxgwvxxxxwwwwxwgxxgwxwxgwwwwwwwwwgwvgwxxwxwwwvwwxvwvwwxwwuvvwxhwwwwVuwhgdwwvwwwgvxwwwxwxxwxfxwxwwxwwwhxxwwwxgwxwhxgwwgvvhwwwwwwwwwwwxvxwwwfvvvvgvxvwvwwwvvgwwwwfvfwgvwggvgvgvvgwwwwvwfvwwwvwvwvwuwvvfwvwgvvgvwvwfvgwfwwwvwvvfwwwfvwggfgwfvvwvwwvwwwwxwxwvwwwvwvwwvgwgwvgwwwwwwwwvvwgwvwvvwgwwggwvwgwwwwvgvfvvwwwvwvwwxgwvwwvwvwwwwwvwgvwfwwwgxwwwvwgxgwvwwwwwgxxwvvwvwvwwwwwvgwwwgvwwwxwxwwwgxwwwwxxwwwgwgwxwxwwxvwxxgvxwwxwxwwvwgxxxxwwgxxwwwxgwxxwxwxvwwwwxgvwvgwgvwwxgwwvwxvxxwxwvwwwwwwwgwwwvvwgwwfwxxvwwwwggwvxwvwgvxxwxwwfwxwxgwxwwwwwwhgwfxwwvwvwvwvvwwvwfwvgwwwwfwwwgwxvgwwwgwwwhwgwwwwwvwwvggwfhvwwvgvwwwwgvwvxvwvwwvgwwwvwwwvwwwxggwwwwwwwwfvwgwwhwwwwwwwwwxwwwwwxwxxwwwwwwwxwwxwxwxwxwwwwwvhwwwwxxxwwwxwwwxwxwwwwwwxwgxxxwxfwvwwwvwvvwvgwgwwwwwgwwgwxwxxhwvwwwxgwwgwwwghwwgxwhxwxwghwwxwwwvggwwxwgwwwxwxxxxwxvxxhwghwwxfvwxwxxwvxwwxgfgfwwwxwwvxgwxxxfhxwwvwxxwwxwxwwwxxxxwwgwxwxwxwxwwxgvwwwxwvwwxgwwwwxwwxgvwwwwwwwvfwwfwvwfwvwwwfwvvgwgwfffwvggwewvgfvvweVgvvvfgvwwwwfvvxwwwwwgfuvvffgUuefWgevfgffdVdvfguwgwvvggwfvvwwwhffvwgwvwwgvgwgvvfxhwvfwwwwwxewwwvghwvwvwwvwvwwwxgwvwvxxwxvvwwxvxwwxxwwfwvvwwwgwwwvwfvfwfvwgwwvwvwgwfgwwxgwwhwhwxvwwhwxvwxuwgvwwwwxevuwwwwwwwwwefuwwwwvwwwxxgwwgwwwwwxxxwgwwwwwxgwwvwwfwwwhwwgwxwxwwxwvxwwxwwwwxwwxhxwwwwxwxwxwwwwwxwvxhvwwwwwwwwhgxwwwxxwhwwwwxvxwxwxwxgxvwwwgvwgxxxwwvwxwgxwvfvwwwxwwwgvwwwWwvwgwvhvwxwwwwvwwwwxgxxxxvwxwwwwwggvvwgwwxvhfvgvvxvwwwwvuwxghvwxxwwwwwwwwwxwxwwwwwwwxhxwgvwxwwwwhxgxwwwwwwvvvwxxwxgwwvxwwwwwwwgwxwwwxwwwwwwxwwwwxxxvxwxxwxwxxwwhxxxwwxwxwxxwwwwwxxxxwgxwwwxxxxxwxxwxxwwvwwwwwwxxxgvxxwxxxxwxxwwxxwxwwwxhvwxwwwhxgwxwwwxwcvgvgfgfvWVfgguWvwfvwwugvwgwwwwgvgfUwguVwxvwfvvvwwwgwwgvwwwwwwgfgfW4AuvvfWufvgwgtgwgwgvwwvwgfvvvfWfgugwgWevguwwwfwgfvwxxvwvwvWVfvvfWwhwvwwwvwvvwwwvgvvxwhwwgwvwfvgwxuwvwwxwwxuwwxxwgguWufvgvwwwvxewwwwghvgwhwewthvwfvvwwwvgevvuxwuwwwxwvwvwfvwgtgvwvvwwwgxVcwwgwvwwwwfwvwwgwwvwvwxvvwwwwwwwwwwwwwugwgwgwwwvhvgwgxwWwwwwwwgwwgwwghxwwwvwvwwwwwgwwwwwwxwvvwgwvwwvgvvxwhwwvwwwvffwvgvwxwxxvxwxwwwwgwwwWuvwXxwwwgwgfvwhwewthwwwwwwwgwvgxfxwwuwuxxgwvxwwwxwwxxwhxwwwvgfUvvfWwgwvwfvfwvwwwgwvwxxwwwgwwvwwvuwvfvwwhwuwwxxwwguVfgugvwfvvwwwwgwwwghwxxuwuxwwvwvvwffuwuvwhwtfwgwvwwxwgWegwxvgevvwvwxwwwvxwxgwwvffuwxywwvwxxvxXvwfvvguwuwvvuxvwvwxwwvxwwuwvuvwwxxxxwvwwgxxxvvwwwwfwwwxxwvvwwwwwwgwxwwfvwwhwvwxxwfvgvhwwVuwwXxwgwwgfvwwwxuwwwwwwwgwwwwwxxwhwtfwxxvvwwvhwwXfwgwxvwgvwwxxuwwwxwwwwwwwwwWuvwwhxuwwgwgxVuwwwgxwwwxwwwwvwvwxxwvwwwxwvXxwwwxxwvwxXxxXxwxvwxugwvwvgvwfwwwwwfvufvfvwvwvwwfwVvvwvwvuvfvvwefvwwvwwwwwffefggeufgeuvvefuVeuwhgfwfvvhvVefevvvvfwwvfwvwVfeffwwvVwxvgwwvfufwuwvwwvgwvxvwgwwvwfxwhgwwvvuvwwwgvvxwfwfgvwxxxwwfgUfvefvvvgvfwwgvgwxwfffxvwxwvwfwwwvwwwWxhwgvwwwwxvvxgwwwwwwvwgwvwwwwgwVfxwvgwvwwwwwgwwwwuwwgfwvwxwxwwwwffwgffwwvfxxvgvwfwwxwxvgxxwwxwwwgvwxwxwwxwwVwwwvxwwxxvvwguvvwwwvvwvwgwwwvwfvwWwwwvxxxhwwvxxwwwwvwvwwhwwxWwwfWwxvgxwgewxwuxxwgwvxwxvwegwvwwwwxVvuwgvfwwwvwwwvwwgWvgvwwgwwwvwvvgwwwwhfwvfwwxwwwffuuvgfvvvvvgvxvvfvxvvvwfwwgwvggwgvwvxwggwgfvwgwwvwxWxwwvvvvvwgwwwxxgwwwxwxwxwwwwwxxxxwwwwxgxxxxwwwfvvvgvvvwxvxxwwwwxwwxgxwwgxwwwwwxwvwwwwwgvgwfggvwwgwvwwwgwwwwwwxWvwvwwgwvhwwwxhwxwwwwwwvxvvwxgwwXuvwwgxxwwwwgxxwwwwwwwwwhhwwwwvwgvxvwwwwxgwwwwwxgwxwwwwgwwxxxwxxwwxwxwwwwwxgwxvwwwwwxxwvwxxxxwwwwwwwwvwxvwwwxxuwuvvwgvWvwuwffvwvgwwVwwvfwguwvwfwfgfwgwgfwvwwVfwwwfvWwvvuwwgwwgwgVwvffgfvUvWffuwWWvwVgggfgwfeefwffwwgwuvfwvvvvfwfVwwwxgvwwuxgwfvvwwfwwwfwgwwfgwwgwwwwvgwggwwwwwvuwgwwxxhwwxfwfvfggffggwffwwwgvgvgwxwxfxwvwvxwwwwwwXxvwwwwxwhwwxgwwwwwwwwxgwwfvwwfvwWWwwgwwfvhwVwfwvwwwwwgwvxvvwwwxxwxwxwwwwwgwgwwwxwvwgwfvvgwxwhxgWxgUvwvfxggvwxwgwwwwwWwxWwwwwxwwwwggwwvwwvfwwwwxfgwgwwwggwwwwxwhwwwxhvxxwwwwgwwwvwfxvgwwwwwfwwwxxwffhxvwvfwxhwwwxxwxwwwwgwwwxwwxguwvefvwwggwewvwvwwewvwvxvwwwwewvvwwvwwgwxwgghgxxwhhwvffgfwegVwfwgvvfwgwvwffgxwwgwggwwfvvwgxgwwwwxgwxfXxvwxWwfwwgwvvvwwwxvgvxuwwvvxwxxwhwwwxwwxuxxwwwggxxwfwfwwuvgwuwwwwxvhxwwggwxgxwxwvxhxvwxxwxwwwwgwWwwwwwvwvuggvvxxwgwvwxgxwwwvxwwvuxwwvgxwhgxvvwhwwxvvxgwvxwwwgWwwvwwgvwxgxxfwhwgxwwwxxwwwwxwwwgvhhwgwvwxgxfvwxvxwwfwwxvxwxxxwggxwwxxwwgxwxgxwxxxwvgxvwxwgwxwwwxxxwwwwwwxwwxxxwxwxxxxhxgwhwxwuwweuwwxwwgvfwtwxguwWwwxwvvvuwvgvwwvwwvgvwwvweutvgfWvwgwwwvvwxvvvfUTwwwvwxvvvfugvvwwfwwgwfvwvvwxwxhvwvfgwwfwwwfvhgwvvxgwwwwwwvvwxwxwwwxwxgvwvvwwfwwxwgwwwvwwgxwwgwwVvwgvwwwxxxwxwwwwwwwxwgwgwvgwvwxxwfWvxgwvwwwgwwwvwwwwwvwwvxxwxgwgugWVxwgftgwgwwgvwwwwwxxwwwwxwgwxxwvvvwwvwxwwwwwwvxxwwvvwvwxwwwvwxhwwwwxwwwwxxgfxwgxwwvvwwffvxwwwxwxwxxvwfwwwwvwwwxwvwuxwwwwxgwwwwwgwwxxwwwxwxwwwfvvwvwwwwwwxxwwxxhwvvvvwvgwwwxwwggwgfgxwwgxvwwwxhfwwgwgwxxxwwxgxxwxxwwxwgxxxwhevwwwxgwVxxxgwwwwxgwxwvxvwwwwxwwwvwwwxwwvwwxwxvwwwwwwwwxwxxwgwxwwxwxwwwwwwxxxwxwWwwwvwxwvxxwwwxwwwxwxxwxxxwxgwwwgwxwvxgxxxwwwggxxxxwxxwwxgwwhxwgxxewfxxxvggwvvvwvwggfvvvfwwvwvvgvvwwwxwvvwwwweVgfvwvffvwwvffvwwwwwwggevwwvwwvfgfuuvffffvvgwwvvvffgUeevfvvwxvgdvdVvguvwgvgvwggwvwgvxwwwwgvwwgWxgxwwwwwxgwwwwxwxwgvgwwxwxwwwwwgfwwxwffwfvxxwwwwgvwwvhwhgvwvxvwvwWwwxwwwwwwxwvwwwwwwwwwwwwxwgwwwxevuwxwxeugxwwxwwwwxxvwxwwwwxxxwvxgwwgwgwwwxxgxwvwwvxwwxwwwwwvwwxwxwwwwxxwxwwwwwwwwxxgwwwxxxxxwwxwxxwwwwwwwwxwxxwxwxwwxwxxxxwwgwxwwwvvhwvfvwvwwwuwwggvfwwxxwwwvvwwvwwgwvwwvwwwxwvwvwwvwwxwwvvfvwgwwgvwxwvwwfvvwggwwwvwvwvfwvuwxgwxxxxwxghxgxxwwwxwwwwxwxvxwgwwxwwwxwwxwwvwwxvvwwwwwxvwwwwwwwwgwwhgwwwxwxwwgxvgwwwwwxwhwxxwxgxhxxwxwwxwwwwgwgwwvvwwvwgxxwxxxwhxxwxwwwxxvvxxxwwxixgwxwhxwxwxwwwwxwvwxwwwwuwxgvwwwwxvfvvwfvhwwvvWgwwgewwvgfwwwwvVwwgWvwhwxwwgvguVvggffvegwuWgvgvfvwuxwwwgfvefvvvwvwwwwgvVwxwwwhwwwwwwvWxwwwgfwwgwwwwwwwfxwvwxwwgvwWxwgwggwwwvwwwwwwwwwfwwxwwwvwwgvVwwwwwwwwwwvwghggfwwxwwxwwwwwwwwwwwwwvfxwxwwwvwxwxwwwwwwwwwxvwwwwwwxwwwwwxxwwxxxvwwxwhvxxwwwxwxwwhwxwxwwwwwwwxxxwvwvwhhwwfwwwxfvxwwgwwwwxwwxwuvuxwwxuxxxxwxwhxvwwwuvxxwhwvwwxxwxffwvgxwwwxwwgvwwxuxxwxwwfuwwxwugxvwfvwwwwwwxwwgVxwwwwxvxwwwgwwgxwgwgwwwvwwfwwvwwxvwwvwwwwwghwfhfwwwwwwxvwwwwwwvxvWggxwwwgxxwxwwxxwxhwwwxxxxwxxxvxxwXxwwwwxxwxwxxwwwxwhxwxwwxwxwwxhxxwvvwwwuwxwwwwwvxwwxwxggvxxwxxxxwwxWwwxwxgxWwxxxhwwxwwwxxxwxxWwxwwxxhgwwxxgwghhvgwvXwwuxxxxxwwwwwxwhxxxwxwwxxwwxxvxvxxxxwxwwxywwhwwwwxhwwwvxxwxvwfgwvwgwxvwvvwwwvvwffwggfwvvgvwgwvggvwvwwwwfwwvwwvwwwgvwwwfvWvvuwwWWwVefwwffvwvwvgvgffvfgvwffwwwwwvwfwvwvwwfwwwvxwwfwvwwwwgfwwwgwwvxwxwwwvvvxwgwvwxwwwvwwxwxwxwwfwwwwffwwxwwgvvwxggwwwfvvwgwvwvwwwwxwwwwwwwwwwwwwwgwhgxvwvggwvvwwwwvwwwwwwxwwgwwwwwwwwwxhwwxwwwvvwhvxwggvvwwxwwhwwwwwfgfvwwxxwvfwwwgxxvhgfhwgwwxwwxxxwxvwxxwxxwwxwxwxxwwwwxwwxwwxhfwwwxwxxwxwxfgwxwxxvwhvwxxwxgxvwwwxxwwxwwxgvwxwwvwvfwxwwvgvvvvvfvwxxwfvfwvwgvwwxwfvwwvwwxwxwxwwwwvwWwuwvwvwxvwvxwfwxxhgvwvxvvwwwwvxxxvwwfxgwwhwwgxwwxwwwwvwxxvwgwwxwwxwhwwwwxwvwwwgvwxxxwwwxxwwwxxxvxwwwwfxxxwwxwwxwwgxwwwwwvwgwxvxxwwvwxxfwvxvvwxxwhvwwxwhxfwwwwwfxxvxvxWwvuxxxwxxxwxwwxwwxxvxwwxwxvwxwwxgvxxvwwxwwxwwxhwwxwwggxxxwhxwxxwwwwxxwwvxwxwxxwxwwwwwxwxwxwwwfxhwwxwwxgwgxfwxxwwvwvwvwwwwgvwwwwxVewvwvwfvvwwwvwwgvwwwwwwwwvwvwfvvwwwwwvxxxxwvwwvvwwvwwffwwwwwevufvxwggwvwvwwwvwvwxwwefewvwgvxwwwwwwwvgvwxwwwwxwwwfwvwwxvwwvxwwwwwhxwfwwwfxwwvwwwwxgwxvwwwwwwfwvvhvgvwwwvwvwxxwwxwvwwwfwwgwwxwwvwwxxwwwfxwwwwwwxvvwxxwwwxxwwwwwwxwwwxwwwwwwxwxxwxwwxxwwwwwywxwvwwxwwwxxxxxxxwxxxxwwwwwgxwxxwwwwwxwwxxxxwxwwvxxwwxvgvvwwwwwvvvwwvvwvwvwwwwwwgwwxwwvwwxwwwvwwfwwxvvwvggvwvwwvwwwwwwwxwvwgwwwxwwwwxgvwgwxvwwxwxxwxxgxwwwwxxwwxxvwvwfvwwwwwxxwxxxwwwwwxxwxwvwwwxxwwwxxxxwxwwwwxwwxxxwwxxxwwxxwxwwwxxwvwwvxxwxwwwxxwwxxwwxxxwxvwxwxxfxwgwxugfwwwwgvwvfuwwwvwwwfwwwvgwfvfvwwwwwwwvwhwuvgvvgfwwwxwfwvwWveggevwwvwwxfwvvgggwevwwvegvvgvfVgwvwwxfwfggwvgvwwxwxvwfvwgwvwvvwxwggugVfwvxfwgwvxwvwwvwwvwwvxwxwwwxgwfwwvwwwvxwfwfwfVvwgfwxwxwvwwwfwghwgxwwvgwwgwwwxxgfwxwgwgxgwxwvxwwwwwwwwwwvwwfwxxgwvwgwwxwhxxwhwwwvwgwhxwwvwwwvwwfggxwxwhxxwgxfwxhgfxwwxwvwvgwwwgwwxwwvvwxgwwwvwxwwwvxxwfxvwwwxxwwwxwwhwxwwwwwxwgwwxvvxxvgwgwgwfwwvxwwwwwwwvwxggxxwxgvgwwwwwfwwwffwgwvffwxvxwgwwwwvwwxVwvxgxxwwxwwvxfwwwwvwxvwfwvwwwgvfwwwgwvVwvxwwwwwxwwxhgvgfwgwgwvwwwwwwwxxwwxgwwvxwwwxwwwwwwwxwxxwxxwxwwwxgwwwvwxwxxwwxvgwxwwwwgfwwwwgfxwxwxwwwxxvxxevwwxwwwvwwvwwxwxxgwgwwwwwxwwwwwxwxxxxxwvxwwxxwxwwXwvwwwxwvggwwwgwwwwxxxwxwgwWxgwWxwwwxxxxwwwxhxxvxwwwxwwxwwxwxxxxfwwwwxwwvwwwxfwwgwTvVvUvegUfvvfvVwVvfwxwgggvWwwwgwvvvgewwwgwwwwwTeewgeefffUvvfewwvfwwgwvgwwwwvgewwvgwvwvwwvwwwwvwxwwevewfVddgeveguwggfwwxwvfwuwwxfxvwwvvwvwwwxwwwvVdvvWvfUvdwgwevwvwwwvwwwvhwwgvxfgfwvgwwwgwwwwwwfTeefgeeVeVVgffgwffwwwwwvggwwwgxegfvgwwwwvxwwwwvwgwgwvwwxxwwfeVwhgfwggWwgfgxwwwxwxgwxxwgwwwxgewwwwxxwgwwxxvxwxxweffwfvwwfwvxxgvwwwvwhwwwwgwwwwfuxwwvxwvwxxxxxwgwwxgwwvwgugwxewwwgfwgwxxwwwwwwxxvwxgwxxwxxwwwfwwUvugfUTvdWvvffvwfgfvwwwwfwxwuwvewvwvxwxvxwxxxwefevegfgwwvwwwuggwwwwwwxwxxVvxgvfwhgwwxwxxhxwuvwwuvvwvwVvwxxwwxwwxwxwwxvvvvwgfwgxggwwxxwwwwwwvwxwwweEUvwWgfFvuhwgvwgwfwwgwhwwhwwwfvxwxewgwwvxwhwwwxvwwxwwxhwwggfwgvXwhvxwVwwwwwwxxxxxxwxxxvwwwvxwxxgwxwxxwwxhwgwxewwwgvwxvwxwwwhwwgxxwwxxxgxwwwwwvwwfxwxvwwxxxxxxwxwfxxxvwxwvwwvwcffvwvwfvegffffffevxwuefvwwwgvgwwvwxwwwwwffwgwwgwxxwxeuffvvfwvdefgvvgvffwwwgwfgfgwfvwvfUvewvwwvvxgfvfwwwwgwwgwwwwfvfhvwvvVeuvvweftugwvwfwvwvwwgwwwwwwwxwvvxwwwxvUcuVwegwgvfwhgwFvdhvewvgvwvVwwvxwwwfvwwwvwwgxwfxwwweuvwvfgfeffwwwxvWVwgwVwgWwwwwwgfvvxwvxwwgegvwxwhwxgwwwxgvgvgxwgwwvggvgwwfgxxgwxwvwwwgwvwwxvwvwxxhwwhggxwwwgwgvxfgfWuxgvwwwwwWwfgxwwwwgwwwwegwwuwwwwwxxxwxxghwwxxwxwvwwwvwwvgwwwvgfvwvwwhgwvwvwwxgxwwwwwwuvxxfveWfgvvfVevvwwweVeewwwwfvgwwxvvvgvwxwhgwgwwwwxxwxwvvfuGvfgvvwwwwwwgwfgwwwhfwgfvxgvgwwwgwwwwwwgwhwwwWwxwwxvwwwwfwwxwfvwxxxfgvwwxwwwxwwxxwwwwwwxwwwfevwwwwwwwvwwwwwwewxwwwwxwwxxxwwhhwwwwwwfFdffvwvgvvwxv6veWgvwvgwwwwghgwwwwwxWwxwgxwwwWwwfgwwwvwwwwvwwwwwggwgvgwwwwwwgxwxwwxwwwxxwxghxwhvwgwwfvvwwwwwwxwwxwgwgxvgxwwvxxhxwxxwwwwxvhwwvxwvwggxwxwvwhfwwxwxxwwwwxwwwwwwwgwwwxwufwwgwWvvvgwwwgwwwwggwfVVwgwvwwwwwwvwwwwxxwgwxwvwxwhWvgwVVwuVVwVwewfgVwvwwxwgfwgxvgvgwwwwxwwxwxwgwvwxxxwxwxwwfwwxvwgwfwvwwfwwggwhwwwwxvwfxwxwwwwwwwwwwxwxwwxvxxgwgggvewfwvwvggwhvwwwwgwxxwwvxwxwwxxwwgxwwwwxwwwxwwxgwvxwgfwvfVwgwvwwVVwwvgwgwgwwhwwwwwwgwfxwwwwxxwwwhwxxxwxwxgxwwgWwvwghvfvfwwWwhwfwwxwxxwgWwgvxwxxxwwwWhwwxxxwxwwxwvwwwwxvwxvwwwwfhwwhxvxgwgwwwxxxxxxxxwxxxwwwwwgwwexgwvvxghwgvwwwwwxxxxxxgwxwxwwxwxxwgwgggwwfgwugvvvwgwwwwxgwfxwxwwwxwwwwwwxhxwxwvxwhwwxxxwwwgfwvxvvvuwwvgxfwwxwxwxvwfwvxwwxxwxwxwwwxwxhxxwxxxxxwxwwwxwwxhwwxwxxxwxwxxxxwxxxxwwhxwxwxxgwwwwfwwxwwwwwxxwxwghxxxxxxxxxxwhgwgvvxWgwxwxwwWwwgxxwhwxwwxwwwxwxxwwXxhwxwxwggvxxhxwwgwvwxxgghvwwxewwxwxwwwwgxwwwvwwwhwxwxgxxwwxgxxhxxxgxgwxvxxwwwwwwwvwwxxxxwgwxvwxwwxvxwxwxxwwvxxwwwwxxxfwxwxwwvxxxxwxxdfWufvuggxwwgwVuegxwggvWfxxfeuvwvWvvwwvfWvwwwggwxUdefwffwegfvvwwgUfVwwwwwwvwwwgvefUwvwfgwxvwxwfwffwgwwwxxwVuewfgfvugwwfEUvwwwwgwxwxdguvgvvgxxfvvvxwxwxxxeUTvgwvggvxwwwwggewvgwXgwwwwVdwwwhxwvxwwxwgvwwwxgwxvUtufwfgwvWfwvwwgUffwwhgwgwwhxfVVvvwwggwwxwxVvwfwwwvwwxxwxgVfWwxwxwwvwxwgwxggfxxxxWfwgwwwwWfwxgwwwwwwgfgxxwwxxxweVfvwwvwguxxwguffwwxwwfgvwxgwwwwxwwxxhwWwgwwvwwggfwwwwhwxxxgvWwwwgwwwwwhvwxwxxwwxvgvxWwxwvwwvVuvgwgfvvwwwfFexgwwvwxdWfvWvvwgxxxWuvvhgwvxxxxuffvgwwwWvxxvvvwxwwvwgwwxgvwwxhwxxwhwxgvwwwxwhwwxxxwuvwwxxfuwxwxxxxvwxwwwwfuxwxhwguvwhwwxwgvwwwhxxwvxxvwxxvwxwxwgfFewgwwxgvxwxxxgfguwgwwvgfwvxhFuuggwggwxwwxgWgvwxxxwwxhwggwgvwwwhwhwxwWvgwxwxwgxwwXgwxxxxxwxwggwwgggwwwxxxwgfvwxwxwxwxwgfwwxwwxwxwwwhxxxgwxxwwgwwwxxwwgwgxxxvwwhwwwxwxwxwvhxxuWVwgvfvgfwuvfgwgvfgwwwwVFvVudgfvwwvgfwvgwwvvwvgGvgvugfwvxvwvggvwgvfUwvVevffvfvVefwwvvggfGgwgTuggfvuwggvwwwvgwfGwwwuwwvgwwwvgvuxvffvvwvwvvwwvfVvguvvuvvwgwuwffwuuvfwwvwgxwwwwwwwwwwgvvvvuggwvwwwgwwvVgwhtwwwxwwuwwwwxgvwvgWwvgvvxwwwwwwwvvvwwfvwvgfwgWfwvwwwfFVvwwwwgfVVWwveffWwfvvxggvwwwwwgvVWgvvvvgggxgxwvwwxwfevwhvwvgwwfxwwgwvUxxhvgfwfwwvxwXxhwvxvfxgfxhhgxxwwgvwvwwwwwwwufffgvfxwxwwwwvwwvwvwxgwwvwvxwwwwxwxwwwuwwwwxgwhxwwwwwexgwvhwwuwwwwxwwwwxxgWxxwwgwvwgwwvxwwwvxVwvwwffvvggvvvuVWwVvuvfewwwwwgugfWvuevwgvwvgwxwwvwwwwfwwvWwvewhgwwwgwwvvvWvgwuwwwwwwwwxwxxwvwwwwgwvvhwgxwwwwvvwvwvwwxwxwvwgwvxgwwwxvwwwwwxwwwxxwwwwvwwwwvhxwvwwvwvwfwwvwwwwwwwwwwxxwxwwvwwwwwxwWfwfvvxgvwwxwfggWvwuwwwwgwvgvwgxgwgwgXvggwgxxwgvvwxghwwwvvwwvwwwwWxhxgwvxgwwxggvxwwwwxwxhwwxgWghggwWwwwgxwwxwxfwwwvwwwvvxxxxvwwvwwxfwwvwwwfvwwggvwvwwwwvwwxxwwhwwwwwwgwvxvgxwwwvxwwwxxVgWggWgWwvwWgWvfFVUwfvWVFUvwwgggwgvgWfwwxwwfgvgwfvvwgwwwxxgWFfgWVwVVGwggfggffVwggggffgxwgWvggvVgwggxwxhVwuwhwggwwxwwwgwvggfwwwwwwgfVwfwfwggvxwgwwwgvwwwwxxgwwgwwwxxwwgWffgwgwwgwwwfwVvewggfgwfvgwgvgwwwxwxwwwxwggfvwXWUxwgwwvggVVggfgfgVvwwgwWVWgghWWffghwgffWggfwfxwxwFgfgwgfWwghgwxwwgghhggwwggxxwwxWhfwhgwWggWwwgwxghxxwxfgWhHVgvwhXwhvfwwfwvwxxxxVfwgxgwWgVgfxgggwvxwwwwwxwfwgwwxxwxwwwwwxxwgwwwwghxfvWXWexfWWhwwfxhgfvwxwggfhwwwwwwwwWgwvWWWwwgwfvxgVfwfgvgWwwwwwwxwgvvwwwxwxwvwxwhgwxxxxfgfvVgghwvwwwwwgfvwxgwgwgvwwwfwwwghghhxxwxxwgxwwghgwwwwwwwwwwgxwwwxwxwxwwxvxxwwxwhxxxxwwwvxwxxwwxwwwggfwwwxwwwwwxxwxvwgffwwggwgwwxwxwFgfgwVwWgWgwgwwwfxwxhwwwxwwwWVWgwGHVxXwgwwwwwwxhxxxxxxWvgxHWVgwggXghggwXXgxxxwhxxwWWWxggggxhxwwwvxxwxwwwggwwwgxwxvwwwxwwxwwwxwwvwwxxxwwxwxwhhfhwgwwwhwhxwwwwwwwwxxxsfvwfgfffvvvfgVvgfffwwwwggVffvvxffvwggVfwvgxwfgVvfvwxwwgwfgvwfwgU5vwwfwvhwwwwxxgvvxxwWwfU5vfwvwwwwvwwwvwxwWxxwxfgfwfffvwxwxvwfffvfvwwgvwxxvwwxwwvvxxggwwgwvwxxwwhwxfgfgVvfwvwgwwwwxvwgvwwwWwvwfwwfwgvwxfwvwwfwxvvxvwvwxxvwwwgwfgvxvwfU5vfwwxvggwwwgvvwxwWgU5vfvwwgwwwwgwwgxwWwwwxxwwvgvwwhwwxwwvwgwxghwwwgwxgwwwxwwwgwwwgxxwwwgwxwwgxxwwhfgVvvwwgxwxwgvgwwVwwxwwwwwxhgwxxwxwwxxwwvwgwwwwgwgwwwwwvvwgwvxwwvwwxgwwwfwwvvvxvxwxvwgxwwxvvwvgwwwwwvxwgvvffffvwxwwvwwfffvvvvwgwxxwxwwvvwwxwfwgxwvxwhwxwghxghfgVvfwfxwvvvwvxwvwxwgWwxwxwwhwxwwwxwwwwgwwvxwwwwgwwwvwwxhwwwvwxwwxxhwwxxxxxgwxwwwxxwwxxfvwugwxwgwvxxwvwwvxwxwwwwwwwwxwhwwxxxwwwxfgVvfwvxgwvxhwgvvwwwWwvhgxgwwxwwvwvggwfwwghxwwwhwwgwwhhgwwwwxgwxwxgwhwxgwgxvwgwwghwhwwwwwwvxwggwwwxvggwgwwxgxghwwwxwwwwwwxwuwhwhwwxgwwxxwxwgwgwxxwwxwvwxwwhxxwggwxxwwwxfxfvwwwwxxwwxwwxgwvwwxgwwwwwwuvvwwgfxfwvfwfwgwgwgwwwxWwgvwxVgwwwgwgVgwfwwvwwgwfvwwwUgeggwewWwgwwwwwwvwwfwfgwxvxxwwgxwfvgvwwwVffvWVfwwvvwxwwwwxxwwvwvwVwfvxuxgwxwwxugfgxwuwuwfvfwxwuwvwxwwvwuwwwxwwwgwwgwvwwgfVfwgwVvewwgvwhwgwgwxwwxwxgwvwwgvxwwxxxxwxggwwwgwxwvfwhhwwgegxxgwwxWgxwxxwvxxxwxwwgwgwwgwvxxvwvwxwvwuwhxwwxwxxwvxwxvwxwwWwwwwxxwguwxxwvvwxwxxwwxxwxxwwwwwwgwvvwffefVffwvvwxwwwwwwxxwvxwwwwwgwvvwwwwvxvfvgwwvwuwgxvwwwxwwxvxwxwwxwxuvwwwxwwwwxxwwvxwxxxwxxwxwxwwvgxxxxxwwxxgwwvgwvwwwwxxfvfwggvhuvfwgwxxxvwxwvwwxvwxfxwgwvwvxwwvggxwwwxxwxwgvwxxwwwxxvhxhwxxwwwwwwgxwwwvwuxxxwxwxwxgwwfxwxxxxxxhxxxxxxxwwxvxwwvvxxxwxwxxxvwgxxxgwwgwgwfwgwwfggwxwgxxwwgwxwxvggfwgwwwwwwwwwvxgwwwgvgggWwwwvwfffhwwwfwfwwwwvggfgwvwewwwwhwgxfwwwgxwuwxxhwwvwwgvwxwwxVgfggwwwfvwxvvvwwwxxxxxxwgwwxwhvwwxxwwfwWvwwxwwvxwgwvwfgwvwgwwwwgwgwwxvwwgwwxxxxwxwxgwwhwgvwwwwggfxwwvfVfwgwwwgvfwwxwwgggwxfvxfvwxwxwxWwgwxxwvwgvwghvgwfwxwwgwWgxwwxgwwvxxxhwwgxxwWwvxxxwxwfhgvxWgxwwwwwxwxwwwvwwwwxwuvvwwwwwvfwwvwwuxwxxxwwgwhxxwhwwwhxxvwxwwxfhwxgwwgxwwxwxxgwwxwwgxgxwfwwvwfwhwwVVfhwvwgvwwwxwwwxwwxwwwxgwvxwWwwxxhwxggggwwxwwvgwfvwwwxhwvgwwvxgwvxwwwxxxxvxwwgwxgwxwxvgvxwgwvwuxgxwxxwxfwwxwwxxxxgwxxxxxxvwvxwxxxvwvxWxwxgwwhxxxwxxxwxwwwxfwgwwwwwgwwxwgvwhwgwgwwwfxwwwgwwxwxwwwxwvwwwhhwxxwxxwwgwgxxwxxwxxwxwhgxxhwxxvhxxvxgwxxhhxxxxxxwwxwxxwwxxwgwwwwwgggxvwwwwwxwxxxwxxwwvvwxwxhxvwxxwxgwwgwvwxwwxwwwcffvfVffgwfxwffwgwwxxwggwxwvxVvfgeefwwxwwvvxvffwwwwwwxwxeuvwfgUggfwguvvvvfwwwhvwxwhfeffwvUgvwwxgwwwwwwwwwwgwgwVvVgUVefVfwvwfxfgvvwwwwgwvxwwwfVevvvvgxwwwvwwwxxxxwfFdfVvSgwwvwwwwWgvvxwgvxwgwgggfwvvwvwwuwwwwhwwggwwhvwweefgvffwfVVwfvvgvfgwwwwgguvwwwwgfTfggvfffwwwgfwfwwfvwvxgwwwwvgvggwgghwwxwxfgwxgxxxgwwhwwwxwwgwgwxgwwvwxhvxgvhwwhwxwgvxVfgwgwfghwfxxvfwdgwwwxwwwgwwwWvvwwwhfxwwwwxwwwwfvvwwgwwgwwwvwvwwwwfwwwwwwxwwxwwhvwwhwxgxwwgwxwwwwffgUFvvgwwfwwfgwgwvwgwwVVewgvvwwwwxxfvwvwwwxxfgfgwegWwwwvxwWuxxwwwwwxxxggvwvwwwvwwxwwxwwwwWwggxxwxvwwfwwvwxwxwxwxxxxwxxvvxvgvvwxwwwxxxxxxxxwxwwfvvwwwvgxwvwwhwfwwgxwwwwwxwxxxwxvwxwwwwxvwxV5ewFdggwxwggWvegwVgxwwwgwggggvvgvwfvxwxwxfwfwwWgwwwwxxxgxwwfgfwvwxwwwwwgwwxgwxwgwWwwgwhwggxwvwwwxwwgwxwhwxVfwwwwwxvxxwWwwgxvxxvwwwwxwxxwwgwwxwwwwwwxxwhwwfwwxwwwvggwxwwgwwxwwxxxwwxwwxgwxwwxwxwxfggvgvvwgVeeeWevwvvwgwvgvwggwgwwvfffwgvwvgwvwxvgvwvxvugwwgfUfegVvvgffggvvuwgvwvwgvuwxwxvggvgvvwwwgwwggwwwxwxxwwhwwwfvvhgvfgfvvfgvWfwvwgwwxwwwvvfwvwVvvwfwggvwxwwwvwwwwwwvfwgvvgfvuwwwvgwvwwwgwwvwfvwwwwvwwwwwvhxwwvwwgwwxgfUwwwvgveVuwVvfgfggwvwewgwgwvwWfvvxwwwvwfwwwwwwvwgwwhxwvwwwwwxxwgxwxwvxwxgwvwwgwvxwwhwvwwxwwwwhwwwhwwwwhwwxvwxxggxxwxwwwxWWhxwvuwwwwwwfwwwwgwwgwwwwwgvxwxxwvwxwwgxxxwwwwwxwwwwvgwxwxgwhxwggxwwwwwvxgfwwwvxwxwggexwvwwfxwxwxwgvvggwvgggvggWfgvwgwwwxvggwfggwvwWvvwgwhgvwxwwxxwwwwgwwuhwwggwvwwvggwxwwxxwwwwgwvxwxxgwwvwxxxwxxwwwwxwwvwxwxxwwwwxwwwwxwwwwvwwwxwwwxxxwxxwwxwxxwvxwwgwxwwwwwwwwwvxxxxwxwwwwxxxwfvwxxwwwwxvgvgwvgWvvxwgwxgwgxggwggggwwwxhwwwgwxgwgxwxwwhvxwxwxWWfgxwgwwxwwwggwhwxggwwwgxwxghgxwxxgxwhwxwgWgfhwwwxggwxxxwvxwhxwwwvwxgvwwwwwwxwwwwwwxwvxxxwxwxxxwwwxwwwwwwgwwxwwwwwxwwwwvwvxwxwxwwwfvwwxxwwgwwgwwwffgwewgwxwxxgfhwfwgwfwxgwgwwWvfwwxhggwwgxgwghwxwwwwwgffwvwfwFwegggwgwwWwvwwwwgwwgxvvggwvxvxvwxxxwgxxwwwgxfwfwgfwvvvwgwwwxvwvfwwwwxwwxgggvxwwxhwxgxghwfwvgvwvxuwVwwwfwggwvfvgwvxwxwxfwwxvxhvvwwwxwxwgwgfgwvfgFvewgfwwggwVvfggwgxwwgvvxwwvwgfgwwwhxgwxhwwwxxwwwggwgvwxgfwgxggxwhwwxxxhgxwwxgwwwxxwxvwwhhxwxwxxwwwwwfwwvvuwwwwvwxwwhgguwvwwwxwwxxwxwxwwxwggxxwwgwwvwwvwxxhwxwwwgwwxxxxgxxwwyxxxgwwuwfwgevfwvgwxvwwwwvgwwwwwwwxgfvfwxxwgvxvwxhwxwgxghwwgvgxwwwwtwwwwwxwwwxuwwxfvwwwvxvwwgxxvwxxwxxwvxwvwwwxwxxxwxwwvfwxgxhvwwxhwwvvwwwhwwuwwwwhwwwxwxxxhxwwwwxxxxxxwgwfvgwgvwwdwgwgvwwfwwguwwggwggwwxhwhwhgwwgwxwxugxwwwwwwxhgwvhxgwwvgwxwwgwwwxxhhxwxxxhwwxxwwwxxxhwwxxxxhxxxxxwxxwvwxfvwwxxhvvgwwxxggwwwwvwwxwwgwwwwxwxxxwwxwvxxwxgxxwwwhwxwxwwwxxxwwwfuwwxwvgwguwxgfwwwghwgWwwvgwwxwwwxwwwgvvgwxwxwwfVhwggwvwwwgwvvgwwxggvwwwgwVvugwxwwxwvwxwwgvwxxwwwxfVfwwwwvxfffewwvxvvwgwxwxwwwwxxwxwwwwgwwvfvvgwxxwgwvwgvfwxvwwwefgvwwgwvwxxwwwhwwwxwwwwggwwgugvfgwfXwvwwwvxwhwwwggvWuefgwwwvxxvwwwwWgvxxxxwwxwgvwhxwgWgwwwwvhxhvxxxxwwwwgwWfgwxxwxwxxwwxxwgxxwgwfvgvwxxwwvwwwgwwxwwgwxwgwwwxvxxgvwwxvwggwgvwxwwxxwxwwxwxwwwwwwwxxxvwxwxhwxxxxwvffwwwxvvggfgUvwgwwwgwwwwxxxxxxwxxhvxxwwggvwwwvxwwwwgxgwwxxxwgwxwwxxxwwxxwxwfuwwvwwwwxxxxxxwwxxwwxwwxxxwwwwxxwxxwwgfwxxxwxxwxxvgggugfwxvwXwwxWwwxwxwxgvugguwwWvwwxxwgvwhfvxwxxwwwWwWvwxxxxwxxxxxwxxxxxxhvwxxxxwgwxxxxhxxwwfwxwwwwwwxvxgwgwxxwxxwwxxwxwwxxxgxxuxxwhwgxxxuwwgwfwwwvvwwwgwvgvgvwvgwddVWggwwvwvwvgweufgwwwdtVVeufgwxwwwwwfgwwwUuugxwwgggfvghfwgwwwwUuegwwgxwwwwfvvwhvwgwwwwvwwwwvuvwwfvwwwwufwdtVWwvwwxwwwvwvveufgvwwgwwvxwwvwwgwwwwvfvvwwwwwvwwwwwwxvwgwwwwfwwgvvwfgwwwxwwwwwvxwwwwxwxwwwwfvvwwgggwwhfUuegxvwfvwwxfvfxwwgwwwwUuewxvvfwwwwwvwxxwwwfvvxxvwfwwwxxgWgvwwxhxvfvwwvwvwxgwxwhvwghwvwxwxhvwwwwwwwwwwwwvfgfwgfgvwwwwwwwwwxwgwwwxxgwwwwgwxwwwxwwxvvwwwfwwwwgxxvwwwwwWwwxwggwfxwwwwgwxgxwwegwvwgwwvewwdtVWgvxwxwwfvvwweufgvwwgwwwxwxwwvwwgxwwwwvfgfwwwwwwwwwwwwgwgwxwwxvwwwwhxwwvxwwwwwwwwwwgwwwgwwwxxwwxxwwwwwwwwxwxwxxxwwwgwxxwxwwxwwwwxwvvwxxxwxwxwxwwwwxwwwwwwwwgwxffwvxvwgvgxwwxwwwwwwwwwgghxxxxwvwwwghwwwwxfxvvwwwgwxwwwhwxhgxwwxxhwxwwwwwxhgwxgxxxwwWhhwwxwxwxxxxxwxwwwxxwwwwwxwxwwxwxwxwwwhfwxwxwwwxwwwggxxwwwhxwwwghxxwwwwwxwxxugVwwgfgVwvwvfugfvvvggwuwfwgvwffvvhfwWwxgwfvvxfWVggwgwVuwvwwvfwvwvffwugfwfvvgfVuvwgegvvfgfwwffgefVwfWwvvwwvgVwfWggvVgwwewwguWwugvfVvvwgfvtwffegffVwfewhggfffggwvwgvuxvxffwvgvxgwwwwxgVfvgwvgfxvwWefgvvvfgGwgwugugvwgvwwwfwwuwvwwvxwwfvwfvxfwvgvggwfgffwvwfFvggvvwgvvwwwgvVWffWgVggwgggwwwWfVggWwgWwwfxhxvggwwwgwxwhggvfvghwgwgvwwxgggwgwgwvwxvwwWgggwfxhhWxgwwwvwfgvwwwwvwvwxvwffuwwgwgwvwwwvwvgvfwwxuwfxwgwgwvwwhvvwwvwvwfwxvgxxwwwwwwhwWxwgGwwwvgwvgvwwfxwwwfvwwwvxxvwffwFwvxvVfwvwwWvuxeffwVfggvuwwvxvwfggwgwuxVwwwfVgwwwwhwxwwxfhwvgwgfvwvgwwgfvwwgwwfwwwwffvvgvgfvuxwvvxwvwxwuwvxwxxwwwwwwwvwwwfwxwxxxwxgwwwwwwwwwvvhwwxxwvwxvwvvvwvvwwxgwwwwwwwgwvwwwwwuvhwwwwwwwxwvxxwwxxgwwgwggvwvwwxfwwxgwfvggfwvgWWvwwvfwvgggxvgwWwxfwgxwgwggvgwwgwggwwvwwwvwwwfxxxwggfxhXWhwwxgwgwwwhgwwhxWwwwwgggxggwxwwVvwvgxwwwvwxwwgwvwwwwwwwwxwwwwwxvwxwwxwgxwxwxwwgwwvvwwwvhvwwwwhwwwxwwvwwvwwwwvxwwwwwwwugUwfwfgvvvwfwFwfgvgwwwxvgfwVwfwvWvvgfEwfwvgvwvvfwEvegfwwwvgwgfwwvffTvvvVvfwVWvgfwwwwwfvwgfwvwgevfgVVgwvvvwfgwvwwWgwewwwwxwvgvuwuvUwgfggffwVfuwVwwwxwxfwfwuvvvvufwvwwwfvxwwwgvgwgvwwvwgewvwgfvwwwvfvwWvwuwxgvfwvwvwwwwwxwgVxfwxwgwvwvwfwwvwfwfVeguwfgwFgvVVwggwwVvvwWwwwfVewgwFfgwvvwgwgfffvGwgVgwxwwgwwwwwgfwvwvfhwgwxwwfwwvxhhgevvvWgwVxwXxgfhvwvhwgxxgxxwvwufvWwwwvxvugvVwvwwwwxwwwwvwwwxvwwwvwwwvxwwwwwgwvgwwwvvwwgwvxwwwwuwvwxwwxwvwxwwxwvwwwXwhwfwxgVhwxvxwwwxwfvwwVvwffVwugggfffwEgvWvwwxwxvgwwefwwfuwgwwwwvvwwwwgxvgwxwwwwgvweggggwxvgwvvxwfgvfwxxxwxwwgwwxxvgwwwxwwxwxwwwxwvwxwwvwvwwwwxwvvwvwxgxwwwvwvwgwwwwxwgwwwxwwvwwfwwwfwvgvxggwwgxgwwwvwgwwwwwfxxxxwwhvwxwwggvwggWwgwwfxVvgwGgvgxgwwwwwgwvwwwwxwvgWwgwwwwwhwXwwvgwgvgxwewwWwwgwwgwvwwvxwwhwvxwwxgwwvwvgwXvwxxWghwwxxxwxwwxxxwwfwxwwwfwwwwwgwvwwvggwwwwwvwxgwgwgwwwwwwxwwgwwxvwwwxwxwwwwxvwwvgwwwxwwgwwwxxxxvwfwfvfwwwfgggfgvfwvwwgwffwgfwVWfevwgvgwgeveWevwwvgvwwvwvxVgVguwgvvggwgxwwegWwgwvwwwwwwwwwvgfffguvvwgwxxwggwvwxwwwwwhxwwfwvgefwfvvwvwfwvwfwgwwxwwvwfwwwfwuwwwwwvwfgvwfwwvhwvvgvwvgwxvwggwgwfwwwvfwvxxwwfuwwwfvwwvhwhgUwvwwwxwwxvVgfVewgwfwfwwwvwegVvgwwxfwvwxwxfgfgVwvwwwwgwwgggvvxwxxwxhwxxwxwwvwwwwwwwxwxgwvwwxwxxxxxxxwwgwvwwhwhwwxwWWwwgwgwxxgghxwvexvwwvgvwwwwwhwwwwwwwgwwwxwxxxhwxxwwgwgwwxwhxwwwvwxwwxvwwxwfwwwgwwvxvwxwwvhxgfwgfewwwxwggwxwwvxxvwfvvgeffgvwvfxfwgwwxfwwxxwwwvgfwvwfvuwvwwwfvggwwwxwvvhwwwuwwwwvwfwwxwwwwwwwwwwwhxxwwvvwxwwxwwhwxxxwwvwwxxwwwwxvwxvwwwwxwwxxwwwxwxwxwwwwwxwwxwxwvwwwxwwgvwwwwxwwwwwwwxwwwwxvwxxwfvvvwwwwgwwgwgfwfwwwvwwwwwwxxVvvwfggwgwggXWfwgwgxwxwhwwgwwwwvxxwwwhwxwhhwwwhwgxwwwxxwxghxhhgwWgfwxwwxggwxxxhvxwhwwwwxxxwwwvwwwwwxvwvwxwwxwxwwxwwwwwgwwwxwwwxxvvxwwhxwwwxwwwvgwxxxwwvxwxwwxvwgwwwwwgwxvwgvwwwwwwwwfwgVvuxggwvwfUwwxwvwwwvwgwgwvxwwwxwwwwwwwwgfUvvwgwwvgwwgVwuwwwwwwgwgwwggwwxwwwgwwwwwwhwwwwwwwgwwwwvwwwgwwwhwgwgxwggwwwwwwwwxfwvwwwwwwxwhwwwxxvgwgwgwhwwxvxwwwwwxwhgwwwwwxwwvxxxwxvvwvwxwwxwxxvwwwwgwwgfUvvwggwwwwggvVvvwwwwxwwwwwwwfwwxwwwwwwgwwgwwgwwgwxxwwgwxxxxgwxwwxwwxghwxwhxwgwgxwwvxwwghwgwwxhwxxwwwhxgwxwwxwwwwwwgwvwvxxfwggwvwwxxghwwwwwwwvxwxwvvwxxxwvwwxwwwwwxxxwwgwwxxgggwwwwxwxxxxxwvvwvxwwwwxwffwwwwwwwgwgxgwxwgwwwxwwwgwwwwxvgwwxwgvwwwwxwwxxwwgggxwwxwxwvwwxgwvgwhhwwwwwxvxwxxwwwwxxxxxxwwwxxxxwwwwywwgxwxvxxhwxgxwwwxxwxvxwxxxwwwwhvvwgxhwwwvwwwwwwxwwvwwwgfwwxvwwxvwwxwwgxgxwgwxwwwgxwwwxxxwwgwwhghxxxxwwwwwxwxwwhxwxxwgxwwwxwhgxxwxwxxxxxxgwwwgwwxxxxxwxwgxwwwxwwxxxwwfvwwxwxwxwxwwxwxwwxxwxxxwxvwxxwwvwvwwxxfwggwvgxxwwwgfvxwwwwwwwvwvwxvwfvxwwwwwwgwvwxgxwgwwgwwvvfevwwfvwwugwwwwwvwfwvhxwwwgffwvgvvwwgvwwhwwwxwwxwwhxfwvvffexwgvwvgggxvwxwgwuwxvvwvwwwwwwxwwxxwvvwgvvfwwvwvwwwwwwwwwvgxxxxvvwvwgwwgwxxxwwwxxwxwwxwwwwwvwvffwgfhwvgwvgwxvwgwvwwwxgwwVvgvvgwuvwxWwwgwwwgwwwwhwxwgwggwgvwguwxxXgxwwwwgxwwxxxwwfWwgwxggwwwwwwwxxwxhxfwwwfvvvwgvwvxwwwvwwgwwwxvxwxvwvwxvxvwhwwwxwvgxfwwvwxwwxwxxgwfxxwxwxhgwwwxwxxwhwwvwfgfvwwwvwwgvwwvvhwwhvwxwfwwvwxwwxgwghwxwxxxxwxwwwfuwwWwwwvgwwwwwwxxxwwwvvwwxgwwxwvxxxhwgwvwxwxwvhxxgwwwwxwxwhgwxwvxgwvwwggwwwwvhwvwxxxwwxwwxxvxxwxvwWgvgghwxwxwwwwvwgwwxgxwggwwwwwwwwxwhwwwhwwwvgxxwxwxvwhggxwxwxgwxxxxxxxgxhxhwxwwfwwxvxxwwxxwxxxgwwgwwwwxxxuwgxwwwxxxwwwxxwhxvwxwxxxxwwxxxgwwxxwxgwvwxwwugVwfgvvffwvgUfgwgfvwfwvwWvwwvggvuwuggwxwvVvuxvVvvgfwfvwfwwwgvfwvftffgeefweVvwfwfwvwgweVwwufvgffwvwwwfggwwegvvwgwgwwwwvhwvgtwuffvvwfvvvvevfewvvefWvwvwwxvwwuvwwgvxvxVuwvhwwgwwwgvvgwvfwvfwwvgwwwvwVWwvvwvgwvwvwwgwewwgvgggvvfwvwwhwwvgvvwfVuvfWffgvUgvffwWwgfgvUgggvVugfwfvggfwwwWwwffvfwfwwfgvgwWwgwwffvgvwwfvgwvfwwwxxvhgwvwxWfgvwgvwghwwxwvwxfgxhwwwgWxgwxfxvfwvvfvfwwxwvgvwwvwfgfwugwwvvvvvxexwwwwvwvwwggwxfwwwwwvwwgwfhwwwvwwgfvwwwxWVwxvvxwfwwxvxxwxwwwvwwwuvWwewvVffvfffvfvvffVwfvvVgwvwgvxvwgufvVwwvwvxFvvwvghhwxgwfgvVvvvfwvgwwgwwwwwwvgwXwwvvwwgvwwvwwvxwfwwhwwvgwwwwwvgwwwwwwvwwvxvwwwxwwwxwxvxfwwwwwwxwvvwwfvwgvwwwwwwwwwwwwwwwvwwwwgwwwwwwwwwwgwvvvxvvwgfevgfvvvwfwgwxgwfwvvfGvwwwwggxgvwgwVwwvvhhwVwWguWxghwwxfxvwvwxvWfwwwgwwvwwxGggggxhwwwwwwgwwwxwwgwhwxxxwwvfgxevvgvwxwwwxvxvwwxwvvwwgwvwwwwxgxwwwwwxwvwxxwwvwwuvxwwwxvwwwwwgxgxgwvxvwwxwwwxwxxvwwwvtwwwggfwwWVfvgfggwvfwwgwwwggwwwwgggUwwggwxwwxvgfgwwwwwwxggfwgT%vfwggWvfwge6vxxhwgwfwwwxwwwfwwuwwwxxhwgwvwwwwgwgwvwwWVffwggwwwwwwgwwgwwwwwxwwwwwgwfxwwwvwwvggwhwwvwgxxwwvgfgWvfwwwwuVwgwvwwwfvwwgxevvwggwgwgwvvuxghwvwgwvwwxwgwvfge6vgwwggwvwgT%vxwgWwwwwwvwgfgwvgwwxwxhxfwugwxwwgxgwvwwwgwxxhwwwwwwfvxwghXwwwxxwwwwxwxwwxxxwwhxvwgggwxxwwhxvwxwwwwgggwfwwwxwwWwwwwwwxgvgxuvgvgvwwgwxwwhwhxvgvvxvwwwwwwxwwgxevwwxxwwgxuvxwwwxvwhxfwxwwwgxvwhxwvwxxwwgggUwwwfwwwvwggvwgfwwxwgvgwxvwwwwwwxwwvwgwwwxwwxxxxwwwwggwwuwgwfxwgwgwvgxwwxvwwhxfwwwxexgxxhfwvwxxXgvwwwwwxwwxwwwgwwwxxxwwgxwwwxhxwvwhxxxxxxuwwwxxhwvwvvuwxhxhxvwwxwwvwgfwwwxgwvwvwxxxxvgfggwvwwvggxgfwuggggwwwhwgxvwwwwxvwxxvwhxgwvwugXwXgvgVwwxwwwwwwwwwhwwhwvwwxwxxwwhxvghxwwwXgvwxxxvwxXgvgXwwvxxxwwwwxgwvwggwvwwgxhxvwvvxvwxxwwxxVwvxwxxwgwvwxxwwwxwgwvwxwwvxxwwxxwwwuwxxxwxwxxwwxwfwVfVVTwgvgwvgvwwfVwfvWwgevfvvwgwuwfVTuwxwwvwvxgwVuwwggwxwggVVwvUevvVgvdfwgffxXfgwvfwgfWfgVvfwefgvwfwwwgxxvhxwwvwwguvwfevgvvwwwwUugvfvwvwwxfwwvwwuwwwwvvwwwwxwffvgvdfxwwvUewwwfwvuWxxvwgWDwvwwwevwxwwxxwwwvwxwgggfEgffVfwfwWvuwwgUvwwgfwvevxwgfvvEufwffwvwwgwffxwgWwgwxwwwfghgewwwgxvfWxwhfwhxhghXFwwggwwvXxvfwxxwwwxXfxxhgufgfvfwvvgwwwvwwefxwvgxffwgfgwwxwgvwvxwwwwwwgwwgwwwwwwwxgugwvwwWUwgxhWTxhUxwfgxwwfgxwwgvwxxfewwgwwwfVvwgvvxggfgvvgwwwvwwwwgvvxxwxxwwwwvwxxwxwvwwvvevvvwgvgvvwxwvWvxwwwwwwwgvefxwwxvxwwxgfxxxvwwwwwwwwxgxwwwxgwxwwwhxwwwxxwwwwvvxwwvwwvwwhwwwwwxfwxwwwvwwwwwwvwgeVvugwwwggfvwvfvwgffwxwwxWWUwwwgwfvgwxwwxwggwgwgvgwwvwwwxfvWxwggfxxxgxXhUxghfxwwvwwwxvxWVxhxwwwwwhghwwfwxhwwwwwxwwghfhwwxwwxwwwwgwwwwwggfxxvgwwxwxwxwgvwwwxxxwgwxxxwwwxvwvwvwvxxwwvxwfvwwvwxgwwgvwxgvvvffxvwguwfguwgwvvgwvwwxwwvgvvwwgwgwvfvwwwfvwwwfvvffvegvwgwvwwVvtgwgvvwvxwwwvwvwwwwwgwvuggwxvwxgwwggevwxfgfvwfxvwvwwwggwvvwvwwxwwvvvgvwwfguwvvwvwuwwxvgwwwwtwgvwwfvwwfwwgwwwwwwvwgwwxwffvwwxvvvggxgvggwgwuwgxwwxWvdgwwwgvhwwxwwwxwfgwwwhwwwfwxgwwwvxxvgwvxwwxxxwxwxgfwxgghxwxxwwwxvvwwxgwxwvvgwwwxxvwwwwwwwwgxwwtwwwvvvwxwxwgfwwxwwxwvwwfwwwxwwvwwwxwwwwwghwwwwwwwwwvwwwwwvggvwwxwwhwvvgwwgvfwxfvwwwxxxgwwwgwwwwxxwvvxwwgxwxwfvxvwfwwxwwwguwwxwxxxvvvwfxwgxgwxxwxxwxxgvwwwwwwxvvwvwwvvwxxgwwxwfxfwwwwxwwwxvwwgwxhgvfwvwxfwxvvwgwwwvwhgwwxwugWwfvgvhwwwxxvhwxxxxwwgxxgxygwwxwwxxgxxgwwwWwwxwwwwwwwxhxvvwwxwwvxwxhxwwxWwwwxwwwwwxxxxhxwwxwwwhxxxwxwxxwxxvxwwxwxxwwwwghwfvWwwVgfwvwgwgwwwvgwfwgvfWgxgFuugweFfvwffuxhwxxgwwwwfwwggwvvvwwggwwhgwwwwwgwweFwgwvwVvuxwwwgxvxwwgwwwxwwwvwxxwfgwwxxgvvwwggwfwvvxxwvvwxwwvvfwhxfwwwwwwwwwxwwgwfvvwwxwwggwwxxgwxwxgwggwuxwvxxgxwxxwgfvxxwwwwwwwggvWwgwvgxggwxwwvvwwvxwwwwfVWwvhFuvhhwwgwvwwxhgwxgwwwwxhwwwhxxwgwgxwxgwxxggwxwgwwwgwxwwwwgxvwwgwxhwwwxxghwwwfgwgwvgwwwxwwwgvvvwwwgxwwwvgwvxxwxwwxwwwuwvgfwxxwwxwwwwxwwwxxwxwwhwvgwwxxwhwwvwxwwwxwwxxwxgvxxgxwxggwwwgvwvfgvvwwwwvxwwfwwgvvwxvxWwfwxwwxvwwgwwwwxwvxwwwwgvwwwhhwhxwwvwWvvxwxwxvxwxwvwgwwwxwgxxxxgwxgwxxxxwxwxwwxxwwxyxwwxxxxxwwxxxwxxwwwwwxxxwvxxxwxvwwxgwwvwwewwgvvxxvgwwwxvwxxxwxggwxvxwwwxwwgxwwggWfwgwfwxwhwhxgwxwxhxxXhwxwxxwwxwxgggwhxwvhwxwxwwVgwghxVxhxwwwwxxxvvgwxhxvxxwwwwwgxgwwwxgwxgwxwxwxwxxxxwxwxxxxwwwxfwxwwuvvwwwvwwwwwxwwwvwwfwwwwwvxfguwvfUvvwwvwwwwwvgwvwwwxwhgvwwfUwgwwwgwwgfwvwwgwwwhwwvfVwwwvgxvvwwwxgwvwwxvwwwxwvwwfwwvwwxwwwxwwvvwwxhhxwVwvvgvgwwwwxvwfgvwwxwwxgxwwwxfwwwewwwfvwxwgwwgvvwuvwxwwWwwxwwvxwxxwvwgwexvgVvvwvgwwxwfUwwwwwwwxwufUwgwwfwwwwWvugwhwfwxwgxwxwwwVwgxvgxwxxwggxwwwwxxxwffgvxwgWwwwXwxwwWwwgxgxxxwxwwwghwvgwwxwgvwxwwwwxfvwwhwwxwwwewwwgvwwwwwwgwvwxwwxxxxwvxxggwwxwxvvxwhvxwwvxgwhvXwwgwgwxxwwwvwwwfwwxwwwwvwgwvxvxwxxwfgwwwxwwwhwwgwwgggwwxxxgvwwgggwwxxxwwgwgxxwwwxvxgwxxwvwwWwvwxxwwwvwxwxxvwwxwwxwxwxwxwxxwwxxxxxwvvxwvwwwxwwvwwxwwwwwwxwghwwhxwxxfxxwxwwfgxvxxwwwxxxVwvgwwwgwwxwxwwgvvwhwwwgxxxwvwfwgwwwxwwxxvwwxxghxwxxxwwwgwwgwwxwWgxvxxwxxxgxxwggvwwwwxxxwxwwvxxwxwxxxxwwvxxxvxxwwxwxwwgvwwwxxwwwxwxxwwwwVwxvxxvwgwwwwwwgvvvwgwwwwwwwwwwVVgvwwvxfwgwwwwwwfwgwVuwwvwwwwwwwwwvgwfwwwwwwwvgVVvfvuwwvwwwwfvwgwwwwwwwwwwwwvwwwwwwwgwwwvwwwwgwwwwvwwffwwvvxwgvwwwwgwwwwwwwwwwwwwwwwwwwwgwwgvxxfwvwwxwfwwwwwwwxwwwxwwwwwwwwwwwvwwwwwgwgwgwwwgVVvWvuwwvwxwwvvwgwwwwwwxwwwgwgwwwvgwwwvwwwgwxvxxxwxxxwwwvxhwwxvfwgvwwxwwvgwwwxwwwwwgwhwwxxwxwwwxwwwwwwwwwwwvfwgwfxwwwwxwxxwwxwxxvvwwwxwxxwwwxwwxwxgxggxwwwwwxwvwxwvxwwwvwwwwxwgvwwwwwwwgwxwwgwwhwwwwwwvwwwwwwwvwwwwwvvhwwwwwwvfxwwwwvxxgwvwwgwvvxxxwwwwwvxwvvwxwvvgxwwwxwxvwwxvwwwwgxxwwwwwxxvxxxxwwwxwxxxwxxwwxwxwvxxwxxxwwfwwwxwvwwwwgvwwwwwwxwwwfxwxfwvxxxwvwxwwwxxwwhwxwvxwwxwwvfwwwxwxxwwvwwwwxwxgfxwxxxxxxxwwxghxwwwxxwwwxwwgwgwvwhwvgwxwxwwwxwxwvgwwxwwvwxxwwxwwwxwwvgwxxxfwxfwwxxwvggevwgvweFwwgwwvwvvVvffwwxwwgvwxgVvxvvWvgwgwUvdwxvxwwxwxwfwwfVgwvwgwgwhwwgewwggwvWvwfwwedwwxggwfwxwwwwxvxwwwwwwfvfwwwewugwfwvwwfwvwvvxwwwgwxvvwxVwvgwgvxvwvwwwwvwvxwgwufwgwxvxwwgwvefwxwwwxwwwvhwxgwvwwxwvwwfweFwgwxwggwwgggwvwwwgwwwfwwwwVuwwwwfvwwwwgwwwwggwwwxhwxwwgwwgwwwgwwhwxwhwxwwxxwvxxgwxwhxwwwwgwwgxxxhwhwwxwwvwwvvwvwfuwvwwwwghxwwwwvwfwxwvxwwwwwgwwwwxwwwxhwxwxxwwxvhxwewwvfwvewwxhxwxxvxwvxwwxxwwvxvfuwwwwfwwwfvvwvfwgfvwffgxwwwwwwfwwwwwxfwvwwfwwhxwwwvfxfgvwfwvexxwgwfwwwwgwvvvwwwwxwwxwwwwwxwgwwxwwwxwvwvwvvwwwxywwwxxwxxxwwwwxxwwxxxwvwxwxfxgwwwwwwxxxxwwxxwhvwwwewwgwwwvvwvxxfvvwwwgexwwggwfgwwxwvwhxwwwgwxgvwxwwwxwwwwxxwxhwwwwxwxxhxvgwwwxgvxwwxxvwxwwxxxxxhxwgxwfwxwwxxwxwwwwwwwwwwwwwxxxwwwxxxvxxwwxxxxwhxwwwwwfxxxvgxwxwuuwwxgwwwwwwwwwvwwwwfwfwwgwwwvgwxxwwwvvwwxwxfvvwvfffUgwwwvfwwwwwvwvwxgwwffwwwwwwxxwxwwVvvvvvfvwwwwxeffgwvwvxhvgvwxwxxxwhwxxxefUufwwfvxwwgwfvuwwwgxwxfwxxwwwvvwvxwxwwwhwxxxxgxwwwwgwwvggwxwxwwvfwxxwxwwvwxxxxgvwfwwxUvwwxwxwfwwwxwfwwxwweffwwwwxxwwxxfwwgvxwwxwwwvfgwwwxwwwwwwxwwgxxxwvwxxxxvwxxwxfgfwwwxgwwwwwwfwwwwvgwvwxwwxhvwxwxxgvvxvfWvwfwvwffxxxxwggxwxwxxxvfgwvwwgwwwwwwxwxxgwxwwwxwwwxxwwwxwwxwwfWvwgwgwwwwxvwvgvwxwwwwxxxwxwxxxxxvvvgwgwvvxxxwwwwvvwxxwwwxwwwwxvfVwwxwgxxwwwwxwvxxwhwxwxxwwwxxUvfvwwwxxwwwwgvxxwxxxwxwwwwwxxxxwwxxwxxwfwgwxwxxwhwvxwxwxwxwwxwwxxwwhxvwwwwfxwwhvvwxwwxxxxwwwhxxwgwegfgwvwggvvwgvggfvxwwgvwwvxwwwwwwwxwxwgwwxgwwxwfvfwvvvwwwfwgwvgfgvvgvwvgfvvgwwwweuvwwwwvwwwwxgwgxwvxwvgvwggwggwgwvwvwgwwgwgwvwwwwggwgvwggxwvwxxhwwvxwxvvgvVvuwfwfwwgvwwvvwwwwgwwwwwwxwwwwwwwwwxgwwwwxwwwgwxwwwwwwwxwwgffvgwwxvggxghwwgwxwxggwfwwwxxgxxxgxxwxxxhwfgwwvwvgggwwggwwwgwvwwwggxhgwvwwgxvxwxwxwwxwxghwxgggxxwwggwwxvvggxxwgvvxwhwwxwxwxxwhwwxxxhwxxxwxxxxxwwwwvgwxvwwwwwwwggwwgwxhwwwxwxwwgxhwwhfxxxwwwxgvvgwwfwwgfvgwvhfwxhvwgwwvggvvvvgwxhxxwxwwvwwvwvwgxwwwwwwwwwwwxwgxxxwwwwwwvwwxwwwxwgwxxxwwwwwwwvwxvwwwwfgwgwxwwgvvxxwwhhxwhwxgwfxxxwvgxwxwxwwwwvwfwwvwxwwgwwvwwwwxwwwwvwwwxwwxwwwwwxwxwWewvwxgwwwwgwvxxwwxxhxxxxwwxxxwxgxgwwhhwhwhwvhwxgwgvwvwwhvwgxwgwggvwxwxggwxwwxxhwxxxxfwvxgxgwxwxwwwxwwxfxvVwwwwxwwgxwwwwxhwwghwwwwxwxxgxxxwwxgwwwwwvxvwgwvwwxgwwwwgwwwxwwxwwwxxxxwwxgxuwwwwfWwwwvwwxwwxwwwuwggwvwhxwwwhgwxwwxxxwwwxxwwgwvwggVwdwgwVffwhhgwvwggwewfxwfwwwvwwwwwwwwwwxwgxwwwwxxwgwwxvgwxwgvevwwgVfwxwxwewvhwwwxhwgwgvxwwwwxwwxwwVvVvgWuvewvgexvwwgwwwgWuwwwwvuvwvxwwwxxwxxxwwvwhwxwvgvuvwwgWwxxwwgewxvwwwwwxwxwwghxxwwwxxxwxxxwwgwwwwwwwVvewwgwvwwgwwxgfxgfxwxhwwwxxxwwwwwxwxwwwxxxxxhxghxxwgwvwwwfvwwxwwwxxxvfxvwxwwxxxwxxxwxwxxxwxxxwwwwwwvwgxwvvwxgWxxgwgwtfxvgwxxwxwxwxxwwwwwwwwfwwwwwgwxwwvxgwwxwwvxgxxwwwwwwwxwxhxxhxfwvwVvgwwwvuwwwwwwwxxwggwxgwwvwxfwwvwxhxwwwwxxwwwgwwwxwwwVwwvwwwxwwxwwwwwwgwxxxwxxxhwxwwwvwvxxwwwwwxwwxxxxxwwxgggwxxWgvwwwhfwwwxwxhvwxhxwxxxhxxwgxhxxwwxwwwhwVvgwxwwguxwwwhhwgxggxhXwwhxvwwxwvxxwWgwxxvwhvxwwxwwwwwgwxvwwwxwxwwwwxwwwwgwxwhxxxxxwwxxxxwvxwwwwwvwxwwxwxwwvvxxxxxwwwwwxwwuwwwwwwwwwwxwwwffgwgwgwwxvwwwwvwwvwwwwwwgvwwwwgvWfegwvwvVUgfvwwfffggwVffWuhwwxwxhgffwhgvxwwgvwwwgwwxwxwvWWvvwwxwxxxwwwwWvwwwxxxxwhwwxwwxfVWWvuhxwwxvwguufwggvwxvwwvgwwvwwfwxgwvwwwxwwwxwgvwwgwvwxgwwgwxwvvxggfwxwwxwxwhvwwwwwxvgfvWvvwggVVxgwfeVfxwxxgwxfggVVwgXvxxwxgwxxxwxxwhxxwgguwwxxgvxhfwwxxwxxwhxhwwxxxxxwxxgvfgwgWvxxxwwxgvwvwgwwxwwxhwxxvwxwxxwvwxwwxxwwwwwxvwwwwxwwfwwwgwgwxwwxwxxxgffgvxwwxwxggfxxwwxwwwwwwxxxhwxxwwwgwwwxxxwwhwxwwxwwwxwwxxxxvxwwwwwxwwvwgwwwgxxvwvwxxvwxvwwwxxxxwxuwwfwxwwxgwwxgxwxxxxgvxwxxwwwxxxxxgwxwwwfgfwhgvxxxwxwwwxhgvvxwxxwxwXvvwxxxwfwxxxxxxgxxwxxxxwxxxxwwwwwxxwwxxxwxxxxxxwxwxwwwxwwwwwvwxwxwwtwwwwvvwwvvwwwfgwgwxvfgfvvwvwwwgwwxvwwwwwgggfvvwgvvwxfwgvvvvgggffeewvgvvwgggUSSwxgffvvvfvvwvvfwwxwgwUUfwwffwwggwvwgwwgwwvwVewwgfvfvvvffvgwwwxwwwgxffvwwvxgvvwxxggwwxxxvvffeewfvfvwwgvUSSwwgffwwgwwvvwfwwvwwwwwwwwvvwwwfwfwwwgwwxwgwwwuuwvgggwvwfeewxxgwwgwwfwwwwgwxwxxwfffwwwxgwxwwxwwgxwxwvwfvvgwvgwggvhxXwfvfxghffvfwwvwghgwwhgwffgxwwgwgwxwfxvwwwwuuwwwxxxfeewwxggwvwvxwxxgvwwxwhxxxxwwwwwxxvwwxgxwffvvwxvwwxwxwxfvfhgfwwghxxxwwxvghvxwfvwwhxxwggwwgwwwwwvwwwvvvggffvwgfwwxwwwwwfwvvwwwvwfvwxxwxxhwwwwxgvvfffwvvvwwwwwwUUfwffgwgwgwwfwvwwfgwhwwwwwxwwwvwwwxwwwvwwwwgfvfwwwhgfvwhvwwwwwhggwvvwgwhxwwxwwwxxwxgwvvvwwwwgwvwwxwvwvwvgwwfwgwvwwwxwxhwwwwwwxxgvgwwxfwwwwgwwxfvvwwwggwgxwxxgfxwwgwxhwXWwwfwgwwgwxwxwwxwfvvwwwgxxxwxxgwfwfxwxwgwwwxwxwxwgwwxxwwxwwwgHwwwwwvwwwxwwwgxxxxwwgwhvxwxxfwwgwwwWXwxxwxwxwwxwxhwwxxwwvxxxfwvvwwxfwxfxwwxwwwwwxwvwwwwwvxugfwwxgxwwxgvvwxwggwwxwwxgvwvgwwwwwwggxwvgxxwgwwwwxgwffwvuvwwhgwwhwwgvvwxxxwWwfwfwwwvwvxgwWgfVgghwwwvwxxwgvvxwwwwwwhwwxwfwfxwwguwhxxugwvgwxwwwwwgwwggwxfgvwgwwgguwwwxfgvfgwhgvvgfwwvwfwvwvwwwxxwwxvwvwgwwwxwwwwwxxgfwwxwgVgwwxwwvvwwwvwgwwwgwwxwgwwwwwwwxwwxwxxwggwxxwggfwxwvvggxxxxgwgwxxwggfXwxgxvxwwwxWvfwgghxgwwwwwxwwwwwwwwwwwxxfvgVwxgwwwwwxxwgwwxxwwxwxxhhxxwxxxxxwxhwvhxxgwwwwxxwwgwfxhgfwwvgwwxwwxxwwxwxwhwwwxwfxwvhgwvxwxwwwvgWfvwvwggwxxgwwxxxxxgwwxwxxxxwggwfwxfvvwgwWgvgwgwxvwwxxwxvwgwxwwxxwxwwwgvgwvvwgwwgwxvwwwvwhwwxwwxwwxhwxhhxxxwxhwxwxxwxxxwwwxvwgwwwwwxwwwxvxwwxwgwwxwwxxwxvVvwwwxvvvxxxgwwwfhwhwwxhwwvwxxxxxxxxxxwhhwxwxhxwxwxwxggvgxxwhwxgwWgwggxhgwgwvxxhgxxwwwwxxwwxxgxwwwgggfgwwWhwwxxgwxwxxghwxxxxwwwxxxxxxxxxxvxwxgwhwwhwwwgwwxwxxwxwxwxwvwwvxxxwwwwxewvwwwwfwgvwgwwwwwwwfwgwwffwvvgwvfvwwwgwfwwgwwggwwggTwGgfvwgewwwgwwwwGwfgwggvFgevwgggwwwwwVwfgxvggxxxwwvwwgwgfwvhwgwvggwvfwuxwwwxwxwwxwvwwwgwwxwwwxxxxwwwVgfwfffwvvxvwFwvwwffvvwvwwwwwvwwwxuwwwwwwwwwwwwwwuwwwgwwwxvxvwvgWvwwgwvwwxwgvgwvvwwxhwvvwwxwxxxwgvguvWgggFgxggWwvwxwxgwGwxxxggwFgwwhhwwwwxwwwWgxxwxxwxwvhvwvwwxvuvwwwwvvwwhxwhwxwwxhwxwxwwwxxgwWwwgggwxgxvwhgwGggxggxwhwwxxxxwwwwxwwxwxxxwxwwvwfvgwwwvwwgvwfwwfwwgxxvxwwxvvxfwxwwxxxwWwVwggfgwwxwWvvwwgwgxwwwwvxwwxxxwxwwxwwwxwwwgwwxvwwuwwxhwwxxgwwwwvwwwvgxvxwwwgxgxxwwwwvuwwwwwwwwuhwxwwwwwwxwvxwwxxwxxwwwxxxvwvwwvWwxxxfwvwwwwwxxvxwxwxxwxwxgxxhwxwxxxxxxxvgWwwgghxwwwwxwwWwwhxggwvxxgxwxwuwwhxxxxwwxxhwwxxwwwxxwwwwwwxxhvwwgwxhvwgwwwwwgwxxxwhxxwxgwxxwwxwwxwwwwwwhxwvuwwxwxwwxxxwwwxxwwwevwxwwwwxwxgwwwwwwwwwwwvxwxwwwxwwwwxwwwwwwvwxwgwwgwwwevwwwgwxgvgwxgxgvwvvwwwxwvhgwwwxwwwxgwwwgwwWfvhwwwvwxvgvxwwwwfgvwwxfwWwwWfuvwfwvwxwwvwwwfwvwwvhwwxxwxwxxxwwxxwwxwwwxwggwxwweuvxxwxwxhwxxxwvwwxxwwxxwwwxwxwwxxgffwxggwwwxxxvwwxwwxwxgwxxxggwwhwxwwwxxwwwwxwxxwxwwwwvxxxwxxwgwvwwxvwggxwhvwxxwhxwxvxhwugxwxxgwwwwxwwwwhgwwwwxwwxxwxwxwwxxwxvwwwgvwxwxgwwwhwwvwxwwxvxwxwxxxxvxwwwvwwxwxwwwxwgfwxxgxwvxwwxxxwwwwxvwwwwxxwxxxxxxxwwxwwxxxwwVvuwxwxxxwwwxxxxwxxwxgwwxwwxxvwwwwhxgxwxgwwwwxxhxxxxwwwxxxxwwwwxxxwwwwxwxxxxxwwxwxwxwwwxxwwxwwwwxxuwgxwxgvxwgwwwwwwxgvWwwgwvwxgwwvwwgwxwxxgwxhwwwxgvwxwweWwwwvgvgwwwfgwwgwwwgwgwwwwwvxwxwwwwwxxwwwvwwwxwwwwwwwxhwxgvxgwvwwwxwxwwxvwwwxxxwwxxhxwxvgwgwvxgwxxWfwwxhwxwxwwwwwvxvvwwxxwwxwgvwgxgwxhwwxwgxwwwwwwxxxwwwghxhgwvxxxwwxwxhwgwxwxwwvwwxwxwwwhwwxwvwxxwwxxwxxvxxhhxhwxxwxxwgwxwxwxwwwxxwwwvwxxwwwwwxwwyxxwxxgxxxxxwwgwxwwxwxwwxwwwvxxgwwughwxxwxxwwxgWwxwxwvgwgwxgwwwwhwxxhwxwxwwwxyhwwgxgwxwxgwwxxwwwxwwxxxxwxxwwwwxwwhgvxwxvxWgwxxwxwxxxxxxxxxxwxwwxxwWgxwxwwwwxxwxxwwxwxwxxxxxwxwWgwhwxxxWwwwwxxwxxxwxxhwxhxhxxxxxwxxwwxxwwxwwwxxxwxxxxxxwwxxxxxxwxxxgxwxxxwvxyxxxgwxwxxxxxhxxwxxxxwhgwwxxxxwwwxxtwwgwfwwwxvxgwxxwxgwghwwwwxfwwwxwwvwwxwxxwxgvgewvgwWwwwfwxwgwwwwwwxwwgfvwwuwwwwwwvwwgwxxwxxxggWewwfvfwfwxwVwwwxwwvwvuwxvggwxwwwwwwwxxwxxfgGfwfwfwgwvwwwwwxwwwvxxxxgfdvvxwvwwhxxxwxhwwxwxgwwwhgvwgggxwwwwwxxxwwwwdvwvwwxxhvwhxhxxxwwwgvvvwwxgwgwvwwwwwxxwwwyxxxgwwxgwxxxwxxhwwwxxxwwggfgvxwxwxwwwwxwgwxwxxxwwwvxhwxwxxhxvxwxwwgwvxWgwwhhwuwwxwxvwxwwwwwwexxwxxxxwwwfwxwxxgwwwxxwvwwxxwwwwwxxxxwwwwxxvwwgwwwwfwwwwggwxwwwhxwgvwxwxwgwxxxwxwwwwxwfwwvwwxwwwxvwxxwxwvwgggxvwxwxxxxwwxxxwwxwvxvwwxxwxxxxwwwvxxwxxwxxhxxwwwFwffwfwwgxwxwwxwxxxxwwxvxwxxxxxxxxwxgvgwvwwgwwxwwwwwwwhxwxwxxwwxxwwwxwhxxxxxwwwwwvwvxwwxxxwxwwwwxxgwwhwxxxwyxwxxwvwwwwwvwwxwxxxhxwxwxwwwwxxxeffgwvvfwvwvvVwfgwwwwgwvwgwvfgfvwvxvvwwwgwwwwggwwxgwxwwUgwvVfVwfgewUddvgwfwgggfffgwwwwvgewvfVgwwvvggVwwwwgwgWwwgwxgwgvxvVdwxfweufwgwgwfvwfuuwgwwwgwwfwggugwvwwwwwwhwxwwwwwwwwwvgeweeUfUddwwwfWfwvwgvwfwwfwvvfgvfwvvwggwwwvwwxwvfvvwwwfgwgvggfWwwvvwfVfwgwggWvfwwwggvwgwfvfvfwwgxwxfvgwhxwgvwxwxwwxwgwgfvfgwvvwggwggfgwXwVgfwggxwWgvvwhwvwwwgwhwgwwwWwxxfwxgxwwwvfvwfwgvvwxwwgfuuwhwwWxgwgwgwVwvfvwwvwwxwhxwwvwxwxwwwwgwwwgvvwgwfvwgwwwgvwwfgwhguwfvwwwwwwxvwgfgxwwwvxwwwwvwgwvwfwvwuvwwgvvgffvwwgfgvxwxwevxgvwwxvwwxxxwwwwfvweuvwfffgfwgwwggvwwwwwwwgggwvfwgwhvwggwwxwgwxwgwwwwxgugwwewvwwwwgxwwvvwwwwvwwgwwwvgwgwxgwxwWwwwwwgwwxwwxVwvvvwVwewwwwwwwwwgwfwxVvwwgwwwgwwvwgfxxgwgwwwfwwwVgwgwxwhgvwwvwwxffgvwwxgvxxvwxgxgwhgggwwghgwgwxxwgwgvwwgwwwvwwgwgwxgwwwggwwwwxwwxwxwgxwfxwwgwXxgxwwWvwvwxwfvwwwwwwxwwvvwwgwwwwxfwwxggwwWwgwwwwggwwvwwwwwwwwwwwwwgwwxwwwwwxwwwxvvwvwwwwwewwhwxxwwwegwgwwgwxfwfwvxwxwvwgwwwxgvvwwwwwwwwgwwxxwwwwwgvwwWWfvwwgWvvwWVevgwxwgfxxgxggUggvgwwvwxwwgwwwwxwxwxxwwxfgwwfwvwfvgwuwggwwgwwwwxwwggwwwwwxwxgxwwghxfggfwwwVvwwvfxgwfgvwgvvwhwvvwwfvgwxwwwwwxvvvwwhxhgwwwwvxvxgwhwwwxgwgxhhxfxgxwwwgxwwwwxxwhwfxxwwxxxwxwwWwVgWwuwgxWvWfVgwxhwwgwxwwvvWWhxxxxwwwhwxxxxxxwxwwwwgxwwxvvwxxxgwwwwwwwwwxwvxwwwwwxwxxxxgwxxwgwfwvwgwwxXwwwwgwwgwxxwwwvwgvwwwwwwwwxxwxwwxwxxwvwvwwxwwgwwxwwgxwxwvwvwwxwwwxwwxxgfgwfwwwgwxxwwfwvhxwxwwxxwxxwwwwwwxwwwxxwxwxxwxwwgwxwwwwwwwgxwwwxwwxxvxxxxwxwwxwwwhwwxwvwgwgwxwwwwxxxwhxwwxwwwxxxwwgxxwvgwxhwwgwwwxwxgwgwwwwxwxxwwxhwxxxxwxhwwxwwhwgwfgxgwvwhhwwwxgxhxxxwwxwhwwxxwxxxxxxvgxwwgwxgxwxwvwxxxxvwwxxxxwxwwwxxxhxxxxxxgwwhxxwwxwxxwwvxwwxhwwxwwxwwwxxwwxwwvxwuwwwvfwwvwwggvgwwwwwwhfwWfvwwwwwfwvwxwwwxxwVufvwwvwfwwvwfewvgwfVfVvvvwwxwwgvgvwxwWgggwDddfwwwwvwfvfvxWgwxxgwwwwwwwxwfwvwwwggwxVefvxwxxwwWuwfvfvgvvwwwvvgwgwwxwxxwwvvwDddfwwvxwwfvfvxVwwxwwwffvfvvwgwwwwwwwwwwwwwwwwwwwwvgvwfwvgwwgvgvwgwwgwwwgvwwwxwgwxfvfvxwwwwxxfvvwxwwwwxxwxwxxwwwxwwwWugvwwwWwvwwxwgwhxxwVuffxWgwggwgwgwwwwwXwWwwxgwxgwfvfvgvxwfvvwwwwwwwwxwwgwwwwwwwxgxxghwwwxxwwxwwVufvxVwwwxwwwwxwwwXwWxwwwwxwvwwwxxxfxxwwwwxwvwwxwxgwwxvgwwwwwwwvgwwWugvwxwwwvwwwwwwxwfxxxwwwwfwfVfVwwwxgvgvwwwWwwwwwfwwwxxwwwxxxxwwwwxwwwwxwwwwwwwwxwwxwwwvwwwwwwfvwwwwwxxwwwwwxgghwxxgwwwwvwxxwwwwwvwvwwwgwvwwwwwwwwxxgvhwwxwxwwfwgvgvvwwwwwgvwwxxhwwxwxxhwwwxxwwwxxxxwwxxwxxghfxwxVugwwWxxvvxwxwwxxgwXvhxwwhgwwwwwgwwwwxxwxvwxxgvwxxgwxwwwxgwwxhhfwwxxxxxxxwxwxwwxwxxwwwwwwwwxwwwvxwxwxxgwgwwwwwwwxuwwwwwwggwwwwvgwvvwgwwwwwgxwvwxvwWwhwgwwwggwvwxgvwwwxfvvuwgfuffwwwwgVgvwwwggvfgwwgwWvfffgwwwwvwgUddvwwwwhgwxhgwwwwwwwwvwgwwvFewwvwgwvvwxvxwwwfvwfvwwwxxVvvwwwwxvgfwgewwvuwwfvfewwwwwwwwwwwUddwwwwgwwwxwwwwWwvvwwgwwvWwgvwwwwwxwWgwxxwwwfvgxwhwgwgvgwvwwwwgwxwvvwwxwwxxxxwgwwgvwwwuxwwggvwWgwgfxwwwxwxwvwwwvwggxxxgxxxwggvwwggxhwgxwwwwfvwwfvgxwvwxwgxwxwvvwxxxxwxxwgwwxwhgxhxxwgvwgxgxwwwxgguhwvwwwwgwwwwwxhwgxwvvwwwgxwWwgvwwwwwvwwwvwwvvxxvwwwwwgvwxvwvwwxwxwwvuwwwwwwwwwxwwvvwwxwxxxxwxxwvffgwwwhwwwwxwwwwwxxxvwgwwgwxxxxVvwgxhwxwwxwwwwxwxxxwwvwwhxvxgwwwgwwfgvvwggwwwwwwwxwxwwwwguwwwwwgwwwwwxwwgwxwwwxwghwgwvwwwwwwxwxxxxwwwwwwxxwxxwxxxgvwwwxwxhxvwwwwxxwxwwxxwgwwwwgXxwwwwxxxwwwwgwxxhhwvwxwxwxwwxwwxxwxxhxvwxwwxwwwxwxwxwxxwwxxwxxxxwxvwwwvxxwxwwwxvgxgwwwwxwwWwgvwwhvvwvwhgvwgwxwvhwggwwgwwwfwwgvxwvwxxxwggxwwfwwfVvWwvwwfvgwhggvxwgvgwvghwwxwvvxwwwwgwfhwwghwxgwvwxgvxwgwwwgwgwwxwWfgwfXwwhwxgwwxvwwvvwxxwwwvwwxvwxgxvvwwgvwwwwgwwgggvfXwgWfgwwwwggwvgwvxwgwxuwwvxwhwxWgwwwwwwwwxwgfhwWWvwWggwwwwwwwwwxwwwggwWxhwghxxwgwwwWwgwwxxhxxxwxggwwhgwwwxwhggwgxhghxgxggwwvvwwwhwwhxwhxwwxwxgxxhhxwxwwwwwxgxwwwwxxwwwwhxwgxhwwgwxhxwwxvxxhwxxvxxwwwwxwxxwwxxxxwxhxgxxxwwwwwgxxwvgwwxwwxwvxwxWhxgxxwxxwxwgwwxxwwxwgwWwwwxwvwgwwxxwwhwxxwxwxwxwxxxxwxxwwgwghgwwgwwwgwxwhwwwxwxwggwwxgxwxwxxxxwxxxwxwhhhxxwgwvxxwwwhfwhxxvxxxxxxwxgwxwxxwwwvwxxhxxwxwxwxxgwxwwxwwxwwgggxxvxwxvwwwwxwwvwxwwwgwfxgwxwhwxxxxwwxxxwxwhxxwxwxxxhwwxxwxgxxxwfggwwxxxxwwhhxxhxxxxhxwxgxxxxhhxvhxwxxwxghhwxhxxwwwxwvxxxwxxxxxxwhvxwxxxxxxxwhwwwxxxxxhghwxwxwwwxwwxxwgwwxxxxxwwwwxwwwwtwfwwvwwwwwvwwvxwvwxwwwwwgwvwwvwwhhwwwWgwgxxvwxwgvwgwewwxwwvwwfgggwwwvdvxxgwvggwWggwwvWxgwWwfwwwgwwxxhwWwvxwwgwwwgwwwxwwwwwvxwwxwwwgwfxvvwvxwwwWvwwwgxwvxuwvwvgvvwwwwggdwwwwwxxwxvwgwfwvwgwggvwxwwwWwwwxwgwxwgwxvxwwhgwwxwggwwwwwvxfewvwwwggwwxwwvxwwwwwxxwvfgwwwwhwxwwwxwwvwxwwhwwxhwfwgfwwwWxxwxxxWwgvWwxwhvwxwgwgwgvvwwwwwwgwfxwwvwxxwwwxewgfxwxwxhxxwwxwxwwxxwxgvwwwxfwgwwxwwfwxwfwgxwwwhwwwwxxfxwwvhwWwwwxwwvwwwwwWfvwwgwwwfwgwxfwwxwgvvwwxwwwwxwxxxxwxxwvgwxwwwwwxwwffwwxhwxxwwgwgwwwxwwxhxxwwwwwwwxxxxwwwwwwWwxwwxwwxfwwvxwwwwxwxxwwwwwwgwwxxxxwwwwxxxhxxwwggwgxwxwwxxxwxwwgwwwwwwxxxwvwwwxwwxwwxxwwGfgwwgxwwvvgwvxxxwxxwwwwwwwxwhxxwwxwxwwxxxwxxgvwwwxxwwwxxwXgwwxxwxxwxxhwgxwghxwwhwvwvgwgxhwxwxwwwGwvwwxwxxxwhxwwwwwgxxxxwxhhwwxxxxwvxwwxgxxwWwwxxwgwwxxxwxwxxwwwxxgwxxswwwgwgwwvxvwgvwvgwwfwffwwwwwvfwvwvvgwxwvvgwgwwwvvguvgvwwwgvvwfwfvfgfvVvfgvwwwwgggfvfwfggfVgfewfgetuwwwwgfvVgfvWvwfhwvfvgvvwwgvwwVewWwuvwgfwwvwWwvwwwvWuwWvvwwwvwwgfvgwwwwuvwgxwwwfwVgwufFvtwwggwfwwwVfwhvwgwfwVuswvwwfvxgWwwwxwwwwwvuwwwwwwwvwwffvgxfvhwWgwwwfWvWwwwgvwgwffhgvwxgwgewvgwhwvgwwgxgwgwwwvwwgfgwwwwwwvwfvwhggwgfhhWvgvfxgxggwWvhxwggwggwgggfxwgWxfwxwgugfggwwwxwwgwuggxwvwxwwhWwwxxxxwxwwxfwgfwwwxwxwwxwxwwwwxwxxwgvwggwwwwwxhvwhvwwwxxvwxwwxxxwxgvgxwuwxvwwhvwwwwwWgvxwvwvwvwwfvwwwwwwwwwwwvxwxhwvgxwhgxwwxfwwGvuggvwwwwWuxggggxwvxvgvxwxwwwwwxwwwwwwhvwhwwxwxwwVwwxgwxwgwwfxxxxwxgxwxwxwxwwwWWwgwwwhfhWWwwwwgxvwwvwwwwxwwvwvwxwwwwwwvwwwggggwwvwgvwwwxgxvxxxGwdhWWwwxww7vuWwvwwwgwwwggvxwxwxxxwwxgxwxxwwxxwxgwgwwvwxwxxxWgghgwxwxwxxxwxxwwxwwxwxwwwxwwxxxhxwvgwgxwwwwxwfhwxwwgxwxxxwxwxgxwwgxxvwwxxXxwxgwxwwxxwxwvgwxwvxxwwxwwwxxvvxwwwvxwxWgufwwvwwvwwwXwfggwgwWwgwfwvfwvwwvWfwgwvwwggwwwwxgwvwxwxfwvggfVvwggwWgvhggFfgffgFgffwxhwwvfwwgxvwgwgwgwgvfwwvggvhwwwwwxfwwwxwwwgvwvwvwwwggfvwwwhwxwwghVwwgwfwfgvxfghwwxwvxvwwxwxxfggfwfxgwwgwxwvvvwWvhegfxwgwfwwfhxwxfwfwggwwvxwwgwxwwxxwwxwwWwvgfWwfwWfFwwgwFwfwwwxwggwwwwgwvxgxvwwvfvhxxxvxhxxxxxhwgxgwvxgwggxxwhwvgwhxxgxxhwxxgwxxxwwxhxfxxwgwxwgwxxxxwhwgxwwwwxwwwwwwxwxgwgvhwvwxwwwggxgxwwxxwgxwwvwxxxgxwwxhxvxwxxxxxxwxgxhwwwvwwgxwwxxxgwwgxxwgxxwxwxwwhgxwwwwwgwwwgwWwggwwwwwgwwwxgwwxhwwwwxwxwxwxwxxxwwvwgwgxwwgwfwxggwgxgwwxwxwfwwwgwwwxxwwhxxxxwxxxggwxxxxxwhwgvxhwgwwggwwgxxwvxwwwwxwwxxwwwxwxxxxwwxgwvwxxwwxxwwwxxwxwxvwwxwxxwxhwxxwwwhwwwwxwwxwwWhVwxxxxWwhgxxxxxxxxxxxxwwwxxxwxxxwxxwgwhxxxxwhxhxwggwxwhxvhxxxwxxxxxhgwghhxxxxxxXwhxwggwxxwwwgxxwhxfxwwwxxxwwxwxvxxwxxxwwwxxvxwxxhxxwwwwxvxxxvxfwxxwwuwuvgwwgwwuxfwfvwwwwwgwwggwwvwguwvffggwfwwwvwgwvxvxvwvwgvwgVwgwfvfggfwxggwwwwwfxvgvefvfwegvvuvgwvugwwwgwwfwxwgwWvwvffgvwwfggwwfvxwvwvwwwwwwwgVwfvwuwgvvWwwvwxvxwwuwfffvUvfwwwwffwwwfvgwfvvfwwfwgwewwgvvwwxvwwwxxxwgwwgvxwwxvwvgWfffwgwwgwWWwvgwwwwwwwxvwvfwgwgvxvhxwwvwxgxxxxwwwwVwuwWWwwfgvgvgwgwxwhxfgxwffwwewvwffuwwvwggwwxgxxxfxwggwwwwvfwvwVgwwgwxwxwfvxgWwgwhxvwvwvxgxwvxwxgxwwwvwhwgxwwxwxguwggfgwwwwfxwvhwVwxgUwwggvfwvwwgwgxxwwxwxwwvxwwxwwwwvwfwwfeevgwwvxfwvwvwvfwwxwwwgwwhwvxhxuxwxxxxxfgfwfwffgwwwwwwwwxggwhwwwewfvvwwwvwxwwvwwwwwgwgwwgwgwwwwXxgwvwxwxwxxwxvvwwgxgwxxwxwgxwwwgxwxwxfwvwuvfwwwwvwwvxwgwwhwwwwvwwwwwwwxwxwhgvxgxxxxwVfwvvvvvuwwwxvvwwwwwWwxhvwwggwxxgwxuxxwwggxvvhhwgwxxhxwwfvfwfVgwwwhwwwxxwwxWwxxwwwwwgghfXxvwwwgwWwwhwwwvwxxwgwWwvvwwxxxgwxwxwwwwwxwgxxwwxWwgxxwxgxvhwuwwwxgvhwwxwwwwwwxwwwwgwwxhhwfwwwfwwwvvxfvwxgxxwugwwgwwwvxwwwuwwvwwvwwgxwhfwwwwxwwvfwwgwwwxgwvfWgdwgEwvwvgVguvxxwwwvfwxwwvwfvfwwwwgwwwwWvvwxwgwxvxwwwwwwvwxvwfgwgwgwvwwgwwxwgWwxfwwwxwWwvxxxxxwxwhggfgwvgvvfvwwggwvwfvwwwwwwvWvwwwwwwwvgwwvwvvwwgwwwwwwwwxvgwwwuvgfwxwxwvwwxwgvggwwwwwwwfwxwxwxxwwgggwUgfvGgxwggwUgxxxwwgwwxGwfvwhgwwxwgwGwxxxgxhwxxwwwgwwwwxwwxxgwwwwvwxxxwvvgxwwxxwWxwxxwwWwfwxgwwxwwwwgwWwhgwxwwwXwwwwwwwxwxxgggwxuxwvwwgwvvxwwwwwvwwwwwwxwgwwwxwwwxxgwVvwvxwwwwwwwwgwwwwwxwgwwwxwgwwhwwxwwxwxwxwxgxwwgwgxwhvwvvwwfxgwwwxwxwwwxwwwxxwxxwvwwwwvwwgxwvgvxwwgxwwwvxxxwvwwwwwwwwwxvwwxxxwggwwvgwwxxwgwgwwwxxxxwvwxxxxgxgxxxhxwxwwxxwgwVwxxwwhwwwwxgwxxwxxwxwwwwwxgwwgwxwwxwwwwhwwxwwwgxxwwxwwxwwxxxwwgxwwxxxwxwwxwwgwwvgxvwgwwwwwwwwwvwvxwxvwxxwwxxwwwwwwwvwwgwxwwxhhwuxhgwwgwvxwwwxwgvwxwwwwxxwgvxhwhwwwwwxxhwuxvgfvuwvwwwgwwwwwgwgwxgfwwxwwwvxwwwxwxxgwgxhwxwwwwhgwuwvwxgvwwwgwfgxwvwxxwwhwvwwhwxxxxxxwgwvwwgwgvwvxxwvwwwxxexwxuwvwwwxhxvvxxxxwwvxwwwwwwgwvwwwwhwxwgxwwwwxhvvwhgwwxxxwxxxxxwxwwwwwgwgwwfgwxxexwgxxxhwwxgxvwhgwhxgwwxwwxwwxwxxhwxwwwxxwxgfwxwxwwwwxgxxwxwxxxxwxxhxwgvwwxwvwxuwxhvxvwxwxxxwwwxwxwxwxwxwxxwwwwwxxwvwvwhhgwxxwwwhwwwwwxxhxwxxwwxxwwxvxwwwgwwhxgwwxwxwwwwxxwwwxxwxwwxwxgwwxwwwwxhwvwxhxxwxwxxxwwxxwyxgxxxxxxxwxgvwxxwwvvxxwxwxwxwxxwwwwxhxxhxwwwwxhwgwghwxwxxwxwxwxwhxxwyxgxhxxyxxxxwwxxxhwwxhwxxxxxxwxxxwxhwxxhxwxwxxwwxxxxhxwwxxxhyxxwxgxwwxwxxxxwwwxxxwxgxxxxwwxwxxwxxwwwxwvwwxwwwxxwwwxwwxxxgxxuxwxwwwwwxxggxxxwwhvxvxxwwxwwgvvwwhxwxhfxghxxwxvgwvfwgwgfxwugvgvwwvxxguvwwwvwvxwvwxwxwgewxgwvwwwwfwvvvwwxfvvvwxxfuwvwvxfwVwwwwwggeexwgwwvwxxwwuxvgvvvxwwwxwgwxxxxxhhxwwwxxgwvvwwxwwwxwevwwwwwwxxxvgxwwvggwwxwxgvxwwwxwguffwxwwhwwxwwwgvwxgwxwxwwgwxwwwxwwxvvwwxwgwwxwgvwwvxhwwwwvwwwgwffwhxxwwwgvwvxxwfwWvuwgvvwgwwwwwwgwxwwvwwwxwwwwxwxxgvwwgxwxwwgwwwxwwwxxwgevgxxwwwxwwxwwxwxvwwwwwwxxxxfwgwwwxwwxwwgwhxwxxxgwwwxwxwwvxxwxwwxwgwvwwxxwxxwxwxWvvwhxwxxwxgwxxguffxggwxxwxwwxhgxwfwwwwfgwxwxwgxxwxxwxxxwwwxvxwxvwhgwwwxxwwxwxhvwxwwwwxxwxwxxxwxwvwgwvwwwgwtwhgwvefgvwwvwwwgwwgvwwwvwvwwgwvvwgwxgwvuwwvUuwefwuwwwgvwuwxgxvwVwwwWwuwwwgwwxwvgwvwwgfwwfwwwgwvvwxgfxwgwxgwuewwwwwxwgwxfwwwwwwfhwwgwxwwgvxwvvwwwwvwwfgwvgwuxgwwdwxwvfwwwvwwwxgvwxwxvwwuwxgwwwwvwggWvhwugwvwwfgxfgxvvxwwwggWuxhwwxxwhwfwxwvgxwwwxwwxwwwwhwwwwxxvvwuwwwxfwWwwwxvXxWvwghxwwwwwwwwvxxgwxxxvwwvvwwhxxwvwwxuxgwwxwwhwxwvwxxvxwwwhXxxwwwhvgxhwxhvwxwexxwwfywxvwxwhwwwwwwwxwvxxwxxwxgwxwwwwwgvwxwxxxxxxhwgwwxwwwwxwhwxwwggwwwvwwwwwxxwwwxwwwwxxhxWxgxwxwwwwwxwwwwvxwwwwwwxwwvxwgghwxxhWfwxwwxxxxfwxwwxwxwwwxgwxwxxWvwwwwwxhxxxwwxwxwxwxxxxhxwwxwxwxwxxgwhwegwwxwvwwwwxwgxhwwvxxwxxwvxhwxwwwxwwxgxwwwxwwwwxxxxwwxwxwwwxhxWhxxxwwgwwxXgxwwgwwgwxwxxwhwxxwgxxwxwwwxxwxwwxxxxghwxxxxxwwxxwxxxwxxxxxfxxxwwwxxxxxxxwxwxxgxytwwwwwwwwfvwwwvwhhvwwgfvwvwVwwwggfwhwwvwfgwwvgghvwxwxgWUwwwvvvfwggewvefggvWWwwvWwvfwfgffgwwvvwgwvwvfxwwWwvgwxgwuwwWtvxggwvwgGewwwgwguwvgwVxggwuwwwwxvwgvwwvfvWvwwwfvvggwWftfgvwvwvwWvdfwwvGwxwwwvvgwvwwxwwwgwxvwxwwfwwwxvwwwwwhwwgwxfwwgwwgwgVgwwwvvvvgxwwWggvwvwwxwwwwxwfwvhxgwfvwwwwVvxxwwwggwwwWvwgWwwWwggWwvwfxgggwfggxvvgvwwhWfvvgWWwxXWXgguxWvwwwvfgwwhvxxgvvfxxxgwwvwwwwxvhwxwwwxwxwwxwwxxxxxwxgwwwwwxvwxwwwggwhggxxfwwwfxwwvxxwxwvvxwvvwxvwwwghwwwwvwvhwwghvwwwgvwwgvvwwwwgwxwxggwwwWwvxhvxwxwxwwgwhgwwxgwgwwwgwgwWvxwxwwwwfwxwvgwxwwwxwWwvwgxwwwwxxhwwwwhwwwxwwxwwwwxwwxgwwxxwwwgwwxxxxwwvwxWGxwwhwxwxxwwxwwxHWxxwhwwwvvgwxwxwwwgwxXWwwxxxwhvwxwwwwwxwxxwgxwwwgwxwhgwgHfuhwwggwgxxgwfgwwGwugwwhwxhxxwgvwxxxwxgxwxxwxxwwwwxhgwxwwwwwwxxghwwgwwxwxwgwxvghwxhxwwxwhwfhwwgwwxggwwxhwxwwwxwwxvhxwhgxwxwhxwwwxxxwxxwxwxwhxgwwxwwwwwxwhxwxgwwwxhwwwxgwvgxwwgwxwwwxvwgwvwwhwwxwwxxwxwxwggxwgwxwgwgvvxwfwwwvwwxvewwxwwvwvwewxvwgwxwgxwwhwhwxwxvvgvuwwWgwwgwwhwwwwwgwxwwwwwwgwwvwxgwgwwwwwwvewxwxwwvevxvxxwwwxwxxxxxwxxwwggwfgwwvwvwgxWwxwxwxwwvwwxwwxvxwxwxfxwwwvxwwwvwwwwwwgWxwwxvxwwwfwvgvwWwwgxwxxxwxxxwwxwgxwxxwfwvhwggxxwxxgxxfwwhgfxxwgxwwwxwwxhxwxwxwwgvvwwxxwgwxxwwwxxwwwywxxwwwwxwvwxgvxwxwwxgywxxxwwxxxvhwvwwxwxxwxxxxwwgwwwwxwwgvgvxxxxxwggvxwxwwxwxwxwxwgvxwxwxwhwxxxwxwwwwwwwwxxwwwxwwxxgvwwwxwxxxxxxwwwwwwxxxxwxxwxxgvxwwvxwwvxxxwwxwwwwwwxwxwwxgfhfxwxxxwvxxgvwxwwwvwwwxwxwxwxwwxxxxwvwxxwwwwxwxxwwxxxwxxwxwwwwwwxvxxwxxwwxxxgfxwhxxxwxxwxxxxxwwwwgwxwxxxwxxwwxwxwwwxwxvxwVwvvfvuwvfwwwvfwgegvwwwwfwgwwwvfwgxvwvwwwwfwwugwwwxwwvwgfewvwfgVwwxfwwgWfgxfgwfWwvwVvvwewfwfxwggVxvwwwvwwxwwvgwVwvwgewxwvgvgwwwwUgwwwvwfgwwvwgwwwvvwvvxwxwwvxwvwwxuxvvUgwfxxwgvwvwgfwxwwwfgwwvxxuwgwuvwwwgwwwwwxfwvxwgwgvwwgwwgwVVwwvwggfggwgfhgVwwwwwWwxxVvwwwgggwxxgwxwfxgwgwvwfwxwgwwfgxxVgwwgwxWwwvwxwgwxwgxwwxxgwxxwwwwxvwxwwxwwgwxxwwwwfwwwwvwwwghxwvgwxwwxfwxwxwxxwxwwwgxwvwwwwwwwwvwxggwwvwxxhgxxwwxgwwxwvxxxxwwwxwwxwwvwvwvwwxwwxvwwwggfwgwxxwwwwwwvgwwwxxxvxvgxxxxxwgwwwvxgwwxwwwxwWxwggwwhwwgwwvwxxhvwxxxgvxfwwwwwwwxwxxvwwgwgwvwghwwwwwwgxxwxgxwwvxwwxwxhxwvxxxgwwwwxgwxfvggxxxwxxgWwgwxxwwxwxwwwwwwxvwwwwwwwwgwwwgwgvggwxxggxfxxwxxwwxxxgvwwwhhgwwwwwwwwwwxwwhxhgxwwxxgwxXggxxwwxwwxhwxxwwhxxwwwwwgvxxxvwxwgxxxxxvwvwwwgvwgxxwxwwxhhxxhwwxxwxgxgwxxxwwxxxxxhwwwxxxxxwwfxxvwxwwgwxxxwwxwwxxwxwwvgwvxxvgxxwgxxwvxwxwxfggwwgwvxvxwgvwxxwwxwvwxvxfgfxwxgwxgwvwvwwwwwwvxwgwfxxxvwwwxgwwxwwxwwwxxvgwwwvwxwxxxxxwvwwgwvwvwwwxxvwfvwxwwxwgvgfwvwwwggwvwxwgxwvxhxwwwxxwwwxgwwhgwxxxwwxwgxwxwwwxxwxgwxxwwxxvgwwggwxwwwwxxxwwxwxxwgwwxwxwgxxwxfwxvhxxxwxwwxxwwxwwwwwxwxwwxxwwxwwxxxxwwwxxwvxxxvwxxvwwwgvxxwwghhxxgwxvxwwgwxxwwwhxxvxxwwvwvxwxwvxwvgwxxxxwxxxwxxxvwxxwwxxfwxxvwgwwxxxxhwhxgvwwxxxwwxxwwwwxwxvwvggwxvxxvhwwxxxxxhwxxwxxxxgvxvxxhxvwhxxywhwgxyxwxwxwwxxxwgxxgwxwxwwwxxxxwwyxxwvxwxxxwxxxxxwxwtwvwfwwffvvxgxwgwxwwxwgwwhxVvvggvfvvwwwwwwgwwwhwxFvefffdvVgVfvvggfwwwfwgwwwwwwxugvwwgfwgwgvwxwxwwwwwxwxxxxwwwEwfvwffvwgwwgwWvfggwwwwWwwwxwwwvwvwwxxgxwwwhdVVffUUgfwfwwwvgwgvwwvwwWwwgwggwwvwvvggwxwwwhwwxxwwgvxwwvxewvwfxvvvWvwgggvwhwwwwwxxxwwgvwwgugvwvxxgwgxwwwxxxhgVVvwggffwFVgwfWwwggxgwgwhwhhfwwgfxxwgwwghvwwvgxhwxwwxxvvwWgwgvhvfxwxxwgvVwgwwggwgvxwwwwvwxwxvxfwhuxwxxwhhvffWvgfgwXwgwwwfwwugwgxvwgFwxwwxxgwwgwxhgwxxwwggwwxxxwvwgwggfgwwwwwgwvwwhgxwwhwwxwxwxvgfxxwxgwxxxxvgwwfgvWwwwfwwxvwvwgwwxxwxwwwwwfwwgxwxwxwhgwVwwxxxwxvwwfwvwvwwxVvwgwwgxxxwwwhxxxwxxhxxxwvxxwfvwvwwwwwwwwwwhwwxwwwwwwwxwwgxwxwxexxwfgfwfwfvgwxxwfwgwgxwgxgvxxxwvwwxwwwwwwwwwwxxxwhxgvegWxWGxwxvhwvxvvgWhgxhwwgwxwhxwwwgxxgvxxhxWwxwwxwxxxxguwwwwxwwwvvvxwwwxxwwxgwxxxxxxwxhxwwwxwxvfxwgggwwgwxxxwwxvvfwgxggwxwxxxxwhwfhxxxwvxwwgwxfvvwfvffwgvufwvwwvwwwxWvvvvgwvuvwwxwwwwwhvwwwwwvwvwgftgfVegfgfvwwwwwwvwfWfwwwugfwwwfwwfvwxwvwwwgghwwwvdvwwwvwwfgvgwvuguwvwvwGvvwwhwwwwvwwvwwwwfwwwggwwxwwwxdfwvffwwefeuvwvfuwufVwvfugvwwfuwwvwwwwvwwvwgwwwwwwwwwwwfwgwvggfwwwfvfgvwxwvgfwwxvvvgwwwwgwwxhxxgwwvwxvwxxgwgwfvwvwgvvgggwwwggfgxhwwfFxXwwwwwxxvggwhhvwvxhhwxwwgxhwwuwwgwwevvwwwwvufwgwwgUwWvwwwvwwwvwxvwwxxwwwwxvxwvfuvvgfvwgvgvgwvvffhgwggtWxxvwwxwxwwwvxwwxwfxwvwxvvfwxgvfwwwvwwwvfvfwvgwwgwWxwwwwwgwgWwwwxwxwfffgVgwwvwvwwgwgwvhwvgwhwwwwwwvwwwwxxxxxwwwxwwxwgvWgvggwwwgxwwwhwwwwwwvwxgxwwxwwxhxXwwwfwwvwwuxwxwwvwwwwwwwwxxvhwwwwxwwvwxxxwwwwwxwxfguwwwwwwwwwxvxvvgwwxvwwwwgwxwwxwxwgxxxwgwggxxwxxwxwxvvgvxwwXgwwwxwwvvWhHgwwwhxhxwxhxwgwxxhxhhwwxwwxfwwwwgwxewfwwwfwgwWwwgwwhwwwxxwwwwwxwvwhgvwwwwvvwgwwwwwvgwwwwgwWwgwwwhxwhxwvwwwxwxvwwwwuvwwfevxfwfwgwwgVvvwgvgWwfwwxgwwvwfxwxxvvwxxxwwxx6wewfguwffuvfwwwGffvggWfwwwwxwxvuvgwxwwwwwwxwxwwwwhwxxwwVgfwwfwgvgwwwvfggwxxvfwvwWvxxwwxgxwwxxxxxxeffggvufffwuvwwWvvwxwvvwwfxvvgwwwxvxwwwwhwhwwwwwxxwfvvwhguwwwgxwgFvwxgwevvgxwwgxxxwxxfwgwxxxxxxwgfFvxhgfgwwwxwwWg7WxxhwwwhxhwwgwwxwhxxxvwvxxxwxgwxwfwfwgwwwwwwxgwvwwxgwwwxxvwgxwxxwxxxwwxxxhxgfwwggxwwvwwwvvwvhwgxhwvvvewxuvxvxgwwwxxxwwwwfWhxgwwwgvwgwwfwwwwfwwgxuwgwxxxwwwuwvxwwwvxwvxxxxxxxvxffwffwxgwvhvxwwwwwwxwxvwxghwwwwwxxwwxxwwgxwxxxghwxxxxwwgwwwxffhxwwwgwxxwwwwxgvvxxxxwwxwvxwxgwxxgwfwxgxwwxwwwxwwwwxwxxwwwvwxwxwwxwgxvggwwfwwxgwxxwwwxxxxwwxxxwgxxxxghxxxhwwxggwfxgxwxgwhWwvwwwxvhxhwvWwghwwwwggxwgxhwwwwwWgfhfwxvgggvvvwxwxxvwxhxxxxvwwgwxxxwwvwfxwxwwwwxxwwvxxwxwhxwhwxwwwwxwxwhwvwwuwvgxxwwgwxwxgxwvxhvVuvvVgevvwxfwwvFWfwvvhgfuwwwuwgggffwwwwwwffvvwwwwwwfVFUWueggefwewfvgffVhWfeevwxgfWgfewdfgvwwwgwvwvvfwxgugwwwwhhfuvwwfevvwwwVtewwgwvwgwwwwwwwvvwwwxxwxwvwxwxxxwVUdvuffvvvggvefvffvwvWwgfgWfuuwwwgvuwxwxwgvwvgwvwxwwvWgvgfvggfvfvwwgeuwxghvfwgvxwgWuuwwggwwwveggwwhvxwxwwgfWhguffwwxwvWwggvxwhgfvgWXVfvgvwweWwwxwxgwxwvgWHexggfhvwwWuvvwgwwwwwvfgvxwwwfwwgwfvwwwxvxwwwwwwwxwwxwgwvwgwwvwggvxvwWgguwvgvhwwfwwwxvwwwxwgvwwwwfwwXvgwxwwvgwgfufwgvwvvvvwgwwwwwxwgvfwxxxwwwwvxxhwgvgwdfgvvwfvwweuwwxvfWgfvvwggfwwvWuegwxhwxwvwwWWuxxwwwwwwwfwwwwwvxwxwgwwwwxwxxxwwwwwvwwwvwxxwwvwvwwwwwxxxwxxgxxxwwgfuwvfgwwwvwwewgvxvhwwwxghfgwwxxwwxxwxwgvhXXvxxwxxfvvwwfvWwwvwwxxwhvwgHhewWXUhwwwwvwwHGexhwxwwvwhgvxvvgxwvxxfwwxxwwwwwwxwxxwxhwxxhxwxxvxwwwwwwwwwXwvgwwvwxxxXvwxwhwxwwwwwxvuvwvwfvwwwfgwwwhwfwwwxgvwwwvwfwgwxwwwwwxwgfgwwgfvxfuvwwwwWWfvwgwwwwgfwwvwfwwwwwwwwwxxxUfVggwwwvwwwuvwwvxwvwvwwfWfwwwwwwvwvwwwvwvwvvwgwvxwWwuwwwwwwxxwwxwugfwvvvwwwwwwhwuUffwvufwwvwufvvgwgxfwwxwwfgvwuwgwwwwwwwvwwwgvwwxwxgWgvxwwwwwgggvwwwvwvwwxwgwwwwxwvwxwxxwgggwxwwwxwxgvgWfxwwwwwhxvwwvwwwgxxxxwwwguWxhhwxhxxxxvwwwvwwweuffwwwwwwwwvvwwwwwxwfwgxvwxwwxwwvggxwwwwwwxhgfvWgwvxwvwxvvwwvwwwggxwggwufgwuvwwwwvwwxwwwwwxvwwwwwwxwwwuwgwxwwxxwxvhwxhwxwfvvwgxwwxffgvwvwhxwxwxgwwxgwvxxwvvwxxxwgvxwwwgwvwgvwwwwvvwxwwxwwwxhxgwwwwxxwvwxwgwvwwewwvvxwxvwwwxgwwwxxwwvvwvwwxxgwgxwxwwwwxxvvwxxwhvxwwhwwwwxxxwwwwwhgxxwvwgxgwwwwxxwwhwxwwhXgxwwwgwxwvwxxwxwvvwwgwxxxugwwwwwwwwxwxgwwwxwwhxhwwxggfwxhwxwwwwxwxxvfwwgvvxwwwwwhwwwghwwxwwwgxuwwwwwwgxvwvvwwwggwwgffvfwggvwxwvfxgvuvWfwfvwxgewwwxwwgvfggffwwVevefUhvVfgggwfeVgwvevggfwffwwfvfwvwwwwgfwhwwgvvwwwgvgvgwgfvggfvxv5DvfvggUduwwwwfwwwfvguxvwwfwwwgwwgwxwwgUEvfffgFdSgfwgwfvvgvwggwwVefegvuguwgwvvvwvwwwgxwwffwwwwwvvwwwfgwgxwgwwfWgwwwgwvfwxwwwfgwwwfxVwgxwwwfffwwwxgvhxwxwgxwwwwwwvgfwggxxwwwWgfxgwWxffgwfwvwwwwwwghwwwXwwxWvhwwhgwwvxwwwgfvvwgxguhxwwffvgxwwfvwwwwwvVvdgvxxwvxwxxwwxuwggxwwwwwwwwwwvwgwvwwwvwwwvwWfgxwxgwfffwfvvwwwwvvxwwwwwvxwwwgwgvwvwguxwxwWuwwwgvxggfvfgwwwvvwhwgwwxxgvxxxwwwwxhwxxgvwgfwuwWgvwfhwwgwgvgwhwfwwwxwfvuwwwwwwxvxgwxxwfwuxxxwxxfuvxwvwxxhguwxxwgwwgvxwgxxhxwvwvvwxgwwxhgwwfufvxuwwwwwwvwwwvggwwgwwxwxwwvwxwvvwxxwwxwwxwfgvwwwfwgwwwwwfvwwwxfvwgxwxwxxxwwwgwfxwwwxvxhhhxhwwwwwwxxvwwxxgxwfwvwvwxwwgwwxggwwXwvwwwvxwxxwxxwwwwxwXxhwwwgwvxxhwVuvwvwxwvxxhxwfugwwxfxwwwwwvwwwxwwwwxvwwwxvwxgwxxwwvvxxwvvwwvxvhwvwvvgxwxwwwvwgxgwwgxwvvxtwwxwwgvfxwwggvwwwwwwwwwxfwxgwvwwwwxgwvxxgxwxwFgewgvvwvwvwwgVuwxwwwwvwxwWgUvwxwwwxgvxwvwvwwxwxVfuwwwgxwwxwvWwvwxwvwxwxxwvwwgfwgwwfgvwwxxwwUgevwwwwvwefffwxwwvfwgxggfwvwwhvwwwwxvwvwwwxwxwwxvvvxxwwxwwwwxfgvwxxwwgxvwgWvwwwwwgvvxxxwwwxwxwxxxxWfUvwwwwwxgvxxwxwwgwxwxwhxxgfFWwwvxwxwxhwvgxhwwxxfxfwghwgxxvvfwwwwwwxxxgwwxxwwwxxxvwgwwxxxxwxuwggwgvwxwxxwwggvwxgvwwwxxwwgvxxWWxxvxwwwvvhxvwwvwwwwwwwxvwxwwwwwgxgvxwxwxwxwxwggxwvwwgwwwxwwggxxwwwwwghwwxxxxxwxgwgwxxxxwxwwwguxvwwxwwxwxxwwxwwxxxxwhwxxwxxxuwvxwvwxwxvwxwhwxxwvxxwxuwwwxvxwWwwwwwwxxwwwxwwxwxxxxxgwxxxxxwxgVxwvwxhxwxhghgVhhvwwxxwxwxwhwwxxxwwgwwxwwxxxvvwwwxxxvwwwvwxwvxwwwxwxxwgxxxwwxwxwxuwwwxwxgwwwxgwwxxwxxwwxxxwwxxwwxffwwwwxvwwwwwwvvwgwwwwfwwwfxvwwvwwugxwwvvvwwfgvwwvwwxvvwwfwfwwgvwugvxffwvvwwgvvgwwwgwvwfwvwgxgggwwwwwwwgwgxgxvwfwwfwwvvwwwwfwewvgugvhwwvvgwwwwvvgwvwwgvhwgwwwwwvvgewwwvwegvgfwwvvvgwwwgvwwwwvfvvwvwwvgvwwwvghxvwwgwvvwwwxwwwggwhwvggwwxwhefvxxwfwuvwwvxgxwxwxggfwwwwwwwxxxwxwwwgwxfxwwwfxwwwgwwwvgwxwgyhgwwwwxxfwgvxxxgwxwhxxxxxwhwxxwwfwxxvwwxxgvwwwxxwwxhwwxwwwwwwvxwghvwxwxwhwwwwxgwwwwwwwvwxgxwwvwwgxxwvwwvxxwvxgxxwxwwwwxgwwgxwwxwwwwvxwxvwvwwwwwwggwvwvxwwvwwhwwxxwxwwxwxwwwxvxgvvwwvvwwvwxvwwxwvwgwvxxvwwwwwwxgwxwxxwwxwwxxwvwwwwwfvvwxwxwxwwvxxhwhwwwgwwxgxhwxvvvvxvwwwwxxwhwvwvwhwxwvwxwwxggwwwwwwxgxxxfgwvwwgwwwwxwxvfvwwxwxwxwxwxfwxxxwwhgxhwgggwwxwwxxwxxvwwwxxwhwxwhxvwwgwwhwwxxwxwxgwxxxhxxxvhgwxxxwwwfwwxwxxwxxvxfwwgxxwgwxxwwwwfgxxxxvwhgwwxwxwxxxxwwfwwwxhwwxwwwvxwfwwxgxwvwxgxwwxwwhwwwgwwwwgwwwgggvwfwgwgwwwwwewvgwwwvgwevxxwwwwgvxvfWwgvgwwwwffwwxxgeevvxxwggwvwwwgfvwxwwwgwxwwwwxxxwwwwwgwwwwgwvWwgvgvgwVfefwgvxwwfwwxxfwgxwwxgwwvwwwVwewwwwxfvfggxgfwgvvgxwvfxwwwxhxxxgwwhwvxwxwwxxhwhwwwWvwvvwhgwwxhfvwxxwwwgwwwfwxwxgwwxxhwwwwwhxhwwxxhwwwwwgxwxwwhwxwhgwgghhfwwgwwwwhxhwggxivwxwxhwwgwgwwfvxvwwwvxhxvxwgvwwxwwVwfxxxxwwwwwxxwwwwwwxhwxwwwwwwgghwwxxvwwwwxwvwxvxxxwxxwwwwwxhxwwvwwwXwwwgvfvwgwgvwgwfwgwvwxwxxwwxxxxWwwvxwxVvfxxwxfwggxwhgvwvwgwvvxvxxwxxwxwwxgfxwwxwwevxxevwwxwxxxxwxwxhgwxxxfwwxxwxwwwghvgwxvwwwxxxwwwwWwgfggvxwxgwvwxwxxgxggwfVwfxxxvxwxxxhwxxwxwxgxxwxgwwwvwxwxwxwxhwgWweggfyhxxxxhwxwvwwwvfwxwwwxgwxwwxwgwxxxwwxwxwwxwxwvwxxvggwfhwwffxvVxwfwwvuvwvwwwvgwfwgwvxwxwwwwwwwUwvvwvwxwwwwwwwwwvwwwwgwwwWfvvwvvwffefwwwwgwxwwwwwwwwggvfWwwwfwwwwxwwxwwhxxwefgefuvvwvxVvwvwwvgwwwwvwuxwvfwwwwwvwwxwwwwxwwwwwwwewfwdfVvvwfwvgevuwwwwgvgwwwxvvgvgwfvwvwfwwwwwgxvwwwxwwwvwwXfvwvgwwfwggWwwxhwwgxwvwvwfvwwgvwwwhWwwwxxxxwwgwwVVgwwwwwgvWxgwxwhwwwhxhwwwgwwfvgwwhwwgwxwwWXxvwwxwywxvwwtvvwwuwfggwevgwvxvvvxgwfwfwwfwwwwwxxwvwwwxwxxvwfwwwfgwgwwhwufxwwghwuvgwwguwwwwwwvwxWwwwwwhxxxwwwxwvvwfvwwuwwwwwwwwwwgwwwgwvgwxwwxxxxxwguvgvffvwwvvwwwvwwwwwwhwxwwxgwgxwwwwWxwwxwxxhwxwVwwvwwwwwxwwwwwwvwvwxwxwwfvvwwwxhxwwwxwxgwwwvtwvvfxwwwuwwwgwhxvwwwxxwxxxwwwxwvgvfvgwwuwfgwwwwwxgvxxwxxwvwwvxxxvxxxgwxgxxxxxxwwwvwwvgwwgwwwwwwhwhwwwwxwhgxwgwxWgwgwxxhxwxwxwxfwwwdwwvxwwvwwuwwxxwwxwgwwwxxvwxwhwxwwwwvwxvwwwwvxwhwhwwwwwwwwwxwhgwvxwwxxxwvwwxfffwfvfweVfvgwfwfgvxgwwewvwwgfUfvuwvwwvwwxvwfwgwwwgwxxeeVfvffwfvvfevfgvfvwgwvvvvwxwxfvffvwggwxfgxvhuvvwwgwxxvhxxwfvvvvfeuvvfgffgwwwwwxwgwxeuvvwwxwwwxwvvvvwvwxwefewfffwvvwwvwvwvvvvwwwwvwvwwwgvvvwwwvvwwgfwwwvwwwwgwwwwffvgfvfwvvfwwwxwffvwwwgxfvgwwxxvvvxvwwwwwgwxxwwgwwwxwwwxwwxvwffuvvgxxwfwwvgfewvxxhvwhhhwwxvwwhwwwgXfxwvfwxwgfWfxggxfvfgvgwgwwwxxfwfwgwwwwxxgwwwwwxxxwvwgwwxwwwxwgwgwvwfwxwggvffwwxhwwwvwxwxfwwwxxvvgwwvwwwggxhwwxfvvwffuwuvvwgvVvwgwwwwwxwxxuvwwgwvxwwwwxwxwwwwxxfvwwfgvwevwvgvvgvwwwhwwwwxwwxuvvwwgwwghhvgvvwgxhxghvwwwvxvwxwvxwgwfvwwwwxwwwvwwwxwwwwwwwwwwxxwwwwxwwwwwwvwwwxwwwwxwwxwxxwvxxwvwvxvwfvwwwwgvwwwwxwwxxxxvwxwwxwxggwgvwwxhwwghwwgwVvvwwwgxwhWWfwgwwxhxxxxwxwwwgwxxwWwvxwwxvWXfxwwwwwwxgwwwwwxwwxxvwwwhwwxwwgxxwwwxxwxwwwwwwwwwwwgvwwxwxgxwwgwwwgwxgwxwgwwwxgwxwwvwxxvvwfvwwgwwxffvgwwxhwwwwwgfwghxwwxwwfwxxxvwwwgffxwwwwxxhwwgffwwwfUvfvwgvwfwxxxwxhwwgVvfgxwxwwxwwxwwwxgwgxwwwwgvvwwwfgfgWvfvvfwgvxwwwgwwwvgwwwfvwwwwgwwgwxwxwhxxxxwwwwwFvUwvwfwvwgwgvwxwwWwxwwwwvwwxwgxxfwgvwxwwghwwxvgwxgvgwwwwwevwgwgwgxWvghwhwwwwvwwwwwxwwxxWvgwwwhwxxgxxxhxgwwfgwwgghggfgxwhxxXxwxhwhwhhvwggwxxwghwxxxwxhxhwxyhxgwgWwgwwxvgvwFvVwwwhxwxxwwwwxvxxwxwwxxhxxxwxxgwwxgggxwwvvwwwwxxgxwwxvwxxwwhxgwwwxwxhgxxxwvvwwxffuwgggwwgxwwwgwgwwwwwxhfgfvgwwwxwwwwwgxxxwfvwFfVwwgwwgvxggwwwhwhwwxxwwwwwhxxhwwxxwxwxxxvxxwwxwwxfwxwwxwwxwwxxfwvhwxgxxxxwhWgwwxxwwwwxxgwwwwwxwwxxxhwxwxxxxxwvhxvwwwxggfgwVwggwwwwxxFfVwgwwxgwhhwxwwwxxxxxwhhwxwxxxxxxxvxgwwwgvwfwxxwWwvwxxwxxxwxhgxxxwxxwwxwwfggyxxxwwwwwwwxxxwwxgxwgwwwhhwwxxwwxhwwwxxwxxwwwxxwwwxxwfwwxxxwxwwwxxwwwxvVwwxxwwxvfwwvvvwwwfwvwwxfwgxwwfwvvgwwvwxxwwfwwwgwwwwgvwvwfvwwwwwwWuwxwgvwfwwwxwwfgvgfgfvwwwxwvgwwgvgxweuwvgfwxwwvfwwfwgvwvwgwvvgvVvuwwwvvwwwgwwwxwwuggffvfwvvwwxwgwvwvfvvfxwwwfeffvvwvwvwvwvwwwwwgvvvwwwvwwwxvwwwgxxwwwwgwwxwxxxxgfgwvwwvwwgwggwwwwwhxwxwgfwwwwvxwwhwxwvgvxxhxxfgggwwwfWxxwxxxwwgwxhgxhxgxxvggfvwwvwwwfvwwwwwwwwwgevwwfggvwxwxxvgvxwwwgxwwxfwfwwwwwxhxwwwwwfgfxwgfwwxwxgwwwwgWvegvwwvwxvvwgwvxgvxwwwwwwwwvvvhwvwwwwvxxwggwwxxwwgvwxxwxwvwwvwvwwwgwvghwwwxwwwwwwwwxwxwwwwxgwwwwxwxwwfguvwxwhxwwxgwxwxvwwxwwxxwwwwvxxxxxxwwwwwvwgwwuwwwwvwwwwwwwwwwwgvgvwwxwxwwwwwwvwxwxgwwwgwwxxxxxxwwgwxgxfgwvxvhxwwxxwwgxXVxwxxwwgwgxwwxxxxxgxwwvxxwwwgwwvxwwwwwwwwvgxvwxwuhwwgwwxwxgfwwxxwwgxvwhgxxwwvxxxvwwwwwwgwwwwwxwgwgxwwxufvvfwVefvvvwfWwgfvwwwwgffwwwwvuguvwvwfvwfwgvwffvffwwfwwwvwhgwvwwWegwgefwwwwVevfgeguvfgwwWwgfgfwvffwvvwwghvvfggfgfwhwwggfvwwwfwfwwvwvvfvvgVvgvuwvvgvwvffwfgwuufvggvwfwwwwwvhwvxwfveugwvwvwwwwuuwgwuwvgvgwvgevfwuugvvwwfwwwwvxxfgwvvwggwwwwvwfvggvvwfWwgwwwwgfwwwwwfvwwvxgwvvvvwfwggvwvgfvvwwwwwwxxwwwhvwvwefwwwwwwwwgfwuwhwwvwwwWhxwgwwgwwwWwwhwxXfgwwfxWggxwxwiwwwwwwfvwwWwxwwxwfuwwwvwwwwwxwgvwxvwwfwwWwWvvvwgwhfwxhwvwwwxvwvgwvxgvwhxwwwxwxgwegvxxwwwgwwgWxghwwwgwwwwvxxwvwxvwwwwwvgwwvvVgwwgvghvwxwxxvwvwwfgwwwwvgWwwxwxhhhvfgwfvwwuwwwwwwwfwgggwwvxwwxWxfWvwwwwwwgwwwwhxgwvwwxwxwxhwgvvwxxxwvwwgwwxxgwwgwwwxwhxxvxwwwxvwvwwxwwwwgwwxggwggxvwwwgwhgwwvwwxwgxwwwxhwwwwxxwwwwvwwfvvvgwwxvwgwwwvvwxxwxxwgvwgvwwwwhwxxxwwxwgggxxxgwwwwxuvwwwwhxxxwwwwwhgvXxfhxvwhwfxxhgwXwfwWxwwwwwhwwwwwfwxwwwwxxwxxwgxvxwvxwwwwxhxvwxgwwwwxwxxwwwwxwgvxwgxwgwwxxwwwfwwxvwvxvwxgvwggwxgxxwwwgwwxwxuwwwfvwwgwgvvvwwevwggfvwvffwfgWfwwwfvwwxwxwwwvwVfewwgvvwwgwvhfexgfewfgffwVewvfgggfvvwwvWwfewewfgfwfwfwwwfwfwwwwWwwwgwhgvwwwwfwwwvwwfwwwvVfgeWgefvwvffwvwvwwvgwwwwvvwfwwwwxwwxggeveWveewwfffwwvvwgwvWwvwhwgwfevvxvwxwvwwwwgvfggvwgWvgwwvgwwwwwggvwwfwwhgfgwwWwggwggwwfwgffwvwgwwwxwgggwggwgwwwgwwvwvwwwgwffwggwwWxwwvxxgWhwgfxgWVgwvxwwvggxwwgggxwwhxhhwwwwghggxggwwwvwgVwwwwwfgvwWgwWwwwvfWfevfxwwggwwwwwgwgxwgwwwxwvwwgwwxvgwwwwwgVVwfwgxXgfwxwxfffwxvwwvwxwvwwwxxwhwvwhwxwwwwwwvvwwwxwfvwgwwghxvvgwwgwvfwwwwgxwvxwwxwwwwhgwwwwfwwwgwwwwwvgxwhwwgwwxwxwgxhxwwwxgwwvwwwwwghwwxwwXgwwwwxvgxvwwwwwvvwwwwwwxwxwwwwwwwwwxwwxwwwwxxggwvwxwwwwwwvvwgwgxwwwhhvwWhwgwwgwxwwxxwwwwhWwhxwffgwgxwfgwwVvwggwxfggwwwwwwgwvfxgVxxxvwwhwwxgxwggxwwxwwhxwwgxxwxhvwvxvwwwhwhwwhwwwwgfwwwxxhwwvxhgghhwhwxhwwfxfvwwwwgwwwgxwvwwgVwwvgwwxvwwvwxwwwwxgxwwgwwwwgxwxwwxgwwxxxvxghVxgxxwgwhxvgwwwwwgwfwvwwvwwwwwggvfwggvwwxwggwgvwfxvvfvxVwvwgwwwwvwgggvwwgwxxxfwwwgffgwwfvwfgwwwwwwfwwwhwwwfwhfwegffxwfvwwwvvgwgwwhxwhxwwfvvwWffvwwwwxvgvwfvfwfvvxwvfvvvwggwfvwwgwwwwgwwwhgwwvgfwewfvevvwwwgxwwfgvwwwwggvvvgwwvvwwwxxwwwwwwfgwwwwwvwwfwwgvgwgWgfwwvgwggwwwwwfxwwxfhgwfvwgxwwwwxgxvhwwwgwxgwxxhwxwwxvwvwgfwxwxxwwgxfwwfgghxwhwxgwgfgfwggxwhwwwvwxwxxhgxhxxwfwgwwvgwvxxwwwwfwwxwwwwxwwwvwwxgwwxwvxwwxwhwwwxwwhfwwvwwwfwfvwxxxxxwxgwwwxhvwwxxxwvxwwwwwgwvxxxwwxgwvxxxwwgvfwwxxwwwwgfwwvxxxxwwwxwwwwwwwxwvvwwxxwwwwwgwwvwwwgwxwwwxgwwwxxwgegvgwxgwwhwxxwxwwwxvwxxwxwvwwwwxwfwxxwxwgwwwwwxxvgxwwwwxxxxvwfwvxxwwwxwhwwxxxwxwwwwvxwgwhwwwxxVgwwwwwwwwwwwwgxwwggxxwxwxwggwwxwwxwwxxxxxwwwwxxwxxwhwwvhwwgxghwgxxwvhvxhhxxwwhwxggwwwxxwxvxwwxxhxwwxxwwgvvxgwxwggwhwwgxwwgwxxxwwwwwxwxwwxwxxwxwwvvwxwwwwxxgwwxxwwwxwwwwgwxwvvvwvwvwuwwwvvffffgwvxuwwwwwgwVvwffffwwwuvfwwvfwgwwwvvfvwwxgwwvgfdwwvvwfVwwfdggwVggvffggwvxguwvvVwwwwwvghfvfwgvgvwwhwwWwfwwewwvxwgwwwwwfgvvvwwwwwwwvevxuvwwffvugwwvvwwwwxugwwhxwwvvdvfwvgwugwwgdvffwvvwuffggwwwwwgvwwwwgwvwwwwwggvwgwwvwvwxwewwwvfwWVuwggfwwxwxwwhwgwwwwwvVwwxwggwfwwwxwwwgwwxwhwvxgwvwwgwxgvewwXwggwwVhXvwwhhxwgxxwvwwxhwwxWgxwvwgwwuvwwwwwxwgxewvwwvwwwwvwwwwgwuwwxgwwWxxwwwwxwwwXwvvwwwwgwxwwgwwghwvwgVwwwxwwvghwxxwwxwwwwwwvvgvgwwwfvxwwgwvwWwgxwxwgxxwwvwwwwwxfxwwxxwhhwvwwwvgWwgvhxwxvwgwXvwwwxgvvgwxhhwhxxxwwwwhggvxhxxxvxwvwvwxwwwwwgwwxxvwvwxxwwgwwxgxwwwwwwwWwwwwwwwwwwwwvwgvxvwwwwwhwxxwwxhgwwwwxxxxwwwgvwwwxxfwgwgwwxggwwwgxWwwwwxxxxhwwwgxxwwwwhwwwxxwwxxxhxvfggxhhgwwwwwxwxwhwvxwgxxwhwwXwgwwwxwvwggwwwwxwfwwxwxwxwwwwxxwgwwwhwxxxxgwxxwwxhxvwxxxwwxwxwwwgwxwwwxgwwwwxwwwxufwgvgwwwwfwvwwxwwvgvgwvwgwwxwgwwvxwwwwgwvwgvwwwvgwwwgwvxwwfwvwwwvwwgeewfggfVwUWwwwwwgvwvwwwwvxwwxUeegwgvxwwvwwwfwwxvwvwwwwwfvwwgwvwfvwwwwwFTggwwwwfxvwwvUuvwgvxvwwwwgxwvUUgVvuwwwfwvxvw6eSWwgfgvxwwvwvvwvwwxgwvwwwwwvgwwfgxxwwvvvwwvgxvgwwwwwwggwfgfggwgwfgwvwwwxxwwggwfvvxwwwxwwwwxwwxxwxwxxxwxwwwwwwwwwwwwwxwvgfgWwhxxxwwgwvxgwhxwhwwggwfhwhwwwwwwwxwvwvFdhwwwwxwwVvuwwgfwwwwwxwwxvwwwxgxwwwxwwwxxwhwwwwwwxwwwwxwwwxwwwwgwxhwgvwwvvwvwgvwxwwxxwwwgwwwwwxgvwvwvwxwvgwgvwwwwwgwwwxvxwxwwwwwvwxwwwxwxxxxhgxwwgwvxvwgwxwgwVWwhvgvxxwwxwwwwxwwwwxvxwwxxxxxwwwwgwvxgvxwwxxgwwwvwxgwxwxwwvwgwxxxwwwwxxwwgwwxwwwxhgwwwxvwwwxgwvgwwwwwhwwwhvwwvwwwwxwwwwxxxxxwwgwwgwwgxfgwxwwxfgwwwxhvwxxxvwwwxxxwxwwxxxxxwxwxwwwgwxwwxhxwgwwxxgxwxwwWxxxxxxhwXxuwxxxfxwhfwxxgvwwwvxwwwxfwxhxgxwgvwwwvxxxwwwxwxwwxwxwvwwxxxxwxhwwwxwwwwgxwwgwwxxwwwvxwwhvwvwweuxwwwwwwfvvwwwvwwgxwxwvvwgwwvwwwxwwvwxwwFwtwWvfwvwwwvffwxWewwxwgewvwfvvvvwwwgwwwxxxxxxVvuvvwfwwxVhwvvgwvxwwwwwwwwfgwgwgwwwvxgwwwwwxxwxeffvfgewwwvwgwwfwwwwwwwxgvvffvwwwxwwxwxxvwwxwwgwxvwwwuuxwWuwhgwwxggwxggfwxwhuwwwvwxwwxxxwxwwxwxxxxggfVgwFFwwxwxwxWuwhxwxwwwgvxwwhxwxwgwwxwxvxxwxxwvggwwwwgwwwwwwwvxwxwwvxxwwwwwwxwwxwxxwwwwwxwhvwggvhvwxvwwxgVwwwwxwgxgwvxxwwwwxwgwvxxwwwwwwwwhvwwwvvwwfwwwxxvxwxwwwwvwxfvgwxWvwwhxvwwwwwxwwwxxxxvwvgwxwwwxwwwwxxxwwxgxwwgwwgwgfvwxwxwwxwwxwwwwxxwwxwwxwxwwxwvwwwwxxwvxwwxxxxwwwvxwwgfwxwwwwwxxwwwwwxwxxwfwwwxxwxxwwwwxxxwxxwwxwfxwwxwxhxvwwxwxwwxwgyxwgwgWwggfhxwwxgwwxwwxxxwxxwvwwwwxwwvwxxwxwxxwwwwwxwwwwxwwxgwxwxxxggwwwwwwwwwxwxwwwxwxxfwwxwwwwwwfvwwwxtwwWwvwwwwwgfwvwvwwgwvwgvwvvggwgwewxwvvwgwgwfgvvwwxxwwvwvwfeevvfuwfdUggwwwvwWvwvwwwwuggfvwfvDgvvwwwwvvwvfxwgfgwxxwvwwvwvffwwETveuufwgggvfggvwgfwwwevwgwgwvwvfwwwwwvwfwwvwwvweUwEuBggvfvwwfgvdwgwuvxwwwwwwwwfvwwvwwvvwvwvvxwxgwwvwwwggwwwwwugfwwwwfgwgvwggfwgxWwwufwwggwvvwwwfwvvxwxvgUwwxgwgxvxhxgxwwwwwWWfgwfxwfWgvxxwGxhwWxwgwvwgxgwwxwhwwgwwgxxgxxxgwgvwwgfgdwwvwwwUSwggfwwxvxxvwwwwwwwxwwwwxwwxwgxxwwwvwgfwgvwgwwwwwfxwfhwwhwwvwwwgwvwxwxvggwwwwwwwwwggwwxgwgwfwwwwvwwvxwvVwwwgwwxxxvxgvvwvwwwxxxvwwxxxxWwwggfwgfUggvwwwxwwgvwwwuwwxwwwfgwvwwgwwwxwxxwxwwvgxvwxwwwfwggwvvwwfvVvwwxggxwgwwwwwwgxwgxwgwxwwgwxwxwxgvxgwvwwwfvvxwvwxxwxwwvxwwxwwxwgwvwvxffwwxwwgwwwwwwwwwwgvggwwvwvgwxggUwwwggxxvxwxwgwwwwwwxxgwwfgwwwgfwwvwwwvwwxvgwxxxxwxvgxwvxhwxhwvwwxwwvwwGxvwwwvwxwwGwvwgwwwgvxwwgvxxwwwwwwwwvwgwwvxxwxwxxwxwxxffwwxwgxwwvxwvgvwgxwgvwwxwgxgvwvxxxguwxwwwwwxvwxwgxwwxvxvwwwwwwfvxgwvwwwxxgwwxwwwgwgwwwxwxwxwwwggvwwxwgvxxxwxwwwwwgvwvvwvwggggfwwgggwggxxvwwwwwvwwwwwwwwwxwwwxxwwxwwfvxwvvwgwvvwfwwwwxvwggwwwwvwwwwwwhvwwxwwwwwwxwvxwvxgwvvwggvwfwwgwfwfwwwwgwxxwwwwwgvwwwwxwwwwwxvxhxvwvxxwwwwwggfwwwwxfwfwggvxxxwxwwwxxxxwwxhxwwwxwxxwxwwxxxwxwxwxxgwwgggvwggwwwgxxxwxvxxxxwgxhgxxxwwhwxggwwxhxxwwwxxwxwwggwwwwxxwwwxxwwwxwxwxxwxvxhgvxxgvwwgwxxvwwvwxwwwxxxxwgwxwxwxwxxxwvxwwgwwxxxxxwxxwwggwwwwwwwwwwwgvxwwxhgwxwxwwwwwwxwxxxwxxwxwxvwwwwhvwwwxhxxxxxxwvwgxxxwvxxwxwwwxwxwwwwxwxwwwwwxwwhwxxwwwxxvwxwxxxhgvwwwwwwwwwwwwxwxxwxggxwgwwwwxxvwwwwgggvwwxwwwwwwxvwxwwwwxxvxxxxwxwvxxvwxwxxxxwxxwxwwxxxwvxxhxvxxxhxxxhgxwxxxxwvwxwwwxxxxwxvgvxwwwwvxwwwwvxxwwxxxwwxxxwgxwxxxxxwxxwwvxxwwxwxwxxxgvgwxxwxhgvwxxvxwwwwwgwxxghvwwggwwgwwwfwvgvwwwgVfvwwwwfwwgvfvwwwvvxwxwwwffewwwvgwvwwgwxwwvwxwwfgfWvdveuguwwfwvgxwffhxwwwwwwgfVuwwwgwwgvfvwwfgvwxwwwFuUehwwxxfuvwWwgxgwwvfvuwUvgwgvwwvvxwgUgWvwVdvvwvwxxgggwwwwvvwwvwwwwxgfwvggwwxvfwwgwvxwgefuvfwgvwxxwwuvwvhvwwwwwxxwwwgwwwgvwwwvwwwwxhwxxhwxwxyvwgfggvVVwgxgwxxwwwwwXXfxxwhwwwwvVfwvgWfwwwvvwxwwwwxxgwVvfwvWwfxxxxxugvwwwgwwwwwgxgfgwwhxhwhxfxwxgwwgwvwgwxwvvwhwwWhwvwxwgwwxwvWxwwxgvggvwggwwwgvfwxxwfuvwwwwwxxwgfggvwwwwgxwwwwwxwgwxxhwxwVufwVewwwwxxxwgxxWvxxxxxfwwhxvvwwwxxxhwxxxuwwwwhgwgvwwwwxwwxwwwwwxvwxwxxxxxxxevwgfVWvwfWvfwvwgwwgwxwxxxgvwxwvwxwxwxxvwwwgWgwxwwwvwxwhgxxxwxwhwxxxwxxxxxggwwgGfvhxxgwwggwwWWhwfxwwwwxgwfxxxxwwxwxxwxxwgxfwgvwwhgwfxxwwwxwwwxxxwUvwxxvwwGwxxewgfwwvvwfVvvvvwvvwwuevvwvwwfvgfffwvvvwwwwggewvwwwhwvwwfdwgeewvwevwgfwwvgvvvevwwWwVefWwwwgvfwwwwgwfwuwwvgwwwwwxgwwwwwUvgvwvvvwwvwvfwdgvvwwwgwvwwfwwwwwxvVwgwhwwwvhwgvugvvuvwwwvfvfgdhvgfwxwwwwvvuwwgwwwgfvWwfwwfwwvwwxwwwwxwfwgvVwwwwffwwggvwuvwwwfhgfwwwgvwwvxwxxvwgwgvvWvxwxwwwwwxgwgvvxwgxvgwxwgwwwWwwwvvgvhgwggwwgxgxwvFxGfwghwxggwwwwgwvwvvwxwwvfwgvwFgXwxwwwfwxxhwwxwfgvwGwfxwwxwwxxwwwvwgwggwwwwwVhWvwwgxwwwwgxgwwxvfwxvhgGxvwvxxwwxwvwvvggwwwwgvvwwwgvwxxxwwuwgwwwfwwwwwxwWvfvwwvwwwwxgwxwwwgvwwwwxgwwwwhvvvwwvvwgxwhxfwxxxwwvgwxwuvfxwvvxxwwwwwfuwwwwxxxvxwwgwwgxwxxwwvvvhxggwwwwxwhvwwwxgwvwwwwwwwxwwvxvgwwwvgxxvwwvxwvhwxxxxxxwevwwwwwwxxhWwhgwgwwwvxhwwwxwwhxgwwvwxxwwhhvxxvgwxwwhwwWvgvwwwwgwwwxwwwuvvxwxwxwgvwxwgvvgwvxwwwxwxwwwwwwwxwvwxwwxwxguwxwwvxxxgvwwwwhxwwwwxwxwwvxwxvwwwxuwgvwwgwgevwwgwxgwwwwvwwxwwxwwvwxxwugfwwwgwwwvxggwwwgwgUvwwgwwvwxWewwfWvvvvwwxwxwevwgwgwwwxvwwvvWwxwvwwhxwwwwfwwwfwxwwgwwwevwwwwWwvwgwgggvwwwxwwwxuxwfvvwwwwvxwwwwvgvvvvewvwwwwwgwvvwWwxwgwxgwwwwefvvwwwwwxwwwwgxwvgxvwwwwxxvwvwghvwxvwgWVwxhggwwgwxwvvwwwwwwxwwxVvwgwxxwwgwwxxxwvwxxgfwxwwxxwxvgwVxxgwxxxxxwwwWwxwwwwwXwwwwwxwghgwhxWwwgwwwwwwwxxwwwvgxwxwwwwxwwWwwwwvwwwwxwwxwxwwxwxwwWwwwgwwwxwxwgxgwwxwxfwvfwggwwwwwwwgwwhwhwvwghwwwwwhwwwwwwgwxwwwwwwwxwwwvwwxxwxwwxwgwwwwgwxwxfvwwxxwwvwgwwxxwxxwwxgwghhwxxwwxxgwwwxxvwxwwWxwhxwwwxxxwxwxwwwvxwhgwwwgxwxwxwwvwwXvxwxvxwxwvwxwwwWwwxxwgWfwwwwxxgwwxxwwwwxxwwwvxxwwxxwwwwwgwxxhwxwwwwwwwxxwxxwxwwxwwxxyxwwhwxWwxgwxwWgwgwgxhwWwxwwxwwvwxwwwwwxwwwxuxwwwwwxxxxwwwwxwxvwwxwgwxxxwwwggwxwxxwwgwwgwwXhxVwxuwwgwwggwxvgfwwwwwgvwggvwvwwgwvggegxwvvvvvwvvvgWwVwwwwgwwgvxfwfwwwfwwgvwwwgwwevwxxxggVtffufguwfwvwvxfvUgxgvwvwwxxgwgwgggFSwxwfwvvwvwfgVwvwxwxwwwwvTufwWwvxvxwwfuxwwwwxxgxwwgVTwvvfwgewwvxvwUggwfgxwxwfvVEuSfwwWvwvwwxwxgvfwvwwwwwwvwgfVvgfgwfgvvgwgvxwwgwwwfwwxwwwwfvwwgwffxxwgwwwwwwwvwxvwwwwwwvwgguwwxwhhhwgwxwXwwgghwVvwggxgugwwwXwwwwgwwwwggxwwwwgewvwvwUdwwgwwvwwwgwwvwvwfexwxwxvxwxwxxwwwwwggwxwwvfwwwwfuvwwwwxvwwwwwxwgwhvfggVwwgwwwwwwxvwwwgvwgvwwvwvwgfvxwwwvgxwgvwxWewvwfwwwxwxwvwwgwxwwwxxhhwwxggvwfwgxxvvffxwwwwxwghvwwfgwxxwwxwwxgxwwgwxgxxvvgxwxfvwwxwgxhwxgvgwwxwwwgwxxwxwwxwhwwxwgvwwWfwfewwwxgxxwwwwvggwvxwwwwwvwxwxxwwwxgwwvhwVxvfwwwfwgwfxwwfgfwgwwhwwwwwwwwewvxxxwxxhwwvwhxgwwwwxggggwxwxxwwwxvvwwwxXxfwxgxxwwwxwwggxxxxwwxhwwwXgxwfvwgvxwwwvevxwwgwvwwxhvxxxwhwxwwwfwxxwwwwxgwwxvgwwwxgwwwwwfwwwwxwwxwgvwwfVvxwwxwwwwwwwvxhwfwwwfvwwvxxwgwwwxgvffffwwwwvwwxegwWwwwgvfwfvwwgfwwwwfgVwwwgvwUvfvwwwwwxgvwvwwwvwwwwgwvwwvwwxwggwgwxwxwwxVfevwwwvwgwxxwwvwgwvwvwxxVefgWxwxvwvfwwxwxfgwxwwwwwwwwwwxgwwgvvgfgwwwxvwxxwwwgvvwwxxvwwxwwwxxxxxfwxxwxXwxxfwwwxxwggwwxxwwfWwxwxwxxxxWwfgxxwwhhwyxwwgWwegwgvxwwxxxwwxxxxwgwwxxgwfwxwxwvhwgwxwgwwxgxxwwwxwxxwxxwvwwwwwwwwwwwwhwwwwVvgvvvwfvxgxwwgwwwxwwwxwwhwgfgwwgxxWvegwwgwwwwxvwxwwwwwxxxxxxwgvxvwxwhwxxxxwxwxvwxwwwwwwxxvxhVvvxwxxwwxgwwwwxwwwgwwgxxwwwwwwvxxgvgWwegwxxgvvwwwwxhwwwxxxwhwwwxhxwgwfvxxxxwWvgwyxwwxxxyxxxwhxgVgvxwwghgwwwxwwxwwwxxfxwxxxwwxwwxxxxwwwxhyxwwwxxxwxfwwwWxwxwfwfgWxvweVgvfwvwhvgvgggvvwguvvggvgwwwfvugVfwwvfgwgxwwfwgwhvUwxfVfvghweVwgwfwfwgwwwwXwfFwvfghWvxwxwguwVwwgwhvxwgxxxxxwwwgGwwWfwwwwWwwwwwgfwwxfwwWWvvgwwxwxwfvvxhgwxwwwvwgwWvghfwfwvxwwwwfvxxXgwfvwwgfwuwwxwxwxgwvgwwwwxwvxwwxfwVgvwvwgfgvwvwfwgwfvfxgwwgwgwwwfwwwvvwvhwwwffwwvvffwwwwxxxgvgwwvfwgvgggwgffwgxhxggwgWhXUwWwgggghxxwxwXfXwVgxhHfxXfYwvgwWgwwwwwwgfxxwwwxwwwwgwxwxwwxxwwxxwwwgwxxgfwwwwvwhggwhvxxwghwvwxxwwfwxwvgwvwwxwxWwwgxwwxxxwguwxhvwwXfwwggwxwwgvwwwwxxvwxxwwwgxwwxgWfxWwwxwxWwvxwxhxghwwxhWgvwhgwxwwxhhwwwxwhXgwxhhXwxxwwwxwhwwxwwwwwxxwwxxwxwwwxwxxvxxwxwxxxxwwxxwxwwwwwwvwwxwxgwwwwwwwWguwWwvxxHwfgwwwhwwwxxxxgWwvxxxxxxxwwxwhhxwxwxhxwwwggwgwxwxxhggxfwxxhfxxgwXwwvxxwxhgxhxwwWwwxhWwWggvHxvhwwwwwxxwwxwxwxxxxxxxwwwwxwwxxxwwxwwwxwwxwhfgwxgwxxwggxWwxfwgwwfwfwffUwvgwwvwfwwwwwvvwwwwwfwffwvgvxwvvvwvwwxfeuvvfUwvfewufvvgfwwwwvwwwwwxfffvgvwwwvvwwxxwxwwxwffUgfvevvgvwvvufvwgwfvwxgwwvwvwwwvxxwxwfvwgwxxefuugwfgwwwwwwvwwwwwggfwxwvvwwxwgwwhwwxwwwwxxwwwxxxffuffggfVfwvwffVvvuwfwwxVffvvvwwwwwgvvwwxwwxxxwfguugwvgvvwwwvvwwvwxgwwwwwwgwwwwxwvxwwvwvwwxvwwwwwvwxxxwVguvwwvwwvwwxggvffwwwvwwwwwwwwhwgwwwwxwwwffwwwwvxwgxwwwwwfgxhwgxvwwwwwxwxwxggwxwhweuuwvvvvwvvvfwevwwwwwwwwhfgwwvwwxwxfwwxvwwxegfuvfgvwwwffvwwwwgwwwwwvvwwwwvwgvwvxfgvvvuvvvwwwwxuvwwvxwwwxwwvfgwwxwxwwvwxgwgxwwwxuvwwwwvvvgwwwvwwwwwxwwwwxxwwxwwvwxwxeVfufvvgvfwwwwwwfuggwwwwgwwwwwvwwwwwwwwvwwwvvgwgwwwxfuvvvgvvwwwfwwvwgwwxvgwxwwvwwWxwwxwvggwwwvwwwxfuvxvwwwvwwxuwvfgwwwwwxgwwxxxwvwwhxwxwwvvfwwwwwguwhhhwwwvwwwwxxwwxvwwwwuffwfvuvewvfffufvvvvfvwffUwffvwguvwfvvvwwWuvvxgwevvvwvevvfUfvvfvgvwvwwWwefwwvvwgwwvguvwfwwwvvvwwwwxwxvvxwfwwwwfvwwfUufwvwfgvwvwgwvwwhwwwvwgwwvwwwwwgwwwwgwuwuwfffwvhfvvwxwgwwxxwwvwwwwwgwhwwwhggwwggxwVvefwgvwvVeufvvvwfgvwwwfvvwwwwwwfvvwwvwwwwvwwxxwvwwxwgfwhgwwwvfwwvwvwwwwwwggxwwwwWwWwwxwvxwwxhgxxgvxxvvgwguwfwwvwwxvfgwxwwgvwwwwxwwwwgvxwxwwwwwwxwwxwwwwhwgwwwVwvwvwvgxxgxwwwwwhxwxxgwxwwwxeevgvfwuugfvgvvvfvwvwwugvxwwwgwvvwwwvwwhgwwxwwwwwwuwwwvvvgwvvwffuuvwwwwwvwwwwxwwwwwhwwxwwwwvwwxuwwgwfxwwwwvhwgvwwwwwxhwwwwxwwvwwwwxwxwwxgwxwxxvwwvwhwwwgwuwwxwwgwvxwxwwwwxwwxwwxxuUfuvvuwVvfgfvwvvvvfwvwvvwfvxwgVwwwwwwWwgwvvwggxxwgvgvvwwvwwwwgwgwvwvwwwxwwgwwwwwwxxvxvuwxwxwwxwxuwwwwvxwwgwwwgwwgwxwwvwxwwxwxwwhwxxhwxxwwwwwxxwwwwwwwwxwxwwxwxwxxwuwvwVwvwewvwvvvevwxvvufvwwwwvvwwwwwwwwwxvwwwxwwwewvwgwVvuuevveewggvwhwfwwwwwfxwwwwwhwwwvxxgvxwxwgwvgvvvggvwgwgvfwxWvvvfxxvwwwwxwwxwxxxxxwxxgvvwvvwfwvvwwwwwwgwwxwvwwxwewxxxxxwxwxxwgwwgwwgwvgvfvvwggVwwwhwgffgvwwwwwwwwggwwxxwvwwwwwwvxxxwfvwwvxwwvfvgwffxwgwxxxwwggxwgxxwwxwwwwxxxxxwwwxgvgwwgwwgwwwvwwxwhwvwvxxwvwxxwvxxwxhwvxwwwWvwwwgwwvwwwwxxwwwexwxwgxxxxwwvvvvvvvwgfvwvwwwwwvfvvwwwwwwwwwxwwwwwxwwwxxwxwwvvvvvwwwvwwwwwwwxxwwwwwwwwwwwxxwxggvwxwwhwwwvwwwwxwgwwwxwwwwxxwwxxwxhxwwgwgwwwwwwwwgxxxxhxwxwwwxxhxxwxwxwwvgwwfwwwfvwgwggvfWwfWvfvvvwwwwwxwwxwwwxwwxwvhwwhxwvwgvWfwwwwwwgwggxhxwfvwxwwwwxwxwwxxgxwvwwwxwwxwfxwwgwwxxhxwxwxwxwxwxhwxgwwxwwxwwwwvxxxgxwwwxwwwwwwxxxxxxtgvwvwffvvwfVevwvvUwwwwgVetvvwwvwvfvwwvwxwggfwwxxwwxwvvUwvwgVetwwvvgvwgwwwgxwwggvwwvwwwgwwwwwwwwxwxxwfvvwgVefgvwwgVetvvwwwwwvgxwxwwwwwwwxgwwwwwwwwgVetwwwwwwgwwwwwvwwgxxwwwwwwwggwwxwwxxxwxwwvfwwwgVefwvvwgwwxwfxwwwxwwuvwwUvwxxvxwwwvwwwvuvwwwwwwwwwfgwvwwwwuwvxfwxwgxxvgwwwuwxxwxvggwwxgfxgxxwfVevwvvwwwxwwgwwwuwxwwgxxxwxwwvgwwxwgwhwxxwgwvwxwwuvwvxxwwxxgwwwxwwwxwgxxxgwxwxwgvwfvwwwwwggvvxxwxxwwwwwwwwgxwwwwwxwgxwwwwwxwgfvwvwwwgwvwvwwwxvwxvwwvwwxvwwxwwxxhwwwwwwwwwwwwgwxwwwvgwxvwgwwwwxwwwxwwvxxxxwwvwwwxwwwwhwxxvxxxwwwwwwwfxxwhxwwwwwxvwwvUvwxxxwvwwwwwuwwxxwwwxgvgwxwwvwgxwwgwfwxxwwwwwgwuwxwxvwwwwwgxfxwwwwwvxwvwgwxxwwwwwwwwxxvxwwxwwxwxvxvxwwxwxwwvwwxxwwgwwwwwwwwwwwwxxxwwxxxxxwwxwwxxwwwwwwxuwwwwvwvwwvvvwvwvfvvfuevfvvwwuwwwwvgffwgffwwwwvwvuuvvvvUefVefvuufvvfwwvwwwxggfwwwvwwwwwwvwwxwWVfvVgewwxwwwwxwwxwwxfvfvwgwxxwfffgxwxwwwxwwxwwwwgxvwwxwwxwgvwwvwWwwvwvuvvwuuvwuvvvwwwfwvwwxvvwvvvvwwxwwwwwvwxgwwhwfwvvfwwwvvvwwvvwwgvxvwwwxwxxwwhxvwvgwwwwwwwvwxxvvwwvwvwxwwwxxxxxwwwxwwxwxwwgvwwvvwxwfvwwwwxwxxxxxgwxwwvvwwwwVffvVgewwwxvvwwwwwwwwwwxwvwwvwxfgfxwvwvwxvwwxwxwxwwwxxwwwwvwxwwxwwwxxwxxwxwxxxwxwxwxxwwxwwxxxxwvwwwfwuvwhuuwvvvwvwvxwwwxxwwxwwwvvwgwwvwxgwwwwwwwwwwxxwwvvwxxvwwwvxwwwxxwwwwwwgwfwxhxxxxxxxfwxxwwwwxwwxwwwwxwwxxwxuggwwvwgutwwgfffeUvfUwefevvwgwevvwwgewvvuugfvwvwvwuvxvwfvffvfVvevuwvuVggfvvwwUwvfewfwgugfwfgvguvvxfwvwfvuVgwffwwuwgvwwwvwvwgwwvxfffvgffwvfwfwvwfvgvgvwgvwxwgwfwxgxgxvwxwwvwgvwwvvvwvwwvgvgevVxgwVvugwgxtwwvwvwvwgwwwfvwvhxwWgwwwfvufwgvwgvgwvweEUvwvwfvuffwwwwvVwgwvxffvfwxwwvwfvxwwxUfwgxwfvWfgwwghwggUwhwvvgxggwvvgwxgfvwwgwgwggVghWfhwwvxgvvwwwwwfvhwwwwvwuwggwwvgvwfggwgxwwgvwxwwfxfwxwwxwvwvwgwhwwxvwxvwhgwwgExhfwwxuwwwwwxgggxvvwhwwwxxvwwwwwwxVvugwfvvfwvvdVffwgvwfvvwwhvwvwvggwwfwwwvwwwwwwxvwwvwgvuwvugvwvgfwWwfwwwuwwwvuvwgwxwxwwwvwwwguwwwxeggvvvgwwxwwxgggwxwwxwwgxwwfvgwgwwxwxxwwxxgwxxxwwwxwvwvwwxwwwwwwxwvvgwWwggwwxwwwwxxwwwhwgxgxfVvvfvvwvfvwwfeVVwgwfffwfwfwgvfwWwgwwwwwxwwvggggvvWwvvxwgwfgwwxgwwwwwwwwfhgxwxwwfvvwwwxxgggxwxwwwgwvvfgwwwwvwwgvwxwxwwwxwxwwgwgwwwwwwggwxwxwwwwwwwwwxgwwwwwwwvwwwwwvxvwwxgwgxwvwwxvxxwxwwwwvwggwxxwxwxwwvgtfgwggffvgfwWffuwwvvvwwwuwvwwefuwWfduwwxwxwwgfdvwwwwwwxxvfgfwwuwVffufwwwvvwwwwwwvvwxvVfduwwwgwvwwgwwwwwxxvhwwevugVfduwxwxwxwgfdvwwwwwwxxwwvwgwwwgwxwwxwwxwwxwwWfduwgwwwwwwwwwwwwgwwwwgxxwwwxxxxxwxwwwvwgwvwgwuwvwgvgvwgwwwevuwgvfvgfdvwxwwwxwxxwgwwwgvfvwwxxwvwwwwwwwwvwvxvxwvwwxwwgfvxxxwwwxxwxgwxwghvfvwxwwxwgxwgfdvwwwwgvxxwwvwwhvfvwwxwwwwwwwwwwxwwwwxxxxwxxvwwwwvwwwwwgvfvxxxwxwwgwxgxwwvxwwwgwgvxwwxgvwvfVffuwgvwwwwuwvwvwwvwvxwxwwwwvwxwwwvvwwxwwxwWffuwvvwwwwuxwvwwvwwwwwwwxwwwwwvwxwwwwwwvwwwwxxwwwxwvwwxwhxwwwvwwwwwwxwgwwxxwxwwwwwwwxwwwwwwwwhxwxxwwwwxwxxxwxwxxvwwxgwwwwxuwvwvwvwvxxwevuwgfvuwwggwwwwwwwwxwxwwxwwwxwwgxwwxxxwwwwwwwwxgvfvwxwwxwgwvwwxxxxgwxwwwwwwvxwwwxvwxwwxwvwwgwwwxxvxwxxxxwxwvxxwwxwxxwwxxxxxwwxwxwwxwxwwvwxuwuvwwwwfwvwwfvvwxvwwfwfvwwvwvwwvvwfwfvwwwwwwvvvvfvffwvfvvxwffuwwxvvvwfwwwwwgewwwvwxwxwxxgwvxxwwwwgwwgffvwvwwwwwhweewwwwgvxfffhxxwwwuewwwwwwfvfuhwgwxxwwfvwwxvwwxxxwxxxxvwwvwxwwvwgwwxvVfwwfwxwvwwwfwvwwwhgvgwwxwgwwxxwwwwwwwxxwwwwwwwwwvwwwwwxxxwxwvvxxwvxxwwgwwxwwwwwwwwwvwxvwwwwwwxwvwxxxxxwwgvxwwwwexwwwxwwxwxxwwwxwwgvxwxxwwwvwwgwwvwufWvwgWwgwhvwgwwwwwwwwxwwwxxwwwxvuggwxwwuwwwvgwvwxxwwwwxwwwxwxwxwxwwWwwwwwxwxwwxwwwwwwwwvwwwxgwxxwwxwvhwxxwgghxgvwwxwxwxwxwxxxxwwvwvvvwgwwVvvgwvvwxwwwvgwgwgwxvgwwgwwwwwwwxwwwwwxwgwxwwwhwwwwxwvxxxwxxgvwwxxwwwxwwgwxwxwwwwxxxxwwhxxxxwxxwwxwwwwxxxxxtvfwvffwwgUgwvwvwgxfwegwwxwvxwxwvvwwwwfewvwggwwwgwuwwwwxwvfvvvwffdgwuwvgfwgvggwvggwxfwvwgvvwwgvdgwwwwwwxwwwwwwvwvvwvwwwWVfwvwwgwwwxvgffwvwwwwwwvuWgwwwwwxgxxwxwwvfgwxfwvwwwwxxggxwwgwwgWwxvvhwwwwwwwhxxxgwxxwxgvwvwwwgfdwwwwfVgvgwwwgvhgwffwxwwxWwgvdgwwwvwwwWxwgwwgwwwvwvwgwhwwwgwxwwwwvggwxxwwwwwxxggwxwwxwhxwwxwxwwgwgxwwwhxwuvvvwwgxvvwwgwvgxvwxwwwwxvxxwwxwwhwxgwwxwwxwwxxxxwxwwwWxwWwwwwwxhxhwwxwxwxxgwwwxxwfvwvwgwWwwwwgwwVwxgwvwvwxwxwvwxWvwwxwuwwwwwgwxwwfVwwxgwvwghwgvwwvwgxwxxwfvwwwwwwwwxgwxwxwwgwwxxwwwwwwwgwwwwvxwwwgwxxwwhwwxwwxwwwxxwxgxxxwvxwwvwwxwvwxwwxxxxwwwxwxxwxwwwwxwxxxwxwvwffvxgwvxwwFvhvhwvwgwwwfgvwxwwxWwwwxvwwgwwwxwwXwwwwwxgxwxgwxwxwwwwwwwvwwwwwwwxwxxxwwwwwxxxwwwgfxxxxwwxwvwwwwwxwwgxwwwxxxxxwwwwxxxxxwxxxwxwwWxgwwwxxxwwwegfVveffwffgfvwvwwvwwwwwwvwwguwwwguwgwvwwvwwwwvwwwwxvvwffevvwvvwvvwwwwwwxwwwwxwwgfgvevwgwVgwwwwxwwxwxwwvewfwVuwfevvWwwwwvwwxxxwxwwwvwwvghhgwxxwvxxwffvvfufwwwvwwwhxwwxwwxwxwwwfwwwwxxwvxwvwwxxvwvgvffvvwffwwwwfgwvwwwuvgvwwvgwvfvvwwvwwwxwwgwvxxgvwwwwwxwwwwwvvgxwwgwxwwwggxxggvxxwwvwwwwhxxwwwgwwwvwwgxwwgvwxvwwwwwwwwwwwwxxxwvwwxxwxwggwfwwvwwwxfvxhwvxxwwwwxxxwwxxwfwvwvffuwwwwwwwwwvwwwvxwgwvgwfxwhwwwwxgxwxwxxxwwvvwvvfvfwwwwwxwggvgvvwxxxgwxxxxhwxwvgwwwvvvwxxwxwwwwxxhwxwwwwwxwvxwxxwwxvwwVvwvfwxwwwwwxwwgwxxwwxwxwwxwxgwwuwwVvvwwfvwvgwguwgwwwwwxwwwwwwwwwgvwgwwwgwvxwgwwwwgwgwxwxvvvwwwwxwxwxgwwggxxxwgwxwwwvxvwwwwxxxwwxwwwvwxwwxxwwwwwxwxwxwxxxwwwxxwxwwxxwxxxwwwwwhxwwwxvvfwvvwvwgffvwwwvvwwfewwfwfwwwwvwgwwwvwvvxvwwwwvuvwwvvvvvvwwftvvfvwwwgwwwwwvwvvgwwwgwggftvvwwwgwgwgwwwxwwwwwwvwvgWvwggwgvwwgwwwvwwwxwwwwwvewuwxwxwwxxwxwxvuwwgwwvwwwwwwgvwwwwxxhwwwwwwxwwwwxxwxxvwwwwvwwvwwufwvuwvvgvwvwgwwfwwvwvwwfwwFwgvuxuwwgwwwwwwwwvwwwvwvwwwwfwwwwwwugwwwwxwwwwwvxwgwwwwwwwxxxuwwwxxxwwxwgwwvfwwgwvwgwvwxwwwwwgxwvggvwxwwxxwxxwwwxxwwwvwvwwwwfwwwwxwxwgwwwvgxvwxwxxxwwwwwgvvwgVvwwwwwwwgwwwwvgvwwwvwgwvewuxwxgfxgxwwwwwwwwwvwvwvvvwvwvwvwvwvvwwfxxwwwwwxgwxwwxxwwwwwwgwwxwwwvgwwxwgwhwhxwxxxwxxxxxxwhwxwvxwhxxxwgfwwwwwxxxwxwxxwwxwvfwdvwvvuwwvwvwwwgwwwvwwwwwwwwwwxxuggwwwwxxwhwxwvwwwwwwvwwvgwwfwwhxwwxwwxxhwxvxvxwwxxhxwwwwxvwwxwwwxwwwxvxxwgwwwwxxwxwxxxwxxxxxxxxxxwwxxwxwxwwwwxwxwwwwwwxwwxxxxxxwxwxxugffwvwfwvwvvvwfffgvwwxVguwxwffvfgWvugxwwwxwWVuwwgwwgwwfvfffWvuvwvwwvwVWuuwwwwwwwwwvgvwwwwwwvgwxgwxfgxgwxwhxvwfffvfwfgWfuvwwvvgvxwgwwxwWWuwwvwwwwxgwggghwwxxWVuwvvwwvwwvfvhwggxwxxwwxwxwwfgvwwwwxwwhxwwxwwvgvvwvxwwwwwffwvwVguvgxwwvfwhwxwvggfgvwxwwwwggwxwgwwwgvwggwwwxwvwwwwwvwvvwwxhxwvxwwvggwxgwxgwwwwxvxwxxhgwxfxwwWguvgwvxgwwwwwwwwwxgvgwwwgwwwxxwvwwxhxxhwxwwwwwwgwwwxwwvwwggwxgxxhgxvwxxwhxxvxhwwwwxwxxxwwvwxvgvvwgwwgvwfvvvgwwwwwwvwwfgwgVvuwwwwwwwgwwwhwwwwxxvwfWvvgvvwwwwvxwwxhwwwvxwxwwwvwvwwxwwwxwhxwxxxwwwwxwvvxwwvwgwwwgwgwwwxwxwwvwwwwxhwxwxwwwxxgxxwxvxwwwwggwgwwxwvwxwhggxxwxvwwxwwxwfxwxwxgwxwwgvfwwgvvwffwvwwgwwwfgwwwgwwgwggwwwwwwwvwwwxgfgwwwgggxwwgwxwwxwxwvwvwvwwwwwwhhhxxwxwxwxwvwwwwxwwwvwwvxwwgwwwwwwwwxggwwwwwwwxwwwxxwxxxxwxwxxvwwwwgvwgxwxxwwwwwxwwxwwwxfxhgwxxuwvvwvwgvvwuvuwwgvgvwvwwvewgvwvfvugwvwwvgwvwuwwwwwwxwwwwetvwwwvvfwfwwwgguuvwwfwgwfvwfvvfwwuwwwvwwfwgxgwwvgvffutvwvwwwgvvfwtxwwwwvwwgwwwwxxwxxxxwwgvfwwgwfwwwvvgwvxgwwwgwwxwwxggwvwhxwwggwxwvwwwvwwvvvwfuwwwWvvuwwvwwuwwvfwvtvwvvxgwVwvwwtwfvvwwwgwwwwwwwwgwwgwgwgwxwwwwwwgwgfwgffwxwwwwwgwwwxhvgwwwvwvvvevvwvxfwwwwuwgxwgwwwxvxhxwwwwxwwgwxwxwwwwvxvggxwwwwxxwwxwxwwwwwwwxxgwxxwwwwwwwvgfvtwwwvwvfwdwuwwvgvwgwxwwwwwwvwvwwgwwxwwguwwfwwwvgwvhwwwwvwwwwxwwxgwvwwwwgxxxxwwwwwxwxgwgwwwuwwwwwwwwwwwwxgwwwwhwwhwwhvwwwgwwwwwvwxxgxwxvvwvvdwvgvwxvwwtwvvvwuvwvwvwwgwxwwxwwgfwwgwxuxwwfwwfgfwwxwwgwxgxwgwxwwwwwwwwwxwwxwxxwxxwwwxwxwxgwwwxxwwwwxuwwwxxwwwxwwvxwwgxwwxxwwwwwwxwwxwxwwwwuvgwvvwwwwvwvwwgwvwwfvwwwvgwwwfvwwfvwwwwfwvvwfvvgwvwvwvvwvwwwwwgvvxwvwvwfvfxwwwwwvwwvVuvwwvgWfuvwgwwfvgwwwwwxgvwwvwgwwwvwwgwgvwvwwwgguuwvvufwuwwwvwwwfvwgwvxwwwwwvxwwxwwvwwwwwhwwwxwwvfwwgxwvxxwwwwwwwwwgwwwwvgvwgvwwVvuwwxwvwgwvvvwxvfuvvvwwvugwwgwwwvwxwfgwwwvwwwhxxwwxwgvwwwwxwwgvfwxghhwwwwxwwwwxgwwwwxgwwwwwvwwwxxxwwwvwwwwwwxgwxgwwwxxwwwwwwwwwvwxwwwgwwwgxwwfxwwxxxxwvwvvwvwvffwwvwwwwwwxwvgguwvufwugvxgvwwwvwvxwwxwhwwvwwwwwwwvwwwwwwvwwwwwvwgwwxxwwwwwwwwwxwwwxwvvwwxwxxwxvvwxwxxvxxwwwwwxxxwgxwwvwwwwwvwwxwhwxxxxwwwwwwwwweuvwwwwgwxxwvuwwxuwwvwwvwwwwwxwwwfvwwvwwwxxwxwwgwwxhwxxgwwwwxxwxvwwxwwwvxxxxxwvwwxwxwxwxwxxxxwvwgxwxvwxxxxwxgwwxwxxwwwwxhgvwgfvfewgwwfVfvwwwwvfwvgvwwvvewwwggfvwwwwfuvxwwwwgwfxwwxwwwvwwwwwwvvwgwwwvuwwwwgxwfgwwwwwwwffwvWvfwwvvwwvxwwwwxwwwxxwwwwwxfwgwwvgwvwwwwwwwggwwwwwwwxvwwwwxwxxgwwwvwxhwhxwwwwwgwwwxwwwwwgxxwwwwgxxwxwwwxwxwxwvwwwwwxwwwwwvgfvwwWggwwwfggwgvvvgvvgwfwgwwwwfuvhWvwxfxwwWvgwgwvwwwwwuwxxwxxvxwvwwwwxwgwgxgxxxvxwwxhwwwwxwwwxxwgxxxxwwwghvhwwgwwwwgvxwxxwwxxwxwxwxwwxwxwwxwxwvxxwwxxxwxwxwwxwxxwxxwxxwwwwxgwxwgwwgvwwwwxxwxhvwwvgwuxfguvvWwgvvwgvwwwwuggwfwwwvvwwxvwWvfwwwwwhfxgwfWwwwgwwwvwwwxxwgxwwwWvgwwvxgxwwwwwwwwwwwxwxxgwwwwxxwwwxxvwxwwwwwwxxwxxxxxwxxwxxwwxwxxwhxxwwwxwwxwxxwxwwwxwwgvguvvwxgxwhwxwwwwwvwxxwuxvwxvwwvwghfgwwwxgwwxwxwxvxwwxxwxhwwxwxxxxxxxwxxxhwhwwwxwwwgxvwhwhwwxwxwxwxwxxwxwxxxxxxwwwwxxwxwwxwwxxxxwwwwxxxwwwuWfwvfuggvxvgtwgvugfevvWvwvwvxfvuffffuwfgwuufvvwvvewvwwvvuvvveguwgwuvfvvffvvwvwvvgwvvwvffgvtgvvvfwwwwwvwfwgwvwwwwvwfvwfuVvwwwwwvffwvvgvgwwwwwvffvvvuwwvvwwhvuguvwwxwvwvwfvuwwwwgwfvvvwwwwwVgvfeuwwwwwgwffwvgwxwgwuxgvfvtVgwVwvguwfwwvffvwwwfuwgxwweVfvVwfvgvwwwevuwwwfwwwgwwwwxuffwvwvwwwfgwwfwwgggwwffwwfwxwVwwwfwWgwxxxffwwxwxgxwwxxwuvwfwVwgwxxvwVvvwwxvwgvwwwxwwfwgvwwuwwxwwxwvgvwgvvxvwwwwwwwwxvwwwxwwwggvwwwxwwwwxwhxgvwxwVhwwwwggxgwvwwfxwwxwwxVuuvvwuvgwwwffvvvvwuwxegfwfvvgwwvwxVvwwwgvwwxvwwwuwwtvgvvwwvwwwfwgwvvwwwwwvwvwgvwgwwwwwwgwvwwwvxxxwwwxtvvwwwvwvgwwwvVvvxwwvwwxwgwvgvvwvgwxwxwwwwwggwwwwfwwwvwwxwxwwwwwxwwwwwgxwxvgvwwwgWvwwxvxwxwwwhweffvegwgfvwwwwevffwgwvwwwxwxwgufggggwwgvwvgVugfwgwwwgvwvxwvxggvwwwwwxwvvgvwgggxwwwwwwwggwggwwxwvwxwwwwwwxwxvwwxvwwwwwvwvgwvgwwwwxwwwwwwwwwwwwxxxgxfwhwwwvwggwwxwxvwwwwwwwwvwwwwxxhwwwwwggxvgwhxuwgvuwfvwweFvfvwvwgeeeudwgvuwveUvvvvwfvwwvfVUuwgvwvvwvvgxggvwwwfufvugwwvfvuwVvuuwWfggfefdvwfvuwwvggvvwvwgWxxvgwwfwwwvgvvwwwuvgvguwfvuwfvgwvggwwvwwxwwggwxwxfufwwvwgxxwwxvvvvgxwxwvgvwwggFxwwwwwwxwwxgxxwwwwwhxwhfwuxwWuveFwUuwgGvwvvvwVvugvgfwvfVwVwvggwwgggvveudwvgegVgggwgwwvwwwvwwggwwwwwwwgwwgwxggwwwwwgwwwgwgwwgvxxgVwxggwwwwwgvfwuwwwgwwfwuxwfgvhwxxwxwvwgxxwxwxwwwvwwvgwxxwwvxgwgvxxxwxwwwewWGxwxxxgvgxwvxwxxhgwxwxwuvfeweeffvvwfVffvuwEuwvWvxveevVuvwwgwgvwwVvfwvgwwwgvwvwwvfgffvwgwvwuwwwvvvfggvxgwwgwwwfwwwwxvxwwxvwxxwwwxxwxxxfwwwwwwfvggwwwwwwhxwwwwvvwxvwwgvwvwgxvvhwwvwwvxxgwwWguwwxwxxwxhwwwwwfxhxwwvwgwfwvvwxvwhwWvwwwwwevhfwwwgvvwwvvwwwwvWgfvwXfwvwgvVgfggwwvwwvxwwwwwhwgvwwwwggxggwvvxwwxwhwwvhwwwfwvxuvwwxwxwwwwwwfwxwwxwxxwwxxxwxwwwxwwwwwxwxvwwgwwwwvxwgvwxxwwxxwxxwwwgwxwvwxxwwwxwwwwggxwwwxwxwfwwfwwvvvuvVgvvwwwwwfwggfvVvwwwfwfwwvvwvwuwwwwwwwwgvvvwvwwvwwwwuvwgvwfwfgwgwgvwfxwwvwfvgwwxgwwwwgvwwwwgxwxwwwxgwwwxvvxgwvwvxvwgwgvwwwwVwwgwwvxgwwwvwgwxxwwwxwwhxwxwxxxwwwvwvwgwxwwgwwwwwxxvwwvwxwwwwwwxxxgxxwvwwvwwgwufvwgggwggwgvgwVwggWwgfwwwgfwwxuwVgvgfvwgvwxwwfxgxwwxwwwgwwvwwwwwwwwwgwwwwwfwwgwwwwwxwwwwhwxhxxxwVgvwwwwwxwVwgwwxvxwwwwwwwxxwgxxwwxxwwxwvwwxgwwxxvwwwwwfwxwwvwwxxxwxwxwwwVgwwwgwvwgwvwwgwvwWvwgwwggwfwvwvwvxVwwgwwwxwhwwwggfwwgxwxwwwwwwgxwwwxxvwgwxwxxwxxwgwxxwxwwxxwxwwwwvwwxxgxwwxwwxwwxxwxwxxwwxwwwxxxwxwwxxxxxwxwwwwxvhhgwxwwxwxwwwwwwxxwxwwxggvwwwwgvgwwwfwwgvwXVhwwgwgwwwwwwwwgxwwxxvwwvgwwgwwxhhxwwwwwwwwXwwwwwxwvvxwwwxwxwxxwwxwxwwwvxwxgxxwhxgwwvwxxxxwwxxwxwxxxxxxwwxxxxxwwxxxwxxxugwffeffufwfgUwwwffwwguvwvwVvuwffuuvvfvvvwgvwwwvgwwvwvgggeuuwvwfvefvwggffvvwwwhwwgvfvgfvvvvwgvvvgwfgxvvwwwxgwvwfwfgeuwvgvvvgwvwwwvfwvvxWwwwwvvvvgwwwwxvgvxgwwwxvwwwwwvvefwvxvfwwwwwgxxvgwvwwfWvwgvxxxgxxwwgwXuwxgwfvufuVeuvwggvgwwVfvwfwgwwwxvgwwvwvvfvwwwwwvwwvwwgwxwwwwwxvfvwwhgfwwvxwffxwvgwxwvwxwgewgWvxvvvwwwxwwwgwxxwwwgxwvvwvwfvvwfxfxvwvwwxvgfvwgvwwfwwxwxxgwwwwwwgwwxwxwwfwhvVwhgwwxwwwwxxwwWxwwgwwgwvwxwwxwwxWxxwwxxxxVvvwefevwvvvwfwwgwwxwwwwwuxxwvwggwwwwgvwwwwxwvwvvvvfuvwwwvwwwwwgvwvwgwvvvgvwvwwxxwvwwwwxwwuvfwwvfwwgvwwWxuwwxwxxxgwxwggxwwwwhhwxwwwwvvwwvwVvxwhwgxwwxhwxwwwhwxxwgwwwwwxwwefvfefffwfgvwwwgfxwwVwwvxvwegfwvfgfvwwwwwwwxvhwwvwgvwxvwxwwvwwwvVvwxwxvvwvwwwvxwwwvwwwgwwvxgxxwvwwxhxvwvwwwwxvgxxxgwwxwxxwwwwwxwwxWxxxwwwwxwwwwwwwwwwvwwwwwwwwxxvvwwxwwwwwwwwwwxwwxxwwvwvfvvufgfuwwvgwwwgguwwvwwwgguwwwwwvvwwwwwvwvfgguwvuwwvWgguuwwxwwxxwwvwvwwvgvwwwwwwwxwwwvvufwvugguwxwwwwvwwwwwwxxwwgguuwxwwwwwwxwgfuwwvWwxwwxxwwwwwxwwxgwwwvwwwwwwwwvggguuwwvwwwwwvwvwwwwuwwwvvwwvwwwwwwwwwffwuwwxwwxwwwwwwwxwwwxwwwwwxwxwwxxVwwxwwvwxgwwwwvxwXxxwwgguwwwwwxxwuwxwwwwxwwwwwwwxwwxwxxwwwvwxxwwxwwgwwvxxVxwxwwvxwwwwwxwwxwwwxwwwvwvgguuwwvwwvwwwwwwvvwxwwwwfwwwwwvwwgguwwvgwwwwwxwwvwxwwxxwxwxwwwwwwwvwwwxvwwwwwwwwwwwxxxwwwfwwxwxwwwwvwwwwwfxgwxwxwwwwwxxxxxwxvwwvwwwwwwwwwwwfwuwwwwvwxwwxwfwwxwwwfxxwxuwwvwwwxwwwwwwwxwwxwxwXxwwwwvwwwwvwwwwwwwwwxwwxxwxwwwwxwxwxwwwxxwwxwwwxwwwwwwwwwxugwwgwvfwwwvggfgwwwwwggwwgwWwfwwwgwVvxgxwvwgggwVwwwxwgwwWgdwxvwgwvgwwwwgwUgwwwxgwgwvwvxwwgwwwwwvxxwwwwvwvxwgEwfgvvfvwxvgfvGgxwwwxwwvxwwwwwwvwgwwwwhxxwwwwuvwvgwgwwgwwwuxwgxxwwwwwwwwgxwwgxxxwwwwxwwvxwwvwVguvwgwvgwvwvgfwgwUggwwwgwWwwvwwgwhvwwvgvgwgwwxgwgxwwwwvwxxwwwwgfvwxwxxxxwwvhgwwwwwwvxwwgwwxxwxxxxwxvwgwvfwwwwwwvwwwgwwxwwwwxvwxwxxxxwxwxwwwxxwhxwwxwgwwwvxwgwxxxwxwxwwfxwwxwvwwwxxfwvwfvWwxWvwvggGwfvvvgwwXwwgwgwwvxxxwxwxgwwwgwwxxwwwfwwfwwwwwwhgwwwwgwwwxwwvwxxwgwxwwvwwxwwgwwwxwwwwwwwxwwwwwxwwxwgxwwxgwwxwgxwwwwwwvwwwwwvwxwxwxwxwwwwwwxwwwvwfwwWvvwWwvxgwwwfwgwGwxwWxgggwhwwxwwwwwgxxhwwxwgwwvwwgxwgwxxvwvvxwxxxgxwwxuwwxwwwwxvwxhxwwwwwwwgwwwwxxvxxwwwxwxhwxxwxwvwxwxxxwxxwwxgxxxwxwwwxwhxxxxwwxxwxwwxxxxwxwwwxwwvwvvvwwwxwwgwfvvwfvvwvwuwwwvvfvvwgwwwxwwvwwxewvvwwfuwwfwwxwvfvvgvvwvxgwwfvvvxvgvgxxwwuwvfwwwvgvwggxwwwxwvvffwgwwwwvvvxfwwxxxxwwvvuwwvgxwwwwvxwghwwvvuvwwxhwwwwwggvxwwvwwwewwwvwgfvwwwwwgxxwwgfwwvwwwwwwWuhwggwwgxwwwwwfwxwwwwwwvwvvwwwgwwwxwwwwuwgxhwxwwwwwVvwxwxwwwwvvxxwwgvwwwwwxxwwwgwwwxwggwwxwwvwxwwwwwvvhwvwwwxwwuxghgxwwwwwvxwwfvxwwwwwvwwgvwwxxwwgvvwwgwxxwvwwwvwxwwxwvxxwwwwwxxgwgxvxwxxxxvwxwwwwwwwxxvwwwwwvyhxxxxwwwfwxwxxwgwwwwgxfwxwwwxwhwwxxwwvwvuwwxxwvvwgwwfxwguwvWwwvxxhxvwvwwvvwwxxxwwwwxwwxwwwxwfxxxwwwwuwxxvwxxvwxwgxxxxwxwwxxxwxwxwwxwvvxwwwwwxwwxvwwwvxxxvxvwwwvwvwwwvwwvvwwwwwvwvwfwvvvgvvwwvwuffvugvvwfvwvwwwfvwwwvgwgvwwwwwwvwwwwwuwvwgwwwwgvwxwwwvwwwwuwwwwwvwvwwwwwwxxwgwgwvwwwxxvvwwwxwwvwwwwwwwwwwwwxwwxwwxwwwwwwwwwhwvgwwvfwugwgvgwvwgvwgwwvwgvwwwwfwugwwvwgwwvwgvwvxwwwwwwwwxvwxxvwxxgwwxwwwxwwvwxwwxwxgwugvwwwwxwxwwxxwwxwxwwwxwxxwxxwwwwxwwwwwxwxwwggvwgwwwwgvvgxwgwxgwvwxvvwvwwwwvwxwwwxwgvxwgxwwgvvxwvwwvxwwwxxxwwxxxwwwwwwxwwwxxxwwxwwxxwwvwwxwwwwwwwwwwvvwwwxxwwwwwgxwwfwvwvwfxwwwwvvwwwwwwwwxwwxgxxwwhgwxwwwwxwgwwxxwxvwxwwxxwxwwvxxxxxxwwwxxxwwxwxxxxxwwxwxgwvwgvfVduvvfffgufgVVuwwgfvvgUUxdvefgVevvgvgUuuwgfvvwwwwwevwgvvfvefwgvvwggvgwvwxgufwvuWvvgVtguggVwuvxgvvvggvwvvwwvvxvwevvwwgvvwgVutugxggwhvweuvwuuwwwxfwwwwwvwwwwwxwvvvvfwwwwwwwwwxwvvwwgvwvuvwvxwVxwwwwwxwwwwxxwwvwgfUvwWfVwefgVVvwwhgVvewggfgvVvVvewufgvvvvGvvVgVffvwvwwwwgwxvxxwgwwfwwxwwvxwvWwvfxgfwwwwxwvgwxvwwwgwwwwgXwwwfhwgwgvwwwggvvxwwwggvwVxgvvwwwvvgxwgvwxwxwwwwxwwwvwgxwhgwwwwwxwwwvxwwxwwhggwwxwwvxwxvwwxwxfXwwwxwxhwwwwhvvvwgVtuwgvwUuvwgVuuwwwwfewwwgwvwfvevvvgvvgwwUtugwwvgehwwxwwwwvwgvwuwvvwgwwxhgvwwwxwwvvvwfgwwxxwwwwwggwwxxvwxwwwwxvwwxwwwgwxgwwxwxwvwwwxxxwxwwwwwgxwxwwxwvvxvvxwwxxwhwxxxwwgxgxwxxhwxwxwwgvvuwvwgwxvwwwfvggwwgvwgwvVfUgwwgggwwwwxffgweFWfgwwxVgvwwwgwwgxwwwwwwwxxxvwgwvxfvwwwxwWwwwwfwxgwxwuuwvwtvvwvxwwwxwhfxwxxwxxwwfwvxvwxwxwwwgwhwgxgggwwwWxwwwxxwxwwxwxwxwvxgwxwwxwvwwhvwxvwwxuwfwwwwxwwwxfwvvwwwVwwwwwvxwwvwwffugwfwgwffwffwwwfvfwxwxwwwxewwwwwvfwwwwwVwwwxxvgVewwwVVegwwfgvxxwwxwxwwwvxwwVvxwwwwwwwgvwvwwwxwwggUvvwVeeWfffvvwwwwwxxwgfvxvVgwwvwxwxwwvwvxffvwVwwxfxhgwwwxgwwgvwwvwwvwwgwwvxffhwvgVewwwVegwxgxwvvxwVuwxxgxwvwfwwVwwwxwvxwvxwwxwwxwwwwvvxwwgxgvwVwwxgvvwwwwwwvwwwwwwwxgvwwwxffwwxwwxwxwwvwxwxxwfwxvwxxwggwwxxvwghxxwwxxwwwwfwxwfuwxwwwwfvwwgxwgwgvwVvwwgxwwwwxwvwxwwwwvwvwwwxwgvwwwwwwvwwwwxvwwxgwwxxwwwwwxxgvxwwvgwwxwwvvwwxvxwfwvwxvwwxvwvwvxwwvwwxwwwgwwxwxxwxwwhxxwwwwwVuwwwgghgvwwvwwvxxwwxwgwwwwwxVwxhgxxxwgwwwwwwwwwgwwxxvwxxxwwxxxxxwxwwvgwwvwxxfvxxwwwwwvwwvwxwxwxwwwwxfwwwxxxwwwwxwxxggwxxxxwwxwwwwxhwgwwwxvvwwwwwvwwfwgvfgfwggvwvegwxwvvwfwwvxwgfvgvvfxwfwwwvwvvgwvwwxwwfwvwwvwwwvgwwvwxwgwfhwwwwxwvvvwwwwgwwwwgwwvwwwgxfwgvvxwxfwwwxwxwwwwwwwwwwwwxvwvxxxwwvxwwwxvxxxgwwxwvgwvxwxgwvxwgfvvwfvvvwwwvvwgvwfwvwgvxwwwgwfwwwvgwwwvvwwxwwwvxvvwxwxwgwxwwwvwxwwwwgvxwwxgxvwwwwvxxwvxwvwwfwgxxxxxxwwwxxwxxwvxwxwwwwwwwxxwwwwwwwhwwwwvwgvgwwgvewgwwgvevwwwwxgwwwwfwwwvwxxwxfvvgxvgxwwgvwvwgvwwvwwwxvxwxwxwgwwwwxgxwwwwwxgwwxxwwxwwwxxwwxwxxxwxwwxxxxxwxxwwwwwvwxwxvvwwwgfwxxwwxvwwvxwwxhxgwwvvwxwwwwwwxwvwxwxwxhxwwxwxgwwwwwxwwwxxwwwwxhxwwwxwxwwxxxxhxwwxxwxxxwxxxxwxwxxyxxwvgwxgwwvwvwvwwxwwwvfvgwfgwvvvwwgwwgwxvwvwfgwvgwvvwgvwwgvwwgwwvggVeufweVgfwxgwwfwwwwwwgwwgwfgwwgwwxxwvwgwvwwwgWVvvWWwwwwwwwwwfwwwwwxfwgvwwwxvxwgwwxggvwwgwwwvwwgxwvwvxwgxwwwwwvwwgxwwwwwhxwwwvxgwwwxfwggeugweWwvvwvxgxvgwwwwggwwvvwvwgwwwgvwwxwvhwwwwwwvwwgxwwvwwwwgwwwwwwwxwfwgwxxwwxgxxvwwwwwxwhgwfvhxxxxwwwvwvxwxwwwwwwwxwxwxxwxwxwwwxwwwwxwwwgwwxgvwwgxxxwfwxxwwxvxxwwwwwgWwuwwvxvgwfvvwwgwwwgvuxwWwxwvwwvwgvvfxgvhwwgwwwwwwwwxxwwxwggwwxwwwwwwwxwwwwgwwwxxwvwwxwwxwwwwxwxxxxvwwwwwwxwxxwxxwwwwwwxgwwxfwwhgwwwxwvwwfwuwgxWvvxwxwxvxWwwwwhwwwvxwfgwwwgwwwwxvfwwwgxwwxxgxxxxwwxxxwgwwgfwwwxgvwwvxwxwwwwxxxwxwxxxwwwwxxxwwfxwxgwwxwwxwxwxwwwxxxhwxxxxwxxwwwwxtgfvfwfgwwwgwvwgwvwwwwwfwxwwwwxgggwwwvfwxxxWvugwwevffevfvewwwfwwgwwgwvvvfgwwwwguwwgwwwxxwwwxwxwfvvvvfWgUDggvvwwfwwvwwwwwwhgwgvvgvwwgxvwxgwxxhxxeUDvfvvvwgfvwwwwfwvwxwwxxwwgwvgwxwvwwgwwxwhxwwxwwxxfvvwwvwvvggvwwVfwwwWvwwxwwggwxwvxgvwvwwwwuWfvxwwgwwvwwwfwvvwwxwxgWwwuxwvvwvwxwvwwwxxgwxwxgxvffvwvvgwwwwwxwvwxwwgwxwwwxxwxwgxxwwxhxgvuwvxwvwggwvvwvwxwwxxwwxwwgxwxxwxwxwfuvvewuvwfvwxvwwxwxwwwxwwfvwwwwwwxwxgxwxxxugfvvvgwvgwuwgvwwwwuxwxwwwwuwwwgwgxwwwwwwwxwxxufvvugfwwwwwwhuwWwgwxwxwwxxwwwwwxwWwwwxxxwwwwgxwxgWvvvgugwxwxwwwwxhwwxxwxwgwwxxwxvwXxhxvVwvwvxwvwxuxwvgvvgxwwwvxwvwxfwwvwwxxwwwwwxwwwxwwxxwxgvwwvwfwwwgwwwwvhwgwvwwxxxxwwwwwwwxxvxvwxwxxxwxvwvwvxfwwwwvxwxgwhwwwxxvwxxhhwxwwxwxxwXxxxxwwwwwwwxxxxxwxwwxxxwvwxwgxxwhgxwxwxwevvvwwwvwvwwvuwvfvwwxwwvgvwwwwwvgwwuvwvwfwwvfwfwwwvwfwvwvwvwvfvgwwwvvfgfwvwwfwxwwwwwwwwvwwwhwwwwwwffwwvwvvvfvwwwvvwvwwgvwgwwxxwwwwwvgvwxwgwxxxxxwvvvvwgwwgfgwwwwwgvvwwvgwxwwxwwwwxwwwwwwxwxhvwxwxfwwwwwvwvwwgvwwvvvwwwwwwwwwwwxxgwwxwwgxwxxwvwvxgwfvuvhwvfwfgwwwwwwwggxwgWgwwwwvwxwwwwwxxwxhwxwwwvwxhvwgwwxwwwvwwxwwwxhxwgxwwwxwxwwxxxhxWgvwwwwwgwwggwwwwxxwwxwgxxhwxwxwwwwwvvvwfewvfgvwvwwwvvwwwvxxfxfwvwwwvwwwxxvwwvvwvwvfwvvwwwwwwvwgwwwwwwwwwvwgwxwwxwwwwwwwfwwwwufwwvvwfwwgvwxwwwwwwwxxwwvwwxxggxwwhwwwwxxwwwwwvwwwwwwwxwggvwwwxwvwwwwxxxwwvwxxvwhwvgwwvfvvxwgvwgwwwwfwwwwwwwwwwfwvwgwwggwxvwxxvwwfvuvwwvgwwwgwgwwwwwhgwwvvwwwwxhggwwhwwgwxxgxwwwvwxxwwvwwwwwwxwvwhwwxwwxxwxxgwhwxxggwgxwwxxvvwwwxwwxwwwwwhwwwxxwwgwxxwwwhvxxxwxswfggwwwvgfwwwwfvwWwxwvfgwwwwfwvWwxxwwwvWwxvwgvvWwwfvwffwVwfgvgVvwgvgWwvwvWwwvWwwwgvwvxwwwwwxwwhxwwwggfwwffwwggwwwT5vwwwgvfvxwvwgwwxwwwwvxxxxxwxvT5vwvwwwwwwfwgwfvvWwwwwwwfxwvvwwxwxwxxxwwwxwwvvgwwgxfwwvWwwgWwgVvfvxwwfWwvwwgwgwwxgxwxwvggvwwwwwwwgwwwwhgvgwxwxvWwwwwwwxxxxxwwwxwxwgxxhgwwwvxvffwxwwwwwwwwgwfwwxwxwwxxxwwwvwxgwxvwxxxxxxwwwwwfwxwwwwwwwxwwvWwxwwwwvwxwwwwxwxxgxwwxxgvvfwwvvvwwvvvWuxwvxwwxwwgxvvxggwwxwvvWuffvxwwxdwgfgwwwwvWxvwfwwxwwwwwwwwwxwgwvxvgfwwwvvwvwwwgwwvwvxwgvgxggwwwwxxxwxwwhxwwxxvwwxwgvwwwwgwfvgwvvwxwxwhwwwwwwgwxgwwhgxhgxxxgxxxwgggwwwwuwxuxwvfxwxxdwwfxwxwgwwxwxwxxwxwxwwwwggwxwwwwwwgwwwwwhgwvWwwwxwgwwwwxwwwxwwxwvwxxgxwwwwuwwwwxwwgxxxwxwghwwxxwxwhwxxxwgxhwgwwwwwxwwwwgwwxwxwwxwgwwxwwxwwwxwxxwxxxxwxwxueuwwvfwvuvwgvwvwvvvwwwgvvwuwevwwwfuwvxwwwvxvwugwvwwwwxxwvfvvfedvvefvwfufvVefvwwfwvwewwweuuewwgfvwvwwvgvvugxwvvwwvwwwvwfWgfuwvgwwwwxvVevfvewvvwwxwvhvvvvvwvxgwwxvxgxvwwwwwWwgwhwwwdevvVfegvugwvfgtggwUwwwwwWfwewwwwvxwgwvwwxwwgggwwggvfvgvfvwvffvhwvwvUfwwguvvwwhwwffvfvvgwwwgwevwxwvwwxxwwwwwwwvugfgvfwvwgxxwwgwtwggeuvgWwguxxwwxwfvwvuwgwwwvfwwvvvfwgwwwgwvwxwwfvffhwgvwwgwxwgvxxwxxxxxxwvwxhxxwxxwweduvWgwevwwwwwgvwThxgwwWwwwwwwgwwggwxvvwwwwwwxwwwwwwxvfwvwfufwufwwvxuvvvfwwwwwwufvvwvwwxfxxvwwwwxwxwxxgwvtvvvVvuvvgwvfwtvgfvxvvwwwgwwwvwuwwwwxwxvwvvvgwWfvwvgwwvvgwwXwvgWgxuVwvvgvwXwwwggxvwwwWgvwxxwxfvwvvvgwwwwhwwgwghhvwwwgxwwvwwwhgxwxxxwwwxxvfvwfvvfuwxwwfuvwfwwvwvvwwwuuvxgvwwxvxwhwwwwxwwwwwxwvvuvvgggvwwwwwwwwugxfwwwwgwwvwwvvvwwxwwwwvvwxxgwwvwxhwwwvvwwwwwgwwwgwwwxvhxwwgvgxwwvgwggggwxwwwwgvwwgghvvwxxhwxvgwgxgwwwwwwwwwwgxwvgxwwvwwfwwwwxxwxxwwwvfwwwwxuvvwwwwwwxwfwwwvwwwxwfvfwwfvwvwwwvwvwvvwvvwxwwwvwwwvwwwvwvfvwwwwwwwvwvwfvwuwxvwuwxwvuwwwwwuvwxwvvwfwwwvwvfvwxwwwwwvwxxwvwvwwwwwwvwwwxwxvfvwwwwwwwwwfffwvwgwwwwwfuwxwwxwhhwvwwwwwwwwxxwwwwwwwwvvwwwgwwhwvwwvwwvwxwwvxwwxwwwwwgwxwvwxxfvvwwwxvwxwwvgxgwwxvwwwwxwwgwwhgwxwxwvfwwxwxwwwwxwwxwwxgxxxwwwwwxxxgvgwvwxwwxxwxxwwgwwxwwgwwxxxwwwxwwwvwxwxxwwggwvvwfvwwvfwvwvvwwwwwwwwxwwwvwvuwwwwwwufgwwwwuwwxwwvwwvxwwwxxfwwvwwvvfxwuwwwwxwvxwwwxxwwwwwwwwwwxwxwwvwwwxxxxxxwvwwxwwwwwxwwwwxvxxwvwgwwwwwwxfvwhwwvxwwwvwwwwxxxwwxwwwwwwxxxwwfvvwwgwwxwxxwwwggwvwxxxxhwwwwwxxfvwvvgwggwwxwxfuwwwwxwwxwwgwvwxxwwwwxwxwwwwwwxgvxxxxxxwxwxgvwwwwwxwvgwwxxwvwwwxxegggfuwgvvxvwfwffuwggwvVfgwvxWwwgvvwwwvwgwwwvxwxwwfufwwggwvgVwwvgwgfwgvvwwffwvwvgvvWewvwfuhvwwfgwvwgwwwwwhvwgwvwfwwgwvfwwvWfwxwwwwwwwwxwvwhwvvwvwwwwwwwwwwxxwvgWfwvwwvwgwwvvghgwfwwfwvgfwvvxwwgvxhwwwwvwwwwWwwwwwvgufwwwwvfwwwwwgwwgwwwvwwxwwwwwwwxwwwxwvwwwwwwvhwxwxxwxwwxwvfwwwggwvwgvwwvgggxvwwwxvhwvwwgwwggwwwwwhWgwwghhxwvwwxwwwwwwwvwxxxwwwxwwxwwxwwxwwwxwwwwwxxwxwwwxwxwwwwxwwxwxhgxwwwhggwwwgxwwwvxwwwwwwvwwwgxgwwwxwWwwwwwvgvwvWfvxwwxgwgxwwugwvwvxuwwwvwhxxxwwvxvgvufwwfwxvgfvfgwwggvwwwwggwvxgwwvwwvvxwwwgwwwfwwvgfwwwfgwwgvvwxwwxwwvxwwvvgwwxvwwwxxxhwxxwwwwwxwhwwxhwwwwvwvvwWwwwvwwwvgwwwxwwwxwvwhhwwwwwwwgvwwwxwuwxwwwfgwwwwwwwwwxwwxvxxwxuwwfvvwwwwwwwwgvwwvvwwwwvwgfwwgwwwwvwxwWxfwfwwhxwxwwggwxvwghuuxggwxVVVvvewwvwxwwgxfvwgwgvwxxwwwwxwwgxwwhxwwxwxwxwxxwwxwxvwwxgwwwwggwxxwxwwvwwvvwwwwxvwwxxxwtwgfwwwwgggvwfwwwwvgvvgxggwxwwwwxwgwwwwwfwvfwffgwfvwwvwvgfvwwwgwvxgxfWfuwgwwfwvwgwwxgvwxwxwwgxxwwvwuwwwwwgvvvvgfvwwwwwgEEuwwwwgwxxgwfuwxxwfEEuwgxwwwwfvffwwgwwwwxwwwfuwwxggwwwxwwwwwwxvvvgfwwwwwvwgwgwwxwwfhvwwwgwwwxxxwvffvvwwxwgwwwwwgxhwwxxwwwwwxgxhvwhgwggvhwvwwxxvgfwwwxwwwxgfwwxwwwxxwvwgwhxwxwwxxwxxgvvfwwwwxwxvggxxhxxwgwwwxxxxwwxxwxfvwgwxwwwfvwwvvwwvggwwwxwwwxvxwwfgfvwwwwwwvgvgwwxwwwuxwwwwwxxwxwggwgvwwwvwvwwwfvgwwwfvwvxxwxgxxxwwvxvxwXvgxwxxvfvvwvwwwwwvwWvwxxxvxwvgwxwxxxwwwhwwxxwgvvwvxwwwxvvwxwwxwwwxwwwxxuwwwxxxwwvwfxgwxwwwvwgvxxxxwwgxhwwxhwwwwwwxxffwwxxxxxwggvxwxwhwhwwwwwwxxxxxvxhwwwxxgxxhxxxwwxxxxxuwwgwgwwwwfvuwwfvwwTUwwwfvwvwvwwvwwvvVvwfvgwwwxwwfwuxwvvvvTVwwfgvfvvwwvwFfSggfvfuvfwvvuwwwfgwgwgegwvfgwwwwwfgwwwwwhwgvwvww6dwgfwwwgwxwwwwwvwXwvwxwvwwgxxxvVfwvwfufgxgvUvdwwffwwwwWgwwwvvwwxggxwxwxxwxvvxwwxxgvwvgwwwgwvwVwgwgwgwufxwxwgwwvfwwwvwxxVvdgvvfgxvxgwwvwgxvgwwVwwfwgwuwwxwWvfvgxgwVgxwxgggwWwwgVUwhgfwhvfxxvhvwvwhgwwgvvgwgwwgwwwwvwxxwhgwwgwgxwxhxxxgwggfgxwxxvxxvVfwxxwwwhwxxwwxgwxwwxxwxvgwwxwwwfvuwVevgvwvwwvvfvgvvwfwwgwvwwvwxwvvwvwvxwwwwxwxwwwwxvwvvfwwwwwfwUgewwwfvuvwwwghwxwwWfwvwgvxhxxvwwwwwfwwwgwvwwwwvvwxwgwvwxVvfwvgwwvwwvxxhwwwwwhwgwWgvxxwwgwwxwhxvwvfwuxgwxwxxvwgwwwgfwwxwxxhwwxwvxwxwhwwwxwwvxxwvwxvfgwwwgwxxwwfvwgvwwgewwgwwvwwvfxwwwwgxwgwwwwwwwwxvgvvggfveuwwxgwwwwfgwwvgfwgwxwwfwwxwwwxwxxWvgwgwwxwwwwxwwgxxxwxwwUvwwggwxwxwwwxvxwwxwwxggwxwwwxvgfgvwwwwwwwgwwxgvxxxvggfguxxxxxxwwxggvwwxwwwwgwxxwvwwxwwufghwwwuwvwwwvfwwwwhxhvwfgwwvgwwwwwgwwwwwwggwwwwwwwwwxwgwwwwvuwvfFwwwfwvgvwwwgwgwvwvwgwwwgwvwuwwvwwxwwxwwxvhwwwwwxwwwgwwwwwgwwgwFVuvxwxxggwgxxfwxggvwwwxwwxwwwgggwgwfwgwvxwggfvvxwwwvxvgwvgvwwwxvwwxwwwfwvwxgxgwxwwwgwwwewwwwgggwgwwwwvwwwwwwfFwxwxwgxwxxggwwxgwvwxxwxwwxwwwxwwwwwwxwwwwgwxwgwwgVwhwwxwwxwxvxuwwwwxxwxwxgvwxxwwwgwxwxFVuvxwhwwwwwwwwxhwhxhwwhxxwwxwwwwxxwwwvwwgwwvxwwxwwgwvxwwwxxwwwvxwxxxwxxvwvvgwwwVgwvvvfgwVuwwwxwxwwwwxwwwxwgwwwxwwvxwwwgwgwvwvfwvwwWwwwgwgwvwvwgwvwvgwxxghwwxwghwwwwwgxwwvgwvgwxwxwwwwwxXvgwxwwxxwhwxfhwhwxxwwhwxvwvwvwwwwwxwghwwwwxxwwvwwxxxwwwxxxxxxxwxwxwwwwvWgwgwvwfugwwwwwfwWwxwwxwvxwxxxxvwxwxwxxwwgwwwwgwwwwxwwxxxgxWgxWxggwgwvwwxxxxwgwwxwwwwwvwwwgwwxwxxxxvwxwxxxxwxwxxvxxwwwwwwxxxhxhxxvxxwwwwxxxxgxgwwwwxxwxwxwxxxxwwvwvwvwfvevuxvvfwwfwwwxuvwwwwwvgfwvgwwvwwgwvvwvwxxwwffefefffvfffgvxwwwgvvvwgwgvwvwwgwgwgvwvwwwxxwwhwxwwvffguvevgwwwwggvvwwwgwfwwwxgwgwwgwfwwwwxwvvwwxxwxxwgevevfVfWfgfwvgwwwfwxwvwxwxvwwwwwwwwwggwxxxwgwxufwxhwvwvvvwvvwvwvvvvwvwvwwvwwwvwwwwwwwgwwwwvgvwwwwufufvwwvwgvWgwwwgwgwfgWwwwxwwvxhwvwvxwwwxwwwgxhwvfgwgwwgvxgvwxhwvwvwxwwxgwwwwxwwxgwxxxwxwxvwxWgwvvwgvgghxwxvwwvwwxwxwwgwwwxwgwwxgwwgvxwwxgvuvvvwvvvwwwgvwfwwwhwxwgvvwwxxwwgwxvxwvvvvvVwgwwwvwvvxgwwwwwxwwfwwwgwwxxwwvUwhwwwxvvwwwwwwwfwwgxxwxvvvvwwwvwwxxugxvxvwgxxhwwwwfvvwvwwxxxwxwwexWwxggwvxwxvwgwwxwwhhxwxwwvwwwuwugxwgwxvwwwfgfgvwwwhwvwwghwxwwwwwvgxwvwwwgevvgvfVwhxvwvvwvwwVhgwgwwxwgxxwwxvwvwxgwwxwwWwwvvuvggvwgvwvgwvwgwwwvxwwWwgxxwwwwwwwwfhwxhwwwgwwvwvvwwwvwxvxwgwhxwwgwwwwwwwXxuwvwvwgwhuVdvvfwfvvwvuvevvwwvwfwvgwfuvvwvwwwwfvvvwxgfvufvvVfefevvvvufffwwvwwvufvwvvvfuvfvfvvvvwfgvgffvvvwwgvwwwvvvgvffwfgvvvvxvgvvwwwgwwwxwwvgfwwvwwwfwwgvguvvwwwwggxxxwfuvvgwdvufvuwwwwVvuwvwwwwvwwwvewewwwgvwwfwwwgwwgwggxvgxfvvgvffvfvwgvvUWwwwvgvvvwwvfgwwvwwwVvwwwwwvwwwwxwwfvwvufwwwfwggevufwwggfwgvfggfwfhwhufgwwwVwfwwuhwUwggxwvwwVwgwugwwwwxwVguwwhwwwwwxwfvwwgwwwxwwhvwwgwxwwgwwxwvuwwvgwwewwwfvgwwwwfwwwwwwfwgewvwxgwwwfxgxvwxwwWvvuffwvvwwwgwtWwwwgwwwvwwvvwwvvwwgxwwwvwwwxfwxxuevfuwwuffewwwvvvvwwgwwehvwuwwvevuvwwewxgvwxwwwwvxwhxwxvgvwVwugwwghwwwgGwvwvwxgwwxwwxwWwfvgwwggxgxvvgwggwwwxgwvxxWvfxfvfvwwwwwwwvwwwwxvwwwwwvxwvwgwwvwxxwgwxwwwwxxwhwxvggfeuwwfvgxwwwvdfgwgvwvwxwwgxwvvwwwwwwwwwxwwwwwwwwhfggwvvvwwfvhwvwwwwvfwvwggwwvgggwwwvgwwgxvWxwwfwggfwhgwWvvvwhvwwwwwgwvuvwvgvgwwghxwgvwwvWwxwwwxwwwVwwwgwwxwvuwgwgvgwwwwxwwgwgxggwxwwxwwwwwxxxwwwgwgvwwxxdvwffgwgvvxvgwgwvwxwxwVwwwwwwwvwwwgxwwwgwwwwwwwxwwxxxgvfwge6gvWvwgvvgwgWvgwwwwwwwwvwvwwfwwwwwwwwvwxwxwgxxwwwwwwffwggVWeefwwWwxwgwwgwwwwxgwwwfwwxgwWwwgxwxwwvwWfwfwfwwfwwgWwwwxwwwgwxwxwgwwvWwvwwwxwwvwwxwgwxwxwwwvwxgwfwwfvwwwwe7wxwgxgvvwwxwgwwwwwxwhxwgvxgwwwwxwwxvxgwhwvwwwwwwwwwgxwgggxvwwwxwwwwwwwxwwwwwwwwvwwwxwwxxhwwxwwvgfwwwxWeefxwwgwwwgxgxwxxXwwgwuxwxwwwwwgxwvwxwvwwxxwwwxwwwwwwwwwwwwxxxgxxwwgwwvwxxxvwwwxvxwwgvwvwwwvvwftwwvwwxwvgxxxwwggvvgwvvwwwwwxwhxxwxvwwvvuwfgxwwvgwuwwwwwvxxwgvwvvwwxxhgwwgwwwwwxxwxgxwxwxwxwwvwgfgwxuxwwgwxwwwvwwxxxxwvvwwwhfggwxxxxwwwxwxwwwwwwwwvwgxvvxgwxxhwxxwxgxxwxwwvxhxwhxxgxxgwwgwgguwfwxuwgwwuxwwghuwwwfvwggvvgwwxwwwwwxwxwxhhwxxgvwwwwgwwgwgwxgxfvwgwgwwhwgwvwexwwxxwxwxggxwwgwwxwwwwwxwwvvhwwwxvxwhxwwwxwwvxgwxwxwxxxgwgwxgxwvhxxxwxvwwgwxwwwxfwhwhxxwwwxwwfxhwwxwuwgvvvwwwwvgwwwwgwwwWvwwwvwgwwvxwwwggvwwguxwvvvwfuwwxwfvvwgwwwwwwxxxugvvvgfwfwwvwwvwwvxwgxwuwvwwwxwvwwwgwwwwwvwwwxwxfgfgwwvwwwwwxwvfwwgxxwvfvwWvgwvwxwwwvghgXwwxwvvwgvfvwwvwwwxhxwwwwwwvvvwwwwwwgfwfwxwwgvvwwwwgxwvvwwwwxwwwwvgvwwwVgvwxwwwwwwxwhwwwfuuvwwwgwxwwwgwvuxxwwxxwgwwvwwwwxwgwfwxwxwwwvwwwwwwwxgvgwwwxwggvvxwgxwwxwwvxfxxgwxVwwvxxxwhwWwwvwxgwwwxwWvwwwxwwwwwwxgwwwxxvgwwvwwvxwwwwwwwwgvgwvwgwwwvwwwwwfxxwwwvwwwxvvuwvwwxxxxwvvvvwwwwwwwxxxxxwvwxvxxwwwwwuvhwxgwwwxuwwwwwfvwwwvhxxwxxxwwwwwwwwwwxgvwxwwxvgwwxwxxwwxwxwwwwwVfwxxwwwwwgwwwwwwwgwxwwgwvwgxwxxxxwwwhwhwxwwwvwwxwwvwxwxwwvwwxxxxhgwwwhwhxxvxwwxvxvwxhhwwwwwxwwwxwwvxxxwwwwgwtwvfvwwvvwffvuuvgwgwgexuwffgVvuvvwwwwfweuvwwwvvweUvfvvvvVwvfwwvwvfvvwvgfuvgvvewuvFvtwxwvVfufwfvugwwegwfewvuxWWgwgwvvwwvWvwwWwfvfwgvwVuvfvwwwvgvxwfewwfwwhwvffvvvfevwvwwxwfufgwwtVhwxvevuwvwvwwWwwwgwhfwwwfxwgwwwvugvfUwevwgvEfwxwwwwvvwwwhgvgfgwuwgvvvwxwVwvwvwvwwxvwwwgfwwwwwfxwwwwvwwvwwxwwewxgwwwvgggxVwhwwwgxwwvvgwghhexgfwfwwwwwgwwwwwfvwwwgxwgxwgvvxwwwwggfxwwxewwwwvhgwxwwwxvgwwwwwwwwgwwvwxgwwwVxwwfwwwwwxxxgwwgGwvhwxxwvwwwevwvtgwvVvvwguxwgwvxwwwuwxxwwvwwxwvxwuwfgfvwwwTdvxVvvwwwwwwwvvvvwwvwvwgwwwwwwvvwuhvwwgwgwxeevgwwgwgxwxvvuwwwwvvwvwggfwwvwvwvghfxxwggvwwwwwwxwxgwwwxwvwwxwgvwwWgewwwwxgwwwwhxvwwwgweuwuxxxfvwwwVwwxwwwwwwxwwwhwwwvwwgwwwvwvfwWwvvwwwvgwxwwwvgwxfxwxwwwgwwxgwwugxfwwxwwwwwvwxxxxxxwxwwxwwgvwwhhgwwwwwwxguvxgvwgwgwwwwwxwwxwwwwwxwguwgwvxgwxwwtwfvWvUgfvwvvgfguwvgvwvWfvffuewvgfgfwwwwvwvwvfvwefvvfvvhvwwxfvfwfvefweffvfwvfevUftffvwewgvvvfuffwuvwwwgvwvffwvvWvgUvwwfwgvVvwvhwUtwvggwvvuwgggwfwwgfwwhfWwVvwvwvwwvfhvvwgffwvwwwXwwwgwgwwgevgvvfvwwvwffufwvfgGwgvgwfwVgwvwwwwwgwwuwwwgwhwwwvgggwwwgfWgwgvwwfvwvvwfgwfgwfguwwgwwvvVvgvwgwxwfwwwwwwgvggwwvwvwwwxfwvvwgwvWwwwgvwhggggwgggWvwwvhfvfgwwvwwvxwvVwhWfwwgxwgfvgvfwwgvvwwxhWfvwwgwWwwxwgxwwwvwgvvgwfwgwwwxwgXwvwgwwwwwgvwXwwwwwwwgxhhgwgwWwwwwwwhgWwwwwwvvwwggXvgvwwgvwwgwvgvugwvvwwfevvfvvfwwvwwwewwvvuwfwwvwvvwxwgwgvwxxgwwfvwwvwwwvvwwwuwuufwvwfvgwwwwwwuduuvwwwgwgwwvwwwwhwfwwvxxgwgxxvwwvfwwvvwwwwwgWwwxgwgvxgwWffufvwwfwgggwfwwxwXXXffwwhwvwgwwwwwgwwwwvwgggGhUwwxgwwwwwwwwvgwxxwhghwwwwwgwfwwwuvwwwwgfguwwgwgxwwvvwvvvwwXwwwwgwgwwwwvxwwVxgwwwfggwwwwvWwwwwxwvwwwXxgwvwwvwxgwwwgwwwwwwwxwwgxhwwwwwwwgvwgwwxwwwxxxwwwwgwwgggwwxwvgxxwxwwvgwwxwWwfwfxxxwwwwxxwwxgxwwwwgxwwwwwxwhvwfwvxvgwwwwxxuwvgevwvxwgfvvvxvwfwvgwuwvwuxfUdvwwwwfwwvgvfwvwgwwwwvwfvwfuffvwgfewwwgwfffgwwvVgeevFuSfvvggvvfvwwfgwgugwwvgwWgwwfFcwvwwgwwgfvgvewwwwwwwvgfvwvwwghuwwwwwwhwxfvwwxxxxwggfvVudvwvvwwwwvwvgwgugwxvwfufWgvfVxggwwxxwvgxgwwxwwwwwfwxvffvgfvVdwguggwgvgwfwxwwwvgfvfvevvwwvwwgvuwwwgwvxxvwwwWfffgfwwgfggvwfVvwwVxggufwfgvgegwwwWwwfewvgwwgfwxwwhwvguwfwvwgwwxggvwvwwgwwxwwwgvwwwfwwxwhxwwfwwhvwxwxxwxgvuvvguwwxwxwvwwxwfwxwxwxvwwwvwgwwwwxvwwxwwWwvwfwwxvvVugvgwwwxwwvggvvwgvwwvwwwwwwwgwwwvvvevfvgggvvwwwwwwvgwwfgwhfUfwwwxxhwwwvwwxggxxvxwwwgggfwvwwwwwwwwwevwvvwwwxwwgwwwgvwwwwwxxwxwwwwvwWwvgggevwwewvwxwwvwwhwWfxwwwxxwvwwgwwwwwvwwxxxxxxwwwwvxhvgfvvvwgwfxwwwwvwwwwwwgwwwwwgvvvhvwwwgwwwwwxwgwhwwwwxWwvwvwvggwwvwwwugwhgvgvgxhwxwwvwwwxwwxxvwwxwwwvfwVwvwwvwfwvwwwwuxwwwwwvwwwxwwgxwhhwggwwwvwgxfwwxgxwwxwwvvxwwwexxwwxhgwwXvxwvwwwwwvxwwxvwwwgwgwxgwwxxgxswvwvvffewwvfwfwvwvvvvgfwwwvVvuxvvvvfdvvvggvwwwwwevvwvvvvvvvvwevevdevffvwvvfvvvgwuvfgvVwfvVusgffewvgffvfvvwvwvguffwwguwwVewfvwwgfgwwggevxwwwxwwwvuwvgwgwvwgguwwvwwvxwgxwwvvvwfwvvevuxwwwwvwwWvfuwwwwwwvwftuwwgvguwwWwwwwwvwvwwgxfwvhvVuwgwWvgvwwffwwwwvfvvwvwvwwwvwvxwwWvwwwvwwwwvwwwwgvvgwgvwvwxwvwwwvvvvvgfvwwwwwwwwgwvfxgvgwhgvwvvwwwxwwvvghxWwgwwwwvfvxgwvfvwvwwwvwwwwvwwgvwwwxggwwhwxwwwwwwwxxwwwwwvgwwwgXWvgwvwwhwwwvwwwwvwwffwxwwhxvvfxgxwwwwfvvuwvwwwfwfvgwgwwwwwwvfvvvwvvvwwwvwwwwwvwvcutuwvfvfvvvwhguwwfvgwvvvvwwwgvwwwwwxwxwwgvvwwvwwdVwevvwwwvuvvwwwvvwwwvvhwxwhwvwvggfwxgwwvhfvwxwfgwvvwfwwwwwvwwwhxwwwwxwvWgeXhxxwwwxgwwwuwuwwwxgvxtvwvfwvwvwwvvxwvwvwgwwwwwwwwwvwwwgvwvwvwwwgwxxvgwwwggvwvvwvwwhgwxhwwwxvgwwwxfxwwvgwxxwwxxwwwwwwxwwvwwwxxwwwxgvfwwxxxxxhxwwxxvwwxwwwwwxwgwwvwxxwxxwwvwwxxwvvxxvxwwfvwgwvvgvvwuwwxgwvwwwwwxgwfwvwwvgvvwvgfwwxvvwwwvwWvwwvwfwfwwwvvhfgfgwvWgwvxgwfwfwwwvvwfwvvwfwwvwwxgwwwwwwwwgwvgwwgwgvwvwvggvgwwgvwvhwxvwggvvwwwvwwwxwgwvwxwwhwxxwwwwvgfwwwfvvwgwgfgwwwwwggwxvxwwgfgwvwwwwfwwwfvvgwxxwwxwxwwwwwvgvvxvxwvwwwwxvggwxwwwwwxwwwfwgxfwwvwvwwwwxwwxwwwgvwwwxgwwxwwwgxvwwgwVwxxgwwgwwwwgwwfwxwxwvwwxgvwwggxxgwgwwwwwvwwxxwwggwwxwxvwwxwvwwvwxxwwwwxwgwwgwhwwwwxwwxwwxwwxxvxvwgwwxgwxxwgxwwhvfwvwwgxwwvwwwwwwvwxwwwwxwwwwgwwfwwvwwwwxvwwvxwhwvwwvxwxwgvwxfvvwhwxxwwvwwwgwvwwwwwgwvwwgxwxwwwwggwvwxwwwvvhwwwgwwwwfvgvwvvxwwwxwfwwhwgwxwxxxgwvvwwwwwwwxxxxgwwgwwwwvwwwvwvvwwwwwgwxwwwwwwwxvxwwxwwwvwwwwwwwfwwwxwwwxwwwwxwvvgvwwxwwxwxwggxvwwwwxgvwwgwwxwvwxvwwwgwgfwvwgwvxwggwgwwgxwwvwvwvxgwwwgwwwwxfwhwwgxwwwgxvwggwgggfvvwgwwwvwfvwvgwwwwvwwfvwgxgwggxwwfwxwxxxwfvxvvwgwgwwwwwgwxvwxwwxwwgwwgwvwwwwwwxwvwwfxwwxtwfgwffxvwwwwgwwwvwwfwwgwvwvwgvwgxxwwwwwwwwxgwfgwgUwfwwffgwwwwvwwwxwggwfvfwuwwxgwgvwwgwxwwwfwwUEwwwwwxwfewwgxwwfvwufwwxwxxvUEvwufgwvggwxwgwxwxvwwwwgvwwxxwwwvwxxwwvfwwfvgfhwvwwfwwwvwvvwgugwvgwhvwwwwfgVwwvwwfwxwXxwwwwwhgwVxvgwfwxwxxgvxwwxwxxwfUwvvgxxwvwwwxwwxhgwgwwvxwwvxxxwwvgwwfgwxxhwwxxwwwwxwxwxxxwxwwvvvfwgvwwxxwgwvxwwxwvvwwwxwgwwvwxfwfvfwxwwwwwwwgxvggwvxvwwuwwwwwgwfwvwgwxwxwwwwxxfwwvgvxxxwwwhwxgxxxwwgvwwwgwwwwxwwwgxwxwXfvwwwxwwxvwwwxwxhxwggwwwwwwxxwvfxwwgwxxgfguhwwxvxwxwxhxwwwfwwwfhwxvxwwwwwwggwxxxxxwwgwwwwxwwgvwxwgwvxwgwxwwxxwwwwxxxxwxxwwwxgxwwwwxwxwxxwwxxxwxgwwwxgxvwwgvwwvvwwgfwgvwwwwwwxgvwwvvvvwvxwwxgvwvwevwvwwwvvwgwwfgwwwvxwwwwwwvvwgvwwhwgvwwxwwwwxwxwvwvvwvwvwwgvxvvwwwvwwwxvgwwgfwwwvwwwgwwwxwwwwwwwxwgfwwwvvxvvwwxwwwggwwwwwxvvvwwwwxfwwwwwwwgvwvhxwwgvwwgwwxwwggxwwwxvwwwwwwwxxwxggvgwwwwgwvwwwwwwfgwvwwggwwwxxwwgwwxwwvwwwhwwxwwxwwfgfwwxwwwwwwwwvwwwwwwxwwxwxxwhwxwxxwhwwxwxwxxwwwxwxwxwgwxwwxxwwwwgxvwxwwwvxfvwwxwwgvwwwwvgwwvvvvwwwwxxxxwxwvwwxxwxwwvwwxwwvvwgfwwwwwwwwwvwwhwwwgvwwvwwhwwwwxxwwgwvfwfwwwvvgvwwwvwxfwwxwwwxwxxvwwwhwxxvgwxwgxgwvwwwwvvwhwgwwwgwwwxwxhwwxxwxxwwwwvgwwxwwwgwwwxxvwwvvwwwwwwwwwggxwwwwwvxwxxwxwgwwvgxgfwgwwwxvwwxxwwxwwgvwvgwwxwwfhwwxfvxwwwgwvxgwvgwwgfwgxfvgggfwwwwwxwwwwwvhxwwggfwwxwwxvwfwwwwwxxwwwxgggwwxxxwvwxwwwvwwwxwwwwwwxfwwwwvwvwwfwwxtwwvwvwwwvwweUwwwugxwwwwgfwvwgwggfwwwgwvwggwwwvwwgvxxwWwvwfeevvffwEuBgfwwwwwWWgdwgfwgwfwgfUgfwggwwfvvwvxvgwwgvgvwwwvfuwwETvgvfwfgwfgwfwvwgvwwwwvgvwwwvvvxwvgwxwxxxvxxwwgxwwgfwfdUgeuufvwwfgvwxwfWwwgwwwwvxwxwwwwfvwxxxwxvwwgvwvwvwgwwwwgggvdwggfwgvUSwwwwfwvVgvwVvwwxwwggUwgxwvwwwxwgwgwvvwWvgvfggwuvgxWwxxwGggfwxwfwwwgwwuwwxggvxwwwwgxhwwwwvxgvwgvwvwwgvwxwwwufwxhwWwxvhwwwwxwxxwxwwxgxxvxhwvwwvwvvgwwuggfwwwwwwggxwgxxhwwvxxvxwwwgwwwwgwxwxwwgwwxgwgfvwwwwwfvwvvwwvwgvwwwwwgvfgwwvwvxgwwwxvxxxxggwefvDgevwwwvwwwfwxgwwwgwvwvwvwwgwwgxffwwwwwvwwxwxuwwxwvvvwwgwgwwvvvvxwwxwhwwwxwxvwwwwwwxwgwxwwwwxwGxvxwxwxwwwvwgwwwvvvwvwvwvxwwgxwwwvggxxxwxxwgwgwxgwwwwwvxxwwxgwfwvfxfwwwvxwxvgUwwwgwxwwwwwvxwxxwwwwfgwxwwffwvwxwgvvwgfgwwvwgwwvwxgwxxgwxwgwwwwwwxwwvwwgwwwwwwgGwvwxwgxwwxwxxfwwwwwggxvxxxgxxwggwxxgxvxwxwwwwfwwggxwwwxxwwwvvwwvgwwwxhxgwgvwwwwxxWwwwxwxgvxgvwvwwwwwwvvxuwgwgwgxwwggwwgwwgwwwxwgvvvwwwvwwwwwwxgfwfvwwvxxwwwvgwguvwwfvvgvwwwgwwwwxwwfFvwwwvfvvwwwwwwwwhgwwwwwwxwwgwxxfgwfvwgwwgfxgxxwxvwwVfduwxwxwxfwhwwxxwwwfwgwvewwxwwxwfvwhfxwxwwwwwwgwxxxwwxwvxxwwgwwxxwwwxwwgwfFwwwwwgwwvwxwxhvgfwwvwwxxxgwwhvxwxwwwwwwwggxxxxxwhwfwxgvwwwwfwhvxxwwhwwxgxwxwwwwwWftuxxxhwxxwvxwwxxxxxwxxxxwxxwwxwxuxwxxxvxwhwxwxwxxwwvwxwxxwxwwxwxwwxxwwxwwwgvwxxxfvwxwgwvwwwxxwwwwgvwwvxwwwxwwfvxwwxwwvxxvwwxwwwxxwwwgxxwwwwgwxxxwwvwwwWxwwwxwwfwxxxwxxwxxxwwxwwwwwvwxvgxxgxhwwwxxxwxxwwxxwxxxwfxwwxwgvvxxxgwvwgvxxwxwvvxgwxxwwxxxwwxwwxwxgwxxwxxwhgxxwwwvvwwwwvwxxxxxxwwwwxwwxxxwwwxwgwwwwxwgwwxxwxwwwwxwwwxxwwwwwxwxxxwxtwwwgvuwwwwvvgdgwgvwvwvuvuewvwguwgvwvwfggfguvwvgwxwwvuvwWevvgvwgwwwwgvuVftvfwevgwvTwvfwvgvfwwvwvvvvgwxvgwwvvwwffwvvwvwvvwfuwvwuwEuwwwwvvvvwwwWwgfwvvvvvwgwwgwfvxvWwwwwwgvvuugwwfwgwWvwvvwvFwwxwvwwwwwwwwgwwwwwwwwggwwwxhwwwfgvvvwwVvwwwwwfuwwwugvhxwvwfwfvwwwwwwvwvwwvuvxwxwwwwwwwvwwwvgwwwfwwfwwgwWxwwuxgfwxgvwwvwwwwgvwgfwxwgWgwgwwggwvvfwuwwwwwwwfwwvfwxvwgfwgxwgxwwwwxgwwgwwxwwwxwxwwwwvxwwvggwgwwfwgWhvwwhwwfgwwgxwwgwhwvgwxwwxwwvvevuwwwwwwwvwvfvvxgwvvwvgxxwwwwwwxwwvwwvuwduuxgwwwvvvfwwwwwxwwwwwgwgxxgvggwvwwwwwwwvgvufwxxWvvgwwwwvwhgUfwwwgwwwwggwwwgwhWewwwwwgwvwvvwwfxwxwwwwwgXhdwxwhwwvwwxwwwwxxwxwwwxxwwwvvwvvgvgwwghwgxvuwxwgghxxvwwwwvgwvwwxwgwwwwwwxwwxxwwgvwgxvwwwxwwwwwwgxwwwxwwfwvwxwvwwxxxwwwwgwxfhwgwwxhxxwxxwvwxxwvwxwwxxwxwwwxwwvwwwwxwgwgwwwwwwvxwwwwwvvhwfwwwwwvwgvwxwwwxwvwwvwvwvgwwwwvvUUgwwwwwwwwgvvwvwfvwwwwwvvvwUfvvggggwVWwwvvvwvVvuwwwvwwf5vSVwwgwvwvwwwgwwvwwwfwwxwwwwwwgvwwgwvwwwwwFTgwwvwvwgvwwwgvwvwwwwxwgwvwwwwwxxUuefggfwwwghweuuwwxwwwvwwwgggwwwwxxxwwgxwwwwvghwfgwggwwwwwgvwwxxvgwFdhgvwwwVvuwwxxwwxxwxwxwwgwfgwwwvxgwfffxxhXwhvgxwvgwvwwgfwvwgxwvwgfgxxgvwgwwwwvwfvwwwxxxwwwvgwxxxvwwvxxwwxwxxwxgwxxxwwxvwvwwwxwxwgvwxwwvxxgvxwwwwwxwxxwwxgvwxwgwwwwgwgvxwvwwwwwwwvwghwwwwwvvxgwwgwxwwwwxxxwvvgvvwwwwwwWvUWwxhvwwwwfvvvwwxwwgwvxvxwwwfwwwgwvvxwwwxvwwwgwwxwhxxXxugwgwhgwwwwwvwwwwxwxwxwxwwwvwwgwwxxwwwgwwwwwwxxxvvwwwxwwvhwwfgxwwgwxxwwvxwwwwgwfgwwxvwwwwwwxwxxxwxwxwwwwwwwvhwwxwwwgwvwwxgwvwwwwwwhwxwwwwxwwxwwWxvwwxwwxgwwwwgvwvgwvwwfwxwxwxwwxxwwxhwgwwwxfwwwxxwxxxwwxwgwgwwwgwxwwvwxwwxhxwwwwwxwxxxwwvwggfwgwfxwvvwvwfwfvgvwvvwgwvwwfwgexwffuvguwxwwwuwvvvvwghwfffvvugwwgfwfuwvvvfwewvvfwwwwfwvfvwffgvgvwwvwwfgvfwgvwwwwvwxvguwwwwvffwwvvgvwgxwwwwwgfwgvxxwwvvxhgwwxwvxxfvfwwffgwwwgwgfvwwvUwxwwggxvwwxvwwwxwwxvgvxvwvwxwvfwvvvwwwvwxvwwwwvvvwvwwvvuwvwgwfwwxhwwvvwgvwfvgvwwwxvwvwuvwxgwwvwwvxuwwwvwxwWffwfvwgVWgvwxvwvgfwWhfhvwWxxwvwwwwwxwwvwxvwwwwxxgwwxgwxwxxxwwhvxgwwhvhxxwwwwvfgwxwwwwwggfwwwwwgwwvvwxgwvhwwwwXxgwwwxvgggfvvxwwwwwwvwvwwwwxwvvfwwwwwwxgwvxxxvwwwfvVvwwwvvwwwvwwwwwwwwvvwwwfwgxwxwxwwvfwwwwUwxggwwwwwgwwwvwwwwxwxwxxxxwwvwwwwfvwwxvxwxuwwwxwfgvxfwvwwwxxxvwgvvwfwwwvwwwvwxxwwxwwfhwwxwgwfxwuvwfxwxwvvwvwwwwvwfgxxxvwxvwwwwgvwgwwWuhwwwxwvvwwfwxwwwwwwwvwxhhuwwwwxgfwxwxwvvwweuwvwwvgxxvgfvvwwwwwwwvxwxwvwwwwwgvwxwwwwuwwwxwxvvxWuxwwwxxwwwwwwxwvxxhwwwwwxwwfvxvwxghgxwgxuwwwwwuwwxvxxwwvvwvfxwwwwxwgwwgvwwwvwwwwwwwwwwwvvwgVvwwfwvxgvFvvwwfxwwwggvwwgvvhwgvgwwfwgxvwwwwwwgxwggwwgwxwwwvvwxwxgwwwgfvwxVfevwwxwxxwfwfgwwggwxwvwwgxwwwxwwwwfvvfwwwwxwwwgxvwxxwwhvGwwwxwwgVxxxwwwwwgwwxwwxxwxwwwwxwwxhwgxwwwwxwgwwvwxvvxxhwxvxwwwgwwgfxwxwgwwwwwhvxxxwwxxwwxwVfufwhxwwxwwggxxwwxxwwxwwwwwgwxwfxwxwxwxxhwwxxxxwwwwwxwwwxgvvwwwwvwwwwwwxexwxwgwwwwgwvgwwwhwwwfvwwxwxwxxxvxwvwfxwxxwwxwwwvxxwwwwwwxxwwxfwvwxwxwgxxxwwwxwxxgfwxwwwxxxxwxwwwwwxxwwxwxhwxgxwwwxghvwgwvwwxgwwxxwwvxuwxxwvwgwwwxwxxxwvxwhxwxvwxvwxwxvgxwxxhwvwwxxvxwwxwxwwxgwwxwwxxwwxxxwxxwxwxxwwxwwxxwwxwxwwxwwwwgfxwwxwgwvwxwxwgghwvwwvxwfwwwhvufwvVwwvwgwvwxgwwwwwwVwwwgwuwwfgwwwvgwwvvxxwvwfVvwwvwgwvgvvgfwwgwwwwgxwxgvhwfwgwvgwggwgvwfwvwxggwwgwuvWvwwxwggfgwwggwwXwggevwgwuxvvhwvgwvxggwvgwxwfgfhwxwfwwwWwwwwxwgxwwvwwwwwwvxvwgwwgfuwgWwwwvwwvvgwxhwxgvvhgvgxxgvwwwxwwwwwwxwwxvwwwvxwvwwwgwwwxwfxggwwxwwwgwxwwxwwxwwwwwwgvhxwwwwvwwhwvxxwvxxggwwwwwxgvwxwwxvwxxwwxwhwxhgwxwwwxwwxwgxwwwwwxfxxffwwxxhwxggxgguwwxwvxxwxwwxwggwwwwvwwgwgwwgwvwxxwwvxwwwwwwxwxwxwwwwwwvvwwwvwxvxvwwgxwhwxggwhxvwwwvxvwwxwhwgwXgwwhxwxvwxwvgwgxwwggwgwxghhwxwwxwwwwwhxxxxwxxwwwwxwwxxwxwgvxwxgwvxwxwwhwghwxwxwwxxxgwvvxxxgwwxwxxxxwhwwwgwwwwhwwxxwwvxxxhxxwxwxxwxxxxxwxxxwhwwgwxxxwwwxwxxwxxwxwwxwxfxxxhwxxxxwwwwxwgwwxwxvxxwxwwxxwxvwxxwxwxwxwwxxwwxwxwwwxxgwwxxxwgxxxwhxwwxxwwxxxxxxwxxwgtgwxwwwvVvfuwvwvwwwwwwvwwwfwwgvvvwwvvwwxwevvwgTTvfguvvfevvguwvxwwwwwwwwvvvwvwwwvwwwwvgvwwwxxewffwfvwwwwvgfvvwwwwvwwfvvfxwwwxwwwWxxxxxxeTTvvgfvfvfwvvvwgwxvvggwwwggwwwwwxgwxwxwwfwxxuwvwwvvvuvvxwxVvwwwxwvfwvwwwwwwWwxxxxwwxvxwxwxxxxxveuwwggwwugfwfugwwfwwxvvWxxuwwwvwvgwwwwwwwwxxwwxvvwfvwwgvgwwwwwvwvwvwuwvwhwwwgwxxwwwwXwxwwwfffwwvgwgUwwfwwfWwxwwwwwwwwxgwgwwwwwWwxwwwwxxwgvvvvvvwgwwvvvwwwwwwvwvvwwwwxxwwwwxwffvvugwvwgwwvwwwvwxwvwwxwwwwwwwwXwxxxxgxhwwwvvuugwwwwwvwvwvxvwwxxwwwXxxwwwxxgxvxwxwwfvvwffxxxwgwwwwggxxwhwxwwxwwvxxvvvwvwwgwvwuwwvvwwxwvwwxwxwwwwgxwwxxgvWwxwwwvvvwvvWwvwwwwwwwhwxvwwwxxwwwwwgxwwhwwwxwxwwwxwvvwwwwwxxxvwwwwvxwwwvvwhwgwwxwxxwwvwwwvwwwwxvvwwwwhwwxxxwwxtvwwwwvwwxfvewvwwvvgvwwxvwgvwgwvwxwvvuvwwffEdvwwvewwwwwfvfvxwvwgWuuwwwwfxxxxuvvwwgvgfvwwwwfgvwvwxvvwwwwvvxwxwgwwxwxfEdvwwvwwwgvwhvvgwwxwwwwwwwwxwxwwwwwxwwwwfwvwwwwwgvgwgwvwfxvwwwxxgwvwwwvvwvxwxxvvfvgvfwwwwwgvgfxxxwVwxxvwwwxwwwxwwgvfxxwwwwvvgvgwxwwwxxxvwwxxwwgwxxwwwxxhxxwxwxfvgvwwwwxxwwVevxxgwwwwwwhwxvwwwxxxvwuwgvvvwwfwwvwwvwwxxwwxxxwxwxwfVuvwwwwvxwvvgggvwwwwwxwvwwwwxgwvxwvuvvwhwwvwwwxxxgwxxwwwwxwxxwwvvvwwwxwvwwxxwwxxxxxxwxwwvwvwgwwwvxwvwvvxxwwwwxwxwwwxhwvxxvvwwgwwgwwwwevvxhxwvxwxwwwwwxwxwwwwwwxwvwxwvvwwxwxxwxwwwwwvwwxwwwxvvwwxwxwwwvvUwfwgfwfvfgfguvwgxgwwwfgvwwfwvgwwvwxwvwgvghxgxxxgvVwggfwegewvvfwgvvwvgfgwwggwgvxwwgvevvgwwvxwxwwfwwvxwwgwwxwhgwfwfgfvVwvwfwwfwfwgwwwwwvxwwvvfwwxxxwwwxvwwwxefVwgffgfwvwwfwgfgwvvgvhwwxwxwwwvvwwgwwwwxxwxwwwWgxwgxxwwfvwwfguvfwgvvwwgfwwhgwwwgwwwxvgfwfxwgwxwgxVvwwwwxwwwwwwxwgwvwhwgwvfvwgvwgvgfwhwvwwhwvwwwwwwxgwwwwfxwwvxXgxvWwhgugfwgvfwwwvwwwwvgwwwwwxwwwwgwxxvwwwwvxxwwxxwwxxwwxgxwwwwwfgwwgwvwfvgwwgwgvwxxfhxfgwwwwxwwvwxwwwgggwwwwwUvvgvwgvvwvfuvwwgwwwwwxxvwwwwvvxxwxxxwvfvwwgwwvwvwvvgwwggfwwwwwwwgxwwwvvwwwhfxwwwwwxxwgwwwxwgwgfufwxwxxwwgwwwxgwwwxgvwxxxwxwwvwxxxxwwxvwvgvvwvwwgwxwwwxwwgwwgwwwxvwxxwwxxwxwxggxwwwxwwxvwfwfwuuvwvwwwwwvwvvgxvwxgwwxxxwxxwwwxvwxwwxXwwwgvgvvwvgwwgwvwggwwwwvxggwvwxXgwxwwxWwxwguvwwggwwfwhwuxWuxwwwxwxwwhxfgxwxxwxwwwxxxwvwwwwgwvwwwxgWgwwxwxwwwwwgwxfvvwgwXwxwxxwwxwwhgvxgxwwwxwWvwxwwxxwxwwwwwwwxvvwgvgwwxfvwfvvwvwggwwwwwwwvuvgwgvwwgvwwxgTTvwvwwvvwwvfvvvwvwwfvvevwwwxwvvfvwwwwwwvvveewwwwggwwgxgwwwwvvwwwwxvwwfTTvwwwgwwxxvvvewvvwwwxfwwvwvwvwwwvxwwxwwwwwfwwwvfvwgvgwvwgfvwwwwvghvgwwwwwwwxwwxwwfvwwwwwvwwvwvwwxwwgwxvvvfgwgxwxwfughhvwxwffvwwxwwwxvgwwvvwxxgwgwwwuwwwwxwwwwvwwwvwvvggwvgxgvwwfvwwwvwvwvgevvvwfgwxwwwvwvvxxwwvvwwwvvxwvvvwwwxwwwxwxwwvwwwwxwfvwvwwwwvvwvwvwwwwwwwgwwwgwwxwxwwwxhxgvvgwwxxvfwwvwgvvxgwwwwwvwxxwwvvwwwwwwvwwwxwwwvwwxwxwxxwxvwwwwxwwwvwwxwwxwhvgvgxxwxuhwwwxxvfvfwwwwwwvwgwxwwwxvwwfxxxxwwwxxxxvvwwxxvvwwwvxwxvwwxxwwvwvvwwwxwwvwwwwxxgwwwevvvfuwvwwwffuwwvuvwwwuwwgvwfvwwvwwvgvwwwwwgfufwwwvwvfuwwwvwfvwvvwwwvvvxwwwvfuvfgwvvvwgvwvffvvvwwvgwvvwgvvvvwfwwwvvwwwvevwfvwwxwvgvwwufvwvxfwwwghwwxvfewwvwwwwwwwwwffwwvggwwfwwwvvwvwwwwwwwhwwvwwwwfwwvxwxwvufwwwwvfwwwxwvvwwwfvwwwwwwwwwwwxwwwWwfwvvwfwwwwxwvvvwvwwwwwxwwvvvwgvwhwvfxghvwwwwwwxxwwxxwwvwgxWfwwWwxwvfwwwwfwwwwwvwvwwgvvwwhxvwwwwwxxwfvwvvwwwwwwwwwxwvvwxwwwwwvwwvgwgxxggwgvfxwwwwwwwhxvwwwwgwvhxwwwvguwwwwwwvugwwwwvvguwvvwvvvwvwwvwwwvwxwxvvwgwwwwwwwfwggwwwwwgwvgxxwwvwwwwwwwggwvwwxvwwwwwvwwwwfuwwgxhwvwwwvuxwwvwwwwwvwxwwvvxwwwxwwgvwxxxwwwwwgwxwxwxxxvwxwwxwxwwwVggwwwwxwgvwwwvvxxwVvwwvwvwvwvwwwwxvwxwwxwgwxwwggwxwwggxwwwwwwwwwwwxwwwvwwWhvwWwwwwxwwwvxxxwxxwwgwxxeewwwwwwwwwwvwwwgwvwwwwwwuwwfvvwxxxxwwxvvxhWWwwvwwwwwxwxxwwvhwhwvwwwvwwvwwggwxwxfwwvVwwxuwwwfwvvvvwfvvvfvvwwwwgTUvwvwwwwwvxevuwwfvwfvwwfvwxxgwwwfvuwvDSvfvfvvfegwgWffvvvwfuggfvvfwvvvwuuwvwvgvwxvvwvvvwwxvgvwwvvvvvuwVevfgwvdSdvwwwvwwwfvwwvwvhgfwwwgwwwxxxwgffvgwfUudwvwwwfVevxffgwwVwfffwvvwwgwwwwwwwgxxwwggwwwwvwxwfvggwgffwwvwvfffvwvvwWuwwwwfvuvwwWWwvvxwxuwwwwvwggwvwwgwwfgvvxwwfxggwxwvWvvwgxwvfwgwxwwwgxfwhfwwwwXgwwgwhgwvgwxwfvwwVUfxwwfvwwwwwgvvwwxxhfwxwvwwxwwxgwwwvwgfgwvxwwwwwfxwwgwVgvwwfgxfeVwgfvxwhwwwxvwwwvxwxhxxwxwwvvgwwvfwwwwedvvgfvwwwwwvuvvxwwvwvfwvxwfuvxwxwxwvfuwfffwfwuvwgwfgwxguhvwxwwwwwwwwwwwxxvwxxwwhwwgwwxegwvuvwxffvwwwwXvggwwwwvvvhwxwwwhwxwxwwwxxwwgvwewvwwwgwwxggwwwgwwwwwwgwxxxwxwghwvwxxxxxwwwwvwfgwfwfvxvwfwfwwvwhuvwwwvwgwxwwwwxhwwwwwwwxwwvvxwwwfwvwwgwxwgwwwhwwgwhwvwfwfgvwvwxhwxxgwgwwwwwfWwwvvwvfvvvuvxwwwvwwwwvwwwwwgwwxwgwxxhxwgvwgwwggxwXxwvwwwgwwwxwwwwwgwgxxwwwggwvuvgxgxwwWfvxwxxwfvxdVegwufVuwewwfvuwvwwgwgfwwvvwfvwwwfwvxwvwwuwwwwwwfvvfvfvgfgevegvugufvwwwwwvwwxgugeufwwwwvvwwgugfvwgwvgwguhxwvfvwwgvVvvfvvfwvwwvWuwwwgvvgwwffvvwwewwvgwvwwgguvwgwxwvwwwegFuuvvvVvefxvwvuwvwwffgwwwgwgvdgvwwwvwwwxvwvwxxwwvvwwhwfvvwugfgwgfvwwweVfwwxwvvgvwwvwwwgvwwgwwvwwgvgwwwwwwwxwxugeguvvgfwwvwwwwfuvgwxwggVwggvfgwggwfWwhxxWfwwvwgvxvgWfxwwvgFgwvWwegvhwfwuxwfwwwwwwfvgfdgwhvwwwxxwwvgwwgwvwxxwwfvwwwwvwwxvgvwwvwwvgwwggwwgwxgwwvgwxgxxxhvwwvwxWvwwgvuwuvfvwwvfwxvffvvvwwvxvwwvwxwwwvwwguvwvwgxwxwvvvvtvgvwggvgvwweuvwwwwxxwvgvvwxvwgvwgxwwwwwwwwwhwxgwgwwhuwfwvwwwwvxwfwvwwwwgwgvxggwvwwwgvvxwxxwvgwwxwxfxgwwwwwxgwvwwxuwfxvwwhvwwwfvwwggwxwgwwvgwWvwwxxwwwwxxwwvgwwVvuwgwvxwxvUvvwwwggwhgxwwwWvwwgxgwgwwwwwggvgvxxxwwwwfvvwvwvgwxwwvxwvgwgwwgwvgwfwvxwhwwvggvxwvwvwwgwwxwwxwvwwxwwwwwvxwwwvxwwwwvwwwwwwwwgwvwwwwxxxgwxvxwgwwwwgwxvwwvwwwwwxgwwwwwwwvwwwwwxgwwwxxwxxvwwwwvvwxuwvvwwgwvvwwggwwwwwgvwvvwwwwwvwvwwwgwvvwwwvvxvwgvvwwvfwwfgvwwwwduVfxwwgvwwhwwgvwxwwvghwxxwwwwwvwwwvwwvwwfdfwwgggvvwwwwwvwwwwwwwwwwwwvwxuvvwwwwvvgvvxgvvwxwvwwgwxwwgfwxvxwxwxxxggwwwwwgwwwwwwwwgwwxfvuwwwwwwwwwgxugwxwxwwwxwvwxwvwvxwvxwgvxgfvvhxwwxxxwwXxwxxxxwwwwwwwwwwvvvwwvvwhvxwxwvwwwwhwxxxgwwhxxwvvwwwvwwwvwwxxxwwxwwvxevxwxvwwxhwwdfwvwgfwwwwwvwwwwxxwwvwwwwxwwwwuwwduVgwwhvwgwxvwwgxgwwvwwhxwxxfwxwwxwxxwwwgwvwwgwwxwxghxxxxwwwvwwwxxwwwxxwwxxxgwwwwwwvwfwvvvwwwvwwxvwwugwxxxxwwwxxxwvwwwxwwwwwwwwxxgwwwxxxwxxwxgwwwwwwxxwvvwxxwxxxwxvwwvvxxwwwwgxwxwwxxxxxwwwwwwxwwwwvxxwwwwxxwxxwxxwxwxwyfwwxwwgvwvwwvvggwvwgwfwwwwwwxgwwwwwWgvwghvwgvfwxwVfwwwvwuwfffwwhgwfwgggwgwWgwwwwwwwvgwwgWwxwxxvwwwwwwwwwwwwgvwxvgUwwwwxfwwhgxwxwxwwxwxvwwvwfgfwwwVwwwwwwxUgffgwfgwwwwxwwwwwwwwwgwvxwxwwwwwvvwgwwwwwxfvVwwwwwvwvwwwgvgwxwwxwwwwwxxxxwwwgvwxwwxvxwxvxwxgwvfxxwxwwgwwwwwwggxwwwwwhwwwwwgggwwwwxxxvwwwhwwwwgfwwxwvxwwxwwwwwxxxwwwvwwxwxwfwwxwwwwxVwwvwfwUgxxwwwwwvvxwwwuxxwxvwxwgwfwwwgxxwvxgxgwvvwwwfxwwwwwwxwwxwwwxwxwvwevwwwvwvxwxewfgWwgwwwwxwwwgvwwxwwffwwxwwxxwvgwwwxwxfvvwwxwwxwhvwwwwwwxxwxxxwwwvxxgvxwwvwxwwwwxwxxwwwwwwxhwwwgxwwwwfwxfgwwgvxwxwwxwwxgwwwxxwwxxwwwfvfwxhwwxwxgwWgfwxxxwwwwxvwxwgxxwwwwwwwwwxhfwwxgvwxxxxwxwxxwvwwgwwgwwwxwxwxwwwwgvwxwwxxwwwwxxwwvwxxgwwwwwwwwxvhhxwhwxxswwgfvwwwgwwwwvwwwwwwwwguwwvggwwfvwwwwwguwvwfuvvvfvwvgvwvwfwwwwwwwfwwxwWEcuuvffwwuwwvwwwwwwxwxfvwwwfvwgwwwwwvwguwvwwwxwwvvfvwwvwxwwwxvwwwxwxxwhVEcuuggvwwwwwgwwgwwwwxwwfwwwwwxwvwxwvwwwxxfwuwfvgwwgwxwwwwwfvwwxwggwxwxvfewwgwwwxuxwvggwxwvwuxvvvwwvfWwwvwxgvgwvwuwghwvwhwgvwwhWtvxxwxvvwxvxxwwvfuwfwwwwwhxwwgwgxvxwgxgwwwvwwfvwwwxwvwwxxwhgxwwwfwggVdvwwhgwwwvgxgwvwxhwwxwvwvwwwwxxgwvvwwwwvwwwwguwvwxwvwwwwxxxwvwwwgwwxwguwuwVwwwwvwwvgwwwwxxxwvwwggwwxwxwwxxwwxvfwvwvwwxwxgvvwhwwwxvwwwwwwwwxgwhvwxwvwwwuwwxwwxxwxxwwxxgwwvwwwwxwxxxvffwggwwghgwghwvwxwxxwgwwxvgxwxxwwxhwwgxgwxxwwvgwfugxxwxvxwwgwxxgwxhwwvhgvxwwxvgwxwwxwgvxugwwxuwxxwxwwwxwvwxxwwwwwwwwwxwwwvxxgxxxxvwvwwwwxwwwxwdgwvvwfvwveUwwwwvwwwwvwwwwwgfwwfwvvwvwwvwwvwvwgugwwwgvfwEbvvguvvfvwwwuwvvvwgwwwvwwgugvwfvwwvGgvwvwgvwvwgxgwwwwvuvfffvgfTwddUuvfwvwwgvwwwwvwvvvvwfwwwvwwgwxwwwgvgwxwwvuvweuufggvuwwvGwwwwgvwxwwwhwvwgwwgwwvwwwvwxxwwvwvwgxgwwfwvwvvgvvwwvwGtwvwvwfggwvwvhwwwwwwgwwwwwgwvwwgehwgewfwwvwvvgvwwwwgwwwwwfwvwfgwwgvwgffwwgwwwfgwwwwfgwWwxfghwWwwffvfvwefvvwwwvwwvwwvWvwgwfvwvwwwwwwwxxwwuwgwxxwvwvvwwggwwxwvfvwwwwgfvxwxxwxwwwwvuwhxWwxwwxhxwwwwwvvwvgvwwvvvvuwwgwwwgvxwwgwuuueuwvwwwwwwwwwwwxxwxuwfvuvwgwgvwuwwggwwwwwwwvvWwvwvwwxvwwvwxXwgwvgvtwvfgvwvgfwvwgghxwxvvvwvfvwvwgwggvfwxhwhwwwwvwwxwfwVwuwvvwwwwwvwvwwgwwxgvxwwxvvxwwxxwhwvwwwwgwxvwwguwgvvwvwwwwvvwwWvwuwwwwwwwghwwwwwxvxvwwgwwxwvwfgvwwxxwgwwvwvwwVgxwwgggwxwwwvvgvgfvgwgxwxwwwwwvwvtvuwwwwwwwwwtwxwVewfxgwwwwwwgxwwwgwwwwhwwvgxwxwvvgfwxwwxxxwuxwGvxwwwwwvxwwgwwwwvvxwwwwvwwvxugwVwwfvwgvwvuwxwgwvwwwwuwgwwwwgvvxwwwxgwwgwwwwwwxvwwwfgfvffvvSeFgxwwwwWgvgwwxwvgwguvuWgwwvwwwwwgwwxwgwxxwxwfxxgwvxgUuvvvwhgwwwwwwwwwxwwvwwvxgwwgwwwxwwxwxwxvwueeWgvwvwvvvwwgwwwgwxxwwxwwwwxxwwxwvxxxxxWwxwgwwggvwwwwxevfggvwwWwdvVwhwvxgvwwggwwwwxfvgwvwwwwxxwhwwwwwwwgwuvgwwfuwwwhwgwHwvwghxvwwwwwuxxxwwwxwxhhhwxxwwxgvwfwwfvxvvwxvwwwfvgxgwwwwwwwxwwwwxwhwvxxwwxxhvxwgvwwwwuwwwwxwvgxvggwxvwwwwxwWwwxwwxxgwwwxwxxwxwwxvwgvvfwwgwwvfwwwuwgwvwwhUuvvvwwxwxxvwwxxwxhgwfSeFgwwwwvwwvwwwvwwwvxwvwwwwwxwxwwxxwxwwwxxxfwwxvwwwwwwwwwwfwgwxxwwxwxwwwwwwxwfvvwwwwxwwxxxxgxxwwwgvwwwwwwwwwxxxwxxxvxwxxxxxhxwwwxxxwWwgwwxxgffegvwvwxwvxdvVwgwgwwvwxwhxwwvwxgwxxxwwwwvwxxwwwwxwuwgxgwvgwwwwwwwvwwwxwwwwxxxwwwwwxxwwxgwxxwxWxwhwgvwwvxwxxwxwwvxxwgwwxwwwwwwxwhwvwxxwwxxxfwwwwxxfwwxwhwvwwvwwwxhxhgvwwwwwwgwwgvxwgvwwuwvwvwVvwwwwwwwwwgwvgwwffwwwgvvvwwwvwwwgwwwvwwwxwvvwwwfvgxwvwgwwvvvwvwffxxvwwwwwvwwduVfwgwwwvwwvgwwwfvwxfwvwwwdfwwwwwwxwvwwwwVggwwwwwgwuvwwwgwgxxwwwwvwwwxwwvvvvfegvwwvwwwgwwvwwwfxxxwwgvvgwvwfgwwxxwwwwwvwvwvgwfwgvwwwuvgwwgwvwvwwwvxwxxxwfgvVuvvwwgxwwwvwwwgwwvwxxwxxxwwvwwvwwwgwwwvvhwxfvgwxhvvwvwvvvwvWwwwwwxwwxxwxwvfwwvwwwwvwxwwxvwwwfwxxxxwvuvwwxgwwwwwwwuwwxxwxwgxwwvwgwfgxwwwgvwvwwhwwwwwwwwvgwwwgxvwhwwxgwwxwwwwvwwdfwwwwwxwwwgwwvwxxxvvwwwxxwxxwvwvwwgfwvvwwwwwwwduWfvwwwxhwwhhwwwxwgwwwvgwwwxwwwwwuwxwwwwgwxwvwxwxxxxwwwxgwwxxxxwvvwwwwwwwxxwwwwgwwgxwwvwwwwwwwwwwxxvwwvvuwwuvgxwwvwxwwxwxwxxxVwwvwxwxxxvwxwvwwxxwxxxvwwwwwggwvxgxxwgwxwwwvxwxwxwwhwxhxvuxwwwwwvgxwuwgxxxxhvwxfgwwwxxxxgxhwwwwxvwvwxxxxwwwxxxvwwwvwxwwxwwwwxuvvvwwgwuwvwvvwfvvfvwwfvwwwvwwwwWvwwwwvgwwwwwvgxfuwwvvvvwvwgvefwvwvuvVwwvfwvvvvwwvgvvwvwvWvghgewwfvwfvgwfVvvfvwvwwvwwfwvwwvwgwwwwwwxxwwwvvvwvvvvvwwvxxWvvwvwwwWwwgwwwvwgwgwfwwwgwvwxgvwvwwwvwwxwgwwwvvvwwwhwvfwwxvwwwgxwwhfwwwwwwwwggwwwwwgvwwwvwwvhwvwwxwwxuwwWwwwxxwvwgwwwwgxgwxvghhwxwhvhxgwwvwwwvwwxwwggwwwwxfxwwgwwwxwxwgwxwwhwgxwvwxxvwwvxwgwwxwwWxvvwwwwxwwgwwfwxwwgwwwvwxwvvuwvvwwvvvwvwvwvwwwwwgwwxwxwwwwvvwwwwwxvgvuvgxxwwwwwwhvwhwxhfxxwwgxvxxwwwwwvwwvwwwwgwwwwwwwwwxxxvwxwwxwwwwxxwwwxhwxwwwgxehxvwwxxxwwwxwhfhxhvxwwwwwgwwwwvwwxwgwwwvwxxvvwwwxvgwwwwgwwwvxwwwwwwwxwxwwwwxvwxxgxwhvwxwgvvxwwwwwwwxwwwwwwvgxwwwwwwxgxwvwxwvwwwwwxxwxxwxvxwxgvwxxwwxvwwvwwwvfwgfwvgvUfwwgwvwwfwfvwvvwwwwwvfgwwuvwwwwgvfwweewgwuwvwwgvgwwvwwvvxvfgwwfwguevvwwwuwwwwwgwvfwvwwgwfwwvwgvwvwwwwggwUvwwwvwgwfwgvwvwwvvvwwxxvwxwuxwwxwwwvvfwewvgwwwwwgvwwwxwxvvfgwxwvvfvwwewvwvwhwwwwwxwgvvwwwwxwvwwwwvxwxwwwwUfwxwwwvfwwwwwwgvwgwvwxwgufwxfgfxwwveewwxwwuwwvwwgwgxwixwvvwggggvuuwwwwuxvwwxhvhfwgghgwgwxwwwwvvwwwwxwgwwwUgvgwwwwgwwgvwwwfwwwwwwxxwxugwvvgwwxgwwfwewwwxvgwwwgggwfxwvfwwwwvwvuxwwwvwvxwwgwxwvfwvwgwwvwxxvvfvxwwxwwvwhxwewwwxwwvvwwwwwwwwwxwwxxwxxxvwgxvvwvwwgwvwggwwwvwhxxwwgvwgwwwvwgxwwwwvxwvxwwxwwxwgwvwwwvwwvwwuhwwwvgvvvvwxwwxxwvwhwxgwwwxwwwwwxvwxwxwxwgwxwvwwvwwwxwxwxwvxxfwgwwxwwwwwwxgwwwxwwxxguwwxwwhwgwvxwwgwwwwvwvwwgvwwwhvwxgwwwfgwwwwxgwwwxwxfggwxhfwggxwwxggxvwvwggxvwvvwfggwgvwwfwwwwvxvwxwwxgvwwuwxwgwgwwxwwfwwxwxxgwxgfwwwwwgxwwvwgwvfwwwwxwwxwwhwwxwxxwggwxvxwwwgxwxfxwwwvwvwfffvgwwfwvxvwgwuxvguwxfvfwfwxvvvwwwwwwwwwwvvfvvweggfvvfvfuwwvuwfwvwfwwgvguwvggvwwwwvwvvwwwwvfgwwwwwwevgvfwwvwwuwvwvvfvgvwwwwwwvwxfwwvwwwwwwwgwwwxwwxwwvguwvgfvfwvvvwwwvvwvwevWxwwvxfwwggwwwwwwwwxgwwvwvwwuwfwhvvvwwgwfwwwvgfwgwfvwfwwwvwvffxfvgwwwwxvwwwxvwxgwvvxuvvvvwwwwvwvvwvwxwvwwXfvwgWwvWxwxwvxggxvwwhgfwwwwxwuwvgwwwfwwwwvwvfwggwwvgwwfwwgvwwwxwwgvxwwWwWuxwgxfwvwfgvfwvxwvwfvxggVwwwgxwxgwvvwvwwuwvhvwwxgxgwwwwuvwwvwvwwwwwwwvvwwxwwwwxwvwwxwwwwxwwxwwwfwvvVvwwwwwwxwvxwwwwwwwwgwvwwvwxxwwwhwwvfwwwwvgfgwwgvxvxwxwwwgwwxwvwgvxwxxwwxxwwxgwwwwvxxxwwwwgxxwwwwvwewWvwwxwwwxwxvhwvwhxvhfuxfwvvwwwwwwwvwwwwwwwwwvgwwwxxwwwwwwwwgvwwwwwgggwwgvxwwwgvxwghuvxwxfvvwxwhwxwwvwwvxxwwxwvwgvwwwwfvgvgVxwVexwgfwxgwwwxwwggfxwwxxwxxwgwwwwuwxwxwwxwwwwgwxfwvvxgwhxwwwuwwwgvwwwfvwwwwxvgvvvwvvwwwwwwxwvwvvUUwwwvvwwwwfwwvwgvwvwvwww5cwvfwwwvwwgvwwwwwVWxwwxwwwwvwwwwwvxwwwvwwwvvwwvvvwgwwwwwvfwwgwVUvwwfvgwxddefwgvwwwwwhwfvwwwvwvwxeuuwwgwhwxwwwvffvvwwwwwwvxgvwwvvwWxvxwwwxxwvwwwWuwwwxwwfggwvvwwwwwwwwggwwfvwwvxxfwwvvwwwwwgvvwwwvvwfwwwwvwwwxwwwvgfwwwgwwwggwxwwwwwwgwhgwwwgwxvwwxhwwwwwwwwwwwfgwwwxgwwwxvvwwffwvwwwhwxvwwwwgwwwgwvwgwwvwwxxxxhwvwgxhgfwwwxwwgwwwwgfwxhvwwffwwwwgwwvvwwgwgvwwwwvgwwwwweevvwwwwwwwxvfwvwwxxvgwgwwwvwwgvvxwwwwfwwhwwwwwwxwxvvwxwvxwwwwwxgwvwwuuwvvwgeuwwwwgwfvwxwxgwwvwwvhhxwgwwwxwwwxgwxwvfgwwwwwxxvgwwvvwwwwwwwwwwxxwxwwwxwxxxwwwwwwwwgwvwwgwxwwgwwwwwxxxwvwgvwwwwxwwwwwwvwxxwwwvwwvxggxwwwxxxwgwgwwxwwgxwxwwwwvwwwuuwxwxwxwvwwwfvvwxwwvwxwxxwgxvwwwwwwwwwxxvwxxxwwwvwgXuxvwwvwwwwxgxgxxxxwvgwdwffgwfvvwuwewvwggvwfwfvvfwfvefwwggewgfwfuuwvwfvwfvWwvwuwvwfwvfffWwWTwevevfVewvgfffwvwfwfgvgfvfvfwegfvvvvVfgfwgwwfwwvWvwfwvxvvVwwgwfvwgfVwfvgwfevffgvgwfuffuwetfwewwwfwgwewfgfgwVwvgevvVfwegfvvgwwffwvxWwgfwwwxfwgwfvevuvgfvgwGwwvvwhwgxwggwwwwvwgfgwwwvwwvwvweVgfwvvwevvgwwvhvgVwvwgvfxwgwwgwvwwgwguwwgghwwvwwxgggwgwgxwwvfVwfghxwwggwgwwwvwwwwwfgvxvgwwgVwwwWwhWgwgWehxvwvgggvvxfwwxUFuegwgwgwwwwfvxwguwwwugwwxuwfwgggwwvwwwwuwvwvwwxwwwwwwgwwwwwwggxggwwxgwwvxhfwxvwgXEvwgwggwxxwgwwxwxfvvvwvvwvvvweVfwvggwvvwwuwwhwfgvwggwvxwgwwvvggwwwhwgvvvwfgvwugvwfvwwgwwfwfggvwvgwevfwwwwuWvxwxwwxxvxxgvgwwwxfvxfwwuwwWwwwuhwwwxwgwwwgwvxwvvxxgwwxwwghwgwwwwxgwxvwfwwugvwwvxhwwwxwxgxwwgwWxvwwvhhhwwwwxxwggxxgwwhwWgvwxvgwwVvwfwwvwwffwxwvgguvwhfgwhgwwxwwwxwWwgwwgxwxwwhwvxvwgvfwwwwxwxwgwxvvwwwwwwfhwggxwfgwwxwxxhwwwwfwwwwxxwxwxxgwwvwgwwwugwwvwfwgxgwwwwwwxwwwwwwwxxfvwwwwvwwvghwwwvxxwwwwwwwxgwwxgggwwfwwwwwgwwxxwwfwwwwgwgxfvgwwwvfwvwgwevxwwwxwwvwWwvvwwwvvvxwwvwgwwxwfwfwfvVvhvgfwvffwwgxfwwwgggvvvwwvwvwvfwvfvxwwwwwxxwwgwvgvffvwgwwwvxwwvwwwwwxxwwgwvvvwwwwvxxwwxwwvwwwwvwfffvfwwvvwwwwwwwwwwwwgvvwwwvwvwvxwwxxgwfxxgwvvwfwfvwwewwvwfgWwwfgwwwwvgvwwvxwwxxwwwwwwxwxwgffwwfvwwWgwwvwfwwxgxwfwwwgwwwvgwwwhxwwhxwvwhggwgxwvwwwwvvgwwxvxwwvwwxvwvxxwwvwgwwwwxxwwwwwwxwxwwwvwxvwwwwgfwwxvwwwgwwgfxxxxwwxgvwwwwhvxxxwwwwxvwxwvxwfwxvwwxwxgxwwwxxhxxwxwwwvxhxwwwwwxxxvffvvfwxgvwwwwwwggvwvxgwwwwwgwwwxxhxwxxwhvwwvwfwwwwgxvxwxvwwvwxhwwxxwxwwgxwwxwwwfwwwxwgxwwwgxwxwwxxwxwwgwgxxfwxwgwwwwgxvwwvvvwwvwxxgwxwwxxwwggwwvwwwwgwwxgwwxwwwwwwhxwwxewvwgwufxwxgwwwvwxwxxwwxxxxwxvwgvxwxwgvwghwxfwwwwxfvwwwgxwwwvwgwvwgxwwgvwwwwxhxwxgwxhwwgxwwvxwwgwwxwwxvxxxwwwhwhwwwwgwwgwxxxwvwvgvvvuwvwfwuvvwvvffgvwwwvvvvwvwvwwxwwwwwwwwwwxvvuwwvvvwvgwwgfvgwwwffvvwvvewwwwxwvvwwwwvvwwwwwgvxxxwwvwfwvwvgwvwwwvwvwfvvvwwwvwvwwwgwwvwwxwgxwvwxwvwuvvwwwwwwvvvvgwwgvwwwvwuwwgwwxvwhwxwwwwgvwvwwwwvvgfvgvwvwvvvvgwvwggwwwwvxwwwwwwwgwwvxvwwwwwwffgwwwfvvvgwwgwgxwwvwxfgvvwgwwwvwwxgwwwhwvhhgwwvwwwffvvwwwvwwwgwwvwwgwwxwwwwhvwgvxwwvwxvvvwvvevwvwvwuwwwwwxfgwwwwxwwwwvgxwwvxxwwwwvwxvwvwwwwwwgvxwvvwggwwxwwvxwxxwwwxwwwwwxvwwxwwgwwwxwwwwwxwwvxwwgxxwxxwwvgxwxwxvvwwvwvwhwwvwwwwwvgxwgxxwxvhwxgwgxwvwwwwwwxwwxwwwwxgwhxwxwwxxwxxwfwwwfwhwxwwvvwwgwwgwwvwwvxxwxwfwxwwxwgvwhwvwwwwwwwgxwvwwgvwwwvxhwvgvxwwwxwxwwvhwwwwwxwhwgvvvwwvxxxwvwvwwhhgwwwwvwwwvgxxgwfwhgvwhgvvxhggwwxxwwvwwwwwwwwwwvwxwxwxwxgxwvwxwvwvgwugVwgvfwgtwwgvvgvvwwwffxvwvwwWwewfgvwwwwvwggfevvwvgvwxwwfgvvvftfuffvgwvffVuvfvgvfwvvgwfhvVffVvvvwvvwwgfvvwxvWwwwxwxvwffwfgeevwfvwvffWffwwfvfvfwwwwvvffffwvgwwwwwwvwfwfwwvxvwvgUffweVvvvewwvggvUggwvfwxwwgfvfvvwwgvxvwwwgwxwgwwwxwwwwwgwgfvwfwvfewwwwvffwwwwwvgvvwwwffVwwwwwwwwwgwfwvwvvwgxgvwfwfwvwvvefvwVWWwgfxxvhwwvwxWVfvvVwwvgwxwwwwvvfGwxGgwgwvxgwvwWvgweVWvwwvgvUggwvwfgfwwxvvgwvwwXwwwwwvwwvwwwgggwwwwvxwwvgwwufvwwxvwvgggvVxWfugwwxwfwgvxvvwwxwxwwgwwggxxhwwxgvwgvuwvgfvwwwvwugfwgvvvvwvwggvwwgvwwwxwuggwfwvwuvwwvwwfvggwgvwvvxxvufvwvwwvxwwwgwwgwwwwwwxxwvwwfggvgwefwwwghwexwwxVwwvxwfwwwVwwvwxwwwxwwwVvuxgwwexvxwwgvWwwfwxwvwwxwvwvxwfwwvhhwgwhvwxxwxvVvgvvwVuwgggvfvfwwxfgvwvwxwwFvvwwhwwwwwwwwgVwWgwxxxwwvwwxxvgfwgwgwvhwwvfwvfwwfxhwwggwwvvghvgwwwxwvwvuWxgwwvwuvwfvwwwwvgwwhgvgwwgWxfwwwwwuhwxwwwvwvvxhwwxfgxvxwfwwwhwvwwwwvwWwgxgwxwwvgwvgwwfvvwfxevvwvuwwwwwvwwwvgvWgfwvxvfwwvwfwfwvwUdvwxvvvwfuwwvvwfwwfwwgvwwwvgvwvvvfvwwWfvwwvwxwEcvfwvvfvuwwvvwvwggewvxwhwwwwvwwgWdfwvgwvgvvwwgvvvvwxwwgwvSdeuwvwwwvwuvwwwwwwwfufVfvvwvwwxwwwvxgugxwgwvVutvwwWwwwgxwwwwwwwxxwwwwwwgvwxVufgfvgvwwvxvvvvfvwwwvwvwugvugwvxvwwwwwwwuwhvwvwwwgvwwwwvgggwxwwwwwwvwXwwfghWvvvewvvfwwgvgwwwxwghxwwwggxgwwfwvwefvuwwwwxwwwwxwhwxgwwxwuvwvwhwwwxwwvwwgvvxwwwwvexgvwxwxxxwgwwwxvwhwgxwwvwwwwgwfgxwwwwwvwgwvgwgwxxgwvvvvvvwvgvvxwwwvvvxwwwuvwxtuuwwwxvwxxvvfvwvwwvvxxxffwwhhwwwwvwwvxwwvxvhwwwwwggxwwwvwuvvvxxxvvwwWwxhwvuwvwvwwxwwwwwxxxwfwfwwvwwwxwwhwxvwwxvxwvwwvwwwwvwxgvwwwwgvVwwgwvwwvwvwgwwwwwvwwwxhwvggwwxgggwgwwgwwwxwgwxwgfwwwXggwwwwxwwwwfWggwgvxwwwvxwwwevvhxgvfvwwwxxwwwfwxwwhwvwwwwhwxxvwwxgvwwgwvvwwxfwwxwvhgwwwwwxwwwxwwxvwwgwwwXvvgwwevxfvxwwwvwfgwvxvwwwwvwwwgvwvgwwwwwxvwwvwwvvvwwwwwvwwvwgvxwwvvvwfvvfuffxxwwvgwwvwvvwwwwwdtVWgwwwwwvwwwvfwwxxwgfgfvxwevwwvgvvwwwgwgfwvvwwwevffwwwwwwvwwwwwwxggwwwxvxwxxxxwwwwxwwwwwwwwggwwxwwwvwwwufhwxfvvwwwwxxxvwwgwwyxwwvvwwWgwxxwvvwwwvwwxgwxwwfvwxwxvxwwwxvwwwwwwvwxxgwxwwxwwwwwwwxwvwxxxwvwxwwwwxwgvvxvwxgwwxwxwxwvwgxgwxwwxevwwwfvwwwwwwwwwvwwxwxvwwwwxxdtVWwwwxxwwwwxwwwwxwwwwxwwwwvvwwxwwwwxwwwggxwwwxhgwwvxxwwxwhwxwxwxvwvwuggxfvvwwhwxwxxvwwwvvwwwwxwwwvwwgwwxxwwxwvxwxxgwxwwwwwvwxwwvwwwwxxwwxwxxwwwxwxwxxxvgvwwxwwgwwuwfvvuwvwwvwwgvufvvfwVeggVvgvfgwwvwfwfvwwvvuwVevvvfvvvvwwgwvvxVCfvWUvfgevwgfwvwgfwwfgxvfFwfffvfvggwvwuwvwfvffgvGwwxxvwwvvwwwfuwVfwvvvvvfduuVvwvggwwewwgvwuwwvxwxwwwfwvwwvwwwwgwvwffvwffWvvwwwggvvewWg7wxgvvffwvwvvgwfxwvwwwwwwwgwvxwwwwgwwvggwgfwvgguvwvwwVEwwwfgwwuvvwgvgfwvwwuxwxvwwwuwwwgfwxwxwwwwvgwxhfggvfwgWvfwvxwwwhxvFhXTwwwwhgwgwwxwvwfwwwwVwhhExwgwhxuvwwvugwvwVfuggvfwtwvvWfwwWxgwfwvuxgwfwxxwvwwvwwwhfwxwwwwgwwwfgfwxvwgfwxwUhX6xwgghwfvxwwwvxxwxwwvwwwggwwgvwvgwwwwvvgvwwwgfgwwgwxxwgwwwwwwvxwgxwxwvwwwwwwwxgvvVvwwwwwweufgfvgxxxgfwwwwwwwWwwwwwvwxwwewwwxwwgwwwvvvwgwwwwvwvwwgwxgwwvwwwxggvxxwwwvgwwxhvwgwwwvxwvwvwwwgxhhvxxwwwgwwwXwgfhwwxgwwgwwwxgwxwwwwwwwvvwwvxgwwwgvwvgwgxxxwwfgvgvwwgwwwxwxgwwwwwwwwwwwvwwgwxxhwwwwwgxxUxxvxwwwvwgwwxwwwwvgwwwwwfwxvvwwxgwwwxxwwxxwwwwfxwxwffwxwwwwxwwgwwwwxwxgxxwwwxwvvxwgvwxwxwvvhwvwwxxwwwvwggxwwwwgvgwwfwwvwwwwvxxxwwugwwvwwwwwwwwgwvxxxfwwgvwwvwwwwffgwfvgwfwwfvgwwvvwwWfvvwwwvgevwwWvwxwxxfgwwwwuwwxxwwwvwwwwwxwwwggwwwwwwwxwxvwfwwwwwwwwwwwxxxfwewwwguwwwwwxgwgfvvugwxggfwwwwwwxwxvxwwwxwvxxwwuwwvwwxggvwwxwwwxvwgwwxwwwvxwwwwwwxwvfwvwfWwvwxxwxwwwwxxxhgwggggwvwwwwggwwwwxwgwwwxwwvxwwwwwxwwxwwfvwwwxxwxwwwwwwxxgwwwhvxgwwwwwwwwuwxxwwgfxvgxxwwwxfwwwgwwwxwwgwxxwxwfvwwwwxwwxwvwxwwwwwvwxgwvwxwvuwVuwwxwfwwgxxwwvwwwwwwgxwwwwwwxxxwwwwxwwvxxxxgwwwxvvxwxwvxwwwxxxwxwvvwgxxxwwxwvwxvxgxvxgwwvxwwxxxwwgwwwwxwxwwwwwwxxggvwxxwxxxxxwwxxwwwwwvwvgwvwwxwwxwwwwxxwxhgxwgwvwwwvwwxwwwwhwwwvvfvwxxxwwwxwwwwhxwhvwxwwwwwxwwxwwxwgwvwxwwhwwwxgvwxwxxwxwxwxxtwwwwvwfuwvvwfwvvwvvwwguvwvwvvvwvwguwguvvfvwwvwevwxvwgvvwwgdwwwvwgvewwfvgwgvffwfwwxwwwWTgfvvvvguwwwWfvvwvwvwwwWwxwxwwwggwfuwwwwfgwgvwgwvvvwwvwwvuveudugvgwvffvvwwwvvvggwfwwfwvvuwVwvvwxvwgvggwvuvwwwxwvfvvgwwhwHwgwwwwwwvvwwwgwfwugvvvgVwvwgvwvvwvxwwvwvvvwwfhvwgvvvgvgvwwwwwxwwwvwwwgwugwwWwwvwwwwxwvgxggwwfwxhgwxwgxhWewwwggvwgwxgVhwvwvwwUvdwguwxgwvwxvwwwxwwwwwwhwwxwvgfwwuwgwvwvxwvwwwwwfwwwwxwgxwwxwwggwgWFhwwvwwwwxwxwvvgegwgwwwfwwwvgwvwwwwvvwwwwwwvvwxwwwwwwxuwvwwwwuvfwwwwvwvgwwwwwvfwwvvgwxgwwxwvwwwvwgwwwhwfwwwxwxvwvxvxwwvwwvvwwwwwwvxxxgvwwxvgwwwvvwvwwwwhxwvvwwvwwxwxwwwggwuwxwWxgxwwhwvwxwwvwwvvwxfuwvwwwwxwwvwwwgvhwwwwuwwwwvwwvwvgwwvwwwxwxxwwxvhwwgwwxxwxwxxwwxwwwfwwugwwvxwxwwvwwxwxwwxwwvxxwwxxxwwwwxxwwwwwvwvwxvxwwwwwxwwwwwxwxvwvwggwwwwwwggwwvwwuwwVvgwwwwvgdwufvvgVexvwvvvfgwxvgwfewwvuvwfwuvfwfwfvvwwWwggwewfguguwUvgGTvvwWvfvfwwwuWvfdvfvVwfwuwwxwWvfwhwfWvwwxwxvvwwwfUuvwwfwwvgggvveugggwvxvwvwggfwfwvwwwwvwwfvvvWwwfwwwwwwvvwfffgfvwxvwwwwvvfgwgvHwvwwwguuvfxwggxvvxwwvvgwwwgwwvwgXwwWvwgVwfvufwvxggewwWwwwfwwvvgfgvvgxfwfxxfvgvfwvWgwvwwwwggwwxvwghwwwwvfwxWwwvggwVgXVffwxgwWwwwxfwggvgXHewgwwWgfwfvwvWuwgvwvwvvwggwwfvxwvgVvuwwwhwxvxxxwwwwwwxgwwwvxgwfwwwgwwfwgwwwgWXGFwxwwwwwwwxwhwxxwgwwwwxgwXxgwwxwwwxvwgfwwwvwgvgfwwvxgxfwvgvwvxwxwxwwxgwxxvwwwwxvvutvUvvxwvugwvxvuggxvwvvvwwxwgwxgwwvxwwhXvwwwwWhwwvwwwwwgwwuwwwwgwvxgwgxwxwwwgvwwwwgwwwvgxwxwwwwwwvwxxxvxvwwgwwwvxwvwxwfxXwwxxwwxwxwwxxwhwvHXxwwwwffwfggvxxxxuwfwvfgWvxvwgwwvwwxwwxwxvwhwggwwwwgwwxwwgwxwvwxwxwxwwwghhfvwxhxwvxwhhwwxwxwxwhhwhvvwwwwuvwxxwvwfwxxhgwwwwwwwxwwwwwxxwwxhwgvxwwxwwxwwgwvhwgwwxxwwvxxxgwwvwxxwwxWwxwvwxgtfvwfvvwewuwfgefuwwwvewVvvfwwwwgWVwhxwwwwvxwxgwvwwwuwfWTggvgwgvwwwggfgvgvggghwhwwvxfvvwxxwxwwvvvxhgvvwwgwwwwwvwvvxvxwfhxxwxgwgVuwgwgwwwvwfvwwwwwwxwxgxwwwxxxwxxxyxvwxvwwvgffvefffgvwuwwvwwwwgxxwwfgVuefgwwxwvwghgxwxwxxwxgvwggffvuwwwvwwwwxxhwwxwxvvfgxvwvwwxxwxxwxxwwwwxvfffffwwwwxuvvxvwwvhwwxxxxwxhwwxxfuvgxwvwwwwwxxfxxwwgxvxwxwxwxwhwfxUfdffeevUfFefVfevwgwvgvvxvwgwgwfvwwwvwxvvwwuxwxgVevvgggfgVVwwvwvvwwwgvwwwwwwwxwwwwwwwxxggwxxxgwwfvwwxwwwwwwvxwxwwwxxwwxxxxxxxxwxxxwhgwwwvwxwwwwxwwxwwwhwvwvxxgxwxxxwwwxxxwwxdffutueffuvgwwwgxvvwWWfgfwwwvwvgvwwwvgwwxwwvxevufwvuvwVwghwfwwxxwggfxgwwwwwxxwwxgxwvguwxgvwxwwwwxxvxvxwwwwwwvhxwxwwxxxwwxwxwxwwwwxwxvxhvwxxxxxxufggwwvwfuuwwffvvvwvwwuffwgwwxWuwvvwwwwwwwvwgwwxvwwwwVvvwfwfwwvgwwwwvFTvxwwwvwwwwvwvvvvwwwwgwfgwxwvxwxwfvggVwwwwxxvvwwwwxgxxvxwwwwgxxxvguwhwwwxwxxwwvwxxwxwwwwwxhxvwvhvwfvvwugVvfwvvuwgvwfwgwvwwwuvwwwvwxwgwwxwxxwwxwWevwwwwwwfwwwgvwwwwgvwxwwwxxwwxwxgxwwxhvwfwfwwgvwwwwwxxwwxxwxvvxxwwwxxwvvwwwwxwxwwwyxxwwwwwxwvxxwwwwwxFutfvvfffffwwwegVvgfvxfvfwvhwxvfwvxxvxvwgwvwwxwwwwwfgfvwwwwwwwvwgfVVgwwwxwxxxwwwwwhwgxwwwwwwwwwwgvggwwxwwwgwwwwxhxxxxwvxwwwxxwwxxgwwwwwwwwwxwxxwxxxxxxwxxwhwwvxwxxwdgvvggvveuvgwwgfvvwwvwwxwwgwxwvwwwxxxgwhwwgwwxvwwfvvfwwwwwvwxwVuwxxxxxxwwxwxxwwwvxxxvwgwxvvwxxxxxwwxxwxwxxwwwwwwgwxwxxgwwxxxxwwwxwwxwxvwxwxwhwwfvvwwwgvhvxwxwwfvfwwvwxwwxwwxxwwwwxwgxxgvxgwfvgfwwwgffwwggwfgxwwxwwwwxxgwgwxwxxwwgxwxxwwwwwwxwxwwxxwxxhwxxxwwwwwvgxwwxxwxxwwxwwwxvxyhxywwxxxvxwwwghwfvvwwggwwxvwxwxwxwgvwxwxxxxxwxwwwwxgwgwxvgxwgxyxvwxhgwxxxxxxxxxwwhgxxwwgwvxvwwwwxxwwxxxwwwxxxxxhwxwxxxxxwxwxxhgxxxxxxxxgyxxfvvwgxvgvgvwwfgfwwvgwhxvwwxgwwgvwxwvwgwgxxxxxxffgwwxwhwvxgwfgvwxwxwwxwxxwxxxxwxxwwwxgxwwxwgwxxxhxxhxhxxwxgxwxwhxxxwxxwxgwgwfvvwvwxxwvwwxwhwhhxwxwxxxxwwwxxxxxgwwwwxwwwwxxxxhgxxwhxxwwxxxhxwwwxhwxxxwxxxxxwxwxwxxwxxxxxhtUffgvexwwvgwwgwfvewwwwgWUwwvwfvwvgVvwwwvvfVvvgwwfevwvfvWwVwwuufvfvwwwwfwwgwxwgeVTvvugvgvwwxwxvuwvwvwuwwwwwwvvwgwvwgfwgvfwvwxwwfwgvxgxgwvwwxwwxxgfdvvuuvwwwxwwwwwfwwvgxwwxwvgxwwvhvwxxwxwxuwwwwvxvvffvuwwfgVwwwvVfuvxvvtvVwwwwvfevwvxwwxffuwwwgwwvwwgggvvwwwvwfvfxwwwwxwUwwvwvwwwgguvwgvwvxwvwvvwgwfxgwxgvwxxvwfvewvuwxwwwxfuvfxwwwwhwxfgxxvwxxwwwwxwgxvuuwxwvgwfvxxwewwwwwwwwvxxvwvwxvwvwhxxwwwxvwwxxVvdUeefwwffwewwwfUevwvwwuwvwvgvwUgEvggwwxxveffwvgwhwhwwwwVfevguwffwwwwwwwvvfwwfxwwwxwWwvfVvwvwwwwwvwvwxxvwwxwvxwwvwgvwgwwwwwwwxwWwwwgvggwvwwwwwwxxxwxwwwgwwwgwgfxvwvwxwvwwwwwuwwwwwwgwxwwwxxxwwvwvTVfvwvwwvwvwwedvVwwwwvwwgwwfvfgvxwxwvwggfwufwwxvxxffvfwwwgwwgwwwgvvxxwwgwVvwfwvewwwwxwgwfxvwwxvwwVwwwxwwwwvgxwwwwgwxwwxxxwxwxxxwwggwwxgxxxwvwwwvxxwwxxgvwwwwwwwwxwhxxwxfxxgvgwxwuvwwvvgwwugwvwvvgwgwgvgfvvgwwvxwwwwxwwwwvwvwvefwxwwwvwwwwwfvgwwwwgfwwvwwwwwvwvxwwvwguvvxgwugvwwwxwxvwwvwxvwwwwwxwxgwwwwwxwevgxxwgxxwwwwwxwxvwhwxufwwwwwwwwwxwwxxxvwxxwxxxwxxwwwwwxgvvwwxwwwwwwvwwWfwgwwwwvWvwgxwvwwwwvwxwwvwwxWvgwvwxwwwwgwwwwwxwvXxfwwwwxxwxxxwwwxwwwxxwWxvwvwwwwxfvvxwwwwxwwwwwxxgwhwwxxwwxxwxgwwxwwxwxwvwgwxxxwgxwxhwxxxxwvwwwwwwvvwgvffvgwwvwugvvfuugwvgfxewwwvwgvvgwwgwvgvwxwwgwgfwwggvwgvwgwfwgvgwwwvwwhguxxxwhuvwwwxwwwvxwwwwwxxxwwwxwwwwgwxwwwwwwwhwfwwxwwwwxwwxxwwwwxxxwwwxgwxxwhuxxwxxwxwwwxxwxgxwgwxxwxxhwgwgwwwvwwwwgfgwwwwgvwwvvwwwxwwwwwxvvwwvwwwwxwwhwvwwwxvxwwvwgwxwxwxwwxwxxwhwwwxwwwghxxwwxgwxwwvxwxxxwvxxxvwxwxwxvhwwxwxxwwwxwwxfwxvwfwwwVwuxvvvvwvgfvwuvvfffwwwwwgvxwvwgwhwwgwfwggwwxgxfvwwwvwvwfwwvfwwWuwwgvgwwvgwvffwwgwwwwwgfWwxwwvvwvxwwgwwwwxvgvwxvxgwwwwwgvwxxxwvwwwxxxxxwxvxxwvxwwwwwfwxhwwwxwwwxwwxwwxwwvxvwwvfvwfwvwfwvwwwgffvwwwwwvggvwvwwwwwwgvwwxhghvghwvwfwxwwfgwgwhwwgwgxfggfgwfwwwgwwgxvxwgxgghhwwXxewwvvxwgwwwwxwwwxwwxwwxwxwwgwwwwxwwxxwwwwwwwwxwwwxxxwwvvwwvwwwxxfwfxwvxhhxwxwxxwxxfvwggvfwvgvVwvwfgvgvggwVffgwwwgwxvvwwxwuwwwwwwvwwuwwwwwwwwwfwvwgwgwwxggxwgvwwvwwwxwwwwggwwwwvwwvwfxwwxgwxwwwwvwxxwgwxwwxwwxwwxvgwwgwwgwxwxxwxxwwxwxwwwxhxxwxwxxxhvwwwxxwwwxxxxwxxxwwwgwwvgwwgeuvwfvvvffggwfwWvgwwuevvvwwxwwvwwvwwgwwwwvxwwvxgwwwwgwwhwwwwvwwwwvwgvghxvvvvgvvgvvxwvwwwxwwxgwwwwvwwvxxvwxxxwxxgwwwgvxxxwwxxxxxwxwxxxxwwxwwwxxwxxgxwwwwwwwwwwxwvfewvfwvwvgfwvvwwwvfhVvwuwwvwfwfvgfwwwgwgfgwxxwfuwwvuwvwfwwghvgvwwwvwxwvwggfwvvwvwvwwxwwvXwwvxxxxwwvwvwwvvxwggwgvwwwwxwwwwwwwhgxwvwvwvxvwwwxvggxuxxwgwxwgwgxwwxxxgwxwxwxwwxvwgwwwgwfVfvwwvwwfgwwwwfvwwwwwwwgfevwvwxwwwwwwxgxwwwwxwhfexwwwffwwwwwwwxwwwgvwxwvwfxwvxxgxxwvwwwwhwwhfwwvwwwwwwwwwwxwxxwxwwwwxwxwwwwwwxxwwwxgwxxvxxgwvxxxxwwxwwxxxwxxevuwfwffgfvvwwegfwfxgvvwwwwwvffvvwvwggvvwgwwwwvwwhwgwwwwfgffwwwwwgwwxwgvvwxgwxxgwwwggwxwgwxwgxwxxhxxwwxhwvxwwwvxwgxwxwvwwwgvgxxgwgwwwhxwwgxxxxxxwwxwxuvwwwwwxwhxwxgwxxwhxxhxxxxxwwvgvVwgwfwvwvwvgvvwgxgwwwwwwwwggvwwvvwgwhxwxvgwgxxhwwgxxfvuwxgxwwwgwwxwwxwxwwwwxgxwwwxwwwwxwxwhwwwxxgwxgwwwwwvwwvhwwggwwwwwwwwxxwxxwxxxvwxvxwwwxwwwxwwgxwwxwxxxxxxxwwwwwwgxwwwwwwwwwwwwgvvwwwwwwxwwwwwxwwxwvvwxvxwwwwwwwwxgwxwwwgvwvwgvvwwwwwwxgwwxwwwwwxwwwwwwwxxwxxwxwxwxwwwxxwxxxwxwwwxwvwwgwwwfvwvwwgwwwwxxgwwwwxwwwwwxxwwwwwwwwxwwwvxxwwxxwwxxwxxxxxxwwxxxxxxxxxxxxwwwwwgvwgwvwwwwwgvwwwwwwwvwwxwwvwwwggwxxwwwwgwvwwwxgwwgwxwwwxxxwwxwxwxxwxwwwxwxxwwxxwwwxxwwxxwwxwxxxxxxwwxxwwxxxwxxxxwwwvwwwwwwvvwwwwwwwwwwxwwxwwxwwxwxwwgwxwwwxxwwwxxwxwxxwxxxxxxxxxxxxwwwxxxxwxxufwwwvwWfvwwgwfwgwgwvguwwuhwxwwwwvxwwwguVvhwgwhvxWwexvwvvvgwwwgxgfVwwxwwwvgwwVfuVvxvxwvwwxxgvvWwvWvwwwxxwxgwwxhgwxwxxwxwwxgxwwwxgvggxuxxgwvWxWwwxgwwwxxxxxxwwwxxwggwwxwgvvwvvvxgWwwwwvwwxgwvvvxvxwhvxwwvwwxwxxxxwggwvwwwhwgwwwwxwwegxgwfvxhxxwxvhwgwvgwxwwwgwvwwvvxwvgwvxwwwgwxxvxxwhxxxwhwwhxwxgxwwgxxhgwwwwxxxwxgwwxwxxxgwuxvwwvwufgguVuwuhfgvxxwwgxwwwvxxwwwxwwxxfuVwwxwwwxwwvWwvgvxwwwxwgwvggxxwwwvxxwwwxxvwxxwwwxxwxxxwwwxxxxxwxwwwwxxxhwwxwwxwwxxxwxxwxxxyxvvgvxVfwvxxgwwwwvwhwwwxwxxvxwwwwxwwwgvwxwxxxxwwvgwxxxwwvwwwxxxgwgxxwxgxwxhgxwxwxxxwwxvwxxxxxhwxxwwwwxxxxwxwxxxxwvxxwxvxwuffwfvfwfvtxugfvvvvwvfvwfwwwfuwvvfwwwwuwxwgfxwxwgvegvVCvwfwgwvWfxgwwxwwvvwvwwxvwvvgvvfvvwexwvwxwwwwxxgvwuuuwwwvgwwwvwwwUwwwxwxwwwWwwxwxxxhwgewwvfvwwvxwwwvxgwxxuwwwvxvwwxxwwxwgwxwewwwfvfwvwfwtwfgvwwuVEwwwxfvwwwgwvgvvfwvxuwwxeuwgwwwwwwwwxxwVewwvwgwwWvwwwwwxxwwwwwwwwvfwgwwwwwvwwwwhwvxvxuugvvwwhffxwxvwvvwwwwgxwxWvwwxxvwwxwxxxwwxxxwvffvwwxwwwwwwwwxxwxxvvxwwwwwvxwwwwwxwwgxwgwwwwVvsfdfVuvvvwfwvgvffvvwwfvwxxxvVfvfvfwgwwwwwwfgwwvwgxxwxffVvfffEvvwwxwxwwwgvxvxxwgwvvwwwwgxwwxwwwwvwxvgwwxwwvwvwwwxwxwwwwgvxwgxwgwxxwwxwwxwwwxwxxwxwwvwvvwxvxgxwwwwwvxwwwwxxvfwvxwxwxcfevUuvwgwwxggfvuewewwwwxwwwveevgxwwwwwwxvwgwwWwxvxwxwxwxwwVvvwEvgwwxwwwvwwxwxwgxgwxwwvwxwwxwxxwwwwxxvfwvwwxwwxwwxwvwvwhxwwwwxxwwvwwwwwwwwwxxxwwwwvxwxvwwwwwwxwwvxxvxwvwxwwwwxwxxwwvwvxugVvVvewfwvxuwfwgvwwwgwfwgvwwwwvgwwVvwVvvwvgvwwvwwwwwvwwwwwwfwguwvwxwwvwwWWwvwwwvwvwvvvvwgwvwwwvwwwhxxgggwwgvwwwwwwxwwwfwwwwwxwvwwwxxwxhxwxxwgxxxxwhvwwuwfvwwwwxxwgvwxxwwxwxwxxwxwfwuwvgvwwvgfwvvugfxwvwwwvwxwvwwgwgwwgwwgxvwwwwwwwwwgxhwwwwwgfwwwwwxwfxxwwxwwwxxwwwwgwwgvwxhgvwxxxxggguxxxvwvwvxwwwwwwxxvxwfxwxwwxxxxwhwxwxwwwwwwwwewwwwwhxgxxxwwwxwhwxxwwwwvguuVvwVvewwwwfwwvwfwgwwwwffggvwwvvwgwvvxvgvwgwhvxxwwwfgvggwfwvxvwwvwwwgxwxwwvvvwwwwwwwxxwxwwwghxxwwwwhwfwhwwwwwwvwwwfwwgwhvxwxxwxxwxwxxxwwwxwwxxvwwvwxwxxwgxxwwxwwwxwxxxvxwgxvxxxxxwvfwfuvwefwgvggwgxwwwwwgvvwwwgwwwfvvvuwXufwwwwwgwvwwwwwwwwwxwwwwxvwvwgvgwwfxwxwwvxxwwwxwvxwwwwwxvwwwxggwwxwwwwwwxwxxxhwwwxxxxwwxgxwxwxxwxwxwwwhwwwwxwwxxwwwwvxuwwWgwwgwwfvfvgvggvwwwwewwwwwwxwwwwvwgwwwgwvwwwwvxwwwxwvwxwVwvwfwvvufwxhwwwwwwwwgwuvwwwxwwwwwgvxxgwxxvwxxxwwwwwxxxwwxvwwgwwwwwxwxxwxxxxwxvwwwwxxwxvxxxxxxxxgwwxhggwwvvxvvvgwWwxwwwwvwwwwvwwgwgwwwxxwwwvxhxxwwwwwwwuwvwgvgvxxwxxxxwwxuxxwwvxxxwwxwxxvxxxwwxxhxxxwwwxwxxxwxwxxxxhwxwwwwyyxxxwxxxxxwwgfffvvgvwvfgwvefWWgwwwvwgfwxgxwxwwwwhxwvgwuwvffwwvwwwwwwwwwwwwwhwwxwxxwwxwwxhwwwwwwgwwwwhwwxxxvxwxxwwxwwxxgwxxxwwhwwxxxgxxxxxxhxwwwvvwwgwvxwfwwgxwwxwwwxwxxxwvxgwwxxwgWwgvgwwxwwxxwxxwwxwwxxxhxxxxwxwxwwxwxwwxxxwxxxwxxwxxxwxxxwwxwwxwwxxwwgffwggfwvgvwwgfgvvvvwvwvvwwgwwwvwWwvgvwfwwwgvvvwfwwwwwwgfvvvuvggwwvvvvvwwwwwxwwwgwwWwgvwvwwwwxvvwwhwvwvwvvwwwwwwwwwwvxgxwgwxwwwwwwvwxxwwgxwxxvgwgwwwwxwwwxxxwwwwwxxxxwwwxxwxgwxxxwwwxwuugwggwwwvuvwwvwgxvwvwwwwgggvuwgwwvhwxwwwwwwwxwwvvwvwgwwvxwvwwxxxwwwwxxhxvwwwwvxwxxwwxwxwwfwxwgwwwwxwxxxxwwwwwxwxxwwwwwwwwxwwxxxwxwwwhwwwwxxwwxwxxwxwwwxwxwxggwwwwwwxwwwffwvWvwvffwwvWvwwvwvwwwwxggwfvvwfgvwwwwvvwwhxwwwwwwvhvvwvwwgwxwgvwwwwgxvwvwvgwwgxwwxwhwwxwwgwwxwwwwgwwwwxwhgwxwwwwwxxwwxgxwhxwwwxwwwxwxwxxwwwwxwgxxxvgwwxwxxxhwxxxxhwxxwwxggwguvgwwwvhwvwuwwwwxvwwvxxgwwwwwwwwwwwxwwwwgwvwxwvfwxwwxwxxwwwwwxwwwwwxwwxwxxxxwxxwwwxgwwxwwwwxwwwxgxvwwxwwxxxwwxwxxwxwxxwwxxwwxxxwwfwwwwwwxggwwxwxxxxwxxwwgvvgwvvfuwvfuwwvvwvvvweevvwwuwvfvwwwwevuwegvvffwfvvwvwvwvuvvvuwwwvwwwvwwgvwgvwwuvuwwvwwwwwvwvwvwvwwwgvwvwwvwwwvgwwvghwwVwwwwwwwwwwgwwwxwwxxwgxwwvwwwvxwxxxxwwxxxxxwwwwwvwwwvvvvvwwvvfwvvwvvggwwwwwfvewwwvwwwvgwwwwxwvwwwwggxwwwvwvwwwwvwwwxgwwuxwwwvfgxvwwxwvxxxwwxwxxxxwwwwwwxvwxxwwwxxxxxwxwxxxxwwwxxwwwwxxxxwxwwxxxxxxhwvvggffuwwvvwevvwvfveUvveuvfwvwgwvvvfgwffvwwxfuvwxwwwwwwwxvwgwwwwwwwwfwwwwwvvwgwwwwvwwwxwwxwxwxwwxxwxwwwhwxwxxwwwvwwwxwxwxwxxwxxxwwxwwxwwwxxxwxxxwxwwxxxwwwwxxxxxwwwewwwvvwvvwwvvggwvwwwwwwwwwvgwwwvvxvwwwwwwwgwwwwwwwxwwwwxwwwwwxwxxxwwwwxwxxwwwwxhgwgwxwxwxxwxxxxwwwxwxxxxxwxwxxxxwwxwgwwuggufvvxfuewvggwfwvWgwvwvfvwgvwxgvfgugfwvwxeuufVvgwghgvvwxwwwwgwgfwvwwgwwwwfwvvgfgwggfgwwxvwgwwvwwgxxwfvvwgvwwxwvwggwgxvgfwfxxwwgwgwwwwwggwxwxwvhwwvwxwwggwwwxxwwwxxwgvvvuwwwwxwwwfvwhwwwxxwwggwwwwwwwwwwwxxwfwgwxwgwvhwvfvwgxvxwgfvxwgvwwwvvwvwvfWvfwvgVvvwwxfwffwwgwvgwwwwwwwwvxwwfwwvxvgwgvgfxxhwwwwxwhgwwwwwwwwwwvvvgvghggwwwgxwuwgwwvvxwwwxwfufwwwxwwgxwwWghwwvwxgwwxwwxggwwwxwxxgvxwhwwxxwxWxwwgxhWwwwhwggwwvxxwgxxwwewwgWwvwxwvuwfvfgufgwfvweuwwuWfvfgwggvwwwgwvfgggwwwvvxxwxgvvwfggwwvwwwxhvgvwwgwwwwwwggwvwwwwwxvwwwwwwgwwwvxxwwwxhwhgwwwvxxxwvxwvwgwgwwwwvxvxvxxwwwwxxwxwwwgwwwxwxxwxxhwxvgwwxxxxxwwxvxwWwxwxxwwxxxwxwxwxgxwwwxwxwwvWvfwvwVvvvwwwfvwgwgvwvvgwwwvvgwwggwwwwxvxwvvgwwfwwwxhghwgwgwwwxwvwgvwxhxvxwvwxwuvxwwgwwxxhwxwxxwwxwwxwxvwxgxwwxhxxwxwwgwgwwwwwewwxxxxhxhxwwwgwxwwwxwwwxxwvgxwwfxxwxwxwgxgxwwxxxwwwwewfvvvvffwfwwwwvvwwwvxgvgevfwgvvgvwfwwwwwwwwwvwvuwgfwwxgwwwwvwwwvwwfewwwfwwwvvwwgxwwvgfwvwwwvvgwugwwvxxgvwwwwwxwwvwvwwxwgggxwwwwvwhwxxxxxwwwxwwgwgvxxwwvxxwwxghvgvwvvwwwxwwxwxwgfgwwxwwwwwwxxxwxvwgwwfwvgvgfwwvwwwwwgvwgwwfgfwwwwwxwwgvwggwvxgwvwwwwwwwwxwwwwwwwwwwvwwwvwwwgggwwwwwwwwwwwfvwwgwwvgxxwwwxffxwxxwwxxwwxxwvvvvvwwwwwwwwgwwwwwwwwwgwwwxwwxxwwxwxxwwxghwwxwwhxxwxwwvwxxxxwwxxfhvxwxwxgwwgwxwxxxxxxxvwwvwvwvwvvvfgfwwvfwvevfwfvwwwwgvgfwvgwfggfwwwwwwwgwhvxhwwwxwwwwewvwvwvwvwvvwwwhwvfwwwwwvwgwwwwwwwgwxwwxwwhwvwgwxwwwwwxwwgwgwwxvgwgwhwwhwxxggxgvwwxxxwwxwwxxwwwgwuxwwwwxxwxxvwhwwxwwxwwwvfwxxwvgvfgvvfwwwwfwvwwvwgvwwfwwwwvwwwwwwwxwxwwwwgwwgwwwxwwwwwfxvvvxwwwwwwwwhwwwxwwwxwxxxwxwwwwxwgwxxwwxxwvwwwxvwwxwxwhwxhwgwwwwxxxwwwvvxwxxfwwxwwxwwxvwxwwwxwxwgwwxwwwwhxwxuwUwwwvfwwwvvufftwwwgfwvwfwgwwwvvwwvgvvwwwufgvvwfwvvwwwwwwvwwvfvvvwfvwwwfvwxgGwwvwgfhwguwwvwwvufwwwgwvgwwvwwwwwwwvvwvwwxwwwvwxxwwwwxwwwwwgwwxwwwwgwvwwwxxwwuvwwwxwxwwxfvwxwwwxwwwuhwwxxxxwvvgwxwfwuwuwVuvvgwwwvVfvwwwwWwvwwwwwwvgwvvwwvwxwgvgvwxwxwwwwwgvwwwgwwvwwwwwwwwwfwwwxxgwwgfwwvxwwwwwwhwuwwwvxwvwwuxwwvwwvwwwxxwvwwxwxwwxwxwxwwgxwwxwwwfwwxgxwwwxwwwwxwgwwvxwgxwwxxwwwxwwwxvxwwxxwxwxgvvwwwfwvwvwwvWvfvwevvgfwuwvfvwgwwxwwvgvwwVwegvgwvwwhwwwgvwffwfxuwvwwvgwwfwwgwvxvwwxWgwwuwggvwwgvwwgwwwwxwwwfwwvwwwwwxwwwwwvwwwvxxvxxxvwfwwwwwxxwwwwxxxwvwxwwwwgwwwwwwwxwwgwwxxwwwwwwwxxxuwxwxwxwwwwwxxvvwwwxvvwwvxwUuvvwwgVvwvgWwvuwgwwwwvWxvfvgwwgwhefwwwwxwxwwggvxwfxwwwwwgvwwwwwgxgwwxvxxwwfwwvwwwwxwwvwxwxwwvwwwwxwwwxwwwwxxxwxwvwxwxwwwwwwwxvgwxwxxwwwwgwwxwwvwxxwxxxwwwwwwxxuwfwgwvwWwfewvxfxguVwgwfvwwxwxwwwfgVwfwwfwvfwwwVeewwwxgfxwwwfwwvvvwwwfwxgwvwwwxwwwvfxwvxwwwwwwggwwwwxxwwvwxwgwxwwwwwwxhgfwwxwxxfxfwwfxwwwwxhwwxwwxfxxwwwwwwxxxwxxwfvwwwvgwfvxwgwwxwwvuxwxwxgwwwwfwxwxwwwwxxwwhxwvxhuWwwwvfxwggvwxxwwgxwgwvxxxxwxwgxhuwwxxxwxWwxxvwgxxxwxxfxwxxwwwvwwwxxxxwxxxwwxwwxxwxxwxxwwwuxvgwvwwfwwwUVvvgxgvwwvxvxwwwweuugxggwvwwxwxvwggwghwwwwwwxgvxwhwwwwxxwwwwwwxwxxwwwwvwxwhwwxgwwxwwwwwwhxwwxwxxxwwxxwxwxxxxwwxxwxxxwxxwxwwxxxxxwggwwxfwvwugwwgvxxwxvgvxwgwwxwxwwwwgwxxvwwwwwwwxfwvxxwgxwwxxxxxxxxwwwwxxxxwwwxwwxxwvvwxxxwwxwwwxwvwwwwwwwwxxwhwxvxhwhwwxxxxwxvwxvxwxwwwwgvwwwwwgffwgwwvggwvwvwwhvwgwvgwwwwwwwwwgvxxxwxwxhwvgwwegffvwegwwwvxwwwwwxxwgvwwwvvfwxxvwwwxxxgwxxhwxgwwvwxwwvxwhwwwxwwwwwvvwwwefwxvhuwxgwxvxwwwwwwxvwxwwgvxwgfwgfwwvgxwwwwwwxhwwwwvwwvvwwvxxgfgwxxwwxxxwwvwwxvwwwwwwwvvwxxwxxwwxwxgwgwhvWxxwwwfxwxwwgxxgxwwwwwuvwxwwvxxwfxwwwwxvwwvxxxxxhwwwwghwxgxVxhxwxwxwgxxxhwwgvwgffwvgwwwwwwfgvxwwwwwwhvwwwwwxuxwwxxxwgffvfgwugwgvxxwwxwxuwwxwgwwwwwxwxghxxxxxwxwwxwxxyxxxwwgwwxwxgwwvwxxwxwwVwvgwwhwxwwwxwwgwxxxgvgwwwvxwwwwwwwxwxxvwfgwwvfwxwwxxxxxxxwwxxgxvxgxwxxwxxxxxxxwxwxwxvxxxxxwxxwwxvxxxhwxxfwwvwffwvwfwewwuwwvfwvxwwwwwfvwwvuwwwvvwwwgvwvgfvgwwwwgwfvwwwwwwguwvwvwfWwwwwwwuwwwVuxwwgxwwwwwvwwxxvwwvxgwfxwwwwwxgwvwxxwxwwwvxxxxwwxxxxwwfvwwwxgvxwwxxwwwxxwxxxwxwwxwwxwwuggwwvwgggwgfwwxwwwwfvgfwwfwwggwwwxwwwwwwwwwxwwwwvwvwwWwwwwvvugxwwwwwwwxvgxwvwxwxwvwwwxxwwwwwhwwwfvvwwwwxwxwxxxxwxxxxxxxhghxwxwwwwwwxggxxhgxwwwwwwwvxgxggxwwhvwgwwwvgevvwffwwwvwgwgggwwwwxfwwwvwwvvxxvxvwgwvwxwvwxgwvwwWvwwwwwwxgwvwwxwwgwwwwwwwwxwvgwwvxxwwvwwxwxwwwwxwxwwwxgwwvwgxxwwxxwxwwwwxxxfwxxwvxwwggwxwxwxxxwxwxwgvfgwwwwwwwwwwvwwwwwwhvwgwxgwvwwwwwwwwwwwxwxwwwvwwwuwwwxwvxwwxwgxgxwxwwwxxxxxxwwxhwwwxwwwwxxxxwwwwwwwwxxxwxxwwvwxxwwxxwwxxwwwxwxwwwwwvwxxuvvwgvwwwfwxfwgwexwwVwwwggwvwwvwvwwxwwvvxwwfvwwxwwvxvwwwwvwwfUwwwvwwwewvgVvgxvghwvgxwwwwfwgggwvwwvwwgxvxxghwwwwgwwwxwvwvxwxwxxxxwxwwwxxwwxwxwwwxwxxxwxwwgwwwxwwgwwxxwxwwvwwwxxxxvwxxxxxxwwxwwvwgfwwwvvfvwwfUwwgggvwxxggvwgwwwwwxvwwVwvgwwgwwxxxwwwwwfwvwwgwwxxwgwwwxwwxwwwwxwvxvxgwwwxwwwwgwgxwwwwwwwhhwwwwwwwxwwxvwxgxxwwwxwwxxwvxwwhxwgvvxwxxwxvxxwxwxwwxwwxwfguwvfVwVwvvwuvufUwffgvfvwwhvxfgwwwxxwwwwwgvvwWgxwwvxwvfUvwwvggvgwxwwgwwfxwgWwhwwwwvwwxvxgwxwwxwghwvxxwxxwwvwwxvvwwwwWwwwwwXxwwxgwwwwxxhwwwwgxxxgxvvwwwwxwxvwwwwwxwhvhwwxwxhxxxxwxxwxxwwwwvgwvwfgvwwxwwWvugwwWwewwwXwwggwwgvwwwwwxxvwfwggvwwwxVwxgwvwwxvwwxwwvxwxwhwfwgxggvwwgwggwWwvxxfxxgwwwwwxwxwvwwxwwxgxwvwxwgxxxwwwxxwwwxxwxxxxwwxwwxxwwxwhxwvxwwwxwxwwxwwwxgwxxxxgxvwfvvwvwgvvfffwvvwgfwvguvgwfvgvtwdggvwhwwvvxuwwewfgwvvwvvwwfvvwgdfwvfvwuvgwwwfvwwwwwwWwwgwgvvgwwfVvgwwwwffvwgwwwvwgvwwvwwvgwgwwwwwwxwxwxvvvwwwvxwxwvwxwgvxvwvwwwxwwwwwwxwgxxwxxgwfwwwwwhgwwwxxvwvwvwwfwwwwwvvfvwwggvgvggfgvvwwfWuguwugewgvvwwwVwvvfvfgfvwwXvgwwwvwwwwwvgxwvfwxhwwhwdvwvwfwvevxwxwwwwwwwfxwfwwwWwgwwwgwwvwwxxxwvgwvwwvwfhxwvvwwgwxhwwxvwwggwggwhwxwwwwfxwwxwwwxwfxwwxwwgwvwwwwwxXwwwxxwxwvwxgwwvvvVefwwvwvwvwwfvvwgvfwwwwgwxvgvevUfwuxwfvuwwgvguvvvvgwwvvVwvvffvwwwwgvwgvwwwgwwwwxvvgxfwvgwwwvwwxwwwgxwvwgxwwwwwxwgvwwwwxwvwxwxwwxwwvwwwvxwwxgxwwwxgwxxwxvxxwwwwhxwxgxxxwxgfwgwgxgwwxxwxxwxwwxwwgwfuvvvVwwhvwvfgvvGvwwwwgwftwwugvwwgwwxeuwutVwgwfwwgwwfgwwugXwxwwwwgwwxwuwwghwwgwewwgwwwwvgwwxwwxwwwwwugwxwwxfwxwgxwwwwwwwwvwwwxxwwwgwwwwwgxvxwxgxwwwxwgxgxgwwwxvwwxwwwwvxwxgwwwhxvvvgwwvwgvvwwxwwxwfgwvwwgfwgwwwfwwwwwgwvvwwgfvvvgfwwwwvwwWwwxwwgfvwvgwvwfwvwfvwwgwvgfuvwxgvwxwxwxvwwxwwwwwvvxxxxwwwxxwwxvwxwwwwvgwxwxwvxwwxwwxwwggvwxwwxgVwxvwvwwwwvvwvwwwxxfvwwxwxxgxxwwwgwwwwfwvxxvwvwgvxxxxwwwuwwxgxwwwwwxxwwwxxxxxwwwxwwxvxwwxwxxxwxwxxwwwwgvxhwwwwgvwfffwwgxvwvgwwvwxwwxgvvgwvxxwwgvwwwwwxwwwVwwvxxwwwwvwvwvwwxwxwwwwxwxxxxxwvxxwxxxxwxwwwxxxxwxwwvxwxwwwxxwxwxwxxwwgvwwwwwvwwwvxwwvvwvwxxwwvwxvwvvwwwxxwggwwxwwwwwvwwwxxwvwwwxxxwwwwwxwxwxxxxxxxwwxwxxxxwwwxwwwwxwwwxxxxwxwwwxxxvxwhwvwgxwxvfgwwwgggfggvvVttfxvwwwwvgfwwwggfvvUwxwwwxxwwgwfvwxwwvvwwwwwwgwfxwwgxwgwwvwwwwwvwwwhvxxhwwxvwwwwwwxxwwxxfvvUxxxxxwwxwxwxxwwwvwwwxwxxxxxwxwwxwxwwxxhhwwwxwwvwwwwwwwwwwggfgvfwwvwgwxwwwwvwwwxvwxgwwwvwxxxwgxvgwwwguwwwgwxwxwVxwwwwfwfwwwwxwvwhwxfxxwwwwwwxxxxxwwwwwwgxxwxwwxwwvxxxwxxwxxwfxxxwxxxxxwxxxwwgxxghxwxxwgwxVevfxggvvetdfgvwxvgwvwwwgxwwwvwwgvwwwgwwwxwfwwwxwwvvwwwwwwwwwhwgwfxxwxxwgwxwwwwvxwwwgxwxwxwxxwwgxxwwxgxxwxhwxxwxxwxxwxwwxxxxxxxxwwxxxxxxwhhwgvxxwvwwwvvwxxwwwgvvwwgwfvwxxwwwxhwwwxvxhxwwgwwwwwwwvuwwxwxxwhwwwwwxwxgvxxwwxwwhwwxxwxwxxxxwxxwxwxxxxwgxwxwwwxxwwwwxwxvwxxxwxxwxxxxxwwxgvwgxvxvwfgxvxwfwwwxwwwuxwvfwwwxvwfgxwxwwwxgvwwvewwfxgwwwvwwwwwwwvwfwwvVwgwxggwxwwwgwwgxvxwwfwwfwvwwfwwwxwxwwfwwxwwwwxwwxwvwfxgwvwwxxxwxwwwwvgxwgvwwgwxwgxvxwwwvwwfwwxwwgwwwwuwgwwgvvwwxwwxgvuvgwxwfwwwwxxwxwwwwwwgwxxVvwwwwwwxxwwwvgxxVwxwwwwwwwwxwwuwwgwvwwwxxwwvwxxwxxxwwxxxxxxvwxwwwwxwwgwxxVwxxwwxxwxwgwxwxwwxwwuxvwfwwfwvgwgvvvwwwwvwxxwvfwwgwwwxwvwwwwwxwxwvfwwvVwwxwwwxwwwwxwwgwwwwwxxwxwxwxxwwwgwxgwxxxxwwgwwwwwwwxxxwwwwxxgwxwxxxwxwxwxxxvwfgwwwwvgvuvwwvgwwxxwxwvwwxwxwxxxvgxwwxxxwxwxgxwxxwwwwxwwgxxVxwwwwwxwxwwxxwwwgwwxgwwxwxxxxwxwxxxwxxxwxwwxwxwxwwwxwwwxvxxwwwxwwxvxwxwwwwxwwvwvwxvgwwxwwvwgvxwwfwfVuufvgfwwwgfwwfwvxwwxwvwwwwxwvwxwwwwgwvxxwvggfwwwwwwwwwwwxxwxvxwwxwxxvwwwwwwwfwwwfwwfxhxxgwwwwhhxwwwwwvxxxxwwxwwxwwhxwwwgwwwxwwwvvxwvwwxxxvvxwwwwwwxvggvwxgwwwwwwwwxwwwwxwgwgggwwwwhwvwxwwwfwvwxwxvxxwhwwxwwwwxxxxwwgxxwxxxxxxgvwweUvwwwwwwxvwvgvvvwxwwxwwwweewvwwgfwxxwwwxwxwwwxwwvvwxfwwwvwvxxvwwwxwgwxxwwwwwwwxwwwwwwwwwwwwxwwxwxwwwwxwwxwwwxxxwxxxxxxxxxxvwwwwwvvwwxwgxgvwwxvvwxfwwwwvwwxwwwvxwwxxwvvwgxwxxxwxxxxxxwwxxxxwfwxxwwxwxxwwwxxxwwxxgwxxxxwxxwxxxgxxwxxxwwwxxwwwxwxwvwxwxwxwwgwwwWwfwvxwUgffhvwwgxgwwvwwEuefwwxwwxwwwfwxwwexWxwwwwwwvwxwwwwwwwwwxwwgvwvwwxxwwwxvxwxwwwwwwUggfwwhxwwxwxwxxxxxwwxxwxxwwwwwwxhxxxgwxxxwwXwwwxwwwvgwwvvgwvxxxgwwgwwwwwxwfvwwxgwwxwwwhvgxwxfwwwwwwwwwwxxgwxxvwVvwxwwxwwxvwxgxxwxxwwwwwwxxxwwwxxxxwwwxxwwxxxwwwwfxxwxxxxxxxxxwxwxwxwxxwxwvxwwfgwvvwvwwwwTuefgwwhxvwxffvwxwxwwxuxwwwxwwwwwwwxwxwvwwvxwwxwwwwxxwxwwuxxxxxxwxxwxwxxxwxxxwxwwxxwxwwxxwxxvwxxwxxxxwwxxxvwwvwvwwwxxfwwgwvwvxgwwvxxuwxwwwwwwvwwxxwwwxwwevwwwwwxgwwwwxwxxxwwxxxwxwwxwwxvxxxxwwxxxwwxxxxwwxxxxxxwwwwxxwwxxuwvgwwwwwwwvwvvwxwvgvwggwwvvwvwwwwxwxwwwwwxfuvwvveevfvwwwxveVwwwwwvvwxxwvffvwgvvxxxwwwxxwwgvvxwwwvwxwwfwwwwwwwvwwwwxwxgxxvgwgvwwwwvwxwxxwvgwxwxwwxxxwvwvvgfwfgvvwggwwxwwfWvwwvwwxxxxfffuwwwwvvfvwwwvwxxwwwvvxwxwxxwgwwxxwxgWfvwwwwxxxxwxvwwxwxxxxwwvvxxwwwgwwgwvxxwhwxxwxwwwxwwwwwevuvewgvffwwwwwvwvfwvwwwwxwxvvvwxwxvvxxeefffwgevwgwwvufvxfgwwxwxvvvwwwwvwwxvxxwwvwxwvwwgwwfvwwwwwwhwwxwxxxvvvwwxxxwwxxwxxxwxvvvwvxwwwwwwwxwxxxxwwwxxwxxegfgwwwwwxxgxvwxxxwwxwwhxxwxxwxwwxxvefvxgwwwwwxxxwvgwwwxwwwwxxwwwgwxwwxgwwwxwwffvwwxxxxwwxwwwxwxxxxxwwwxvwvvwwwwwwwxxxvxwwwxvwwwxugfgwfwfwvvxvwgwfxgfwvfvwwxwwwwxwwwXvwwWwwwwfvffwfvwvvwgvuwggvwwhwvgwugwwgwvggwwwwgwgwgefwvhwwwwwwvxxwggwvgvgffgvwwwxxwhxwxwwwxwwxgxvxxwxwvwwwwvxwvfWwxwguwxhwxxwwwwwwwxxwxxxwxxwxwwwvwwvgvvWvwwwgfvxwwxgwxxwgwgvwwxxhwwgwxwvvwhwxwgvvvgwvwvgxxwxwvwxxvwxwwwxgggwgvwwhxxxwwwwwxxxwxwxxwfevvxwwgwwwwwxxwxxxxxxxxxxwxxwxxxxxgfuwwxwxwxxxggwwwhgwxggwwwxxxxxwxvvuxvwvwwggwwvwvfwwvuxvvwvvxwwguxwwwwwxxwxxhwvwxwwvwwWvwgvvvvwfffvvwxwwwxwwwwwwwwwgxwwgwggvwwwwxwxwwwxxwwuwwwgwwgwvgwvwvvuxwvwxgxgfvwwwwwxxwxxxwxwwhxwfxxxfvvwwgfwwwwwgwwwwvwgwvxwwwxwxxxxggxwvwwwwuhggvvwgvwwwgwgwwxvwfxwxwvwxgwwvvwxwwxxwwwxwvvwwwwvwxwwwwwwwwwwwwwgxwxwwwwxxxwghwwghwwwxwwxfvgxvxvwwxwwxgwvgwwwwwxwwwwwwxwwhwxxwxwxwwxwgvxwwxvwxwxxwvwwhwwxxwxxxxwwxxxwxwvxwxhvwwwxgwvgwvwwwwxwwwwvxffwvwwxgwgwxwxwxxwwwgwwxgxvwwgevuuwfwVewwwwwfwfgwwfwgwwvwhwxwwwwwwwxwwwxwwwxwwwwgvvvwxxxgwxwwwvwxwwxxxxwvxwwwwwwvwxwwwwwvwxxwwwxxxwwvxxwvwwwwfwfwgwxwgwwwwfwwxwxwxvxwwxxxxwfwwxwwwvwvvWwfuwxwwwxwgwwwxxwxxwxwxxxxxwxxxxxxwxwwwxwgwhwxwxwwxxxyyxwxwwwwhwvwwwwgvwwwxxvwxgvxxxxxxxwxxwwwwwfugwvfwwgwfwwgfwfxwxxwxxwwxwxwxxwwwwwwxWwfufWfufwvwvxvgfhwvgvxwwwwwxxxxxxwwxwwwwwwxxfwvvwxwwwgxwxxwxxxwxxwxxwgwwwxxxwhwwvxxwhxwguwxwxxxxxxxvwwffwwvwwwwwxwxwxxxwwwxwxwwwhxwxwwgvvwwxxvxwwxxxxwwwwxwwxxwxwwxxgwxwwxwfwwxwxwxxxxwwxxhxxxwygwxwxxwwxwxwxwwwxwxxxwuvgwwwwwwvwhxxwwwwwwgwwwgfwvwwwhwwwxwwxvwgwwvwwwvwxvvwwvgvwwwvvwwwgffwwvwwwwgwwwwfwfVvuwwvgvwwxwwwhwwvwxwggxwvwwwvwxgwxxwvvwxgxwxvxgwwxxwwxxwwwxwxxxxxwwwveuvwwwwwwwwwwgxwwxxxwwwxwwwxwxxwxwwwxxvwwgwvwwwwwwvwwwgvvwfvwxwwgwwwwwxwxxwwwwxhwgfvwvwvwvgwgwwwxxwxwwwwwvwwwwgwwxxxwxvwwwxhxwwwgwwvwwwwwxwxwvwxwwhxxwwvgxwwxxxwhwxwxxxwvwwxwwxwwxwwxwwwgxwwvxwxxxwhxwwvfwwgggWvuxwvwvWevvvwwwwwwgxgWvguwwxgwxgwwwwxwxwwxwwgfvfvugwwwgwwgwwvfvwgvfwwgwwfvwvwvwwwwgwxwwvwwwwwwwgwvWwfWhxuufgxwwwxwgwWwfWwWwgxxgwxwxxwxwgvwgvWwxwwxxvxwwwwxwxxxwwxxwwfxxxxwwwwxxwgfwvxhvwgwxwvwvwxwwwxhwwwgwxxxwxxwgwwxwxgwwxhwwvvwwvwwvxxwwwwwwwwgxxwxgwwwwgvwxwwwxxggwwwxxxgxfvwgxghxwxwvwwxxwwvwfwwxgggxxgwwwxxxxxwxxwxgwwwgwxxwxgxgwwxwxwhvwhxxxwxxuwwwwvwuwwwwwwwfvvWwwvwvfvvwvvuxwwwgvvwwwwvvwWvwvwwwwvwvvwgwvuwvVdwwvwgvevvwvuffvVxvvuvwwwwgewvvvwwgwvwwwwwfgvvwvwwwwvwwvfvuffwwuwuvwxwwwwwwxxwwwwwxxwxwxwwwwvfvwvvwxwvfvvxwwwwwwwwwgvwxwxwxxwwxwwwwxxwwwwvwgvwwwvfvwwfvvwvwwegwvxwgvwwwwwvwxwwwwwwxwwwvwwxwwwvvxwgwwwvgvwfwwwwwhgwwvwwwwxxxwxwwxwxxxwwggwxxwgwwwwxwwxwwwwwgwwwwxwwxxhhwwwxhgxxxvxwwgwwgxwwwwwwwxhgwwwxxxwxxwxwxwxwwvgvwvxwwwwvvwwgugwwwUddwhvwvwwvvwwwwxxgffvxwgxwgwxwvvwvvwevvwgwwUddgwvvvwwWwvvwgvwwwwwwxxwwwwxwwwwwwwxwwwxwxwwwwwvfwvwwwwwwxgwvwwhvvwvxwwxwxxhgwwhwgxxxwwxgxvwvwwwxxwvwwhvxwxxxxwxwxxwxhgxwxxxxwxwvuwwvvwwfvwxxfffvvvwgwwwwwwwwwwwwwwxwxxxwwwwwxwxwwwvwwwxwhwvwwxwwgwvwvvwwvwwwwxgwwwwwwwwwxWvwvwwwxwxxwvwgxwwxwxxxxxxwxwwxwwxXxxxwhwxxxwghwwgxxwwxxxhvwxwxwvgfvxwwgwvwwwxvvgvxwfwvwfvgfxgvxgwhwwwwwgggxhwgvvgwgfvgWwvvwwwgvwwvggvtfgggdvwwwgvwgwwvwxwwwfWwwwwvwwwwxvwwwwfwwxwggwtxwwgwvwxxvxwxxxxgxvxxwxwwxxxwgwwwwwxwxwwwwfGwfwwwwxwwwvvxxxvxwwxxxxwxxxwwxvwwwgwggGvwwvwwwvwwwwvvwwwwxwwwhxwWwvxxxwwwwxwwwuwvfxuwwxwwwxwwvvxwxvwgvwwwwwxwwwwxgwxxwwxxgxwwefwwwxvwxxwwwvwhxwwwwwvxxxxwwxxxxxxwxxwxgWvwwwxxwxxwgwwwgxwwxxxxgwgwwgxwwwwvvwwxwwvuwvwwWWwwvwgwvxxwwgwwwwwxgwwufwwWgwwwgwxvggwvwwwgvvxgWguugvWWuvwwwgwwwvwwxxxwwwwwwwxwwxwwvxgwhwwwxwgvgfwxxxwxxxxwwwwwgxwxvwxxhwewwwXhwwxwwvwxgwwwwgwxwwxxwvxwwhhggwgxwvxwwxxwvhwxwxwwgvwwvwgvwwwgvwwwwwwuwwgwwxxxwwwxvwwhxwwwxwxvwwgwvwwxwxxvggwwxwwwwwxWwfxxxvwwwxxwwxxwxwwxwwxwvwxwxwxwwgwhgxxxgxgvwwwwwxxxxwxwwwxwwwxxwxvvwvwxwwwwwwwxxxxwwwwhwwxwwwxhwwxdwffwgwwwwxwwvwvwwvwwvggwwgwwwwwvwWwvwwwvwwwwwwxvvwvwfwwwfvvwfwwwvwvwwvgvdwwwvgvwvwwwgwwwggwfvwgwgwwwwgxwvvxgxwvxwwwwggwwwwxwwxwwwWxwxxwwvxxwwvwwvwwvvwvdvxwwwwxwxxxvwwwwwwgwxxxvxgvxwwxvwwxwwwwxwvvwvgvwwwwwwwvwwwwwgwwvwxwwvxwxwhwwwwxvwgwvwwwwwgfwwgwwvvxwxwwwvxxgwwwgwwwxvxwfwwwxxxxwxxwxwwwfwwfwxhwgwwwvwwwwwxwgwhxxxwwxxwxxxxwxwxwwwwgwxvxxwwwwwxwwgwwxwwxwwwwxwxxwxxxxvwvwwgdWWfvwvwwvVwwwwWwvwwxwWWvwwvwwwxwxxggwwwwwxwwxxgffvfwfvwwwwvwvwWwfwwwugvwwvxwwwwfwwwgwxxwxwvxwvxwwwwgwwdvggWwVgwxgVwxxxxWghwhwWwVgvwxxwxxgwxxwxxwxgwgwvwwwxwxwxxvwWxwxwwxwgxwwxwwwxxxxxxxwwxgfevwwwvwwxxwgwwggwwwvwwwxxgwwxxwxxvwwgwwwwxwwxvwwvvvgwwwgvwxwvwvwhxwwwwwwxvwwxwgwxgwwvhwwxwwxwwwxxewgwwwwxwxwwwwwgwwxxxgxvgwxwwxwxwxxxxwxxwwxxxxwwwwxwxxwwxwwwwwvxxwxvwwvwwwwwxgwxxxwwxxewxgxwwfgggvvwgvwvwwwxwwwwwwwwwwfvxwgwwwvwwxwfwwvwgxvvxVeexhxwvvwxggexwwwwvgggwvgxxwgxwwxwwgxwxgxwwwwggwwwvuwvwwwxwwwwxgxwwwwwwxxwgvvxxwxgvwwwxxxfwwwxxxgwfwwwwwxxwgfxhvwwvwvgwxxwxxwxgwxwegvxwxwgvvwgwfxgwxvwxxxwwwwxwwxggwwwwvgwuwgxwwwxxwxxwwvxwwgwwwvxwwxwxwxwvwwvgvxvgwvwvvwvwvwvwwxwwxwfvwgwwfwggwxgwVvwwVgvewgwvwxwxvvxxxwvvvwwvwwxwvwxxxwwvwgwxfwwvgvfwxvwxxwwwwwgwwwwwwwxxwxfwvfwwwxwwxghwgwxxwxxxwgvxxxvwvwxwwwxgwwwgwgwxhwgwwxwvwxxgxxgwvwwvwwwvwwxxxwxwxwxgvxwxwwxvwwwxxwvwvxxwwxwwvxxxxxxwwwxxwwgwgwwwxxfxwxxxwxwxwwgwwwxwhwgwwwxgwvxhvwwxwxwwwwwwxwwwwwwhwxvwxvwfxgfwgwvwgwvgwxvwxwwvwgxwwxwwgwxxvwgxwxgxxwwwxwwwwwxxwwwgxxxxxhxxwwwxwwgxxxwxvxxxwxwxwhfwwwwxhwxwwwwwwwgxxxhxwwxwwxxhxxxxgwxxwxwgwwwggwvwxxwwxhhxvwxxwxxxxwwxwxhwxwgwwwwxwgwxxwwxxyxwxxxxwxwwxxxwxxwxxwxxxxwxwxxfhvxwwhwwwwvvwvhwwxxxwwxwhwwwxxxxwwgxvwwwwggwgxgwfwggxxwxwvwwwwwvwgwxxwwwxxhvwwxgxwwhxxxwgwwwxxwwgxxxxxwwwxxxxxhxwwwxxxxwhwxxxvwwxxxxvxxwxwwwwxxxghwvxhwhxgwwxxxxxxxxwwwgwvwwwwxwwvxgxwxhxxgwwxwxxwvwxhxwxwxxwhxxxwxwwgvvwxxxxxxxxxwwwxwwwxxhhxwxxyuwwufvuwwwvwvwvwwwxxgwhgwwxwvxwwwfxwgwvwxxwwwwwwwwvwgfdvfgewWwuvxwgxxgvxxxxwvwwwvvgwvgwwxwgxwvxxwxxxwwvvwvggvwwwwwxxxwwxxvgwefwwxvxxwxxwxxxwwvvwvgwwwvxwxwxvwwwxwwxhxxwwxwwwxvvuwvwwuwwwwwwvfvwwwugwwxxxxgwgwvwwxwxggxxwwxxxwxwvwwwwuwgfwwwxxgvwxhwwxxxgwwfwwvxgxwwwwxwxwhwwwwWvvwwxwxwwwxwxwxgwxxhxxwxwwhwxfgwvwwwxwwxhxwxgwwxwwwxwwwfxxxwxxfvvvfgwggfVwwwwwwwwwwwxxwwwwwhvhxwwwxxwwwfwWVwevuwwwxwgwxxwwxxwwxwgguuwwwwwwwwwxwwwxwwggwwfvguwgvwxwgwwwwwwwwwwxgwwwwwwvwxwwwwxwwvvwwwwvwwgfWxwfxgwfxwxwwwxgxxxxwvxxxxxwwwwugwwvwfwvxwxgvwgwwxhxWwwxwwwwwwwfwhwwxwhxxgxvwvhwwwvwfwwwxwwwvxwhwgxxwwhxwwwwwxxwwxxwwWwxwgxwggwwwwgwvwwxxhwxggxwxxvwhxwxxxhwxwgvwwxxwvxwxggwgwwxwwwwwwwxxxwxwvxwxxxvxwxuwwvvwgvvvfvwfwvwwhfvffwfwvwvggvwvxwvwwwwwwwwxwwwvwwwxwxwwggvwwVcwvfvffvffvfvvgvwgfvxvgvvwwvwfvwvvvwgvwwxfwgwwwhwxwgvgwwwvwvwfgwggwwwwvwgwwxwwvwwWuvvwwwwxwwxxxhxxwvvwfvgwwvwwwfvxgggwwwwvgwwWuxhwwwxxwwxxxwfwgwfvfvvvvvvwhvVevwvwvwvwwwwwgwvfvxwwwwvwwgwwwwwxwxfvfvwvgvgwwgwwvwvwxwwwxwwvwvwvwwwwwfwvgvgggwwvwxwgxgwwwxwwwwgwwxwwwvwwwwwwxwxwxwwwxwgxgwxvxvwxwxwxwxgwgwwvwwwvvwvwwwgwwvgvxvxvwxwwwwwwxxhvwxwgxwxwxgwwwwfgfwgvfwwgtwUuevfwfvwvhVuvwwwwwvvvwvgwwwvgvxgwwvwwwwggxxwwwvvvwfffgUuevvwvGggwwgwwwwwwwgwggwwwwvwwwwwwxvgwwwwwwvwwwfwgwvgwwvwwwwwwwgvgwvgxwwxgxfwvwxxhwxwwwgxgxwgwwxxwhwwwgwvvwwwvwwwhwfwwwwwwwwwwxxwwhvwxwxvvvvfvgVuvwwwwwvwvwwwxtwwggvwwwwwwwxvgxwwwwwwwwwwxxxwhwwwvgvwfgvwwwwwwgwgwwwxvwvwgvwwwGvwwvhwwwvwwxwxwxwwxxwwwwxwvxwhxxxwwwwxgxxxgxhwgxwxwwxwxwgxggwwhxhwwwxwxwwxwgwwwxhgwwwwwhvvxvxxwwwxwtfggwvxgvvxvgggggxvwgwgggwwfvwxvfwwwgwfgfgwwxgwwwwgwvwfvevvwvxgdxvgfwvwggvwvwwwwxwwgwwgvxwwvgxwwxxggwwwWwwwxWwgwxwxwwxwwwxfwgwxwwwvgwwxwfwwfhwhxwwxfwgwvwwfuwvwwgwwwwxwwgxwxwwwwwwwgxwwhxxxwgxwgggxvwwwfwggvxvfwwwxwwuwxwvvwwwwgwwvwwvxwwxwxwwxwgwwwvwguvhwvwfgwwwwgwwhxwwwxwhwvxwxwwxxwwgwxwWxxwwxggxwwxwwWwwxxwvwxxxgwwxwwwwwxwwwwxxwhxxxhwxwwvwwxwevwxwwwwxwwwxgwwwgxxwhxxxwhxxwxwxxwgxwwxwwvvgFfwwWxgvwfFfwwvgwvwwvxwgUgvwxwwwwxwgvvwxxvxxwfWggfxgwvwvwgwvwggwwwwwxxwwwwgfgfvxwxwxwwwwwwxgwwwwwwwvwwwFwfggwuxwxWwFwfgwwwwwwwwxwuvgWwwwwxwwxvwwxwxwxxWwvwwwgwwwgwwWwxxwwgwwwwgxwxwxxwxxwwWVwwwwwwwwWwvwwxxwwhvxwwwgvwwvxwwxwwxwwwxxxwxxxwwvwgggfvwgwggwhgwxxggghwgwwwvgwxwwxwxwwwwxxXxxwxxwwxVwwfwwxwwxwwwxwxxxxwxgwvwxxxxwwxwwxxwwwwwwgwwwwxwwwhwwxxWwwwwwwxxxwwwwxwxweffwuegvvwwvwgvgwvwgwgwwwvgvwwgvxvfuwugwwfwvwvgfwfvwwgvvwwxwwvvgwvefuvwvvVvuwwgvgffvvwvvwwwwvvVdwUfeevvuwvvuuwgvvvwxwxwwwwfvvxvfuwwwfwwvvvwwgvwgxxxwwgwwfvwvgwwvwwxfwgvwxvxxxxgxwwvwfgveVvwffvfvxwvvxxwwgwfvffwwxfwxwhxxvxvwwxvfwxwwvvgwvvvgfwwgfvVfvgvwfgvwwwwwvwvwvvvwgwvwvwxUvvwwvvgvwgwwwwwvwwwgwfwggvwwwwwfwvxuvewwwwxwffwwggwgfgxwwwxwvxwwVwWfwgxwwwwvwwgwwggwxgvvvwwwWwfwvgwWwgwvxwwwxwwgxwxwwvwwxgwwwwfxwxwvwwwWxwwwwgxwfggwxgwfwwwwwwwwxwgwghxwxwxwwwwgxwwvvvwvfuvuwgwffvfwegvfwwwwevgvwwgxggDuufwwwwfvwwwhwwxxwwwwhvufwDuefffwwvvwvfwwwwgwfwgwwgVvuvwvvWwwvwwwwxwwgwwgvwxxwwvwwwvwgwgwwvvwgwfvwwwgvwxghxxgWvwvwfwwwxwgwxwwwvgwfwgwWgWgvwwevvwwxwwwwxgwgwggwhwvwwwgwwwwwWwwxxvxgwwwvvwffvfguxwxfuwvvvwfffgvwwwUwwvvxxgvxgwgfwwgvwwxxwffgwvwwwwfxwgwfwvwgwgxuwwxwxvwgwwfggwwwwgxWfwWggwwwxvwwgwvwwhxgxwvwxwgwxwwggwguwwwwvhgxwxxxhxwgwwgwwxwwwWwwxwwvwwwwxhwwwwxwwwxvwwwwxwwVwgxWghxwwxwwgxxuwwvwwwwwvwxwvwwvwvwwwwwxxwvvgwwgxvvfwwfwwwwfwvxwvwwwwvwwvwwwwETvvvgwuuwwwwwvvfwwfwwvfggfvvfwwvvwwvwwwgwwvwwwxwgwwxwwwggfwwvwfwfxvwwvxxwxfvwxwwwxwwwxfwggfxxwwuuwwwgxxxwwfwwvwwwwwxwwwxwwwxgwxwxwwgwwwgvwgwwwgwwwwwfxxxwvwwwwwfwwwxvwwvwwwxvwgxxxwvwwwwwwwwgvvvxxwwwgwwwwwwwxwvwvxxwwxwwwwwwxgvhwvwwvwwwwwwwwxwwwfwvwwwwwxwhxxgwwxxwxwwxxwwwwwwwwwwwwwxwwwwwwgxwxxwwvxwwxxwwxwwxwwxxwvvvvwwvfwwfvwwwggwwwwfwwgwwgVefuuwwvvxxxUuuwvxgxwwwfwwwwvwfvwwxxwfvvfwwwwwwwxwUuuwwgvvwwwxxwxgvXwvvwwfxgvfwwwwvwhfwwgwwgvxwwwgwvvwwwxxxxxxvwwwxxwgxxwxxgxfwvxwgxwwxwwwxvgxgxxwvwwxxxwxxxxwxvwwwwvwwwwfvxwwwwwfwwxxxwwxwwfuuwxwwwxxvwvwwwwwwwwwwwwxwwxwgwvwwwwwgxwxwwgxwwwwxvwwvvwwVevwwwvvxfwgwwxxxxvfvgxxxwwwxwxwwxxxxxxhxwxwxxxgwgxxxwwwhgwwwwwxxxwwwwwwxvxvwxfxwvvwvwwgggwfwxgwguxwggwwgwgwvxgvxvwgwgvfxvgvwvwfxvwwwwwfvwwgfwvgfgwfgVevgwfGvwxhgvwwgwvvvgwgwfhgwwwwwvxggwxxxhwwwwwwxgwfxgfgwxwgvvwvwfwwhhwxwxwffxwwhwxwwvgxxwxxxxwwxvwvxwwhxwwgxwwhwxxfxxwwwhwxwxwwwhgxxwwxxwvwwwxwwgxwxwWggwwwwvwxwgvxwwfwwxgwwxfxxfwxhxwwwxwgxxgwxgwgxwwwwwwXxwwwxgwxwgvwwxwvxxvfwwwwxwwwwwwwhxwwwxwgwxwgxwxwxwwxhxwxggxwgwxwxxxxwwwxwxxwxwwxxxwxxxwwxxxwwwxwxwxwwxxvwwxxxxxxxxwxgvwwgwwfgwuwwgfwfwggwwgvwwwwgwxvxvvwxwwwvwhggxwwxgvvwxvwwxvwgwwvvwWffvwhhgwgwxgwwvwfhwwxwgwwfwwgwwwxxwwgfwghwwxxwfwvwwvwxwxwgfgxgxwxxvxxvvxxhhxxwxwwwxggxxhxhwxwwxxxwxwhxwgxhwxxgwgxxxwwvxxxxxwwwhxxxhxwhxfwwhWwxvWwwvvwfwgvwxxgwxxxxvwwxwxwwwxhwwhgxgwwwgwwxxvwwwxxvwwwgwwwxwgxxwwxhxwwwvwxxhxwxwwwwwxwxwxxxwxxxxwxwxwwwwxgwwxxwxxvxwwxwwhgwxxxhvxwwwwxwxxwwhwwxxxxxwxxxwwxgugUwgwuwgvvvhvfguxwwvvxgwfwwfvuwvwwvxwfvwvggvhwgwvwxwffewwvfffwVfgwwwgwgwwuggwwggfgfgwufvuwvfgghfwfxwuwwvgwvxuwgwwgwwwxgwwvwvhwwxxxffguwwvwwwvwwwwgwgwwwwggffvuvfxgwggwwwwugxwhwwxwwfvfWwwwwwxwvhwgwgvggwvvvwvgewugwxwgVfxwgwWwwwwxfwvWvwgvgvwwwvvwwwwwvxwwwwwwgvvgwwwgwwwwxwxfwwuxhgfwfggxxwvgvvwwwwwwxwwwwwwgwhgWhwgxwwvVVwvwxxvxwxuvvwwwgxwxwxwfwvwwxwxwxwvxxvwwwhxhwwwwWfvwgwwxwwwxwwgwxWgwxxxwxwwwwxxvVwwxghxwWxwwxhwwvwxguvwvwffxgxgwwwvvvvfvuwwxvwgggfvwgxvvggwwfwvwwgxwwxwwevfwevfwvwgfwgwgwuwwwgfhwhwwxfvewwgwwvfgfgxwgfwxxwwwxgwxvwfwvwgvvwwxvxxxgwvxfxhxxxxwwwwuvvwfwwwxhwgwwwgwgxwuwgxxwVvvvgvwvvwxwwvwwwwwguwxxxxvwwfxwggwwxxxwWxwxwgxxxgwwwwgvwwxwVvfvwwvwwwwwwwwxwwwwxvwxvwvwwwwwhxgghfwvvwggwffgxwwvgvwwgwvgwxhwgwvwgxwxwwxvxggwhxwwwgwgvwgwwvwwwwxfggwvgxwwxxwwxhvhwgxwwwwwwxxgWwhxwwwwwgxgvwgvwwwwwxgggxgvwxwwvwwxgxxwxwvxwxwgwwxxxxtwfvgwvfuwvwfvvwxwugvwfwwgvgvfgwwwfggvwfwgvwvwxuwwwvwvwwfvwWtvWwuvwxgwwwwwfwvwvxvgwWdvgwuvvvgggWfwuvfxvwgwWhwgwxwgvwwwwwwxwgwwvwwfwhwwxwwwwuwfwfwwwxxwvwwwxwwwxxxwwgvguvgfvwwwwgxvwhxfuwxxwvgfwwxwwxhxwwxwxwwxwwfwvwvwgwgffwuwwwwwfvwwwwwffwwwxwggguwwhwwggwwhvwxxwgwwwwwvxwwxgwwwwwgwwwwwwxwwxwWGxwwvxwxwxWGxxfvwwWwdwggwhGvugxgwxwxwwvwvvwwxxhxwwwgxxwwxwwwwxwwwwhxxwxxwwwxxwxxwhhwwhwxxgwxxxxxwwwgxfwvgwwguUwgufvvwvwfgwuwgwgguvwxeufvwwwxffwvgwwhwwwwvwffuvFwefvxfwgwvwwwfgwwwwgwwWvtfvxwwwwHvwwwwxwwxwvvvwwwwwwwvvwgUwwvwvwwvwwwwwvwwwxxgwfvvgvxxwhxwwhxvxwxwwgwxwhxwwwvxfwwhwxwwvxwxgwwgxxwhgwwxwxwwwwxwxxxwvxwwvgwWwfvxvxwguwwwwwvwwwwwwvwwwxxwwxvwwwxxgwwwwxwwxwwwwwwgwwwwwwwxxwhwwwwwwgvxgxxxwxgWxwvwwwwwxwwxvwwwwwwxxwxfxwwwwwhxwwhwwxxxwxwhxwwxxwxgwwgxwxwwxwwgxwxwwhwgxwwwxwwwgxwwwugwVvvxVwwewvuvhwvwgwggwwxfwwvvwwggxggwwgvgfwwwvvxwxgwevwwwwfwvgWvvewwwvwggWwwgvxvwgwxgewggfffWfvgwwvxhxgxwxgwwwvvgwfgwwgvwgwWwwwxWwvxwwfxvwwxvwwwggwwxxwxxwgxxhwgwwwwwvwwxwwxgvvwhwwgwwgvwwwwxxxhwxhhwwwxxgxwfwxvwwwvxgwwwgggggwgwvwvwxvwvgwwwwwgwwwxwwwgwwwwfwfwxwwxwwwxwwvxwwwxfwgvwxWwwwwvwvwwwgwwwgxxwxgxwvhwxwwhhgxwwwwxwvxwwwwxgxxwgwgxxwwwhxxwxgxwwwxwwggxwxxxxxxwgwxxwwwxxxwwwxwwvxgxhwgxwwvwxxxwwxwxgwwgxxxxhwwwxfvwfwgwwwgwwwggWwfwvgWwvwwwwxhvVwgwwwvwwxwwfgxwwwgwwwfxwfwwvewfwwwxfwxvwwwWgvwwgwwgwwvgwwghwwwwwwwwvwxwxXwwwwwxxwwwfgvwxfwwhwwwwWxwwwgwxxxwggwwhwwxwhwxwxxgxwwwwhwhxxvwwgwwfhwwxgxxgxwxxwwvwwwxxxxxwWwwxwxhwxxwwwvwwwvvxgwxuxwfwwwwwxfggwvwwxgxwvwwwxxwwxxxwxhgwvxxxxxxwgvwwwwgvwwgwwxwxwxwxgwwxwxwwwxwwxxwxwwgxxxxxhhxxxwxxwwwxgxwxxxxxwgwwxgwhwwwwxxwwwwhgxxwgxgwwxhxxwxwWgwwwwxwxxxxxxxhxwwxxxwxWwgxxxwhvwfgvwwvxfwwwwxwwwgwfwwwwwvwwvwwxwwwxwwvxvxwxwgwvwwwfvwwfwwwffwwgwwvvwxwwxwwvfWwuwwwwvxwwvwWwvuxwwxwgwxWvvuvwwwwxhgxwhvxxxwxwvwvwxwxxxxxvwvwwWWwwwwvwxwgwxxwxwwxxvwxvxxxxxxwvwwVefgfwgvvwvgggvvxvwxvgvvwvgwwwwfwvwxwwxxwwwwvvwwffwwgwxggwvvwwwxfgvvvvxwfwxwwwwfxvvwxxwhwwwwwffwvwvwvxwwwwwxwwhxwwxwfvxxxxxxxwxwwwxggfwvgwxwwfwwxxxxvwxxxhgwhwwwxhxwwxwwxwvvgvgfwwwvvvwgvwwwwwwwhvwwfvvwvxwwwwxvwxxwgwxwwvwgwfvfgvvxwvwwwwfgfvwxwxxxwxfwvwvvwwxwwwwxwhvxwwgxwfvgvwffwgwvwwwwxwwxwxgxvwgvwwwwvwgxwxxwxxwhxhwgvwwwwwvwxwwxwwwgxwvfxwwwwwxwvxxxwwwwxvxwwxvwwwvwwwwwwwwwwwwgwwxxwfvvwwwfwwxwwxxwwxwwfwfwvwvwwxwwwwwwxxvxwwxwxwwwvwfxgwgvwvwwwwxgvxwwwgwgxwvwwvwwfwxwwwwwwxhgfwwwxgwxwxwhwwwxxwgwxfxxvwxxfwvwwwwwxwwwwhwhxhvwxwxwwgxwxwvxxxwwwvxxuwfwxwwwwvxwgfvgwfwwwwwwwwwwwwwwwwwwwwwvwwwwwxewwVvxvVwgvwwVwwvwxxwfwfwvwvwwvgwvwwVuwwgwwvwxggxwwwwwwxwwwgwwvwwvwwwwwwxxwwwxwxwwggxxwwxfwvfwwwwxwvwxwvwvwfuwxwxwwhxvwxwwwvvwwwwgvwwwgxwvwwwxxwwwwwgvwwvvwwgvwxxxwxxwwVwwwVvwxwwvwwvxwwxgvggfvwwwwxwgwvwwxwwwwwxxwwwwwwwwwwwxwxffwwwwwwgwwvvxxxxxwvxxxvwwvxhwvxwwwwxxxvxvwxwwwwxwxxxwwvwgVeggUvffvgVexwwffwwgwwwwxfwvwgwxwxfwwffuwwwVvwVewVwwwwwvvwxwggvwvwwwxvwxwwwwwwvwwwwwwgwfwVegeWfwwVegxwwwxVvwxgwwxxwxVwgwxxxgwffwwffxfwxgxwghwgwvxwxhgwvwxwwffgvxfvvxwvvxgvwxwwxxwwxxwvwxxxxwhwgwwwxwwwwwhgxwVuwVvxwwwwwwwwvxwwhxwgxfvwwwwfvfwxwwwwwwxxgwwwxxxwvwxxxxwwxxwwxwwxxwxwwxxwxxwvwxgvvxwxwgvxwwwwwwwxvwwwwvwwwgwwgwvxxwwwxwwvwgxwgvwxxgvxxgfwvwgfwgwhwwvwewwwvgwfgwwwvxwgwgvwxgvwwwxwxgvwwwvhfxxwwxwhxwxwxvwxgwwwwwwxwxvwxwwxwwxwxwxwwxxxwxxwgwgwwvwwwxwfwxwwwhwxwvxxwxwxxwxwxwgwwwvwwgWwvhxxxgwgvwxxwxxxxwvxxwwxwxwxxwgxwwhwvewgxWwxwwwggwgwywxgvxxwxwxxwwxgvxxxwxxwxxwwgxwwhwxxxwxvxxxwxxxxxxxxxwxxwxgwxwxvwxwxwxxgwwwxxwwwxwwxxxwgvgvuxwwwvwwwfxxfwwwwxxxxxwwwwwwwwvwwwwxwxwwgvvwwWgwvevwxwwvgvwhgfxwwxvggvwwwwwwwwwwwwwwxwfwwgwxvxwxvwWwxxwgwhwvwxwwxxxwxxvxwxwwwvwhxwwxwgxwwywxwxwxxwxxxwwwwwwxwxxwxwxwwxxxwxxxwwwwxxwxvewwwgwwxxxwxfxxwxhxwwxxwxwwwxxwxxwxxwwxwwxwwwxxwxxwwxwxwwwwxxxwxxwxxxwwwwxxxxxxwwwwxxxvxgvwwwxhwwvxxwwwwxwwxfxwvvwwvwxwwwwxwgvWwwwxwwgwftwvfuwxwwgfxwvvwwwuxwwgevfvwwxwxwftwvwgwvxwwwwfwxxxwwwhxwxXwwvvxxwvvwhwxxxwwgvwvwwwxwugvwxwxgfwguwwwxwwwwxwwxwwvwvvwwwwwwgvwwxwwwwwwvwgwwwwxgvvwwWxxwvvwxwwxwvxwxwvvwwwwwwvwvwvwwxwwwxgvwxxxfxxwxwwwgwwxxwwxgxxwhvwxxwxxxxWxxwwxwxxwwwwxxwwwvwxwwxxxxwhxvgwxxxxwgwgxuxwwwwwWwxwwfvwwWwwvwwuwwwgfxxwxwvwwxwxxwxxgwfvwvgwwwwxgfvtwwfxxwwgvvwwwxwwxwgwwxwxwwwvwwxxvxwwwwwxwwxxgvvvvxwwxwxwxwwwwxxwxxxwwwwwwgwxxwwxwwhwwwwhXwvxxxxxxwwxwxxxvvwwwwxxwvvwwwwwxxwxgxxxhwvwxwwwxwxxwwwvwwxvwwvxwwxwxwwxwwvvxwwwwwxwgwwwvvwwwwxwwwxxwgxxxwxwwwxwwwxxvxwwwxxxwwwvwfxxxxwxwwwxwwwwwwxxxwwwxwxxwwwwvvwwgvuxwwvguwwwvvwvvvvwvgwvxwWhvwwxvxwwvgwwvwxxfvvwvvwgewwwwgwvwxffgwvwwxwgwxgwfwvwwweWwfguvgwwgvuxwwxwwwxwwWwxwxwvwgwwwwwwxwgwwwxwWwvwwxhxwxwwwwwwwuwxwwwwvxwvwwvxxhwxwwwwhxwxwwwwgxwwwwwwxwwwhvwxgwwwvvxwxgwwgwwwxwxvwwwwwwwwwwwvhwvxggwwgxwggwvgwwxgxwgwwvgwwvwwxxwwwwwuxwvwwxxwwwwxvgxxvgxgxwxwwxxxvxxxwwvxxwxxgwwhwwwxwxwwvxvfxwwwxwwxxhwxwxwwxgwwxwxwvxvwVvwvfwvwwwfvvwwwxgxwgwuwxvwxgwvwvwwwgvwwwwxvwwvfwwgwvfxgwuwxgwggxwxwwgwwvwfwwwwwwvgvwhwxxwwvgxvgwxgvwvwgxxvhxwvwvgwhwxxxxxwwwxwwwwwxxwxwvwwwxwwwwxuwwhwxwwwxxhhxxwwwxwwwwwgxxxwxxxwwwxxgwwwvhwwwvwwwgvwwwwwxwxgwgwwwwxwxwgxwwxvwwgxwwwwwwwgxwwxwhgwwxxxxwxwxwgwwxvwgxxgxwxxwhxxxxxwwwxwhvwxxxwxxwwxwxwwxwxwxxxwxxgxwxxwxxuxwwwvffgwvvgfvwwvgwwwwvfUwwvfgwwwvgfvwxgfwuvWfvfvgwWvvwwgvwwwWsewwVwvgvfgGtfwwgffvefwWfFwhgwfgvwffwewvfwvwwgfVvxwwwwvwvwwxwgfvxWgfwxwhgvfvwghxxhwgvwvxwxvwwxwxxgwxgxwfwvVvvwvwxwwewvxxwWwgxvwfxvwxwwwwvxwwxwwxwwwwwvgwwwwggvwvfvfwxWuuwwwftwwWfwwgWgwxxgwvwxhgWvxwhxwwwxwwxgwwwwwwwfwvwwwwxxgwwgehW6whfwvxvxvvwwwwwwxHFwwvxxguvwgwwwwWfuhwwwwwvwwwwXwxXfWwuwwhxwxxwwxxwwwxwwwWwhhwwwwfhvhxXfxgwgxwgwxwxwwwxwwxxwxxwwwwvwwwvwwVeuwwwvvvgfdvvvVgfvfgwgvgwwfvggwwwwwxwwwwxwhwwwgwwfVguVvvgwwVweehv7xgwvfwgwvwwvwwvwwwwwwgwewgwwwwwwfwwxwfvgwvvgwghfwfwvxwgwvxwwwggwvgxwxvwwwgvwxhhvxgggxwvxhvwvxvwwwxwwwwxxwxwwwwwxwxwwgwvxwxxwwwxwwxwghwwwwxxvgfvgvvxgvvxxwxwuwwwggwwwwggvgwxxwxwxxwxwhxwwwwwwwxhxwwwxgwggxgwwwgVxXFgwwxvwuwxwxwwwwwxfxwwwwxxhwwvwwwgvwwxxxxxvwxxxwwwxxwxwwwgwwwwxwxwxxgwvxwxwwwwwwxxxwxxvwxxxxgxwwxxwwxwvvwxvwvwwxwwwxvxwxwxvvwwwxxvxhwvwhwgxwwwwwwwxwgxvwwxwwwwgfvwxvxvwwxwwvwxwxxwhwvwxugxwwwvwxwwwwvwxvxwxvwvfwwwvxwwgwwxwxwwxwwxwwhwgxwwxwwwgxgwwxxwwwwfwvwgwxwxxwxxwxgxwwwvwwwwvxxxwfwwxxwxxwwwwwwxwxwwwwxwwgxgwwxgvwxwxxxwxwwvvwxwgwhgwwwwhgwwwxwwwvwwxvwxwxxxxxggwwwwxggxwwxwwwwxwwwxhwwxwgxvxvxxxxxxxwxwwvxxwxwxxxwwxwwxxwwwxxwxxxggxwxxxwxwxxwxwwxwxxwxwwwxvwwwwwwfwwxwwwwwwwvhfwfwggwwwxhvvxwwvwgfvvfwfwvwxwvvxggvxxwxwfwwwvwwgxxwwwwwwxwwwxvxwwvxwgwxwwxxwwwxwxwggwvwwgxwxwgwwxwxxvwwwvwwwwgxxxwwxwxxxwwxxxwgwwxxwxxxxwwwxwxwgwhwwwwwxxwxhwwwxxxvxwxxxwvwwxwwxwwwwgwxwwwwwwwxvvwwwvwwxxvxxhwwwgxxwxxwwxxxwwwhxhwwxxwxxxwwxwwwxwwwxxxwwxwwwxwxgwwxwwwxvwxxxxgxxwuxwxVuwgfwgufgxwwwxvhvwwwwwwfwvvwwxuugwxfwwuvwwwwgfvwxgtwgwvwwwfwgxfwwwVWwfvwvwfwwuwwvwwfvwwgwwugwwwwwxwwwwggxvwuwxvwvwwgfwwwgwwhwxxvxwgvwwwgwxhgvvxwxxwwxwxvwxvvwwxwxwwwxwwxwxxwwvvwwxxwwwwwxxwxwwvwxxwgwwhvvwwwwwgfxwvwwwwwxwwwwwwvwgxwxwvwwuxxwwwgxvwwfgvwwwgwxgwwwwwxvvwwgwxfwxvhwwxgvwwwwwwwwxwwwxwwxxxwvxxhvxwvxwgwxxxxwwxwxwwwxwgwwwvwhxwwvwwvxwxxxxxwwxgwxwxxwwwwxgevwwvwgwvxwwwgwwwwxwgwwwfwvvwegwwwXgwvvwxgwewwvxwufwvwVwwwxwwwwwwfwgwwwwggwwwwwvxgvfwgvwxgwwwwwwwwxvxwwWwewwxxWvuxwxggwxxwwgxwwwxhwxxwxwwxwxxxxwwvwhwwvxhwwwgwxwxxxvxxwwxwwxhxwxwxwwwwxwfwggwwwwvxwwwwxgxxwwwxxVugvwvwwgwwwgwvvwxxxwwxxxxvgvwhvggXwwwxwxwwfwxxxgwwwwxxgwwwxwwwwwVwwgxgwwxwwxxxwxxwxxwgwwxwxgxwxxgvxxxwxgxxxgwwxwwxxuwggwvxwwxwwegwvxxwgxwvwxxwxwxwwggwxgwggwvvwhxwwwwwwvwvwvwwuwvgvxxwxwvwxwxvwgwwwvwuhxfwuhwxwwwwvwgxvxwwwwxwwgwwwxxwxwxwxwxxwxxgwwxxhxxwxwwgvwwxwwwwxgvxxxgwxxwxxxxwwwvxxwwwwxgvgwuwxwwxwxwvxwxwxwwwxgvxwgwxxwxwxwwxgxwvxwwwwwvxwhwxwwwxwgvxxwxwvxwgwxxxwxwwxwgwwvxwxwwvwxwwwxgxwxxxwxxxxxwvxxxwwwxwwxxwwxxwxwxxxxhwxwwwwxxxwxxgvxxxvhxwwvxewugwwwwwwwwwwwhwxwvxxxwgvwuwwwwwwwvwwfwghgxwwwxwxxwgwvwwxwxwxxwxhwxxgxwwwvghxxvhgwwgwxxxwwwwwxwxhfxwWxwwxvwwxxwgxwwxxxgwxxxwxxwxwwhwxwwvwwxxxwxwxwwxxwxxxwxxxwwxxgwvwxwxwwwwwgwxwwxwwwwwwxhwxxwwxxwxxwwxwvxhwxxxwhwwxwwvwxhxxwwxwxhwxwxhxxgwxxwxgwxwwwxxxxxswwggvvwwvwgvgfxwwwwwwwwguvwwwwgwwvwwwfwguwvhVvfwvgfwWFSufgevwwwwwwwgwwwwwwwvgvwvwvvwwwuwgvvwxxwxxwvvgwwwwwwgwvwwwguvgxwxwxwxgwwwwxxwxvwwwxwguwvwuuwvwwwhwwgwwwvvwwwxgwwwxwwxwwxuvvwvvgvvfewwwwgwgfwxxwwwwvfxwvwgwwwwwwxuxwwwgxvwxxxvwfwfWwvgvwwhWtvgwWwwgxwfwxxhvwwwxgvgxgwhwvxxxvwxxxwvffwwvwgwwhvwwwvxwvvwxgxgwxwwhxxxxwxwxwhxwxhwvgwwwgegxggwgxwwgxxwwwvhxwwwxxgwwvwxwxxhgwwxwgvvwwgfwgwfgwwvwguvwwwwvwxwwwwwvvwwxwvwwwxwwxxwgwVFSuwwefwhgwwgwwwwvwxwwwxxvwwwwwwwgxwwvxwwwxwxxwxfggwgwxxxfwwwwxfwwxwwxhwgwwxxwwwwwvxxwxxxwwxwwvwuwwwgwxvwxwxxxwxxxwwwwwxwxwwwxvgewwvvwgwwwwgfwwwvwvvwwwxxwxhxwxwwxwxwxgwwxgxvxgxxggwggVdvxwxvxwwwwvgxxvwwxxwgwxwvwwwwwwxxgxgvxuhwwwxgwwxwxwxxwxxxxwxxxwxxwwwxwwxwxwxxwxvxwwwwwwgxgxgxwxwxwxwwwwxhwxwfwwvwwwwwwwwvugwwwwvwggvvwwwvwxxxxwxvwxwwwwwwvgggvvvffuwwwgugwwvwWvwwvvgwwuwwvvvwgvwwxxfvvwwwwwxxxwfvvwxvwxwwwgwwvwxwvwwxxwwwwxxwxwxwxgwevxWuwwvwwwwwfvwxwwwwwwwwxxwxxwxxxwuwwxwvxvvwwxwwwwxxwvwxwwvvwwwwxwwwxxxwvfwvWvvwgwfwwvvxwwxxwwwwhxwgwwxwxwwgwvxxhxvwwxwwwvwwwwwgxxwwwwwwxwwwwwwxxxwwxwgxwxwwwwvgvwwvwwwvvvwwwwwwwxxwwwwhwwwxwxwwhwvwwwxggvwwwwwwvvvwxwgfwwwwwwwwwwwxwwwwxwxwwwxvvuvwwWvwvvwwwwwfgvvwegwxwwxgwwwwwxwwvxxwxwhwwxwwwwxxwwfwgwwvvwxwxwwxxwhwxxxwwxwxxgwvxwxwxwvgwxwxvxwwxxwwxxwxxvvxxvwwwwwwwwwvwgvwwgvxwhwxwxxxvxxxxwxxwwwwwwwwwuwwvwwwwvghgxwwgxwxxxxwxwwxxxwwwwfxwwxwwxwwwwwwwxxwwxxwxxgvwgwwxwxwvxwwwxxxhwwwwxxwfxxwxvwxxxwxwwwwfvvwvxwvgwgwwwvgwxwxwwwwwfwwwxgfxxwwwwVgvwwgvfgfwvvwgUDvvxwwffVwvwwwwvwwwwwvfwgwwwxxfwwwvwwgwxgwgwfwwxwxgwwwwwwfwwxwxwxxxxwgfwwvwxvvvwwgwfwwwgwwxwxwwwwwwgwwxxwxwwvxxfwvgwgvfgwwwwwgfvwxwwwxvxwxwwvxggvwwwxwwgfwwwwfgvvwxwhgwgwwwwgegxhfwxgxwxxxwwwwhxxhwxxwxwfwwwwwgfwxxgwwwwxxugwwxwwwxwxwxwxhhxxxfgfgwxwxvxfxghgwwggxwwwxwxwwxxxxxxwwwwwwfwvgwwwwwwwwgfxvfUwwgwwgwwwgwfwwxwvwxwgxhwxxwxfUDwwvwvwvwvwwwfgVwwwfwwxwwwhgwwxwvwwxwwxgxxgwwgxgvwwwxgxwgwvggwgwgwvwxxxxxvxhgyhxxxwwgwvwwvwxwwgwxxvwwxwwxxwwwwxxwwvgfwwwvwwuwwwwwvgwgwgwwwwwwxwwxwxxxxxxvwggwgggvvvwvhffuwvvwgfxwxgwvwwwxwfgvxgxwvhxvwvxwwxgxwwgwvxvxwwwwwxxvwgwgwxxvxwxxxxxxxxxxvwgwxwxgwwxxxwgwwxxwwxwwgxxwxuevwfvwvuuwvfgvfvwwvvgfevwwfdvwggvwwwwwwgvfwgwwwgvwwwvvfgfgdgfVfgfufwfWevgvfvfvggwwWeffwvfgwfwvxwwvvfwvvfwwwwwwevwwffvvvwgvwxufvwvwfwxwwvwwfwwwvvwxfvwfxxwxwwxufwwvvvwfwewwgwgfvvwgvwwhvwwwwggwuwvxwwwwwxfwwwwwwwgwfgvvvvwvefvwwwwvffwwwwvvwvvvxvfewgwwwwxwwgwgvvwwwvwgxhvgvvvwvvvwfVfwwwvgwegvwgvvfGgwtegfvvuvWwxwwwwwwvwXhuwwggxhwwvWffvwwftvwwgwfvvvwvgvuwewwuuvgfwvwxwwwgwwvwvwxxwvwwwwwvwvfwvwvhvgwwvgfwwfxwvxguWwvvgwgwfgwgwwxhwwwfxwvwxWwxfvvVfuffffgvfvwfVvfvwgvvwvvvxvvfvvwvggwwwwwwwfvvvgwwwvwwwvfeuguVfvfwfgvwwhefwugwvfgwxwwwgfgVwwwvgvwwwxwxwggvwwwwwwxwvvgwvvuvxfwgwvvwwgfwwuwwwewxWwfwxwxwwuwvxxxxwwwxweuwWwwfwvwxxgwwewgwwvfxxfwxwwgvgxwgwxwxwwwxwxwfuwwuVgvvvwwwWwefwuwwvvvwwwwfwhvuwvwvwwwvvfvvwgwwwwwwwhvgwwgwuggvxgwvwggvVhhuwwfxgwwwwvgvwxwwvwwwwugxvvwxvwxfvvgwwwgxwgwwvgwWwvwvwfgxwhwwgwvxvwgwxgWwwwvxgvwwvxhgwxwhvgwwgwWgwwvxfwwxwxgxwwwhggvwxwevvwwxhvwwwwxxwwwxgwggvvwgwgvgfvwwwwwwwwvvwwwwfvwvxuvwwuwwwwvffvwwfwwwewwvwwvuwvwvgwwwxwfvvwvwvwwwwwwvvwwwvwwwwwwwwvgvwwwwwvvxwxvwvwwxvvuwwvwwwgvwxwvfuvwvwuwffwxwvwwwwxwwwxwxxvvvwwgvwvufvwwwwwwwwxwwwwwwxvvwwwxxxwgvwwwwwgwvxwvfgwwwwwwwwvwfwwwwxxxwwvwvwwwwwwxwwxwwwwwwxgvvgvwwwwvvwxwwxxwwwxwwwwfvvvxhwwwwvwfvuwwwwwxwwwxwxxvxwwwwwwwxfxggvwxwwwwwwwwwveuwwwwwwwvwwwwwxwvwfxvxxvfvvwwxwgwwwveefwvvfvxwxwwwuvwwwwuxvxgwwwwwwxxwxxwwwxgwxfvvwwxwwwxxvwxwwwxxwgghwwwwwvwwvxhxxxxwwwwwwvxxwwwxxwwwwwwxwwwxgvwwwwwxgvwgwvxwwwwwwwwwxwvwwwwxxxxxvwwwxwwxwxwwvuufxxwxwwwuwvwwuwxwwwwwwvxgxwgvwwxxvwwgwwwvwwxwwwwxxwwxgvwwxwxwwxhxxxwwwwwwvwwwxvxxxwvvxxxxxwwwwxwwxwxvwwwwvwfwwgvwgwvfvwvVVwvfgwVwwwfvhhvwvwwvvvwxwgfwwwfxwfvwvwfUwwvvwUvgvwgvgwxgwwxwwgwvfvwxvwuwwwvwuwwvwgwxvfgwwvxwwgfxvwxwgwgvxwWwwgwwwwwwwxwwxwwwwwwgxwwwwwvwwgwfwwwvvwwvwwvwgwggwvxhwwwwwwvvwvwxwwxxwgvwxwgwwwwxwwgvwwwwVVwwwxwVvwvxhggwwwwwxvwvwxgwvgwwwxvxwwxvfUwwwwUwvwwxwwxwwgiwvxggfvwfwwewxwwhuwwwgvwwghwhxfxvwwwwwwhvwwwwwxwwwWvwwwwgwgvwxvwwxxvwvwvwggwwwwxxwwwgwwfwwwfwwvwvwxfggggvwvvfwwgvwxwvwwxvggwwfwwgwhxxwwvwwvxwvfwwgvwgwgwwfwwfwwguuwxwvwuwwwgvwxgvwxwggwwxvvxwwxvxwvvfwvfuwgxwwuwvvxwwwhwfgwxwfvwwwwwwwgvwwghwwwwgwxfggwwxwxwwhxwgxwxgwvxwxxgwwwugwwghwwvwxxxxwxgwgxxxvxggxxxxxwwwwwxfwwwgwgwwvxwwxwwwwgwwwvvwwxxfwwwwwwwvwgwvwxgwwgwxwwveugwxwwegwwwwvgwhwwwxwxwgwwgvwwwwxgvxxwvuwxxfguwwgwgwggwfvghwvvvwgwwvxwwxwhwwgxwgwwwxvwgwgwwwxfxwhwxxxwwxxwxuwxwwhxgwwwwwwvwwxgvwwxwxhxfvwxwwwwggwfvwvxwwwxxwfwwgwwwxwwvvxxgwwxwwwwvwwxxwwtxfwwwwvvxxgvvvuwwvwxwwwvwvxxgfgwgvvgvwwwvewfwwvvgWuvwuwvewwwwwvwwfFTvvxvwwxxwfvfvxwvwvxwufwwgvwwwxvwwwwvhwxwvvwgvxxxwwwgxxwfWevvwxwwvwggvvwxfvwhwwwxfwwxxwxwxwxwwwwwgvvvwwwwgwwvxfvvvvwxwwgvwvwvgwwhwwvwxxvxxfvfwwxfhwwvwxwgfgvxwhgvhxxwwvvwwxwxvxwxxxwwXewxwwwgwwvwvwwvwwwvwfwxwwwvxwxgvxwxwhvwwxwxwwgwvwwwhwxwwgwggVwxvwwwwxvvwwhwwwxxwxwhwwwwwxxfwuwwgvgwvvxvgvvwwwwxwgfvwwwgxxxxhgwwxwwwxfFTvvwwwwgwxgwvvwxwwxwwwwgvxxhxwxxxxxwwwxwwwwwwfwVefwwxxwwgxvwxwxxxxxvxghwxwxxxxxxwhwwxxxfgwwxgxwxhxvwwxwwxxwxwxxxxwwxwwwxhwxxvgvwvvxwwwwvwxxwvxwxxwwwwxwwxhwhwwxxwxgvfvwwwxwwgwxgVewwxvgxxxwxwwvwwwwwwfwxvwxxxgxvxgwwwxwwxhxxxxwxxxhwxxxwwxvxwwwwxxWgwvwwxwwxwxxxgxgxwwuxvwwgvwwwwwgvvxwwwvUUwwwvwwgwwwgwfvgvfwvgwvwwwwvfwwgvwwgvwwwww6SfwvwwwwvwwwwvwwvXwuwwwwwwvxwvwwwwfwvwwxwgvgwwwwwgwfgwwgvwwwwxwwwxVvegwwwxwvhvwvxwxwwwwfvwwwwwwvxwxwwvwwwwxvxgwwwwfwwwxwwgvwwvxWuwwwwwvwgvfwfwwwvfwvwwwwwwwxwgvvwvwwwxvxwvwgwvwwwfwwvvwwwwxvwgggvwwwgwwwgxxgwgwwwwwwwxwgxhwvwwwwhwxxwxxhwwwwwwxwvwxxvwwwwgvwggxvwwwwxwwxxwwwxxxwxwxwwwwwwwxwwxwhwwfwwwwgxxwwgxwwwxxwwwwwgwxxwxwxwwwgwvgvwwvgUewvwxvvwwwwwwEfdfwgvwwwvgvvxwxgfhwwwhwwwwwhwgfwvwwfvfgwwwwUvuwgwgvwgWwwvwwwxwvwgvwwwxwwxgwwwxwxwxwWwuxvgwwxwxWvuwvwwhvgwxwwxgvxwwgvhhxwwgfwxgxwxgwwxfgwvwwwwwwwwxxvgwwgwvwwwwxwwwwxwxwxwwxxwwwwwwwgvfgvwxwvvgwxgvwwwwggwxwwgxwwwwwgwvwwgwwwwvgwvxwxwgwwwxwvxwgghfvggvxxwxwxxwvvvwhwxwwxxwwvwwvwWuwxxxwwxvwwwfvvwwwwwwwwxxxwwxxxgxvwxwwwxwfwgwwxxwxxxghvwWxxwgwxwwwwfxvffvwvwwxhvxvgwwwvwwxwgwwwgwfwvwwwvwwwxvwwwvwwwgvvwxvwgxgwvvgwwvwfwgwfwfwggFVtuwgwxggvxxxwwwwVffvxwwwwxvwwggwgxvwwwwwgvvwvwgwwxgVwwwwwwxwwxwwvwwwwwxvwwFVtuwwwxxwxxwwwvxwwxwwxxwxwxwwwvwwwVgwwwwhwfvfwwwwxwwgwwwwwwxwwwwwxxxxwwgwhxgwvwwvwfwwwwxWwgfwwwwwwyxwwxgwwxhvxxwwxgxwwwgWgugxwvfvvwwxwwgwwxwxwxwxxwgwvwxxvwxxgwwwxwhxwwxvxxxxxwxxwxwxwxxwwwvfwgVwwwfvfvggwvwwhwwxwxxvgwwxxxxwxffvvxgwvwwwwwwwffevwxwwwwwvwwwwxxwxhwvwxwxwgvwxxwwvxwxwwwgvwxwwhxxgxvxxwxwwxgwxwwwgxwwxwwhxgwxwwxwwvwwwwwgwwxwwgxwxxwwxxxxwxxwxxxxxwhwwxfwwxxwwwwxwxfwggvxwxwwvxwxwxxxxwwxxxxwwgwwwwwxwhxwxgxwwxwxxxgwwwxxxxxwwxwwxwxxwhxgxwxxxwhwwxwwxxxwvvgvvggwvwvgwvwxwxwwxvwgwwvxwwgvuvvxwwhwwwwwwwwxxvvvvfufvvwfvwwwwvwxwvvvwwwhvgffggvvgfwwvgwxghwxxxwxwwvfwwwwvwwwxwwxxwwfwwwwxwwxwgwwxxxvfffgfgwxwwwvgwggvwxxwgwgvwwwwwxwgwwwxhvwvfvvvvgvwwgvewvvwwwwwwwwvuwgwwwwxxgvwwwxgxgfvgvwgvwwwvwwvgvwxwwhxgwwgwugxwwwwgxwwxxhvwxvgwfwgxwfwwfwvwwvwwwgxgwxxuwwwxwwwwwgwwwwwwwhxgwwwwwhxwxwwxvvuwgwufwxwwfvgxwwxxxwxwwfggwxxwwxxwxwwxgwxwwwwwxxvfwwfffwwvwwfwvwwwvwwxvgwxwxgwvwwwwwxwwwwwvxxwwvvvfffgfvwwwwvwwwwwwwxxwhwvwgwwwwvwwwwwwwvxvgwwwgxvwvvvwwwxhwwxwwwxxwwgwwwxxwwxxxwxxxwwwvvwvwhwxwhxwgwxxwwhxxwwxwgwwgxgxxwxxwgxwvwwvwgwvwwgwwvwwwwwwwwwwxwvwvxwwwwxwxwwxxwwfwxwwvwwfvwgvxwwwwxxhhwwwvwgwwwwgwvvwxwxwxhxxwxxxfwwwgwxwxgwwvwgggwwwwxwgwxwxxwwwxvwxgxgwxvwvwwwwvwwwwwwxwwvxxwwwfxwwwhxxwxxwxwhvwwxxtVeufgwfvvgvvevvwvwwgVwwwwwwUuvewwwvxwwwfvwfwwwwwwfffwvgfgUfuwwvvwegugwwvwgfvwwwvhffuvwvefwwwwgugvwwwwxggugxgwevwwevfvwwwvfffwvwVvwwvxwvwwgwgwwxwwgwgwxvvwgxxwfwfwgwdvfvwwwwxVvuwwwwxwwwwxwwvwwgfwwgvwwgfwwxwxxxfxwvwwfvvwufvggvwwwwwvuVfvxxwwvwwxvvgfvwwwwfwwxgwfvwwvwwwwwwwufugfguwwfvgwvvVVfvwwwwwvwhvgwwvfwwwwwhwhhugfwWwwgfwhhexwxvgwweuvwguwwwvvfuuwwxvggfwwxhvvwwwwgwxwxwxwvxfwwxwwxwwxwwfvvwvwvgwgwwwffvgwgwwwvwwwgxgwwwwfwxgwwwgwgfgxgwwgvvwgufvfgfvuwwvWugwwwwuvgggwwfgfwvvvwgwwvvwwffwwwwwwwgwwwUdvvfwewdfwvvwwwWwfwgvvgxwvwgweefvwwxvwwwgwhwwhvxwwwvxwwvwwgwvvwwwvwgvvvvwwwwwvgwwxghwwwwwvxwxxwgwgvwvwwxfwwxgwwwvvwwwwwgwwvwvguwgxvwgvwwwwxfxvwxxwxwwgwvwxwwfdvvwwdfwfhuvwxvvwvgwwvvwwuewvvgvwwwwxwwwwwwgwxwwwgvvwwwvwwwvgwvwwvgwgwvwvxguxwwgwwfwwhvwwwwwwvxwwwvwwwwwwwvwwwwvwwvwwwwwxvwwwgwwwwwxwgxwgxwxwwxwwwwgwxgwvvxvwwwwxwxhwwxwwgwwwwxwwwwwwxgwwwwxwvwwwvwvxuwvgWgwwvvwgwfvwwwwwwgwgwwvwwwvwwwwwwwvwwvgwggwwwxxgwvwwgfgwwgwVfduwwfxvgfvgwwvgvvwxwvwwvgwwwgwwvwwhxwwwwxwxvxwvwWxgwwwvwwfFwwwwgvwxwwwwxvwxxwhxxwwwwgwgvwWfduvwwwgvxxwwxhhwxwwvwgwgwxxwwwxwvgvwwggggfgwVufwggwwgwwwwvwwgwwvwwwgwuvwwvwxwwhwwwxwxxwxwwxwwwwfwvwvwvwfwvxgwhwxfwxvxxxwwgwwxgxvwWwxwwxxhhwgvxxwxwfwwwWwvwvuvxxwxwvwwxwvwxwwwwgwvwxwwxwwxxxxxwxxxwwwvwwvwgwxwwxwvxhxvwwxgxwwxwxxxxxxxwhxxvwvxwfFwwgwguwvwgwWgwwwgxwxwwwxwwwwwwvxvwwgxwwxwxxwwwxfwfegvfgwvvvvvgvwgxgwwgwwxwxxwwfwwwwgwxwwxwxwhxwxhwwwvgvwwwgwvwwwxWwwwwwwwvwwxxxwxwxxxwwxwwxwvwvwwwwvwwwwwxxxwwwvxwwxwwwxxwwxwhxxwxvggwwwvwWvxvxwvwvxwhgwwwwwWwwwgwwwwxwxgwwxwxwxwwwgxwggwwwhfgwwvggwwwwgwxxgxxxxxgwwxwwwwgvwwwxxxxxxwxwwxwWwxwwwwwwwghxwWgwwwwvvxxwxwxxxxxwxhwxxgxwgwwwwvwvwxwwxwxwxwwwxxxwxwwwwuvvuvvwvgwwwvwwwvwwwvwgvwffvvvguxvvgvvwvvvxxfvwuwfvvgvwwffuwwwfvvgvfwvfwxwwgufuvfwvvvwwwwwwgwvgvwwwxwwffeuwvvwfwwwvwwwvwwwfwgevgwvwwwxvgfwwwwgvwgwwgwggfwwwwxxwwwvwvwvvgwvxvwwwwwwwxvwwwwfvvwfgvfvwxvvwfvwwwfguvwwwxuvfwfvwwwvhwwwwvwwwwxxwwwwggwwgwgwwwwwwxgfgvhhwwwhxufwgvwgvwwgwxvwvwwgwxhggwxuxhxvvvwvwwxwvwwwvgwwwwxwuVwuwvwwwwxvwxwxwvwxxwvgvwvvgwwwwwwugwwxhwvwgwvwvvwwwvvwvwgwxwwVgwwxhwuxwhvfvvvufvvvvvwwwwwwwwwxgxfvvvwwvwwwwxwvwwwxwuefvffwfvwgwwwgwvfggvgwxxwgwuvvvwwgggwwwwwwwwxwwwgxxwwvhwxeggwvwxwvwwwxwxxgvwxxxxwxxhxwwwvxwxvwvvgvwvwxxwwwxwxwwwvgwxwwgwwwxwxxxwxwwwgwwwxwxufvwfvwvwwwhwwvwwwwxwwwwwvvwwwgwwwwxxwwwgwgwwxwgxxvgwwvwwwxvwwwgvwgvwfwxxvfvvwwfwwxxxwgwhwvxwwxwxwwVuxvwwxwwvwwhxxvvgwwwwVwwxgwgwwhxxxwxxwwxwxwwwwwwwwxwxgvwwvvxwxuwwguwwxwhvwwxwwxgwwwxtvvgvvgvugwfuwgvvvvvwfvvvwfvfvvwuvuwwfvwUvvwfwfvvfvvuwwuwvwwvfvffVffvwfvvvvVevvgffvvvfgwwfwUtwevevvveffwfWvvvwvvvfwwvWvxwgvxvwfxwfgwuVfvwwvfwvwvvggvxgwfwvwwvwvwgwvwwwgwwgwhwvwfwvvvgfvuvxxwxwwwgvvvfxwxwwgwvwugvvvwxVWwwxgvwfgwhvwwwvvwwvvevvwweVgffwwwvvwwwgwgwwvfwwfvvwgwwffuwwvguwwgvwgwwwwvwfwwwwvvgvevvxwvwwwWgwewvvgwvgvwgwWgvwgwfwwgwwgWexwvvgwwfuvwvwwwwgvgwvggwxwwggwvvvwwwWwgwwvwggwfgggxwggwwwwwgwwwxgwwwwfvgwwwwxwxxxgwvwwhhwwwwxxxgvgwwwwwxvvwvufwwgeevvgwefvgvvvwvvvuvvfggwvvvFvuvuwwvVffgvgvffgwVggWvvufufvvevfvevggvvwgvwewggwgxvffvwwvvvgwGvwgwwwwwvvvwwwwvvwwwxvvhwwwwhwwuwwugwwgfwwwwwwuxwwxgwxwwxxwwgwgwwxwvwgwvwugvwfhwwwwvwwwwvwwxgxwwhgwwwxwwwvxxhWwwvgwwwxffwfvwevwwxxUdvvwgwgvvwfwvgwwvvwuuwwwwwwwwwhvvwwwwwewvgwwwxwwwfvgxxgwwwwgfwvwhxvwwwwwwgwwwxGWefvwxgwwwwwwwvwwwxwxwwgxwwvwvwvwwgwwwvhxugwvwwhhwvwwwwwwwwxwwhxwwwwwgwwxwxgwwwgwvwwwxwwvvwvvwgfwwwwwwevvwWwfwvwwwfvvvfffwwVeggVewfwfvvwwwWgvwgwwevwgevxffwvfwvwvxvvgwhTcggffgfgvgwfvwwgfvfffvwgvHfUuwuvffvvwwuwvwvgwvhvfGwwwwxwwwvhgwwwwhwwwgfvwfwwwvgwwvgvwvwwwwwvhwwwwxwwwwwwwvgvfwvWwwwxwwwwVfuvxgfhxxwwwvuwvxwwwwwwuvwwwxxhhvxwwgwggwvwfvwffvvwwwTewvgwvuwwwgvwgVfwwvwvwuwwwwuwgwvxvgwxwwwxwwvgwgxfwwwwxgwfhwwwwwhgwwWGWffvwvgWvfwwxwvwvvhxgGXHewwxvhwvwwwfwvffwxvxwvwwgvgwgwwxhwwwwfwxvgwxwwhwwwvwwghwwwxwwwwfwwgwwwxwwvvxwwhXWwwvwwwvvwxhwxxwwwwgwvxhwhwwxgwfwwwWvvwgvwwewffdVweuvwwvvxwwwVfwfwfwvwwwxwfgwWwwfvwwwwwgggffwfWwfvwwvvgwffWwwVw7vwwxwwggfwvxwgfwvwwwxgfgfvxxwwvwwwwwfwvwwwwvhwhgwwxwxwhwwvxhhwwgwwwvwwwxgwwxgwxgwwxwvwvwvwwvwwwvhvvwwwxwhwwwxxgwvwfxghxxvwwxwwXvwxxwwvxWwvwvvwwewwwvvvtvvwfuggvwwwwfeevgghxxxxgwwwwWwghgwxxfwwwwwggfggwxxwgWwW8hewxxwwwvgxwwhhvwwgwwxwgxvhvvvxwxvvwvwvgwxwxxwxxwwwxwhhwwwgvwwwwxwgxwvxwwxwffwwwxwwwxvxgwxwgwwxxxhwvwwwwwgvwvxwgwgvvwvvhwvgwwtgwgvwgvwgfwvvwwwwwwwwvwvwgvvxveUwwwvWwgwwvwwwwwWvwvvxwxfwvgFRwugvwvvvwwuwfwvwvvwvwwfguwfwvgggwtvwvwwvwwvwwgwhwxwxwwWwvvgvwwuUwUvgvwwgwwvwwxwxwwwvfwVwfwwxwwwwgwwxwxwxwwxexvevwwwgwvvWuvwwvwgxwxwwfwwvvwxwhwwvxwxwxxwwwvxxxvwugwgvwvwwwwwwxwGtwvwvwwwwvwwgvgvwwfwWwwwwwvvfwvguvWfggwwvwgwfvwvwwwwvvwvgwggwvgwxvuwwwwwwwvwhghwxwwwwwfwgfvggfwXwwvwguwwgwwwxwxwvwgwwgWwwhxgwfvwwvxwwwfxwwxwwvwWwwwhwwwwxwwvxvgvvxwwgwvwvwvhwuvwwxwxwwwwgvgvgvvgvwgxwwgwwwwvwwVvwfffvvwfgVwfggwgvwfwwwwgwedvEvTewvvwvwwgvwvxwwvwgwwwhwvwVwUfewwwwwwhwwwxwgvwxxwxwxvvWgwwvGwwvwvwwwxxwwwggvwvwwvvvhwGwfwfwvwvgfwWvvxwgwxfxxxvvvguwvhvwgwwgfhwhxxwwwgwwwxwvvvuewvwxwwgvxvxwwwxwgxwhvwwwwwxvwwwwwxxxxwxvwwwvxwfffwvggwxwwwxwwfwwwvWvxxWwwxfvegwwwwxxxwxwvwghwghwxgwwvwfxvwwgxwwwwvwwwvwgfwwwwgxgwxvghwwvxuvwxxxwwvwwFvwuwwwwgxwwxwxtwxwWefgwgxgxxwuwwxwwwwwhwxxxwwxgwwwgxfwwwggfvvxwwvwwXwwwwGvwwfwwxwwxwwwwfwxxwwgwwwvtwwwvwwffxfwvfwwwwwfxfgfvwwwWvfwvvvwguwevgwguvwvwfvuvwxfvwwwftwwUtgffwwgfgvgggfvvwvwvwwwvwevwvgwVvwwwWvvvvwwwwxvWwwggxvfugwxgwwvvggvgwwgwwvxwxwvwwwwwwwwxfvwwxwwwwxuwvwwwwgvggwwvvwwwwvwwwwvwfwuvwxwwwxfhwwvwwwwwwvxwgfwwegvwvwvfwvwgvwvvfgvwvgvwevvwvgvgfwvwxwwwwwwxwvwwwufwwvwwvxhgvwwwwwwwwwggfwwwxwxvXwwggXexwvghxvWgvxwvvvwxvvxwvvxwxuvvwwgxuwwwgwwwfwwwxgvhwwwwwwwxxxvgvwwwvwwwwxxwwxwwwgwwwvwwugvwxxwwhhwwgwwwwxxwwwwwwfwgwvewUvwfgvwwgfvvwgwvwwgegwwWvdvgwvfvvgwfwwwvggwhfgwvvwewvwffvwwxvfwWwvvwwwxwwgvufwwwwgHwxwvvwwwwhwfwwwxvxvvxvwvwwwwvwvwwvxwwfgxxwwgxwwvxhwwwwvxxwxwxgwfxvwwwgwxWgvxwwxwwvvwwwhxgwxxwwgvwwxxxwxwwxfwwduuvvwwwwwvwwwwxvfvwWwwuwwgvxxxxwwvwwwxxvvwwfwvxwxwwwhwxxwxwxwgxvwvwwwggxxwHgehwwxwwxwwwwwwxwwwwvxwwxgwwwxwwxwxxwxxwwwwhxgxvwxxwxxggwwwwwwwwwwfwgwxwwwwwwxwwewfewvgfwuwgvwevvghxwfgvwwwwfwvvwwwgfxgwwwvwVwxwwfwwhwVvvvwwvwfgewwvvhwgfwgwvwfvfgvwwvgewvwwfwvwgwgvfwgwxwwwfgwwwvvfwuwwwewvfwvvWwwwgwxwwwgwwwfwgwwvwfwwwwwwvxwwvwgwwvgwwwwwwfvvwwwwwxwwxwfwwwwwwwgxwvvwxxwgwwwwVwvvwwwwwwwwwxwwfwwwwvuwvfwggvggwwxxwwxwxgvvwwxwwwxvwwgwwwfxwwvxwwwwwwwfwvwvgvxwwgghhuwxwwxxwwxwwwwhwvfxwhfwwwuxwwgvwwfxxwxguvwfxvwwwxvwwwffwwwwwwxwggwgwwwwwwxfwwwxwwwwwxwwgwwwvwxwgVwwgfUxwwxwwxwxwwwwwWwxxwfwwfvwvvvwfgvuwwfgVfwwgvvxwwwhgwvwwwwfvfwwwgxwhwwffevwwwuwfxwwwwfwwfwvggfwwvwwvwwwwwxwwwxwwvvxxgwwhwwgwvwwwvwwffwxuwwVfxwwwhvwxwvxgwvwwwwwwvwwwwwwxhgwwwwxwwwgwvxvvxvwxwwwwggwwxwvfwxxwwxwwwwwxwxwxwwwxwxvggwwxfwxxwgwgwwxxgfxhwwwwwvvxwxxwwwfvvxvwgwxhgwwwwwwgvwxwwwwxwxwxwvgwggxvwwgghxgxwwxwvxwwxwvgggxwwwgwwwvWwwwuwwfvvwfwwwwggfwwxUwxxwwwxwwwxwwwwwwgxwwwwwxwwwwxgwwwfwhwwvhxwvfwwvwwwxwwwgwwwgwwgwwwwgwwvvgwfwfwwvwwwfxwwfvvuwvwvwwwwwvwwwvfvuwgUDvvwfwwwvwvguwwvwvvxwwwfguvewffwwvxwwvgwwwwvxwxxxwfvgwvwfwwwfwwwxvwwwwwwwwwwvfwvwwxxxwxxfgfvwegwwwwwwwvwwwxvwvxvgwwvvwwvxxwuwwwwxwxwvwuwgwfwwwwwwwuxWfwxwwwxgwxwuwfgwxwhxfwvvvwwwwwvgUwwwwfwwgwwfgvwwvwxwwwwWggvwgegwxvwwwwwwfXxWwwxwwfvwfwwvwwwwhwwgwvwxwwxgwwWvvwwuxwwwxxvwwxwwxxwfwgwwwfWwwwwwwwgxgwwwxwwwxfwwwwwxwvwxwwwvwxwxwwwvfevwgfwvwfvvwvwfwwwwwwxwxwXwwwwwxxwvwwfwxxweUDvvwffwwwxwxwwgxwfgxwggxfvvgwfwwvwxxwwwvwxwfxVxgwwwugvwxwWvwxvwxwxxggwwwwwgwwxwxxxxvwvfwggxwwxhwwwwwfxxwwwxgwwxvxgwxvxggfwwgvwgwxvvwwfwwgwwwXwwwwwwxuwvwxwhwwfggfwwvgxgwgwwwwwvvWwwwxwwxgwweuwvggwwxwwwwwwwwxxwxgwvxwgwxwgwwgvwwvwwwwxxxwwxxwxxwwxwfxxwwxvgxxxvwwwwwxxwfhhxxwwwVxwxwxxgwxxvwvwfffvwxfvfvvwxvwvwwwwwgwwwggwgvxwuvwvwwwwwwfwfvvvugvguwwwffwwvvwuvwwwwvfgggfvfvVvwwwwfwvwwfxvwwfwwwwwxwgvwwgwgwwxvwxgwxwwxvxwwwgwwwwwxwxwxwvxwxwvvwfwfuwwvwwgwwwwwvwwwwwwwwvwwxwwwwwvgwvwwvvvffwgfvwvvwvwvwwwwwvvvwwwxvwwvvwwvwvwxxhwfwfwewwvvwwvUvwvxuwxvwggfwvwwwvwxwxwgvvwvwxhhuwwwwwgexvvfwgvwxwwwwwwvwwwwwwwwwwwxxwwwwwwwwgvwxwwwwfwwwfwgxggvvxwWfxxwwwwxxwfwwwvwxgfwwfuwvfwwwwxvwuwvwfwfvgwwwgwwwxwwwvwvwvwwwfgxwxwxwwwxwwvguwvwffwgfwxvwgwfwwgVWxgwxvvwvvfwvwwwwwwvwxxxvwwvvuwwwfvxvxwgvgwgvwwxwwxgvwwxxxgwwwwfwgfvwwxwxwwxwxwxgwwvwxxwwxhwwxvwxvhwwwxxwxxwvwwweuwvvvxhgxuwvwvwwwvvxvgvxvvwvgfwwhvwwwXgwxwwvxwxxwwwgvwwvgWuxwgxvvvwfgvfhgwwvwvwgvwwWhfxgwwxgwwvxvfwuwwfhwwgwwxxvwwwuwgwgvxwxwvfvgvhvwWhvhwwxxxwwwwxwwxwgWuhgfvxxwwwhwwwwwvxxfwvwwwxxwxxvvUwxfwfxwwwxvwwwuwwwwgwgwgggVTwwgfVwwvwgewfwwwwwxggxfwfxvfwgggwfvwxxgwwgwgvxgFSwvvfwvgfwgguvwvwwfuvwwvgvwfwvvewwwwwfwxwxwgwwwwgwxfwfwxwgewgwfwwxwUdwwwwxwgggxxgwfxxwwvxwxgwvgfwwwfwfwvwvxgvvghhwgwxvwvwxxwxgxxwwwxvwwvwxvwwwwgvwvwvwvwUgwgvxhwgwwwvwwwwwxWevvfffvwwwfgfwvwwwevxwgwwwwgvwwwgwfgVwgwfgwwgwxwXwwgxwgwvwfxwwwwxwgwwvggwwhxXxfwgwvxgwwggvwevwvwxxwxwwfwwwggwwvwhvfwwwxxhgwvwwwwwxgwwwwwwvwwxxxgwxwwwfvVwxwwhwVwvwggVwwxwghvwxgvxwwwwwwwxxwxhfwgwvgVtfwwvEuSfwwfvvwggfexwgwwxwwwfggwwxwwvwewvxwwxvxwwwggegfufgTufwwwWwwgwxgugwxwxwwwwvwwwwwwgxwxxwwggxxwwxwuwfwWwvxvwvwffxwwwXvxwxwxvwgwxxxwxxxxwxxxxwvvvvvwvxvxwwwxxwgwwwwxxwwgvwwxwxwwwxxhwxxwgvwvvfvUgfuxwxgwwwwwgwwwwgvwwwwwxxwhwwxwvwwwxhwxvwwvgWwxgvwwwwwvfwvwwwwwwwwggwvwwxgxwwwxwgwwhxghwwwwwfVvwwxxxwwwvwxvwggwxvwgxwgwgvwwvhwwwwwXgwVwwxgwgxwwwwwvwwwwxwwwwwvfvxhhwxgxWVxgxwfvxgwwvwwwvwxwuwwwvvwwwwvwwgfvwvwvxhwwwwwwwwwuvwwwxwwvwffvvwguWgvuxwwwwwVwwwgxxvgfgfvVesdvwwwwgwwwvgxwvgxwgwwwvvfwhWUfvwvwwvwuvgxwghwvwwxwwwxgwwwwwxwvgvvVesdwvwwwwwvwwvwxxwwwgwwwwgwwwwwxwvwwwwwwwwgwgvvwwgxhwgvvwwwgvvvvwwwwwwfuvwwwxwwfvtuwvvhwwwhwwwwwwwvwwwwuwxwwvwFwxgxxfgwuvwgewxxwwwwwwggxhgwxwxgvwwffvuggwwxwvfvtuwvwvwxhwxwwgwwxfwxxwwwwgwwwgwwwwwwvwwvfxwwwwwxxwxxwwxxwwwwwwwwgwwvvwxwwxwxhwvxwvvvxwwxxgwvwwwwwxxgWUfwvwwfwwwxwwwwwwxwwxxxwvwuWfuewwxwwwwgwwgxwvwvwvwfwwwwvwxwxwwwXxwwxxxgwwwwwwwxwwwhxwwwxwwwwwwgwwgghgwwwwxwxgxwxwxgvxxwxxwwwXxwwwwwwwwwwwvxwwwvwxxxhvwwhvwggvvwwvwhwxwgwwvwwwxwwhgwxwxwwwxhvwgvwwwwuwwxxwwxvggwwwxxwwwwwfgwxxvwwxwwxwwxuwwgwxgxxxgwxgwxxgwwhwxwwhwxvwwvwxxwwgwwxxwwwwxxwwxxwvwxwxggxwwxwvwhxgvvwvwxxwxvwwwwwwwwxxwxgwxuwwguvvgwwwfefwegVevfwuvvvvvwwwvftwwwvvwufwvfgvvvvvwwwwvwvuvffdwfvvugEtvwwfufuwvxvvVvgufuweuuvvwwxwfvvvwwuWwwwwwxwgwwfvwvgvwwwffvwwxwwxwvwwxwwwfwxwvvvxwwwxwweewduxgwwwwegxwegwxwxgevwgfxgwwvwxwwvfwvwwwwwwxwwguwevwfgvvvwvwfuvwwwgvfvvwvVvwevvwfvxxvwwvwwfgwwvvwgwwwwvwvvvvxgwWwwuwvgwgvfhXTvwggwvgwwwvgxvVxXhewwwgwfvuwvvvfvvwwwvwuvvfgWxvgwwwfvvxwwxxxwfhwwwwgwwwxwwvwwwvxwvwxwwfwwwghhfxwfxwfwxwxwwwwxgwxwvwwwwvwwvwfWUvwfvvvvvwggvvWfuvfvfwgwwewvvvgwwwwwvwwvvwvwvwwwwwvwgwgffvvfffuxvwffgvvgvGvwwwwwvwwwvwwxgwvwwhwwwvxwwWvwwwxwwvwwwwgfwuwwwgwwwvxwvgwwwgwwvxxwwwvxwggwwxxwwwwvvwwwwwwwwwwvwfwxgghxvwwgwwwwxxwwwxvuvwwwfwgvuuweuvwgvfwvvwgwwwwwwvvwxwwwxxgvvwvgxwgwvvwwvvwgwwfwwxwxvwvwWHgTwwvxvuwxxgxwwwwwwwgwwwxwxxxxwvvvwgxvxwhvwwwxwwwwwwwxwwwwxwxwxxgwwvwwggxvwvwwxuwwxwxxxwwwwxwwwfwwwxuwwgwggvwwwvfwfgwwwwwgfwgvvwfwfxggfwvxevuwgUEvgwwwfvxxwwvwwvwevggfvvvfwvfegwggevwvgxwfwfECwfvfvuvwuwvwfvfwwgegvwfwgwwgwwvfwwwggvgwgfvwwwwVwxwvwwxFvegwwwxVwfwwwxwxwxxvgewfvvfvwwxwwwwgwwfgugxxwhwfvvuwggwxxfxwwgxwxwwwwwgwwwwwwwgxwWuwwwwwffvgwgwwugWwwggfwwgevwvwwfvffgwvxuwwwggwwwwvvwwwgwvvvxwwwwxfxwvWxggvxgwuvvfghwwgwxwhxwvvwggxgwwwwvhgwwfggwgwwwwwvvvvwggwwwwxxwwfvxvwwwhwwxuwgwggwwfwwgwwvvwwwgxggwwxwwfwggvWwvgwvwwwgwxwwwxxvgwgggggwgvgvfwevgvwwvwwwfvvgVewwvfggggwxxgvwfVfxfwwxwg4vdVgwwwvwwxwxwgffvvwvfwwwevfVxffgwwwgwwTuuvvwwwwwwhwwwgwwXfggfwxxgfwwxwugfvggfvvgwwWgwwwwWvxxwwwxxwxvfwwwxwwwwwwvwuwvvvvwwwwwwfwxgwxwvwwhwwxxwffwwwwwgvwwwffgwwxvvwxwVfVxxwwwwgwwwwfvxwxwxwhgxgvwgvwgwwwvwwfvwwvfgxwxwhwxwwgVgwvgwvxgwxwgwwgwgxwxxwgwwxeWhfgfvwhwwwevVwwwxxwxxxvgvwwwwxxxxvwghxvxxwwwwgfwwgwwwvwggwvwUvwxwwwwggxvwxvwgwgxwwwxwwxwwwgwwwVvUwfwwUvxfvxvvewvwvwvwvwfvwwffhwxvwxwwvwvvuwfwwxwvwwwfwfgwxewvwgwvxwwwwwwgffwxwwgwvwwwwgvwvgwwwvwvwwwxfvfgWwfgxwxwwvwvwwwwwwwvwggvwwwxwvgwwvwxwwxwvwxxwxwwwxvwwwwwwwwwwfwwxxvwwwwwwxwwgxxxwxxwxvgwxfvwwgffvwwwwggwxwgwwvwvwvwfwfwwwxwwwxwwvwwwwwwwffhwxwwggvwwfwwgxwwwwxxggfvfwwwwfvwvxwwvgwwgwvhwfwwwxvgwvwwwxwwwxxxxwwwvwxxvxvvxwvvwhwwgfwwwgwxwwwwwgwxwxvwwvwxggxwwwwxwvwvwwgfgwwgvxwxwwwfvvwvvvwvgvgwwwvwvwfvfwvwxwvwwwgwwwgwwwxwwwwvwvwwxxwvuwfwwwwwwvwwxfwfwwwwfxxvxvwwgwwwvvxwghwwxvwwwuwvwvxwwwwwxvwvwxwwgwvwvxvfggwwwghxxxwwwwwvhxwwwxhgwvwwwwxwwxxxwxwwwvvxwvwwwxwwwxxwwxwhxxxvvxwxvwwwfvfgwvwxxwwgwwvwgvxwwwvwwwwwwwhvxvxwxwxfwxfwfWwfgxwxxxwwxwwgwvhwwwxwvwvwuwvwvhxwxxxvxwxwwgwwvwgxwwwwxvgvwwhwfgfwwwfwxxvxwwwxhvvxwxgwwxfwwxxwwxwxwwwwwwwwgvwvwwwgwvwxfwxvwwwvwwvwvvwwgwvwwwwxgwwwwvwwwfwgvwwwvwvwvwvwxwxvfxxfwwwgwggfgwwwwwvgwwxwvwwfvfwwvvwwgxVfduxwwxwwwwwwwwfFwwwgggwwwwwwwwvvwvxxwwvwwxwwwwuwvwwwwwvvxvwwxxvVftuxwghhwwxwwwxwwwwwwxwvwwwwwhwwxwgwuxxwwwwwxwwwevvwxwwwwwwvwwwwxxwwxfvxwggwxxwvwwxfwwWwwffxwwwwxxwwwgggwuwxgvwwwxwxuvxwwwwwvwxxxxxwwvwxgxwxwwwwwwxvwwwwwwwwxvwwwwwwwwwvwxgwwvwgwvfFvwgwfwwwxxwxwwvwwwwwgvwwxwvxwvuwfwwwwvgfwxfvwwhxwwxwhwvgwfvwvwwxvwwhwwwwhxwvxxxghwgxwvwwwxxwxxxwvwwwwxwxwwxvhwwwwwwwxwxwwxwwwwwxwxwwgwxgwxwhgwxgvwwwwhgxwwvwxxgwvwwvwvwwgwxgwwgwxwwwwwxvwvxxuxxwwxxwwwhxxwxxvwwhwwxxwwwxwwxxwwwwwwwxxwxwwwxxwwxwwwwxxxwvwwwxwxgxwxuxggfvxvwgfwvuwwwfwgWvwwwwwvxwhvwwxwwwvwwgfvwfgxwvwwwwvvhxgewwxvgwfgwgvgveggwfwwxfWgwfgwfwfwvwwxfgvVwhwVXxxfhhWfgwwgxwxvvvwwxgwwfwvwxwxwxwevwvwwxwwwffxgxwxwxxwwgxwgwvwwfxxwgvfgxwVhxhvvwwvwwwghwxyxwwwxwggxxwwvwwwwhwwxgvvwfwxwwvwwwwwgwvwhwwwwwvwxxwgwvgxwgwwwwgwwvwvwwwfgwfxwxvvxxWwwwwXxxggxwfwgwxwwwwgxwvwxvwxwwxwhvxxfwhwwwwwxvxwwwwwgwgwwwwxvgwvwxvxgwwwxxgwvxvwxwxxvxxwxxxxxwgxwwxxwwxxwwwwfwwwvwxwwxxgwxwwwxwwwgfwggwvwfWfffggwxxwwgfwxwwwvvwgwgwwxwvxgxwwgxvwvfwfwwghwwggwfwwwwWxwhvxwwvWwxxWgwgwxwwxwwhwwgwxhvwwxvwwgwgwgxwxwvwxwwxwwxvxvwwwwxwxwxwvwxwwwxwxwwwwwwxwwwwxhWgxhvxwxgxxwwxghvxhgwwxwxxxxwxvwvwwwgwwxwvwwhwvwvxwxvgvxwwxwwgxwwwwwhxwghwwxwwwwvxxgxgxwvwxWwxxhWwwxwwhwggwwwwxhhwwhgxwwwgxwxxwwwwxwwxvgwxxwxwvgxxvwwwwxwwxgxwwwwwxxxxxwxwwwwwgvxxxhwwxwxxxxwxxwxvwwwwgwwwgwvwgwwwxwwxgvgwwwwwgvvwwwwwwwvvxwvvwfwwfggwwwwwwxwwwwwwvxwwwwxwxywfvwfggwwfwxvvVwvwwvggwxxvfVwwwwxwwwwwwwxwhwxxvgwxxwwxfvvwfvvWffwwwfffwwwwgwxwfuegvwwvgwwxwvxxxxwvwwvvwfuvfgwgwwvwxwwwxxxwvuuwwvvwxxwwwxwwxwwxyxwhhwyfvfwwwwwxwxxvwwxwxwxwwxwwwvwxxgwwxxxfeuggwgwwxwxxwwwwwxwwwwxwwwxwxwxxxwxffuwufffgvwgffggwwwwvwwgwxwxxwxhxxxvvfwwwwwvwxxwwwxwwxxwwwhwxxxxxfgugvgwwwwxxwwwgvvwwxwwwwwxxwxxxywxvwgvgxvwwxwxwxwwxxwwxwwwxxxwwxUVVvVvvwfwwwxvgvvwgwvxwxxgvxwhgwxwgwwgwxxwwxxwxgvvfwggwxxfxvxwwwxxxwxwxxxwxggwgwwxwxwwwwxxxwxfvgwwwwwwxwgwvwfwwwxxxwvxxxwxxwxxwvwfxvwwxwwggwxwwwwwxwxxxwwgxdgggwwgwvwwwewgwwwvwwwvwwvwxwwwwfwfxwxgwwwxgwxwwwvgwffuvvgwwvxwwwwwwwwgwwwxfvwwxxxwvwxxwxxxxwwwwwvvggvwwwxwgewvxwwxwxwwwvwwxwxwvxxxxgxxwgdvvwgvwwxwwwvwvxwwwwxwwwwwwxhxwwxwxxxwwxxxxfwvxwvfgvwfgwugwWgvwwvwwwgevwwhwxwdvwgwwxwvwwxxgwwxguxwgvvfwgwwwwffgwvWvwgwvxwxwwwWhwgwwxxxvxxwwwwxxxwxxgxxwWwvwvwvvvvwwvgwwwwwwwxvwwwwwwwxwwxwwhwwwxwxwxxwxvwvwwxewwxwfwvgvwwwwwwxxwxvwxwwwwhxwxxxwwvwwwwguwwxwwwwgwfwuxwwgwwgwwhfvwwwwwgwwgwxgxwvwxwxxwwxwwggvgwefgwwgvwxwgwwxwxxwwwwwwxwwxwhxxxxwxwwxwwwwwwfvwwwwwwwwwwuxwxwxwwgxgwwwxwwwxwxwxwwxxwxxxgwtwwwggxwgxwgxwwxxxxxxwxwxwxugwwFwvhgwvgwwuwgfwvwwwwvwgwhwwwwxwwxwgvvwwhxfwggxwxwxwwxgwvxwggwwxvwxvWvgwgxhhwxwxwxxwxhxxhxhhwxxxwwxhwwwwgxwwvwxwwwwwxwxwvwwvwxwwwxwwxxwxxwwwvxwwuwwwxwxxwgxwgxxhxwxwwwxxuxwwwxgxwwwxxwffhwfwvwxwwxxwwvxwwwxwxwwwwwxfwwvvuvwxwgxwxwxvvwwwwwwwwwxwwxxxwxwwxxwwwwwvwvwwgwvwwwwxxwwgxxxwxwgwwfwuwwwhvwwwxwxwvxwwwxxxxyxwxwhvgewhwewvwhhffwwggwvxwgwwhfwgfgvfxwwxxwwxwxxwxxhvgwhwhegfgwgvwwhwwxxxwxwwwxwhwwvvwwvxvxxxxxxxxxwxxwgwgewfvwwvxxwwwxxwwwxwxwwwwwwgxwwxxwxxxxwegfgwxwxvggxxwwxwfwxhgwwwxwxxwfvxwxxxxwxwwwgwxxfvuvwwWfwwggwvwwvgwhwhfgwwwxwwwxwwvvvwwvwvwgwwwwxwwxwxgvhwwwwxwxxxxxxhxxxxxxxxxvvwwvwwxwWgwvwxwxxxxxxyxwgwwfgwwwwwxhxxxVgWWWffvwxuhwwwwwwxwhfxwfgvwwwxxxhxxxwwxxxxggfghwgxuggxfgwxxhxhxxVwuwhwgwxxxxxxxxwxwhxxwwvwuxwxwxxwxgwwwxxwwwwwxwxwxxxxwxugwvwwvwgvgxwggwwwxwwwwgfgwwwwgwvxvwgvwxwwvwfwwfvwxgwhwguwgvfwwwwwwwxggvwwxvhwgwwwgwggxgwhgvxvggwvxwwvxwwwvvwwvwwwvvvxwwwxwxvgwgwwwxwgwwwwwwxwwwuxxwxgxxwvwhgwwwwvvwwgwfWftgvegwGVvwwwwwgfxvggggftgwdgwwxwxWwwfgwfwwxxwxwxxwgvggwuwgwfGwwWgvugWwwggwxwgwfFwwGvwwwxxwwwxghxgwxwwxxwgWufwuwgwwgwffwwvgwxwxwwwwxwxxwxxwxwwwxwwxxwvwVwwWwxwgwwfgwgvwgwwwwxwgvwwwwwwwwwhwxwwwwvgwvwfxwwwwgfwfwxwxxwxxwvxvWvwvwwwwxxxwwwwwgwxwwvhvevwwwxxxgwxgwwwxhxxwwwwgwxwwwwwxxxwxxvwwwvgxvvwwwwwwxwwvgxvvxwwwwvxwxxwwwwwwxxvwwxxxwwwwvwgwxxwggwwgvwwvwwgwwgxxwgxxxxvgfugvtwgwwxvxxxfvvfgffwxxwwwwwgwxvgwwuwwwWwwxvwxwwwxwwwwwxxwwvWwwGfxxxwwwwfgvhvwxwxwwxgwxfwwwwxwgwxgxxwxxxxxwwgwwxvwwxwwwuwwwwwwwxvwwwxwwxwwwxwwxxwwwxxwxwxwxwgwxwxwwwxwwgwwxwwxwwuwwxwwxwxwxwuwwwvwvwwwxwfwwgwwwxwggwefugvwwwhfwwgwwwfeguhwwwxxgwgwwwvwwvxfvvwvggwwwvwffvgxwwwvwvwvwvwwxwwwwwvgvgwxwxwwwwvwvwvwwwwvvvwvugugwvwwxwwwgwwwwwxwwwwxxwxxwwxwfwvwvwwwwwvgvgwhxwwwwxwwwxxwhhfwwwwgwwxwwfvwvfwwwwfvffvgwVfwxwwwDddfxwewvwvvgvgwwwwxxgffVewxwWvxxwwwwwwwvwwwefegwwwwwwxwxwxgxwewxwXuugughwwhvwgwwwwWxwwwvgwxgwvvvgvgvwffVewwwWwwwwwwwwwwwwwxxxgvwwwwwufgwxwwwwwwWxwxwwfhwwxxwwwwwhwxXgwwwwwwwvxwWuwvwxgvvwefufffvgwwvwwwwwxfwvwxwxfxxwggwwxxxwfvvwvwxxhffvgwwwwwwwwwwwfxwwxwwgxwxxxwxwwhwwxwwvwwwwvvvwwwgwwwwgvxwwwxwxxfwwwwwwwxxxwwwwwwwwvwvwwwwxxxwxxgwxwvwwwwwhgfxxxxwxxwwwfwwffvgffvgwwwwDddfxvuwvwxgwwwgwwwxxwwxwxxxxwwwwghwwwwwgwxefugxwwwgxwwwwwxvuwxwXuwwwxxgwwxxxxwhgwwxwwwwwwgxxwwwwwwxwgwvxxxvvwvgwwwwwwxwxwxxwwwxwwwwgwwxgvwwxwxwwwwwwwwwvwwxwwxxwwvwwwwvxxeWwwwwwwWwvxgvwwwfwwwgxvffggvwWwwwwfvwvgwfggvgwwwwvvxvwwgvgwwwUwvgwgwxgffwvwhwvvgwxgvwgwwwwgvxvwwwgxxxwvvwxxwwgvwgvgwvwwwvwWVfggfgwwwvxwxvwvwwwwxxfwxxgwwwfewvvwwuvxghwvffwwwwwWwvwxxfvuwggwwhwwwxwwhwwwgxwfwgwxgfefwugwgVwwwvwWvfgwwwggggvvwwfvwggwwfffvhwfuvgwwxwgwgWwxwwhWwwgxgwwuWWxxgfggghhwgwggvhghewwwwxggvgvgghggwwwfxwwxvgfvwwwwggwgffgvxghvfwvwwwwwwwwxxwwwwwxvwwwwwggwgwwwwfgxwwvfggVxwwWfvuvwwwwvxxxwwwgwxxwwvwwwwuwwgwuxgggwgwgfwwvffggxwwgggwwuvwwxvwxfwxgxwwvfhwwwuxxxxwxwfgwfgwhgwwgwwwgvgWxwhWwvxwgvvwgxwwhwxwwwwxwwhxvwxwhwwwvhwwvvvwwwvhwwwgwxwwxgvwxwwwwwxwwwvWwxwwxwwxwgguwxwxwwvxwwxwxxwxwwWvxxwxvvxwxgxwxwwxegggggwgWwvgxxwgVfvWgggvggvwwgwgwvvwvghgwwwxxwffwgwwgwwwgwWwvxxgWvvwxwhwwwgffxWXgwwgvxwwwwwwwwggxxwXwwxfvwxfgxwxwWwwgvvwfxxvwxwwgufgwwwwvwwwwfwwwwxvxwwxgxwvwxwwwwxwwwwwwxxvvwxgwgxwwwvwxvvvwwvwwwvwvvwxwwwwwwxxuwwgwwwvwwwwwwwxvwwwwvwwwwwxfvfwxwxwwwwwgvwwxxwwxxwvxewfvxvwgvwwxwvxwwwwwwgghwwwxvwwgxwwwxfwwwxwxvwwwwwgvwwwxwxwwwxwxwxxuwwvwvxgvxvxwvxvwwwwxwxxxwwwxxxwxxwwxwvwvwfVUVffghffgwgwfwvvVexgxfwWVffggfwwxwgwvwxwfxwxxwxxfgfweffVggVVxwwfwuwxxxgVwxgwggVVwwhwwxwxxgxhhwxxwhwgffwhgfwwwxwfvxxxwwwwvxvwwwxxxxxxxwxxwvggfwwwxxwxwgxfwxhgfxuwxwwwvwwwxxxwxxggxxvwvwfwUwwwwwwwwvwwvwfwuxwxvwxwxwwxwwxxxxwxwxxxxgwfvvxvuwxvvvvhxwwxxwwxxxwxxxwwwwwxvwwxvwxwwwwwwxwxwwxwxxxwwvwxwwwwxxwxxxwwxwwxxwxwxfvUUgfwvgxgVewgwfwvwvwgwxwwwwwxxvwxwwwvwxfxwgvvwfwfggxgxwgwgwwxgwVwvwgwhxwwxxwxxwwxxwwxxwwxwxxxwwhwxwwgfvwxvwgwvhwwwwxwxxxxwwwxghxxwwwwxwwxwwvwxwxwxxwxwxxdwwwwwwxwxgwvgwxgwvvxwwwxfwxwwvxgwggwwxgwwwfwwwxgxwxgwwxwwvdvwwgggwwwwwxvwfwwwxwhxgwwwwwxwwwvvxhwwwwwwxvxwwxwxxxhgwxxxwwwwvxxwgfdgwxwxxwwvwwwwxxwwxwwwvwfxwggwgwvgwugwfwwxvvvwwwwwwuwwuwxwxwgwwgwwwwwxwwwwwwwwwvxxhwfgvwwwwwxgxxwxwgwwxxxxwgwvwwwvwxwfwwwwvvwwxwwvwwxwwvwxxwwxgwwhwxxwvwwwgxwxxvwvgwxxwxxvwwgwwvwwwwwwwxxwxgwwxwxwxwxgWwvwWwwwWevxwwxevwgfvvxggwwwgvvgxxwxwwxwwfwwwfwgvfvhwxhwvxvhxwxwwxwwxwxwxwxxwwxgvvgxxvwgwwvgwwwwgvvwxxxxwwwwxxxwxxxxwwvwwwxxxwwwvxwwwxwwxwvwxxxxwxwfwFgwFgvfwgvvggwwwvxwxwwwvvgxxwwgxhvwwwxxgxwxwwwggxwwwwwwvxWgxxWwhxhwwhhwxwxxwxWxvwxxwxwxxgwwwwwxxwwwwxwwxxxxwxxhxwxvwwwwwwwgwwwxhwwwxxxxxwxxvxxwhwwgwggwwvxvxhwgggvwVxwgwxWxwggwwwwwvwgwwhwxwwVwggwwxgwwwxxwxvgwghxwwgwxwwwXwxxwwxhxxxxxhxxwxhWgvxxwwwwwwxgvxwgvhwxwxwxwxxxxxwwxgfgwwgwwxwxfhhhxgxwwwwxxwxwxxxxwwxwgwwwxwgVgvwxwwxvWgwwgwwwgWwwgwhhwxwvwwwgxwwwxghwxxxhxwwxxwwhgxhxwgwxwwxgxwxhggxfggxxxwxwxxxwgxxxhxxgxgxxxwxxxhwgwxwwwxwwwxxwwwxxwwwxhwwxxxxhxxxxgwwxwxwxwxxwwxxwwxwwwwwwwwxxxwhxxxwwwxxwgxgwwvxwwwwgwVwwgVgwgwwwxgwwhwxxxwwvxwxwxwxxwwxwwwwwwxwwgwhxwgxxxwxgxxxxxwxxwwxxxxxyxwwwwwwwxxwgwvxxxwxxwxwwxxxxxwxwxxxwxxxghwxwxxxxxwhxwwxxxxxxWwggvwgwwwxxxgwfgwxWvwxwhwgwwwxwgwxxwhxxwwxhwgwxxxgxxxwgxgwyxwgxxwxxxxgxvwwxxwxxxxxxwxxgvxxxwxwwgxxwxxwxxwxxwxxwxwhwxwxwxwwwwxxwxxxxxxwwwxxxxxxugxvwwvwwxxvwwxxwwwxxwvxxwwwxwwwwwwwwwwwxxwxwwfwwgvwwwxwxxxwwxwwxweuwwwwwwxxwwywwvxgwwvxwwxwwwwxvwwxxwwwwxwxxwwVvuwwwwwwxwxxxxxwyxwxxgwwwuvwvhgvggxxwgwwvwwxxhwwgvgvvwwwxxwwwwxwwhxxxxxwwwfwvfvxwwwxgwwwxghxxxxgwvwxwwwxwxwwvxwxxfwwwwvxfwxxxwwxvwwwxhxwvvwxxxwwxxwxxwxwwxvwvxvwwwwwwwxwwxwwvxxxxwxwxgxxwwxxwxggewvgvgvvvwxgwxvwwxxwwvwxwwwxwwgwxwxxxwwxwwwwwwxgwxwxxxwwwwxwxwxxxwwvwwfwvwwxwxwwxxwwwgxwvxxxxwwwxwwwwwxxxxwxxxxwxxfwWgvvwvgwvvwxwwxxwxwwxxwVguvxgxhgxxxxxwxxxxwwgvxvwggxwhWxfwwwxxxxwxxwxgxvxhxxwwxwxxhwwwwxxxxxwxwxxwxwxxhwwxwxwwwxwxwwwwxxwxuwwwggvwvwwwwfwwgwwwvwvwWwvwwwwvwwwwxvvwvwwgwvvvwvxxgwWwwwewgwgvfwwwwgvxxwwgwvwwwxwwfwgvwwgwwxwwwxgwxxxxwwwfwwvwwgvwwwgvwvwwwwwwxwwwwwvwvwwxwwxxwwwwgwwvgwvwwwwwwwwwwwwwwxwxwwwwwwxwxxfxwwxwfVvwgvevwguDeufwgfwwgwfvffwwxwuffwfwfgwwwwwxfwvwwxwwwhvxxgxxwfwwvwvwVwwvwwgwfwvwvwgwgfvwggwwgguwxwwwxwgxxgvxwwhxwwwxxwfuwvvwwfvgfwwwwwwwwwuwxwwwwwwwwxwwwhxxwxwxxxwwwwxvwvwwwwwvwhwwwwxwxxwxwwxwxxxxwwwxhxvxhxwwwwwvVdwxwwwfvuwgwwwvwgwfvvxwwxwgfwwwvvvwwxwwxxwhwxwwwwfwwfwwwwvfvvxxxxgxxxggfwgvxxxwwxhxxxxwxxwvwgvvewwwxwwwwgxxxwwxgvwxwxwxwwxhxvwwxwxgwwgwvwwxxwwwxxwwxxwwxwhwvxwxwfxwxwxwwvgffVfgDuufwwwXWwwfwwwwwwwfwwwVwwwwwwwwwvxwwgxxwxxwxwwwgwvwfwXwfwwgxfwwwxgxxhxvwwwwwwgxwwwwxxgvxwwwxxxwwxxwwwgwfgvvwwwwvxxwwwfwwWvwxwxwxwwxwwwxwwxwwxwwgvwxwxxwwxwxvxxxuwvwgwwwwvxfwwwwvxwgxwwwwwwgwxwwhfxwwwWwwwxgwhxwwwwvwvgfwvwffwwhwwwwxwxuwwXwwhwgvwwwwwwxwxwWwwxxwhxgwwwvwvxxwgwvxwwwxwwwvxwwxwwxwxxwwxxwxxvwfwwvgwwwwgwxwxxxxxwvwwvxwxwhwwwwwxxgxwxxggfwfWvufggwfwuwgGfxxwwvvvxxwgwwWFwfwwgwwgwhwgvgwxxwxwwwwwxwwwwggWwfWggtgwwGvWwfWxwwwxfwxgwvvfGwxhwxxxxwhwxwhxxxxxxxxwggWvwwwhwwvwxgwxwxxwwwxxwwwwwwwwxxwxwhhwwwxwgwwxxwgwvWwxgwwxgwwvwxxxwwwwvwwwwwhxwwwwwwwvxwwwwwwwxwgwwgwvwwuxguwwhwwwwgxwvwvvfwwxwwwwwxwwhxwxwhwxxxhwwwgwwwvwvvgwxwXvwwxhwxxxwxxwxwxxxwwxxwxxxwxgxgxvxwwvxwwxwwgxhwxwwxxxxwvxxxwwxvgwhxxwwwwxwvwwwhwwwvxwxxxwwwhxwwwxxwwxvwxwxwggfgwvwgwuxwwvxgwfwvgxvuwwxgfwwffwgwwxwwwxwwxwwxgwgwwvhxgxgwugwwWvwWwwxgfwxgxxhhxwwxwXwwxwwxwxwwwhxwxwwxxxxxwxwgwwxgvgwwwwwwwwwwxwxgwvwwxvwvwxwwwwxhwwwhwwxwwxxwwwxwxwwvwwwgxwwhwwxwvxwxwwwwwxxxxwxwtwwwvfvwvwwgwfwgwwxwwvfvvwwfwwfvfvwwfwvwvwwwfvvwwwwxwwgxvwfgwwvwfvvfwwxgwwxwvvwwwgwwvwUvvfwwvwxwwUwwwxxgwwwwwxgwwwvwfwfwwwvvwwgwwfvvvwwwwwvwvvfwwwwxvxfxxwwwgwwwxwwwvfvvwwwvvgwvvwwwggwwwwwgwwvwvwwfxwxxgxwwUwwwwfvgfgvwffwUggUvfwgwwgffvvwggggggf3uuUfvwgwgUvvfhgfgwxwggwvwxwxwgwffvvgwffgvwwxVwvwgxwxwfvfwgfvgxxhvwwvgwvghgfwghggwgfwUggUgvwwwxfvvfwffgwgggwgwwfvwwwvwgxwwwwwwwwgwwwwwwwfvvwgvvgwxwwwgwwwxgxwwwwwvhwwwwwvwxwwwxwgwxwwxgxwwfwgfvwxwfwvwwgwwffvwwwgxwwVefvfvfvvvwwvvwwxgwgxwxwvwwwUvvffwwwwUwwwwxggxgwwwwgvwwxwgwgwxxwwwwggvwwfwvvfwwwwvxxwwgxvwxfwfvvgwwwwxxxxwwgxxhfwxwvwwwwwgwwvwwwwwwwgwwwUwxvwwwxwxxxwwxvvxxxwffg3uuUgvwggwUvvfggfgwgxwwvwwffvgvwwhwwwwwvvgwgwwhxwwwxfwfvvwhfvgxxwwwgwxvwxghfgxxxxwgxwwxhwhxfgwvxwwxxxggwfvwwvwwgxwwwwwwwvwvwwwwgwvwvvwgvxgwwggwxvvwwwxwwwwwgxwvvwwwxwvxwfxwxgwxvvwwxeffwvvvfvvwwgggvwwwgwvhwwvwgvvwvwgvwwwvwxvfWwfwggvwvxwxwxgwggvfevvwgwvvvgwgvgwwfgffvgxxwfwvVvfwugwvfwvwwfwwwwwggxwxwwwgwvwvfvwxwvxvgwvwgggevxxwuvwwvvwwfwfwfxwwwwwwwwwvvwvwvwwfvwvvwwwwwgfwvevfvfvvwgwwvxwgwwwgvxwgwweuvwggvWfwwwgwvfVuwwgffvgVwwhWvWfvfvffggwwvwwhDeufwwwwwgVvxwwgwwvgvwvfvvwwwwWfvfgxgWexgwvggwfwwwvwgfwwxgxwgwwvfwxgWxwgvxwwwvvwwgwffwwgwvxeuvwwwwwwxfwwwvfvffuwxvwggvwxxvwgvwwgfwwwxwvwvwwwwvwwguwwwvwwxfwwvwwvwwgwwwxxvgvwuwwvwgwwxwvvwwgwwvwwgwvFewfwwvwfgwxwwxvvUwuwvgwwwweuvgwwvwvwwwwwxwvfvwUvvwfgwgwgwwwxxwwVxgxxwwfwvwxwvgwwwwwgwxwwgwgWvxgxwwxuwvwvvwwvwwgwwwguvwgwwwwfwwxvwwwxxwwxwvwwwvwwwuxvuvvvwvvwxwwwfwwxwvwvxfwvwwgwwwwguwwwwxxxxghwgwwvxvWfwgvvwfwvgvwwUefVgvwfffxxwwDuufwggwwfwgghxwggWfggwvwwVvwfwvwwgggwgxwgxwgggvxWwfhvwxwwwwwfwwvgwgfgwwxwgwgwwwxxxwwfvwwvwxwwxxvwxvWguwwxgwwxwvwwvvxwwgxwwwwxfuwwxwwwwwwwvwxwxwwwwwxwwwwwxwxwwwwxfwuvuxwxwwwxxvxwgggwwwwwhhgfuwwWfgwfgwWwwVvwvwwwhwvwwvxwfgwgwwgwvwwwwxvgwwfUwxgVvgvuxggvvwgwwwxwwggwwggwfhwwwWwxhxwwggwgfxwxxwggwwxvwwwwwwwwvgwwgwvfwgwxvhwgwxwwvxwwvxwxwxvxwxwxxwxwwwwwwvxhvgwvwvxwwxwwvgxwxwgfwxvwfxxwxwwwxwgwxwwwwgwwwwhgwfgWwhvuwwVfvwggVWvwgwgwwfgghwfggvgwxwwgwvXwvVwwwhgwvwhggwgwgggwwxxxgwwwvgxhWgxxwhwxwgvgwwgwwxwgxwwxwxwgxxxWxxwxxhwxwwwvwwXgwxvhgwxvwgwwfwwgwwwwxwwwwwwwxxxwwwxgxhwxwwwwwwwwwwxwwwxxxxgwwgwwggxxgexxwwwwxhgxxxxxwxgvwwwwggwgwxwWfWwgWwwwhwxwwxwwwggwwfxwwwfwhvgggwwxwwxxwwgwwgwvwhxwwwxwxgwwwxxxwwvxwwwggwgwwgwxxxwxxvxxxhwwwwxwgwxwwwwgwwwgxwxwxwxggwwxxwwxwwwwxhgxxgxwvwxvwhvgwwwgxhxxwgwgxhxxxvxxwvwwwxwxwxuhwwfwxgwwwwgwWvgXwgfwwXwxxwwxgwhwxWwxvxggvxwhgwggfwxxwxgwwxwgwwxxwxwwxwwwwxggwgxxxwxgwwwxxwwwwxwxwggxwhxxwxgxwxvxwwwhvwxwVxxwwxwvxxwwxxxwwxxwxxxxxwvxwwxxxwwwxwxxwwwwxxwwxugffvvxwwxwwvgwvwwgwwwwxggvvvwwxwwwwvwgvgxvwwwxwwwwwvwfwwfvwxwwwghwxxgffvwwwgwvvwwwvwvwxwxxgwfwfwwhfvwfwgwggwgwgxwggfwvxfwvvgwxgwwwwwwxwWevwwhwwwfwvwwvwwxxxhvgwvwgxwgwwgwwwwxwxwvgfvvgvgvwwxwwwwvfwwgvwveuwwxgwwggwgfwfwwwgxwvgwfwvwhwgxwxhxwvgghwwgwwvgwxwwgwwwvgwxhwxxfwvgfwwggxwxwxgfwwggxxwfwwxxwvwwwwwwwwxxwgvwwwxwgwwwwwwxwvwwxvwwxwwwxwwwwwwwwwxwgvwwgvwwxwwwxxxwwhvwwxxfhxwgwwxwxwfwwwxwgwwxwgwfxvwvfvxgwvxvwgwwwgwwwwfxgwwwwvxgxwwfxgwvwvwfwwwgwvwwwgxwvxwwffvwwxvxxxxxwxwxvwxxwwvvggxwwxgxxxwxxwxwxvwwwfvwvxgvvwvwxwxwhwxhvwfxfwxxwwxwwxwgxwwxWvuwxxwwwxwwwxxhwwwwxwggxgxwwwxgwwxfvgwfwwwwxwwwwwVvuwwwwgwwxwxwxgvvgwwwwwwwwwwvwgvwwwxwxwhwwwgwgwwwgwwwgxwwwhwwxxwvxwhgwwwwwxwwhhgwwxwwggwxggwwwwwvwwwwxwfwwvfwwvwwwwwwxxxwwxwwxwxxxwwwwvhwwwwgwxwgwvwwwwwwxxwwvxwxxwwxswwwgvgwgvvwgwvwwvgwggwfvgggwwgwxvvvvwxwewfwvwgwgwwfvgxvwwwfwwxgwevwgwgufwgffwggwgfhgxvwvgxfwUxvwvwwwfffxwwwgxwvgwxgvvgxgvwwwwwgxfwvwxwvwwwwwxwhwwwfvvwwxxfwguvwwwxwwwxwwwVwSwggvwwgGdgwvwwwwwwwwuuwwvxwwxwwwwwxfwvwvwwwvgffvfWfggvwwgfgufgfvWvfgfvfvvgTuvwgghfvegfwffwwwgfgwgwwwvggwfvgwwfwwvgwvggwxgfwgffwvvhgwgfgugwxWgwwwwxhvVwxggvvwvwwWuxgvxwgVwdwwwffwxwwgwgfwvxwxwwwhwwwgwwwxxxwxxwwfxwxwwwgwwvxwxfxxxwxxwxwxxwwxxxwgwxwxwxwfwvwwgfvWuwFvfwgvwgwwwgguxwwwwwVewgwuwvwwxuvwgWguwwgxvwwgwxwwwWvWwfwgwufwgfhwfhgxwvwwwwxwgwvwwwxwwwxwwhgwwwwvxgvwwvwxwwvwwxwwhwwxwvxwwxvVVwxwwxwwWWwwwwwvgfxvxwxwwwwwwwxgwwxwxxwwxwvwxxwxgwvxfgWgwvg5vuwwwwwWgfwggWgfwwgVwwwFvtwwhvwvxgWwwwwwwxhgwvgwwwwxwxwwfwwwwxgxgvwwwwwwwwhxwwxWwxwxhxwvxwxwwwhwgxhvxwwvfvwgwgwwxwvwfwwgwwxwwxwvwvvwwxwwgfwxgwwxwwwwwxxvwxwwvgwhwwwvxwwxwxwxwwwwwwwgwwxwxwxwxGwvwgwwxvwwfwwxhwvvwwgwggvwgwvwwefwgvwwwwhgwwgwvxgwwwwxhgwwwgvfwwfgxvggwVgxghWuxhxxwVxvwfxwwxvxwxwvgwvwxwxwwwxxwwwwwxgwwwwvwxvwvfwvxwxvxvwwxwwwxwwwxxwxwxwxwxwxhggwvfwwxwvvgwWxfgwwxxhwwvwxwwxwxxxxwxwwwxwxxwxwVwwwWwgwwwgwvwWVWwWvwwWwuwgwhgwefwwhwwwgwggwVwwxfwxWgxwwwwxxwwWvwwhWwxwwxwgxgwggxWxwgwwwwwwwwxXwghxxwghwxxyxxxwxwxwgwwwwxwwhvwvvwxwwwwwxwwwwwwwwwxwwwxwwxxxXvwwwwwwwwwxxwxxwwwvwwwwwxwwwwwgwwvwxWvwgWxxxxwhwxxxgvwvvwwhgvvxvvwWWfwwwwwwwwhxgfwwwwgggfxwwwxgxwxwgwxxwxgvwvwwwxwxvxwwfwwwWxwxvxXgwhxwxhwhxwxxwxwxxxwwxxxxvxfwuhwwgwwwghxxwxvwxwxvwxxwxxwxhghwxwxxwxwxxxxwwxxwwxwwxwwxhxxwxwfwxwxxwxxfwwVwxwwwxwxgwwwGwwfvvwxwVwwfwghxxxgxgwxwwgwgwhghhwwwxwggxfxXwxgxxwwwxxgxxxwxxwgxwwhwhhxxxhxwfxxxiwwxwxxxfwuxxxwxxwwwwxxwxxxxxxwxxxxxxgxxgxwwvxwxxxwwxwwwhhwxwxgvxxwxugfwfwvwfgwfxxxwhwvgwwhwxgvwwvxwwwwvwwwwwwxxwwwwWvevwgwwwvwgfwwwwwgwwwwgwwfwwwwwxwxwxwxxxwxxxwwgvwggevvwvwwvxwxwvwgwwwwxwwwwwvxwxvxxwxwwvfuwwwvwvwxwfwgwhxwgwfwwwxvwwxwwxxxxxwvxwxwwwwvwwxfwwggufwfVgxgxwwvwvvwwxvvwffwfwvwgwwvgwxevwwxwwgwWxwxwwfwvvgggVfvwgfwxwwwxgwxxvggwvfwwgvvxwwwwwwxwxxwxgwWxxwwvgwevwvwxwvwvwwwvwgwgfwfwwwxwwvxwwxwxfwgwfvwwvexfwxwvwxwwfgwxwwwfxvxwgwvwwwgfwwvwwwwfvwgvvggwvxwwfwwwwwgxwwvxwwvwgVwvxwwwwwXwvwxxxwwwwvfVgwvwghwwwwxwhxwxwwwwwwwwwwxwwwxwwwwwwvwwvwwvwgxwvxxfxwwwvwwwxwwwwwxxxxwwvhwuwxwwwwwwxxhgxxwxwwwvgvvfwfgvwwvgwwwwfwgxfwvwwwwwvwVwvxvgfwxxwggwgvggwwxwwxgfwgwvgvxwxgwwxxgwxhgfxxwwxgggxxgwgwxwwfxwxwwwwwhxfwwvwwxwvwgwxwwwxxwvwwwwxgwxwwxwwxvwwwxwxwxwhxwvxwwxwxwxgwwwxwwwwvgwwvgvwvgwwwwxwvwwxwxwvwgwwwwwwwhgwwwwwwwwwgwxwgvwgwxggvvxgvhwwwxwxwxvvvwxwxwwxgxwxxwgwwwgvwwwwwwxwwxxfxwwwvwwxxwvwwwvgwwwgwwxfwwwwhxwwwwwwwwwxvwvwgVeugWVwwvwggeuwvwgwfvxwwwwggvhgwwwwxfwuwxgxwxwxwxwwxwwfweVvvWWwgxgweWwghxwwWwuwwwgwxwgxWvxxxwxxwwxwwwvfvgfwwwwwwwvvwxwwxxxwwwvxwwxxvxwxwwwwxgwfgxgwwwwvwvvxgxvwxwgvgwwwxwxwxvxxxxxxwvvvwfwwfxwgvgwwwwgwwwxgwfvwvwwWwwxwxhwwgwwwwwwxwwwwwwwwwwvwvwwwxxwwwwhgwwxwxwwgwwwgwwwwwgwwwvwwgxgwxwwwwwwwwxxxxvwwwwxwvgwxwvxwwwxwxwwvxwgwwxxvwfgwfgfwgvwwgwvvwfwgwwxwwxxwfgvuxgwwwxwwfgwfwwwfxwwwgwvgwwgwwwwxxwwwvwgwxxwwwwwwwwWwgwwxwxxgwwgwxgvxgwwvwxvwwhxwwgvxgwxxxwwxxwwxwwwxwwwwwvwxwxwwwwxxwxvwwwwwxvwfwvfvxwxxxxwgvwgwwvwfxwwwvgwwxwwwxwwxxwwxgvwggwgvxwvxwwxwwxxwwxwwxvwxxgwwgxwwxxwgwxwxvxxwxxxwxxwvwwwwxwwhgwxvhhvwxvxxhxwwvwxvxwxxwgwxwwxxwxxxvxgwvxfgfvgwwgvgxxwwwwxwwwwxxxgwwvxfwxxxhwwvwhxwxwxxvgxwxwvwfwvxwgxxxwwxwxvxvxwxwxvwwxxxxxxywxxxxxwgwxwwwwxwxwxwvxxwhwgxxwgxgwxwxwgxxxwwwxxwgwvgwwwxyxxxwvxvwvwxgwvwwwwgwwxxwvwwwxxwgwwxwhwxwxwyxxwwwwwxxxxxxwxwxwwwxxxxwxwxwvxwvwwgxgxxxwwxxwwxxxxwxwwwwxxxxxfgggwfxgwvwvxgwfwxvwxgvwwwxxxhwwxxxxwgwwxwwxxvwwhxxxwhxxxxhxxwhvwxxgwvxvwwxxwwwxxwxxxxxxxxgwwvxwwwxwxxvvxvxwuwwwwwxwvwfwhwwwwwwwwuwuwgwxfwwwwwwgwvwwwwwwgxwwVwwxwxwxwxxwwwwxxxvgvuvvwgxwvuwvwwwxwxwwwwxgwwxxwwxwggwwvwxxxgwwwwxwwwwwvxgwwwvwwfwvvwwwwwwgxxxvgwuvvwhwwwgwwwgwgwvwxxfwwwxwxwgVvvwgwwvwwxhwtwgvWwvgwwwxwwxfvuffxwfwxwwwwwwwvwwwgwwwwwwwwwwwxgxwwwVvugfxgfwwwwxxfgwvwgwxwwvxvgwvwwwwwwhxvvugxxwgvxvwwwwwgwxwvxxxwuwwwwgwfwwwxvvugwxgfhwxwxwwgxwVwwuxwwgwvwwwwwwfwwwwwwwwvwwfevxwgwvwxwwgwvxxwgvgfwwxwwxxvuvwwwwxwxxxwvwwwwwwvwwhwxwxxwgvvxvhwvwwwwxwxxxxxxwwvwwwwwwwwxwwxxvxhwwwxfwwuxwwwxwwwwwxgwwxwwvwwwwwwxxwxxwwwvwxwwwxffWuwwwvvxWgvuwxhWwwxxgufwuwwwxxxxwwuhwvVgwwwxxxwxwwwxgWxxxxxxwwxwxxwgwxwxwgwGgfwwxwxxwxfwwxvgxwwwwwxxxwvwwxwxwxwxvxxwxvwvwxvvwxxwwxxwxwwwxwwwxvgwwwwvxxwxwgxxxwwxxwwwvwwgffwwwfwWwvxggewvwwwwwgvvwwgvvgewgwvwwwwuggwvwxwwxwxwfFgwvfgwgwwWwwwwgwwwvvgfgvtggvwgwgwugwwwwhwvwwwgwwgwwwwwwwxwvwwegxwwwxwxwwxwwwwwhwwwgxhwwwxvhwuVxwwwwwwwxxxxwwxwgexxwwxwwwwwwwwwgvfwggFfwfgfwvggfVvfwffwwgwvggwwfwgfdfwvwgvxvwgevwgwwwgvwwwwgvvwwgwwxwgwgvwxwfwgwwwwfgxgwhgxxwgvxwgxxgwxwgwwwgwwwvgwwxxwwvgwwvxxxggwwwggxwgwwhxwvwfwwgwhwwvgwvvxwwwwgwvxhgxgxgvwwhgxxxxwvwwxwvwvwwwwhVwvwwxwggvfwwwghxwwgwgwgvfgwwwgvwwwxwwvhggxwwwwgvgwwhxxwwwwwhxxvwxwxxwxwxwwxxwgwxwxwxhgxxxwxxvxwvhwwwxwgvxwwxxwxwwxxxwwxxwxwxxvwxwwxwxxxvxwxxxggvgxxwwwwwwwxwxwvwffvwwggggwxgvgWgexwxwwwgwwfwgfxvggvwwwwxwwggvwwxfwxxwxxwgwxwxwwhhxvxxgxgwxxwxxwwgxwwwhwwxwwgwgxxxgwxxxwwxxwxwxwwwxxwxxxwgxwxgwxwwwwxwwwxvwhwwxxgxwxxxxvxxwxxgwwwxwwxwvfwvwwxxhvvwgfvvwggwwwxggfwxvwxwfvwvgWwhwxwvxvgxwgVgwgvvgfwwwgwwgwwwwwhwvgxvvwfvgwwwwxvwwwwwfwxwwWwwxgwwxvxggvwwwwwwxwhvvwwwwguwwgfwwwWvgvxwwvwwxggxwwwxgvwxwwwfvWwdwvwvwxfvxxgwwhxwwVdvwvgxgxvwwwwwxxwwwwwWfvwfgwgfgwgWUevgfgfffxwwWgwwwvwVWwgvwwvgwfvwgwgwWvwgwwXwvxwxwwwWvwgfvwVWwwggwwVxfwgwWWwwWwgvwgwvwxwXufvwgWwxgfghvexguwwwwgwwggwuwwxvwwwvgxgwgwxwvxwwwguxwxwwwwwxwwxwwwxwwxvwwxwwxwxwwxwwxggvwgxwfvwfxwwfwwvwwwvxwvwwwwxwxwwxwwwwWdvxgvwvwgGuwwwwgWwvwvfvWxgWwvxwwwvwgwvwfwvWvxxggwgwgwfgfwggxwxwwvvvxwgwxwwxwgvxwgwwwwxwwxwwxwxxxxwvwwwwvxxxwxwwwwxwxwvwWGxhwwwxxwwwwwwxwGWwwwhwxhwhwwwxwwxvwxggxwwxxgwwxwwxxwxxxwxxwgvwfwFgegfwwxwxwxFgevwgwGwxwwwvvwgwvxwxwwwwgxgxwxvgwwfwgwgxwxwwwwwwxfhxwwwwgwwhwxghwggxwxwwvxwwwwggwghwwggwwwxfhwwwwhwgxwwxwwwhwxwwxwxwfwgwWWwwwxvwxwwwwwwxxhgwvxwxwwvwxxhwwwwwwxxvwwwgwvxhwwxgwxvwwvwguwgwwwwgxwwwwwxggwwvwvxgvxvwuwwwwwxvwwwvgwvwwvxwxgwvxwvwvxwgvwwxgvxxxxwwxxvwwwwvghwxxwxhhwwxvwvwwwgwuwvxwxwhxwwwvwxxwgwxwxwwxxxwwewwuwwxxwwwwxwwwvxwvhxwxxwwxgwvxvgvwwgwwwwwxwwwwvxwwvwxxwwewufwghgwwwxwxwwgwxwgwxxxwgxxxwxwwxxgvxwxwhwxwxxwgwwwgxwwgwxxxgwwxwxwhwwwvwvwxxxwvxxwwwwwxwxwwxwxxwxwxwwxxwxwxwxxwxxxxwwxxwxwwxwxxwxxwxxvwwxwxgwwwwgvxgxhwwgwvwwwwxwxwxwwwvwgwxwxwgwwwwxwxxxxxwwxwwwwwxxwxxwwwxxhwwwgvwuhxwwxgvxxxxwwwhwxwxwxxwwxhwxxwgwxxxxxwwvxxwxxwxhwxxgwgfwuhgwwxxwwgwxwgwwxxwvxxwxfxwhxxwwxwwxxgwvwxwwxxhwvxxwxxxwxxxwxxhwxWxwxxwxhxxvwhwxxwxwxxwwxxwxwwwxwxxwxxxwwvwxwxwxwxxggxxwwxxvvVwvWvwvvwwwvwghvwwgwgvxwwgvwwwvvvwwwwWwgxvvwwwwwxwwxgwewwgwwvwwgfwwvwwvWwwguxwWwwwwwfgxwgxwwwwwxvwvwgwvwwwwwwgxwwuwwxxwwwwgxwvvxxwwwwwxwxwwxvwvwwvwxwwwxxwwxwxwvgvgxwwwxwwvxwwwvwvgvgfvgvggfgwggwwfgwvwwgggfVwfvxfwwwwhgwuwwgvgwwwwvwwwxgwwfvfwwwxwgwfwxfgwgwggwwvwxvgwvwxxxxgxxxxvwxxwxxwwwwvwvwxwfgwxvwxwvwwxwwwwxwwhfvwvxxgxwwwxwvwvxxxggxwwghvvwxhwxxxwvvhwwwwfvggewwgwwwwwvwgVgwvwhwwwwvwgxggwwxxhwvwwxgwwwwvwwwwwwwwvgwwxwhxxwfwvxxxwwwwwwhgxwxxxgxxxwxwvfvwvxwhgvwgwxwwwxwwwxwwwwxxwxwwvwxgwwwxxxxxxxvwxwxwhwwxxwxvwxwwxfwwfVggwfwxwhvwvwgwVgwwwxwgWwwgxwgxWwvwwwwwwggwwgwwgxwwwxxwxxvhhxwwxWwxxwxxwwwwvxxgvwxwxxwwwwxxwxwggxxxwwwvwxxxxxwwwwwgggxxxvwxxwwwvwwxxwxxwwwxwvxxwwxwwxxxhwvggxwxwhxvWvwwwwxwwwxvxwxvhxwwxwxxgwvwgwvxgwxwgxwgwgxwwwwwwwgwwwxwwwwwhwwwxxwvwwwggwxwwxwxwggxvxxwwwxvhwxwxwwxxgwwxwxwxwwwhxvxwxwwwgxwwxxwxwwxxwwwhwxxxwwvwwWvwwwwwxwwwwgfgfwwwvgwwwgxugwwgxwfwwwxxxwwwgwxwwwwwwwwxwwgwxvhxwwwwvgxgwxxgvxxggwghwxgwxwwxwwWwghxwxwwxwwwwwwxxwwwxxgvwwwwwwxxwxwgwxwwxwgwwwwxvxxwwxwxxwwgxxxgwwwwwxxgxwxwxwwxxxxxwvvwxvhwwwhwwwxxugwwgwghwwxwxxxxxgwxgwvxwhxwxxxxxwwwwxwgxwfwxgxxgxxxxwxhxgxxwwwxwxxwwhwwwwxwwxwgwwwwwgwxxwwgxxxwxwxxxwxwwxwgxwxxwwwwxwxwxgwvwvwwwgwwxxwwwgWwgwxxwwgwvxhxgwwwXwhxwgwgwvxggwwxwxxxwwxwhxwxwwxxxxwhxgxxxwxXwxwwxxgwxxwwwvwwwxwgwxxwvwxxxwwwxhxwxwwwwxwwwwwwwwwvxxwgxwxwgwxwvxwwxxgwwwhwxxxxxwwxwwwvxxxxwxxwwwwxwvxwhwxwxxxwxxxxwgwxxwwwxwwwwwxwxxwwwwxwxxxwxwwyxvwwwgwxwxwwwxwxxwwxxwxxxxwwwwwwxwwgwgwwwhxxxxwwwwxxxxwxwwxxwxwwwvxgxwwwxxwwxhwxxwwvwxwwxxxxwxxwwwgwxxxwxxwxxxwwxvxxxxxxxxwgwvwwxwxxwwgxwxxxxwwxxwxwxxwxxxwxwxwvxxhwxwwgwxwwxxxxxxwgwwwxxwxxwwwxwxwxwxxxxxxxwwwwwwvwxwxwxxwwwxxxxxwwvwwxwwxxxxwwxwxxxxvxwwwwwgwwwwwxhwwwxwxxwwxwxxwwxxxxwxgwgwwwwwxxhwxwwxxxwxxxxvxgxwwxxxwwwgwwwgxxwwxvwwxwxwxwxwwxxwxxxwgwwwwwwxxwwwxxwxxwwVwfwggvvvvwwwwxxwgwwwwwwvwwwwvwwxxwxwwwfgwwwexvgevwwwwvwwwwxwwvuwwxwgwwvgvwhwxxxwwxwxwuwwwwwvwgwfvwwwgfvvwwvgxwxvwxvwwxxwxvgfwwwwwgwvfwwxwvuwgxvwfwwwxxxxxxxwxxwewvgwgvfgfwwwxfggwwwggvvwxwvwwfxwwgwwwwwwxwxwxwwfwwgxVveWwwfwgvwwxgwwgwwxwwwwwwxwwwwwxwwxxxwgwvxugvwwvwVvvwwxwwvggwwvgxxwxwxxwwxwxxvwfwvfgwgvxwwwwwwxvwxwwxwwxwxxxxxwxxvwwwwvwwwfwwwwfwfwvwvwgwfwwxwgwvwwxxxwwxxvgewvwwwfvuwxvvxwwfwgwwwwwgxwxwwwwwxxxxxxxwwxwwvwfxfvgxwwvwwxwxwxwwwxxxxwwwwwwxwevuwgwgxwwxxwxvxxvwwwxwwwwxxwwxvwfwfvwxVfewwgwggvvWxvwwwwwxxxgwwxxxwxwxwxxwxxxxwVvegWwVwwwggwwwwwwwwwxwwwwxxxwxxxwxxwxxxxxxxwgwxxfvvwggwxxwxxwxwwgwwxwxwxxxxxwxwxwwxxxwwxwvwvwwwwxwwgwvxwwgwwwwxxhxwxwwwwxxgwgxxxwhxgxxxxxxxxxwxhgwwxgwgxggghwwxxhxvvxxxxwwxxxxwxxxxxxwxwxxxxwwwxgwgxxxwxwxxxwwwxxxxxxgwgxwhwxvvwxhxxxwwxxwwxgwwxwwwwgwwxwxwxhwwwghxxxxwxwwxxhxxxxxwxgwxgwggwwxwxgwwhwwwxwxxxxwwwwwxxwwxxwxxxwxxwxxxxxwxgwwwwwxwwwwhxxwwxxxwwwxwxxxxgwwwwxwwwwwgwwgxxwwwxxwxwxwxxxgwwxxxxxxwwxwwhxwwxxxwwgggxwxxwgxwxgxxwxwxxxxxxxxwxxxwxwwxxwxxwwhxxxxxxxwxxwwxwxxxxwwxwwxwxwwgxxhxxxxxxxxxxxxxxwwxwwwxwgxwxwwwwwgwxxwxwxxxxxxxxxwxxxxxxxxwwwxwwxwwxxwxxxxxwxxxxxhxxxxwwwxwxxxwxwxxxuwwwwwxwwwxwwwwxwwgwvwwxwwxwwxwgwvwxwxwvvwvwvvgwfWwggffwwwwwxwwwwwwgvwVwfwfgwwxwwwwhwhxwwwwvwgwwwwwgfwwwwwwwfvvwwwwwwgwwvwwxwwwwwwxxxwgvvwvUeuvwvwvvfvvgwgwwwwwwwvvvvwwxxwwxwwxxwwwvfwwwwxvgWwwwwwwfwgwwwgvfgwxfwvVwwwwwvwwxggffwxxgxxxwwxwvgvwwhwfFVtuwxvfxggvxvWxwggxxxgFVtuxwggxxwwwwxghwgxgwwwwhxwwwfvvwwwwxwUuuvxwgfwwgwwvwwwxxwwwwwxwwxwwxwxFVduxwgfwwwwwwwhwfgxhgxwwfuwwwwxwwwwwwwwwxgggxvwgwvwwxwwgwwwwwwwwfvwwgwxwxwwgfwwwwwwwxwwwwwxwxwgwwwwUeuwwvwwwwwfvvwhwggxxxwwwwwwwwgwwwwwxwxxxwxwvgwwwvVfuvwvwwgwwgfwggwvVfuvwvvhxwwwxwgwxwhxvwxxwwVfuvwwwwvwwgwwwwwwwxxwwwwwvvwwgwwwxxwgwwwxwvgwffvgvxwxwUeuvwwgvvgxxxxgwwxwwwwxxxxxwwhhxxwwwwxxwxxxFVtexggfwxwhwghwggwhgxwwwwvwwwwhgwwwhwfwwwwwuwwwwwVfuvwwwwvwwgwxxvwwwwxxwwwwwwfxvwwgxxxxxwwwwwvxwxwwwxwwvwwwwgwwxgwvxxwwfxvwwwwxwxwwwwwwhgvxwgwwgwexxvwwwxwgwwwxxwxvvxxwxWgfgggvgvhwwggVuwxgWhwwwxxwwugvvwwwgwvxwwwvwvgxwwwxxfwgwhvwwwwwxwfWvxwgwwwwxvWwwxwwgggWxwxxuVWvwvwwwwgfuUxxvxxwxwgvvgxwwwwfwxwxxfvfWwgwwfwwwwgWWxggwwwwwxvvgwfxxxgxgwggwwwxxwxvVvxxwfgwvxhwwgvffxwxwxxgwxwgwehwwxxwxxxwwvwwxxxwwxxxvggwxwwwwxfuvfxxxwwwxwwwwgwVwxxwwxwvwgxxxxxfffWwwxxvgxwwwvfwwvwwgwwwxxwwwwwwxgwgwWwwwgxxwggwwhwwvhvwwwwwvvggwxxxwwxvgfwwwwwwgvxfuufwxwvwwwxwwvvggwwwwwxxwwxxwxxwwfwwwwwwwwxVuuwwxwxxxgvwxwxxvwwxwfuugwwwwwwxwgwgwvvxwxwwwxxxwxxxxxxvgfwwwwwwxgfffwwhwwwxwgwwgwxxhwxxvwwwwwxxwhwgvfgwwwgwgwxwwxwwwvxwwwgvxxxxwwxwwwhwhwgwwwwwxxxfvvgxxxwxxxwwwwwwwwwxwxxxwxwxxxwxwxxwwwwwxxwwxwwwvvwxhxxwwvvwwxwxxwvwxuxggwwwwxwhwggxvwxwvgwgwwxxwxvwwhwxwwwxwhwwwxWvwxvggwfgehwwxwgvxxwWgwvgxwXwwxgwwgwxgwwwwwgvghwxwxwxwxwgwxwxvwgfxvwwwggxwwhwvwXwxhgxwgwwxwvwwwxxxhwwxxxxhxwgfgwfwwwvxwwwxhvwXwhwwwwgxwvwgvhxxwxwwxyxxwwwxhgxwghvwwxwgfgwwxxWfwgwhggvvgxgxwgxwwwwwwgwxgwvwxwwwxxwxxxxwggwwhwwgvfhgxvwVwfgwwWwwwWxWggwwgwwgxwxwwgxgwgWgxxwwxxgVxxxvwhvwwwwxxgwwxgwvgxxxwxxWxwwxguvxxxxwwwwwwxxwwxxwwxxxgfgxwgwgwwxxfwgWVxxxwwwwgwhwxwvgvwxwxwwwwxxxgwwwxhwwxvxwwfwwgxwhwgwhwghxhxhwhwwwxwwxxhwhxxxxxxxxwguwwwwwwwwwgwvgxxggxxgwvwxwxxwxxxwxhxxwwhxgxxwxwfwxggwwwwggvvwwwxgwxxfgxwwwvxgwvwghxhwfxgvwwwwgwxwvwvwhgghwggxgwwwxwxvwwwwwwxggxwwwwxwgfwwhwhgwwxwwxgwfgghwwwxxghwwxgvwxwxxxwhxhxgxwxwhxxgwxwwwgwgxwwwwgwvwxxwhxgxwhgWxhhwxvwwwwgwxwhwgwhwwvxxwfxxwgggxwwwgwwwwwwwwhwxxwxwhggxgxwxwwwwwfwwwwwgxwwwxxxwxxhgxhxwwwwgwwwxvxghVhxgwxxwxxxxxwxxxwwvxwwxwxxwxxxxvwxxwwvxwxwxwwwxvxwgwwwwwxxwvwxwgxwwwwxxwwwxxxwxwvxxxwwhxxwxfwxwxwwxxxvxwxwwxwxwwwxxxvxwwwwwxwxwwwwwxwxxwwwvwwwxxxxwxwwwwxxwwxwwwgwwxvvxxxwxvwwhxwwwxxwxxwxwxxwxgwwwxwgwwwxwxxxxxwvwxxvvwxxxxwxxwwvxwwwxxwwxwxwxxwxxxxxwwxwwvgwwhwxwwwwxxwxwhxxwwxvxxxxxwwxwwwwxwxwwwwwwxxwwxxwxxwwwgwxxwxwwvxxxxxwwxwxxhxxxwwwwwwwwwxgwwwwxwwxxwxwxwwvwvwwxwxvxwxxxwwxwxwxxxxxxvwwwwwwxxxwwvxxxxwwxwwxxxxxwxxxgwvwwwxwxwxwwxxwxwxxxxwwgwxwhxwxwgwwwwxwwxwwxwxxxxxxxxxxxxxxxxvwxxwxwwwwxxxwwxwxwxxwxwgwgwvxwwfgwvfggfVwfvgwwwWfhwwwvwwwwvxwxgvxfvvxwWvwwgtwfffvvwwxWwxwwwWwwwwgwuwwgwuwfuvvxhvwfwvxhwwwwwwGwvhuwVxgwwvxgwxfgvwxxvvwfvffvgxwvwwxxxxtgfgwwvfhwxgxuwfvXwfwgwwvwwwwxgvwgvwxxwvWvxwWuwfggvxggVxwgffvwxwwvwwWvvwUvwwxxuwwexxxwwxwxwxwwwwwwwVwffxxwwwwvgwwwwGwwgveuuwxwgwwwgwxhfwgfwxggwvwgxwwuxwwwwwvvwwgxvvVwhxwwxwwwxwwvxxwwwwgwwwwwwxwwxxvfuuwwgwwwvgwWWggUwhwwwwwxwwgwhgxwhVgwwxwwwvxWwwgugVwwfwfvgwvwwfvxxvvgvfvfwwxvwwvwwxxxwxvfgwxfuvxwWgfggggxwwwvxxwwvwwwhwxxgxvxxgxxwvwwvwfwxgvwwwwfwxxxwXwwwvvvxwwxwhxhwwxwxxwxwhwwxxfvuwwwwwwxWhwwfwwwxxvxxxvwgwvgghwxxvxwgwuwfgvwwfvgxfwfvgggxwfvwwxwgxgvwwwxgggxgwwxwwxxwxwwxwxwVffwxwwwvhxxGgwgVvvgwwvwhwhgwwxxWwgXghvwxxxwxwhwgxUvvwxxvwwwhXgvxfxwxwwxwxxwxhwwhfXvwxxxxwwwxwfwxxxgxwwgwwwwvgxhvxwxxxwhxvxwxvxxwwwwwwwhgUgxwfwwwwWxgwwxvWgvwxwgwWwxxwfgxgwxggxgUfwwxgwvVwgwhwfwxvgwwxwwwxxwxxgwwfwxwggxwhfUwwwwwgxwwwxfxxxwxxwxvxxwhwhwgwwwwxvgxxUwvwghhwfwwgwxxwxxwxwwwxgxfxxxfwxggWwhWffwwxfwgggwxxgwxfwwwxxhwwxwwxxxwxxxwfgwwxfwwwwxgwgwvwwxwhvwXgxxxxwxwxhwxxxxwwghxwxxwgxvfxxwxwxxwxfwwxhxgwwwwwxwghxxhxxwxxwwxfxwwwxxhxwxwwwfgggxxwwwghwvwygwxwgxhwxxxxgwxxwwxxwfxwhffffwvvggxvwxxwxwwxwxwwxwxxxxwxwwwwwwwwfwvhgxXwwwwgxWwwwwxxwxxwwxxxxwxfwxwwwxxxwvfwwxwhwxhwwwxxxxwxhxxxwvgwxwwwwxxwwwgxhwxwgwwhxxxwwxxwxwxwwxggwxfvvxXxgwwwwvwgxxwwxxxyxwxxxwxgggxxgwvxxxwwWgxxxxwwXwxgxxxwxxxxwxxxhxxxxwwvwwwhxxwwxwxgwxhwwxxhwwwxhxwwxxwxxxxvhwhvwhxwwxxggwxxwxxxxvwwxwWgvwwvghwwwgwwwwwxxwgvxvwwwwhwwwwwhxwfvVggwUfwvgwwfggwvwxghwxwwwwvvwwwwwfxgwwhwxxxwvwfxgwfvhvwvvggwwuwxgxwxwwwgwwwwxxwxxwfgffgffwwfwvwwwwwwxwgwwxwwwwwxwwwxxvxwxxugehWgVvegvwgvgwwwfxwWgwwwxxwvgvwxvwgvwwwwxvxxxwwwxxwxwhfWwfgfgWfgwgwxxhgwxwwwxxwwgvwxxgwxwwxxwwxxvxxxxxxwwvgfUffwvvggwwwwwwwgxwwwxwgwgwwwxwxwxxxxxxxwxwxxwwfwfggwwwwxwxwwvwwwwxwxwwwxwwwwgvvwwwhxwwwxxvwvvfxgvVwvwuwwwVfwhvwxxgxwxwxxwwwvwwxwwxxwwxxwxfwfeffwwgWvvwxgwwxwwxxxxwwwwwwwxwxxxwwwggwUvuwfwvxwwwwwxwxvwwwwwxxwxxxwxxxwxfvfwwwwwwxwxwwwxwxxwwwwwxxwwxxevUwVWVvfwfwgwxgvwwhwxxwvwwxxxwhwwwwwxxwxfvVfggwgwxxhwwwwwwxwxxxxwxhvgvwwwxwwxxxxUvfwwwhwxxxwwwxwfwwxxxwwxwwxxwxxwxgxxwxwwxwwwwfwwwvvwvwxxwwxwxxxxxwwxxxxxxxxxxuwwgwwvwxwwwwwxwfwxxvxvwxwwggxwxwwghxfgwvvvFwwwxwvxvwVwwwwgwwwwxwwwwvwvwwggwwwwwxwwxwwxxxxwgwvgvwWwgvgvvwWwxxfxvwwwwwwgwxwxwwwwwwxxwwwwvwwwwwfvvwxgvwwwwwwwfvvwvwwxxwwwwvwwwwxwgwfvvvgWwwwwwxwxvfGwwwgvwwxxwwwwwwvwwwghwwgwxxwwwxwwxwfWeVfufgwvwwxwwVfevwwxvxwwwwwxgwvwvxwwxhxxwwxwwwwwwxwxwwvwwwgwvfvvwxvgwwwxwxxxwwfvwwxwwxwwwwwwwwwwVfuvwwgwwvgxwwvvwwgxwwwwwwwgvwxvwwwvwwxwwwwvxwwwvwxwwgwfwvwWwvwwwwvwWxxwwwwwwwwgvgvvvxxgwxvwxxxxwvwwwwwvfvwwwwwgvwxxvxxwxwfvvwwwwxwwwxxhwwxxxwxwxxwgVeufwghwvwxeuvghwwwxxwvwwwxwwwwwwwwwxwxwweuvwvgVvwwwwvgxgwwwwxwwxwvwwxwwwxwxwwxxwwwwxwgwwgwfvvwwgwwwwwwwwxxwgxxxxxfvvwwwxwxwxxgxgxxwxxwwhwgVfuvvwwgwhwwhxvwwhxxwxwgxwhwwwgwgwwwwwxwgvwwhwwwgvwvxwwxweuvwvvgvwwxwwwevgXwwwwxxxwxvwwxwwwxwwwxwwxwxwwxwxwwwwwxwgxwwwwxuwxxwwxwwwwxxwwxwwwvxhwwwwxxhggxwxxgxwhwxxyxwwxhfwwxWxvgwvwwgvwhwgVwxfgvgXwgwwwwwwxwgxgxggwhwwxxwxxxxxhxwgxxvxgxgfvxhwggwvwwxwxwWvxfwxxxxhxxxxxxgwhwwuxfvxvvwwwxxwxwwhwxxwxxvxxxxxwxxxxwwvxwhgwwhWWxgxhgWwgwgxwxxxwwgggxgvvxvwhxxxwxwxxxxwwWwwgwgWwvvwxghwxhxxxwWgwxxwhwxxxhgxxxwxxxxxvxxxxvxgwwgvwwwwhwxwwxxxgwwxxwhxwhxxxxhxgwwwwwwwxfxwgwwxwwxwxxwxwxhwxwxxwxxwxhxxxxwggvxwggwwxgwgwgwxxvvxwhxxwxxgwvxwvvxwwxxxwxwxxxxxwwgwwwxfwuxfwgwxwxxwxxwxxwwxxgwhwxxxxxwxwgwwwggwvwwwwwxwxwxxghwxvxwxxxwwxhxxwwwxwxwwwvhwgvxwxwwxghwwwxgxwxxwhwxxxwwwgvwwfxggwwwwxgxxwxwxxxwwxhxwwwxxwxxwxxgwvwwxgwxgwwwgvxgxgxxxxwwxxwxxxxwhwxxxxxxxwvwgwwvwxwwwxwwxvxxwxwxxxxxxxxxxxxwwwxxxxxgwvgwgvxxxxwxwxxxxwwwwwwvwxwwgvugxxwgwwggvvwwwwxxwxvvwwwwwxwwgufwvwfvVwwwwwwwgvwwxXvxxvgfggvvwwwgwxwwwwwxwwxxvvwxvggvgwwgwwgvwwhwxxwggwgwvgwxwwwwxxxxxvggwggvvwwwvwxvvwwhwuxwVvufwwwwwxwwvxwxwwxwvvvhvwwwgwwvxxWgwxwwgwxwwwfWfwVwwwwhxxxxwwwwwxwxxwxwggwhwvxwwwwwwxxwhwxgxxwxwxwVvUgwwgwwwwhxvwggwxwwwxxxvWfwgwwgwxwvwwwwwvxwxVvvwwgwxwfwwxwwwxxwVvegwwwwxwxwwgWuwwwwxwwggwwwxwwvwwxwwxxwuwwwgfghwwxwwgwwgfxhwwwgggwgwwxwwvwxxxwegvgwgwxwwwxgwwwwxxvxxxfvuwxhwwwxwxxxvwwxwwgwwxxgwgxwwxxwfvfxxxwwxxxxwxwwxwfvvwwwgwxxxxwwhvxwwxxxwwxwwxwwwwxwxxxxxwxvgfwVwwwwwxxxwwwwgxvxxxxxggfwwggxxxxwwxxxxxxgffwwhwxxxxwgwgvxxxxxxwwwxwwwxxxwwxwxwxwVuvwhwxxwwgxxxxwwxwxwxgxwxxwwwwwwwwvgwwwgwvwxwxwxxwwwwwvwxxwxxvggwwxwwvvwgvwwwwgvwwwwxvffwwwxgwwvwwgfvwxwwvwwwgetwwvevgvwvwwgfuwwwxgwfvfwwwVvewwgvwwWvwgwwvWwgwxwxwwewwVewwwvwfwwvwgvwwwwgfvwwwgwvwwwvwgwwwugwgxhxxwvwvwvguuvvwvgffwwwwffvWwwxwggvwwvgwxwfwwwwggwgwwwuwwwwwwvwVewwwwvuvwgefvVvvgvwwwwgVevvgVfvwgwgwwvfwwwvgvgfVwwxwxggvwwxwgfvwxwwwgvfwvwwwwwwwwfwhggxgwwfVvgwvvwxwGWwwwgwgGEgwwwhwgwwvggvvwwwvwwvfvvwfFwvwwhwwgvwvxxwwhxwfwxwvwhgvwwxvwwwwwgwVwwwwgxfwwgfxgXTwgwwhwggwwwhgvwwwgggvwwguwwwxfgvwxvfuwxwwfvvwvfwwgvvwwwwwwwevwwvgwvwwwwwgwwwxuhwgxxxwxvvwvfvvvwwwwgvwgwwwvwgWxwwwgwvvwxwwgfxxxwwwwwgwwvxwxvwwwwgvwwwwxxwwvvvwvwxwgwxwwwugwwgvwxgXfwxgWVxxhwwwhwvwvwgexxgwwvwvwggdwhvwxwwwwvwwwhvguxwwvwwwxvwfwvvgwVvvwgvwvwuwgvgvvwgVwgwwXwgwwwwvwwwwxxgxwgwgwwwxgwvwwxgwxwvwwwgfxwxxXggvwfvwWgUxwwvXvwvxwhwwhvxwgwfvwgxfwwgwwwWgwxfwwfxxxgxwfvwwwWgewwhwwvxxwwwfgwvWvwfxwvxxxwvwfvxwwwWgwgwwvwfwvwgwvxwwgwgwxwwxuuvxwwvvgvvwwwwwwxxwwfwwwwwwwfgwwxwwxwwwvwwVvwwxwwwwfuwxwwwxwvvwwfueudwvvxxwgweuvwwwggwvggfgvgVuuxugwgwwwwxwwgxgwxwwvwwwwvwwwgvVuxwggwwwwfuxwwwwwwwfwwwVdwwwwwwxwxwvhwwxwxwwgvfvfVvwwwwwvvwwwwwggwwwgwWwvxfxwwuwwgwxwvxwxvwvvvvuwwwxwwwwwVfVvuwwwwwwwwwfduhvwgwwfwwgwwwEvwuwvgfwvwggwhvwgvghwwxwwwwwxwfvwwugvwwgwwgggggwwwhWWwvwxwwxwvxwvwhVVwhwhxxgwwwwwwwgvvwwvvwwVvwxxwvvvxgwgwwwxgwggvwfwwuxwWwxvwwwwwwwguwgwvwwwwwvxwgxwwwwgwgwwwxwwVhVVvxwwvvwvggefwwxxvwwvgwvewxwwvgvVuwwwgwvxfuuxxvwwwxfwxVuwwgwwwxwvwvgwxhwwgvwuvfwVvxxwwvwwxwhvwwxwwgfwwwxxwuwxXwwwwxxwhwvxwwguvxfvwgdwgvwxvwxwvwxxgfgvvwwwxwxgfxxxghwxwxwwgvvfxxwuwvwvwwwxxxvwwwvggegtuwwwwxhwuwwwwvwgwfwggfwwwEvvwxxfewggwgwuxvwgfhggwwwwwwgxhxgwwxwwgxwwgwwgvgfwwwvxwwvxwgwgwggwwwwggxxggghffuvwwwgxvxXhfwwwxwwvhfwWvfVWwvfwexxgwxgwwxwwwvwxwwgWffuvwgwwwvWhfgxwwwxuvhvwfvxwwvggwwgfvwvwwwwwwwfvgewwxwwvvwwwvwwuvvwvxwggfwgehwxgxwxwgfgwwfwgvwfgguvwwwfvwwggwwvwgwxwxguxggVvwwWwhwWuwxxfwuwxxwwvffgvfvuuwwxwgvxwxwwxXwwwwxWwfggvvgxgxwWvgwvwgwxwwwgVxfwvfvvgxxgxxwhwwwxuggvvfgfwvxwxwwvwvwgxwfwwxxwwvvgwwwwxhfwwxwhhxwxgxxxggxwgwuxwxWwewwgvwgGvwxwWwvwxwwvffwwwuefvwwwxxfvvwwwgwxhvwwxxwwwwgwgwUuvwwgfwwwwxwwxxxwgwxxhggfegwwGwwwgwvwgwxxwwwhxghhgwwuhwwvffgwwxwhwvvwxwvxxgxxhevwwgwwwgxxwxXgxwxhxwvwwffehggVwwWxxwwxwwvwxgxxwWxwgwhvgwxhVxxvxxgGwxfhvwxvgwvxgvvwgwwxgXvfwgxwxgWxgvvfvfvxwwwxhxxuxwfvwWgwwwwwwwwwxxwvxwxwxwxwfvwxwxwxwxxgwxhwxxxwwwxvxvxxgvfwwxwxwvxwwxxwxwxgwvxwXwwhxxgwxxwwwxxxxwvwfuuwvhghwxxxhwwwwxhxwxgwwxghgxxwxhXgwhwuwxdgfgewgWvwghwwwxgguwwxxhxxxfghwgxgwxwxgwxxxxwxhxwhxUvvwwWVvwgwhxxwxhwwxhxhhwxwwgwgwwwwhWggxxwxwWXwxwgwxgVvvwgggwhwxxwwwwwxxwxxhhxwxxwwwvwhgxwgxhWvwXwxggwgwgwwxgwxhvxwxxwxwxwxxhxvxgwwxxfwfwwwwvwwwwgvwvffwfwvvwwwwwwwwxwgwfwvxwwvwvwwwgefvvvggwgwwVewfvewfvuvfgfWwwwwvwwwwvgwwwevwwWgVgwfgwwhwfvvwvvvwwgwwwvVvfwvwgwwuxvgwxwwwwwwwwwwwxfvvwgWgwwwgxgxwvwvvgvgwwwwwwwvfvuwfwgWvwwwwhwvvwvwwvwwwgwwvWwwxwhuwxwgwwwwvwwvwwvwwwvwEvvVwvvVvugvwugvgwwwxwgwhwxwvevggggvgwWwwXgwwwwvwwwwxwvwwwgfwvvwwwwvfufwWGFwxwwggwwfwwwwvwggvgxxhfwxWGxwgvvgwwwvwwwxwwgffvwvwgWgwggwgxwwwwxwwxwxvxwgvwwgwvwxxwxvwwvwfggwxwhggvgwggwWWegwgwwgwwwwhwwxvwwwxxgehvwugggvfwgvwwwwgwwwVewfwvgwuwvgwgwwwwwxhvvxggfwvwgxhwwwvgfgwgfwvxgxwwfwvwfggGvwwxgwfwwwvwwhwwwvgwxxxxvxhhwxwwxvgwwwvwvwvgwwuwvwwhXVwwwxwhwvwxwgwxxxxwhgVvxgvvxvvwvvwwxhxwfwwfwWgewghwwxxxwgxvgvwxwvhwwgvweggvwwwwwwgwgwwwwUgvwvfvVgxwgwWxwwvxwwxxxxxwwxwfgfgwgwfwwgggwwwwwwgwggwwvxwWwggwvWHWVxgwfwxxwwwwwwwwvwwxwxwhhvXwggwfvWfwwxvgwwwxwwhwwVwggwHhfwgwwwwwwxwwwwxvwwxwvhgxXvgvgvwvxwwvgwvwwgvwxxwwhWgwvwwxwgwxxwvfwggwwvveuwwwgwxvwwwgwwwwxwfwwwxwxffxwgwwxwwfwgwgvxxxgwwxwwVxuwgxgwwwvfwwwwgxfwwwwwwfwfwxwwvgwxgvwhxhwgxxgxgwxvxgvxwwwwxgfVwwwxgwwwwggwvxwxwwwxwgfhwgxwxxxwxwfWwgwvxwwvwgwvhwxwxxwvwgwfhxwgxxwwxwwwxwxgxhwxxwwwgvhvwgwvwghwgwwgWwhwwwgwwxxwwwggwgxgwgxVwxwxwgwxgwxxxxwxgwwwwwfwgwgwgwxxxxwxgggwhgwvxwxghxghxxwwhhhhggwhhxxxwvggggxwwwwgwwwwwwgvwxwxVgwxwxwwhxxgxwgxxhgggvwwwgwwxwwwwwxwwgxwwhwwwwwwxuvwwwggwggwwwwwwhwwxxwwwxwwxwwgvwwxwwxgwggwwgwxxwxwwggwxxwhxwxggxwxwxvxwxxhwwffwgwvwwvxxggwwhxxgwxxggvvwwxxwxvxxxwhxgxxxxxwwwwwgwfxwwxxxgwfwwxwwwxwvwxfwuxwhwwwxxwwwwWwXwfwxwgwvwvwxxwxwwgwwwggfxxvwwwwwXxwwwwwwwwxwwxxxxxxwwwwwgWvvxgwwxxxVwwxwgwxvxxwxwxgwgxxwwwhhxxgxxxwxxwwxwxxgxvwwgwwxwxxwxhxwwwxghhxvwwxwxghwxwwxxxhxxxggwxxxxxwgVhfwwwwwxxxxggxxvxwxwxfwxwwxwgxxwxxwxwwwwgwwxvwvxgxvwwxfgxwxwxxxwxwwwWgfgwwxwxxwwwwwvgxwxvwxxwwxwwxxgxwxwwwwxwxwvxxwwxxwvwxwxwwgwghxxxwwxxxxxwvwwgwwwwxwxwwxxxxwxwwwwhwwxwxhxwwwxxwwwxwxvvwwxxwwwxwvxxwxwxwxgfwwwwfhxxxxxwxgwxwwvwwwwxwwwxgvxxwxxxwwvwxwwwxxwwxgwxxwxwwgwgwwgwxvhxgwxwgxwwxgxxxwwwwwgwwxxwxhwxxwgxwwwxwwxxwxxwwwgvxwwwwxwwwxxxwwxwxxwxxxxwxgwwgxxxwwxwwwxxxxxxxxxxxxwwwwwwxwxwxxxxxxxxwwwwwwwwxxwwxwxwxwwgfxwwwwwxgxhxxwwwwxxwwvwwwgwxxwxwxwwxwxxxwwwwwwwxwvxxwxxxwwxxxxvwxxwxxvxxxwwwxxxxwxxwgwxxxwwwwwgvhvwgwvxxwwwvwwxvwwxgvxwwgwxwwwxxgfxwwVwwfwuxvwgwwxvwwwhwxwgwggwvwwvgwxgwwwwhwxwxwxwwwxwwgwgvvhwgwwvxwvxxwwwwwxvxwgxvxwwwxxwxxxwgxwgwuwwvgwvfuwwvwxwwwwvwvwwwwgxwxxwxxvxwvwwfgwwggwgwvxgWwwwgwwvxxfwgwgxwhgwgwwhwwwvxwwxwwxxwhxwxwwvggvwggwwvwwwxggxxffgwwgwxggxghghxxhxxfxxxwwwggwwvvfwvwwvgwvvgxwfwwwwwwvwxwhwxwxwxwxxhwhwvwxxwvxggwxwfwxhwxggwwxxxwwhxvwwwxwwxwxwxxwxwvxwfVvwwggfhxgwwxgvwxhwvxwwwwvxxwwwxxxxwxxxwxxwwwfwwvwwuvwxwfvvhwwwgxwxggwwvwwwhgwvvxxxwwwxxwwwgwvgWvwwwwWgvgwxwwwxvwxgguwwxwxwxxxxxxxxwwxxwxxxhvufvvwxwgwwwwxxxwwxxwwwwhwgxwgwxwwxwwxxwvVwgfwgfgxwggvwxwwwxwhxwvxwxwxxwwwxxxgwwxwxwwwxxwvwwgwwwggxwwvwwxwwwwwwxhgxxwwwwXgwwwwxwwxxxxwhwxwxxwgwvwwwwgwwXwwwwwgvhwxwwxwwwhxwxwxxxwwwgvxgwwgxgwxwxwggewwwwwxwwwxwvvwwxwhwwxxxwxwxwfwgwxxwwgwWvfwVggvgwgwWwwgwxxwxgxxwxwwwwwwwwwwxfwfghvUwwgGghfwvwvwwvfwgwwxxgfwguwWfxwwxxxWguwggwgwxxxWxvwxfVwwWfwvgfggvggwwwwwwxhvWwwwwWwvxwxwxwwxeVgvfvghfwwxwwvwvwgwgfwwvwwwxwxhwwxxxxhgxwwwfwvwweVwwwWwwwfvfwgwfwgxgfxhggwXfWwvxxwwxwHwfggxfwwwxxwwhvggwfwwwwwxxXgfvfxhxgxwwwwhvwwgwxhxwwwwwwwwwwhxxhfwxwxxwhvggfwgwgfwwfgwwggwgWxwwxxwggghwwxxwwwwxxxgwxxfgvvwwwwXwxfvwwgwgwhXUwwhwvwxwwxhWwxxwvxxxgXwwvxgguvwfFwwwWfwuwwwfwWwgwwxxwwgvgvwxwwWwvxxxwxwxvggvvfghWvvgwxwxwwwvggggxwfwwwwhgwwxhgxxxgwgwwwWvxwwxwxgwvwvhhxxwwxwxwvwwwxwwwxxxhxwwxwxxwfvwxwgwxwvgwwwxwXfgwvwxxxhhxwxxxWwwgugVuwVwfvvxwffwXwVgwxxwxwxvwxwwwxwxxvxwwxxhWwwwgxfwwvwgwhhgwwwxwvvfxhHfwwWwwxwhXgxxwgwwwhhxWggvwWwxfgwvxwgwxwwwvxfwwwxXfxxgxwwwwxhhxwwxwxHxvxfgxwwxxxwvwwwxwxxxYwvwwxwgxwXwwxwhxwhwwxwxwwhwxxxWVxXgwvxxgxwxxwwxxwwwxwvhvgxgehxgwvwxhgwvwxxxwwxgwvfgwvvwxwxwwvXwwxxwxxxxwhfxxwwwxxxwffxwwxxwwfwgwxwgwhwhwvxxwxwfvwwwwxxgxxguxxxgwwwxwwxgxxwxwuxxWVhggwxggwvwxwxwxgggVwwvwvwxxxwggwwhwxxwgggwvwxwwxhgwvwxwghxxwvvwvWgxwxwwxgwwwxxwwxwxwgfwwxxwwwwWvwwwwwwgxxxwxxxxWxxwwvfwwWgxwxxwhwwwxxwxvxwXwxwwwxgxxwxwxhfxghxwwhhwuuwwxwwwgxxxxxvhxwwwxxhwghwwvwxwwxxgvxxxwwwwwwwwwggxvhgvvvxxhxwxwgxxxwxwwwgwwxwwxxwwxwvwwwxgwxxwxwxvwxgxxvwxxgwxwxxxxxgxvguuwxxwwvwgfxxxxhwwfwwxwxxwxvxwwhxxxvvwvwffwwxxxhwgxxwywxgxxxwxwggxxhwxxwwwxhwxxxwwvwgwhxwwwxwxxvxwwwwwhxxxxxxxxxxvggwvxxwgxwxwxwwwxxxxwvwwwwxwwwwwwwwwwwwwgwwwwwwwwwvfwwwVxwggfwfvwxwwwwwwwwwvvwgvvwwwwwwwwwwwvwwvfwfeTfvfutxfwgwVvuwvwgwugwgxwvvwwwwwgwwwvwwggwfwxgvwwgvUvwfvgwgVxgxxuwwgwwgwwfuvfvvwvxwwwwvvwwwgvwxwwwvfuhwwvwwhwwwvwwwffxgvgvgwwxfwxwvggwwwwfwwwxwggvfvwxwwVveuvwUuwwxgvEuvgwwgguwvgwhwwxwwwwwwvvwwxvgwwwwwffwwwxxwgvvvwwwwvfxwwwwwwugvwxwXVhgWVgwgwwgvwvwwwvvxxfuwgxwgwwwxgwvfvvwwwWwxwvwwwxgwwwwwgewwvvwwwwvvxxwwhwwvxwwwwfgwvxvvvxwgwxgfhgeWfgwwgvXffvwwwUwwwwwwfwwwwxwwwvwwwvwwxwvvwwxwgvevfvxvwVuxwwwwtwwvxwwvwwfgwwvwwwvvwwxwvgvwvwwwfvwwxuxwWgwxxwwxgvhxwguwwxgwfwxxvvwvwwvwwwxwfvxxwwxhwtwfxghgxgggvvxxgwwwwvgwwxvwgwwwwgwwxewuwfwxgwgheXvwwhwWffuwvVgwgvvwwfwxxffgvwwwgvxwvxwVvuvwvxuwwgvhxwwwwwwwWvxgwwVfwwgwvwwwvgvxwwhxwwwwwwwwxwvfwwwvvxwgwhWwwXhfGgwwxwwXfUfwwFfwwuwxwxxxxvwvvxwwwwwvwexxwgxhwxXwvWwxvwwwGufvgwVvxwwwwwwwgwxwvwfwwwwwgwfuwwwhhgVvgvwwwvvgwduvvwxgvfWwwwwwwvvgwvgvwxgwxxxwwwwWxxwwwwxgwWvwwwgwxxwgvvwvwgvwhegxdgweVwwvgguwwhgvwwWwgvhgwwggwgxwhfwxwwxwxXgvxwgggvguwwfFwwwwXgxxwwwwWwxwwWvvwwwwwxxwugVgvvhwwvxwguwWxgWewwwxxwVfvwwgwwwxwxxwwxwxgvfgvgwwwWvwWwuvxVWvfwwgguhwwvfwwFxwvxxwxwhwvfhxggwwwxvgfvgwwgxwwggwvgxxfgwhggwwwwxwwwwxxwxwwxWggxgwwwwxgfwfwwgwwwwwxvgfwwffwhgxxffwewxxwxxwxwwhwwhxwwwfvwgfwgxwfwvghgFwgVgwfuwxfxwxxwxwwwwwwwwwuhwuwgvfxhvguwxfVvwfgwwxxwwwwWwwwxwvgvwwxxwwwxxwxwvwfwwfwvwwwwwvvgwwgVwhvxxwggwvhwxwxwwwwwggxxgwxvgwwwvggwwwwxxfuxxwvwxwwxxvwwwxwwxwwxgwxgxwxxxwwvvvwwvwxwwvxwgghWgghhwwxwwwxgwxwhvwxwevevgvwwwxvfggwgfxwwxhgwvvxwxxxwxvxxwxwxgxxwwwwwwfwvwwwwwxwxgwwwWXXVwWghwwuhgxxxxxwwxwvgwhwvwgxffvwwwxxwwxwghgWhgWwwwxwxxxxwvgwgwvxwwxwvwwwwvxxwwxiwxuhgwgwwxxxwxwgwxwuxgvvhgwgxwwwvwvwwwhwwxxvwwvwvwxvwxvwwvxwwwxgfxgewwgxgwvwwwwwfgwwwxxxwxwgffwfwwwgwwwwwvwxgxxwwvxvwxvwxvwfxhwwwfxvxxxwggwghgwwwwwggxwwwwwgfwgwfgvvwxwgxgvwxvvwwxxwgwvwwwggxwxwwwwxwvwxvgwgvvuwwgvwxgvfgvwfwxxWwwwwgxwwfWfgwfwwxwvwwwvwxWwwxxwxxxwwfwgvegwwfwxwVhxwwvwwwXwgwxxwwffgwwwWwxwwxhWgwhwvxxhWxwvghwwgWvgwfwvwxxhwwwwxxggwwxxwwgwxwhxwxhvwvxwwwxxxwwwwwxfWwxwvvwwgwvxwfwxvgwwfxxwvxwwwxvxxwxvgxwwhvwwwxwvxgwfxwwvwwhwwgwwvwwwgfvWwvwwwxgvxwwwggwwxxwhvwgwfwevwwwwwxwwxwwwxwxxWwxwxxxwwxwwwxwwxxwwxwfwvwvwwxwghwvwwgvxgwwvvgwgwxghvwwgwxhgxxwwvwwxfgwwwwxwxxwxwvwwwxvwgwwxwwxwvwxwwhwwhwwwgfvVwffxyxgwvgwxvwxwxwwgwwxwwhxwxhgwwwgxwwwwwxwxvwfhwVXgxwxwwwxwgwxwwgwvxxxgwxwvxwwgwwwxwwxhxwgwgxxxvgxwvxxfhwxxxwggwwwgxwhvvwxwwgxwwxhvwxwxxhwwxwxxwxxwwwwwhWfwwxxwwvwxxfxwwxgxwxxwwwxvgvvwxWwwwxxwwwgxwwwxwxhfgwvwxxfwvxwwgwwhwVwwgvwwxfwwwgvwvhwwxVwxfvwxwwxugwwxxwwwwwgvwwxgwfwwvgvwxwgfwwfwwxwwwvwvwxwwwwwwwxwwwgwvxwwfwhwxxwvxwwwvvwxwxvfwxwgwxgxwwgVwwwwwfxxwhgwwwxgwfxwgwwxxxxhwwwWwwgxgxxxxwwgvxwwwwgguwxwXhvxhhwwxggwxwxwxwwgwxxwwxgwxwwwxxWvwxxxhwxxwvwgvwwwwxhxgwvwxwhwwxxwxgwwvxvxgxxxwwxwwwgxxwxxwwxwgxxgxvxggwvwguxwxgwwvvxgvxxwwwxvxggvwvwxgwwwwgxxwhgwwwwxhwxwgxwwgwxxhwwgwwxwwxgwvwxhgwwxxwxxwfwvwgwwwwxxggwxwwwwxwwxxwxwxxxwxxwgxxwgxWwwxxwxwxwwgvxxgwwwfvwxwxxwwwvwwxxwgxxxwwwwwwwwhhgwxwwxxwwwwhxxxxxxxwwwwxxhxwvwxwwwgwxxwxgxgxxxvxwgwhwxwhhxxxwvwwgwxVwxwwxxxwwxxwxwwxwxxxgwxfwwxwxwxxwwwwwxwvvxwxvxgwwxwWwhwxwgwwgwgxwxxwgxwwvxgwxvxxwxwxwxwhwxwwwxwwhfwwwwxwwwxwwxwxuxxwwxwwwwwxvxwwwwxxhxwwxhxxxxwxxwxwxxwgwwwhwwwWwwgvxwhxwxxxxwwxxxxxxvxgxxxxxgwgwgfwwwwxwwgvxXwwxwvvwxxxxvxgxxwwxxxwwxxwxwxxhxwwxxwvxwxxxhwxwfwwxwwwxwxxwuwwwwxxwxxxxwxwxwgxwwhwvvwwuwwwxwxxxwxvxxwxuwwxxxxxwxxhxwxxxxxvxwwwxxxxxyxxhxwxxwxwwwwxxxxxwvxgxxwxyxhxwxxxxwwvxgxxwxxxxwxwxvxxwxwxxwwwxwxwxxxxwxhxxwxxhwxvxwxwxxwxwvvxvxuxxwwxxxxwxxuwwxxxwxxwwwxwxxwxxwwxvxgxxwxwxxxxxxwxxwxxxvxgxwxwxxxwxxwxwxxuxwwxwwwwwwxxwwggwgwwwxfxvhxwwwwwwewguwwwgwxxggxwgwxwwxwvwxxxwxwwxxvwxxxvwvgvwwxwxwwwwwgwwwwvxwwxxWvwwxxwwxgwfwwvvwgwvvxwwgwfxxxwvwgxwvwwwwvxwxwxwxwxvwwwgvwwvwWwWvxwwwxxwwvxxwwvwwwvxxgxwvxxwgxxhxwffwfggvVggvgvwxwwgwxwxhgfwxxwvwwwwgwxwxxwxwwwxxxxwfwvwUfwvgwwxwwvvwxwwgwwwwxgvgxhxxwwwwwxxxUffvwevgwfvwwwwxwwxxvvwgwhwxWwwwxwvwxxvwwxxwxwxxwwwwgwvwwgVwxwvwwwwwxwwwwwxwxxwfVwwwfgvwwwhwwgwxvxvxxgwwxxwwxggwxwgffwwwggwwwvwwwxwxxywwwwwxwwvwwwwvwxvxvxxwxwwxguvwvgfwgwuvxxwwwhwxvxwxxwxgvxwvxwxwwxxwVVgwwfgugwxwwxxwwxwxxwgwvwwgwwwwwxxwwxwxgwhhxxwxgvwuwwxgxvWgwwWwgwwwxxxxwxwugwwwwwwwvwvxxwwwwxwwwwwxxxwvxwhvwwwwwwwwwwwwwwwxxxwxxxxwvwgvgvfwwxwVexwxxwfwwwxxxxwwxxxxgwvwwgvwgvwgwwxwwwwvxwwwwwxxgwffvwfgvwwwgxgwvwwvfxwxwwxwwxxwwxwvvvwwxwfhfxxwgwvxwggwwxgwxwwwwwwxxwxxxvfwvwxwgghfvxwggfgwvwxgwvwxwxhvhfgggxxhwfxxxxxyvwgwwfvwwxxxgfgwhwwwxwxvwxwxwxwxxxxVfewgwWvwfvfxwgwfwwwxwwwwgvwwxwwvwxhvvwwwxwwxwwwgxgvwxxwvwxxvwwwhxgwWwgwgxxwwxxwwvwwwwxxwwfwwwxwwxgxwwwwgwvvgvwwwxfvxwwwwwwwxxxxwwwwxxwgxxxxwwvxwwxvwxvxwwxxwxxxgvfwwwwwwwggvfwwvxwxwxwwxwxxxxxxxwfgVVgxwwwwxwfwvgwxwwxwwxhxvwxxwwxxxgwwxwwxwwwwxfwwxwvwxwwxwwwxwwhwxwxgwwxxwxxxwwxxxwwwwwwwwxwwwwwwwxwxwxxxwgwwwgwvwwwxwxhvggxwUvwxwwwwxgwxxxxwggxxwxxwwgxggfggvvfwvwwwwwwwxwgwxxxwwwwwwxwxxxxxxxxwhwwwwwxxwgwxvggwxxwxxwwwxwxxwwfwwvvwvwwvxgvxxwwwwwwwwwxxxwxxfgxvwwwwwwwvfwwwgggvwwxwfwwwwxwwwwwwwxxwwwxhwwxxxwxxxhxwxggffwvgDefggwvgwggvhwXgwvgwwwwfVVwxwwhxgwxxgwwxxwxxwwxxvwwwgwwwwwhxvwwwwwxxwwxxwxxwxwxxxwwwwxxxwxfVVwwgwwwwvwwwwvxxvwhwgwgxwxwxxwxghhxwxxvwwwwxhVewgwgxwUwvxwwwxxxxwwxxxwyxwxxggvvfwxvvwvwwxgwxxwxxwwxxwxxxwxwgvgwwwwwxgwxvwxxxwwxwxxxwxxxxwwwwxwwwwwhxxxxxxxxwwxxxxxxfxwvvfwfwwgvwwwfwwwwwgwwwxxxwwxwxxgxxxwxxxxxxwxDfewxwgxfwvwwxwxwgwvggxwxgxxgvxxwhwxxwwwxwwxwvvxxwvxxwxwxxxhwwxhxwhwxgxwxxxwwxwhxxwwwwxxgwwvwwwgxxxwxwxwxxwwhxxxxwwwewwwwwwwwwwwwwwwwxxvvwgxwwwwwwwwxgvwvwwfwxwfwxwffvwwwwwwxxvguvwvxxwwxwwxxfwvwgwvwwwvgvgwwwwguxwwwwxgwxwwwvwwwxvgfvwwvwwwwwwwwwwvfwwgvwwxxwwvwvvvxxvwwvwwwvxwwwvwwwwwxwwwxwwwWwwwwwwxxwfwgwwxxwfwfgwwwxvxxxxwUwvwwgwwwxwxwxgwgexwwwgwxwwffvegwewvxwxwvggwgwxxwxvfggwwwwfuvfwwwwxgxwvvwwxxwxwwxgwwwxwwwUVvvwvxxWwfwwffuWxwwvwwffvfwwuwwvwwwxxwfgxwuwwvwvvxwwwxxxwgwgxwwwvwWwwxxxwwwwwyxwwVwwwxwwwvwxxxxwwwwwxxxxxwwxwwwvxwxwxxxxvvwvfvwwxxxxxvwwwhwwwxxxxgwwvhwwxvxgwxxxwwxvwwwwwwwwxxwwwwwwvwvwwwwxvxwxwwvfvvwwwxwwwwfxwwgxwxXwvvwxwxxxwwxxvgWfwwhxxxwwxgwwxhwxwxxwvgwxWxvvwxxxxgwxvfxwfvwwgwwvxvvwwgfwvwwwwvwxwwxxhwxwwwwwvwwxgvwwvxwvwxwgwvxfwvwwwwxgwxwwwwwxxtfwvwfgugvwvgvffvwwwwxwVvwwwxwgwwwvvwwvwfwgwwwwwvwwxfugwwvfwgvvuvfwvVfvwvgwffuwwwwgfgVvfvuwwwwvwWwfgvwwwgxvgxgwfvwwfwvvvwgwvwwfVwwggfwvwwwuwvWvwgwvwwxgwvwwwwxwwxwwxwvfuvvwuwvwfwwwfwvVwvgwgvgwwgufwwwvwvgwwxwxwwwwvwwxwvxxwwuUvvgvwvwGUwfwwvfVgffvwggvggwgvwvgvfwwwgwfwwwwgwwwvxuwwwwgxwxwvgvwfwgfwwfwwwvWUtffhvvgvvfGhhvgvfguwwgwvgxggvwgfgxxXvxhGUwwwgvvggvwgguvwxxffvwwuwwgfxwwgwvwwwwwwwgwwwxwwWuwhwwvxwwhfufVgwwvfWwgwgvvgguwwfewwhwvwwwwvvwwfWfxxwvwwwWvxwxwwxwgvxvgewgewwwwvWffgwwgvvwwwxwwewwgvvwWvfwvxFuugxwvwwxwwwxwwvgfwfwwwfwfgwwxfvwgxgwVwwvhwgwvgwvwgwwwXwwxwxwhwxgxhwvxvgwwwvwxwfvvwvfwwwvgxwwgwwuhwwwfwwvwwgvhhxwhvwwwwwwvvfxwfvvvvvwwwwggwvwwfhwwvxggvwvwvvwxwwxwfwwxgxxvwwwgwxwffvwvvwgvwwvvwvfuwghgffwwwwxghuguvwwwwwwfgwwxwwwwgwwgwxwwwhwgVvfgwwwgwwwXwXgwWvgUwWhfwwwgXvgvwwvgwxVvxXXfWfwwwfwwwwwhwwwwwgvwwwvwggwgwvgwfgwwgxwwwgwvwwgvwwwwwfxvvxwwwvwwxwwgvwwxwwvgxgwwgxwwvgexvwfwwhwvwwxwvfghgwwfwvxgwxwxxuwwwgwgxwwwwgwvwvwgwwggVvvwgwwwwwvwvvxfwvwwwwwwxgwwwgwxVwvvhfvgvfegfvgwwVewwwgwvvwwwfgwwvvwgwgwvwvwwggxgwhwhwwwxvvvgwgggvwvwwewgVfwfwfvVwwwwwwwwwewvvwwwvwwvgwxwwvwxwxvffwvwgvfvwwwwvvvfghvwfwwghwxwgvwwvvxwwvwwwxwxwwwwhWwgfwvwwwwwfwwwwwvvhVfxwgwwVvWVwggwggwfwgwgwwwwgfwwwwxhwgxvwxwvggfwwWwwVgWVWwvWggfvxvWggwWgXfwhgwxwwwwwwewwghwwgwhwwhhghxexvwgwwwfwfwwwwwwwffgfgwwWfffwwVgefvgwfwxwwxgwwwwgwwwvxfWgfgwwfvffwffWVwgwWWgewwgfxfffgxwwfxvwwwwxxxxwwgwfwgwwwvwwwfvvxwgfwVfwvvwVvvwxxggwexxwwvwwvhxwxgwwwxhgwfevwgxgwvgxffwwxwwhwgvfxxwgxxvwwwxvwxwwvwhxhhwxWhwwwvwwxvwwggwwxwwffwwgwwgwwxgwgwvwwhwwxxwgwxwghxvwwwwwvvwwxwwwxwwwwgwwwvxWgghwwwwwwxwxxwwwgXwhwwffgwgfwfvwwgwwwvwgVfwvwgwgvwwgwwgfwwxwxwxgxwwwwwxwhwwxxwgxwVwwxgwvgfwwwwgwwwwWhhwvvgwhgwwwxwxxxgwvwgggwwwxwwhwxxhwfwwwwgwwgwwwwgwwfwwwwggvwwwwwwwxwvwwwwgwwwgxxxwvxwwvwwgwwwxgwghghvvxgwwwwwhwvhwwwwxwwwxfvwwvwgwwfwvwwwwgwwwxwwxwxxvwwwwwwwxwxwwwwwwhxgwwvwwvxwwvwwwwwwxwxwwwxwwvwgxwwwwwwxwxxxwxxvvwwvwffUfvwgwwgxwwwwwwwVVwvwwwwxwwwwxxxxwwxwwwVUwfgvxwxgxvxvwvwgwwwwwwgwfhvxxwxxxvxxwxxwxwwwwvwwwwwgxwwwwwwwwwwwwvvwxwvxgwgfvwxgwwxwwxvwvwxggwwxxxwxwwwwwwwwwwwwwwxwwwwxwwxwwxwhhvwwwwwxwwxwwwxwvwxwhwxwvxxvwfwgwwwwgvxwxwwvggwxwhfxxwxwwwwvxvxwxxxwwwwgwxwxxwwgwvvwwwvwwxwwxwwvwgxgvwhwvgxvwwwgwxxvwxwvvwwwwwgwwvwwvwwwwwgwgvwwwwxxxwwvwgwwvxxwwwvxxxxvwvwwwwwwxwwwwxwxwxwwwwxvxwxwwwxwvxfewfwwgwvwgxwwgVwexvvxwwxwvgvwwwxxwfwgfvwwxwwgwwxwwwxwwwwwwwwwwxxxgwfvfgwwwfvwvwwgwwxxxwwwxwwwwxxxwwwxxxwwwgwwwwwwwwwxwwvxhhvwhxxwwvxxwxxxxwxwhwxhwwxwxwxxVvuwwwxxwxxvvwwgwxhfwwxwwxxxxwxxwwgwwwgwwvwvxwwwwxxwvxvxwgxwwwvxxxvwwwwwwvwwuwwxgfwgxwwwwxwffwwwfgwwxgwwfwwwgxwfwwxwxfwxvuwvfwhfUwwwwUwgxwuwxwWwxxwwvxxxvwwwwxxxxxwwwgwvwwvgwWwgwfwwwwwwwwwwevgwwwwxxwwwwxwwwvwwgvwwxuwwfwvhwfwwxwwwwwwxwwgxwwxwwwwwwfwwWvfxwwfwwfwwxwwvwwwxhwvgwwwwxvxwwxxwwwwxxxwUvwwUwgwwgwwwwxvxVwwvhxvvgwxgvxwxwhwgwyxwgvwgwwugwwwvwwwvgvvwwwwwwwwwwwgwwwxxwwwxxxxwwwwwxwwwgxwwwvgvwwwgwxwwwwwwgwxxwgguxwwwxxgwwxgxxgffwwwwvwwWwwgvwxwwvxwwwwwvwxvxfwxxwwgvfvxWwvxxgxwwfwvhhwxwwwwfgwxxXwxxxxwxwwwwwwwwwwxwxwvvwwwwgwwwxwwwwxxwwhxwwwxxxxxxxwgwwwxxwgwvwhgxwxwxxwxwxwxxwwwvwwxgxfvwhxwwvwwwhwwwwwvgwxxwwwxxwhxxwxxxwwxxxvfVwhwxvwwXxhWvgwvwwhxwwWwwhwwwxwhxxxwxhvxwxxwhwwxxxxvwwvvwhwwwggwwwxwxxxwxxxwxxxwxfxxxwhwxwwwwgwwwwxxxgxxvwwwwwxvxxwwxxwwwgxxwwwwwvwxxxxwvwxwwwwwwxfxwxwwwwgwwwwwxgfwwgwugufwwwgwxwxxfwfxxwwgxxgxwwwwxwwwvfwwvgwwxwhwxwxwvxxxwvvwfxwgxwegugvwxwxwvxxxxwwwxgwwwwxwxxwwvvwvxxhwwxxwwwgwxxghgwwwwhwhxxwhgfwfggwfvfgxxwUfvgwhxgvwxvwfvxvxwxhwwwwxxxwwwwxwxghwfwxvvxhwvghwgxwxwwvwwwxwwwxxfffwwxwxxxxwwgfwwwgwvxwxwxwhwwwwwwgwwxxxxgvxxhwvwwUVwwxwxwxxwwfwxwwxxxwwwwwxvxwwvwxwvxfwxwxxxwxxxxwxyxxwxwwvxwxxwgxwwxwxxwwwwxxxxxwxwwwxxwwwvxxxxwhwxxwwvxwwwwvwvwwgwxgwwwxxhwwxwxwwwxxwxxxxxUffwxxxxwwwvwwgxxxxwwxwxxwxxxxwvvxxxwwwhxgxwxxwwwxwxxvwxwwwvwwwxxwxxwwxxwvxwxvvwwvgxxwvxwwwwxxwwxuwgwvwwwxwwwwvwwwwwxwxwwxwwwwwwwwxgfwggtwgwWxvwwxgwwxwwhwxfvvwwwwxwwxwfxxxxxvxvwwxgwwwxwwwwwfxwwWwwvwwwxxwhwwwwfgfwwwuwwxvwwggwwwxgwvxxxvvvuwxwxwvwwwxegggwwwxwwwggvwxwwwwwxxwxfgwfgwxxxxwwwxxxxffgwgwwvgwWwxxvwwgxwxxxxgwWwvvwgwwwxxwgwVxxxwxxwfwggugwwxwwwvwxwwuwwxwfvwgwwxxxgwXxxwxFgfgwgwxwwwgwFgxwwgwxwwwwwvvgwwxxwxwwwxwxwwwwwwfwwwguwvwxxwgwhgxwwvwvwwxwxxxxwgGwfwwgwwwwwwwxgwxxxvxxwvxxxvwxxwwxxvwgwwwwvwwwxwxxvwwwwxwwxwwxwxwxxwxwxxxxxxwwvwgwwwgwwxwxxxwwgwwwxwwwwvxxwwwvfvwgwvuwxwwwwwxvwxxxxwwwwvxwxwxxwxxxxfWGgvwwgxxwfxwwwgwxxwxwxxvwxwxgwxxxwwxwxxxxgwwwwxxgwxwxwxwxxwwxxxwwxgxwxwxwwwvwwwwwwwwwwgwxxwxwxxwxxxxwxxvxxxxuwfggwwwxggfwwwwwggwvwwxwwwvwwxwfvwwwwgvwwxhWwuwggfVfgufwfwwgfxwwfggwwxwgggwuvvwwwfwvwvfwwxwwwhwxxhwwfvvwuvvwwgvwfwvwvxwfwwfvwghvwwvvvwWwfwvwwxfvwxwXwwwgwggewfvewwvvwwwwxgvvxwvvwwwwxgghwvwvwwwwwwwwUwwwxwwwwvwwfvuwvwgvggwgwWgfWwvvwwwVvvwxgwgvgwwxfwgwwwvwwhwfvwgxwgfwwgxxgfgVgvWWwwwggwgggggwwwwxxxwXxhggwfvwgxvWgwvhxhvxwwhvwwwghvxwvwugfwvwfVvgwegvfwuvxwwfwwwwwwwvwvuwvwwggwwWxWwvvxfghvgwfxhwfffegVvxwgxwgwvxwvwgwfxwwxxwwwxwewwfVgwewwvwwwggwvvwxwwgvxgwfxgffwuwfWwwwwwvwxwwwwwwvvwvwwfwhwvvwgxvvwhgffffvuwvwfwfwwfwwwhwwgwgxwwwvwxwwwxwWxwwxxwWgvwxwwwVwwwuvwvwwvwwwvwwvxwvwwwwwxvwwwxwwwwxwvgwxwxxwxwwfwwwwwuwvwwggxwXwgwgwxwwggWgvwwwwxfxwgvxwwxxxwwwwwwwgwffvvvfvgwfwvfVvwxwggwfwhgggxwfvvwgvwgwgxhwwwvwxwgwwwwwxwvwwgvvwgwgvxwwhghgwwhghWgxgxwwwwxgwvxwwwwhxwxwhxxxxwwwxwxxgxvgvwvwxgvwvvxhwgwwwxvwwgwwxxwhwwxwfxxwxxwwwwfgvvvwwwxwwxwwggfwgwwxwwwgwwgvgwwxwwwvwvwwwwgwvxxwWgwwwggwgwggwwwwwgwvgvxwxwwwxwwfwxwgwxwwgvhvewWvfwfwvxgwVvwwxwwwfwgwxhwvfvwgwwvxwwxxwgxwxwxgwgwfgfwggwfwwwgwgwfxwggxwwwwwwwxfvwxxxwwxhfvgwvwfvwwwwwgwvwhwvgwxwvwwgwwwxhxxwxxwxwvfwxgwhwVvfwvgwvwwgwwwwfwvxvwvwgwwwwgvxxVgwwxwwxvxxxxxxgwfvfwwwwfwggwwwxgwxghXwVwxhWfgwwhxhxxghxwwhxhhvxhwxgwgfwfgvfgvwwVgwwxwwgwwwwvwwvwwxxwxxxxxxxhwxxxwgxwwwwgwxvwwfwhwfhxXgefwgwwffwwxxhxwxwwxwwgxhxwgwVwxvwWwgwgxwfwwhwvwwxgvwwwwwhwwwwwwfwwxgxxxXwgwfgvgvwwxwwwWwxwwXxwgwxxxxwwwxwxxwxxwvwxvwwwwwxfxvwwwxxwwwxxxwxwxxwwxwxwwxxxxwxxgwwwxwwvxwwwvxxxxgwxwvvwxxxxvxgvgwfvvwwwvwwwxwwwwwwxwwgxxxwwhwwwwwxwwxxwxxxwvwVwgxwXwwxwhwwhwgghXvwwwxgxxxhgwwwwxwgxhxxwgwwxfgwwwwwvwwwwwxxwxwwwxwxwxwxwxwxvxwxxwxxvwwvvxgwhwgwwwgwxxxxxgwVvwxuwwwwgfwwxwxwwwvwwwwxwgwwvfgvwwfwvvxwwwwwwfwwwwwwwwxwwwgfewwgVwwvxxgvvwwwvxwxwvfwfvvwwwgwxwwwwwvxgxxxxvgfffvwwvwwgwwgvwwvuvhxwvxvvvvwwgwvwwwwwxxwxhgwwwwfwfvvgwvwwwwwxxxwWwxxxxxwwwwfgvwgvwwgwwwwwfwxxwwwwwwgffwwvwwwwwwfwwwvvxgvwwgwwwwwVvfggxgwwwwwgwxwwxwwwwxwwwwgfwwwvwvwwwhwggwvxwwwhxwwfvvwWggvwhwhvwwgxWgwxxxwxxwvwgfVfvgvwxxfuvgwggvwwxxxwwgwxfwwwwwxwxwvhgvwwwwvfwvwgwwvxxwwwwgwxwxgxffggxwwgwvwxfwvvghuwwwxwvwwgvwwwxgwvwwgwwwwwwwwgwgwvxwwxxfwgwvwgwxxhxwwwghwhxxgvfvwwwvvfwxwwvgwwxxgvwwwxxWwxxwxxxhxxhxxvwwvvwwwwwwwgwvwgvxvwxwxwvwwgfwvfxwwhxwwgwgwwxxgxwwwwvvgwvxwxwxwwxwuwwwwwwxxwwwwwwxwwxvvewffwggxwwwwgxxwhxxvgvwwwwwwwwxxwxwxwwxxxevgghgwgxwhgwwxwgxxhwhxwxwwhwXwghvxhvxxxXhgxxxxwxgfxwvxxwxvfwvhwwvwwxvxwwwwwhwwxxxwwxxwxwwwwwvwwxxvxwxgxfwvwwgxwwwgwwwwvxwxxwxxwvwwwwwwwwwvwwwwxwwwvwvvwwwwvvxuvwwgvwfwwwvvvvwwxwwwwwwwvvwwvvgggxwwgwgwvwwwvgwwwgfwevgwwwwwvwgwwwwxwwwwfegvevwWffwvwevwvwggvTvvegexvwguwvgwfwvfwfudfuwwwVvuwgwwwwvwwwefuuugwvwxwwvvxwwggvvwvfvgwwwwwwwwvwwwgwvwwggwwxwwgvffwwwwwgwfwwwfwvxfxwWfvwvwwfwgggwwwwwwwwwwwwxwvggwwgvvgwwwgxwwwwvgvwwvwwwvwwwwhwggwvwwwwwwfweuvweuwxVduwugvwwwwwwwweuvwxdxwgxxwvvwwwgvwwvwvgwwvvwwwwwwwgvwvwgxWhuwwguheexvvhfvxgxfWffuwwvhffugvVtVxwwwwfwwwwvwvxwvggwwvwvvwwwwwxvwwvvxvwgfwwvwwuwxwwxwwwwwfvwwwwwwwwwwxwwhxxvxwwwwwwxxxwwxxwwgwwwwxwwTvweuwWeuuvwvuwwgggVewwgxxhWfuwXhXfwhWvwwwfuvvwvvwwxwwgvwwwwwwvgggwvgwgwwgwxwhhwgwwxWfggwxgwwwvvwwwfwwwfxwwfvgvwwwfwwgwvgfwwxwvwwwwwwgwwwxggwwxgwwwwgwvhwxwwwwxwwwgxwwxxwxgwwwxgwhgwxgWwwhghwfwxgwWvvwevxugwgdwwwxwguwvgwVhewwxgfwwuwwgxhvwgxfgwwwwwwwwwxxgwxwvwhwxwwgwWwwgwvwvvgguVwhxwgvgwhwfggWefeggwvwggwvwwwwggvwwvgwvgvfwwxfwwwWgwwwwwgwgffwwwwvgwwxxfffwwVEwggfgwwvwgfwwwweufgxwwhfFfGvvwvwwwwxxfWfwWxwWwwxxxxgwwwfgfwwfwfgffgwwwwwwwwxxgwgwVwwwwwwxgwwxwxvxvxwgVewWwwwwvwwhfffggwwWxwwwwvwgwwgvwxwwwvwwxvwwxwxxwwxxvwwwwufwwwgfwgwwwfvwxh6EghxgffvwuwvwWggwgwvwfvwwvwvxfwWfgvfgvwwwggxwwVeggwggwwfwvwvgwfggwwhxfvhWXweewWfvWgwwhwhhwwwe7h8VwwhwhgwwfggvgwwxwwxvwfvgvxwvfwwwwwvwgVwxwggvvwhwxxwvvgwxgwxgwgwwffwggwgggxwwwwwwwgvHWGfwuvwwggwvwwhwwfxhxgxgwgwvwwhvwxgwvwvggwwwVwfwvgvwfwfWUwfwvggxhwfewVvevwwxwwwfvwgwxfwxxggVxWgwwwwvwgwgghvGxxhxwfwgxwxxWwxgwwwxgwxggwwxwhgwgwwWwxwwwwwwxhgwvwwwwwwwuxwwwgwwxxvwwwxgwfxwvxwwxxxgvwgfvwwwxwwwwwwwwwwwxwgxwxwxxvwwwwxwwxgwwxxxxwxwxxwwhWgvwgvwwgwvwvxWfvfggufwwxwwxxwffwwgxgwwwwwxxgwhhgxgxgvwfwfgvggwxxwhgwhfgGHXVxhhghwwWwwfwhgvwgxwwffwffgghggvXwgvwxVvwwhwwvxwwwwugwwgvwggwwwggwwxwvwwwwgxwvxxxxwwxgwwxwxgvvxxwxwwwwwwwwwhxwwhXwvgwxvwwgwvfwwgwwwwwwwgwgwvxgwtwwwewgwvgwfwwvgwvwwwwxwwxwxfwwwwgvvwvvwgfwvxwxwwwxxxevwwgVuwvgVWvwvwfwvwwwfwwwxwwfwvwUgvwvwgxwgufwhwwxxxxwvwwvfwvwvgwwwvvxwgvfuwwfvwwwwwfxvwwgwwhwxhxxwguvgfggwfwwhfvvxwwvwwwgwxwfwfwwxwwwwgxxwwxvhxvxxwwwvdfwWgvwgxvwwgwWvvwvwwvffwxwgvwwGUwvwfwgfvwwwgvwwvvgwhwwgwwhwwgvwdufggwgwgwfhwwWwwgwWvwwhxxhgwwgwfwvHwxvxhGVgwvhwhhwxhgwwwwwffwfgvwwgxgvwvwwfvwvwwwwxxxvvwwwwwwgwwwxwvwhgwwwwhxuvfgwwgwwxwvggWvwwWxvgwwvvwvwwXwhvvgWewwwwvwxwxggxxwwxwxwwvgvwexwUdwwWfwvgwwvvxwwwgevwwvguhxxwwwwxwwxxxxfwfwvwwgwwwhwgxgwwgwxxwgwWwwgwXwwWxxwwwwxfhwxwwxwwwwvwwxwgvwhvwwwwwwhxxxgwwvvWwwwwwwwwwvwhwwxwwwwvwvwfwvwwxxxxwwwxwxgvxwwxvwxwxxwwwfxwwxwwgxfwvuvfvfvfwwwwffxXwwwwhxwxxwfwvwwxwxwwvwxxxwgwwXxvxwhwegUwGwvVwxhxxwwgwxhhvxxggxwwwwwwXvwxwXWfhwwvwhhvXwggwwgwwvgwvwwxwwwwwwwfwxwwwwvxwxwxwwwwwwwxwwxwwwvwxhwxxvggvwwxxwxwwwgwwvwgwgwwhwxwxhwggwwgxhwxwwvufgvwwwwwwwwgwvwwwwwvggwwwwvwwwwggfwwwwvwxxGvwwuwfvwwwxggfggxfwvuwwwwgewwwwvwwgwxwwwwwwwxwwwwxwevvwvwfwwwvvwvwvwwwvwwwxwwgvwewwwgwuwwhxWvvvwxuxwwwwwfuwfwuvwwwwgwvwgwwwwwgwwvfvvwwgwfwxwxwwvwgvvwwwUvvgvwgwwwwwfgwwwwwwwwxwwgfgwwwwwwwwgwVgxwwwwhwwwwwhfwwwgwfgwwwfwFgwwwwgwwWvwxwvwwwxwhxwgxxwwwwgxxhwxhvxxvuwwvvwgwvwwwvggvwwwvvwwxwwwwwfvfgwwvwWvwwwUgggwvwwWwvvwwfggwvwggwwfwwxveggwwwhwwwgWwxwxvhxwgwuwwvwxwwwfwvwwwwwxwhwfwvwwwwvwwwwgwwwgxvxgewwvvwxxxWwvwwxwwxwhwwffgxwwwhwwWwvwgwwwxxxfvgwgwgwwhhwvwhvwhhxxwwwwwvwwwwwxvwfvxwgxgwwgxxvvvwwwwwwwwwxhvwwxwwxwwxwvwwfwvxfwwwwwwgwwwwwwwwxxwwwgfgvxuwwxgwvwwvwwwvgfgvvwfwwwVwwgwxwggxwvwfwvwwxxwxwhxxwgwvgwxwwxxwwfwfxwwxWgxxgxvgwwggwxxwxxwhwxxvxxwxwwXwxhxxxwxwvwwwwwwwxxxfvxgfwxwxxxwvwwwwwwxwwxwvwwwxxwxvwwwxgxgvwwwxvwwxwwvxxvwwvxwuwuxxwwwwuhwwwgxwfwwwwhxxwgvxwwwwwwhwvwxxwwgwwwgwwvxvxwwghwvfwwwvxvwxwwgwvwwxwxwwvwwxwwgwwwxwxwwfwhwwwwxhwxxwWxwxuwvwxwuvwggwgxvxwwwxvxwwwhwxwwwwwxxwwxwxgxwWwxxwwwvwggwvwffxewwwfxvwvwwfwwwwxwwwvwfwfwwvxxhgwwgxwwwxgvxgwwwwwvfwwxwwwxvwvwwwwwhwwfuvgxwwgxwxxxwwwxxwxwwwvwxwwxwwggxwxwxwgwwxhwwggwwwwvxwwxxxxxhvxxhxxggxxxwxwwuxwwgwfxvxwgvvgfgfvuxwgwvwwwvwwwwwwwgvvwwwxwxxxwxgvhvgwxuwgwxgwxwwfxgghxfwghvvwgvwxwXwxwwwwggwwwwxwxwwwxfxwxvwuwwxwfwfxfxwxwwwvhxvwvxwvvxwvwxxxwxhxwgxggwwwwwvxxxvxwhwwhxgwwwxxxwwwxgwxxwxxxwxxwvwxfwwxvwwwwvwvwxgwwgwxgwwhgwhxgwxhxxwwxwwvxwhvwwwvxxxxxgwwwxvfwhhwfvgwxxwvwgwwwwwvwwwwgwvwgWwwxwgwgwwwhwxxwwxxxvwwgxxwvxxxwxxxxxxwgwwwwvxwgwwwwhwhwwxxxwxXxwgwxxwxwxhxxwWwwwxhwxwwwxxwwuwwwvgxhxvwvxwwxxgwwwwgwvwwwwwwhwwwxxfvxwwwxwxwxwwxuxvvwxhxhwwwwxxxxwwwxvvwxwwwwwwwwwwgvwwwwwgxwwvwhwwvfwwxxwvwvwwxxxwxwwwevwfwfwgxxwwxwwxxgwwwfvvwwwwwxvwxxwxwwxwwvwxwwxwwvvxxxwwwwwwwxwxxwxxvwxwwfvfvwvwwvxvfwxwxwwwwwxwxxwxwxwwvgwgwfgvwwwwwwgwwwwxwxxgxwwvfvvfvwwxxfvggxxwxxxgvUwUvffwvggxwvwfggwwgxxxxvuweVgwevwgvhvhvhwwxxxxxxwvwgfwfWxwhxxvvwxwgxxwwwfwhwhvwxxwxxgwwegefwwegxwxwwwwxwxwxwxwxwxvxvwuwwvwwxgxxvwwwguxweUvwxwwwxxwvwwgxxxwwfwxxxxxwwfwvfgwwwgxxxwvwwxxxxxxwxxxhwwvvwvhwwxxwxwwwxxwxwwwwxxxxwwwwwwwxxwxxwxuwvwfvvwwwwxwgxwfxwwxxwxwwwxxxwxwwgwxxxxwUvfffgfgwhwvxxwwxxwwxwxvvggwwxxgvwxxwxwxxxvwvxvwwwxwwxxxxxxwxxwwxxxwwwxxxwwvwgwfvwwwwwwwwwfwwwxwuwwWwgvwwwwffwwWvgwwxfvwvfwwwwwxvvvuwwvwwfwwgwvwVvgwgwewfUuvfgfvwgVwvwWuwgwwfwgfwtvUvvwwxxxfwfgxwvwxwwwwfgugwwfwxvwfvughwwgvwwvxwwwwvxvgvxxwxwxxwvgdwuwUvwwvgwwwfwvxwwvfwgwwvwvwgwwwwxxxwxwxwufvvgGTvggvvvvfgggewwxWwvwvwwgWgvugwvuwgwwwuwfwwwwgvwfwwgwvgVexvwWveuggwgvHwWwwvgvwggXGFgfwxvugwwwgvxwvvfgWhhfxxhghwgwvwvfvfwgwvxwvwwwfwgwVwwfvwxwwwvxgxvwwvxwxwvxvvwxhwwxxwvvfgwwuWvwvwwwguwvvggXVxwvgwwwgxfwvvvwgwfxXwwgwwxwvwwwwvxwxvgvfdvggfwuvfgvvffwVvuwwwvgvwwxgxwxwxxwvwwxxwwxxwfefvVwfwvwfxwggxfwxgwWwwhxwhwvxwwgwxwwwgwxwwwhhwwxwgwwvwwvfwuwwwwgxvvfwwwxvxxxwgxwxgwwvvwxwwxwxwxwxwwwwxxuvwwxwvwwxwwvxxwxfwxxwwwwwwxxwwwxwwxwxwwxxwwwxfwuvWvfwfvvvvgwfvgvggvgwwwwwxgwgwwwgwwwhwvvwhhhwwxWwxwfwfwhwfWWwwfwwgwfwvWXHewxgwXxgwxxhXvvgxwHXwggwhvvhwgvwxfvvwwxwwwwwvwgwvwwgwwwwwxvwwwwwwxwwxwwwwwwwwvxgvwwwxvwwvvgXwwwgWgfwvxgwwwwxWhwwwwwgwwxuwxwwwxwwwvwwwxwvxhwwwvwwxwwwvfxwwwwgwwwwwwxwxxvggexwfwfvfwwwvwwfxwwgvwvwhwwwfwfgvwvwvwxwwvxxwxwwvwgvwfVwwwvxweFwwwgwfuwxwxwwfwvwxxvwvhxwxweFgwvwewuwggwxwwgwvwxwwfvvexxwvwvxxwwwxwxxwwgwgwggwfwufwwggwwhwwwwxvhwvfwgwfwvwxwxfvvwwxwxwwxxwhwvwwhwwwvwwgwxwggxwhghxwegfvwwwwgwwfxgwwwgxhxvwwwwxwwvvVgewfwvwvxwwgwvwwxwwxwwwwvfffgxwwwwexwwgwwwwwwwvffwwggvvxgwvewwgwxxwvwwvwwvewwwwwvvvxywwwwwggwfxgvwwwfwxwvWvwwwfwxwwfwxxgwfwxwxhwwwwwwxxgwxwwwxxwwgvwfwwgwxwwwwwxwhxwxwxfwwxwxxxwxwwxxvwxxwxgedwvwxwwVuwwwwvxwxvxwwwxwwxwwxvwhwxwwxwwxVvxwxgvwxwwwwwgwwvwwxwxxwxxvvvWvgwfwVwvvhwfvwwwgxwwwwxwwfwvwwwwxxwwwgxxxwgxwgwgwxwwwgwgxgwwwgwxxhwgwwwxxwwwfwwwgwxxwhvwwxgvhxwxxxwUvdwwxvxvxwwwghwwwxvxvhxwxwwwwwwwwxwgxwxuxvxwwwwvwvwgwwwxwwvwfuwwwxxxewwxfvuvwgwwgwvwgvwwwwwwwxwxwwwWgvwxwvwwwwwgwfuwwxwWvvwfdwfwvwwwvwxvvwxwvgwxxwwWVgfwwfuvgxgxvvwwwgwgwxxxwwvwgvgVegwwwvwvxfvvgwfvvvugwwvwgwuwwwwxvvxhwwwxwggfffwuwwvuwwfwwwgvxgwfwxwwxwvvvxvwhxxwxggxhwwxwgwwxwwwffwwfvwggvgvwwwffwgwxvwwfwwwvwwwvwggFffvwxwwfwwvgwwWvwxwhwwwwfwgwgvwwvwwwxgwgwxwgwvgxxwggFghvgfxxwxxxwgwgFxheffwwxgvwvwwwgwWgwwxxwwvvgvGwvxewwwwwwwfWwggwwwwfgvGvfwwwxwwwwgWfwwvgwxwwxvwwwfVhgtwwwgwwwvvWggwhfwxwwgwxwwggGhwgwxwwwwfxwfUvwgwwwvwuffwwvvxvfwuxwxfvxwwhwxxXvgefwuwfvwwwxwwwwwwxxgxhxgfvwgwvgxwhwvwxwwwwgwfvwvwwwwxvwwwwwfxwwwwgugwwhwgxwxgxwwwxhgwwwxvvwwwgwwgggwxwxvgvwwwxwhhvhxxwwwxwxwxwvgvUewfvgvwwxwwuwfwwwwWwwwgffwwwwwwxxxxxgwxvwhwwgxwvgwfwwwWxxwggwwgwxxwwxwxxwwwgvwgwvwWvwxvwwwxwxwwwxxwwwwwgwwwwwwxxwfvxwxwwfhgwxwwgvwwwxwxwwwwwxwgvwwhwwvwwhuwxwwxwxfwwwvxvgwwwwvwwgwxwvwvwwwxvwxvgwxxwwwwwwvwwgwwwgwwwwwwvwwvwvgvwwwwwwwwxvvwvwvGuwvfwgwwweVwwwvwuwwxwggufvvwvxwwwwwfvwwwwgwwxxwvwwxwwfvxvvvvvwwwewwvvwxxgwvvgxxvwfwxwxwwxgfegwufvwggvuvwvfVwxwwvuvwvwwgxwwvwwwwvwwwwwfwwgwwwgwvwwvGewxwwwgwwwvwgwvvvvwvvvxwxgwvwxwwgwxwwxgwfvwwwgwwXfwvwwgxwWxgvvwvwgvgfxxwxxwgwvgxXehxwxhwgfvgvvwvvvwwgvuwwvvwwgwfgfuwxxwfwwwwwxxxwwvwwwvgwwxwxvwvwVwgWtwwwgxwvwxwvwwwwxwxgwwvwxwgwwwxxwwvwwvgxxwgwVvxwfvwwxxxwwwwwgwhwvwwwvxxxwwggVvwffwvfvvgxwGxwwwwwxwwxwvwwgwwwwwxwwgwwwxwgwvwwxwwwvxwwxgxwgvhgvwxwxxxggvwwwwxwwwvwwgwvxwwwvxwwwwwxxvwwwwxfwwxxvfgwvwwvwfwvfwwgwxwvwwwhxxwwgwwwgwwwfwggxwwWwxxxwwwwgGxhexhhwxwwwxwwwgxxwxggggwhwwxwgfvxwwwwxwxwwvxwwwgwwvxwwxxxxwxwxfwwwwwxwxwwwxwwxgxgwxwhxhgxwwwwwxvwwwxwfwwwuxwwgwwwwwgwwwfWwxwwwxwwwwvwvwvxgxxxgxvwwwvxhgwWgwhwgvwwwgwwgwxwwxxwgwxggxwwvwufwwwuvwuwwwwwwwgxwxwwghwwxwgfwhwwwxwWwwwwwxwxxwwvxvwxvxxwvwxvxwxwhwwvghwwwuwwvwwwwwxwwwfxwxxwwwvwwvxwwwwwwwxwxwwwwxwwwxwxwgxwwwwwwwwgwxwxvgwvwwxfxvvvgwgfvwwwfwwxuhwWwwwhwgxvwxxwxxxwxwwvwwwwgwwwfwgxxgwxxwwhwxwxggwwwwwwggwhwWggwgwwgxwXwwxwWxwgwvxgwvwwgwwwxgwwvvwwwggwwxxwwWwxgxwvwvvwwwvxwwwgxwwwwvXwwwxwgvwxgwxxwfwwwgxwWwwgxwgvxwwwwvwguwwhwwxwwghvvwwwuxwwwwwwwwwxhuvwwwwwwvwxxxwxvwwvwwwxwxxgwwxwxgwxwxwwwxwgwhgwwwxwggxwvxxwxwwwxwwxwxwwwwxwxwxhwxwwwwwxwvwxwxwwxfuwxwxvWxwggwfgwwwwwxwxxwWwwvwwwguvwwwxwwwwxwxxwWwwxxwgwwwxwxxwwwxwwwWwwwwwwwwwvwvxWxwwfwwvvgwwxwxwxwxvxgxxxwwxxxwwxwxhgwwxxwgxxwgwwvfwgwxxwhwwwxxhgxxxxwxwxwxWwxxhhXhwwxwwhwgwxwwxxwwuxwxwwwuwxwwwxfwwwwxuxwWwwwwxxwvxxwxvwwwxwxhwwxxwxwwwwgxxwgwwwwwwgwwfxgWvwwgxwwwwxwwxwwwwhvgxwfxxwwvxwwwxxwvwwevwwwvwwfvxwxXwwxwxwwxwwfwwxwxvwvwwwwxxxwxwxwxwxwxwxwfwwwwxgwvwwxwwxwvxxwwxwwwexwwxwwvwwwwxvwvwxwxxxvxxgxxxwgwwwWxwwwwwwgwwwwwwwxxxwwwvwwvxwxxfwwwwwwwxwwWwfwwwwwUggfwvvgxxgxxwwxxTuefxwwwxwgwvwwxwxxvxwwvwwwwwvxwwxxxxgwwhxwxxxvxgxxwwxxUgffxwwwxxgxxvwxxwwwxxvwwwwwxxwwvxwxxwhvwwhxwwwwVvwwxxxffxxxxxxwwwgwwwwxxgwwwxwwvwxwxwwuwxxxgwwxwhxwwwxxwwxwxwwwxxxwwxwwwwxxgxwwwwxwwwxwwxvwwgvwvxwxxwfvwwwxvwxxwwwxuxwxwwvwxxEuefwwxxxwxgwxgxxxxuxwwxxxwxxxwxxwxwwxwwxxxxxxwwxxwxwwwwwwxxxxwwxxwwxwwwxwwwxwwwxwwwxxwwgwwwgwgwwwwwwwwvhwwwwxfwwxwwvvxwwwwxwxwxwVwwvfwwxvwgvwgvwvgwwxwxwxwhwxgwvwxfwwwgwwxvwwhwxwWwvgvfwvwwgwwwwvxwwwwwwgwxvwxgxwwxwxwxwxwvxuwwgvhwxxwwvxwxwwewwwwwwfxfvwxxvwvwwwwvvwUxvxwwvxwwwwgwwwwwvxwwVvwvwwgwgwvxwwvwgwwwvwwwwgwwwwgvvgxhgxwwhxxwwwfwwwwxxxwgwwwgxwVwxfgffwwgvwggwxxwvwxwWxhVwxxgwwgwfvwwwwvwvvuuwwfxwxwvwgwxwwwwgvxwwxhvgwWvhwwgxvvvgxgxhwvwgfxxfgwwwxxwvxwwxwuwfwwwwxwwwwvwfgvwwxwwgwxwxwvgvxwvwwwxwwwwgwwwwwwgwwhwxfwwwvxvwwwwxwxwghwwgwxwxxvwxwxwwgxwxxwhwxwhvwwwwwwfwvwwvvwgwxgxwgwwwvxwwwwgwhxxxvwxwwwxhhwwWxggxfwgxwxfxwwxgwxwwvwwggwxxwwwgvxwwxwwgwwfxvwggwwwwxxxwwwxxwwhuwwwwwwwxwwxwgwgxwwgwxwxwxwgfwxggwhxwywwwwxwxwxxxwwwwvxgxgwwwgwvxwwxxhwfxgwvwwgxvhxgxvwhwxvwxwxxwwwxggwvwwwwwxxvwxwwvvwgwgwhwwwwwwwwvwwwxwwhxfwvwwwwwvwgxgggwwwwwwwwwvwxwxwwxwwwwwwwxwxgwgxxgxgghvxwgvwwwwwwwwwwwwxxgwwwxwxwvwwxxwgwxwvwxxwgwgvwwgwwxxvxwwwxvwxxwxxgxwwxwxvxwxxwwwwwwgvwwfvwxwwwvwwwwwwxxxwwwwwwwwwwwwgwgvgxxxwvgwwwwxxwwwwxwxgxwwwwwxgwwxvxxxwwwwwwwwxxwwfwvgwxxhwggxxhgvxgwhwwwxgxgggwgwxyxwxwgwxwvwxwwwvvwwwwhwggwwhwwwwwwxwwvvwwvxxxwxhggxxvgvwxwwxxgxwwxwwxxwwxxhgwhwwwvwwwxwgxvwgwxxwvhxwwwwwxwwwxwxvwvwwxvxgwwwwwwwwwxwwwxgwxxwxwxwwwwxwwxxwxgxhwwwxxwwwxwxxxwxwxxwwwwvwwxwwwwwwxgwwvvgxvwwxwxxxxxxhxwxwgvwwwxxxgwwwxggwwgwxxxxwxxxxwwxwxwxwgwxwwxwwxgwgwvxxxxxwvgxxxxxxxxwxwwwwwgwgxwwxwxxxgwwxxyxwwxhghxwxwxxhxxwxwxgwwxxvwvxwwvxxwgwgxxwwwxwxxwwxwwxwgwxwxxxwwxxwwxxwwxwvgvwwxwxwwwgvwwwwxwuwfxgwvwwvewgwVwxwwhxvxfwwwxwgxvwxxxvwxxwwwwwwegwfwwvwhwgwwvwgwvgxxxgVwxxxxxxxwfwwfVvVwwxwwwwwwwxwwwxxwvxWvVwvgfwxxxwxxwxwfxwwwxxwvvwwgvgvvwVgvwwggwgvwhwwwwwfgwxwwxwwxwggwxwwwgwwgvvfgwxwwxwwxwwgwXgwwwxxxyxwwwvvvfWgvvwwfwwwxxxwwxwxwxxgxxwwwgwgxwwxxxxxxxgwxwxxxxgvuwwffwWvVvwwgwvgvxwwvvvwwvxxwwwxwwwwxwxWvVwvwwwfwwxwwxgxwwwxxxxxxgwfvvvwfwwxwwwwwwxvfxvwgwxwvVvwvxxwxwxxxwwxgevvfvvwVvwwvxwwvwwwwxfwxwvxvwwwgxvxgxwxxxxxevvxwwwvxwxwxwwxxxggwwwxxxxwfvvfxvwwgwxwxwwwwxxwwwwxxxwxxxwwxxvwxwwwwwwwwgwvwwxwgwwwwwvwwwwwxxxxwwwwwwwwwgvwwwwwxggwvxwwwxwxwxxwwxwwwwwwwvwwvvwwxxwxxwwwwwwxwwwwwwxxxxwwwwwgvwgvwwwgfwwxvgwvwxxwwxxxxwxwgwwxwwwwwwwvxwwwxwxwxxwwxxxxwxxxwwwwxwwxwxwxwxwxxwwwxxxwxgwwwwxwxwwwwxwwxxwwwvwgwvwfwwvwwwwwvwwxwwwwwwwwwwwxxwwwwwxwwwwwwwwwxxwxxwwwwxwwwwfwxwxxwxwwwxxxwwwxwxxxxxxxwwwxxxwvwfvwwvwwwwwxvvwxgwwwwwxwxxxxwxwxxwxxxgwvwwwwwwwwxxwwwxwwwxxxxxxwwxwwgxvwxwxxwwxxxxxxxwxxxwxxtwghgwwwfwfvvvwxwgvWwwxxvwhwhwfggxxwwwvwwggwwwfgvggwgwwhgvgwhxwwWgwwfgvwhxwxxwwwwfwfwwguFwwxgxwwwwwwwwwxguFwxvwwwxwxvhwhwwwwxxwwxxxxgwwwwwvwggwwwwvgwwwhwggvgwgwwwgxwwwxxwxhvvxhwwwwxwwggwwgwwwvggwfwgghxxxwwvwxwwhxhgwxwxwwxwwyxwxvgvfwwvgwwxwvfvwWwwwwwwwwwxuxwxxvxxwvvhwvWwvgxxxwwwwxxhwvwwwwhxwwwxwwwwfwwwgwgeFwwwvvxwwxxxxwwxwwwwxwxxguFwwvwvvwvgwwhxxxxwwxwxwxxwgwgfwxwwghvwvwxwgwwwxwwxwwwwwxxwxwxwgwwvwwxwwxxxxxwwxxxxxvffwvvvwuvwgvvgwvWvwwgwwwvwwwxwxxwwxwxxgxxwwxxvwvgwvWwxwgxwwvxwwxxwxwxwwwxxwwwwvwwvvxwgvwwxxxxwwwxxxxwxwxxwxxwwxxwvwwxxxxxxxxwxhwwwwwxwwwwvwwwgwwvggwvwvvvxfwvwwwwuwwwfwgwwvwwvwwvwvvwwxwwvvgwwfwuxwxwwwvwxwwwxwvwwvwuwwwhvwgwuwwwwxxxwxxxxwvwwxvwwwxwxwvxwxxgwxwxvxwwwxxwxfwuwwvvffefgvgwefvwvfvvvwgvwvffvgufwxwvwvwwguwwxwxfvwwwvwfffVwwvwwvvvxxvgvfxwwvgfUxwuwwwxwvwxxwhwxxvgvwuvfvvwwvvwwwvwwwwwvwxwwvwxwxgwuwwvxwwgvwxxwvwwwgwwwxxwwxwvvvvwgvwwvwwwwwvwwwwwwwvvxwvxwxxwxwwwgwwwwwxgxwwxwwxwxwxxwwwvwwwxxwwwxxwxwwxvwxwxgwwuwwxwwxxwxxwwxwxxxxwxwxxwwwxfvwxwxxxxwvwvueufvwvwweuvvwfugevfwwvwwuvvwxxvgwwvxwwvwfgwuxxvvvvwvuvwvvwgvwwxvwwwxwwvwvwxwxwwwxxwxvwwwvxxwxwgwwwwxvvwwwwuwvwxwgwwwwwwwxxwxvwxwwxwwwwvwwwwwvvgwwwuwwwwxwwvgwvwwwwwwwwwvwwgwgvwxwwwwwwwwwfvwvwvwwwwwwwgvwgvwwwvvgxwwwwxwwxvwgvxxxwwvgwxwwwwfxwxxwwwwvwwxwxwxwwxwwvgxwwwhvwxvffgwxwwgvwwwhgwwvwwwwwvwvwxwwvwxwwwvxwwwWgwxwwwwxwwvwgwvwwxgxwwwwwxwwwvwwwwxxxgwwxwxwwgvhxwvwwgxfgufwxwgxwvwvwxxxwwwwxwxwwwxxwgvxfwwfffwvvvgewgwvwvvxfvwhwwwxwxxvgwwvgwxwgvgwwvwwxwwvwwwxxwxxwxwvwvwvxwfwxvwgfwwwvwvvxxxwgxxxwwwwxxwwwxvxxvwxwwwxxxxxwfvwwwwvwwffvgwvwwwvwwwxxwvgwxxwvwxxwwwxwwwwwwWgvgwxwwwwvxxxwvgwwwxwwwxwvwxxxwwwxxwwxwwvwwxwwwwxxwwwwxxwwwwxxxwwxwxxwwxwxugwgvwvgwwvwfwgwvwxwwvggwwvvwxvwwvwgwguwwggwwwxvxwxvwwwwwvvwggwwggwxvwgwwgwwgwwfFgxwwwwxvvxgvxgxwwwwgxvwwwwwwwwvxgwwwwwvgwwgxwxwwWgvxwwfwxxwwxwwxwvgwxvwvwgxxxxxgggxwwwxwxwxxwxgwwvwwvewwfgwfFwgwwwwgfggwwggefvwhfgwxggwuwvwwwwwwgwwvwvwgvwwwwwvwwwgwwvwwwwewxfwgfwfhwfwwwfwhwwwwwwxwwwwuwwuvwwwvxxwwgwwwwwwWgvwwxwwwwxvwwgwhwwwwgwggxwxwxxxxhxwxxxwwfxxxwwwxxwwwwwwhxgwwvxwwxxxwwwhwwwxxwfwwwwvfvwwvguxwwgwgvwwggvwwgwgwwwewwwwgvwxxFWufwxwwwgxwgwwwwwvwgwwxwwwwwwwwgvwhwwwwwwgwvxvwwwwwxhwwxwxwwwwwgwwgwwwxgwwgxvxxWwxwvvxwgxwxxwxwxwwxxxhxwwwwwxwwwxvwxwwwwxxwxxxwwgwwwxxwwxxxwxwgggvevugWwvxvxwFVufvggwvfwgwwwvwwvxwwgxwfwgvwwwgxwwwwvwwvwwwvwxwvwwuwwfwvwxwwwxwvwwxwxgwwvwwgwxwwwwxxwwxwwgwwxwxwwgxwwwgwwxwwwxxxxxxxxxwwxxxxwxwwwwvwxfwwwwxxxxxwgwxxgVwgwwwwxwwvuxwgwwwwwgwvwwwwwxwwwwwggwwwwxvwvwwwfvVwwxwvxvgvxWwwxxgvvwwwxwwhgwwwvvvxwxwwwwvwwwgxwwwwvwvwwwxwxfvVxwwxwwwwgvVwwwhwwwwwwwwxwxvwwwwxxxxxxxwwvwwwvwvwfwwwvWfwxwwwvwwwwwvwgwWwvwwwvxwxgwvvwxgwwvwwxxwgVxwwwvwxwwwwxhxvvxgwwVwwwwwwgvwxwywvewwwxgwwfwvxxwwwxwuwwwwhwwxwxwwfwwxxgxwxwwvVwxxwwvxgwxwwwvxwxwguxwwwwwwvwwvgwvvxgwwvgvWuvwxxxwxgvvwxwxfvWwwguxhgwxvwxxwvwwxwwxxxxwwvwwwwgwwgwwwwgxvwwvwwwwwwxxwwwwwggghwxxvwxxxxwxxxxvvgewggwuwgxwgfwwfwwgvxwxggxwxwwwwwwxwxwxxxxxvvuwwgwvwgxxgwwwwwwwwwwxwvwxwxwxwwgwwgxwvwvwvwwwxwvwwwxxxvwwwwwxwxwxwwwxxwxxxwvwwwgvwwwxguggwvgwgvwfvvwgwwwvggwwwvgvwvvgwwwwwwvvxvvwvwvwxxgfvwhfwwwgugvwwxwhgvuggvwxvwwvgWgxgxvfgvwfuxfxwwxvwwwxgwwxwwgvwvxgwgwfwvxgvwwxxwxwwwwgvxxxxxwwfvwgVuwgefggugwvvwwgvgvugwwgffugwvfvwgvwgvwwgwwwwwwwvwwxwwwwwwxwwvwxwwxwwhxvgWxhgvvwxvwwwgxxwwvgvhhfxxwxxwgvgffvxwvwwwxwvvwwgfvwwwwxwxvwwwwxwwxxxxgvuxxvfwxxxxwwffgXVxwxxwwwxvxxwwxhwwvggwwvwwggvVvwvfvuwwwvxwwwwxwwwwgwwgfwxwxxwxxxwgwfwwwwwwgxvwvgwwwwgwwwwwwxxwxvwwwvwwwwwwvwwwwwwwxwwwwwwxwwxxwxxwxxgvwwwxvwxxxwxxxwxxwxxwxxwxwxxxwxwffvfwvwfvvwfwwvVvuwwwgvvgwwwwwewwwwgwwwgxvgfvwxxxwvwwxwwvvegwvvwwwwxgwgfxxxwxwwwwxwwxwxxxxxxfwwwwwxxwwgwwwwwgxxwwxxwxxwwxxwwxwxwwwxwxgvwxxxwgwxxxwwwxxxxxxxxwxxwwwxwwwwxwxwxwvfwfwwxwwvvwwwxwxwwwxwxwxwvfwwvwwxwwwwwxxxxxxxwxxxxxxwxwwfgwwwwwwwwxxwxwxxxwxxwxwwwxwwxwwwxxxxxwxxgxxwwwwwwwwwwwwwxwwwxgvwwwwxxwwfwwxwgxwwwxvxwxxxxwwxxgwwxxxwwxgxwwwwwxxwxwxxxwxxwxwvwwwxwxwxxwwxwxwxxwwxwxyxwxwwxwxxwwxxwwxxxwgwwvwvwwwwwgvwwvwwwxwvwvwwwxgxwxxwwwwwxgxwwwxwxwxxwwgwxxxwwxxwxyxwwwxwvwvxwwwwxxxxxwxxxxwwxxwwwxwxxxxwwxxxxwwwwfwwfwxwxwwwwwwwwwwwwwxvwxwxxxxgxwxxxwwwwwxwxxwxvxwxwxxwxxxwwxwwwwwxxwwwxxwvxxxxwxwxxwxxxxxxxxwwxwwxxxvwvwwwwwwWwvwwgwvxwwwwggvwxwwvwgwvxgwwwwwwwuwxgvvwwwwwwwwxxwgvwwxwxxxwvwvwggwwwwhwwwwxxxxwwwwxxwxxxxwgwwwwwgwwvxxxxwwxxwxwxxvvvwfVvwvggxvwxgwwxgwvvwwwfhwgvvwwwxgvwwwhwwwxgwgwwvwvgwuvgwwgxwxxhxxwWgwxwwxxwwwxxgwxxwxxxwwgwwwwwwwwwwxwwwxwwxxwwxwxxvxxwwxxwxwxWgvwwxwxxwwwxwxyxxxxxwwvxxwvVwewwufwgwwgwwvwvvvvvvwwwwxxwxwgwwwwvwwgxwwwwwwwwwwxxxxvwvwfwVwwwwxxxwwwwxxwwwwwvxxwwxxwwxhxwwxwxwxwwxxxwxxwxwxxxxxwvfevvvwwxwwwwxwwwwwwwvvvwxwxwwwxxxxxwwgwevgwvwxgxwxxwxxxxxwwwwwvwwwxwxxwwwwgxwwwwxxxwwwwwxxxxxwxxwxxwxxvwvvvwwvwvgvvwvwvwvwwwwwwwwwwvwfvwwwxwxvwxwwwwwwVwvwvwwgwhfgwxxwvvvwwvwwwwwwgvwwvvwxwgwwwwgwwwgxxxxwfwxvvxwxxxxwvfvvwwvwwwwwwwxvgxxwwWvtfgfvfwvvvwvWVwwhfvwwwxwwvvgwvwwfgwwxwgvvwwxvvwwxwwgwwvgFgwvwhvvvwWVwxxwwwwwwgwwwvwwwwvxwvwxwxxgwxgvgfwwwvwwxvwxwwwwwwwwwwwwvwxvvwhxxxwwvvvwwvwxwwwwwwwxxwwxwwxxxwwxwwwxwvwgvwvwwvvvwvgvgvwwwwwwwvwgwwwvwwwwwwwgwvgvxgxwxxhwgxwwvwvwvgwwgwwwwxwxxvxwwwvhgwxxxwxxxwwwgwxfgwwwwwwgwxwxxxwgwhwwwwvwvxwxwxxwgxwxxwwgxvgwgvwwwwxhwxhwxwxxxwwxwxhwwxwwxwxvgfwgvvfvvgvwuwfvfwwwgvuggwVwwvvvgvfwwvwvwvwxvfvvwgwfvvwwvwwwgwwwgwwxwuwwgwgwwwwwgwvwwwgxxgwvvwxxwvwfwgwvxxwwxvwgwwwvwwwvwwxwvxvwwwxwwwvwwgwxxxwxvxwvwwggwxwxwxwwxxwxwwvxwwwwhvwwgwwgwggvwwgwwxwxxwwwxwwxxvwxgxxxxxwfxvwfwfwwxxxwvxwxxwwvwxwxxxxxwgwxxgwxxwwhxwwxxwwwxwwxwwwxwvxxxxxxwgwvxgwwgwwwwwggwwwwxwwxwgwwwwhwvwwggwhxwwwwxxwvgxxwxwwgfwwwwwxwwvxwxxxwwwwwwhwwwwwxxwwxwxxxwxwwvwwwvwwwwwwxwxwwwxwxxxxxvwwwxwwwxxxxxxvxxwxxwxxgvwwvwxwwgvfwxgwfxxxwxwxwxwgxwhvwxvwwwwxwvwwwwwwxwxwwxwxwxxxxwxxwfvwxxvwggwwxxxxwwxwwxwwxxxvvgwwhvgxwxxxxxxxwwhwwwfwxvhgvvggwxwwwxwwvwxwwxxvwxgxxwxwwxghwxxxwxwwvwxwvwwwwwxwwwxxwwxwxxxwxvxwwwwxxwxxxwxxwxwxxwxwwwwxxxwxwwxhwwwxwxxxxwwwwwwvvwwwvwfggggwvwvwwwwffwgwvwwwvvgvwfvwxxwwwfgvgWwvvwwggwxwwwguwwwuwvwwwxwvwwhfvfgwwvvwwwwvvwwvwwwfgwwwwwwvwwxxxxgwwwvgwwxwwwwwxxwxwgwwwvwwxgggwwwwgwwwxvffwwWWgwwwwwwvWgvgwvvwwwwvguwvvuvvwwwwwwwvwxwwwwwwxwvggvwwvvwvwwwgwwwxwwwwxxwwvwwwvwxwwwwwwgwwgwwvgvwwwwgwwwxxvwggwwxwxwfwwgvwvxxwhwxwgwxgwwxwgwvwwwwxwxwwwwgxxxxwwwwwxxwwwxgxwwwxvwwwwvvwwwwwuwwvwwwwwgwvvwwwwwxwvvwwwxxxgxvvwwwvwxwwwwwwxvvwwwwxwwxxwhxwwxvgvwvwwwwvxxwgwwwxwxxgxvwgfgwwwwwwwxxfwwxwxxxwwgfgxwwwwwwwwwggxxwwwgwwxwwxxxxvuwwvuvwwwxwxwwvvwwwwvwxxwxfvgwwwgwhxwwwxwgwwhxwwwwgvvwwwwwwxwwwwxwwwwwwxxwwwwwxxfwwvwxwwwgvwxwwxwwwwwwwwwwwwwxwwxxwwxwhwwwwxxxgwxwxwxxwxwwxwxwwgwvwwvvwwwgwwvgWgwWvwwwwvvvvwvwwwgggevvwxwwwwwvugvgvvxvwgwvwxwvvwwwgvtuwwuwwfwxwwwwVvxwgwvwfwgwxfvwvwwgwvxguwwvxwwvvxvxwvwwwwwwwwgutuwvvwwwwvxwvfwwhvfwvwwwxvxwvxxxwwwwwfwvgfvvwfvwwfgwwgfgvvvgffuvwwfgfwwvvwwvvufwvvfwwwwwwwwwvwwfwvwwfxwwfhwwfwfgfvwwwgguwhwwvxwhgwvxwwwgwWxwwwxwwwwwwwvvwwvxgwwuvwwffwxxgwxwvwwwwwxxxwwwhwxxxvuwwwwwwwxxxwwwxwgxwwwwxxwxwvxxwgvvxwgvxwuwvvgvwvgfwwwwwwfvwvvvvfwvwvwxgwvgwwxwvgwwguwvvwwgfwwvwgwvxwxwhvwvvwwwxxwxvwxwxwgvvwwvwwwwvxevwwgvfxwxwwwvwwwwwhxgfwxwwxxhxhwwxxgwwwvgwwwwuxwxuxwwwxxwwxwxxxgxxvwwxvwwwvwwgfwwwwgevvwfwevvgwvxwwfvwwhwxgwvwwxvwwxgwwwgwwhgwwvfwvvwxxgxxxwwgwwwwgfwwwhwwxwxwxgxvwxwwwwwxwwwxxwwwwxgxxxxwwxxfwwwxxwxxwwwwvwwwwwwxxwxxxxwwxuwwwwwwvxvvwwwwwfvwwfwwfvwwvvwwvwVvwwvxgfgVgvvwwwgwwxwwvwwwwfwwwvwfvuvxgvwvxwwxwgwvwwwwwwvvvwfvwwxxwgxwwxwvwwwwgwwgwvwvxwevgwwwwvwxwwwwwvwwwxgfvwxwhxwxxgwwvvwvwgvuwwxwxxhwxxgwwwhxwwwwxxhwwxwvwwgwfgffwfffvffVggVfwwvwwfvvvgwwvwwvfwfvgwvwfwvgwwwhwvgvwvvwwvwwwwxwvvvwvwwvvvgwwxwwwxwWffvwwgggwvxvwwgvwvwhxwwxWxwfvwwwwwwhxxxwvwhvwgwwwgwwwwxwwhwgxwxxxxwgwxwxxwfvxgwwwxxwwwvwxwxwwxwvwwhxxxgwxgvxxxwxxhwvwvwwewvvgvwwfgwfvvwwfwvvwffvwvvwwgwxwwxwvvwwwXwwxwxwwxwwwvwwwwwwvwwwwxgwwwwxgwxwwgxhhXvxwwxwvwvwwwgwwwwwwgwxwxhwwxgxhgWvwxwwwwwxWhxgwxwwwxvwwwwwwwxwhxwwwxxxwwxxxwwwwhxxxvxxwxxxwxwwvwfgwfgggvgfwwfvvwWvvvvvwvwvgwvwwwwwfgwfwwxwwxwhggwwxgwwfwwwwwwvgwwgggWwwwfwvwvwwwgwwxwwwgwwwhxxxwwxwwxwvxwwwwwhwgxwwwxxxwxxxxxwwxxwxwwwxwxwwwxwgwvxxgxxwwwxxxxwwxhxxfwVwuffwwfwfwvfwgffvwvvvwwgwfvwxwfwwvwwvvwwwwwwwwvgwefwxggfugwwfwxwgugvgvwwvvwugwwgvwwwwwxxwwvxxxxxwvwfxfwegxvfvxgwwgvvwwwwxwgevxgwwxwxwwxwwwvvuwwxwwwwwwwwwvxxwxwwwwgwxxxhwwwxwxewuwvwfxffVfwuwwEfwwwvwguvwwfgwvefugVvvwwwwwfwugwwvVfewvwhwxwwvwwvwffxwwgfxwwwgwfwxwUgvwwgFgwhgvxgwxwVxwfxvvvwfvvvvxwvwwxxfuwwxevxvxwfwvwwwwwwxwxwxwfgwwxwxwxwvVvwwgwWwwfwwVwxhExxxxwxwxwwxxwwwwwxgwvwxvwgwffvufgvvwxgwvffwwwxwggffvwwgvwxwwwwwxxhxwwgVvwvgwvwxwfxwwwwwwxwwgvxxwxxxvwwfuwxwwwwwgwwxwgwwwwwwwwwgxgxxwwxxwxwwfxxwwwwwwwwxxhwwwwhwxwxxxxxxgfUvUvtvftwfVvwgvvwwwvvvvgfwwwxfuvgvxwwgwwwwwxwgexwgwgwvwgwgVwwggewwwwwwwwwwwwwxxgwwvxwxxxwwxxxxwvwuwffgwwwwxxwvwwwwwxwgwwxwxwwxwwhwhwwgwwwwwwgxxggvwwwwxxxvxxwxwwvxxwxwwwwxuwwvfgwvxvwwvwvvwgwvwwvggvwvvxVvvvwvvwwfgvwgwwvgvvwwwwwffhwwWfuwwgwxvvwwwgwxwgwwxwvwvxxgvvwwwwwfwwwwwfwwwvwvwVvvwwwxxwvxhxwxxvgwvwwxxxxVfexwvwwwxhwxxwxwxvxxxwxxxwvgfwxwvwfwwfwvwgevwxwwwwfgwwvwwfvvwwgfwxwgwwwvvwgguwwwgwwwxvvwhvgfvuxvwvwwwgxwwwgvwwhfwvvvwwuwwwxxxgvxxwgxhfwguwwvfvvwwwwwfwwgvwxxxfwhwwwwwxwwwgwwwwxfuvwwwwwxxwxwgvxxwxwwwwxwxxvxxwxxxwxwuevwwvevvvwfwwwwvwxwwxvvxevwwvwwwvgvvgxwwwwwxxfvwwwwwgwvvfxwwwwxxwwxxhvxwwwgvxxvxwwvuvwwwxwvwwwwwwxwwwwvwwwwgxwwwxxwxxxgwxggxwwgvxxxwxhxxxxxxwhxwxwvxxuwwffvwvwwhwwwgvwfgfvvwwwvhxwvvvwvgxxgwvxwxhwwwwwgwwwxvwwwfvvwxvvvxwwwwwwxhwwxxwwfwxxxxxgwwhvwxwwvwxgwxwwxgxwwxxwwwwxxwxxxxxhwwwxgxwwhxxxxhwxxxwxwxtvwvwwvwvwwvfwvgwxvvwwwwxwwwgfwxwfgwvwWwwwwwwwgwvwwu6wvwwWwwwwVwxggWwvwwwvwwwWwwvwwxwwxwwwwwwwwvxvxwwwwgwwwwgfwfwvgwwwwxwvwxxwxguwfgwwwvwwWwwgxwwxxwvwwxgvxwwwggwwxwxwwwwwvwwXwxwwxxwvwwwxxwxvwwvvvvfwggvvwwwWwvvwe6fwvwwVvwwwwvgwffwwwwvwgwwwwgvvgwxwwwwwwvxwxwxwwgwxwggwvwvwhwvwwwwwxvgxwwxgvxwwwwgwwwwgxgwxxgxvwwwwwxfwfwwwwgwwhwwwwwhwwxuwwxwxwwwwgxwvxxwvwwwxwwwwwwwwwwvwxwxwgxwgxwgwwwwwvwwwwwwxwxxgxvwxwfvwwfvvvwtvxvguwwwwxvvhxgwwgVUgefwvvxwgwffwgwwvwgwwvwvufwvwvhuwwwwwwwwwvwwwxwwfwwWwwwxwwwxwxxxxwvvxvgfwwwwwwwwwxwwwxwwwfwwfwvvxwwwgvfwxhvwwxhwhwvwxwwxwwxwvwvxxxxwwwwwwxxxxxxxxwxxxxwhvwvwwwtvvwuwgfwfwwwwgewwxvvfwUgefwxwxuxwwxwxwwwgWwwwfwwwwwwwwxwxwgwxvvfwwwwwwwwwvgvwxvxwwwxhwwxwxwgxwxgvxvwgxwxwwwwwwxwwwwvwwwwwwwwgwxhwxwwxvwgwxwxhxxwwwxxgwwwxgwwwxxxwvxvgwwxgxxwwxxwxwgwvgvwxxwvwxwwxwwwwwvxwwgxxwwwwwwvxvwwgxfwgvwvuwgwvhgwuxwwvvwwvwwhwxxwxwgvWxxgwxgwwwxwwvgwvvwxwwxxhvVwwvhwwxwwxxwwxxwwwgfxwwwvxwwgwuwwgxxwwxvwwwwgggwwwxwxxwwvwwwxgwxxgwwwfwwwxxxwxxwwxxwwvvvwwwwgwxgwwwwgvwwvwghwwvwwhvxwxxwfwwwwwwxgwvwwwxwgwwwwwgwwxxxwwxvvxgvVvxvwwwwwfgwwwxwwwgvwwwxxxgvWwwwwvxwvxxxwgwwxxxwggvwwwxvwwxvwgwvxvxwxwxuxwxxxwxfgwxwxxwxxxxxwvffwwvwwxwwwgwwxgwxwwxgwxxxxwvvwxxwxxvvwwwwwhwxxxxwwxxvxvvxxxgwwwxwvxwwwxxuxwxxxxgwvxvxwhxwwxxxwwxwxxuwwwwvvwwwfwfwwhwgwwwxwwwwgfwxgwvwwxxxvwgVvwggwhvGxwwwwhwwwgwxxwwhvwxwhwxwwxxwwfxwwggwwwwxvxwwwwwwwwvwxxgwvwxwwvwvxggwxxwwgxwxwwxxxxwwxwwwxvwvfgvFvwwgwwvwwwgVwwvxwwwgwwwwgwvgwwwxwwwgwwxvwxgwwxxwwwvwwfxwwwgxwwxxxwxvvxxwwxwfxwwwwwwwxxwxvwwwxwxwxwwvvwwwxxxgvvwhwwxxxxwvxwgwxxwwwwxhwwwwwwwxwxxxwwwggvwxgwwfvwwgwxvxVfufwxwwfvwfwvwxwxuwvgxwxxwwxwgvwwwwwgvfwwxwwwhvwwwxwxwxwxwwxwwwgvvhfvwwwwwwxwxwwxwxwwwwwxwwghwxxxhwxxxwwvwwxwxxwxgwxxxxxxxxxwxwwwgvgVfevwwwgwwgfwwgghwwexvxwxwwgxvwgwvwwxxwxwxwwwfwwwxvwwwxwxxxwwxvwfwxwwwwwxxvwwwwwwgxvxwxxxwxwwgwwxxxwxxwxxwwxxxwwwxwwxxwxxxxxwwwvwgvwvwgwwwxxfwggwfwwwgfgxxwgwwgvggwfvwwxxxwwwxevwwvwxgwxxwWwegxwwwwwxwxwwWwegxxwwxwwgwWwwvvwwwxXwwxwhwwgvwwxxxwwwwwwwwxxgvvxxvwxxxwxxwxwvxgvfwwwwVefgfgfwwwgvxhwgwwVvWvegwwwwwwwggvvwWvgwwwwwxhhwffvwwgwvwgWwwwxxxwgwwxwggvvvwwgwwxwwgwwyxwxxfywwwgfwwvwxwxvwgwwxxxwwxgwfvxwwwxxvwwxxxxxfvwwwwwxwgvwxxxwwxwxxgxvwxxhVxxyxwwvxfgVgwgvfwwwwfWwwxwwwwwgwwwwvvhwwxxwwwxwgwwwwxwxgvvxwxxwwxxxwwxxwwwgvwxwwxfwwxwxxxwxxwwwxxxwwwwxhxxxwxxxgwwxgwxxxxxxxwwxxxwxxxwxvffUvfvVfevxwvwwWwfgwgwwvwwwwwxgvxvwwwwxwgVgvwxfwffwwwwwwwvwxwxxwxwwwwwxwwhwwwxwwwwwwwwwwgwxwwwwwwhhwxwwhwxvxxhxwghgwxxWxxwwwwxxxyxwwhwxxxwxwxwxwwwxwxwxxxwwgwwwwxxwwxwwwxwxvxwwwxxwxxxwwwwwxxxxwxxwxxwxwwwwxxwxwwwwxwxxxwxwwwxxxwxxwxxxwwwwwwgwwxxgwvwvwwwwfwwwwwwvvwwwwxvwvwwwgxwgxxgxgwvwwxwwxwwxwxwwgvwxxgwwhxwwxxwwwwwvxxgwxwgwwwxwwxwvwwxwxxwwwhxxgwwxwxxxxwwwwwwwwwwwwwxwwxxxwwwwwwwvwwxxwwxwwxwxwwxwxwxwxxgxwxxwwwwwwwxxwxxxwwwwwwxwwwwwwwwwwwwwxxxxwgwwwxxwwwwwvxwwxxwwwwwxxwwxwwxxwwxwxxwwxvwgvxwwwxxxxwwwwwxwxxwvxgwxwwwwxxxwxwwxxwxxwxwwwuwvwvfwwxuugwgfwvewwwvxwwwgwwwwwwwwwwvvxwexvwwwvvwvwwvvwvwwwwwwwgwuwwvxgwwwxhuwwwgvvxwvwvgwwwwgwwwvwwxwxwvwxvxwwxvwwwwxwwwxwgxxwgvuvxwxxxxwxwwwxvwxeevwwvwvwvwggwwwwwwwvwwwvvwvwuwgewfwwwwwvvvwfgvgvwwwwwgvvvwwwwwWxfgwvwwxwwvwwgwvvwvgwwgfwwwwwwvwvwgwxwwwwvwwxwvwxvwvgwxwwvwxwxxwwwwxwxwxxwxwvwwwxxwwwxwxwwwwxwwwwwwvwwwwvfvvvuwguwwwuvvvvwwWwvvvwwwwwxxvwwwwgvxwxwwgwwwwvwwgxwvwhewwwwwwxwxwwwwxwxxvvwxgwvwwWwvwxwwgvwwwwgxwwwwxwxXfxxhwwwwwxvxxwxxxxwwhwxxwwwxwwgvwwvwuvgvwgxvwwwfwwugwwwwwWwwwwggwwwwvwwxwwwwwwxwwwxwxwwvgwxWwwvwwwwwwxhgxvwwwxwwxwwxwwwwgwwxwxxxxwwwwxhvwxwxxwxxxwxhwwwwxwxwwwwwwxxvvwwwvwwwwvfvwxwxxgvvwwwvwfwvwwwgwwwwwwwwwwwvxvwxwwvwwwgwwwfvtVgvwxvwwwwwwvvvfvtWxwwvwvwwwwwwwwwwwwwwhvfwxwwgghwwxxvwvwwwwvvfwwxxxxxxwwgvwugwwwwxwwxwwxxxwvvxwxxxwwxwvvvwwvgvvVvvwvgwffvgwggfvtVgvwfwggwgwwwwwVvtWxwfgwwgwxwwxwwvwwhwwvgwwvvwvwVxvgxwgvxgwwwwwfxwwWwhwxwgwwggwwvwwvvgxwfvegvwggwwgwwwgwhvwwxvwwwxwxwgwgwxwxwwgvhwgwwgxwxwvggvwxwhxwgvwxwgVwxwgxxvwxxwvwwwwwwwfwwvxwggwwggwwwvxwgvfwwxwvxxgvwgxxxwwwxwwwgvwgwxwwwxwwwwxxxxxwwxwwwwwxxwwxwxxxwwwwvwwxxxvhxgxxxgxwxhxwxwwxwxxxxwhwwwxwxwwxhhxxvfvvwwwgwwfeughwffwwfwgwufgugvgvwwwwxwgvwgwfgxxwxwvwwwfgxgvwxvvxgxhvwvwwwvwwwxwwwwxwwhwwwwwxwxwwwwfwxwwwwfxwxvvwfwwvwwwxgwwvwxwfxwvwxxwwwwxwhxxxxwvwxxwwwwwwwvvfwwwwwwwwwwvwwgwwvwwvwuwfwhxwwwwwvwvhxwwwwwvxxfwwfFwuwwxwvwwgxgxgwwwvxxgwxwwxwxxwwvwwgwwvwwwwwwgwuxwxwwvvgfxvgwgwxxxwvwwgwwwwxxwwxwwwgwwxxghhwwxwhgxwgwvgfgwgggwwvvwhwwwxfvgvwwwwwvfFvfvwwwwwgwwwgwvwwwwwwwwwwwwwwwwwxvwxwxwgwwxxvwgwfhxwwgxwvwwwxgvxwhwwxwxgwvgwwwwxxgwugwwwwwwwxwwwxwwwwwwxxwxwwwvxwvwvxxwxxwxwwwxxwxhwvwxwhwxwwxwwwwwfvwwvVftuwwwvwwuvxwwwwvgwfvxwxwxwwgxvwvxxwvwwwffwwvvxwgwxxfwwxvwwxxwwgvwwgwvhwwwWwwwwwwwwvwxwwwuxxxwwvwwxxxwwwwxxwxxwxwvwVfduwwvwhwwevvwwffwwwwwwgvwvwwhwvwwwwvwxxwwwwwgxvwxwwwxwxwxwvwwwxwwwwwwxwgwvxxwwwwvwvxwwwwwwwwwwxxvxwwwxwwwxxxwxwxwwwxwxwwxxwxxxvxxwwwwxxwwhwxwxxwwvhwwwwwvwxxvwwwwxwxwwxwghwwwwwwwwxxxwwwwwvwwxxxwhwxxhwwwxwwwwxxwwwwxwwwhwxwxxxwxxxxxwxwwhwwwwxwhxxwwxwgwvvgwwwvwgwwwwwxxxwxxwwvwwwxwwwxxxwwxxwxwwwxwxxwxxxhwwwxwxxxwgxxxwxxxwxxwwwxxxwwwwwwwxwgwgwvwwxxwxwwwghwgwvwwwxxwvvwxwwwxxxxxwxxwvwgwwwxxwxxwwxxvwwxvwwxxwxxxwxwwwwwxwwgwwxwxxxwwwxxxwxwxwxxxwxxwxxxwwwxghxwxxxwwwxxxxxwxxxwxxwxxgxwvggwwwwwwwvfwwwWwwwgwgwvwwwvxgwgvwgwwgwwvwwwwwhhvvhwVwwgvwwxxwgwgxxxwhxwggvxwwwxxwxxwxxwwwgwwwwwxgxgxwwwwxxwvwgwxwwwgwgxxxhxwxWvwwxxwxxxxxxgxxxhxxxxxwxwvwwwxwxfwgwfwgwvxwgVwwgvgwwxgwvxggwwwgwggwWwwwwwwxwwvwwgxwwwgvwvwwwwwxwxwwwvgwvwwwwxwxxwwwwwgwwwwwvhgvwwwfxwwwguxwxwwxwwxxgxwxwxxxwwxwxwwhwxxwwwxVxwgfwhwhggguwWvwvxgxxggxgwvwwxwwgvxhgwgxgVwwxwwxfwwwwxwXhxxxwwwxxhgxxwxxwwxxxvxhffvwfwwxxwvwwxvxhxxhwxwvvwhwwxxwgwwxxxxgwvwxwwxwwxwhwwxxwwxgxxwwxxfxugwvwwwvvgwfxxggvwgvwwgxgvxwwwwwxxwxxwfvwwwwhwgwhwwwvxwvwwxwgwwxwwwxwxxwfxwxxxwwwxxwxwxxwxwxhxwwxhwwxxxxxxxwxwwwxxhwwxxxxxxwxxtwwwwwwwwwwwwwwwxwwVwwxwwwwwwwxxwwwgwvewgwFwvwvwwwwwwvxwwwwggvwgwxwvwwxgvfwgvwgwgxvwwwwwfwhwwwwwwxfWfwwwfgfwxvwvwhxhwwxwxwwwwxwxwxxwxvvvwgwfwvggvwwvwfwwgwwwwgwwFvhxwxwxxgwxxwxvxwvWfvwvwvgvuwwwVvwwgwwwwwwwwwwwvxxwxwwwxwxxwhwxxgvwVfwvgwwwwxwwwwwggwvwwwwxwwwfwwxwxwvxxxgwwwwgvwwwvwwgwwgxwxvwwxvwvxxwwwwxvvwfwvwwwwwgwgwwwwwwwuxwwwwxwwxxygvevwvvgwdwvwvwxwxwxwwwxwxxvvvwwgfwggwwwgxwvwwwwhwwwwwxwxwxxxxxxwwUffwwwwwwwwxxxwxwvwxwxwwxxwxvwvwdvfwvvwwwwvwwwhwwwvwwxwwxxwwwxwxwxxxvwvvvgwwwwehwwwhwwxwwwvwwwwxxxwwwwxwwwwwfvuvwfggwwwwwxxxwwxwhxvxwxhwgwwhwxxwxxxwxxxwwwvgwwwwwwwxwxwxwxwwwxuvvwwwwxwgvwwvwwwwwwxwxwvgwwxgvgwwvfwfwvwWwWwwwwwwuxwuvvvwxwxgwvwwwwwwwwwvwwwwWvwwwwxgwwxwxvxwgVwvwwwwvxwwuwwwwuwvxwwgvxwwwwxxwgwfwvwwgwfWwwggwxwwxwwwvwgwwxwwwxwwvwxwwxwxwfVfwxxwgvvwxxxwfwxxwwgxwwvgxvwwvwwgwwxxwwxxwxvvgwwfvwwwgvxwvxwxwwwvwxwwwwvxxxxwwvwxwxxwxxwwwwwwwwwwwwwvwwwwxwvwwwuwwwwxvwwgvwwwvwvwwwgwxwvwvwvgfvvwwgvgwwwwffuwwwvvwwgwwwwwwwwwxwwxxvvwwwwwvwwfwwwwwxwhwwwxwwhwxwxxwwxwwwxxwgffVvxgvxxwgvxwxxxwxxwxwxxxxxuwwuwwwgvvwhxxwwvwghgwxfwxxxxwxwwwgwwxxuvgwwgxwvvxhwwwxwwxvwvxwwxwwwwhwwwggfvuwwwWwwwwwwxwfxgwwwxwwhxwwxxwwgwxwxwwwwgwwwwxxwgvgxxxxwxxxxxwwwxxuggwgxWwwuwfgvhhuWvffwxxxxxwwxhvwxxgwhwwvweUvvwggfwvwgwxxxfwxwxwxxgvxxxxxwwwwwwwwwfgwgwxwwwwwxwwwxwwwxxwfgwwvwvwxwwwwwxxxxwhxwwwxxwgwvwwwwvwvvwxvwwxwwwvwwwxwwwwvwxxxxwxxxxxwxxxvgeWxwwwvwghwwwgxxxwwwwwwxvvwxwxxxwxxxgwwwxvwwgwxwxxwxxxwvhwwwwwxxwwwwxxwxwwwwwwxxwwxxwwwwwwxwxwgwgvwvvwwgvvwvwwvwwwwwvwxxvwxwwwxwwvuwvwvwwwvvwwwwwwhhxxxwvxxwhwwxxxwxxwvgVvwvxUufwwwgwwwwwwxwgwxwxwwwffwxxxxxwxxwxxxxwxgxUvufhwvwggxggvwxwXwxwhhwwxxxxxxxxxwxwwhugwfvwvvxuwvwfvwwwwggxgxfwxxggwxwxxwxxxvvvwxwwhwwwvwwxwwxxhwxxxxwwwwxwwwwwwxxxxhwffwxwvxghxwwggXxwvgwwwwxxxxxxxxxwxhwxxwxgwgxwwxxwhxxxxxxxxxvxxxxwxxuwwwxwwxwxwxhgwwgwxwhgwxxxwwwvggvwgvwwxwwxgwWwwxwwvwwwwwvwxxwwwwxwfwxxxgvwxwvwxxwgfvgwxvvxxxwwwxwgxwwwwvwvxvxwxwwwxwwwvwwwwwxxwwfwwwwVuwwhwwwwxwxxgwwwxxwxxvffwwgwwfwwwwwwwvvwxxfxwwxgvwwxxvwwxgvxgwwgwwggxwwwwwxvwgwxxwwxwwwwwwwfxwxwwvwwwvwxwxwgxwwwxwfxxxwwxwvhwwwxxvwvfwwwwvwwwgvxwwvhxxxvfvwwvwvxwwwwvwWvuwxxxxxwwffwgwxxwwwvwvgwwxvvvvwxvxwgwwxxxxvfgfwwvwwwxwwxxhwwwwwxgxwxxwwxvvwwwwwwweuvwxxwwwxxxwwxxwwxwxxxwvvwgwfvwwwwvwwvxwxwgwwwwwwxxhvxwwwxwxwxffvwwwhwxgfvgxwxwxwwwwwwxwxwwxwwxhhxxwfxxwwwxgwwwxxxwwwxwwxwwwxwwwuvvwuvwfwvvxfvvffwwwvwwwvuxwvwuxwgwvvwwxvwvvwfTwvguwfwgwfgwxwvwwuffwwvtwvvfvwVvehxEdgvgxvwwwvtwwwgVwwwvvwwvgfwfwVvwwwwexgwuvgwxxfvwgwwxwwwxwugWwvvwfvfwgfvvwxwwexehwwwevuwxwvgwwxwwxwwwxgwwwxvUfuugwwwwwUVxwwwgvvfvwvwwwVuxgwwxxfvwgwwwwwwwffvwwwwWwwwwwgwwvgvxwwgwwtxxwvevvwwewwgwwxwxgevxwfxwwwxwvgfwvvxgwvwxwgvvewwwwvwwxwwwvwvxxxwxwwxwwwwxwvgwwwwgwgvwxwxvvfvuxxwvxxwgwwwvwwwwwxwgxwwxwwwxxvevfvWevgvvgvvwwwVuvwwfwvxwwgwuwwwwwxxvwxwwvvwwevwwVwwweeuffxwwvwxfxgwtwvwwwvwwxwvwxwvwwvwxfxwvgwvfvvvgwvwvvwgdtvwxwehwwWxxvwwuxwwvxwvwhhvvxwwwgwwgWVwvxwVugwxvxhhvvgwwehhVwxvhwwvgfwghgfgwgwgxwwhxvwufwvuwwfvwwxwwVuwgvvvgvwxvwwwwwxwwwwwxvvwvxwggvwwvvwxWwfwwvgwwwwfwwwwwwgfugwgvwwwfgwxwxwvwxvwwugwwwwwwwwwwxeuvgwwvwffxwvwwwvwwwvxxwwwvwwggfwwwwgwguxvwwwgwwwwwxwxwwvfwVxfvwwwxwwuvxwgvvxwwwxwwugfvgfwgfvwwwwvvwwwwgwgfgvwvwwwvwwxwfwfwvwwwwwxvvvfxwfvwvgfvfwuwwVevfuwwWwuvwwwVwvwvwwwwvwwvvfgwvwwwwgvwwwffvvgwufwwwfwuwwVvwwwxgvwwwghwwvwxgwvxxWwwwwwhwgwwgwgfffwvwgwuxwwwWfvvwwwWgvggggwhxxwxwwwxwwxxXfhwvwfVwVggvvwfwfwvwwVugVwfwVguwwggwvgfvvgvxwwwwfwvwuwgwwwvxgwwwwwwwwwvvVvwwgwfegvhwwvwwWvwgVvgvvxgwvwwvwgwwvwghgwwwvwwvwufwvwwwgvwwwwfwwwwwwgwwwxwgvwgwxxwxxwwwwxxxwgvxxwwwwgggggwxwxwWxhwwgvVxwwxwxxwwgwwxxWfhxvwwxvgguxwggvgwvwvwfvgvwwvgwfWwxwgvgwvvwvwxxxuvwxwhwgwgwwffvfvvwvvwvvwwgfvvgwwfvfwwwguwwwwwwwxwgwxWwwhxwwwhwwgfwfgwvfwgWfwwWfvwgwwhwwxfhgwvwwxwwhwxxvwwwwwgghwxgwgwvxfwwwwwwxwvvwwwxhxwwwggwwxvwhxxxwvgwxwxwwhwwxwwwuwgvgwvxffwvwwfvwfwwwWugvvwgwuwfwxgwgwwwxgwwxwwwxfxwgvwfwfwwwwwfwwwwfgvffgWvvvwgxwvxwxxggvxxwxwwwwvwwwwwwxwwvwwfgwgvgwgugfgwvWgwvwhwXxfwwwwwvwwwgwgwxxvwwxwwwXfwwvxwghwhwgvwwwwgwviwwwwwwwhhggwwwwvxxxwwwwwxwwgwwvwghvwwvwwwgwwwwwvwwgwhwwhwwxwhwwwwwwvfxwfwVggvvvwwxvwwwfvwvvxwwfhwwwvwwwxwwwuvwwwwwhgxwwwvvggxwvxgwwgwxwgwwwxwvwwhwwxhwxxxxxugvwwvwfvwwgvwvwfwxwfxwwwwwxwwwvwxwxxvwxwwwwfwgffxWWegwvwwWwxwwvwfwwwwgGevwvwwgvwgwwwvgxxgwvfgwxxwvvgfwwwwgudvggvfxvwxxWwgggxgvVvuwgwwwxwxgwgVvuxwgwwgxxwGegwvxwgxwvuwxxvgwwwvxxxxwwwwxwwxwwwgwwxxgxxwxfvuvggvvxwgwvgWufxgvxxvxwxwwxgwvwwwgxxxwwwwvwwgfwvhvwwwgfxwwwfwvwxxwwwxwgvxxvwwwwxxxxxxxVgvvgvvvvvwwwwuvxwvhwgwwwwwgwwwxxwvwgwwwwwwwxwwxwwwxxwwxxwgwgwwxwvwwvhhwwwxxxwxwxxwvwwvwvwwvxxwwwwwwgvgxwwwwxxvwwxvwxxwxwxwxwwxxxhVfvfwfvwvwgwvfvvgwxwgvwxgwwwgwxxwwwwwwwwwwwwwxgwxwwVutvwvgghwwxgewfvwwhwvwxwwxwwhwwxvwxxhwvwxwwgxfuwwvvwwxgwxxwvfuwwxwvwwwwvxwgwvwwwxxwvxxwgwwwwwwxwwwwvwwxgwxwgxxvxxwxwxxxwwxxwwxxxwhxxxwuwvwuwvwgvwvfxwfuwwfvvwwwwxgwwvwVvwxwwwvvwwVufvwgwxwvwgwgfvvghwfwvwwwwvguwgvwfvvwwwwwwwxvvwwxwfwfwwggffwgwfwvwwvxwxgwfwwwvwxxwxwwwxxvffwwwwwxVvuxwxwgvwwwuwgxwhwfvwxwghwxxvwwffwgfvvggVwwvwgfgwwwwwwwweffgwwwwwwvvhvwwxwwxxvwwvwxwgwvvwxwwwwwwwxvggfvxxvgvvxwvwwwwwggwgvwxxwxxvgwwwwfwwwgvxxwfwwwxwgwwwwxxhfwxxhwxxxxwwwxxwwwwvgwvxwvhwxwxgvgguhhvwwwgxwxhxxwwxvwwvwwwxvvgwxgfwvwwefwwvwxwwwwwwwwwgxvwvwwwfuwxwvvvwxvwxwwvwwwwxwwwxwwxwwxxwfwvvwfwwxwvxxvwgwvwxvwwwxwxwwxxwwwxxwxhwwwxfufwwxxwwvgxhvwgwwwhvxgwwxxxxwwwwxwxxwxxyvwgeggfwwxxxwvgwvgvwwwwwwxwwxvwwxxwxhwvvwwwvwwxwwwwwwvwxggvwvgxwwxhgvxwxxwxxxwvxwvxwwwwxhwwxvwwxXvxxhwwxxwxxwgwvhwxxwxxxwhwxWvwxxwwvwwwxwwxwxxhwxxxxwxwwxuwwwwwxxgwfwwwvwwgxwwwxxvgvxwgwxvvwwggwwgvwwwwwTEvwwwxgwvxwgwvwgwvwvwwwxwwwxxwwwwwxwxwwwffxfwvwxxwwxvwxwxwgwgwxxwwwgffxxwwwwxwwfwxwxwwxwwwhwgxwxwxgxxwwgwvwwvgxwxwwwwvgvwwwwwxxwwwwwxxwwwxgwxxwxxxwvgvwwxwwwwxwxwwghxwxgwwxwvhwxgwxwwxxxwwwgxhxxxxwwwwwwwwwwwwxvwvwwxwwwxwvfwxxwwxwxxwwxxwxwwwwwwvxwwwwxwwwgwwhxxxwwwxvxwxwwuuwgwwwwxvvvxwwxwwwxwwwwxxwxwwxvvgwvwvxwwfvgwxwwvgvxfwwwwxxwwwxxwwwxwwhwgffwwwwwgvgxwevegwgxwgwwxxxvvwwxwxxxxxwwwwxwwwxwxwefufwxwwwwwxwxvghxgxwwwxxwwwxvhxxwxwxwxwvxgwxuuxwgvggwxxwfhwwgwwxwxwxwwwwwwwwwxxwvvhwxxwhwwvwwgvxwwfxvwvgxxwwwxxwxwxwxxxwgvwwwwwwxwgggwxxwgwwxwwhxwwwvvhhxwwwxwwxwxwwxwwxwxwxxxwwxxxwwxwvvvwvwwvgwwwwwwwwwwwwvxxwwwwxwgxfVwvgwuwxwgxgwwvwvvwwwwwxwxgvvguwxhwwwwgwwwewwvwwwwxwwwwwxvgWgvwfvwxxwwwxxxwxwwwwwwxxwwwxxgxwfwewwwfwxwvwgwwxwwvxvffwvwvgwwwwWwxwxxxxwgfwwwvgfgvwvwwuwxgxgwxwgvvwvwgvgwwvvwwwwxwwwxwwxwwvggfvgwwwwwwwwwxxwxwwwevvwxvwwxwwwxwxxxxwwwvvgvxwwwwwwwwwwwxxwxxxwwwwwxxxwxwgxfwvwvvgwwwwfwwwwwwvwwwvwwxwwwxwwvfwuvgwxwwwvwxxxxxfwvwwwwwwvxxwxwuewvfgfwwwhwwgwwxwxwxxwxxwxxgvgwfWwgxwxwwgxwxwxwwfVgvwvwwwwwhwvwwwxxwvgxwwwxxxxwxfwgwvwwgwwvwwwxwwwxxevwwwwwwwwwwgwxxwxxxfwvwvwgvwwwxwwwvwwwgwwxwwwwwvwwxwwwwxwxwxwUvvvvwvwwxwxwWwgxwxxvgwhgwxxxwwwwhwxvxwwwwxwvwwwvvwxwwwwwwwwwxxxufUfvvwwwvwwgwwwwvgwwwfwwvxwvwxwVwwwfwuxwxwwwwvvvvwwgegvdvggwwxfxwwwvxxwvwgefvfwwwwwwgvwxgxwvxgwxVgvuxwwfgwgvwwwgfwuwgwwxwxwvvdwwgwwwwwxwwxhxxxwgegdggvuvwxvwwwwxwgwwwhxvwwwwwwwgwxxxxhxvhhwwUfvgvwwvgewewuwgwwwwxwewgwwgvvvvFwvwvxwwgvwwgwvgwwgwwxvwwgwgwwvvvwvfgwwvvwhwxxfwgwvwwvfwwwwfwwxgwxxwxwxxVwgwffVvwwwwwguuxgwwxwxxgxvewwwxvwxfxwvwwwxwwwwvwwffwwwhxhgfwwwxwwhgvxxxwwvxwhxwxxvxwxgvwwwvwvwfffwggwwvvfwxwwwvwwfvgwwwwwxwxwxxwxxwwgewwufwguvvvxwufwwxwwwxwwxwwvwvuwwwwwwxWwxwwxwxxwwxhgxxvwfVvfWfvgwwwwgwvwxgxwwwxwgxwwfvvvwxwgxwxwwwwhgwxwwwwxxvwwxweXwwwgwwwgVxgxxwfwwwxwxxxwxwwxxxtwwwvvwewfvdwwvwuvvfwwwxvwvgwwwwwwwvghxwxwwwwwxwwwxwwwwwwvwvfvgfwwwwwwvwwwwwwgwwvwxvxghgvxwwgxwgwwxxxwwwfvvwdwgwwwxwxwwvwvwwwwxxwxvwwvwwggwgvhwwxxxwwgwxvwwgwugwwwxvxwxwVxxgvwxxwxwwwxvwwwxxxxwuwwvwfgwfwvvwvwwwfwwfwwwwwwwwwxwwwvwgwgwwwgvvxvvfxfvffgwgvvvwwwvgxvwwvxwwxwwwgfwvxvvgwwggvhhwwwwwwwxvfhvwewvgwWwwwwwxwwwxxwwvwvwwgwwgwwxwxxfwxggvgewuxwwvwvwwxvvfxxxWxxwxwgxwvvfwwxxxxwxvxxxwwvxwhvvfgfwvvwgfgfwwhfguvxvgvwggwwvwvuwwvwwfuvgxhhwwwwxwvwguxwwgvvwwgfwefwgwwwwvwwvxwwgwwwxwwgwxguxwvgwwhxxhhxgwwwwgggxfwffwxvwwwffwxwwwhwxwxwwxwwxwwwxgxgxwwxxwwwxwwxwwwwwxwwxwwvvxgwxxwhxxwwxwwwwwxxwxwwgwwxxhwxxxwwwgwVvwwvvwwwvwxwwwwwwxwwvvvxwgwxxwwwxwwwguwvvvwgvwwvvvwxwwxgwwxxwwwgxvwwwxwxxwxxxxxwvwgvwfwhvwwvwwwxxgwxgwggxhggwwwgxwwwxfxxgwwgwxwwxxwwggwvwwWwvhwwvwgwhhhwgxxxxwxwhxxxwxvwgxhxxxwxxwxxwgfggwxewvwwvwfvxwwwwwwxwfuwhwwwwwwxxwwxxwxxxwxxwxxwvvwgwvwhvwwwfwwhwwwghwvwwwvwwvvwwwxhxxxwvgwwxxxwxxwvwvgvvgwwwwxwwwwwwwXxfwwwwwwwwxwxwwxhwvxxxwwxxwgwwwvwwwwwwwwwvxxghwxwxxxwxhwwwvxwwgvxwwwwwwwxwwwwwwwwwgwxwguwvvvvxwwwgwxvwvwwvfwwwwhxwgwwwwvfvwwugxxgwwfwvwwwvvgvvvegVvwwwwwvwwwwvwWwxxwwwgggfvxgfwvgvwwfwvvwxwgvxvfwxwwwxgxxvxxwxwwvuvvvvgvuwxwxxwfvvxxwfwvxggxfxxxxwxwwwwwxvwwwfvfvwwwvvwwWgwwfgvtuWwwwwhwwwvwhvwwxwwvwugwggwvgwwgwvwwgwfwvwfwfwwggwxfwfgwwxvwvvwwfewxvvxxwvwvvwgwfxwWxwwgwwvfwwvwwvvvgxwwfwwwxxwwuhwwwvxxxxwvwfxxxwxwxwxxvwugffugwxwgxgwvwwwvhwxwwwwwwwxvwxwwxhwgwwxxgwwxvwwwwwvwwwwvuwgfwxwgfwvfwwxxwvvwxxxwvwgufgwxwwwwxwwwxxgggwwwgwxwxwxxvwxggwvvxvwxxwwuwwwhxwwxxgvxgxwvwwwwwxxfxwxgxwxxVvgwwwwxxwxxxhwwxwxxxwxggxwwhxwwgwgxwxwgwwgwffgwgvxwwvtvWhwwvgwwxxwwvgwwxgwwxwwxwxxwwwwxvvwggfwwwhwwewvxwguwxgxwvwwwvwxxxxxwwwwwwxxxhwwgvwwwgwwxfwwxwggwxxfgwwwxwggxfwwxxwvxxvwxwwwwwwwwggwwwxxxwxwwgwwgwhxxvvvgwwvgwwwwwwgvwwwwvwvvwvxwwvwvgwwwvwvwvwwggfVvwwgwfvgwwgwwwvwwwwwwvwfvwfwvgvgwvgfwgwvwwwvfwvvgwwwwfgwwwwwgwwwxgwwwgwxwwwwwwwvvwwwxwwwxxwxxxxxwxwwwgwwwwwwwgwwwwfwwwwxwwgwwwwwwwvwwgwwxxwwwwgxwxxwwVewwVewvvvwgGVwvvfwvuugwwvVvWfevvwvwvwfwwffvvgwvwfvvwexWwvwgvwevvvvvwvfwFvufwwwwwfgfWXgEvvvwvvwVvgwwwgWVvvwWwgWUggFwwvvwgwgvuwfwxgwwVgvgwgvfvfvfxgffvvwvWwwxwxgwwgvwgXvwgwgwwvvvwwevewfvvwhwgfwvghvwggghvwwVwvxwXvxwwhwwwwggXwgvhgxwwwwvvgwwwvvwfwwwwgwwvwvwvwwgwwwwwwwvwgwwhwxwwwgvvwwwvwvwwwwwvwwgwwwwgwxvwwgwWwwgwwwwxwxgwxwgwxgfwwgxwwwvgwwwwwxwhwggwggwwwxwwwwwwwwggwgxwggxxxhwxxwwwwxxwwwwxhxwwxwxwvwwwxwwwxxxxwwhxwwwghxwwxwxxgwggvgvffwevfwvvwvweevwfgegwwfwghgvvwxvwwwuwvwxwwfwvwfwhwgwwwgwwvvfwvfvVuwvgwghgvwugwGgTxwwWwwwuwgwggWgexxwwgwvwwwwwwvwwwfgwvvwwxfwuwvGwuwgwvgvvvvwwgwwXgfWwgfwwwgfwvhvguWvuxwwgwgggwxgxgwwVhvwwwwwfxxwggwwwhhfxwgwufvwxtggwvvhvvvwvwwfvxwwwvfwwwwwgvwfwfwwxwvfWvwwwwvwxwwvggevefufevvvvvVevgvegwwwvwwwwwfVvUvdgwwuwwgvgvwwwwgxgwwgwvuvvvgVwvfwvwfgfwwwwxfuvgxwwwVvVwvxwwwwvxxVfvgfggfhxwgxfgggwvwwwvxwxwgvvfwwwWxwwwwwwvvgvwgfwxvfvwwwwxvgwxhgwxwvwxvvvhwgwvfwxfvuxvffVwwvfgvvvwxwgvfWwfvwgvxwwWvfgxwwwugvwwwwwvggwfwwwwvwfwvgggfgfxxwvvggfxvfvvvvgwwvguxvwwwvwgwgexwfgwwwgwwvvwWfgwwxwxwwwfvvgwgggxwxxxwvVvvvwwwwwevgggxwwwwwwwgfwgwwvgvvggxgwvgwwfxwgVgwwwwuggfwgvwwwwwvwxggwwwwwxfvvwwgwvvwwvvxwGUwwvgguwvxgwvwvvwwuwvfvfwwwwgwgwwxwffwfufwvvwwvwggvvwwwvfwvvxxveffvwwwwwxwgwwwwwwwgwhxufwxwgfwfvgwwvhwwuggevfvhwgweWwhhwduvguwhwxwvxhhwvwvGWGVwxwwggwgwuwuwwgwwgvxgwwgwWwWgVxhwgwwwfwvVwwwwxwxgxwwwwwwwwxvgwhwwuWgwfwwxfvwwvwwVevgggwgvgxvvvwwgvvxwXWuwwgwwxwggwwwxwwwvxggfvggwgwwgwfvvggfwgwwwfvvwvvgvfvvwwwgwwwwvvgwwwwgwwwwUvvwwwvwvxwwwgffwWwgWgwwwxwuwwvXwwwwxwvwwwggwwfwgwhvvxugwwxwvvwwhxvvgwxxxhwvwwxwvWggegwvwvwgwwxwwxswvwffwffwfxvwvfwwgvwwwvvvwfvvvwfwvwwefvvgwwwwwwvhwxwffvfwfwuwvwTvSwvWewwgvguwuwwwwwguwvvfwgtWwwfwwwgwwwvgxwwxgweuwfgvvhfgfwvwgwwwwgwxwwwwwEvvwvwxvwfwxwfxxwxwvwfvufvfwvwwwgwwgwvfxwxwfWwfwwgvgxwhxxxwxxvxvhfvxxvvvwfffvgwfwvwffwwwgwedxwxvvwfvggwwwfwuwwwgvfwfgwwwxwwxwwwvwfvwfwvwxxguvwwgwffwwvfwwwgfwgwvWvfuwwvgxvxgwwwxwwvxwwwwwwgvvgggvvvwxguwwwwfwwxwwgwxvVvwxvwwxxwxxxwwfhhwxxwwwwwfvfvwwwxxvwwgwxwwwwwwwwwwgwgxgwwxwgwwxwwxgxwxwwevvfvuwwxwvwguwvvwvwwwvhvxwVeweuwfuwvwvvvwwwxxxwwwwvfwdfUvvvvfvfvvvwhxwwgvxxgwfvvxwwwgwwwwwwwgwvxXwexxwwxwvvfSevwfvxvwgxvwfxxgvgvwvwwxgwvwvuwwWgwgwwgVVwvgwwwwgvfwwxfvdwVffvwwwwwwxxxvwwgfwxwgxvxwgwxwwhffxxxwwvhxvgvxwxffvfvfwwwggfuvfffvwvwfwwwevxwwwwvxwwwwwxwwvwwwfwwwxgwwgwgwuvwxvxvvgwvwvwwwwwgwwwvwwwvwwwgwgxvggwwwwwwvwwxdvexvwvwwwggxgwwfgwwgxwwvwvvwgwhwwwffwxxwwwwxwxwvxwugfgwwvwwvwwxxuvwgvwwwwwxwxwxwxxvxxugfwvvwvvwwwgwgxwxvwwgvwvvvwwwwgvxvvVvwfvvwxwvwgwvwwgfufwwvwwxwwwvvwwfuwfUvwfvvvwwwxwWvugwvvxwwwggVvvwvvvxfwwvfVfgwvweuwgvgwwfwxwwwvxgwwwvwwwwxxvfVvvvvwvwxwVvugwwwwvxxwwgvvvwwgwgxhvwwgwgxxwwwwffvgwvwwgvvvuwvggvwwwwuvwwwgwgevfwvwVvevwvfvevwwvvhvxwwwwwwwvwfwwwgvwfwwwwwvvgxwfvvfwwwvxwvvxhfwwgfwwwwxxgxvvffvfvvfvwxvxfvvwxwvwfxwfgxwgwwgwxwwhwwguwwxwwfvhwxvwxwxwwxwwgvwwwwwxwxvvxgwguxxxvxxvwwgewxxVvwwwvwxwwwvgvwwvgwwwwwwgwvvvvwfwvweghvxwwxwvffvvvgvwvwwfvvvwgwvvwwwxwvvuvxwwwwggwgwwvxgwxwwwwxxwffvwUvwfwxxeVfvxvwwgggwxggvwwgwwxwwwxwwwWwwvwxwwgwwuvwwwwgxwwxwgwvvxggwwwwvwxXwwvwxwwgwwwwxxwufwvvwgvwwwxwwfvvgwwwwfgvwwfvvwxxwwwwgwewgvwwwwgwvwxwwfwvwgwxwgwwwwvwxwwwwwwwwwwvwxwxxhvgwxvvwgwxvxxxgUvgvvwvwggwwxwevgwwwwwvgggxwwwhwxwhxvgwwwvwwxwwwwvxwvwwwwwgfxxxxwvfxwwwvxxwwxwwxxwwxxvxwwvwwvxwgwwhvwwgggwwwwgwuxwxwwwwwgxvWxwhwfwwvefwgggUwwwwwwwwwvxwwgwgggvfwxewwwwexwxwxhxxwxxwwwwwgvwwwwwwwwwwfgwwwwwxxvwwxwxwwwwwxwhwwwwxxwwwxxxwwggxwwwwwwwwgxwxwwgWwwwwxWwwwwwwwvwwwxwwxwxxxxwwwgwxvxwwgwwvwxgVggwwwwgwfgfwfvvwwwvwwwgxxwwxwvwwxwfgwwwgxfxwvwwwwwwwwwgvvwwwxwxwwwwXxgWwwvxWxwwwwvgwuvwwgWxxXgxxwgxxwuxwwvwwwvwwfwvgwxwuwxwwwwxxxwxwwgwwgwxgwwWxwwxxwxvgxwgwxwwwwhxgWxhwwwxxwxxuwwxxwxwwwwxwxwxwwvwwxwwxwwfwwwhwvxvxuxwwwwxwvwwwvwwwwxwwhhxxwxwwfgwfggvwvwfgwxwwWxxwwxgwwwwwxwwwVxxvwwwwhxwwwxwwxwwwhvwwwwhWxwhwgwggxxWwxwgwwwwwwwfwxwxxwwwwxwxxwxxwwwuwwwvgwwwvxxwxxgwxxxxwwwxxwwhxwxxxxxxwxvxwwwxwwwhvwWwvXggvwfwxgXgfwwwwxvxxwxgxxvwwwgwwxxwgwwvxwxwvxfggvXwwgxufwwwhwxWhxwwgxxwhwxwwwxwgwxxxxWwwxwwxxwwwwwxvxwxwhxwgxwWwwgWgwxxhwwxwgwxxwxghvxxwxxxwxxvwxhvgxwwvxwxxwwxxwwxwwwwwwwwxwxxgwfxwxwxgwwxwvxwxvwxvfwgwwwwwwvggeTvwxgxvhxuxxwxwwwwwwxwwxwgwwhwwwwvwwwwwwvxwwwwwwxwwgvgxwxxwxxwxxxwwwwwwwxwhwwxwxwwwgxxwxxxwggwewxwwwwwxgvwwxxwxxwwwwwwwwxxxhvfwwWwwwwwxwxxxwwwwwwxwxwwxxwwwwxwxxwxwwgwwwwwwwxxwwxhwwwxxxwwhwxxxxxwwwwwxxwwwfxxwxxwwxxxxwxxxwwwwwxwwwfxwwwxxwwgwwwwwfxwxwvwfvwwwwvvwxxwwxwxwwfwwwxwwwwwxwwewfvVvwwwwxxvwvwwxwxwvvgwwvwxwhwxxxwfvfuwxwWwwxwxxwxxxwxwhxxxwyxxvwwwwwgwwwwxwxxwwwhwfxvxwxxwxwWwxxxxxwwwwwwwwxxxxwwwwxxgxxxwwwxxwwgxxwwvwvwwxvwwwxwwwwwwxxxwxwhgwxwxwwwwwwwxxxwwxxwwwxtwwwgvvwwwwwfwwfwvwwwvwwvwwvuwvwwvwxwwwwwwxwvwwgdwwggvvuwugvvgwugUvdwwwvgegwwwwhwfwvwwvwxwwxwwfuwvwwvwwfuVwvvvgVwguwwfwguvfwwwxwwhwvvwxwwxwwxvwfgvewwwwwxvwwvwWwxgwwwwwwwwwxvxwvxxwwwwvvwwfvgwfggvgwgvwwwvwwvwwwfwvwvwvxvwwfuwwxvhvxwwwvvwwgvfwgvwgwvuvvwwwxvwxwgwwvggwwwvxwwvwvwwwwgwxwwwxwwgufwfwgwvvvwwwwvxwvgwwxwwwvvwwwxwwwxwxxwxvwvwwxwwvwwvxwvxwwxggxwxwwwwwvxwwwxwxxxvvvwWTgwwvfvvgvwvwwfwwwwwgwvvfwvwwwgvwxwwxwwvwgvwvfvvuveuwwvvwxhgwwwgwvwwvwwwwgwuwwxwwwwgwguwvvgudugvhwHwfhwxwghwgWFwwwvgwvxwxwgvhwwfxxwwwwguvwwwWgwvfwgwvwgxhWewxwhwwwwwxgwxxgWxgwwwwwwwwwwwvfvfvvwfvvwwwwvvvgwwwgvgfwvwvvwxwxwvwwuwwwugwwwvwwggwwvwvwvwwwvvwwvvgvwgvwgwuwwwwwvwwwxvgxwwvwwvxwvwxwwevwwwWvgvwwwwwwwxgVgwvwwxwwwwvwwwwhwvwvgxwwvxwvwwxvwwxwxgwfwgxwwwhwvwvxwxwxgwwvvwwwvvwwvwgwwwwvwwwwgwwwwwxwwxxwwwwwwwwwgvxxwwwwwgwfwwwgwwggwgxvxwwwwwxwxwgvwvfxxvwxwwwwwvwgvvwwwwwwvxwgxxwxwwwwwwwwwwwwxwwwvvwgwwwwvwvwxfwwwxxwwwwxwwwvxxvwwxwwxwwwwgVVvwffwvwgVVvwvxwvfwxgwgwgwvwwwxxwwfxwwwxwhxwwwwwwfvuwwwvwxwfWvuwhwwgwfxggxwwwgwvwgxxwwwxfwwxgfwvgxwwwVVwvwvxwwvwwxvfxwxwgwvxxxxwxvxxwwxwgvwwwwfwgvwwwxwwvwgvwwwhwxwwxwwxxwxxxwxwvxvwgwwwwwwvwgwwxwwxwwwwwwwwwvxxvwxxxxxwwfwgwwwgwwxwwwwwwwwvgwwwvwwwwwxxwwxwwwvgwwwwwwwwwwwxwwxwwwwxxwxwvwwwvxwwxxwxxxwwghxwxwxwxwwwwwwwwwwwwwwwxwwwwwxwwwvvxwhwxwwwwxxfwgwwwvwwwwwwwwgwgwwwgwxwvwwvwwvxxxwvxwwxxwwfwxVuwwwwwwwwwwwvgwhwwxxvvxwwwwwxwvvxwwfwwxwwwxwvgwfwvwwwwgwwwwwvwwwvxxwwwwwwvwvvgxwwxwvfwwwgwwxwwwwwwwwwvwwwwwwwgxwwwxwwwhwwwwxwxvwwwxwgwvwxvwfwwvgwgfxvwwwvwvwwvvxwxvwwvvxgwfwwwwgwvwvwvwvwwfdvgvgwwvevuvwwwwwwuwwfvtvwvwugwuwwxwxwvxgggefwxguwwwwgvvxvwvwxxwwxwwgVwwvwvwwxuwwwxwxxxxxwvffvfwvuwvwxhwwwwfwxwgggwuwvxuwhxxwwvwwxhwwxxwffffwfdgwvwwwwvvwWeWwvgwvvvfwvwwwffdvwwgxwwvuwwwwfwwvxxwwwvvvfwuwwvuxxguwwfxwewwvhwfvvfgwwfwwgwxfvwwvwxhgwwxxwwwvfwfvvwvwwgvvwvwwgwwwwgwwggvwvxwxxwxxwfwwwwxwwwwxxxwvwwwgvgwxffwwwxgxwwxxwwwwwwgfxxgwwxwwxwwwxwgwuwwfwwwwxvwwwwwwvwwwwwwwwVgwvwwwwwwwwhxwwxxwwwfvvvvvwvvwvxwgxxxhgwvwwwwfwxwwwwwwwwwwwwuwwwwwwwwwffwwuxwhwhwwfvVgwwgwxwwxwwwwVxxwfwvwxxhwwvwvwgxwxwwwgwwhxxxwgvgwwwwggxxxgwwuwwwffgvvwxwwwvwgwwVwgwvxwwxwwvwuffgwxvxgwwwwXgvwxwxwxwwwwvggwvgxwwvwwwxhexWwgwwwwwwvwwhwxxwwwwwgwwxxwfwfvwwgxwxvwwwghwuwgwgwwugwwwxwvwwwwwgWwwwxwwwwwwuwwfxxwwwxwvwwwwwvxxwxxwxwwwwwxwwwwwwvvvvxwWwwwwwxvxwgvvwwwwvwxxwvgwvxgxuvvgugxvgwwghwwwwvxuwvwxxwevwgvwwwwwwwwxwWwwwwxxffwwwwwxxvwvwxwwwwwfvuvvxwwwwxwwvgwvgxfvuwxVxxwvwvvxwxxwvwxwwwwxwxwwwwwwwwgvvvgwgvxwwwwwxxwwevxgvwxwgwwwwxwwwxxwgvwxwwwwxwwwwwwwvwwwwwgwvgwwgwgwwvxwwgvexgwwwvxwvwwwwxxxwvwwwgwwvwwwvwxwwgwwwxxvwxwwvxwxxxxwwxxwwxwxxwwvvwwwxxwwwwxwwwwwvwwwwwwWvwwwwxwwwxvvxwxwwwwwwwxxwvwwwxwxxwvvvxxvwuxwwxwxwwwwwxwxxwxwvwwwxhwwwwxvwgwvwwwwwwghvwwxwhgwwhhfwwxwxgvgxwgxwxwwwgvWwwfwxwxwwwwvxxwxwxwgvwwxxxxxxwvwwwvvgxxwvwxwwwxwwfvvwwwxgvwwwxxxwwxwvvxwwxwxwwwxxxxwwwwxxwwwwwwxwwwwwwwwxxwwwwghguxxwxwxwxwwwxhwxhggwhwwwwxgxxwgwxxhxwgxxvxwvwxwxvwxxxxxvwxwwxvwwgwwggwwwxggwwxuwuxwwwwwwvwgxvxwxwxwgwfgvxwwuwwwgwxvwwwwwfwfwfwvwwvxwwhvvwvxgfxxxgwgxwwwwhwwwxwgwwwwxwxxxwxvwgwwfwvwwwxxxwWhxwwwgxvwxwwwwwwwgwwwwgxwgvwwwwvghgxxwwwxwxwwxxgxgvwvWwwwwwwwfgwvwwwwvxwwvwgwwxwvxuwwwgwvwuwgwxwgxwwwxwgwwxwwwvgwwwwxwgxwgwWhvwfgfvxxxxwgfwwghxvgxgwxxvvgwxxvxgwxxxwwwvxwwvwxwgwwwwvwwwwwvwwvxwxwwwwgwgwwwxxxwwhxxggxwxwwwwxXwwwgvxwxxwfgxwvwgxwvwwwxwwxgwwwwxwwwxwgxwgvwwwwgvhwxgvwwwgxvxwwwwwfwwxwwwwgxxgxwwwuxwvxhwwwwxwhgvvwwwwwxwewgwxvwwgxwwwxwwwgwxwwwwwwxxhxxvxfxxfwwggggxhhfwvwvxwwwgxwwwxxwwwwxwxgwxxwxgwxwwxxwwwwvwwwxgvgvxxgvwxwwxgwwwwhgxvxwvwwwhxvwuwwvxwwwxvehwwxxvgwwxhvwwwwwwggxxwhwwvxwwgwvwvwgxuwxxwwgwwvfhwgwvwwxwvfxwwxxwxxfhwgwwwwwwwwgxgwxxxwwxWWgwxwvhwwxxxxwwwwxxwwwwfxwwwxfhvxgvvwgwxwxxvvxwwwxxwgwwxxvgwwwwgvwwwxwwvwwvvwwxxwwwvxxvwwwgvwwwwweUxwwwwwwwwgxxxxwwxwwwwwwhxwxgfvwwvvwwwwwvvwwxxxxwwvwxwvwwwwwxxwwwxfwwxwxwwvwwxwwwwhhgwwwwwxxwwxvwwwwxxwgwxxwxwwxvgwwgwwwxwwwwwwvwgwvgvwvwwwwxgvxxxxgwwwxwvxfxwwwwwxwxvvvwxxxxxwwxvxwwxxxwwvwxwvwwwvwvxwxxwxwwxvwxvwxxxxxwgvxggfwvxwwwwvxwwwwwfwxxwwwwwwwwvxwgwwwxxxwwwxwxfwfwwwwfwwfxxwwxwgxeewwgwwxwvwwfwxxxwVuufwwxxxggxxvwwgxxwwwxwwwxxwxwvgfwwxhxxvvwwwhxxfwxwwwxxvxwwxgxxwwwgxwxwwxwwwwxxxwwwwwwxxxwxwxwxwfwwfxvxxwwhwvwxxwxwxwwwxxxwxxwvxwwxwwwwxwwwwwwwwgwwwxwxwwxwxwwvwwwwggxwxwxwwwwwwvwgvwwgvwwwvxwwwwvwgvwwvgfgwwwgwwvwwwgwwgwwwvxwwxxxvwwwwxwwxxgxwvwwwxwwwwgwxwxwwxvwxxxwwxwxggxwwwxwwgvwwvxxwwvxfxwwwwwggwwwwvxwxwwwxvwwwxwwxwwxxwwwwwxwwgxwxgwvhfwwwwgwwwgwgwwvvgghwvwxwxwxwvxwxwwwgwvxgwvwwxwwwfxwwxwwxxxxwwxxwwwghfgwvwxwxwwwxxwwwxwxvwwvwwwxvwgwwwwwwxwxwwxvwwxwwgvxxwwxxxwwwwvwwxvwwwwgwwwxwxwwgxvxwwxxxwwggvwwwxvxwwwgwwfxxwwvwwwwgwxgwxgwxxwxwxgwvwxxwxwwwgxwxwxxxxwxxxxxwgfgwwwxwwxwwvvwwxwvxwxgxxwxwgwvwhwvxwxwwwxwwxggvwwwggxwwwxvgvwxwxgwxgwvwwwwxgwwvxxgxxwwhwvwxxwxxwwxxwxxwxxhwwggwwwwxwwxwwxxwxxxxxwxwxxvxwwxwwVwgvvxwxwgxxwgwgxwxvxvwxwwwwgxwwwxxwgwwvfwfwvwwwewwwwwfwwfvvvvwwgwwwwwgvxwgxxhvwwwgwxvwgwwwwwvwwwxwwgxgxwwwxwwxhwwxwxwxwfxwwwgwgvwwwwxwwxxwgwxhwxwwxwwfhwwgwxxgwvvwwwwwgvwvxwwwwwVvwwwgwvwvwgfvgvxwghwwwWwwfxwgfwvwwgwgwgwwwwvgwwwwfxfvwvwwxwVvvuuxxfgwvwwgvwwxggvwggxggxvhwhwwvhwwwwxgwxwgwgwwxfgwwfwwwxwwwxwvvxfwwwwwhxwxgxwwwwwxwxvwxgxxvvxwwffxwxxwvwxxxvwggxwwxxxywvwhwwwxwhwxxwwvwvwgwwgwxwwwwwxwxwxfwwwwwxxvwwwfwwgwvwwxwxwwwvwwwvwggvwgwxwuwwxgxwwxxwxwxwxxvwwwxwxfwwxvwUvwwwxwxwwwfgwwwwgxwgwxgwwwhxxxwwwxwwwvwwgwxwxwwgxwvwwgwwwwwwwxwwwxwwwwxhxvxwwwwxvxvxwwwwwwwxwWvxwwxwwgwwhwxxvxwwwwuwwwvxgxggwfwvwwxvwwhuwwgvgvvxhVwxhvgwwvwwxwhwwgwvwwgwwwwgwwwvwwwwwwwxwWvhwxwgxhgxxgwwWfgvfwwwxwhxgwxwwgwvwwwxwxwvxxwwwwxwwhwvhwwwhvwxxvwxxxwgwxwwxwwwwwxxvxwxvwvwwvvwwwwwwwxxwwgvwwwwxgvwvvxvvwwxwwwwwwwwwwwwxgvgwwwwhhwwvwxwxwwwwxxxwxwwwwxxxwxwxwwwwxxwxwxwwxwxwwvwwwwwvwxwvxhgwxvwwwxwxwvxxxwvwwxxwwwxxwwxxxxxxxxgwwxxwwxxggwgwxwwwwxxwxxxxgwvwxwwxwwxwgwwwxxwwxgvgwwxwxxwwgxxwxxxxxxxwxwxwxwwxxwxwxxwwgvwxxxvwxxwyxwwxxwxgwwxxwwwxxwxwxxwxxxwvwxxwwxwvwvxxxxwxwwwwxxwwwxxxwxwwwxxxxxwxwvxxxxwuvvwwwwwwgwwvvwxgwwvwxxvwxwwwvwwvxwfvvvhvfvwwwvfvwvwwwwvwwggwwwvvwwwwwewwfwvwgvgwwgfwwwxwwwwwwxxxxxxvgewwvwwwwwgwwxwwhwhvxwxxxwwwwxxfvwwwwwgffvwfggwwwxxwwvwwxvwxwwwgxwwwwwxwwwwFdvvgwvvvwwxgwgfwwwgwwvhwgvwvvwwxwwwwwwwwxwwwxxhuwwfvwfvvwwwwxgwwwgwwvwwgwwwwwwwxwwwwwxxwwxxxfvwwwwvwwvgwgvvwwxwwwhxvwvgxwwwwxxxxwfwuvvwwfguwvwwfwgwwxfwwwwwwwfwxxwxxgvwfvwfvvwwwgwxwwhwxwgvwwwxxxwwxxxwwxgxwvwwvffwwwvxgvfxvwxwxwhxwwwwgwxxwwxwvgfwgwwwwvwwwwwwwwwwwxwwhxwxwxxwwxxggefvvvvwfuuwvwvwWvwgwwwwvwvwwwfwwwxxxxxwwwwgwwxwxvvvgvwvwwvwguwwvwwgxghvwwWwxwwwwwwxwxwwxxwwwwwwvvxuxwwvwwxxxwwfwwwgwwxvxgxwxwwwwwwwwwwwwxwxwwwfvwwxxxwwwwxhvxhwwwwxvwxwwvhwxwwwwxwwwwxhvwwwwfggwwwxwfggwxhxvugvfwwhfvwxhwfgwxgxxvxwwwgxwxvwwhvwwwwwwwUvvvwwxwwwxwxxWwgwgwwxxwgWwxxxwxwxxwwxxwvwwxwggxwvwwxgwwxwwwvwxgwwwwwwwwwxxwwwgvwwwVffwwvgwxwxwhhwWwxxwfggwxxxwxxxgwxxwxxxwgwfvwwwwwgxwwwgwwvwwxxhwwwwhxxxxwgwxxhxxxxxUvfwwwxwwwvwhxWwxwwgvwgwwxwxvwxxyxwwwvwwwfwwvwwwwwxwUvfvwwwwwxwxyWwgvgwwwwxwxWwxhwxwwxxwxxwxxxvgwvwgwwgvgxwwwxxwxvxwwhwwxxhxywwfvwwwwwxxhxxxxxxxwwgfwwwfvgwwxxxwwwxxhwwxxxvxxxxxwxxUvfwvgvwvxwfxwhxvxwxxwvwwxxxxxwwwgxxwwwwxwvxxwxxvwxxxhxxwxwxwxwwwwwxwwwwxxxwxxxxxxwxxxxgxvvwwwwgwggwwwwwwwwwwwvwwxvvxxxwfwuwwwwgwwwfvvwwwwwvxvwwwwgwvxwxwvwuxwwwwwwwxxwxxxwwwgwwvugwgwvwwwwvwwgwwxwxwfgwvwwwwwwxxxxxwvgvwvvvvvwwwwwwwwwxvxxwvvwvwvwxwxwxxwxwxxxwxwffvVggfwfvwwwwgwvxgvwwwvwvuvuxvwwxwgwwwxwwwfgwvvvgwwwvxwfwvwvgwwwgwwvvvwwwwwxvxwxwgwwxwxwwffewwwvwgwwwuvwwwwwwwwgxxwvuggwxxxxvwxwwhxwxwxxxwvvVwwfgwwwxwwwwwfwxwxwwxwxwxwuwxuxxwwwxwwhxxwxwwwwwwwwwwxwwfgwxwwwggxvwgwwwwxugvwxxwxxxwwwwugvwvwwwvwwwwxwwwufvwwxxwwxwwwwwwxwwwwwwuwvwwwwwvxwxwxvxgggwvxvvwhxxxwgxwwhwxxxwwwwwwwwxxxwwhxxxxwwwwfxwwxxwwwwvwxxgfvvfvugwwxwwufvwwwwwwwwwfwwwvwwxxwxxgwxxxwxxxvfwggwvwhwxxwwwvwwxwwwvwwwxwwwwwvxxxwfvufwwwxxxwxvwwvxwwwwhwwxwwgwfwgwwwwhwhwhxwwwwwwvwwuwwxxwwwwwxwwwvwvxxwxwxvvwwvvwwwvgwvvwwwwvwwvwxwwvwwvwwvvwwvuwfuwwwwwgfvwgvvfvgwwvxwwfwwwgxwxwwhuwwwvwwwwwefvvwwwwwvxwvfwwwwwxvwwxwwxwwwgwwwwwwhvvxvghvwwwwvwxxxxwwxwvxgvwwwwfvwwvwgwfwwvwwvwvwwwvwwwwwxvvwxxvgwxxxwwwwwxwgvvwwwvfwhwgvhwvxvhwuvfxxwuwwwxwwvxvwwwwhxwgwvwvwwuwwuvvwwxuvwwxwwvwgxwxwwgwwxxxwvwxhwwvgwwwwwvwwwwgvggwwwwvvwwxvwxwwwxwvxgxvwwvwwvwwvgwvvwvvwvxwvwvwxvwwxwxwwfwvwwwwvwwwvvfwxwgwhxwuwwhxxxwgxxwwgwvwgwwvwgwxvwvvwwgwuwwwwxwwwwwxxxwwwwwwwvwxxxgwwgxwwwwwxwxwxxwwhwhhhwwwwgwvWwgxwwwwwwwgwvwwwwwxwwxwgwxxhgvxvvWvwwwgwwxwwvwhhxwWxvhvxwwxxgwxhvxwxwhwwwvwwxwwwxwwwwwxwxwwgwvwxwwwwvxwxwwxwwxxvwwwvwwwwxwfvxxxxwwwvwwwwwwwwwwwxvfwwwvwwwwwwxwwwwwwwvwwgvwwxvfwuWwvwwwwwwxwwwwwwwxuWwwwvwwwwwwwxwxwxxwvwwvwwwvwvwggvfwwwwwxwxgwwwwwwxwwxvxwxxwxvWffwwwwwwxwwwwwxwwwxwwwwwwvwxwwxwxxxwwwwwwwwwwwwwUUwwwwwuvwgxxwwwwwxxwxwwxxxgguwxwwwwwxwxwUUwwwwwugvfwgwggfxxwwwWgxfvgegxwhgxvwxuWxhhgwwwwwwvwfwgwwvwwwxUefgxwvxwgwwxgwwvxwxxxwwxexwvwxxxwvxwwUgvxgwwwfvwwwwwwwvWwgvvfxwewxwxfxwxwxwvwwwwxgwwfwwwwwvwwwgvwvwwwwwvwvwxwwwwwxxxxwxxwvVvwvvvwvxwwwwxwwwwwxxwwwxwxxwxwxwwwwxwxxwgvwwwxwwwwwvxwwwwwwwvgxxxwxwwwwxxwwxxwwxwxxvwvwwxwxwxwwwwwwwwwxwwwwwxxxxxwxxxwxxwvvvwgvwwwwVeufwvwewvxxwgwwwxxwwxwvwxgwxvwwgvugwwvvxwwvWwxhvvwxwwwwgfwwwwwhxwgxwghgxhxvgxvgvgxxwwwugwwvgvgwgwwwvxwxwxxxxwxwwgwxxwxwuxwwwwwwwwxvvwvwhwxwxwgwwgxwxwwwwwxvxxwwvvwwwwgxWgvvwwxwxwwwvgwwwwwwxwgwwvxwgvvwwwwvwxwwwwhxwwvwwxxwwxwwwhwxgwgwgwwwwwwwwgvwvwwwvwwxwvwxgwwxwvvxxwxxfvvxwwvvwwwxvvvwxwwwxwwgxwwwwwxwvgggwwvvgwwwwwgfvwwwfwvxxwWwwwwwwwwxwwxvwwxwxwwwxgggwwwevgvwvwfvxwhgvwgxvwwwghwgwxwwxxwhwxxxxwxwxwWfvvfvfvwxvwhxwvwwwwvvwxxwwwwxhxvwfgwwwgxvwxgwwwxgwwxwwwwxwvxxwxxwgWwvwxvvvvwxwxvxwwxwwwxvxxgvvvwgevwvhxvvwgxxwwgxhvwxxxgwvwwwvxwwwvvxxxgwxwvwwwwxwwxwwxxxvxwwwwxwwwgxwxwwxwxggvvvvwwwwwwwfwvwvwwwwxgwwxxxwwxxwxxwegwvwvxgwwwvgwvwxxwxxwwxwxxwwxwxxwwxfvwxwwxxwxwwwvwwwwwwxwwxxwxxwwxxwwxxxwxgwvwxxxxxxvxxxwxxxxwxxwxwxwwwwwwwwwwwxwxwvwgvwwwxwvwwwxwwwwgvxwhwwxwwwwwwwwwxwxwxxfvwwxxwgwxwwxwwwwwwwxxxxwgwwwxxwwxwwwwwwwwxxwwxwwwxwwwwwwwxgvwwxwxwxxwxgwxwwwwgwxwwgvwxwxwxxxwxxxxxxxxwfvvwwwwwxxwwwwwxwgwxxwwwxxwxwwgvxhwxwwwwwwxwxwwxfvvxwwwxxgwwwwwwwwxxxxxxwxgwwwxwwwwgwwxxwwwxxwwwwwwwwwwwwxwxwxwwwwwwxxxxxwwwxxxxwxwwwwwwvwwxgvwxwxxxxxxxxwxwwxxfvvwxxwxwwwwwwxxwwwwxwwxwxxxxxwwxwxxwwwwwxxwxxwwxxxxwwxxxwxwvwwwvwwfwvevvxwgxfwwgwvwwwwwwwxwwwwwwwwwwvwEvwwewgffwwwhVexwWwvfwgwwggvwwxwhggwwwxgwxhxyxwgvxwwwwwvwwwwggwvxgggwwwwxwwvvwwxxwwgwwvgvwwwvgwwxxwwwwwwwxwwxwvgwwgwhgwhhxxwgxxwwwvfwxwwwgwfwwgfwwwvvxgwwwvwggwgvvwxwwgxwxwwxwwxwwxwwfwwwvwvwgvvwggwFgxwxwvxfxwwgwgvwwxwxxxgvxxwwwgwxwwwgwxvwgwvwfwxwwfgwwgxwwwwwgvgvhwvxhgwwwgwxwxwwxgwgwwfxgwvxggxwwwwgggxwwwvwwwfwwxxxwwxwxwxvwvwggwuvgfwvgwgwwxgfwvxvwwxwgwxxxwgwxwwvvwwwwfwwwwwxwxgwwvxwwwwfwgxwxwwwwxxxvwwwgvvwvxvwwxwwvgvwgwwfwwwxwgxwxxxwvwwwxwhxwwxxxwvvwxvvxwwgwggwwwwwwwwfxxwxvxxxwxgwwwWwvwwugwfgwwwxfwWgwvwgvwvwwxwwwwhwxwxwgxgvwgvwvwwwvwfxfxxwxwwvxgvxvxwhwxwwwvhhxxxwwwfvhgwxwwvxfvgvhwwwgwwxxxxwwwwxwwxwxwwxxwxwxvwwxwxvwwvwwwwwxwwwxxwxxvwwwwwwwwwvxwxxxwwwwxwwwwwwwwwwwwxwgvwwxxwwwwuwwvwgwxxxwxwwxwwvwwwxxwwxxxxxxvgwgwwwhxwvgwxxxwwwwvvhgfvwxwwwgwvvxfwgwwwxxxwwwxwwwxwxwxxxwwvwwwwwwvwgwhwwxwwwgwwwwwxxwxwwxwwwwwwvwgvgvgwwwwgwwwwwxxwwwxxxwwwwwvwwxxxwxxwxwxxwwvgwvwvvwwvvwwgwgwxgwxwwwwwwwwwxwwxwxxxxwxwfvvwwwvwwxgwwwgwwxwxvwwxwwgwwwwwwwwgwwwxxxxwgvgwxvwgwwwvfwwxwxwwvfvxwxwwxwgwvvvwgwwwwxxxxwwwwxwwxwxxhggvvwvwwwgwvxwgwwwwwxxwxwwwvvwgxwwwxxwwwwywwwwwwgxwwxxwwwxxxxxxwwwwwwxwxxxwxwxwxxvgwvvwwwwwwwxfwwwwgwgwxwxwxwwwwwvxxwwgwwxwfvvwwwvwwwxwwwgwxwwwwwwvwwwwvxxxxwxxwxgwxxxwhvvvwwwxxwwwhvxwxwxwxwgxxwwwxwxxwxxwxwvwhxxwwgwwxwwxxxxxwvwwxxwwxxxxxxgwwxxwxwwgvvxwwfwwwwvwwwewvxwvwwwwxvwwgxwwwweuvxgtwhfuwvwuggwvgwvwwxwwvwuvwhwwwuhhxxhvwwwuxwvvwwwgwwwwvvwwxxvwvwvwxwxwvwxxwvwgvwfwwwwvwwwwhxxxwwwvwwxwxwxvwwwvvvwwwwwwfvwwvwfvvvgvxwfvwwwuwvvxwwxwgvWwuwwwvwvvwvwxwwwwwwwgfxvwwwxwwwvghxxgxgwhwxhvwvugwwvwwwvwvwwugvwxvwxwxxwxwxwwxwwuwwwwwwwgxwwuwxxwwwxwwwwwwxxwwxxxvwxxwwvwwvvwwvvwvuwwwxewvwwxwwwwuwgwwvwwxxwwggugvwwvwwwwwxwwhxxwhwgwwwwwXxxvxwWgwxxwwvwgvwvugvfwgvwxwwxwvwwxwwxvxwxwxgwxwwwwuwwgwwXwxgvwxxhvWgwxgwxwxxxgwwxxxfwwfwwgwwwwwwwwwgwwvwwwuxwwfwwxwwwwwxxwwxgwwwwvvvwwvwxwgwvwxwwgwwwxwgwwxwwwwvwwwvxwwwwwwvgwwwvwwwwvwwwwwwwwwvxxwwwvwxwxxwgwwwwwwwgwxwwwgwxwwxxxwxwwwxvwgwgwwvxvwgwwwwwwwxfwuwxwvwghvwwxwwwxwwxwxwvwwvwfvvwuxvwwwwgvxgxwwxxwwwwwwvwwwwwxxwxwwxxwwwwwwwwwwwvwwfgwwgvwugwwxwwwwxxwxwwxxhwxwxwwwwvwugfwugwwxwwxxwwwwxwwwvwvwwwwwxxxwwxxfVfgwfvvVwvwuwggwwhwxwwwgxxxfwgwxvxwxwxwwvxxwwxwxwfgwfgvwfwvwwwwwgxggwvgwxwhxwwwwgwxwhxxxwwwwgxxxxxxwwxxggfvefwwvvwvwwfwugwwwwgwxxwvwwwwwxwwwxwwxxxwgvgggwwwwxwvwwxwwxxhwwwwwwgwwxwwxwwxxwwwwwvwwegwhgvwwwwvwwhwxwwxgggwvwvxwwwxwwwxxwxwwxvgvwfwfwvwvwwwwwwwhwwwxxwwwwvwwwwwxwxwxxxhwxwxwxxwwwwvuwvvwwgggwxwxxwxvwwhwwxwwxxxwhwxwxgxhwxwwwxwwwwhfwxwwhwxwxwxvgxwxxwxwwxwxwxxxffewwwxugvwxwVwwwwwwwvwxwvhxvgvxwwwxxwwwwwgxxwxwxwwfWgwwvvgWwwwwgwwgxxxwwgxxxwwwwxxwwwwxxwwwxxxxevwvxwvwhwwwvvvfwwwvwxxwfxwgwxwxwwxwwxgxwwxwxwgwwwuwwwxvwwwwwxwwwxwwwwwwwxwwwvwvwwwvwwwwwvgvwvvwwwwwwwvvwuwwvxwwvwwwxvufwwfevvwvwwvvggvwvwvwwxwxwfuugvwwwvwvwwxwwwwxxwxwwwwfuvwwwwvwxevvvwwvvwwxwgwvvwwwwgvwwvwwxgwxxwvfwuwvvwwgwgwwxwhwxwwvwwwwwxxwwxxxwxwxgxwvggwwvwvwwwwwwUfwvgwvwvwwwwwwwwwfwwwxwxvwwvwwvwvwvwwxgwfugwggevvwfwfwwggwwxugwgwgxxvugwuwfvwwwwgwwxegwwwgxvwwgvxwxwuvwwwvvwvuvxvwwwgvwwxwvwwvwwxwwwwwwwhxxwuwwwwvwvwgwwwwwvwgxwwgwfwvwwwwwwxwvwxwxwxevwfvvwwwwwvwvvvwxxgwvwvwwwvgwwwxxwwvfwvvwxwwwwvwwghxvwwfvwhgxxxwgwvwwxxwwvvvvwvwxxwwwwuwwgxwxwxwvwgwWwvwwwwgwxgwwxgwwwvwwwgwxhxwwwxxwxwwxfxwwxgxxxxxwwwvwwfwvwvwhwvfwwvwwvfwgxVwwwxwwvwwwgwxwxgvwwvwegwvwxwxwvgvwfxxugwwxvvvgvgwvxvwwxxgxwxwxxxwvwwwwwxwwwxwwwwwwwfwwggxwwwwgwwwwwwwwwwwvxwwxwxvxwxwwwwwwwwvwwxvwwgwwwwwwwwwfvwvwxwwwvvwwwwvwwvwwwxvwvuwvuwgvwVevwwwwwvxwfvwvvwgwfwfwvwvhwxwfwvxfvvwvfvvgwgxxwfwuwwwvxwwwgwwhwwwvwwvfwwxgwwvwwxxwvwwvvwxwxwwwwvxwwwwxgwxwvggwwgfwwwfvwwgvwwwvwfwwfvwwwwxwvvwwvwwxwwwwvvwvwwwgvwwwxwvfwtxwxwxwwhwwwwwfvfvwgvxxwwvwwwwvwxxvxwvwwvwwvwvfwvwwwwwhwwvuwwvwuwxxxvuwfgwwgwxvvwwgvxwxxxwvvvxxwfvwwwvxwxvwvvwwwvxxwvvwwwwvwvwvvwxwwwwvgvwxgfwxwwxwvvgvwwwgwwwwwwwgxwwvxwwgxhwvwwxxhwwwwwgvvwwwwxwvgwwxwvxwgwvxhwwwgwwfwwwxwwgwwwxxwwxwwwwxxwwgwhwvwhxwhgwwhxvvvwfwwffwwvwvvgwwvwwwwwxvvwwhwxxgwwwxxgfwfwgwwwwvvgwwxwwxwxvvxwxwvxxwxwgwfwxxxwxffwxxfvwgfxwwwwxwxwwwwwxwgwwvxwxxwwwwwwwwwwwwwgwvxwxwtwwvwvwwwxffexgxgwwwgvwwggwwffexxuwuwwgvwgwvfvvwwxxgvVewgvwgwvvVexwgwgvvwwgwvwwgvwvvgwfvvwtgwgwvwwwvvHxwwwwgfexvgwwwwgvwwwwwwvwgwxghxgvwfvvwwxwwwwxxwwxwxwwgvvvgwwwvvgxWgwvwwwfgxxxwwwwwuwwwwwvgwxXxwxhvVgvwwvxgVffgwfVewwgvggvwwwvggVfwffggvwwdgufvvwgwwvgtvhwwwwwwwwgwgwwwwvwggwwgvxx7wfwgwwgvwwwwvvwguwwgvwvwwgggwwgvxwxwxwvwfVffwgfwwwxuVegvvwgvvwggxWwWgggwvxdwgfwxgxwwwuwwwwgwwwwxwvwwwwgwvwgwgwxgwgWvggwwwgwgxwxvgvxxwwwvwwvvwxwhwghvVvwwwwxgfehxvvwwgvwwwwwwwwwxxvgwwwfvvwwwggwwwxgwwxxxxwwgvgwvvwwwwuwwwvvwwwvvgxXwvwgwwxVxxwxwvxxwxxxhufxxvwvwfvvwwvxfvvwuwwgxwwxwwgfvvwxgwxgwwwwxwxwgxwxwwwwwfvvwtgwwwxwxwwxHxwwxxhegvwwxwwwxwxwgwxhfWvxwwxfVfwffvvvwdvwfggvwvwgguwwwwwwgwwwuVegvwwwwxwxVwgwVxwwwvwwwwwggwgwgxwwgwwgwvwgwgxwxhvwwxgwwgewxgwwvxxwxhvgwhufvwwwWuwwdWvfwxxxwwwtvhwgvwwggwgxwwwwwwwwwwvxwxvwhwgxxgwxwwxxwwwwxwwvwwwxwxwxgwwhegwwxxwvwwwwwxwwhfWwwwwwvxuwfwwwwwwwvxhvxwwwwwwwxwfwwwvxwfwwvvfvgwwvwfgfvwfwvwgfxwxwwwwfwwwwxwwxwwuvfwvwwxwwvvwwwwvguvwvwvwvxxvvvxwwxxwgvxgvwwvwxvwwwvxwwwxwfvfwwxxgxwwvwvxwwfvvxwwwwwwgwvfwvxwwwwxwxgffwwvfwwvvwwwwwwwxwwgFdgwvvfwwwwvwwfwxwgwwwwxwfwvwwxgwxxwxxwwvgwxgvwxwhegffwvwwwwxxgewwwwwwwwwwxwxUvvwvwvwxxwxvwvwwhfwwgwwfgvwvwvwwwxwwwvwwgxwhfwwwxwwggwwuwwwwwwuxxwxwwwwwgvuvwvxwwwfvwwwxxwgvwwwwwwxwxvfuvxvwwwwwwwwwxxwwvwxwxxwxwxxwhxxvxxvwwfvhwwwwwfvvwxvgvvwvxwxvwwgxxxxxvwvfwwwvwxwwwwwxwxxwwvxwwwwxxwxwxxwvxxwxhuwwgvwfwwvwvwwwvwxwxfvvwwwwwxwwwwvwwgwwwwxxwwxgvvwwwvwwwxxwwwwwxxwxxwwvhwwghwxwxvxwxwwxfwwuwwwxwwwwwvwwvwvwwxwxwwwwxwwxwwwwwvxvxgwwvwwvvvwwxwwwxgwwwwwwxxwwxwgwwwwwxxvwwwxwwvwwwwwgwxwgwwwwwvwwwwwvwxxgvvvgwwwvvwwvhwwwxwxwgwwvwvwwwxxwxgxwxwwwwxwwvwwwwwwgwwvwgwwwwwwwgwwvwwxvhvvwwwxxvgwwwwvvwfwwwwwwwwxwggxwwxgwvwwvxxwhwwxwwwwwwxwwwwfgwwwgwwwxwvvxxwxxxwxwwwgwwwxwhwgwwwwxwxwxwxxwvxxxwxwgwwvwwhwwxxwhhfwwgwxgwxhvxwwvwgwwvwwvfgwwwwwxwvvwwwwwwhwwwvgwvvwvwwxwvxvwwwwwxxwwwwwwwhvvvvxxgvxwwwwwwxvvwwxwwxxxwwxwwwwvwwwwwwwwgwwwvvwwwxwwgwvxggwvwxwwxxxggwwwwfvwvvwgwwwwwwwgwxwxwgwwwwxwxxxxxwhvxxxxwvwvwwgvgwxxhwxwfvvwwwgxwwxwxwwgggwwwxhvwwwwxhxxwxwwwhgfxxwgxxwxwwxxwxwwwwwvvwvxwxfgvwwwwfgwwvwvwwvxvwxwgwgwxwxfwwwgwxxhwwxwwwwwwwxwgwwwgfwfwxxwhxxwwxxxxwhvhwwxwwxwwwwwwhwvxwvwvwwhwwxwxwxxwvhxwwgwxhxxwgvwvwxwwwwwwxxxxwxwwxxxuwwwwwevuwfwggwwvvvvwfvwwwwwwwwwwxwwvwvwwwwvxhvgWvgwfwvgvxuwfwwwvwwwgfgfwuwvwwguwwfwgwvgwwwxXvwxvxwvwwwxWwvwwffgvwwwwwwfwfvwwwwfwwwwwwwxwwxwwxxwwgggwwxvxgwvwwwwwxxhxghvvwhvggwxwvxxxwwfvwwwgwgfwuwwwvwwwwVvwwvwwvvvwufuwwgvxvwwwwvwwwwwwwgwuwwxfggvgwxxgvwwvgwfwvwewvgwgwwvwXvwvWwwggwffwwxwxwxwHxwvwwwhhxwwgwxwwwgggwwwWwwwuwwwvwfwgwggdgvfwwwwwuwfwxwwxwgvghwwxwhwwwgvwwwwwxvwwxwwghvwvggvvwfwvwvwxgxwfxvgvwwXxxwhhwgwwwwwgxgwWwvvgwwgWvwvwwwwwwxwgwxwvwxwwwwxwxxwxwwwxewwwwwwwgwwwgwhxwxwwvxuWwwhhwxhxxwvwvgwfwwxwvxwwvwwxxwXwwwvwxwwvxvxxwxxxwxxwxwwwxwxwhwwxwxxxxwvwvvXxxwvgwwgxwwwxxvwwgwfgwwfwwvvwdgvfvwwwwuvuwwwwhwggwvxwxgwhwwwxxgvgwhxwwWwwgwvxgwwgvxxvwwvwgvhWwxwwxwvwwwxxwxxwwwxxxxwwhvwwgvwwwfwwxugwwwwwwvwxgwxxhwguvwwxwwxwwwxwxxwwWwxvwxxwghxxwwwfwxwhhxvwgwwwwxhwgwwggwwgvwwwxwwxxwwwxgwwwwxwwwwxwvxwwwxwxvwvwxwvvgvwxvwvxxwvwvgvwwwwwvxvxxxvwwwwwvvwxwwwwwwwgvwfwwwxxwwwgvwwvwwwxwwwwwwwxwxxwwwwwffwwwwfwvxxwwwwwwwwvvwgvwwwxwxVewwwwwfwvwvhvgwwxxwxxwvvvwvggvwgvwfvwxxxwxwxwxvwvwevufwxvwwfxwwwwwxwwwvvwvwwxwwwxwwxxwvwfvvwvxwgvwwwvwwxwwxwvwvvwwvvwwwwxwxwwxwwvwgwvwvxwwvwwwwxwxwwwwwxwxwwwgvvwwwwxwwwwwwwwwwwxxwwwwvwvwwwwhxwwwxwxxwwgwwwxxxxxxxwxxxwwwwxwwxwxwwxxxxxxxwxwxwxxxxxvwvwefewfwwwvwvvwxwwwxxxwwwvwxwwwwxwwwwfxwfvvwvwgfxwwwwfwwxxwxxxxwwvwwggxwwwwxwxxwwxwwwwvxwvwwgwxwwwwwvxxxwwwwwxxwvwxgwvxwwwwwwwxxywwwwwxwwwwwxvvvwwwvxwgxvwwvwgvwxwwwwwwwwfwvwwwwgwvwwwwwwvwgvwvwwwwxwwwxwvxhwwvwwvwwwxwxvxwvxgwwgvwxvwxwxwwfwvvwgwgwvxvvxwgvewwvgwxwxxwgvfgwvwwwwwwwwwgfvwxwxwvxxwwgwwwwwwwxwxvvwxwwwwwxgfwwxwwwgwwxvwvvwfvxwgwvwwgvevxvxxwxxwwwgfxhxwxwxggvfwvwvwxvvwwwwwwwwwwxwxwxwxxwxwwwxxxxwwvegwvwwxxwwwvvxwwwxgwwwgxwwxvxwxwxwvwwwvgxfwvwgvwwwvwfwgxxxwwwwwwwvxxxxwvwfgwwgvxwfwvwxwxxwwfwwwwwwwxxxwhwwwvwvwwgvxwwxxwwwvwwwxxxwwxhgwxwvxxwxwxxvwwwgwxwxxwxxwwwxxywgfgwfhfwwwxxwfgvwwwhfvvxgwwwwxxvgvvwwwxwxxgwwwvxxwgxvgxxwvvwxxwwwxfwxwwwgwwwwwxxwxwgxwwxwwwwxxwwxxxwvwxvvwwxwwwxvxwwwvwVwvuxvvxwgxwfxxwwwvwwvwgwwwxvfvwwwwwwgwxVwvvgfewwgevUgwgvgwgwxwwwwwwvwvwvxgwwwgwggxwwwwxxxxxwwfvuvwfwxwwfxwwgvwfgwxwwwvwxwwxwgwvwwwwhxxxwvfwgVwvgvxwgwwgwxwgxwwwxggwxwwxwghxxxhgxxxxwwvfwxfwgwwvwvwVVwwwfgwwfwwwvwvwwwwWxwwwwxgwwxwwxvwvwxhwwwgegwgWfwwUgwgfwwvwgxxVgwwwvxxhgggfwwggwwwwgxgWwwgwgxgwwwgvwxvwwgxfgwwwxwgfgwwgwwwwgxxwwgwxwhwxxwgwxvggxXggwgxxwwfwwfWwvwfgwwfggwgfxWwhxwxgxwwwgwxgxxwwwxxgxxxwxxgwwvwVvwwvwwvxhgVwwvwvgwwwxwwwvwwvxgxfxwwxwwwxhxxwwvfwvwewwgwxuwwwxwgxwvwwvwxxhxwwwxwxwxwxhwhxwgxvwfwfxwwvvgwuwwWwwxwgwwxfxxgwwvwxxwwwwxwwxxwwxhwwfxxvwwwwggwvwxxxwwwxxxwxxxgxhxwwxxxhxxxwvwxwfVxvwvvxwwgwVvwxxgwwxwxwwwxxvxfwvxxwxgvwwxwwwxgwwwwuwwvwwxwwwwwwwggxxwxwxxwvxvgwwwwxgwvwhhgwwgxggwwwxwwvxwvwxfgwwwwwwwgwxwxxxwwxwwwxwwwvxxxwxwxvgwwwxwxxgwxvwxxxwwxgwxwwwwvwxgxxwwxxwxwxwgxwwvvfwwwwwwvvfwvxwewwvxgfwwvwwvfvwxwwwgwwwwggwwxxgfuevxwwwwwwxgxxxwwxgvwwfhwwwuxxwwwwxwxxwwxwwxxwwwvxxvwxhwxwwxgwwwwwwxxwwgwvwxwxgxgxxwxxgvwwwwwwvvfwwwwgxvwfuvfwxggxxwxuwvxwwxwxxwvwwvvwxwxxgwxxwxwffvvwxxwwxwxxxwwfuvwfgxwwwvvwwgwgwwxwwvvwxwwxwvwwwwwwhwxwwwfuewxwwwwwxxxgvwwghvwwxxwwxxwwwxxxxxvgwwvvxhvwwwxxvwwgwvxxgwwwxivwgvwxxxxwvwwxwgwxxxwgwgvvwwgwwwgwwvxvwwwwxxxwwgwxwxvxxwxwfuvwwwxwvwxuvxxwxwwwwwvxxxgfwwwwxwwxwwwwwxxgwwxxxgxxxwwhxxwwwwxxwwwxxwfwwxxwxwgwwwwwwwwwwwwwwwwgwvxvuuvvwwwwwxvwfvwfvwwwxgwwfewvvvguwgwwvwwwvwwwxXgvwvwuvwvvvvwgvvvfuwvwwwfwxwuwvwwwggwwwwxwwfwfwwvwwwwwwxvwxxwxxwwwwwvuwwwwwwwfhgvwwwwggwxWXxxxWwhwgwgwwgwwwfvwgvwwwvwwWfwgwwwwwwvwwwuwwwwwvwfwwwwwwfwvwugewvwfwwgxgvwgwwvfwwfwwwwwggWwwgxwgvvvwuwvfwGxgwvwvWwgwvwxwvxwwwwfgwgwwgvvwwxgwwvwgxVwvhgwgvwdgvfwgwgwwuwwwgwgwWwwvwwvxwwwfxxxxxxwwwgwvewxwxwgvxwwwfwwxwxwxwwxwvwgwgwwwgxwuwwgvwwgvwwwwxwxwwwvvxwwwwvvfvwxwwxwxxvwgwwxvgvvwwwwwwxwwwwwvwgxwwwghvgvvwwwwvwwwwxwgwwwwWwxxwvxwwwvxwwxgwxwxwxwwwXxxwwwxwwwghwwxvhwwgvwwwfwvwhwgxhxxwfwvwwVwwxvvwvvwvwfxfxwwwwuwwuwwwwwxwwghdgvfwwwwxwggwwwwwwxvwhhwgvwwffgwxvwwwxwwwgwhvWuxvwvvgwgxwwwxgwgwuxxxxwwvwxgwxwxxgwxuugwwwwwwwwwwxwfxxuwgwwwwghvwxxxxvwvgwxxwwgwxvwwewhgfwwxvvwwvwxwvuxxwhvwwvxgvxwwwvwwwwwwgwvwxgwwwgwwxwwwxwgWewfwggwvuxwwwxgvvwwxwwWvuvfvxxgwvxwxwwxgwwwfxvwwwwwwwgwhxxfwwvwwWwxwxXxxgvwvwwfwwwwwwhwwxwwxwwgvwvwxwwwwxwwgwxxwwxwwgvwwwwwvwwvwwwwwgxgxgwvvwwgwwwwggwwwwhfwwwwgwwwwxwxwxwwwwwwwwwwxvvxgxgxwwwwwwxgewwwhvwxxwxwwwwwhWvwwwwhxwwvwwwwxvwvwvwwwvwwwwwwuvwwxuvwwwvwwxhxgwxwwwwwwgxwhwvwgwwgwxgvxwfvvgwwwfwgvwvxxwuxwvwwwgwxwgvxxwvwwwwwwgwwvuxxWxwvwvwwwhxvwxgvwvxwvfvwvwxwwwgxwwwxhxgwwwxxwxwwwxwxwxxwwhxxuuwxwwfvvwwhwwgvwwxwxxwxwwwxwxgvxwwgWvvvxwwwxxgxxwwwwxwwwwxxwxwxwwwwwxxwxwgxvwxxwvwwwuxgwvwvwvwwwuxwhgwwwvvwwwuvxvwwwwwWwvgXwwwwvwwvxghwxwwwgwwxxwXwxwvwwvxxhguvxgwgvwwhhvvwWvwwvxxwvwwxxwxwwwwxggwvxwwwwwwwwWwxwxvxwxgvxvwhwxhwwwhwxwxuxwxfvwggxwxvwwgwxvwxwvwwvxwxvxwvwwxwvvwwwwwxVuwxgtwvwuxvvwhvvwwfgwwhxgevufwwwWwhwwxxxwxxgvgfgwvwwxvwwwwwvwwxxwwwvvwVwewwwwvwxwxwwxwgufwwfwwvwxwxwwwgxxwwgwwwxxxWxhwwxxxvwwwVxgxwwgxfwwgfwwwwgfwxgwwvvwvxwwwwwvuxwfwgggvwwxwxwxvhwwVWwwwxwwxwvwwwwxxhwvwwgwwwfwwxggwgwwwwhvggwggvwwwfvwgwwhxwxwwwwxvvvxwxwwwwxgwwwxxwxwxvxwwXwwwxgwwxwwwwvwfwwxxvxwwwxwwwgvxwxxwgwwwggwwgxxxwwxxwxwxfwwuwxwgvvwwwwwxfwgwxxxxwwfwwwwwvxgxwxxxvvwwvvwwwxwwxvhxxwwvvwwwvxwxxwxxwwxwxgwxuwwfvwgwxwwvwgwwxwwwxgegwgvfhwwwwfwxxwxwugwwgxhwwxwxxgvxwxwwwXwgvxxxwwxxVxxxwxwxfwwuggvwxxwvwwwwwxwgwvwxgwwxwwxugvwgwwwgwwwwuwwwwvxwxwxwwwwuxwwwxwxxvwxwwwxwhxvwwwwwxwwvwwwxwxvwxwwwwgwwwgwwwwwxxwgwwxxxxxwwgwwwwwxxxwwgxwwwewwwxxwxwgwggxwwwgvwxwwwvwxxwwwvgvfwwwxwwwwwwvgvwvvwfvuwwwgvgtwwwwwwgvwwwwwvwwwxwwwwwwwwwXgwvwwwwxwwxwwwgvwgwgvfwwwxxwwwwfvxwwwwwwwvxwxwxwwwwwwwgxhwwwwxggvwxwwxwvxwwwgxhwxwgvwxwgvwwgvwwwvgvwwwwgwwwwwwwgvwwwwuxwwvwwwxwwugvwgvxxwwwwwwwfwwwxggwwwwHvwhwxwwvvwvguwgxxxwgxxxwgvwwxwwvgvvwwwxxvwxgwwwvwhuwwxgwwwwwwgwgwugvwwgwvwxxwfwwwwxwwwwwwwwwwwxwxgwxgvxwxxwvxwgwwggwxwxwwwwwfxwvwgvwvvwwwwvxwgvwgwwxvwwxwxwwwwwvxwxwwwwvgwgxwgxhwxxwxxxxwxvwwwwwwwwuwgwgwxwvwwxhxwwwxgwwxxwwXuxwxxxwgxxxxvwgwxxvgvgwvwwwwwwgwvwwxwgugvwwwggwxwwwwxuwxwxhxxxvxxwvvwwwwvxwxwxwwxxxwwgwvwxvwwxxxxgwxvwxwxhhwwxwxfvwxxwhwugvwgvwwwxwwxxxwwgwxxxwxwxwuwwxwxwggvxxwwxwwxvwxxxxvxxxwvvwwxvwvwgvwxgxwwwvwfvwwwwxwgwwfwwxwxwvwVwvgwegwvvwgfvwwfvwwvvxggewwwwvfvwxfVgxvhwxxxwWvwwgwwwvgvgfwwwwvwxwwwvwvxxgwfwhxwwxxxwvvwwwvwwwwxgfgxwgxxgggwwwgwwwhxxxwhxWwxxxwwvwwgfwwgxwwwwggwwfwwfgxwwwvwxwhgvwxxvwvwxxwxwwwwwwghvwwwvwwwuwxxwwwfgxfgwxvwwggVgxxwfgwxxvwgwVgxwwwwggxwvxwgwwvWwxxwxwvwwgwxwvhvvwvwvxwwwxwwwwwwvxgxxgvxwwguxwwwvwggggwwxwwhwwxxwwxwwxwhxwgWxgvwwwwxwWwwgvggfVwwwvwwwwwwvwwwwwxwwwwwwgxwxxgvwwwwwgxwxwfvxxvgwxwxhwwgxhwwxxwgxwxxwxvxwwvvwfgvvxwwfwwwvwwxxggwwgxwwxvwWwvwwwwxxwwwvwwxwxxwwhxxxhfxwxxhxxwwwwwxwwWwgxwwwwvgwuwxgvwvxvvwvwxxwwwggxwwxxxgxvvwwwwwwxwwwgvgxxxghwwxgwxxxwwwwgwxwgwvhwwwwwwxxwxwvwwwwwxxvwxwwwwwwgxvwwwgxwgxxxwwxvwwwxvvwwxxwxwxwwvxxxxwwxwwwwwvvfvvwggvvgwxvwwwxwxvwwxvxxfwwwvvvwvvwwwggwvwwwxxxwwwwwwxxwxwwwwgxwwwwwwxwwwxxxxxwwwwwwwvvvwwwwvwwwxxfwwgwvvvgwwxwggwwgwwwxwxwxwwxwwwxxvVevgwwxxwxvwwgwxxgwxxxxfxxhxxxxwxxxwwwwxgvgwwwwwwxxxwgwwwxxxxxxxwwwxwggvwwwgwwwwxxxxxfvvwvgwwffwwwvwvwvwwwvwwxgwwwwxxwwxwvfvvvvvvwwwvwwwwwwwwxwwvvggwwxwwwvvgwwwwxwxwwwxwxxxxxgwwvwwxxwwxwxxxwxxxvgfwwxgwwwwwgvvgwwvwwwxwxggwwxxvvwwgwxxxwwxwxwwwxxxwwgvxwxxwwwxwffwwwfwwvwwwxwvwwxxxxwxxwwwwxxxwwxwwwwwwxxwfwuwwwwwwfuufwwgwwwwwwwwwvwwfvvwwwvwwgvvxwgwwxxwvuwfwwwggxxwvwvwwwwgwwvwxvwwxwgWxwvwwxwxwwwwwwvwwwwgwwwwwwwxxwwxxfvxwfwwxwxwwxwwwwxxxwxxxwwxwxwgwufwwgvwvvvwwgwhwwwwwxwxwgwwvwgwuwxwwxwwwxgvwwfwffUwwwwfwwxwxwhhfwwwwxwwwxxwxwwgfwwfwwwwwxwxxwxwxxxwxwwxwxxxwwfxwwhxvxwwxxwxgxvxxwwwxxxwxwwwwwwffwfwwvwwvwwvwwfwfwwwvwwxwwwwwwwwwwwwwwwxwwwwwwvwwgwwvwwwwwwgwwwxwwwxwwxwxwwwgwwwxxwwwxxwxxwwwxwxwxwvxwwwxxwxxxxwwxxvwwwwgwwxwxvwwwvwhwwwwwwxxgwwxwxwwwxxwwwwwwwwwwwxxwwwwwwwxwwxwxxxxwwwwxxfwwwvwxwwwwxxwxxxxxwxxwwxxxwwwwwwwwwwwxwwwwwgwwwxWdFgwwfwwwxxwhxxwhxwvvwwxxxwhwvwwwxxHuWxwwwwwwwxxwxwwxxwwwwwxxwwxxwxxwxfwxwxxwxxxxhxxwwxwwwxxxwxxxxwwwwxwHuWwwwwwwwhgwwwwxxwxwwwxwwxwxwWdFwwxwfwwwwwxwwyxgwwwwwxwwwxwwwhxwwwxwwwxxxxxxwwxwwxfwwwwxxwwwxxxwwwxwxwwyxwwwwwwwxgvwwwwwwwvvwwwvxxxwxwxwwxxwwxxwgwwwwwwvwwwwwwwwuwvwxwxxwwxxxxwwxxxxxwxxwxxwxxwxxwxxxxwxwwwxxxxxxxgwwwwwwwwuxwwwwwwvxwgwwxwxwxxxxwvvwxxvwvxxxgvwwwwwxxxxxxwwxwwxxxwwxxxyxxxwwxxwxwxvvgwwvwwwuwxwewgwwwwwgguxgwvwwwwwvgwwgwwwwwwfxxvxwfvvvgvwvgwfwuwwwwwwgwxvwgfwvvwxwwwwwwwxwwfwxgxwwwwwwwwwwxxwxxxwxwxxxxgwwvwwwxxwwwxwwwwwgxxwxxxxxxwgvwwVwwfggwwVxwwfwvwvwwgwwuvwwxxgwwgwwwwwwwwfwvwwwxgwvwwwfwwwgxwwwwgwwfwxxwwvxxwxxwwwgwxwwwvgxwwxxwxxxxwwxxwxwxxxwwwwxxwxgxwwxxwwxwxxgxxxwxxfvvwwfvwvfgxvgwvgfvwvvwguvgwgvvwvuwwwwwwxwwwwwwwwxgwxvgfvuugvvwxwfvvgwwwuwwwwxuvvvvwvgwwxxwvvwvxwvhwwwgwwwwxwwxwvwwwhwwwwwvxxxxwxwwwxwgwxwwvxgxxwwxhhwwwwxxxxxvWwwwvwfgwwwwxwvvgwwgxwwhwhggxvwuwwwxvwwwwuxfwvwwwwgwwvvwxfwvwxggwxgxgggvwxvwvvwxxxxgxwgwxwxxwgwwwxxwxwgwwxwwwxwwwyxxvwxxwwwxxxxwwxxxxxwxxuwwwwwwwvwxvgfewvfwfwwwxvwxwfwwvwvfufvwwwwwwwxgwwgwvwxvgggvegVvwvwvwwwwwvvvevwwxvwxvxwwxvvwgwxxxxwwwxwwvvgwwvgwfwwwxxwxxvwxxvwwwVvwwwwxfwwgwwwwwhwvwwwwvwwwwxvvwxwxvvwwwwwfxwxgwfvwwwgwgwwvwwwxwxwwhxvwwwwxxxwxwwxwxwxxwwxxwwxwxwwwwxwwxwxwxwxxxwwxxxxvwvxgfvwvwuvxvvfufgwfwwwwwwuvvwwwxvwwwxfwwwwwxwwVwvwfwuxwwwvvvuwwgvwugvvvhvvwwggwwwvwxwwwwxwwwwwxwvwwxxxwxxwfwghxwvwvwxwxxwxwxxwxwggwvwgwvvhvvwwwwwuuvwwxxxvwwwwwwxxwvvvwwwwwvgwwwwxwgwwgwvvvgvwvwwxxwhwwwgxxwwwxwwxwxxxxwwwxxxwuwwvwvwfvxggvVtugwWvvgwvwwwfwwvwwwggxwgfvwwVvwxgftwwwufvvvwwwxxggwfgGwwwgxwxwwguwwwgfwwwxwxwwwxwgxgwvwwxwwgwwwwxwwvwxxwwxwwwwwwxxxxxxwwwuwxwwwxxxwwwwgxwwgxwxvwwxwwxxwwwxxwwxxxwxVuwwvggwwfwvwwgufvxWgewfwhxwwwvwghxwwvwwxxxxxWvwggggwvgUfExgwwggxfwwwxwwvgwwxwwwgexwgvxfxwwwvvwxwgwhwxhwxxxwxxwwwwgggwwvxwxwxwwexwwvgxwxxwxwxwhgxxwxwvwwwxguvwwwwvwwwwgvwvggfwvgwggwxvwwwwwwvwgvvwwwwwwxxvgvwgwwwxwwwvfwgwwxwwwwwxwwwwvwwwxwvwwxvgwwWwwggwwwwwxxwfwxxwxxvwwwxxwwxxxxvwwxwxxwwxwxgwxxxwxxxxxvgvwwwwvwgvxxwWvggwwwvwwwffwgwxxwvwxxvwvwxxwxwxgwxvwxwxvwgwggwxwwwwwwxwxwwwvwvwwfgvwwgvhVfwxxwwwxxwwxxwwwwxxwxwwxxwwxxwxvvwxhxgxwwxxvwwxwwwxwwgwxwwxuwvwvvuwfwgwgwfwwwgfwvgwwvwwvwwgwfwwxwhwgwvgwwguwxvuvwguvvfwfwfwfwwvwwhwwwwvvwwvVgwffwwwxvgwwwwwvwwwgwwxwwwwwvvwwwwwwwwxwwgwwxwxwwwxwwwwwwwwwwwgwvxxwwwxxwwwxxwxxxxwxxxwxxvvuggvvwwwwwwwwevvwwxvvfggwvwfwvfwwwvwgwwwxwxwxwgxxxwfgggvwwxwwxwwvwwvvUwxgwguxvxwgxwwxwwwvwwxvwwwwxxgwwwwwwxwgvxwxxxxwwwwxwwwxxwwgvwxwxwwgwwxwxxwwxxwxvvuwevUwvvwwwvwvgvfwgvgvwwggxffwvvfwgwwwwwwwwwwvggwwwwfwfUwvfgvwvwwwfvvwgvvfwgwwwwwwwvvwwwwwwxwhxwvxwgxvwvgwwwwwwgxwwwxwwhwxxwxxwxxvxwxwghwwwwgwwwwxxxxwxwwxxxwxxwxxxxxgxwxvwxxxwwugfwvwwxgxvwffwfwvwgfgfwfvvxfwvwwgwwwwvvwgwgwwhWwxxwgxxwwgwvvwvxwwwwwwvwwwhwwwwvwxwwwxxgwhWwwwxwwwwhwxwwxwxwwwxwwxxwgxwwwxxwxxxwxxxwhwwxwxhwxxxxxxwxwxwwxhwwxwhwwhwxwwhxgxxwwwxwwwwhwwwwwwggwuwxvwwwwhwheVuwgwwwwwwwwwwwxwwgwvwwxwgwvxwwxgxwvWvfxwwwwwwgxxvxxwxwwwwxwxwwwwxxwxxxxwwxxxwwxxxgwwwxwwwwgxwwfwxwxxwwwwwwxxXvfwwwgwwwwwwwwxxwhvvwwwxwwwxxxxxgeVwvhwwxxwwgxwxxvhvgwwxxwgwwwxwxxgvwwwwwwwwwxxvxxhxxwwxxwvgwwxxvwwwxwgxxxxxxwxwwwwwwgwwwwgwwwWvwwxgwvwxwwwwwxwwwxxgwfwwwgwwxwwgwwvxwwwwwwxvwxxwwxwwwxxwwwwwwxwxgxwwxxxwvwwwwxvxxwxwwxhwwgvwwwwwxxxgwwgwwxuwwgwwxwwwwwxxwwwwwxvgwwxxvwxxxvxwvxwwxxxwxgwxwwwwvwxxvwwxxxxxgwxwxxwwxxxxwwxgxwxvxwwxfwxgxxwwxvwwwvwwvvwWgguwgwgwwxwwwwwwwvwxxwwwwwwwwvwwwwwwgwggwwwwwVewxwwwggfwwxgxwwgwxwxwwwwwxwgxwwxxwwxxwwgwwvxxwxxxwxxwwwxxwxwxwxwwxwwxwxxxwwxxwwgggvvhwhwvwxwwgVvevwxwwxxwwvxwhwxvxwxwwwwwwwxwggggwwwwwwwgxgxxwxwwwxxxxxgwxxwxxwxwxxwwxgvxxwxxwxxxxxxwwxwxxxxxwxwwwwwwxxgwfwvwwewvwwwgWfwgfwwgvvwwwgvgwgfvwvwwwwwwwwwxwhxwwvhgwwvxgwhwwgvfgwwvwvwwwwvxwwwxxwgwxxWwvxwxwwvhwwwwxwxwxxwxwxwxxxxxxxxxvwxxwxxwxwxwxwwxwwgxwgwwgwvwxxuegwWgguvxhxxvwwxhwxwwwhxvwvwgwgvwwggwwwwxwggwwwwgwwwwwwxxwxxgvxwwwvxwwwwxxwxxxwxxxxwxwxxxxwxxwwxxxxxxwwwwwwwwxgwvuwxwwwxhwxwvxwwwwgwwheVuwwwhwxwwxwwwwwwwvwXfgwwwxwwwwwxwhggwwwxwwxwxxxxwwxwwwwxwwxwwxxwwwwxxxxwxxxxgwgwwwwwxwwwxxvxwwxxxwwwwwwwvvggwwxvxwwwxwwxwxvWfgwwvwwwxxxxvwxxxgeVwwvgwhwxgwwxhhxgwgwwwwwxgxxhxwxgwwwwvwwxwwxwwfxxxxwxxwxxwxxxxgwgwwxxwxxxxhvxwxvwxxxxwxxxwwwwwguwwwwvwxwvwwwvwwvxwxwxwwwwwxxxxwwgwgvwwvwwuwwgwwwwwwwxwwxxwwwwxwwwxxwxwwwwxgwxwxwxxwxxxxxxxwvwwxxxxvwxwxwxxxxwxgfwwwvvwwvhxxwwwwwxxxwhwwwxwwvwxwwwxxxxxwwxgwgwvwvwwwxhvxxxxxxwgxwwwxwxwxgwgwvxwxwwxxwxxxwxwxhxxxwxxxhwwxwxxxgwxxxwxgxxxwfwwvwwwWvvuvwggwvwwwwgvwwxwwwwwwwgwwwwwwwwvwwwwwwwvwvvvvVVwwwxwvvvvwwwhxvwwxwhwvwwgwwvxwxwxwxwwwxxggwwxxwwxwxwwwwVewwvvvgfvwwwwwwwwwxwvwwwwwvwgwwwwwwwwwwwwwwwggvwvgwwxwxvwxxwwwwwwxwxxxvwwxwxwwwwwwwxxxwxwxwxwwwwxwxwxxwxxwxvfwwgfuwegwwvvvwvwwvwfwwwwwgvwwwwvvfwwhvwxwwwwvwxxwxwwvwWgewwvwvxvwwvWvvuxgwwwwxwvwhgvwwwwgwwxwxwxwhwxwxwxxwxxwxxhwvxwwxwxxwwxhwxxxxxvvvfvvvwvxwwvwwgwwwwwwwgxxwwwwuvwvxwxxwxvvwwvvwwwwvwwxwvvwwwwxwxwwwxxhxxwxxxxgvwxxwwxxwxvwxwwxwxxwxxwwwxxxxwwxxxxxxxxxwxxxugwwwwfwfgwxvwvwguvwwfvwwvxgwwxgwwwvgwxwxwgfwwgwWwwhvxxxguvxwgVvvwwwggfvggvwxwgwwwwwwgfwfgvwwwxwwgwwwgxwxxxwxwvwwwwwwwvwxvwxwxwwxwwxxwwxxxwxxxvwwvwwwwwwwwwxxgxwwxggwxxwxxwwwxxwgvuwwwgwffwwwvvwggWvwwwffwwwgxVgfwwwgxvxvwwfwwwwwwgwwwwwwxfwwwggwwwggUxggvxwxxwwxwvxgwWxxgxwwgxwxwwwwwwwwggwwwwwwwxxwwwxxwwwwxxxwxxxwxwwxwwxwxwxgwwhxxxwxggwxxwxxwxxwwxxguvwvgvvwgvvweUgwfgwgwvwwwvvxfwfwwwgvwwwwwxgfvwgvxwwwwwwufvwfwffvffvwgwwwwggvwfvvfwggvwwwwwvxxwvwwwWhwxvwwvxwwwwwwwxwgxxxwxxwxwxwxxhxxwxghxvwwxwwgwwwxwwxwxxxwwxxwwxxwxxwwxxffwfvvwvvwwwvUvwfgggfvwwwwwwwwvwgvwwwxwvwwwwvvxxwxhwgwxwwgwwvwwwvwwwvwwggwxwhwwwwwxwwwxvwxhwwwxwwwxxWhwxxwwwwxwwwwxwwxwgwwwwxxxxwxwgwxgxxxxwwwxxwwxwxxxwwxwxwhwwwxwwvxxxxuwwwvvwwwwwvwvvwgwwwvwfwguvvwvwfufuwgwwwwgwwwxwwwvwhxfwwevvwvvwguvvwwwwwwwxxwwggwwuvgWwwxvwwwwvwwwwwwxwwwwvwwwxwwwxwxwwwwxvwgxwwwwxwxgxwwwwvwvvwwwxxwvwgwxvwwxwwwwwwwxfwvwwwwwwewwwwwvwvvwwvfwVfvwwwgwwwxwwwwvWwxxwwwxwwggwwwvwxwgwxwwgwxgwxexwxwwWhxwwhwxwxvxxxxwwxwwxxwwwwhwwxwwhxxwxxwwxxxxxwxxxwwwhxwwwwxwwxgwhxwxxxxxxxwxxxwwuwwtvwvgwwwwgvgveuvvvuwguwwwgvvfuwwwwxvxvvvvwwvwwwggxwwwfuvfwwguwwwguwggwwxxgwwfgvuwuwvfwwuvwxfwwxwxwwwwfwwwxxwwxxxwghwwwwxhwwXwwxwxxxwwwwxxwwwwwwwwwxwxfwwwwwwwxwwxxxxwxxxxxwuvwuvwvwwgwxWvgfvfvxwwggvfwuwwwxxvwvtfgwwwwwxhvvwwfwfvwwgwvwwwxgwwhwwxwwwwewgwwwwwgwxvggwwvxwwwxwwxwxwwfxxxwwwwwxwxwxwxxwxwxxxgxwwwwwgwwxxwxxgxwvxwwwxxxxwxgxxwwwwwwvvvwvwwwwwvwwwvggwwvwvwwwwxvwgwwwvvwgfwwwwgwwwwvfwwvwgvwwwwwwwvwfvwgwgugwwgfwvwvvwwwwwwxvvfGwwvwxwwwwwwwxwfguwgwwxxwxwxxwwxwxxwwwwwwxxwwwWxwxwwvwwxxxxwwwxwvwgfwwwwGfwxwwvwwxwwuwwwwwxvwwwwgvwvwwwgxwwwwxwxvxvwgwwwwxwxwwWwwwwwwwwwxvwwfwxwxwwxwwwxxxxxwxwxxxwwxgxwwhwwxxvwxfwwxxwxwwxxvwxxwhwwwwwxwvvwwwgwwvwwVvvwwvgfwvwuwwwwvvvgwwwvvxwwwwwhwwwwvwvvvggwvWfwtggwgwwwwgvwvwvwwwwwwwxwwwwwwxwwwwwwhxxxwwxxxwwwwxxxwxxgwxwxxxwxxxxwxxwxxwwwxwxwwxxvxxwxgwwvwgvxwfvwwwgwuwwwggvfvxvwwwwvxwwvvvwwwxxuwwwuwwxwwwvvxxfxwxWwxwwwwwwxvwwxxwxwwxwwwxwxwwwwxwwxwwwxxwxxwxxwxwxwwxxwwwwwwwxxxxwvwvwwwwwgwggwgwgwgfughwwwwwvxvgwwwwgwgfugggwgwwwwwxwvxvxvwxfvxwwxwwWggwwwwwwwxwvwxxxwvXxxWvxwwxxwxwwwwwvvfwxwwwwgxxxxxhwxxxwxwwxxxwhxxgwwwgwxxxxxxxxxwxwwxxwgwvvwwvvwxVwwwwwfwfxgwhvvvwwvgwwwgwwwwxxxxxvwxwwwfeugxhwwwgxgxxwvfeuwgwwvxwwwxwxxxwwgwxwwwxxxxvwwwxxxhxvhvwwvvfxxxxwxxxgxgxxxxwxxwwxwwwfvfxwfgfvufwwwwwwwwwwwxxwwwwwfwwvvxxxwwwhxwWvwxxwwxwxwwgxwwwxvwfwhwxxwxwwxwwxxxwxxxxxxxwxxxwxxwxxwxxwxwwwwwvvwxwwwvwgwwvgwxgvwwwwwhxgwvvxxwwvwvwwwxwvvfgxxwwxhxwxwxwxwxgwxxxxxvwwwxwxwwwxxxxxxxwxxwxxwhwwvxxxxxwwxxxwwxwxxxxxxffvfvvwwwwwgwgfvgwwwxwwvgwwfuuwvfffwffwvffffwwfhxwwxvuwvvgfvffvfvvwwwwwwwwwvwwgffvwwvwwwfWwwvvwwwwwvxxwwhvfwwwwgfwxffvwfvwwwwwxvxffwwvhwwwwvwxwwwvffwwwvwwwfwwgwhxxwwvwvvfwwwxwwxwvxxxxxvxfwgwugvwwwffwwxvfvvwwwwgfgwgwgffvwwwwfwuwwvwwwgwxwgwvxhwgwffwwxwwwwwwwwwwwxwvgwwwxwwfwffUwwwwxxwvwxwwxxfvwwwwwvffwwwxwvwwwvhwfwwwgwvgxgwxwwxxgfxwxxwwfwwvvwxwvxwfwvxxffwwwhxxwgxwwwxvxxwwwfffvvfvfgwwxvwgwvvfwwwwwggwwwwwvffvwwgwwwwwwwgwwwwwxwwwvgfgwvwwxwwxvwwwwwwfwvvwgwvwwwwvwwwgwxwwwwxwxwwwwxwwwwwxxwwxwwwwwxxwxwwwxxwwwxwwwwwhxwwwgwwwwwxxfxxwwxvfvwwwwwwxxggvvwwwfwwwgwgwgwwwwxwgwwwwwwgwwwwwwxwwxwwwwxwwwwwwxwxxxwxxfwwwwxwvwwxwwwxwwwwwxxfxwwwxxwwxwxwwvxwxwwwvwwwwwwxxxxwwwwwwwwvgwwwwwwvwwvwvwwwvwgwwwwwwwwwvgvfvvwwwvwxxwfvgxwwwwwvuvwwwwwgwgfwwgwwwwvwwwwxwfwvvxwvxgwwwxwxwwxxwxwwwwwxxwxxxxwwxwwwwxxxwwxxwwxwwwgvwfvwwwwwwgwuwwvwwwwgxwwwwxxvfvwgxxwwwwwxwvxxwgwwxxvwwwwxxxgwwwxxxxwxxwwwwwxwwwhxwwwxwwwxxwxxxxxwwwxwxxxwxxxwxwwxwwwfwwwwwvgVvwwwfwwwevxgvxwwwfvwwwwwwwfvwwwwwwwwwvvgfvvvVwvwwwwwwwgvxwvfwwwwgvwwgvwwwwwwwwwwxwwwxxwwwwxhwwwwxxwhwwwxxxwxgwxxwxvwgwwwwxxxwwxxwxxxwwwwhwvvgwwwewxfvvgvwvwwwgwxgfwwwwwgvwwxwwwxwwwwwwwggwwxxfwwwwwwxwwwwwwwwwwwwwwwwwwwxxwwwwwxxxxwwwwfwwwwwxxgwwxxwxwxxxxxxxwwwxxhwhwxxxxwwxgxwwxvwwwwwxwwwxfxwxWffwfwwvwwuffwhgvvvwwwwwfwwwwwwwvwwwwvvwwwwvwxxwwvvwxvwwvgwvwwwwwggwwwxwgwwgwwwgwwwvwwgwxwwwwgwgwgwxxxwwwwxxxwwwwwwvwwxxxwwvxxwwwwwxxwxxxwxwwvxwwxwwwxwwxxwxwxxxwwxwgxwgwwggwwwwwwgwwggwwwxvwwvwvwwwgwvwvwwxwwwwvwxxwvwwwwwwwwwvvwggwgwvvxxxgwvgwxxfwwwxxxxwwwwxwxwwxwwwxwwwwvwwxxxxwxxwxwxxwvxxwxwxwwxxxxwvxxxwwgxyxxxwxwwwwuvwwwwwvvxuwgwfwwfwvvwwwxwwwwwwwwxwwwwwhwxxxwwwvwwwwhwxwvwvwvwgWggwxwwwwwwvwwxhwwwwxwWxwxgxwxfwxxwwxwxxwwwxxwwwxxxwwxwwwwxwxxxxxxwxvvwwxvggwxwxgvwxggwxwwxwwwwWvxgvgwwwwxwwwwwwxvwwxuxwwwwvxwwwwggxgwwxwgvgxxfwxwwwwwwxvxgxxywwxxxwxxwwwxwxxgwwxxwxvwxwxxxvvxxgxwwxvxxxxxwxhwxxxwwxxwwxxxwxuwweutvwvfvwvvgwgwguvvvwwwfwwwfvvgxevwvwwwwwxvxgeuwgfWvgwwfwwfwvggWVwwvwxwwwvwvwwvwwxxxxwxwwgwwwwwwwwvwxwwwwwwwxxxwwgvwvvwfxwgxxxwwwxwwxhwwxwwfwtwxvvvhgwwwwvwfWvwgftwwwxwvwuwwwfwwxwwwvwgwwwggxguvfUTvvwwgxgwvgwvxgfxwwxxwgwggwVwwwxwxwxxxwWwwwwwxwwgwwwwgxxxwgwwwxxwxxxwwxwwwxwxxwvvwxxgwwVgwwwxwwvxghwvxxwxgwwxwxwxwxxwwvvuwvvvfwwwwvwgwwwvwgvwvvwvwwwwwvvvwwwwvwwwwxxvgvwugvvwwvvvwwwwwwwwvwffwwgvgwwxgwxwwxwxgwwvwwfwxwxxxwwwxxvxwwwxxgwwxxxwwhwwwwxwxwxwwwxxwxwxxxxwxxwxxxwvgvwgwfvwwwwwvwwwwwwwwxwwwwwggwwwvwwwWwwgwgxxwvwvvwwwwwwwvxwvxwxwwgfgxwgvxwwwvwwwgewfwxwxwxxxgwwxxxxxxxwxxxhvxgwwxgxxwhwvwxwwwwxwhwwwxwvxvwvvwwwuwvvuwwvwwwwwwVwggwwwvwxvwwwfwwvxwwwwvvwwxewvfwwvgwwewwfvwxwwwvwwvwwxwwvuwwxwwgwwwwwwwwxwwwxwxxwxxwxxxxxwwvvwwwvwwwwxwxxwwxxwwxgwwfuvgvwwwvwgfvwwwwvvwvwfvwwwwwwgwvvwwxwfwxwwxwwfvwwfwggxwgwwwwwxxwwxxwwwxwvwwgwwfxxwvwwxwwwhwwgwwwwwwvwxxwxxxwxwxwwwxxwvwwwxxwvxwxfvvwvfvvvvfvvuvwgfwwvvwgvwwvvwgwwwwwwwwgguwwwwwxwxwxvwugvvfwgwwwwvwwwwgwwwhwvvwxwwvxfwvWwwwuwwvwwwwwvxwxhwwwwwwxwwwwwxxxwwvxxwxxwvgwwwwwwwwxwxwxwxwwgywhxxvfvvfvvvvvvxwwwWuhwwwuwwwuxggvvwwgxhxxwhwvwvwvwxwvvwvxwgwwxvgfwggvwggwwgxhgwhgwgvxwxxwwvvwxvwxxwxvgwxxxxwgwxwwwxxwwxxwxxxxxwxxwwxxxwxwwxxxwuxwxwwxfwVwwwxxvgwgwgwffwwwwwgxfwgwwwxwgguffxwwwxxhfwgewwwwwwgwxwwvxwwwwhwwgwwwwxxwvwwxggwxxxwwxghxgxxggwwxwwxwwwxxxwwxxwwxxxwxxwwxxwwxwxwwxwwxxvgwvwggeexhhxgvvvwwwgvxwgevggwwwxxxxwwwwxvhvxggwvfwwwwfxwgxwwxwxwgwvwvwwxxwwwwxwxhgxwxwxxgwgfwvvvwwxwwwwxwxxwvxxwwxwwwwxxwxwxwxwwxxhvugvxfvvwxgwguffgvwwwfwwwwwwwxwwxWvvwwfwvwhwwwxvgvwvvwxxwvvwwwxwwvxWvuwxwxwwhxwwwgwwxxwwwvxxwwwhwwhxxxwxwxfgwxxxxxwxwxwwwxxwwguvwfuwuxvevwwwgvwwwwvgvvgvwvwgwhwwxgxwxwwwxwxgvvwwwvwvwvgvvvwwwwxgwwwwwgwgwwwxwxwxgxxwwvxwvxxxwwxwwxxxwxwxxhwxxxxwwxxxxwxxwvwggfwwgvxvwxheVwvwvwwwfffvwwvxwwvwwvfwwfwwxwvWffwwxwxwwwwxvwwwxwwwvvxwwxwwwwxxwwwggfwwwxwwwxxwwgxxvwwxgwwwwwgvxwvxxwxvvvvwwvwwvwwwwwxvwxxwwwxwxWffwxwgwwwwwwwwwwwvgxwwxwwheVwwxvwwxwwxwgVxwwfwwwwvvxwgwvwwwwxwwwvwvxxxwxwxxvvvggwwghwxwwxxhwvwwxwwwwwwwwgvvvwwwvvgvgxwwwwwxwxwxxwxxwfffwxwwxxvwwvwwwfwwwgwwggvwwwwwwwwwxxwvwwvwvvvwwwvvhwxwwwwvwvwwwxwvvwwxxwwwwwwwxxwwwwwwhwxxwwxwwxwvwwwwxwwwwwwwgxxvwwvwwxgwwvggwvxxwwwwxxxwwwgvwvvwwwxxfwwfwwwwwxwwwwwhxwwwvvwwwvvwgvgwxxwxxwwwxxwwxwvwwxxxxwwgwwxwxxwwxxxxwwwwxwwwwwxwwxxwwxxxxwxxwxxvvwfwwwwwgwvfgwwwwwwwwwwwwxxwwwwwwwwwwwwxwwwvwwgxxwwwwxwgwwwwwwxxxxwxwxxwxgwxwxwxxwwxwwvwwgwxwxxxxwxwxxxwxwwxxwwwxwgwwvxwwwwwwwvwwwwxwxvwwwwwxwwwvvwwxwvvwwwwxwwxwwwxxwxxwwwwxwxwxwxxxwxwxwxwwvxwwwxvwwwwwxxxfwwwvvwfwwxxwwwxxwwxgxvxxhwwwxhwxxwxwwwxwwxxxwwxxxxxxwwxxwxwxwwwwxxwwgxvxwwxwwwwwxwwwxwwxwwwwwwxxxxwxxxxwxwxxwwwxxxxwwwwwwfgvwwwwxVevfgvwwwfwvgwxwwvwvfwwwwwxwwxwwwgfwwwvwwvvggvwgguwgxwvwwwvvwwwxvwwwvwxwxwwwxgxhvwxwwvxwwwxgwxxxxwxwvxwxvxxxxwgwwxxwxwxwwwwggvwwwvwvwfvwggWwvwgxgwwwgwvwxwvwwxgwwwxxwwwwxvxhxgxvgxhfxxwwwhxfxxvwxwwwfwwxwxxwwxxxwxxwwwwwgwxxwxvgwwwxxwxxxxxwxwwxxxvxwxgxxwxxwwwwxwwwwwgwvwwwvwwxggwwfwwfgwwgvhwwfvwwwwxfggvgxwwwwwwgwvvwwwgwwgxwgwwxwwwwwwvwwwwwxxxvwhwwwxwvwwxwxxwxwxwxxxxxwwxwwwvwhxwvxwwwwwxxxwwwwvwwvwxwwxvvwgxxwgwwxxwwwwwwxwxwxwwvwwghwwwwxwgwwwwwxwwwxwhhwxxwwwwwxwxvwwwwwwwxgwwwhwfwwhvxxxxwwxgwwhwxxxxxxhwxxwxwxwxhwwxxxwxwwwwvxgvwwgwwwwgvwwvwvvwwwgxwwwwgwfwwwwwwvvwwwwvwvvwvwfwwftwfwvwvvwxwwwwwwwwWwvwvgvwwgwwwwwwwwxwwvfuwxwwwwwxwvxxxwwwwxxwxxxxxxwxhwxxxxwwxwxwwwwxvxwxvwwxwwvxwwgfwwwwugvgvwxwvvxwwwvwwfvgfvtwwwwwwvvwwwvwxxwxwxwwwxwvvhxwwxwwwwwxgxxwwwWwwwfwxwwxwwwwxwwxwgwwxwwwwwuxwwwwwxxwvwxxxwhwxwxxxwxxfxxwxxgwwwxwxxwwwxwwxxwwxwvvwwgevXwwfwgwvwwvwvhvwwhxuwwwgvgvvvwwhxwwxwwwwwwwwwwvwfvwvvuwwwgwwvwwxxwvggfxvwwvxwwXwvxxgxvvxwwwwxxwwwxwxxxwwwxwwxwxxwxxxxxxxxwwxxvxxwwxxwwwwwxwxxxxxxwxwwwxxxhwwxwwgvftwvvvwhwxwgvvgvwxWwgwgwvwxwwxwwwwvwxwwwxwwwwwxWwwwgwvwwwwWxxxfxxwxuwxwgwwwwxxwwwwwxxxwxxwxxxxxwwxxwxxwxxwxxxxwxgwwwxxwxxxwxwwxxxwxwxxwxxwwwwxwvgwwwgvwwwvxgvwwwvwfuvwwwgvwxvgwvwgvwgwfuvwwwwwwwwwxwewggwwfhxvwwwwwvvwwfgwhwghwvvwxgvvwwwwwwxxwwwwxhwxwvvfxwxxwwwxwgxwxxxwvxxwwwwxwxhxvwxgxwgfxgwwuxgwwwgwvvwwwwvwvwwxxwwwxuvwwxwgwwvfuevxwwwgxxwwgfuewwwwvgwwvxxwwwwxxwwwwxvwwgwwxxxxxxwwvvfxxxxxwxxvwvxwwvfwwwwwwwfuvfffvwwxwwwwxwwwwwwwxfwwvwxwwwwxgwvwxggvwvvwwwwxwgwvgwwxwwvgwwwwwxwxwxwxxxxxxxxxxxxxwxxwwxxxxwwgxxwwwgxxwgxxuwvwxwwwwwgwwxwgfwwwwwvvfxwwxxwwgxxwwxxwvxxxxwwwwxxvxxwwwhxxxxxwxxwwwxxwxxwwxwwwxxxxwwxxxxiwxxuwwwwgxwwwxwwfgwvwwwwvvgwvvvugwvwwvwwvwwffWuwxwwwwwvwxwwxwwVwgwwwvvwxxfwwwgwwwwwxgfwfevwwwwwwwwwwwvwxgWxxwwwvwxxwwwwwwwwwwxwgwwwwwxgvxxxxxxwxwxwxwwxwxwwwhxhwxwwwxxxxxxwwxfwhwxwwggwwwgVvwwwwvvugxwwgwvwwvwwwwwwWgvuwwxwvwwwwwwwxxwwwvwwgvwgwwxgxxwgxwVxwwhwxxwxhWxxwgxwxwxwwwwwxxxxxwvwwxwvxvwgwvwxxvwwwxwxwwwwwxxxxvxhwwwwwwwwxxxxwxhwwxxxxxwwuwvgvgwwgwuvtwgvVvugwgwxuxwwwgvgvvxwwwvwwwgufwwgwvvguwguvvwwxvwWwvgfxgfwvxgwvgfwvhwvwwwxuwwwGgfwxxwwxfwgwwhwwwwwwwwwwxwwwwxxwxxxwxwwwwwwwxwwwwwxwwxxxfxxwwwxxwxxwwxxwxwvxxwwwvuwwwvgfvufgwvwuwwwwwfvuvwwxfwwuxwwuhwvfwwxvwxwgwvwvwwwxgwwfxwfgwwgwwwwwwwwxxwwwwvwVgwwxvgwvgxxwwxwwwwwxwxwwfwwwxwxxxxxwwxwxxwwxwvwgwwwwvxwwxwwxxxxxwwwxxxxwwvwwxggwgwvxgwfwxxxwgwwgwvxxwwwwwwwwvxxgxvxgvwwvuWufuwwwxwgxxwuvxwgvgxwvxhvxxwuvwxxxxxgwvvxwwwwxhwxwwxwwwvxxxxgxgxxWugwwwwxwwwxxwhwgwxwwvxwvgWwfwvwfwxxwxxwvgwwfxwhxxxwxhwgvwwwwgwvwfwhvwwxxxvwvxwwwwgwwvhwwxwxWwfwfwwwxwxgxxxxwxxwwxxxwvwewwwxxwxvxuxwhxxxwxwwgwvwwgwwgwxwwwgwhwwwwxwwwwwwwxwwgugvvvwwfwwvxwuwwwxxwwwwxwvxvwwwwwwvxwwwwxwxwgxwwwwvgwxxwwxxxgxwxxxxfwwwxwxwxwwxxxxxywxfvvvvgfvwhwwwwwxxhvxxwwxwwxwwxxxhwwvughwvxwwwhwwxwxwxxwwvvwwwxxxgwwwwhxxxxxxhwwxwxxxxxwxhwwxxxxxxxxxxxuwwgwwwvgwuwvwwwwgwwwwwwewxwwwwwxxwxwwwwuwgxuvwfffvfggvxfwvwwwwwgvwwvgvwwwwwwwgwwxwwxwwwwwwwwwwxfvxwgwhwxxxxxxxxwwwwxwwwwxxwwxxwxxxxxwvgwvwwvewwwwwuwwwwvxxwwwwxwxxwwwgvvwwwwfvUwwwwwwxwwwgxwwwwwvwxwxwwwwwgwwwxwxwwxxxxxwwxwwwwwvwxvwhxxxwwwxxxxwwwvvxwxwwxxwwwvvvwvgvwvwwwwfwvwuwgwxwxxwwwhxxwxxxvvfegfwvgvwwwfvwgvgvwxwxwwxwwwwgwxwwwgvgwxwwxwvwxwxxwxwxxxhxxxxxxwxxwvwvwgwxxxxwxxwwxxxxwwwwwwwwwwwwxwvwwwwwwwxxwxxgxxxwxwvuwgwuvvxxwwhgwwwxxwwwxwwwwxxxwxwxxvwxxxxwwgwwxxxgxxxwwwwxhwxxxxwxxxuwxwwwvwwxgguvwxggvwfwgwwxxwxxwxwhxxxwgwwwfgwfvgvvwgfVxxwwvwvgwwggwwgwwwwxxwwvwgwxvxwxvxwwwffxxwwxxggvwgxWgwwxwhhwwgwwxxxxhfWwwxvwwwxwwwgxxhwgwwwxxxyxxxgwxwwvwWwwwxgfWxxguvwxwxwhwvxxxwwxxxxwgfvxwxvwwvXvwfvxwwwxgwxfxxwxwwxwwxxwwxvxwxwwwxgvWxhxwwwxxxxxxwxwwwxxxwxxwxxwgwVwxhwwxwvxxwwxxwwxxwxxwfwwwwwwwvwvvgvwwwvxwxxwxxgwwxhfugwwvvxvvwwvfugwwgvxxwgwfwxwvwxxwgwxwgwxxwwxvwwwxwxvwwgwvxxwxwxxxyxxwygwxxwwxvwgwwwwxwxwxvwxhxxxxxxgwwwwxuwvvwfwggxffvgwwxvxxxwxxxxxwguvxwvvwxgvuvwwhvxxwxwwwwvhwwxwxxwwxxxxgwxwhxxxwwwwgxhxxxwxxxxgvwhvgwwwwxwxxxxxxxvgwxwwwwwvwxwgvwgwwggwvfwwwhwgxwwwwwvgwwwxwvwwwffvuvvwgvvwfgvwwwfgvvvxgwwvvvvvfvwfvwgwwvvxwwgvwgvwwwvxvwwwwwwvwwvwwwwwxxxwwxwvwgvgwxxwxwxxwvwvggvvvwxhwvwwwwvvwwwwwwxwxxwxwwwgwgwwwwgggfwvgvwwxxwwgwwwxxwxwvwwwwxwxwxxxvwxwgwvwwwwwwfwgvwwfwfwwvwfxwwwgwwgxxvwvwghwwxfwvxwvwgwxwvxxhwwwwwwxhwhxxxxwxvxxxgwxgxvxwxfxxgxwugxwxhgvwxgvxxxwwyxxxxgvvfvvvwggVwwwwvfgvvwgvwwgwwwggvwwwxxfvwvxwxuvwudvvwftwwwetvvxfvwtvwvwwwvfvwuuvwwuwwwwwvwwwffxwvhwWvvxwffggvwggwwxwggxwwvgfwvwxxwwxxvxxwxxwxwvwvwwwvgwwxwfwwwwwwxwwwxxxwwwwfgvuwwwwwwfevvwwxuwwwwvwgwxwwvfwwwxwvwxxxwwvvvwwwgvgwgvvwvwvgxvwfwghwwwwfgvgwxxwvwuwWwwwwxwwwfvwxwwvwwxxwwwwwxwwwxwxxwxxxwwxwwwxxwwvxwwxxwwwvwxxvwvxwxxwwwxwwwwxwwwwwxwwwwvwxwwwwxvwvwwxxwfvwwgwvwwwwwfwvxwwvxwwgvvwxwwwxwwxwxxwxwgvwxxwwwwxwwwwxxwwwwxwgvwwwwwxxxxxxwfvwwwwvxwvxxwwwwvwxxxwwwwwwwwwggfxwwwwwwwxxwwwwxwxxwwxxwwxxwxxxxxwxwwwxwxxwxxwwxwxwwwxxwwxwwwwgvwxwwwwxxxwwwwwgvwvwvxffvwwxwwwwxxwwwvxwxxwwwxwxgxwxwwxxwwgwxxxgwxxxxwwxwwxxxwwxwwwwwxwxwxxxvwwxxxxwwxxxxvwxwwwxwxxxwxxwwxxxwwwxxwwwxwxwxwxxxxxxxwwwxxwwwxwwwwgwgfvwvwwwgwwhwwvwwgwvwxxxwvvwxwwwwfvwwvwggvwvvwVfvfgvvwwwfvvwgwxhwFVtuwwwvwxwvxxwxxwwwxwxwgvxwwxwwxwxxgVxxwxwhxxwwgwwwxwwxxwffufhvwwxxwwwwxxwwxxwxhvxwwwwfggwwwwgwwvxvwgxwwwwwxWgvxwxxxwwwxxwxxwgwxgvvfgxvxwwvfgwxWwxwwvwfwvwwxxwxwgwwwxwxxxwfxwwwxxwwxwyxwxwwxxxxvxxxxhvwwgwgwxwxxwwxwwxxxwxvxxwwxwxvxwvvvwwwwgVwwwvwvwgwvwwvwwxwwwhwxwwvxxhwwwxwwwggwwgwfvggwvwxwvFVtuwgfwwwwxggwwgwgwwwgwwxwxxvwxwxwxvwwxwwwvwvwxwwwwwwxgxwwxxxwhwwwwwxwwwwhwwwxxwwxwxwxxgwxxwwxwwwxxwwxWfxxwgvwgwgxwwwwwhwxhxxhxxxwxxxxxxggvvwwwwwwxvxwvwxwxxgwxxvxwwxwxvxwwxxxwwxvwgwwhvxwxxxxxwxwxwxgxvwxxxxwxwwxxwxwxxwxxxvwxwxxxxwwxwwxwgwxwxwwwwwxwwwvwxgvwwxxvgvvwwxwwxwfwgwwwxwgvvgxwvwwwgvvwwgvvwwwvgwvWffvwwxwwwgwxwwwxwwwwhxwgwvxwxwgwwxwxgwgvwwhhwwxxxWffwwvxwwwxxxxxxwwwxxxwxxwvwgwwwwwhwwxggvxwwwwxxxWgftxwwxwvvwwxwxwxvgvwwxfwvhxuxwvgxwgxwuwwwwwwxwxvxxxxxwvwwwxXgfxwwwwxwwwxxwxwwwxxxwwxxwggfhwvxxwxxvxwxxwxxwwxxwxwwvvwwxwwwwwwffwvwgxwwwhvxwwwwxxxwwwxwxxwvgvvwwgwuwwfwvwwwvvvxvvwwvwvwvxwwgwwvwwgwwwwwwwgwwwwxvvwxwxwfxxxwfwxxxwwwxwvvxwwxwwwwvxwwxxxxxhxwxxwwxxwvvfxxwwxwvvwvwwxwxgxxwwvwgxwwxwwwwxxwfvvhxwuvxxgwwxwxwwwwxwxxwxxwwxgfwwwwxwwxwgwxxvwwxxxwxwxxxxwxwwgwwwwxxxxxxwxxxwxxhxuwxwwgwvwvvvhwvghwwvwwwwggvggwvwwxgwgwwwxwwwwVgwfgwvvwwWwguwwvwfwwxwwwfwvvvwxxwwwwwxwxxwxwwwxwxwwwxwwwvwxxgwxxwxwggvwwxwwxgvwwwxxwgwgxwwxwwwwxwxxxwxwwxxwwVXwwwwwwwwgwwvvwwxwwxxwxwxwvxwvxgwwwwwvwwwxwwwvwfwxxwfxwwxwwwwxwwwxvxxwxwxxwwxwwxgwwxxgwxwxxxwxxwxwvwxxwxwwxxwwwxwwgxxxwwxxxwgxvfuwffgvvwwwwwwgwuwvxvgwvgfwfvvwwvvwgvxwxwxwgfvewuvfgvgwUvfvwwwwwhwwwwuwwxwwggwXgvgvwhwwxwfwgwxfwxxwwvxxxwxWwhxwwwwwwxxxxwwwxhhwwwxwvvvhwwxgwwwxwwxwxxwwwevwwxwvwfvgwwvxvvwxwwwxxwxxxwwhwxvwwxwvhwwgwwgwvwxwxwvwwxwxxhwwhhwggwwxxxwxwxxxWwxwgxwxwwwwgfWgxwwwxxxxxwxhwxxwxxwvxxwxwwxwwwwxxwwwxwxxwgxwxwxvwvxxvfvfgwvwgwxxxwwwxxvwwwwwwwgwwwvvvfvwwxxffwfggwvwwvgggwvvwwvxvwxwwxwwwxwgxwwwxwwxwwfwwxxwwwxxxwvwwwxwxwwwhxwwhvxwxwxxwxxwxvwwwvwxwfwwwwvvwwgwwxxwxwwxwwxwwxfgvvvghgwwvvfxwwvgghwvgwxxxwwwxgxwwxwwwwwxgwwwxxxxwyxxxwwwwxxxwwvwwxwgxxvwwwwxxxxvwwwwwxwwffvfvgwgwwwvwxxwwwwwxwwgwxxwxvvfwvgwwwvwwxwwfwwwvggvwwvwxxwwwwxwxwgwxxgwgvwwwwxxwwxvxwhxxxxxxwxxwxxxxxxwwwxwxxxwxxxwwwwwxwwvwwwvgwwxfxwhwxwxxwwxwwxwvwgxwwhwwxwwhfxhxvwvxxxwxwxwwhvxwxgwxxxxwxwwwxxxwxxwwwxxxxvwxxvxwxvwwwgvwfwvgwfwwwwvvwwvwvwvwwvgfwvvwwvvwwwwwwxwxwvgvgwfvwfvwvwuvwwwvvfwvwwwwwwwvuvvvuwwwwwxwwwwwwxxwxxfgwwggwuwxwwvxvwwwwvwxwwvwwxwxxxhwvvwwuwwwxwwwwxxxxwwwxwwxwxwwxxxxvwwwxevuvwwvvvvgwwwwxwwwgwwwwwwxwvvwvfwgwvwwwwwvwxwxwxxwwvvwgWwVvvxgwwwwwwwxwwvwgwwwwxwvwwxwxxfxwwwvwvwgwvwwxwxwxwwwxwwwfwwwxxwwwxxxxxwvxxxwhxwgwwxwwgxxwwfxxxvwwxxxxxwxwvxhwwxxvwwxxwxwvwwvfuvvwwwvwwwwwvvwvxwwwwvgwwwvwwxwwwxxxwxwvuwewuuvwwggwwwwwvwwwxxxwxvwvwvwwwwwvwxxxvxxwwvgwvwgwwwwwgwwxxgxwvwxxwwxwwxxxxxxxwvgxwxxwwxxxwwwwxxgxxxxwwwxvvwfvwggwwgxwwvwwwwwwvwwwxvxwwxwgvwwgwvwgxwwwwwwxwwxwwwwwvvwxxwwxxwwwxwwwgwwwxwxwxwwwxwwxwwwxvwwwxxxxxxwxwxxwwxvwwxwwwwwxwwxwxwwxwwwhxvxuwwwwxxwwvwVwwwwwwwgwxwfwwwwfwwwxwwuwwwgvxxwgvvvwxwwwvwewfwwwuvgfwwwwwgfvwwwwgwwwgwvwwgVwxxxvwwwwgwfgfvwggwxwgVwxxwxwwwwwvwgwwwxxwxwwwwwgwgwwwwwwwwgwxxwwxwvwwwxxwwwwwwwwwVwxgwggwwvvggwfvwvuwwxwwwxxxxxwwxwwwwwvxgwwwxwwwvghgxwxwgwvvwwxVwwxgwfwwxwxwwwwwwwwwwxwwwwvwwxwxxxxwwwwwWwxvfwgwxggxwwxwwwxxxxxxvwwwxVwuwgVfvvfwvwvwfwffvwxwwgwwwwwvwwwwwwwwvwwwwwvfwvfuvfegvuvvwfwuwwvxvvwwvgwffuwwfwwvgggffvxvwwwwwwxfwwugVwgvxwwvvfWgwwfvwgwwwxwwgwwxxxxwvwwvwwwwwfwxwwwwxwwwwwwwwgxwwwxwwwVvwwwvwvwvxgvvwwwwgwwwgwvwwxxvvwwvwwxwwxwgwwwwwwwwwwgfgwvwwwgvgxwwggwvwxwgxxwvvwVfgwvxvuwxwxwvwwwxwwwxxwxwvgwxxwxxwexwwwxgwvxgwwxwxwxwwwwxxxxxgwxwwwwxwwxxwwwwxwwxwxwwwxwwwxwxwwwwwwwwwwwwwwwxxwwxxwxwwwxwwwwxwxxxxxwwxxwwwwgwxxwxxxxwxxwwxwxgwxgwxxxyxwwxxxxxwxxwwwxwgwwxxwxwwxwxxwwxxwwxxwxxwwwwwgwwwwwxwwxxxwxxwwxwxxwwwxwxxxxxxxxwwwxxxxxwwwwxgwwwxxxwxxxhwwwwwwwwgvwfgwwvwvvxwggwgwwxwwxxxxwxwxwfgwvgwwvwwwwwwwwxwxwvwwxwwwwwxwxxwxwwwwxxxwwfwwwwgwxwxhxxwwxxxxxxxxxxxxvxwwwxxxxwxxxxwxwwwwwwwgwxgwwwwwwxxwxxwxwhxxxxxwvwwwwvxxwhwwwwxxxxxwvxxxxwwwwxxxwxxxxxwxxxxwwwxxxxwxwwwwwxwxgxwwvwwwvxwwgwwwwwwwgvwwwgvgwvxxxvvwwxevwwwwwwwfvvwfxvvxvwgvwvwvwwwwwwewwwvxxwwwwwxwwgwwwwxwwwwxwwwxwwxwwwwvwvwxwwvfvxwwvwwxxxxxwgvvvwwvvhwwuwxvwwxwwwgvwwxwwwwwwwxxwxwfvvxwvgxxxvwvwxvwwwxwwfffwxwvxxxwwvwwwwxxxfwwwwxwxwwxwwxwxxxwxxxwxxwwwwfwwwxwxwvwwgxgwxvwgxxxwxwwxwwwwggwwwwwfwgwwwxvwvwwvxxwxvwxxwwfvfvwwwxxxfvuwwwwuxxwvvvvvwvwxwxwwwxwxvwwwwwxwwwhwxxvwgxxxxxwxxwwxxxwwxxwxfwwgwxwxxwwxwvxhwxxxxxxxvwgwwwxxgwwgvxwvxhxxxxxwxvwwwwwxgvvvwhwxgvwwwxwvvxxwxwwwwxxxgvwxxxgxwwxxwwxwxxgxxwxxxwwxxxwxxwvxxwxwwxxxwwwxxwwwwwxwwwxgwwvvgvwwvgwwgwwgwwwwwwwwgwwvvvxvxgvgwgvxffwvwvvguwwwgfuvwwwwuwvwvwwwwwwwwgwvvgwwwgvWxwxvxwgvwwwvwxwxgvvwwxwxwvxgxwgwwwwwwwwxwwwvwxwxxwxwwwwxwwxgxxwwuwxwwwwwwwwwxuwwwwgwwwwwvvwxgwwwwvwwwwwwwwgxxwxuwwwwwwwwwgvvxvwxwxxVxxwwwxwwgwxghWxvwxwwwfxvwggvvwwxuxwwwwxwwwxxxxhxwxwwxwxxxxwxxxwwvxxxxxwwvwwxwxxwwwvwwwVwxwggwwxwwwxvwvgvwgwgwvxwfvvxwwwwwxwwwwwwwwvwwvwwwfuvgwvwwvewwgvewwwwwwwgwgwvwvwgwwwwwwwwvwvxvwwvvwwwwwWvwwgwwvxgwwxxwgvxwxxwxwhwxxxhwxwxgwwwxwwxxgwwwwxwwxwxxxwxwxwwxxxxxxgggwwggwvwwwxwwwwwwvvwwwwwwgxxxxwwxwwwvxwwwwgxxvgxwwwxxwwwwwwwwwhhfwwwwxxwwxwwxvvxxxwwxwxxxwxxxwxxwwxwxxxxxwxwwxwxgxxxxxwvwxxwwfgwwwfvvgwvggfwvgVfwvwwwvwwvvfxvfvgevfgwvvwvwwwwxwvwwwtgewVwvuvwweVwfwgvuvgwwgVgewvfvwfvvwwwwwfvvvwvwGwgwwgwwxxwwxgggvvwwfgvwwgxwwxxxwvxxwwxwwwvxwxxwxwwvwwwgwwxwwgwwuwxwxWwwwwvwwwxwwwwwwhhwxwxgvwwvwwwfwvvvvwwtguxwwwvuwfwgwgwvgwwvxwxxgfwfxwwWwxwwwxwvwwwwxwwvwggwvwwgwwxgwfgVwWgGfwgwwxghxwwwgxwxGhxVwwggxwwwwvvwwgvvwwwwgwxhXwgxxwgwxwxxwxxwxwwxwvwxwwggxxwfxwxggxgwwgxgwxxxwwgwwxwwxvwwwwggvggwvufwgfWvgvwwWvwwwwwwwwvwxvvwwwxwwwxvwwwwwwgwgvvwwgfwwfwwwfvwggwgvwwwvwwwvwvwwvvvwvxwwvggwwwwwwfwwwgvvwwwxxwwxgwwhwgxwgxwxxwxwxvxxxxxxgwwwwwwxxwxhwxxhwwwwwvxxvwwxxxwwxwwwxwgwgvwgxgvwgvgfvwgwwwwxxxwwxwxwxxwwwxwwwwgwwwwwxwwgwwwxwwwgxXxVwvwxvwwwwxwwwwxfwxvwwwhwxxwfwwgvwxwxxxxwwxwxxxwwwwvxxxgwxwxwvwywxwwwxxwxxwwwwwxxvxwxwvuwxgwvvwvwxvwgwwwwwvwwwvgwwwwwxwwwwxwwxwwwvwwwwwwxwwwvfggvfdghwvwvgxggfvwwgwwxwgwwvvwfvwwwwwwwwwwwwwxwxxwwwxwxwvwxgwgvvwwwwxwwxhvvwwwwgwwwwwxwxhwwwwwxwxwwgwwwwwwxfwxxxwxxxwvwxwwxwxxwxwxwvfgwwvggwwwxggwtgwxwwxwwwwvwxxwxxwwwwvwwwxxwwxxwgwwvwwxvxxxvxwwfwwwxwwwwwxxxxfhwxxvxwwxwwxhxwxwxwxwwvxxwxwwwwvwxggwwvxxxxxxxxwxxwwwwgxxxxxxvxgwxxwhwwwwxxxwxxwxxwxvwgvfgWwvwVvwwxWwxwwwvffvuwggvwwgvvwwxwgvvgxxvfwVvevfwwvggwfwwwwwwwwwwwwguvvvwwwfvgggwwwfvxvwwxWwvfwwgvhggvxgwwvxwgwwxwwwxxxxfwwwwWvvwxxwwwxwxgxwwwggwvxwvwxwxwwxwwwwwxwwxxwwwxxwxwvwvgggwfwwxxfvwvwvwwxwwwhvwvwwgxxxhwwgxwwvwwxwxxwgwwwwxwgxwgxwwwxhwgghxxwwwxwwvghwwxwgwvvggVgvwxxhxwwgwwwhVwwxxxxxwxgxxwvwxwxwwxxxxxwxwxwhxwwxwxwwwwxwwxwxgwfuwwvwwwgwWvwwguwwfvfwwwwwwwvgxwvgvwwfwwgwvwwwvwvvvfvffguvvfwvwggwwwgvwvgwwvvxvfuvwvwgvwwWvwvwwwwwffwwwwxxwvwwwxvxwgwwwwWfwvwgwwwgwwgwwxwwwwxwxxwxwwwvvwwwgxvvwwwgwxwwwvwvxwvwwgwxwwwwxwwwwwwvwvwwwvwwgwwgfgfwwwgfvxwgwwuwfwvwwwgwggvgwgwwwwhxwvvvwwwxwwxgxggvxxwxwwwwxwwfwwwxxWgwwxwfwwgxwhgWxwxvwvwvwvxwVfvwwwfxwwxwwwxwxhxgwwwxxwwxvwwwhhxwwxwxggvwwxwxwxwwwwvxwxxwwwxwxwxwwvwwvwwwvfvwxvfvwgvwvuwwgxxwgvwwwgggxgggvggwvwwwwwwwxfwvfwvwwwvgwfwfwwwfvufwwvwvwwvvuwwwwfwwwwwgxvwwwxwvwwxwggwwggvxfwwwwxewvWvwwxxwwhwwwvgwfhxwwwggxwwxgwgxwxwxxvwwwwgwxxwwgwxgwwxxwwvwwwfwxwhxgxxwxgwwxwvvfwvwxVvwfwwwwgxxwwwxwvwfxxgwwwxwwwwwwwwwwwwxwwwwxxwwvgvwwgxwgwwwgwwwwvwgxfwwwxwwwwwfwxwwxwwwwwwhxxxxwxfhhhxwxxwwxwxxwxxvwxhxxwxxwwwwgwwwwxxwxhxwwxxwwwwwwxuvfwwxwvxwgwwwvwwxwwwwgwwwvxwwxwwgvxxxwvwwwfwwwxgvwwhwxwvvwwwfvvfwuvvgvgvwwwwgwwuwwxWfwwgVftuwwwwvwwfgvvgwwvwxvvxgvwwvwwfFwwwwhwxgwgxwwwgwxxhwfxwxxxxwwxwwwwwwwvwwvvwwvwwxwwwwwwwxwwxwgwvvxxgxvxwgwgxwxwxxxwxwxvwgwvvggwuwVwwxwwwgwwxxwwxwxwfwvwwwvgxxwwwwwwxxxvgwwvwwvvwwwwwwwgxwxgwwgvxxWwwwgxgwxWxwxwwwxxxwwwwwwwgwwwxxwxxxvwxxwwvwwwhxhxhvwwxhwwxwwwwwwwxwhwwhwwwxwxxxxxwvwxwwxxxwwwxxhxwxwguwwwWgwwwwgwvfFwwwwxfwwgwwxwwvwwvxwvvgwhxwxxwwwvggvwwwuvuwvwWvgwvwgwgWvgwwwwfvVftuwxxwwvwxwwvhwgwxgwwwwwwwwwhwwwxxguwvXwwwvwwhgxhwvwxxwxxwwwwwwwxwxwwwwwwwwwwghwhgxwvwwwwwvwwwwxxwxxvxwwvwwwxwwwgwwwwgvuwxxgwwgwxwwvwxwwwvxwxxxxxvxwgwwwxxwgvwwwwxwwwwwvwgwwxggwwwgxwxwxwwwwxwxwgwgxwhxwvwwgwwgxwwxxxvwwxwxxwxhwwxwhxxfwwxwggwwgxxwvwxwxxwwwwwwwxwwxxwvxwxwwvvwvgxxxxwvxvvvvwwwvwwwxwxxgwwvxwwwwwgvwxwwwwwvwwxvvvwgvUuwwfwvvgxwWwwgwvgxwwwwffvvgwwwwwwvuwwvwwxxwwwwvxwwwxhwvwxwuwwhgwwwwwgxwwxwxxgvVgwvgwwwwgxgwxwwwwxwwwwxvxwxxwxwwwgvWwgxvgxwgwxwwxwwgvvuwhgxxvxxwwxxxxwwwwwwwwwwwwwwwvwwwwxxwwggwxwewhwwwfwwvwxxxxgvWvwxwwwwwwxwxxhxwwxxwwwxwhxxxxwgfxwvwwwxwwxwwxwwwwwgwxwgxwwvwwggwwvwwvwwvgwgwxxwxwwwwgvxxwwwwgvVevvvwwgwwgwwvwfwwwxwwwvuwwvxwwwxwwvewwvvxxwxwwwuwxwxgwwwwxxxwwwxwxwwxxwxwgwwxxwgxxxvggwwwwxxxxwwwxwwxwwwwhwwgwwvWxxwvwxwgvvwxvxvvvwgwwwvwwxwxgvvfwxwvwwwwvwwxwwxxhwvwvxwwxwxwgvugwwwwvWwvxhxwxxxvhxvxgxwxwwxwgxxWwwvwwxwwwxvgvwwwwxxxwxxwwxuwgwwwvgwwxwwfwwwxwwwwwwwwxwwwwwwwwvwgwwxwwwxgwgwguvwwgwgwvewwgwwwgWftuxwxuwwgvwwwgwwxvgvvxwxgwwwwwxwwwfvxxfwwwfFgxxxxxwxxwvxxxxxxxxxxwxwggwvgwfvxwwwwwwxxxwxhxwwxwxwwxwwwwggvwgxwfvwgwhwxxvwwwwwwvwgxhgwvxxwwwgwwwwgwwgfwhfwvwwfxxwvxwgvwxwwfwwWwwwwgvwhgxxwxwwwwwwxgxxxwwxhwxvxwxwxxxxxxwxxwgvxwxwxwxxhxgxwxwxwwwwwxwwvvwwwfFvvwwwwwwvgfvwwwwxwxxwvxxwxxwvxwwxwwwwwvwwwwvVfduwwgwwvwwfxxxxwwvfvwxvwfwwvxgwwvvwgwwwwxwwfvvwwxwxwxxwwxwhvxxwwxwxwwxwxxxwxxwwwwwwwwwwwwxxwwxxxxwwxxxwwwwxxwxwwxvwxwxgwwwfwxwvgwhwxxxwxgwvxxxxwxxxxxwxxfwfvwhgwhwwxxwwwhwxgwxwwwwwwxxxwwfwwxxgwwxwwvwwwxxgwwvxwxwxwwxxwgxwxwxwwxxxxxxwxxxwwxxwxwxwwxwxwxwwwxwwwwwwwvfvwwwwwwgwwvVwwwgwwxgfgxxgvwgfVwwvwfwwwwwgffewgfVuuwUvxgfwwgvfwvgxgfwvWgvwwfwwwwWvwfxwhgxwhgwfwxwwvwwwgwwvgwwwvWfwgwxwwwhwxWvfwxxwxxxghvgwvgwwgvwgwwwwwwwwwhwxgxwxvwxwxwwwwwggwwggvfwvvxvfxhwvvwxhwgvgwwwwvvwwwxgwwhwwwwwwgwwxwvwwfxwgUwwxxhxwwwhxfgvwgxwgwwwwwwgxxxwxgwfxwwwwfwvwgvwggwvwxwwxxwgwxxwxwxwxwxxxxxxwvgvxwwfxwwWvwxwxyvxgwxgwwhwxwxxhxxxxxxwwwwwgfWvwVdvgefwgfgVvfwwgwvwgvVufwwvwxgvwxggwwwxxxxwgVfvdveuFuUevwvwuvfwgvVVvWwfwgwfwxVewwxwxwvwxgGfvwxxUvwwwwwguwhwxxggvwxwgxgxxxxwvxwwwxxxxxxxwxhxxwxxwxxfwwwwxxgxwwwxxwxxvwxxwxxgwwvgvffwvgfuvgwwuvwvwwwwugvhwwWfuvwwgxuwxxvwwwggwgxwwvwwwxwffwWwgwwvvhvwwXXfwwwghwvwwwwwxWvwevgWgwwWWfwGvvhxxgwwwwxxwwwxwxxxwwhgxhgwxwwwwwvwxxwhwwwgxwxwwwwvxxxwwwwxwxxwwxxwxwxwwwwxxwvwvxxwwwvwwwwwwvwwxwgxhvwwwwwwwwxwwwxwxwwxxgwwwxxwwwxywwxwwvwwxxwwxxwxwwxwwwvwwwxxwwxxwwvwvwwxxwxxxwwwvwwgwwwwwvxgvwvwwwhwxwxwwwxwxxxwxwgxxxgxxxxwxhvwwvwxwxxxxxxxxwwwwwxwxxwwvwwxwxxwwxwwvxxxwxwwwwwxwxxwwvwvwhwxwwwvvwwxwwwwwxxxxwxxwwwxxxwvvwwxxxxwwxxwxwwwxxxwxxwxxwwvwvwwxwxwxwxwxwwvxwwxxxwyxxxxxxxxwxxxxxwxwwvxxwwwgvvxvwuwwvgvvvfwfvwvuwxxgfwwwwwggwwwwwxwwwwvxvevwvwuvfvghuvvwvwwwgwwVvfvvvvwwwwwwwwvvgwwwgwwwwxwvxwwvwgwwwwwwwxwwxxwxgwvwvwxxwvgvgwwwwwwxfxwxfwwxxwwvwxxgxxwwgwvguvvxwvvwwwuvwvwwwxvwfwvwvvvwwwxxwuvgvvfwxxvwwxwwwwgvwwWwwwwvgxwwgxhefvwxwvfxxxvxwwggXVwwwhvwxwwxwwwwuvgwwgxxxwxvgvwxwwwxxvvwvxvwwxxxwwwwwwhfxwwxvwwxxxwxwgvgwxvxvwwwgwvwwvfuwwwvwvwvvwwvwwwxwwwgwfvvxwwvxwvvgwwvwwvwwgwvvwwvwvxxvwwwgwvwwwwwgwvvwwwwwvwvvwwwxwvwwvwgwvwwxwhwwhwxwwwgwxxxwwwwvwxhgwxxhwwwwwwwxwxxwwxhwwwwxxfwxxwwwxwxwvwwwwgwvwvwwxvwxuvuxwwfwwwwwxxwxxwvvvwwwwwwwwgwwwxwwhwgwghexwwvwhwvwwwwwffwwxvvxwgwwxxxxwwxxvxwvwxxxxxxxwwuvwxxxvxxwvwwxwwwxwxwvfwwwwwwxwxgxwxgwgwgwgxwwgwwxwgwwwwgxwwwwwwxwxwvxxwwwgxwvvwwggwvwwffwwwgwvfgxxwgwgugwwguvxxxxfvfgxxxvwwwwgfvwxgugwgwwwwhvwxwxgugxvhwxxwwwwwwxxwwwwgwxfwxwwxgwwxxwxwhwwxwwgxwwvhwwxhfgxwgxwwxwwwwwwxgxwvwwxwvwxxxgwwwwgxhwvwgwwwgwxxgwxgwwgvwvghwvxwvwgxgfhxwhwfvxwwwwwwwvwwxxwwgwwvxxgvxxxwxxwwxxwwvwwgxgxwxgxxxwgxgxgggxgwwwxxwxxwxwxgwvxxvwwxwwxwwxgvwgvgvxgwguwwwwfugwwwvxxgvxxWvugwwwwxwxxwwgvvvvwvvfxwhxeevvwwgfgvwvwWfuVfefwgvwwxxxxggvwwwwwxwfvvwwxwwxwxxwvwwgwxxwwxwxxxxwxgxwxxxgvxwwwwxxxxwxwwwwwxxwwwxxwwwwvvwvwwwwvwxwvxwxvwwgwwvxxxwxwwwxwghxvwvgxwxxwgfvxxwghhfwgwvwgfgvwxwwwxxwwvxgvwxgwwvwwVgwxwxxxwxwxxgxxxwggxxxwwwxwwwxxxxwwxwvwwxxxwwwwgwwxvxggwwwvwwwgvvwwwgwwwwwffwwvvxvwuxxgwwxvwwgvwwgwwxwwvwffvvvvfwVesdwgvvwwwvvugwwvfwvvWfuewwwwxgvhvwwwuwxgwxggwwguhWUwvwwwgwwwgwwxwvxwwwwwwwxxgwxxxxwwvwWgvufvwwwwxhwuwxwvwwwxxwxwwwxxwwgwwxwvxwuwxwwwvwwvwvwwgvvxwwvfvtuwxxwxgwvwwwgwhxwgvvxvggwhwwhwwvvwwVwuvwvwwwwwFwvwvxxwwwwwwwgxwwwwwvwwwxwwhxgvvwwwwwwggxxxgvvvwxgwxhwwxxwxxwwxwXxwwhwxxwwxwvwwvwwxxvgwwwwvwwwxxfxwwwwxwwwwwwxwwvwwvgfvwfgfvghwgwwwwwgwuvgwwwwwwgWUvwvwwwwwwwgwwwwwwxxxxwxvwvVesdvwwwwgwfuvwgewxfwwwgwfwvwvwfwgwwgwwwwvwwwfgwwwvwwwxhwvwwwxwwwwwwwxxwxxwvwfwwwwwghgwvxwxwwxxvgwwxwwwwwwgwwxwwxwwwwwwwwvwwxwwvwwwwhgwwxwxwwwwwwwwwvggwxwfvtuwwggwgwxwwwwwxwwxwwxwxwxwwwwxxwwuvxwvgwwvwwvvxhgwwgxwxwxwxwwwwvwwwwxuwwwxxwwxwwwxwwwxwwhwwxwwwwhwxxXxwxgxxxxhgwxwxxgwxgwwvwwwwhxgvwwwxwwxxhvwgxxxwvxwxxwxwwxgwvwwwwxwwwwwwwwwgwxwwwwxwwvwxwwwwwwvxxwwwwwxwwwwwxwwwwxxwwwwxxwxwxxxwwwgwxwwwxwxwwxxwwwwwwwwxwxwxwwwxxwxwxxwxxwwxxgwvwgwhwxwwvwwvwwxwxxwxwvwxwxwgxxgwwwxxxwwvgvxgxxwwxwwxwwwwxxwwwxxwxxxwwfwgvwwxwwxwxxxwwwxwxxwwwwwwxxwwwwxwwwwwwxwwwxwwgwwxwwwwxwvvwxxgwwwwvxgwwwwxwwwwwwwwwxxxwxxwwwxwxxxwwxxxwwwxwxwxxwwwxwwxxwxvwvhwxxwwxxwxwwwwwxwxxwwwgxwwvwxwxwwxxwxxwxxxxwwxxxxwgxxwwwwwxxxxxxgwxwxwwwxxhvgxxwxwwuxggwxwwvfwxghwhgwvwwgxvxvvwwwvxvgwxxgewhffvwxWVgwvwgfwwwWghfwvwvvvwxgwguuwvwffwgwgwvwhxgxxwwwhggxwwwxxxghxxxxwxwwxhxxwhwwvwwwxwxwxhgxwwxxwwxhxwxxxhxwxxxhgxxwxgxggwvwwwxwhwwhhwxwxvwwvwwgwwxwwgxWVwvwffxxguwvwxwgwWvwwwuuwxxgvxwgwxggfxxwxxvxwxXxxwxxwhwxxwwxxxxxxvxywxgxwgwvxxwwxxxxxxwxvxwxxxxxxwxxxwxgwwxwxgwvvwwxxwxwwwwwxxhwxwxwwxwgxwwvfgfwgwgwwwggVwvWgwwwgwXwwwgxwwwwwgwgwwfwwggwwhxwwxwvvwxwxwvwvxwxxxwxxwwxxxhwxxxwxwxwxxxwxxxwwxwxxwxxxwxxwwvXgwhwxwggwxgwwxwxvhwxwxxvwwwxxxxwwwwxwhwvwxgwwhwwwxxxWwxgxwwwwggwxxxxxwwhhwxxxxxxxwxxwxxwxxxwxxwxxxxvxwwxxwwvxxxxxxwwxwxxhwxxxuwgxuvfwwwgwwvfvvwwwvwwvwwwwwwwwwwvwwwttvwWvfwfuwvwfvvffgWuwgwwxwwgwwvwfwxxxxwfwwwvvfwxvfvwwwxuwwgwwwwxgxxxvwwwwwvgvwwwwvxwwwwxwwwwxxxxwuwwWuuwwwwwggwwghfgwwwfwwwwxxxwwhwgxxwefvFgtwwgvwwgwWuhxwwwgwxwxwxxxxhwwwxxxxwwwfvwwwxwwvwxwwwwxwxwwwwwxxwxwxwwwxvwwwxwvwVwggfwwxwxwwxvgxwwxwxxggxxgxwxgwwywwweufwvvvwvgwwvwvwvvwwwwwvwwwwuvvhwwxvwwwxxweffvuvvffwffwwwvvvxwwwwwwwwvvwwwwgwxwwxxwwwwwhwxwwwwvwwwwvgwwwwwxwwwwwgwhwgxxxwxhwxxxwwgwvwxwxxxwvxwxwwxxxhxxwxvxwvfwwwwwwwwwvwwwwwwwwwwwwwwwwxgwwwxwxxwhwgvvvgwwwwwwggwwwwhxwwwwwxgwwxWgvwxwwwwwhgxwwwvvgwwwxwwxwwwwwwwhxwwxwxgwxxxwwwwwwxwwwgxvwwvxwvwwwwxwwwwwvvfxxvxxxwwwxwxwwwwwxwwwwwvvxwwvvvvwgwwwwvwvfvvwwwwwwwwwwutvfwwfvgeuuwwwwWewwwgwgwwvwvwwwgvwxvwwwwxwwwwwwwwwwwvfwwxwxvvxxxwwgwwwwwwwxwgwvxwwwvwwvwxxxwxwxwgwxfwwxwwwWvwwwwvgvvxxwwwwxxwwwvwggwxwggwxwwgeeuwwwwfVwdwvwwwwvxwwxwvfxxvwgvwwwwxgxxwxwwwwwwwwwxwwuwwwxwwvgwwwxxwxwxvvwgwwwwwghVxhfwwwgwwwxgwvhwxwwxxeuvgwvwwwgwvwvWwwwxvgwvwwwwwwwhgwwwxxxxefuuwwwvvvwwgwffefwwwvwvwwvwwwwxxxvvwfwvwwwwwVwxxwwwwwxwwgwxwwxwwxwxwxwwwvxwwxhxwwwxwwwvxxxwxvxvvwgwvwxwgwvgwxwwvvwwwwwgwvwwfxwwwxwguvwgvwgvwXwuwgvvxgvvwgwxwvwxwxhwxwwxwwvgxwwxwxwwvwwwwxxxxwxxwxxxwwwwwwwwuwwwwxwvwwgwwwxxwwxxxwxvwwvgghwxvvfwgwwvvvvwwvwggwwwwghxwwxwxhwwxwgwgvgwgvvxvgvfvvffwWuwwwhvgwwvwgvgwwwwxwxwxwwgwwgwwwxxwxwvwfwhwwwwwwgwwgwwxwgvvwxwxwxwxwwgwvwvwwwwwwwwxvfwwxxvvxwxxxwxwwxxwxxxxxwwwvwwwfgvwwfwwvwxwwwwvwgwxvwhwwxwwwvwwxxxxxwwwfvxwwgwwvwfwvvWgwgvxwvwwhxvwgwxwxxwwxhhhwgxgxwgvgvwwwwwwgwwwwwwwgwwwxxfwwxxwxwwwxwvfgxfgwvwwxvwxwwgXhuxwxgwvxwwwxwxxxxxwWuwvfvwvgveuvwvggwwvfvwvwwgwwxwwwwvwhwxggwwxwxxwefwgfvvvfvefvwvwgwgwfwffwxwwfvgwgwvxwwgvwvwwwvwwxwhhgwwgvgwwwwwwvwgwWfvxwvxxwwxxxxwwwxwxxhgxxwxwwvwuwwwwwxxwggwwwxwwwwxwwwxxwxwwwwxffwgvvwgvuwffwvfwwgwxvwxhvwgwwwwwwwwvwxxwwgwxxxxvwxvvvvwwwwwwwgeewvgfggwghvwwgghvxhwwwwwwwfwgwwxwwwhgwxxwwwwwwwgvwugwwwwxwwxwfggwgxvwwwwwxwwxxxxxxwxxgvvwwwwwwhwwxwgwgwvvxxxxxxwxxwwwwwuwgwVvgwvgwvwfuvwvgwgwxvvvvwwwfxwvvuxwxxusvvvguvvwVgwgfftwfgewwwwgfgevwvvwwwwwxwwwwwwxwwwfgwwwwwwwwwgwwwwxxwfwwwvwxuwwwxhxxxfggfwvwwwvxxwwwwwwwvgvfwvwwwwwvwwvwgwxwfvwgfvwwxwGfvwgXgwvvvwuwwwgwxgwvxwxwgdfvghfwwxwUwcgwvwwwvwwwwxhwwwgxwvwwvwwwfwwwxwvxwhvwwvxxgxwwxwxwvwwhwvvvwvwwgfwwwgxxvwggVxvwvxVgwwwwxgwwgvWxwwxxhgwwvuvfwggguwwxvfggwwvwwxxfgwvwwwwxvwvxxxwufffewwwvwwxfuwwxwvggwwwwfvvfuwgwxwwwvgwvfwwwwwvwwwwgvgxwwwwwwxvxwhxxwxhwvvgxxxwwwwwxxxxwggwwvhwwwwwwwwwwxwvwwxxwwwwwxxvvvvwvwwwvgwvvwwxwwxwwwwwxwwxwwwvwwxvwhwwfvwwwvwwwvwwvggxxvvWwvvvwwwwvwxwxxwfgVwwwwwwgwvfwwwwxxwwvwhwwgxwwwwxxxxwxwxhgwxwxhwwxwwxvwwxwvxwgwwwwwwxxgxwvvggwgwwxggwuwwwwvggvwvwwgwwvvvwwwwwwvvgvwwvwwwwwvwwwvgvvvwwgwwvxwvvwwvvwwgvwwwwfUvwfffUeufgvwvwwgwwwvwwwuUvuwwwwwwvwwwwwwwvgwwwwwwwwwwwwgwwwxwgvwgwwxxwwwwxhhwwvvvwwwwxvVwuwggwwwxwwvvwxwgwvwwwwxxfwwwwwwfwwfvwvfwvvfwvwwwwxwwwwgvfwvwwwgwwwwwwwxwwxwxxwwwwwwwwgggwggggvxXvvfwwgwwwwwwwwhwhxwwhwxwwwwwwwgwwfwvwwwxwvvggxwwxwxwwwxwxwhwwxxwwwwgwwwxgwwvxwxghgwxxxhxxXWwxwwWxxhhvwvwvwvwEdgwwvwgvvvwwVuuwgvxwwwwvwvfwwwfvvxvwwxvwwwxwwgvUUgeuvwvwvwwvwSSvewfvgwvvgwxwvwwvvwwvwwwvgwwvwwvvwfxgwwwvwwwvvwgvwwxwvwwvwxgwgwwwwgvxwxwwwwwxxwwwvwwwxhwhvwwwwvwwwwvgwwwgwxxwwwxvvwxwwxwwwgwvwwxwwwxvwvddwwxvweuvwwfvwwwxwwwwwwwwxgwxvwwwwwwgwxvwwwwwwgvwxxwwvwwgxgwwwwxgvwwwwwwxwwwvwwwwfwvwvwwvfgxwxxwxwwxwxfxwxgwxwxwxwwwxwxwwvvwwxxwxfxwxwwxxxwxxxwgwwxwxwwwwxgwwxxxwwwgvxxfgvxuxwgvwwwwxwwvwwwwvxgwwgggwwwvwgfuwxuwwwvwwvwxhwgwgwwgeuwwgVwwvwvxVuwgwgegwvuxwvwwvwwvwwgwvwwfwvwwwwgwwggwvwgwwwxxwvwwwwxwgwwwxxwwwwwwwwwxwxxxwgwwgwwwwvvwwwgvvwxxwvwvwfwxwwwwwwxxxxwvwvwggwwfxwwwwwUvvgxfgevwwwwwwvwxxwwwwvxwwvwxwxxwvwghvwwwuxwwwWfgxvwwwgxwfwwwwwwwWwwwwxxwxwXwgxwwVvvwvwwxxxwwvwxwxwvwwwxvxwxxxxwwxxxwxwxxwwxxwxxwwwxwxwgwwuwwxxxwwwwVvwxwxhwwxwyxxhxwwggwggvwwwwgVwwWwwfvvwgwwwwwwwvwwwwuwggwwwxwhvwwwgwgwfewvvfvvwwwwgWvwwwggwvvwwwwvwwvwwwxwwwwwvwwgWwwwwxhxxwwwwvwwwwwwXwxwwwgxwxxxwxxxxxvxwhwvwvwwwwwxwwxxhuwwwwwwwwwwxxwxxxwgwwwwwwwwwwvgwwxwxwwwxwwwwwxxwwwwwwwwWxwwgXwwgwwwwwwwvwwxgwwxghwvvxwghxwhxwwwgwgvhhwgvwWwwewuxwwxuwwwwvwxwwwwwwwwwwxwwwxwxwxwxxwxvwxxxvgwxwwwgwxuwwwfwxxxwwwwwwXwxwwwwxvffvfvvvVvfVuwvvvgwwwvvvwwvwwfveVwvvvvxwxwwwuwvvwwgwwwVfeevffwfvffwgvvvgfwwxggfwuwgwwfwffffuvgwvwhfwvwxwwwhxwwfvvwvgevuwgwvvWfwwvwwwwwxwuwfwvvwwwgwwwwwwvwgvvvvgfewwxwgwwvwxxwvwwfvvvgvewwwffwwwhxhfxwwwxxgfxwwxffvgvvfvwfwwwvwvgfvwwvwwwvwwxwvvfwxwwwwwwvxxgvvvwwxxxwwwfvvgfguwxxgwxwgWvfgxghwvggwwghwwwvgwxwxggewghxwfghhefwwwvwvvvxwvwwwgvwwxxwwwgvxxvwwvwggxwxwxwfwwxwxwwfwgweufxwwwgwxwgwwwgwwxvxgfUxwwwxwgwhgUwwgWwwwwxwxxwwwwvwxfvwvvfuwVwwwvfgvwwfwfwwwvxuwVgvfwwxwwwxgwwwxwwufevfvvffwvwgwvwfwfwwwwwwwvwwwwgwvwvwvwvwwhgggvwvwwvwgggwwvxwwwvwwxgxwxxxvwxwgwxgwwwwxwxxwwwxwwwwxxxwxgwwxwwwwwwxgxwxwxwhwwwwwwxwxxwxwwxwxvvfgvwvwwwwxvvvvwwwvvxwwvwwwwwxxwwxxxwwxxxxwwxwwvwvvvvwgwhwwwvggvwxggwwwfwwxwgvwwhwwwvvwwwwxwvvwwwwxxwxwwvwwwwvwwxwwwxwxxwxwwwwxgxwwgvwwxxwwwvwvwwwwxvwxwxwxvxwxwwxwvxxxwxvwhvwvwxvvvfffvvxwgwwwwwxwwwfvvgxvwwwvvevwwwwvfvgvvwfuevwwwwuwwwwxgxxvvwxwwxwxwwwwwgvwwWffvgwwwwhwwwwwxxfwgwxxvxwfgwwwwwwwxeewvwvwwgwhvwxxwxwwwwwwxxhxwwwxwwwwvvgwfgwwwWwvxgwwvvgwxwvxxwwxhvwwwwvvwwvvwxwgwvvexxwxwxxwxwwwvxxwwwfwgvguewvwvxxwfvwwwgwxxwvxwxxxwxwxgwvvgvxxwvguxwwgvgVxwwxxxwwxwfvvwwwggvwwwwwvvwweuffgwwwwwvfhwwxwxvwwwwggwwwxwvvwfwwvwvwxuefxwXvwxvwvxwggwxwhwxxwwwwwwxwwvxwwwwxwxwvxxwxwwvwXhvxxwwwwwxxwwwggwxwwwxwwwxxxgwuewvwwvvwwxwgwwwwwvwwxwxwvvwvwwwwxxxvwvhxwwwvwxvxwwwxxwxgwwhxwwhwwxwxwxwwwhgwwxwwxxxxwxwwwxwwxgxyvxxwxxwxxxwxxfvwVwwwvgwxwwwgwwfwwhvvwxwwfvwwwwwggwxwwwwwxwwxwgvwfgfvwvvvwwwwxgVvuwwwgfeuewvvhgewwwwwwwwwwwwggvwwwwwvwxwwwwvwwewvwvwwwwxgwwxwwwxxwxxvwxwwvgwgggfwgwwwxwxgvffwgggxwgvwvwwwgvxxxwxxwxwwgwwwwgvgwwwxwgVwvwwxwwvwwwxwwwxwxwwwwgwvgwvvxwwwfwgxxxwvwwwwgwgfexxwguWwxfxwwwxgwxxwwwwwxhgxvxwgwvwfwvxxwwvvxwxxvwwwwwwwxxhwxwwwwxwxwwwwwgwgwwwwwggxxvwwwvxwvwwhxwhxexwwwwxxwxwgwuwvwvwvwfvVvvwwwwuuwwwwwwgwgxwwwwgvxwgwgwwwwwwwwufvwfwfxvgvvwxVgeVgwegvgvvwwuvwwwwwvxwvwvwwwgxwwVwvvwwxvwxgvwwwxwxxwxgvwxgwwwwwwvwxxwwggvwxwgwwwwvwwgvwxwvxxvxuwwhwvwvwwwxxxxgxwwwwvwwwggwwwwVfevwxwvvwgwwvxwwxwxwxwwwwwxxxxxvgwwwwvgwwxvxwxwgfVwxggufgwgwuvwwwwwvwhxvxvwvwxwhvwwwwwgwvwvhxwwwwwxugwwwwwwwwwfvvxxxwwgxxxwwwxhxwwwwwhwwwwgwvgwxgwwvxxwwxxxfxvwwwvxtwvwwffwfevwgvfvwvwwwwwwwwvwwfvwwwvwwwgwwwxedfvffdvugvwvwwfwggvvxwvwwwwwwfevffvwwvgvwwwvwwwwwxwwxwwgfwwfgvwwvwwfwxwvxwwwwvvwwxxwwxxxwwxxvgwwvVvgwwwvwwfvwvwwvwhvvwuwwwxwwvxxwwwwwwwwvvuwfwvgvwwwwWvwgvvxxwwvvwwvWvwwgvgwxxgwwwwxxxxggUfvwggfwggvxwgwgwvxxhxhxwvvVftwvvVvwgwvgwgggfxwwwvfvvvvfvgwwwxwwvvvwwfwwwxxwxvxwwwxwxxxwhwwwxwwgefwvwuEwgwwhwwxwfgxhwVWxgwwwwxwfgwwxhvwxggwxwwwvtevgffwwwvwwvwvfwwwwwwwwwgwwwvguvwwuwwwxwhdUffUfvUvwwwvvggvwghwwvwxxwwgvvvvvwwvgwwwwwgwWwwwfwvxwwvxvwwvvwwxhwgvxwgwxxggwxvxxxgwgxwxwxvwwgvvxvwwwwxwwwwwgwwwwuwwwwwwxhxxwxvwwwxhfuwwvgvfwxwxwfvwuwwwfVvxvwwxfvvwwwxxgvwvwwxwwgxhfWvfvfvgxvwwwvwwugxwggwgxwxgwwWgwggwhxvwxwHhvwwwwwvxwwWwwwwwxxxxxvwhwxwwwwwxxwwxxwgxgwxxgwwwwxfxvwfwgwwwvxwwxggvgxfwgxvwwxwgwxwgvvwxwwxxwgwxfwwwgwwfwgvwvugvwwxvwgwfwgvwwfwxvvwwwwvwwwgvwvwwwxxwwvvwwfffwfwvfefwwwwvwwvgwvvwwfwvvvgvvvwhvwwwwggwwgwhwxwxwvfvwwwwwwwvwwvvxgwvxwxwwwwwwwxwxvwxwwwwwwgwvewwxfwwwwwwvwxwgwwwvwvwwhwwxxwvxwwfvwvgwgvfvgfvwwfwwwwwwwvggwwgfvvgwwwwxwvwvvwwxwxvxvxwwwwwgfvvgwfvvwfvwvwfggwwhxvwwxwwwhwwgwwfxhxwxvxxxvgwwwwwwvwgwwwwwhwxxgwwwxwxvxwwwwwxwxwwwvxwxwwwwhvwxwwfgwwvwgxvhwgvgwwwwxxxwfwwwxwhwwfxwxwwwfvvwwffvhgfwvwvgvwfvvvwvwwgwvwwwwwfggwwgxgvxwwgwvwxvfvwvvevfgvwgwvwvwwvgvvgwwgwvwwfvewwwxwwwwwxwwwwgwwxgwwwxwwwvwwwxxwxwvwwwxxxxwxwxwxwhhxwxwwxwwxwwxvwvwwvwgwwwwwxxxvxxxwwxvxwwwvwvgwwvwwwwvwwwwwwwvwwxwwvxwhwxxwxgwxwxwxwwwwgwwggxwwvwfvvvwwwwwwwwvwxgwxwhgwwwwwwxxfxwwwvxwvvvvxxwwxgwwfxwwwwxxxwwwxwwwxwxwhwwxxwvwgwwwwwwwhgwxxwxwxwxvwwwwwxwxvwwwgwwwwwgVfvwgwvwvwwgvfwwvwwhfxwwwwwgvvgvvgwgvfwwwwxwvfevgegvevTvwvwxxxwvfvwhvvgwwvwvgWwwwxvwwhwwghxwxwwwwxguggvwvWvggfwwVvvwwwwwxxxwwxgwwxxxxgfggvwwVuvvvgWuwwwwxvwwhwwvxWwgwxvwxwxxxxvxwwwwwwwhfvgfVfwuvhvfwxwgwewxwgvwvgwvwgvwwwwvgxxxwwwwwwvwwwwgvvgwfgufVxxvwhwwwwhgUwwgwwwwwwgxgwwwwwxhwxxwxwwvgefgegwgvwwgwwvwxwhvwwwwvwVfuwvvxwwxwwxwwwvwwwxvxgwgwvvvgFxxxwxwwxwfgUwxxxwxwxgwwwwwxxwxwwwWefvwUdVugvfwgfwevfwWwgwwwxwvwxgxwwVvwxxwwvxhwhgvfwuweudufvwvwvxgwXvwWwgwxvwgwVvwwwgwwhhwxhwvxxWxxgxxgvvwvxgwvxxxwuxwxwxxxwwxgxgwvgwwwwwwxxwwwwwxxgxxxwxxxwwxwgufvfvwfuvvfWwgvwvxwwwewwwgwwfuwxxwxwxxxwxwxhxwwwxwgwwhwgggwwwwwxxwhggwVxwxwvvxhwxhxhwvwxxxhgwxxwWgwxxxxxwwwwghggvvxwxxxxwwwwwxwxfwxxxwfhgwxwuxguwxxxxwwxxVxwxfxgxxxvwggvvwwwwwvvwwvwxwwvwvwvvwvwvgfwxwwvwwfvwwxwxwwxwwffvwvwfevvgvgwgwwxwxgwgwvvfuevxwxwwwwxwxgxxwwwwwwvgevhfggvvwwwwvwvwvwwfwwwvwwwxxwxxxwxwvwgftvewwwwgwwwggxxxwwwwwgwwhfxxxwgwxwhwxxwwgwvgvwwwwwvwwvwwwguwvwvxwwwwwgwxwwxwgwvxvxvxxvwxvvgwvgvvwgxxwgwVxwwggwgwvhfwfwxwwfxwwhgxxwhwwfgvwvvwwftvewwvwxwxwwvwwxwwxwwfxxvgwxwvwwgwgfwwwwwwxwxwxwwwgWwwwvfwxwgxwxfvwwwvvvgwwvwvggvvgvwggfgfugvwwvwwgwwwwwwwvwxxxwwwwetvufwwwwggwxwwWxgwvwvvvvwwhgvwwgxwxwwhhwwxwwwwwwwvvgwxwxwxxgwewvxwwxwxhxxxwxxwgwwwgxwxwwxwxvwxwxxwwxwwhxxwwxwwvwwvwwvwwftvuvxwwvwwwvgvwxwwwwwwwxvwwvwxfwgwgwwwwwhwwwwxgxxwfxgxxvwwxxxwwhxhxwwwxwwxwwwgwwwwfwxxwvxvxxxwwxwwwxwwxwxwwxwwxwxwxxvwwxfwxwwxvwxxvfvvvgffwwvvvwxvguevwvfwuwweVgvwwwvfvxvfwfvwwwvvhwwvwvvvxuevwdfwggfweVwvvwvvwuugwgxefgfvfuwwgwvvvwwWvwgxwwwwguwgvwwxwVwgwwwxxgwwwwxxgwwwxwxwwgwvvuvwxgvuwvwwwwgwewwwwwwwhvwvWwvgvhxvvfvuvwvwwvvwwgwvvwvfvvvvvgwfggfgvwvwvgwwxwwwfwwwhwwvwwvwwwvgvfwwvwwwwfwfwvvxfxuveghdgfwvgvwfxwvxghuwvwVXXehguiwuwwwuuwgvuwwxvdxvwwggwwfvuwxxxxwwwwgxwwwxwwwgwfwwxfwvvghvwxegfwuwwhxvvxwWwwwxvhwwuhwwxwxwwdwwuwfewwwuwwwwwwfvwwfwuwwvvwwxwwvvwvwwwvwwguwvvwfuvvwwwvwgvxugwwwwvvwwwxwvwwgvvvwgvwvwxvwxwwwwwvxwwgwwxwxwxwvwxxxwwwxxwxxxwxwwwwwwwwwwwwwwxwwxxwvwxwuwvwwxvvxwwwwwwwwwxwxwwxxxxwwwwvhvgwwwwwxwfxxgvwwwwwwwvxxwxgwwwvvgxwhxwvwxvwwwwxwxwwwxwwwgxwxwwwxxwwwwxwxwwwxxvxwxwuxwxwwwwwwvvfwuwwwwwwvwxwvfwwvwwgwvvVvwgvwvvfwvwxewwgffvwfvvWvwgwwwffwvwffvwfvvgvvgvVfgwxwfvwwfxwwfgVewefefvvvvwwwVfvegvewwwfxwwgvgwwWuwvwxwwgfvvwvvggwwxgwwwgvxfvxxxfwxwhwwvxgwfvwwguuewwwwwgvwvxvvvxxgwWgvgvwvwwxvwwvvwwgwxxwwvgwvvwxwfgwvwvvVwvwwwvfvvfwwxgwgwwwuvwwgwgxxwxvgwwwvwwwwvgwwwwwwvwgwggVxgwWWvgxgwvwfvvxwwwwWwxxxffggwggxwgxxxwwwgwwwwwvvvwwwgfvwxwxwwwwwwgwfvvxwwvgvxvwwwwxwxwwwxvvvvwxwwxxwwxwxfwwwgWwhwggwwwgwwwxwwwhwwgwxxwxwwxffwgfvvwwxfvf4TwgfvvfvvwxwgvfwfvuvvwEuuggwwgvwwhwwwgTUvffvfefwwuvwwffvwvvwgvwxvggvCdvevvwvvwfwwvwgwwXVhWfwwwwwwfwvxVvwwwwhWvwwwhwxwxxgfwwwhwxvwfwwwwhhxxwwxfwgefvuwwwxwxfwwvfwwwwwgwwwgfgwvwwxwwvwwwwvxwxxwhwwwwwfgfvwwwvdevvvwwffvghwwguvwgwwxwefwwxwwwwwvwwwwxgwwwxgwwvwwwggwxwxwxvwgwwVvgxgxwwwxwgvwvgwwwwwgwwwxwgwvfggfggfwgwgUvVuvwvwxwwxwwugwwhwxgfwxxgwxwgvxvxxwxgwwwwwgwwxfwxUxwvwgwwxgwwhwgwhwvgwwVvxwwfwgwwgUvgwfVvfxvxtwwvuwwvxwvuvwvwggwwwvvvvgvwwxwfvwgwwwwvvggvfgwwwwxwwvwvwffUvwgfvdfvtwwwvwwfufwvwfvgvgewEfvegwvwgwvwgwwwwwugxwwxhwxwvvvggvwwufwgwwwwwxgwwwvwwwwvwwxgwwwxwwxWwfvvefwewvvvwwgfvwwwuwwxvgwgvwwwwwwwwwxxwxxwxxggwwugwwvwwvwwfwvwwvwfvvvwuuwvewvwwfgwgwwhwvwxxVwwvwvwhgvgxgxwwwwWwuggwwxwwwxgxwGwghwwwffgxvvWwgwhwwxgWhwwgxwwgvwwgwvvvwwwwvwxuvwewwgvhghwgwwgvxxwwwxggwvxwxwvvwwgwgwwwxvgxwxvwwwgwvxwvwwwgwtwwxwhwxwgGgwwwwhgxwghxwwwxvwwwvffwgwwvvugfwffwvwvvwwwvwgETwUfewwvwvfgwfvwxvfvxvwvwwfwweUwRdutvwgvwwvwdvwvgwuvwwwvgwffgfwwggvwgwgwwwxwwwwwgwwwwwvgwwwfvvfvwwvuvwvgxwwwvfwgvvwwxwhwwxvwxxwvwwxwxwgvwvvwwgvvwwvwvvvwwwwvwwwwwuwwfwwxxwwwwwxvwwwwvwxwwwgxwfvtvwwwvwwcuuwfvvgwgwwgwwxwwwwxwwwwxwfwxxxxwwwxwxvwwwvvxwwxvvwwgwwghhwwwwwwwwwwgvxwxwgxwvfwxxghwwvwfwwfwfvwwgxwwwgwwgwvvvvwxxvwwxxxwxwxwxwwwwwwfwwwwfxvuwgwwxgvvwxwfvxwwgwwgxwwwWwwxgwWwvxvggwwwwwfwwwugggvwwwwwgvvvwwvwwwwwhwwwfwwvwvwwwxgwvwvvvvvvvwwwvfggvwgvwwgwwwvgwgvwvwgwvwfwwwxgwvvwvwwwvxwwvwvwvwwwwgwvwwwwwwvxwwwwwxvwwwhxwwxwvvgwvwwwvwwwwwvwxwvwwwxvwgwvwwxvxwxgwvxwwwwwgwvwwwwfwuvvwwvfwwgwgvwgwwwfwxxwvvwwgfvgwwwwwwwgwvwwwwxvwwwwvwwvgwgwwwggwxwgvxhxwwwghxvxwxvwfgwwvwwvxxwfwvgwwwhxvxxxwvwwwwwxggxgwwxwwxwwxwwwwxxwxxvxwvwxwvwvfxxwhxxxwxwwvwwgwwwvvwvvwvhwwwwfvuvgwvfvvwwfwwwwfgwwwwgwvggwwvwwwwvwvfuwvwwwfvvwvwwfgvwwwwgwhxxwvfugvwvvgvwwxgwvwwwvgwwhgwwwwvwwwxwfvwxwxwhwxhgwwwwghwxwwxxxwwxhxfvwvwwwgwwwgvwvwwwwxwxwwwwwwxfwwxwwwwvvxwwwwwwwgvwwwwwvwxwwgwwwxxhwwhvwxhwwxwwwwxgwwwwwwwwvwxwvwwgwhwvgwxwwwvxwxwwxwwwvwghwwwwvwvxwwwxxxvxvvwwvggwwgwxwxxwgxfwwgxxwwwxhwwxwhwwwvwwwvvwxgwxfwwwxwgxgxxxvegfwvfVuWvvewgwfwgwwwwgffwgvvgfvfwwegwwgfwwvfvwffwwwwwvvwwghvvwwwVugwfvgvffwgVewufvffgvvgfgfgfuwvvwvvfwvwgfguvwxwWwhwgwvwwwxgvgvwvvwvvgwugfvfuwxwxwwwfxwwwwwvgwwxwxxxgxhffgwgvvwfuwwxwwwfvvgwwvwgggwwwwwuwwwwwwxxgwwwwwwxhgWxwxwxhvwfvggvvwwfgvwwfvwwwwwfvvwwwwwwegwwvwwwfvvvwvggvvwxwhhwwwxwgvwwggvugwfwwwwwWuvvwhwwvgwwfwgxVwwwwwwgggguwwwWxxgxwxwywwvvwwfvfwfvwxwwgvwvwwvxgwwwxwwhwfwwxwwwwwhwwhxwwwxwwwwwxuwgwxwhhwgwwwwwgfxwwWwwwwxxgxwwxfxvvhhWhxvxwwwwfvvgvvvwvvvvfgfwffwWfvwxvwwvwggwvwwvVgugfgWvwxwfhgxwwvvwggfWvuvgwVgegvwWguwgwWwfwgvvgwvwvwwwwxgwgwwwwwgvhggWvwwwfgwwxwgwwwxwwxgwwxvvwxwwwxwgwwxxhwgwxxwxwwxggwhwwwxwwwggwvwgxvxgxvwgwwwwvwxwwvwxhwhxgxxxgxhxvxwwxwwwygwwgvvwgvwvwwWvvwwwgwvvwwgvgvuxwwxwvwwVvwgWwxxwwxxvvxwwwxvgvwwwhgwxwgwWwvwwxwwgXgwwgwhwwwghxxxxwxfwvwwxxhhxwgxwfgvwwwwhxwwxggxwvwwwxwxwwxxwwvwwwwwwwgxwxwwwxwxvxwxwgvxwggwgwxwwgwwvwwwwgxxgwvxvwxxvxwvwVwwwvwwufwgwwxwwwwwgwwwvgvvwvwwwwwwwwwwwwwwwwvwwggfuwhuggwvewwwwxwwxxwwwwwfwefffwwvxvvwwwwwwwgxwxgvvwgvwwwvwwwwwwvxwuwwvwxhwxvgwwwwxwwwVffwffwvvwwwwwwvwwwgwvwwvwwwwwuxxwhwvwxgfuvwvwgvvwwWwwvxwwwwuvgwwwvvwwvxwwwwwxvwwwvwwfgwUwwwvwgfgxwvgxwwWxhWwwwwwgvWwwhwwwvwwgxwvxwwwxxwvgvgvvvgxwvwwwwwwvvwWwvhxxxwwwhvwxxxxwwgwwwvgwhfwwgxxwvwxxxvwxwgwwwwgwuhwwxxxxwwxxgufegevwwXwgwvgvwwgwvwwxwwwvwvuvwwgwxwwvwxwvwwwwwxwwuvvvfvdevwvvwvwwwuwwgvgvwxgwvvwvvffuwvwvvwxwwwgwfvxxxwwwxwWgwwwvwfwggwwwwwvwvwwwwwwxwwwwwwwxxwwwxwxhwvwvwdwvwwxwwwwwvwwwwwuwwxwxwxxxxxvwwfwtwwvwvwwvuwvvwwwwWwvfwvwwxwxwfwvvwvxxwhvwvvwvvgwwwwvwwwxwwgxWgwgxwwwwgwwufhwxwuwwwwwvhWhvwxwwwvvwwwwxwxwvwxwwwxwwwxgvwgwwwxwhwwvwxwgwgxvwwwxfwxvwvvxxwwwwwwvxhwwhwwvwxxwwxxuwwwfwwvwwwfufwwwwgvwfwvwwwvewvvfvwwwfwfwgvgwwwfvwwwwwvgvwgWdfVfvvwgvwwwwvefvuxgvwvvvvvwwvvwuvwvwVwwgxwgwwwxwvwwwwvgwwvwxVugggwwwxwxvwvxvvxwxxhgwvgvwvvvgwvwxfgfvxwwwwwxxxwgvxxxxwwxwxwgfwwwwvWgfvfvgvvwwwwvgvwwwwvwwwwwwgvvffwwvvwwhvwwvwwwfwxwwwwwwvwwWfwgvvxgugwvxvwXxwhwxvwxwwwhhwwWwxvwwvwgXggwhwvxwwwxvfwvwwvvvwxvvvfwwfwxgwhwgvvvwwwxwxvwwwwwwwwwwwwxwwvwfwxxwwwgwvvwwwghWwxwxwwvxwwwhwxwwvxwhwwxwfwvwEcvgwvVutvvwvwvvveuvwwwwwwvwvuwvwwwwwwwxxvwwwUdvfwvvSdeuwwWugvuwvvfwvgwfguvwwvxvwvwvwwxfWggvwwxgwwwwxfvwvwwwwggwwwgwhxwwwxwwwwwwhwgvgvwwXvvvvuwwvwwvwxwvxvgwwwwwwvvxxvwvgxwwwgvwfuwvwvwuvwwvwwwwxwgwxwwwgwvtuuvhwwwxgwwxvxwwwgwwwvvwggewwwwwwwwwwwwhxwvwwggwgwwwxwwwwwwgvwwgggwevvvvwevxfvxwhwuwhvwwggvwxxvwwwgxxwwhxwxfwwwwwwwxxwwwvwwxgwwvxwwgxxvgxwxwwgwwgvfvxfwVggVVwguvwffvggfEwfgfgfvwwwwgwwvwwwwwwwgewwwwwfVVTwvUewfevgvdfgffVhgefwvvxgugwfVvvvevwwwwwvvVvugxfvWwwwggfwgvgvvVgvxwfwfwwwwggwwwvwgvvxwwwwxxxxvwvgvgvdfvwwwvUeWvuwxvfWwvwwwWUvxvwgvxwvggfvwggfwgwwwwfVwgffwwUuwwwfwgUvxwhfwefwgggfgvvwgwvfvxxxgxwxwwfvWxXfgvfvwvuWwwgfwhxwvgxhWTgvvgxwvWxwwwwvwgffxXhUwghfxwgvwgevgwvfwvwxxvwwvevxhgxffxhUwvxwwwwwwxwwxghfwwfvvwwgfWwxfwgWDxwgfhXFwgfxwfgwwvwwwwxghwwwxWWUxwwvhwwwgwuwfgVvwvwvwvvEuwwgggwwxxwwwwwwwwwwgwwwxxwxxxfVTufwefwwuwwwevfwffwwvXwgvwwwfggvvgvefwxxwfvgvxWVwxwgwxwwgvwwwxwwwvxvxxwwxxxwwxfwxwxwxhxwwwxxvwvxwfwxwwvfwwwgvwxxvxwwwxwwwwwwxwwgwVuwwwgvvxwgwffxxwwwwwwwxwwwwwwwwggwwhggwwxwwggxxvhwwwwwvwxwgWwxXfgwwgxfewwvwwxgfhxwvwwwgwgvhwwfwwvwxwwwgxxwwxxxxxwwxwwwxwwvxwwvwxxwgwxwwhguwwwwxwvwwxwwvgwwvhwwvwwwwwwwvwxwwwwwxvwwgvvwwvvwwvwxwwwwwwwwvvvwwwwwwgvwwwwwvwwfvvwgwfwwwxwwwfwwgvvwxwwwwwwgwxwwwxxwwwvwxwwwwwwwwwxfxxwwwwgvwwxwwwwvwwwxvxxwvxwwxwgvwwxxwhwxwwwxwwwwfvvwwxvwgvwxwwwwxwwwwvvvvwwwxwwwxwwxwxwxwxwxvwwgwfxfxxwxwwxwxgwgvvwwwgwwggwvxwhxwwxwwxwgvvwwwxxwvwwwwxxxxwwwwxxwwhxhwwgxxwwwxwxwwxwxgxwwvwwhgxwvwwxwhwvxwxxwvvwwfwwwxwgvwwwwgvvwwwvwwwvvwvvwwwwwwwwwvwvxwwvwgvvwwgvwwvvvvwwwgwwhgvwvvwwwwwwwwxwxwwxwwxwwwxwxwwwwwgxxwvwwwwwwwxwwxxxwxgvwwwwwwwwxxwxwgwvxwwwxwwwwwwxwxgwwwvwwwwgwwwxwxwhxhhwvwwwwxwxwxwwxwxgxxxgvwwwvxwwwwhwwxhxwwwxwxwvwwwxwwwxxgwwwxwwwwvvvwxxxwwwxwwxwwgxxwxwwvwgxxwwxxwwxwwwwxxwxwxxwwvxxwwxgvxgvvxwwxxwwvwwwwwwvwvwwwwgwwvwwwwwwwwvwwgvvwvvvvwwwwgvvfwwvwgwwwffwgwwwwwvxwgvwuwvwwgxwxwVvegxwgwwxwwhwwwwvwwwvvgvgwwxxgfvxxgwwwwvwwfvvwgwwggvfuvwxwxxxgwgvwwggxwwxwvxwwvwwvwwxgwvxwwwxggwggvwwwxgvwxwwwwwwhxwwwxvwwwwvxwwvgwfxgvwwwwwvwwgxxvwvwfhhfwwxxwvgvwvuvxxvvwwwxwxwxwvvvwxwwxwfggxxwvwwxvwwwvxwvxwvwwwwvxwvwxxxwfWWwfvwxxwwwwwwxxxggvwugvwvwhxwvwwwxxeeffgvwwwwxwwwwwvwgxwwffvvgvfxwwwgguuvvwwwgxxggvwvgwxwwwxxwwvwvvuxxxxxxgwvwxxwvwxxwwwfwgwwwwxxwvwwxvwvwwvuvxxvwwwvwwxxwvvvwwwgvwwwwwwwwxwxvwxxwxvxhwwxxxvwwwwgwwxxwwwwwwwxwvwwwgwxxxvwwwwxwxxwxxwgwvwgwwwfggxwwxwwxgxfghvewuwwwgvvwwxwgfwgfuwwgfvwVfwuwwvgvvwgwwwwwgwvffwwffegxvxwwwvgxfevwfewvfuvwVewggvfvvvvwwwWwfevvfffvvvvvwwvfvggwwvWwwwgwgfwwwwwfwwwvwvvwgwxwfxwwwwxwvwwvxxgxwxwvxxxgwvwwwwwvvwvvwwwxwvgxwwfvwgxwwwwwwwwwvwwvwxwwxxwwwwVwwwwvgwwwwwfvvvvwxfvfwwwuwwgwgwfwgvvgwwgwwwwgwfwggwwfwwwwvgwwgwwwvvvwwwvgwwhwxvWwwgwxfgfvgwwwVwxvwgwfhvwfwWhewgwwfwvwgxwwvvgxxwvwgwxwwxvwxxwggevwgwxfwwgxgwwggwwfvxwwwwxwgxgwwxgxxfxwwvxwfwvwvwwwvwgvvwwxxwwggvxwwwvwwwwvwwvvxwwwvxvVfgwfUVgwvxxvvwwwvvwwwvhwwgvvxvffwwwxwwgfuvvfUWfvwvwxwfwwwwwvVggvgvvwggvuvffvwwgwwwggwgggwxgegwwhxwwwvxwwxwwgwvwwwwwwxwwvggxwxwwwwxwxwwwwwxwwwwwgvwwwxvwwwwxxwxhfxwewwgwvwwwxwwVwwwwffxwgwvggwwgwhwvwgvvvgwgwUwxwwwgwxwwwwwxwwwwwvgwwwvfVVxwwxgwwwvwwgxwwwfwwgggghVxxwxwvvwwwwvWgewgwwwwwwxhffgxwxvwwwgvvwwxxgvxxwxwvwvwwgwufwvwwwwwwxwwgxxwxwvwxwwwwvxgwwwggxwhgxwXgvgwxwwwxxwwxwwwgwwwvwfvfvvgvxvwwfwwwwwgwwwwvvvvVwwxwwwgwfuwwfggxwvwvwwgdfvwwvwvwwwwwvwwwwwvwwfvVefvvffgvwwhxvvvVwwugxggvwvfvwwwwxvvfvwwvgwxxwwwwvwvwwwwxgwXwxwxwxwvfffwuvgvgwwwwwwggxwvfxxxwwvwvwwwgwwxxxwhwwwwwxwwxwvvwgwwwwvgvwwvgwwwfvvvwgvwvwxwvwvfgwwfwxwgxgwgfwwwfvwwwwxwgggfxhvwxwfwgvfwwwgxwxxgfgvvGxwuwgxwxgwvguvwwwwwxxwgvvwwwvwfxwwwwwwwwwwvwwwwwgwwwwxgwfvwwWxwxxxgwwfWhwdhxxwwgwxwwxxwgwgwhwwwvwgvtwwwgwwxvwfwuguwvwvwwvvwwgwvvgvvvgxwvwwgxftwwwgwwwwxwdggvgvvgvvwwwwugewfwvewgwxwwwwevUffwvgwwvxgwwugvwewwgwvwwwwwhwwwfVwwhggvvxwxhwxXwwwwvwwxxxwwgwwwwwwvxwxwvvxvgwwwwvwwwwwwwwwxwwwuxwwwxgxwxxwxvgwwxxgwuwwwwwwvxxxVwvvwwwfvwwxxwfvuwwwwwweuwuwxwwwwwwwhxewfgffvwwxwvwfvfgxwfggwxwvwgvggxwvwxgwxtVwgxwwgwwvvwvvwgwwvwxvfvwwwwWggwwxguvvvwgxxxwxwwxwfwwwwwwwvvvwwwvwwgwvwXvgwgwwhwxwvgwwwwwwvxxwwwwgugxvgwwvwfwvwvwgefwvffvffffwvvwvfwwvwwgwuwwfwuvwvuwwwwwwvfwfvwwwvgwwfdvxguwfwvuwfdgvfwufvvwgvgwwfwvvvwwwwwgffgvggwvwwgwwwugfxgvgwwwwvwvwwwwvuwvwwwxvvwwwwxvwgxwxwwwfvwwwwwvegvvwxhwwvvxxguwwgwxffvwwvwfwxwxwwwvxvxvwvwvuxvwvwwwwWewwfvvwvwwwwvwvfwwuwwgwvwwwwwwwgxwwwwvvvwwwxxwfWwvgxwewwgwwxgwwwvxwgxwhwwgwwVxhehwuxwvwxwwwwwxwvvvwwvwwwgxwwwwwxxwhxwgwvxWwgwgwwwxvwwwwxwwwggfwvhwfwwgxxwwwxhghwwxxxwwxwgwwwwwvvxuwwgVwgwuwwwwvvfggvwwwwwwvwfvVgwgvwwvwwwwwugwwvxxgwffvtvwvvxuwffdvwwfwvxwxwwgfwwVgwwwfwwggwwwuffgwvwwwxwvwxwwvwvhxwwwgxwxxxgwvwxwxwwggwxhwxxwwxwwuwwxxwwvgxwwwxfvxwfwwwwwwwwwwwxwvxwwwxwwwgwuwuwwvuwwwvwwwwwxwwwwwwwwwwVxxgwwwwwwwwgWwwgwvwxwwxwxhwwwwfxhgxwwxwwwhwwwxxwfxwXgvgwwwwxwwwvwxwvwxxwxwwvwwwwwxwxwwwwvwxgwxwxwxxwxwxggxxxwxwxxwwxxwwxxxxxwwxhwwwwwxwwwuvwWvvvwgvgfffffwwwfwvwwwwgWffxgefwvvgvUgwfwgwwwwhgwwwfdwgVegwuwwwfvwgwgvgwWgwwvgwfUvuwfvfvwvwwwgewfvwwWwwwwwwvgwfwvwwwwvuggvwwvwwwxwwwgwwwwwwwwwgvwxxxxwwhuvwgvwwvwvwvwwfwgvwwwwxgwxxxvwwwvxwwwwxgggwxwwwgwfwxwwwxvvwxfvvwwgvwffwwgwwwvvwwfVwufwwwxvwwwxwuwfwgwwgvxwwwxwwxwvgwfvxgwfgwxvxwggvGhgtfwwxgwwwfxvwwwWwxxwxwwfxfwwwwwgwxvvuwxwwwwfwwvgwvxewwwgvxxwwgvwwwxwhgwwxwxxwgwwxwvwwvwxxwwwwwwwwvhxgwwguwwgfxxxwvxwwwwWVgvwvvxwwvwggFgwwwvWggvxvfvwgwwhwwxfwwwwwgwgvgwWgvwfwwgwuvwhggFfhvgffWwgwhfwfwugwvgwgxwhhvwwwvwgwvwwwwwwxwfuvwwwxxfvxxwgwxwwgxwxwwxhxxwwxxxvwWvxwvwwvgxgxwxwxggwxwwxxxwwwwwxwxhwvgxwwwxxgwxvwxgwwwvvwwvvxxhwfwwvgwgFfgvwggGfvxwxwwwxxwxwxvwwxwwwwwxwwwgwwgwghwwwxwggwwWxheGvfhwgwwwhwwwhgwwxwhwwxwwwwwxvwfuwwxwwwxvwxwffwwwwwxxwwwxgwwgxxxwwwvwwxwxxwwxwgwwwhwwxgvwwwwwwxXvwwxvwvwwwgvwwxwwwgwvvgvwgwwwxwwwgwvxwgfvgwwwwwwwwxxxwwfwwvgvvwguwwwxwwxxwwwwwxxwwgwvggwvwxwxwxwwxwwwwwwwxwgwfwhwxwhxxwxgvxxxxwxwXwwwwuwwwxvwvwwxwwwwwwwwxxxxxwwxxWvtfwVugWVuvgwwwfwvxwwwxwwwxxwvgwwgwwwxgwgwxwxxwxxxgVVuwwwgfwVFxgwfwwwwxwwgwwxxgxgwgxxgxwwwxxwwxxxwvwwwwggwwwxgwwwwxxwwwxxwvxxwwwxxwxxghwxgvXhxhVxwwwwwvvwwhxfxwwvwwwxwwhwxwggxxxVvuvvwuwvwwgwggwwgwwhwvhwwwwwwvwwwxxwxxxxvhgvvwvwwvxvwgwwghwwwxxwwwwfwwxwgwvwwxxwwwwwwxvewxwwwwxwxwwwxxxwwwwvvwwwxwwwwwxwwxxxwxwxwwwxeWfufeffgvvwvgwwwwwwxwwwhvwxwxgwxvghwwwwxxwwwxxxwfgxxxwuggwgvvgvwggwwwgvwxgxgxwXWxhwvxxxwwxhxwgwxxwwxxwxxxxxwxwwxxwvxwwwwgwxwxvxxxwwwwvwwwwwwwuwwwvxxxwwwxxgwxxxwxvvvgvvwgfvwwvvwwwhggwwvwwwvwxwvwxwwwxwxwwwwwgwvfvwwvvvwwwwwwfwwwgwwwwwgxxxxwwxwwxwwxwvwwwwvfwwgwwwwwwgvxwwgwwwgvwwwwwwwwxwxvwvwvwwwwvwwfwxxwwxwwvgvwwWuwvgvfvwwggggxwhwggfvfwgvgwwwvwwvwwwxwxwwwwwxwgfxvgwgwwvfwwgwwgwwxwggWxhgwgwxhxxxgvwxhhwwwxwvwwgwfwwwwwxwxgvwwxgvwwwxwwwwxxwfvvxwwgwwgwxwvfghXWwvxgwxxxwwwxwxxxwxuuwvvvwvgvwvwvgfwwfvgVvuwwwvwxwwwxwxwwxgwvwvwxwxxfwffwwvvuvwvvvvwwgwfwfvwwgwwwwxwwxwwwwwggxvwwvvWwfwvwwwwvwwxgwxxwxwxxwxwxxwhvwxxxwggwwwuxvvwvwxxfwvwwwhxvxwxwwwwxxwwwewfgvgwwfevfwwwfvvgffwfvgwwfgvwvvwwxwxvgwwvwwxwxwgwhhxwvwxggxgvvggvfgwwwgwgwvwwwwwhggVweghxgxxwwwwwfwwxwwwwwwhwvghwwwwwwwwxwwuwwwwwxxvwvwgwhwxwwwxwwxwwwxxwwwxxwwwwwwwwvvggxvwwwgvxwwwxwwxwxuvwxfvvwfwwwwgwwWvxwgwgwwvxxwwwwgwwwwwwxwwxWwxgwvuwwwxgwwWuwhgfwwxxwwxfwwxwwxwxwwxxhxxgfwwwvxwfwhwuxggwxwxhfvwgwwvwxxxwxxxxwgfwwwwxwvwwwwwxwwwxxwwxwxxwwwwxxxxxwxxxxGvtwvffwWfwwvWfgxWgWgfwgwwxwvwwwxgfwxxxwxxxxwwfVxWwWwgwgwwggFGxxhwwggwxwxwxxwxxxxxwwxxxxwhwxwvwwwggvgwwwwwwxxwxwwxxwwxwwxwhxxxxwgwhwwwwwgVwvxvwwxwxxwggfxwwwxxwgwxxvwgxvyxwwxwxVfuwgwvvwvwwvwvggwwwwwwwvgwxwhWwwwxwghvwxxxvxxwxvwfgwwwwwwwwwwwwxwxwxwxxwwwhgwxwwwwwwxxwwxwwxwwgxwvwxwwwwgwxwwwwwwxvwxxvwxxhwxwwxwvwwwwwwwxwwwwwxwwxwgxwwwwwwwwheffvgvvffwfwwwWvvfwwwwwwwwggwwwwwwwwxhxwxwwvxxhwhwxwwwwvggwwwwwwwwwwwvhvwxxhwwgwvxhvwhwxwhwvxxwwwwxgWgxxwwxwgvvvwxgwxwwwwxwxxvxxwxwxxwwwwwwwwwwwxxggxwwvwvgfvvxxwwwxwxxwwwwwfewvfgTwuggffvvvVgefwgwffvwwwwvwwwVvwwwwxvwwwwwwxwwfwewUvvwUwuwefwfvfhwfwwwfwxggfvwfvgvxxvvvwxgxxwwwvgvffwwgvvwwvegwwwvwgwwgvwwwgxxwxxgwVvvwevgwvwffvvwfgxgwhxUwxwwwwxvwwhgfwwxwwfVVEgffVwVfvfvwgwUgexghVvdvfxWvgwefveuvvwwwwwwgevgxgfWwgwvggfwgfWwgwfvfvgxgwgxXxfxwhwWgWWhEvvvvwfvfwwwhgfxgwWhXUxwwgxvwvwvgvuuvwgwwwgxwvdvfxfgWwUgewWwUggfvvxxwvvwvwggfwvxgwwfvvwxvwfwfwxgwfwfvWXhdxWgDxfwgwgwwWWUxxvhwxwwwwxwwvhwwwwvuwwvTgugwvwwfevvwgwvwvwxxwwwwwwvxxwwwwwwxxwwxxgewuvfwfgvxwwwwwwwvxwwwwwwwvvwhwwvwxwwhvwwwxwwwwvwwgxvvxwwwwxwwxwwwxwwxxhfxwwwwvwxwxwwxxwxwwxxxwwwwvfEeuffwfwuwwwgvwfewfwgwXwVwvwfwvvvgwgfgwxxwxxgVgfgWxexwvxwgwvxvwWwwwvwwvxghwXxfwvwwxfxewgwwvgwgxxhwwxwwgxfhwwfvwwwggvwwwwwwwfxgfwxvvwxwwwwgxwwwwwxxwwxwwwxwxxwwxvwwhvxuxvwwwwxxgwwvxxwxvwwwwvxwvewwwwuxwwwwvwwwwfvwwvwwwvvwwwwwxwwxvwgvwwwwwwwxwwvwwwuvgwwwhxfvuwgvvvwwwwuvwvwwwxwwxwvgwxvvwwwwvvxwwwwwxwgvvwvwwwgxwuwwwwgwwvwvxwwvgvwxvwxvvvvgwwwgwwvwuwwvxxxvxwwwwwvwwwwwwWggfvuwwvvwVwwwwfwwwwwwwxxxgVfffwwwwvgvxwxwwgwxwxgwwwgxwwWfwgUxxgwfvghxuwwwwwwgwwhwwwwgvWwxgwwwgwwewfwvwwwvgxffwfwwgwwwwwgwwwxwuhvwwwwxxwgwwxxgxwhwwgwgwxgxwfwxxvwwgwxxxwgWwwwwwwwhvufvwwwwwwwxeVvvvvwhvvwvwwgwwgwwgwwwwwwgvuxwgxwwwwxwvwwguxwvwwwftwwgwvvwwxwwuwfwwwxxwxxvwfvgwvgxwxwwvuwwwfgwvwwwwvwwvgwwwwwxwwwwwxwwxwwwwwxwxxwgwwvvwwwwwwwwwwvwwwvvxwgwwxgvwwwwwvwxwguggvwuwwgwgwgxfdvVwgvgvgwwvvwxgvwgwwwvwxvxxwfWfwvfwggwwwxxgvwgxwwgwwwwwvwgggxWxvgwwwxwwwwwvwwvwxwxWxxwWhfwWgwwwwwgwxxxwxwxdgwwwwwgwwwwwxwxwxWwwxxwwwgxwwfxwwwwwgwvwvxhwwwwxwxwwxgxuwwwwwxgwwfgwwwwfwwgvwwWffwvwVwvxgvwxwfvvgfwvwwwffwwwwggWfgvwgggwwwwwvgfwwwgwwwgwxxwggggwwggvhfwwfwfwwxwwwxwhwwwwwwxWexwwwxwgwgvggwwvwwxwgxxgvxgxwxxhvxfgwgvvfgvwwvwgwwgwwfwhvgvgwwwwwxxwwwwwxwwwwwxwgxwhwwwgwgvwgFufVvfWgvwwwwgevfgxgvwvggvewwvguwgwwwgwwgxwggwwxwxggwwxvgwvggxwxhwWwfxwXxWvgwvxwwwwwwggwwWwwhghhxgXvwvxwxwwwwxggffgggwggwwxgvwgxwwwwhxwxvgxwhxwwwhxxgwfwwxhwwwvfvwwwwwwxwxwxhguwwggxwwvxxxwxwghwhwhhwwxxwwwxxwwfgvgwwggwWvxw6TvgvvVetugwwwwwxwwwxguwxxgwwxwwvxwwxwvwwWfwgwwwWvhwwwgvwwwwgxwwwwggGuuhgwwxxwwxwvxxhgwxwxwgwxwwvwwvwxwhfvxwxwgwwwgwwwxxhxwvwvwwwxgwgxwwwgfxuwvxwxvxvwhwgwvxwvxwwxxxwwgwxhhwfwFUvWvgW5edWwxgfvwgwggfwwxWvfwvWwvhxwxvgwwgwwgwxfgWvgwgwwwwvvwwwwwwwhwgwwvgVvwxxhwwwwwgvwwwwxhggvhwwwvwghwwwwgVvgwgwVvgvgvxxxwgwwwwxuwwvgwgwxxwwwxvxwgvxxxvhvxwwwvxxgxwwwvwxwwxvwwwwwwxwvwxwwvxxxggwwwfgxwvvxwvxtgwwwwvfvewwwwwffwwwwgfgvwwvwfvwwwvvwwwxwxwwhxguvwwgvvgwgwwvgfhwvwxhwWwgwxwvguvwwxvgvwxwwhwwxxgxvwfxwxfwhwwvxwvfvxxwxgwhhwwwwxxxgwvwxwwwwxxvgfvwvvgvwwwwxxwgfvgwxwfxwwxxwvhwhwwwxwxwxwwwxwvVfdgwvvvugvwwwwwfFfvgwxggwwfxwwfgVwwvwwgvgxwfvfwwwwxwwwwxwgfUvwwggwgggxhxhwggfxxhxxwgwxggfVGwvgwggxwxwwggVggfxvwxhwvwvwgvwwwwwxwxgvVvwxxvvwwfgwvWwwwxwwwwwwwvxxxwwwxVwfgxfwgwvwxWvwxWEwhewwhwwxwwxwxxxwvwwwxwxfwvwvxvwgetgvwfwgwwwwgffwwwwwwvwxwwwvwwwuxvwwwgvWwxwxhxfwWfwvWfwVgvwgvgwwwfwxwwwfvggwgvwgwwwwxwwhxxvwwvvwgvwwwvxwxxvgwvwxxwxgxxxgwvwwuwwvwwxwwwwwwxwwxwxwxwgwgwgwwwxfxgdfUfggwgwwwxUvfUwgwwvvggwgwggvvgwwuwwxwwxwxwwgwgwwfgxwwvvfvWfwWwgxxgwxgwvgfggwvwwwgxwvwxugwhHgxhgwwwggwwxwwwhgwxwvvvxvwwwxwwvwwwwwxwwwuwwwxwxwwwwxvwwwwfgvvgvxwvxwwwgxwfwxgwwxwwwxvwxgwwwxgvgwfwwvwvwfwvwwfwwgwxwggvgwuvwvwfwwgvwwwwwwvwghvwgwwxwwvfwwwfwvxfvxvwvvwvgwwwwvvfwwvwggfxvvwwxwwwvgwgwwxxgwxvwwwwgwwwvvwwfgvwvvwwwwxxwwvxwwwwxwwwxxvwvwwwwvvwwwxwwwwwgwwwxwgwwvwwwwwwwwwxwwxwhwvvwwwwwwhfwvvwgwfffgwwggeffwwfwggwgxghwgxwhgvgggwwgwwxwxxwxwhwwhwvggwgfxwwwfggwvfgvwgfxhgwwxxwfxwhxgxxwwxhwwgwwxwwwwwwwevhxwwwwvwwwvwwfgwwwvwwxxwwhxxxxxvwgwwxxwgwvxvwgwxwwfgwgwwvvwwwwfwwwxwwwxfwxwwwfvvwvgvwvvwwvwwfffvvgfvwwwvvwwvvwgfvwxgwwxxwwvwxwwvwgwwwwgwwwwwwgwgwwwvwxgwwxvwwwwwxwgwxxwwwvwwvvxwwwvwwwwxwvwxwwwxwxwwxhwhwxwxwwwxhxhhwgxwvxwxvxgwxfwwxwxwwxxwwwxwwwxwwwxwxvgfwxwvwfvgwgwwggevgvgvvggwwwwvwfevxwwwwwwwgxwwwwxxwghwxwwwxxwvwwwwwvxwxxwwfggvhxwvwwwwhwvwwwwwxxxhxwxwwgwfxgwxwgwwxwwvgwwwxgxwxxxwwxwgxgxxwxwxxxwwwxwwggwwhwvwxwxxwwxxwwwwwgwwvwwwwggwwwgfgwwgwwwgwgfevwvwwxwgggwwwwfxhfwvgwgvvvxwxwwwwwhfggefvewwhgfwwxxfuwgxvwvwvgwgvxvvwwwxwwvxxxxwwwwwwwWvggvevvwgvWvwfwwvxwwwwxxxvwxwxxxwxwxxxgfVwwvxvvwvwwwvgewxwhvwwwwvefwugwxwwxvxxwxwwwwxwwwwggvVvgvfwvVfvxxwVTvghgggwgwgwwxuwwxwgvxhwwgwxwwxwwwgwxxggwgfwwwwwgwgwhgfWVghUwgwwwxwwvgxxwwwwwhxwwwwxwwvgvfwwwwevugwwvwvwxwgwvuvugxuwgxxwwwwxvxvwxwgwwwxhxwwvvwwxfxggxwwggvdgwUxwwxvwxwwxxwwwwwwxgfgwxxVfvxWfVvwfgwUVdWwwugwwwxewvxvxxvhwwvxwwwwwhxgfWgvwxfvugewhwgvfwxwwwfwugwwgwfwuhwxwxwwxwxxwxxwxxvvwwuwvvvxxwvxwwxwwggxxgxxvwwxvvwxxwhgvwxvwwwwwxxxxwwfgfgwggxwFfuhwwvxWewWXwgWvgwwggwwewvxwwwhxxxxwvwgxxuwhvwwgwxhwgwvwwxVwhwhgghvwwwhxgwvxwxxxxxhxwxwxhwvvwxuvwwwxwxxwwxwwwwxwvxxxxxwxxxwwwwxwxxxwwwhfvxwwuvuexxxwxxvfxxvewwvwwfvwvwgwvwwwhwwwwwfvxwvvwhxwwwwwwwwwwwwvwwwgwevgwwwwwvwwgvwxwwwwxwwwxwwggwwvxxwxxgwvxwwwwvwxvwwewxvwxwxwwwgwxwxwwgwwvxvxwwxxwxxwvggwwwvgfvwxvxwwxxwxxxwwwwwwwwwhwxwwwvwvfggeuvggwfueVggfwwwwvwwwwgvhVvwwgggwwwwwgwwwwwwwwwwwwwwwfgwfgVgwwwwWvWxxwxxxwxxgxwfwwwwwwwxwxgxxghxvxxxwxwgfvwvfvfwwgwvwvwgwxvvwxwvwwgxxvxwxxwxxwwwwwwwvwgwgwwwgxgxxxgxwwwxgwwwxhwwwxhVxxwxwxwxwxxvuwwvgevvgwwWwuwvxwwwwwhfxwwwwgvwxvgwwwwvwwwwwxwwwvxwxwvwwweefgvwvwgvwwwwwvwwgwwwwxwxxxxwwwxwxgvwvwvwwwwvwwgwwwwxwxwgwvwxgwvwxwwwwvxwvvwwuwvwwwwwwxvwwwwwxwxwgfvwwwwvxxwxxxugfweegegvgxvgvvffwgVwgwgxwuwgwwwwgwwvwvgwwwgwewgxwwwvwxxgwgwwfvVgwwxWgfwwxwvwgxvgwxgWwvwwwwgxwwwxhgwwwwghgxwxwgwxvwvuwwvgwvwwgwwwvxxwxwwwwxwvvwvwhwxwwwwvwwwwgwxwvxwwxfgxxwxvffvgvvefvevggwfvvgwwwugwwwvwfeveugwvvwxvwwggvwwhwwwwwfvfvvfvvfwwwwwgvfgvwwgwvwwwwwvfgwvvvgwwwgwxwwwxwxwwwfvvwvfuwuvwwwwvVvvwwvwwvxwufwvwxgvwwwwhwwwwwgwwvwvwvwwwvwvgvgwwwxxgwvwwwxwwxwwfgvxwwwxfwwveefVvfvwffgffuwwvffwwgxvwvggwvwffwffvwwhwgghwhfufgwwhwhwxwfgggufvvgxwhgwgfugwxgwgxwgwxhgwvwhwwvhhVwgwgwxfggVwfwvvwvwvwwfewwfwvgvvvxwvwwgvgvevwwwwwwhgxfwfwfxwxhxfxwwxVfuwwvwwwgfgUwwwgxgwwxwwwwgxwwwgwuwwwwghUxxxwwwwwvfvwvvfvuewffwwvfgwwxwwwwgwxuewwwwwwxvvfwvwxwwwxvfggvvgwwwwvwvwvgwwwvwvwwwwxxxwxwxwhxwwwwwvxvwvxgwwxwwwxwwxvwwwxwwwxxwwvwwwxwxxwxwxwwwvwwwwxwwwvwwwwwwwwxwxxxvxwwwxwxuVfvffwwfvwwwgwwfvvfwwwwggwwwwwxvvwwvgwwvwwhwgvvgwwwgvgvgwwwwvgvvvvgwhvwwwvggwxxwvwwwwfwxwxggwwhhwwxwxvgwxxwwwwvgvwxwvxwwwxwwwwwxxwhwxwwwwxwxwxxwxwwwwgvwwwgxwwwwxwwgwgwxxwvwwxwxwwvxgwgwxvffxxwxxgghwgfvvhxwxxwwwwxxwvxgwwfvvxwxhwwwwvfwwwuvwxxwhwwwggvxxvxwwxwvxxwxwxggvxxxxxwwwwwfugwgwwxwwxfgvwxwxhwwfwvwwxwwhxxxxvgvgfwvwwxvwxxWwegwvxwwxvwxwxxxwvxxxxwgwwxwfgvvgVfeugwXgvvvwwwwxwwxwwwWgwvhwgxhwxxxxwwxxwwxxxxhhgwvvwwvvXwggewwwxxwgxxwxxwxwXwwvxwwwfxxxxwxwxwwvfVwegwwwwgwvwwwwwgwxwxwwwxxxxxxxwwxxwwxggvgwvguxxvgvexwxwxxxwwxxwwxwxfxxxxxgwvxwwwgwgVfufwvwgwvwxwgwwwwgwgwwxwwxwvwfwxwgxwwxwgwhgvxwwwwvwWwegwwxxxxwvwwwxxxwwwxxwwwwwgxwxxxxwxxxxxwgvhwwxxxwhXgwwwwwxwwxxwwghwwxxxxwwxwxwvwgWfehgvwhvxwfwwxxwhXwxxvxwvxxwxgxgwwwxwhwxxwwxwwxgwvgxwgvwxxwwvwwwxwxxhwxxgxxwgwwwwwxwhxxhxxxwwwwwwwgwwwwxxwgxwwwwxxxxxxxxgwwvwxyxwxxxxxxfwxwvfwvwfwwvwhvfvgwwwvgwwwwvggfwuwxwvvegwwfwvwwwwvgvgvwvwgvwwhxxwwwwxhwwgfvgvwfwvwfwggwgghwwxwwxgvvvxvfgvwwwwfgvwvwvwwwwwgwwwxxwwwgwwwxwgxxwvWvvvvgwxwwgfwwwwwxwwwxwwwwvwwwwhwxwwhwwwwvxwwwgvwwwwwwvwwvwvwwwFvfgwwwwvwwhfvVefgvvevvwxxgfvfwWwgwxxxgxxwfvwvgfwwwwgxwwfwgxhxhwgwxfwvgfgggGxwhxwxgwwwwgwxWgxfxxvwvfffwgwvggwxxwvuvxgwfwwxwxwxwgvwwwhwwxwxxwwgwwwwxwwvfwgwfwWwxhhwwWwhFxxvwwwvxwgwxwxhwxwxwwxwxggwvtvwuWvwwgwvvwwvwwgvwwwfwwwvvvgvfwtwwvwwxwggvwxvwwvxxwxwuwwevwgwvvwxwwwwwwwfxxwfuvwewWuxxwwwwwwxwwwxwxwwwxwwvvwwfwevwxwxgxxwwwxvwwxwxwwwwvwwwwxxxwvwxwvvwfwgvwxvgwwvwwwwuvwvuggvwfwwxwwwwgwwwwwgxdvvvWegwgvwwwvxvvvvfgwewwwwwwwVUvfugvwwgwxwvwfgwgVwwvvwwwwwVfwvffggwhwxggwfgfwxwxfxvwxgwwgvgGwVvwgxwghwwvwxgxhwwxxxgvwvvvwwwxxwxwxvvxwwwwwxwwwwwwuxwhwvxwwwxwxvxvwxxvwxvwgwwvXvwvhwwvwwwvwwgwgwgwwvvwvvxxwwwwWwwgwwvfwwffffvfewwfgwgvwwgwvvffvwwvwvuwxuwwwWwffwgwfwwwwggvwhwxwgvwwwVuxwgvgwvgWgwwfwwwwxwwwwvwfwwWwwwggvwhwxwwwxwgwwwvfwwgwwwwwvgvgwvwWwvxxwwwxxvwwwwwxwgvxvwxwwfwwvvgwwwwwghwxwwvwxxwxwwwwwwvvxwwgwxwWvhwxwwgvwwFfgxWvwfvgwFfvgwfWfvwWwgvgwfwwfgfgwwwwwwggvvXgwvvwhgwwwWgwvuvwvwxxxwvwwgwwxwxewfxxwvwwwggwwVxxwhxwhWxwghxVwwxgwwvwwwwvwgvvgwwgwvwVxvuwhwfxfgwxwwwxfxgxwvwvhxwwxvwwfvwwxwwvwwwwhfxgwvxwwwwwxwhwgwwhxvwxxxxxwwwvvwwwevwvvwuwwgfvvvuwwwwwxwwvwwfVvvuwvwwwvxwwwwwvxvxxvwwwguwWwwwwwvuwwwgwwxxwxwxwwwwgwwwwwwVxgwuwhwwwwwxxwwxwwwwvxwxwvxwxxgxxxvwvwwwwwwxwwgvwwgwwvwxwwwwvxwwxwxwwwwwwxwwvxwxwxxvwgfwfdfgwgvwxftvgwfwwvWwwgwfwVwvuffgwwxgwwxgwwwfwwvwvwwwwvvwxwwwfwwxxwxwwxxxxhxvwhxwxwwwxhwgXgwxfwwwxxwwwgwxxwwxxgwwwwxxwxfwxxuwfxgwwgwwwwwwgxxxxwwwwwwwwwxxxxwwxwxxwxgxvxwwwxxwwwxwwxwwxwwwuwgffwggwgvwwwuvvxwfwwgfffwWgffgUgxvwwgfVwvfwwgvxwwhwwwwffwxgfvwvwgxggwwwghwgwgwfwVwfWWfwwgwwvxwwwwgwwgwwwxwwvwggvwwwwxfgwwwvwwguwwwwwvvvwwwwhwwwxxwwxwhwWwwwwfwwguvxwgevwgwgwwwwwwvgwwwwgwxxwwggwhvwwwgfwgVegvWwvwFfwvgwgwwuwwgwgwUfvVfwgfwvgwwwwWfwgwwxWwwwgxwwgwxvxwgvfwgggxGxwxgxwxgxwvfxghGfwwwwwWwwwfwwfxxxgwxxwxxgxwfwvvwvvwvwgvwxwxwvwwwwgwfwwxvxwxwwgwwwwxwfhxwwwgwhggvwxwwgwwwvwwwwwxxwxxwwgwwwvxgwfwgwWxxwxhvxxwhxgwwwxwgwwvwxwwwweugvFgvgvvvugvgfwwvwwwxvfvwwwwgwwxggwwwwfwwggvfvhvgwvwgvwFxxwwggtfvwXvwwxwwwwxwwxwwxwxwwwfvxwwwwvfugxxwxxxxwwvwxwxwxwxwxgWwgxxwvwwfuwvwwwwwwxwxfwfwxwwwwwxvwwxghxwwwgwxWgvwvFgfvuwxfwugfwwhvgfvwhwfhwfuwxwxwwwvxxgwwwggwgggwwwhhgwxwwwgwwgwwWwwxvGfwwvgxhxVwwxvhvwwwwhwwhwhghwwwxwwwxwwwwxgwgxwwwwhwwwgvxxxwwgxvwwxxgxhvwxxxwhgwgwwwvwxwwwwxvwxwwwxwxgvwwwwxwwxXxgwgwxvvxxwwwwgwwvvvvvgwwfwwgggwwwwwwwwWwggwxwvwfwwhwwwgwwwwwgwhhxwwxvvwwvwfwfWwvvwvvwxwwxgwgwwwxxwwwffvvxvwxxwwxgxwwxgxwwgwwwvwwwwxvgwgwwwwxwvxxxgwwwxwwwwwwwxxhxxwfwvfvwvwvwvwvwxwwxxwxwwvwwxwwhgwxwxwwxxwxxgvwwvvwwfvvvvggwwwgwvggvwvgwwwgwggwgvwvvwgwwvfwxggwvwwgwwwwxhwxwwwwgwwwgwwwwxwghwgwgwgxhgwwwwggwwxwggvxxwgxwxxhgxhwwvxgwvwwvwwwxwvvwwxgwwwwwvxwvvwwgwxvgxxwwwxxwxwwxhwwwxhwvxxwxvwfwxwwxgxxxghxxwhxwwvxwwwxxwxwwvgvfWgvwgfxwggwgwgxwwwvwgfwggvfwgwwwwwwwwwwgwwvwwgwxwggvwvwwwwwvwwwxwwwwwxwgxwwwwhwwwwwwwwhgxwvwwxwfvwwwwwxwvwwxxwwgxwwxxvhxxwxwwwwxwhgvhgwxvgwwxwwwggwwvxwwxgvxfxxwwwwwvWfwfvgwfvvwwhhgwwwwwwgvwxwhxxwgufvvwwwvgvwwwvwxvggxwgxwgwxwwwwvwwgxgwgwgwhxwxhwwxxwwwwxgxxgwxwwxwwwwwwxxhxwwxggwxfvwwxvvwwwwvhwwgvwwwwwwwwxwxwfwwwwxwwxwwwvvwwwwfxwxxvwvwwwwwxwxvxxgvxefvwfwvuvggffwgVfWwwwwevwwvvvvffvwwffwfvwwvvwwvVwwwwwwfvgvwhgfwgwgfwwfwfvvwggvvwwwwvvwwwwwwvVwvvvwwvfgwwwwwvwxwhvgwggwgwwwvwvuvgwfwugvgvfggwgwxwwwwwwwwgfwxwgwghxfvwwwwvwfwvwwwffvwvvwwvwvwwhfwwxxwwhxwwhwwwwwwwwwgwvwgVewwgfgfvggwWegWvffgffwgvffgWffugggfvwwxhwvvwwwWwggwwggwvwWvvwwwfwgwwfvuvvhwwvwwwWwxgewwwwwwWxxgxwwwwwgxxvggWywwvfwvwvfgfwuxwvgvvvwgwwvwwwvwwwwuwwwwwwgxwwwwwwghuwwwxxxwwwwwwwhwwuuvwwxgwfwvwwwwghhuxxwfxwwxwhxvxggwwfvvxffvwvgwfwvgggfwfugvvhvwwvwvvwuvwwVvvgwwgwxfwhufvggvwgwwuvvwvvwvwgwvvvwwvwwvwwvvvguwwvwwVgxvwwwwwxggwuwwwvwwwwwwwvwvwgxwwxwvwwwxxwvhwwxxwxwvvwwwvvxgvwxxwxwwwwgwwwwwwwxxwwwxwwvwwxwwgxwwwwgfvuugwvVwvfwguuvgguwwegvwggvwgvwwwgvhgwxgwwwfwwwxvWggwwwwgwwgvgwwwwwwgwgwwwwgwXgvwwWghxwwvwhhxxwfgxwxxxxxwwwgwfwwwgvvvwxwwggwvwwgwgwwwvwhxhgxxvxxwwwxhvxwwwwggwwwvxwwxggwwwgvxwvwwwwvwwvvwxxgxxvxtwwgvwwgwgggwuwgwvwwWgggvxgwwggvgxwwwwxwgfwfwgwwvwgxwwWwgwwgfvwfwwWvwVvwwvxwvWgwwgwxgwwvfwewwgvwwgxvvwwwwghxxgvwwfWggvwwggvwwgwwxwwxgwwwvwxwvwwxxgwwhwwwxwxwuwwvvWwvVwwwvvhgvwwwxgvwxxwwgwvvxgwvwvvxwwwxwvwvwwgvwwwwwvwfvvfwgfUfvwfwWFvfGwgfgvVvwvwwwvvwwwTvfVwWwgggwwwhxxxwwwwgxhvwgwwxxgwwWWxxwGxwhwwhwwffvxxvWxwgxgwxggWxwhwwwhwwgvwwgfvfwvxwvvhxwxVwfVwWwwvwwgggwvwvwxwwwgxvwxwwwxxwwwxwvwwwgxwvwxxwwwxgxgwxggwwwgwxtwwxhwvgwtghwwxwxgwwwwwwgwwwgwfgwwwvvwvffwfwfgguvxwgwwgETwfwvwwvgvwxvUefwvgfxfvxwwfwwwgf6uuXwvwxgxwGwvhwgfvwwxxwgwvwwfwxwwwwwwwwxxwxwwwwxgwwgvuxfxxwvfgwxggwgwwwwgfwwxwwhxwwgggwwwvwwxwggvwfvxgxxxwgvvhwwxgwgwwxwwvwxvwwwwxxwwwxwxxxxwwwxxfwxwUVwFwvgggwgxww%udGgWwvwgwwwgvwfgfxwxwxggxwwwgwfwwgwwwwvgwwwwwvgwwxgwwgxwwxwwwwwghvxhhwgwvwwwwwwgvxxxxvxxwwwfwwwxvhwwvvwffwgwvwwxwwgwwwwwwgggwxvwwgvvhuwwfxwwwwwxwwwwwwxwwwgxwvvxwxwgwxxgvwwwfwhxgvuwxfvwwvwvxwwwuwxwvwwuwxvxuvwwfvuwwgvwvwwevvvgghwxxgvvgwgguwxwwwfxfvwwftvwgwwvvggxfwXgvxxwuwwwvwgxxxgwxxxwwwgfwwvwwwxwwwwwxwwwwfwwWwwwgwxXwxxxwhwfwvxxwxxwhwwxxvwwvxwwxxxgwvwwwwWvsggfftvewgxwwvWvvwgfVxwwwgfVvvwwwwwwwwwwvvwwxwxxwxgfFvwwU6xwwhgwwxhgfxgxxxwwwvwwwgxxhxwwgwxwxwxgwwxfvvfwwwwwwwwwwvxxxwvxxvvgfwwxwwxwvxwwxwvvwwgwgvghwgwwxgwggexwvxxgxwfwxhhvwgVwvguxxwvxgvwwwxwwwxxwwhgvufvvfgwWxwvwwvvgwwxwxxfwvgvwhwxxgwwwwxvggvgwvwwwgwxxwwvxgwxwwwwwwwwvwwvwxwwwwwwgwwwwxvgvxwxwwxwvwwxwwvwwxxwvvxwwwgwvfwwwxwwwwvxxwvwxwwwwvxwwwxwxxxwwwxwxuffffwuwwwvwxvgVwwxgwxwwwwfvvfvvxwxwxuvwwhfvwwwwxwwwvfwvxvghwwgwWgwxwvxxgwwvwxgvwwwfVgwxwwwwwghvwxwXwxwwvxwvxwxwwwwxwwwxwwxwvxwwwwwwwvwwwwwxwvxvwwgwwwvgxvgxvwwvwgxwWwwwwxxvvvgvvwwvwwgwvgxwxwwwwvwvwvwgwvgvvxwwvwwgwwwwgwvwwxwhwfwvwfvwwfwwwwwwwgwfgfvwwwwwwgvwwwwxwwgwfgwwwwxwxwwwwwwwwwxwwwwwvgwwwvwwxxwxwgvwwvwwxxwwwxxhwwvwwvvvwwwxxhwfgxgxxwxwwwwwwxhwxwwxwwgvwwUfvwgvwUuefwggwwfffwwgvwvwwWvUWgwwwgwwvwwwwwwwxxwwwwxwwvgggwgwvggfwwwwxxhXwvgxwwvwwwwwxhxwhwwwwwwwxwwwxhwxwwxwvgwVWwwwwwgvwwhvgwxxxwvwgvwwxxxxxwxwwgwwxxwwvwwvwwghwwxxxwvxxvhwwXxuxvxxxWxwxxwvwvvwvwFTgeuuwvgwgwvwwwgvxwwwfvvgwgvwwwwxvwwxfwwwwwvvgwVvuwwwwxwFdhwgfwvxxwwwwwvwwwhgxwwvwxwwwwxxxwxwgwwwwwvwvwvwwvwgvwvwgwxwwvvxwwwwwwhwwwgwwwxxwgvwfwwwwxwvwxxwxwxgwvxwwwwwwwxwfvUUg5vSVgvwwwgggVvuwwgfgwxgwxxwwgwwgvxwwvwwwfgxwvhwwgvwgwgwwgwwwwwwgwwgvwwwwwwxxwxxgvxxxwxgvwxwwwfwwwxwwgwxwwwvgwwwgwfxwwwvwvwvwwwxxwxwgwwwxwwxwgwxwxwxxwwgwvvwwxwwwwwwwgwwxxwwxwxwxwxxwvvxwwwvxwwxfvvuwwwwgwwgvvvwvwxwvwwgwwwwwgwwgwxxgwgWfwwwxWwxxwggvwwwgUvwfwxvvewghvxxgfwwwwwwwhwwwwggwwwgxwxwwwgwwgwwwvwwwwxvwxwwwxxwwwwwwwxwwxxwxxxxwgevwvwgwwwwgwwxxwxxwxwgwxwxxxwxwxxwwwwwwwgwxWewwevwvvwWgWVwvgwVwwvgxgwwwwgwfvwwvwxwvwgwwxxwwvwxwwggwxgwwwfWvwwwWwxwgxhggxxgwxwxwxwxfxwwwxxwwWwXvxwwxwwwwwwxwxwwvvvvwwvwgwxgwwwgwxxwwwwvfwwxxwwwxxxwwxwwwxwxwxwgwwwexwxxxwxwwWwgwwhxxxxwyxwxwwxwevwggvfvvwvvwwwWwwwwgwwwwwwvwgwwwwvxwwwvxwwhuxwwgwwwwvwgwgwwwwxwwwwwwwxwwwwwwxwwxxwxxxwxwwwxWwwwwgwxxwwxwwwxwxwwxwwwXvwwgwwxxxxxgwxxwXwuvwwuxwwwwwwxwwwwwwwxwhwxwwxvwxwwwwxxxwgfwvvWwfvvwgxwvVvwgwxwgwwxwhwvwwvwwwxgwwxwwwwwwgwwWgwwwwxhxwwgwxwvwwwwvgxvwwxxwhgwxwwxghxxwghhwwwvWwwxxhwgwgwxvVwwvwhxwxwwwwwgwhxWwxwwwwxwxxwxxxxwwxhwxggwwwfwwwvxxwxxwwWwwxwwhwwwwwwwxwwxwwwgwwwwwgwwgwwwvwwgwwxwgvvwwxwgvxwwwwvggwwwwxgxwvvwxwwwxwwvxhwwvwxggvwvvwwxwwwwvvwxwxxwxwxwxwwgxhwwwvwgwxxgvvvfxwxxvwxxxxgwggwvwgugxwxhwwxwxggvxwhxwxxwwgfvxwgwgwffwwgwwwwgfgwgwwwgwxxxwgwgueevvvxxwwwvwxxwgwxwxxwwxwwwwgwwwwxfxwgxxgwvgxgwwwwwwgfwwgxwwxwvhhfxxgxwvgwwwvfghvwwxwxwwwxgxxgggfuggvwvwxxwxwgwvwwxxwgxxwxwxgxwwwwgxgxgwwwwwvwWfuxwvwwwgfxxxwwgwguwxwwwwvwvgvxwxxVfefwwwgwwgvwxxwwwggwwgugwxxwwxhwvxxxxwgvxwgvwwxwvxxxwwwwwwxwwguvxxgxxwxxwxxxxxwggwxxxwvwxwxwxxxxxxxwwxwwvxgwwwfvfgvxwhwwvwwgxgfxwwxgwvWvugggvwxgxxwwwwxgvwxxwwxxwxxxxvhwxwxwvhxwxxwxxvwwwwwwwwxwwwxxwghxgwwwwwvxwvxwwwxwxxhwfvwwxwxwxxwxxxxvwwgxwgfvxxgwwxwwwwxxwfvvxwvVxuwwwvufwwwfevvvwwfvvwfvwwuwwgvgvffwxwwvvvwwwffVwgwwvwwwvvxgffwgfwwvwwwwwwwWgvvwwwvfwgvvwwfvwwwwxwvwwvgwwfwxwgwgvwwwwwwvwgwxwfwwwfwvvxwwwwwvwwggxwwvwggwvwwwvvxxwgwvvvwwwxxwxvvvewgwvwwwgxwwwgwfvfwgwxwwgvwVewwVfwgvvgVfvvvgfgufgwwwWwVfvfgvvgvvgwwwggfffwgwWvwwvxgwfvwwhwwgvwwwgwwwgxxgWwgwgxwfvvfvhwgfwvwwgwwwwVwhWVwwgfwfvwwwwvwvvgwggwvvwxwwfwwwwwwwwwwwwxvxwwewxxwwxwwvwwwwwwvfwwxfxgwwgxxwvwxvgwwwxxwvggxwwwvwwwvvvwwvwwwwvfegvwvwvwwvwUfewvwvvvwwvvvwvwwwxwvvwvffwwwwwxwwvvgvvvvwwxvwgwwwvUwwggwwwvwgwwwwwwwwwwwgVfewwwgwvwvvwwwwwwwvwwwwwwwwgvvxwwwxwwwwwwwwwxwwvvvwvwwgvwxwvwwgwfuwvwwwwwwwwvxxxwwwvxwwwgWfvfwwwfvwggvggUfuwgwVvwwgwvvvuvxvwgwvwwgxVvffvwggvxwwgwwwwwgwvvgwxxwwhwgxhgewfwwxgwvwwwwwwxgwwxwvggWVhffgwwwwwwwwwwwwvxwxVggxwhxfwwwxwwwvwwewwwxwffxvwwwxxwvxgwgwvwvwgwvvwxxwwwwxwwwwxwwgwxxvwwwwwxwwvwgvvwwwwxxgwxwwxwwgvxwxwwxxgvxwgwwwwgwwwxxwwwwwxwgvwwxwwwwgfvxwwxgwwwwwxwwxwwxwwgvvgwxwwxwwwwvwwwwwwwwxxfwxxwwxxxwgwgxxwxxwwwgvvxwwwxxwwwxxwgwxwwwhxvxhwwwhwxwxwwwwwwgfvwwwwxwwwgvwwgfwvwxwwfwwwwghwwxxwxxxwvggxhwwwwwwxwxwxxgwxwwxxfxxwwwgfhwxxxxvwvggwwwgwwxwwwwgxxhwxwggxxwwxgwxgwwvwxxwxwxwgwgxxxwxwwxxwxhwwxwxxwwwxxwxwxvwxwxgwwwhgvwwxhwvxwwwwgvxwwwwwwwwfwwwvgggwggwwwgwwwwxwwxxxgvwgwgxwwwwxvwxwwxwwxxhwwghwxwhgwwwxwwxxwxvxwxxwxxxxwxgvwxxxwwxxxwwxxwwgxvwwwwxwxwxwxwwwxwxxgvgvxwwvxwxxxwwxwxwxwxxxvxwxhwxwwwwgwgwgvvgwgwghwwvggwwwgwxxwhwvgvwgwxxwxwwhwxwwhwwxwwwwxwwwwwgwxxxwwwxhwwxxhwxhwwxwwgxwwxxwxwwwwxwwwxwgwwgwwwxwwxxwhwxwwwwwxwggxwwwwwxxwxwwgwwgwwxxwwxwwwxwxwxwxwxwxvxgvxgvxwwgxuwwwvwwgwvgewwwwwwwvvwfgvvwgvgffvwxuwvvfgwwvfgVwwwxwwgwggvwevwvfwfvvfwgxwwwggwgwwgwwvvwvwugvvwwxxwxwxxwwwgvwggfvwwgvwwxwWuwvvvwwxgwwwfwfvwwvvwhxxgxvwwvvvfwgvgwwwwwwwwxwwwwwgwwfvvwwggwwwxwwxwwxvgwxvfwfgvfegwgfvgwwfwffvwwxfvvvvxwwfgVewevfVfvvgwfwxVfVgVgwvwwwwgwgwwwwwggewwwwguggwgwxwvWwggwggwvfgxffgwwWgwxxwwvgwvwxxxxwwwgfwvwvgVwxxwugWxggvwwwwvWwvgggwwgwxwwgwxgwxvwgwxwgvvwxwfwxwwhwwwxgwuxxwwgwvwwxxgwgwwwwwwwwwxwhxwfwfxfECwvwwxfvvggfvvfgfvxwwgvwfTuuvWvxvwwhfvxgwwgvxxwxwwwggfwfvfvFveguwggwwghwwgvwwwxwwVfxvwwwxwwwwwxwxwgxwwwwgwwvxuvwwwwxxevwwxwhwhwxxvfwwxwwwhwxxxxwfwhxxwgfwwwVvevuwuwvwwxfxwvwwxwvwwxgwwgwwwwxfwgxggwwxgwwUgUEvfvfwVwfwwgxfvffvwgguwgwgggg4vdVgwwXvfwwwwwwvwgveWhfwvwwfwwgwwwwgegwwxwxwwgwvxxgwggwwgwgvgwwwfggfwxwwgvwwgwwgfvwggwUvxfvxvwfwwxwwwuwwwwwwvfwwgvfwvwwxwxxwwwwwwvwwhwwwvwfxwgwwwxxgwwggwwhgwgwwevwxwgfwwvwffvwevUvvxvvwwvwwwwwwgvvvwxwwvwggwgvhwvwwwgwxwxwwvfvwfgwxxwwwvwwgwwwvwugwvgvwwhwvwwwgwwwwwvwgwxvwxgvwwvwwwwwwwhvfwvVvvwwvgvvgwgwwfwwwwwwgwxxwwvfvfvtVwxwwwvgwwvxwxwwwvxwxwwwxvvwwfwxwgvwwgwxwwwffvvwvfvegxwvgwggxwxwwxxxfeugxgwxwwwwwxxxgwxvghxwwgwggwVvwgggvwwggwwxwxwhwffxhvwwfwvvwwwwwwxxxfvtVxvgwwgwxwwwwvxxxhwwwwfwxwxvhxwwvwwwwxxwgvwfxwwwwhxwwxwwwwxwgwuvvwffwvwvvvvwvwvvxwgggvxgwhxwggvfwwwvwwwxfgugwwwvwwvwxxxwwwgfvtWwwwwggwvwwvwwwxwxwvgvwwwwxwwvwwwwxwvvxwwwwwxvwxwgVwvxwwwwxxxwwwwwwvwxwwwwfwwxwxxxvxwgwwwwwwwvwfwwxxVvtWxwwWwxwgxwgxgvwgxhxgxhvwgwwwxwgwwvwwwwvxwwwwxwwxxwfgwhwwgwxvxxxwxxxxxxghfgxxwhwwxwvwxwwxxwwgxwgxwxwwwxxwxwxwwwwwwxxwwxwwwwwxxxwwxhxxvwwwwxfvwxgvvwXgvxugVgvfgxvgfwfwwfvwhwuwvwfwwwvwvvevevfwvwfvwxwvgvfWvwgvwgggvvhvgwwfvgwgwwgfwggvfwwfwggwvwwvgvwwwwwwwwwwwwwhegvwwwWvwwwgxwwxxhvvwwwwwwwxwxwwvwwwgxdgguwvxwWwuvwwgwxwfguwwwwxxxwwxxgwxwxxwwvvgweVwwfFwguwWxVWvgwvgvgfwvgxfVwvvgfuxvxwgvfgwwWwxwgwxwvgvwvgwwwXxgWefwwgxxfwwffhgFvwfgwwgVxwvghWgwgfXXVhgWiwxuwxgguwgxwwwguhgwwhgwgVwwxwhvwxwwggxwwwWghghgwxwhgvxwwxxwVwwvfhggxxfgwfuxwwxxwgxxvwhhwxhghwwuWwwwxxwwwwWwwwWfvwwwFwwwwfwewwxfwwWgwvhwwwxwwwvvxhgwxwgwwxwwWgvhwxwxwvxxwwwxxxwxwwwxwxwxxwwwxxxxxxxxxxxxwgwwgwwxwxwxxwwxxxwxwwwwwxxwxvxwxwxwwwxwwwxwxwwwvwwxwxxwxxwgwWvggwgWvvwwxhwvfxWgxwwwwwgvwggwxgwgwxwxwxwvgwwvggwwwwgxwhfwwwxwwhxgggxghwwhwwwwxxwxxgwxgxwwhvgxxwhwvwgwvxwwwxwwxxxwwwwwwxwwwwxxxxxwxwwwgxxxxwwxwxwwxwxgwwwuwxwvgxwwwwwfwuwwwwwwvwwwwwwvwgxwwxwxwwwwxxxwwwvwwwwuwvvgvfgwwxwwwwwwwwwwwwxvwwxwxxxxwfgwwwvgfwWwxwwwwxwwxwwxxxwxxwxxxxvfvwggwghuwvxwvxxwwgwwwxwwwxwwxxxvgvwgffwfWvwwxwggwwxwgwvxwggwwwwxxxxxxguuwwWfgfVfvxgwgwwwgxxxwWgvwxhvwwwwwgwwwwwwxxwxxxwwwwgWwwxwwwwxwxwwwwwxgwwwgxgwwwxwxhxwxwwxwxxwfgVxwvwwvwxxwgwgxxghguwfgwxxxxwxwxwxxwxgvwvgvgwwggwwwvwwwwxwgxxxxWxwxwwxxxxxxfvfeffwfwwwwxwwvwwwwxwwvwwwwxggxwvxxwwwvgwwvwwwwwvxgwvvvwxvxvxvwwxwwxwxwxwwxwvvvwvwwvwwvxgwwvvgvvwwwwwwwwxwvxwxxwfgfwgggwgfwwvxxwgwwwgwgwfwwhwxwwwwwwxwwwwwxwwxwxxxwwwfeuuvVvVvwwgxggfxwwhwwwewwxWwwxwXwwggxwwwxxgwwvvxhghxxgwvwwwwxwxgxwwxwwgwwwwxxwwwxwhxwxxxwwxxwwwwgwvwwxwwvwvwxvwwxwwxvwgvxxxxvwwwwxwuwgwwwwwwwvwwwxwxwwxwwxwxxgwwwwxxxwfwgvvwvwxxwwwxwwwvvvhgwwxwwwwxxwgxxwgwwgxwgwgwwWwgwxwfwvwxwvwxxgxxwxvfvwwwwwwwwwgWvwxvwvxwxxwxwwxwxwxvwvwwwvfwvvwwGvvxwwwwxxwWvhxwxwxwwwxxwxvvfvxwhgguwgWvwgvwxwwwvwxxwwwvWxxgwwxwxhwwwxxwwwFwxwwggwwhwvfwxxxxwxxvwwxxfxwxxwhxxwxxwvfEwwgwvwxxxwvwwgxxwxgxxxxwwwwxxxvwxwwhvwwwwwwwuwgxvwxgwwvxvwxxwwwwwwxxxxxvwggwwwvvfwwxVuwvgXwwwwwxxwwxxwwxwwwxvwgwwwwwwwwwwgwwvwxwwwwxwwwgwwxwwwvwwwxxwwwxwwwwxxxwwwxwvwwxxxxvgfvwwvvgfwxxwWwwwwxgwuxwwvwxhwhwxxwxxxxxxxwxgvdfwgGfwfwgwwwgwvwxgwxwxXxwwxwxxxxwwvvxxwwwwxgxxxxgwwwxxwwwwxvxxwwwwwxvwxhwvvxgwvxwxwxxwvwwwwvwwxwwwwxxwxxwwwwxwxwwwwxxxxxxxhwxvwwxxhvggwwfuvxxxwwxxvvwxxwwvwwwwwwwwvvxwxwwwwwwfwwwwwwwwwwxwwwxxxwxxhxwwxffwwgwxfvuxxwxxxwwxxxxxvwwvwwwxvgvwgwwxwwwwwxwxxxxwxxgwxwxwwwgggvwwghxwxwwxwwwxvxwwwxxxxxwggugvgxUdegwgwvwwwwxxgxwwxwwweefxxwwwxxxxxxxxxxxxwwgwwvwwwxxxwxwwxxxxxxxxxxxxxxxxyxUedgwxguxwwwwwwwvhwxwxwwxwxxxxxxxxxwxwxwwgwwwxwxwwvvwxxxxwxwxwwxxxxvxwgwxwfwxgfwwxhwxxxwwwwxxwxxxwwwxxxxxwhvhxwwwxxwwwwwxxxxxxxxxxwhxxxxxwxwwwxwxwwxxxwwwwxwwwwwwxxxxxxxxwxwwgwgvwwxxXwhxwwxxwxwgwywxxwxxwxwxhxwgeefxxgwhwxwgwxxwxhxwwwwwxxxxxwwxxwwwWxxxxxxwxxxwwwwwxxwwxwxxxxxwxxhwxxwwxwxwwwwwwwwxwxwxxxuxwxxxxwxxwwhgxvwwwwwhxxwwwwwvgxvwvwxwwwgwgwxwgvwwwwwgwwxwvwgwxwxwguWwwwxwwwwwhvxwxxwgwvwwwwwwwxggVxxwxwwxvxwewvwwwxvwwxwgvwfwxvwxWgvwvxwwxxxwwxwwwwxxgggwxwxwWgxwwxwxhxwwWvwwvxwwwwwgxwxxxxwwffwwwwgwvwwxwwwwfvfwxwwvhwwwwfufxgfvwxxvwvwxwwwwwxwfVwwwgxwvwwhgwggwxxxxxxwhxvwxvhwxwxxgwwwxfwgUwwwwwwhvwgggwwwwwwhwvwgwvwxxwxwvxxxxwvwwxwwvgvwwwvwgwuxxwxwwhwxxwwwxwxvgwvfwwwvwwwxveuvwxxfwwvxwwhwhxwxwwwwxwwgfwwwwxwxwvwvwwgwwxwxhxxxwxxvwwvhuwwwwwwguwwxxxhxwwxhwggvgvgwvwwwxwfwwwhxwwgxwxxgwwwwhxxxxvxwwxxxwfeufwwwxWwwwwevgwwwwwxxwwfvwvvgwfwxxxwxwwxghxhwwwwwwwwwwxwxwwhvwxwwxxhxwxwwwxwvgwwwwxwwwwwwwwxvwwwwxwvxxxgwhtwwwwfwvwvvwgwvwuvgwwwwgvxwwwvwhwxwgwwwxvwwxwwwvgwvdvwfwuwWTwwfwwwgvuwfwwgvwgwvgwhwvvvggvhwxxgwwwgwgvwwwwgwwgxwwwwgewwWfxwwxvgvwwvwvwfwwxwwuxwgvxWfxxwFuuhwwxxwwvgwvvgvvwwvfewgxwwuxwwgwufvghwwgwwxhwwwwwwwwxwwxwxvuvwvggwvgwvfuwhwVuvwvwwguuvwwvvgVwvvwvvxxxgwuxwxwxwxwfxxxwgvwwwwWwwwggwfetfgwwvWgwFwwfwwvgwwghwwxxwfggfxggxhXFwwwwggwwhwwvWwwwvwwwwwwfwvWxvvwwwxxwWwwgxxwwxwxwwwWuvVwvwwWgwfggwTgxfvwwhwgxgxxggxghUgwwxxwwxwwwhwwvxwvxfwwwfvwwvwfgwwgxgwwwwwhwgwWxhfwxhwwwwxxwgwfvvgvwwfvxgxwwgvvwfvwwwxwxwwwxvwwwwwwgwwvgxgwwwgwvwwwxggwwgwwxwwwxxwgwxxwwvvvxhwwxwxxwwhvxgwwwwwwxwwgvwvwxxwwwwwwgwvvwvxwwwwwxwgwwwwwwvwwwwxwwwwwWvfvwgvvgxwgvgfwgwwwxwwfwvgwgwwgwwxgxxwxgxwwxxwwgwwwfuggwgxugWvwwwgggwuhgwvwxggwxwwgvwwWhVxxwvwggfgwwxxwwwgvwwwwwvwwwwvgwvxgwgwwwxwwgxwxwggxxxxwwxxxxwxwwhxwwxwwfwfwvwgxhwwwwwwvwwwvvwwxwwgxwxevwxwwxwwwwwwwwvxwwxwgvuwwwgwxgwwxwWvvxfwgwwwxhvwxwgvvhwffwwgwwwfvwwfvwgvwggfFwwwVwgvgwwggvxvwwvwvwwgwwwxwwwxvgvgegvhwgvxgVVwvvvxWvwxxggwvvxxxwxwgxwwxhxgxWwVWguwgvvvxgxwgevgwwwWwwwxwwvvwvwxwwwvwxwwwhhgxhgwhxfwwxfwwwgUgvvwwwFfwxgxwvvvxwwvgvgwvwvxWfvxwxgwwwxxwxgvxxwwwggwwgvgwfFgwgFwgvgxwxghvgfWhggwwwxgwhxxwvvvvwwgxxwxwwxgvwwefvwwwgvvxwxwgewgxwgwgwfxwwxxwwxxxwxwghxwwwxhvxgxvwwgwvgwwwfwwwgwwwwwxWwwwwvwgxwwwxxxxwwfwWxxwwwhgxxwhwwwwwfwghfvwwxfwwVefggvgWwwwxvxwwVvwwwwxgvwvwvxhxxhwvwwwggwwwwwfvhvwwfWwgxFvwufgghtfwWwgwwvwwwwxwwwwwwwwwwwxwvwxwfwxxwvfvwgwwgwhwxvxfwgwwxwxxgxwWwgxwwwxwwvxvxwwwwwwwwwwhgwwvwwwwwxvgghxxwvgwxgfffwgwggwxxxwuwwwhwvgxxgxwgwWxwxwwwwwxwwggwwhwxxwggwxxwwggVgggWvwegwwGfwgwgxGxfhwwfxwgvwxwwwwgwwxgwwxwxhwxwgwwwwxwgwxgvxxwxxxwxxwwwwggxgwfwxwwxxhxhxvwwwxhfggwwxwwhwwwwvwwwxwgxwxvvwwwwwWwgwhwwwvxwxwwgwwvwgwwvwwvwxwwwwgwwgxxwwwwxwvxxwxwvwwxxxxgwwwwwwwwwgvhwwwwwwxwwxvvwwxggwxwvwwwwxxwwwwwhxwxxwxxwwwvwwwwwfwgvwwxwwgwxwwgwwxxwxwvxwwxxgggvvfvwwwwvwwvvwwgwxwwwwwxwwxxwwwxwgvwwwwwgwxwwgwwxxwwxgxxwwgwwwwxwwwxwwxwwxxwwwwwwwwwwxwgwwwwwxwwwxwxgwwwwwwwwwwxwwxhwwxwgwfxgwwwxvgwwwwxwwxxxwwxwwgxxxwwwxwxxxxxxxxwwwggwwgwxxwvwwwwhxfxwxgvwwwwvwxxwwxwwwxgvxwwvwgfUgwwgwwxwvwgwwxwvVVwwwwwwwxhvxxxvwwxwwfwgvwgggwwwwgwwwwxwgvxwxwwgvxxvxxxxwxwxwwwxxwxgwvwxwwwvWugfwwxvxxggxwwwwVvvhwxwxwwwxvgvxxhxxwVvwwwgwxxwwwvwwwhxwfxxwgvxxxwxxxxhhwwwxxwxwVUwgvwwhghxwgvvwwwvxwxxxxwgwwwwwwxwxwxwhwxwxwxvvwwwvwgwwgwwwxwwvwxhxgxhwwwgwwxwwxgwvxwwwgwxxwwwhwvwfwvgvwgwwxwxwwwfvvxwwwwwvwwxxwwwxxxwxxxvxwxfwxwwxwwwwwgwwvvxwwxwwwgwxwwgewwgwwwvwvwwwwwgggwwwvgwwvvwwwxgwvxwwwwwgxwfwgwwxwxwwwwwvvwggWwwvwffvfwwwvfwwwwvwwvwvwwwwwwwwwwwwvwwxwwxxwgwvwgwgvwgvvgwvwgwvgwwxwwwgwwwwwwwxxvhfwwhxxwxfuvwwwxfwvxwxvvfvwwvwwwwxwwwxxwxxxxxxgxwwxvwwxxgvwfgwvwwwVfvwvwfvvwwwgggVwwwgxxgwwxwwwxwwhxwwgfwfwfvvwwwxggwwwxwwwgwfuwxwewvwwwhwxhxwwxwgfxxxwhxgxxwwfgwVwvwgwvwwvwvwwwxwgfvwgxwxXxxwxwwwwvvufgxwgxvWxhexwvfxwggwfxwxxgxxvhxgxwxwxxvxwxwxwwwwvwhwgwwfffvvwvwgfwxwwwgwegwwwwgwhggxwvwwwwxvvwgevfwgvgxwwffvegwfwvwwgxvvvwwwwwwwxwwxwxwwxwwwwvwgwwwgwwwhvvwwfxwfgwfwwwvwwwwxwxwxxgxwggxhxwxxwxxvwfvvwwwxwwfxwvwhvwwwxwwxxwwxxxxxwxwxwwxwggwwwxgwggwwwxfvfwxxwWfwgwwhhwfwwxwwwwxgwwwxxxxxwwwwwwgvvwxwgfwgxhxwgwwvfxgfggwxgwgwxxwwxxvWxfwwwwwwgxwgxwwwwxwgwwwwxwwxwwxfwvwxXxwxwxxxwxxxxxwwgwwxxwwvxwwwxwwxwxhwwwwxxwvwwwhvvwwwwwwhxwwwggwxwvwxwxwwvxxgwxxwxwwxwxxgvwgvwwgxwhwwvwwgvwwwgwwxggxwwgwfgfvfxwwgvwwwwgfgxxvvgvwwxwwwwwwwxvwwwXvxxgwwxwgUVwwgxxxwxwwywvwwxxwugwwvxvwwxwfvvwgxwfwwwwwvvwwxwxxwxxxwxwxxwwwvwwwvhvxwgWgwwwwfvvwxxwvggwwwxxgwwhxhwxxxxxxwVWvwvvfWeWgwwvfeegxxxhgWgvxwvwggxwgvgwxgwwhxfwhwxwggxxwwfwgghvwxwxxwwwxwxxxwxhxxxhxfeegwwxhwxxwvgffxxxwwvwfwxxvxwxvwxxxvwvwxhwxwwwwgwwgvxwwwxxwxwwwwwxxxxhxxfwggvwxvfxxwgvVgxwxgwhvwwwvvgxgxwxxwwxwwxxxhwwvwxggwwxxxwwxxwxwxxgwwxxxxvvxxwxwwwwwxwwxwwwxxwwxwwhvwhwwxxffvgxgwwxwwwxgwwxyxxxfxwxxwxwxxxWeffwxhwxxhwWggxxwVwxxxwxxxwxgwxfwxwwwwwxwwwxwxwgwxxxwwxwxwwxwwxwxxwxxxxxwxwwwxwgwwxwwwwwgfxwwwxwwxwwxvxwvwwwwxwxxwwwwxwwwxwwxfvwwwgwxxwwwwwxwwxwxxvhfwwvhwwwxwwwwwwxgxgvxvwxxwwwwxwxwxwwvxwxxwfgggfvxwwwwwxxxwwwwvxwwwxxwxwvwwwVewhhwwwxwgxxxwxwxwfgxwxwwxxxxxfvvwwfvvhvgfggvxwgwwxhvxhgvfwgwvxxwxwgggwxxgwWgwwwwvvxwxwvwwgvwwwwwxwgxxwwxxwvxxxxwxwwxgfVVvgwfxhwvwwwwxwvxwwwxxwwwxwxwwxxwxwxwwxxxxxwwgvxvwgwwwxwwxwwxwwwwgvwwwwxxgxvwgvvvhwwxxwwwxhwwxxxvvvwwxxxwgxwwfvgwwwwwwwwwwwwxwwwgvxxwwwxxgwwwxwvwxwxxwxvxxwwxwxxwxwxwgggwwwxwxwxvffwgwwxwxxxvwvwxwxxxhwvxxxVvufwggvwwvwgwWvwwxxxwxwgfvgwxwwxxhhvxwxxwgvxwxwwxgwwwxxxwwwhxwwwxxgvxwxgxxxxwwwwwwxxwhwwwxxwxwwxxwxuvfgwvwgwvwgfvvwxwxwwwwwxwwwgwwwgwwwwgxxxwfxvwvvwgfgwfWvgvwwgxgwvwxwxwwwwwwxwwwwgwwwwxwwxxwwwwwwwxwgwwxWfgwuwwhwwwwvwwhwwvvwwvwvwwxxxwwghwxxwxgvgfwvewgvvwwgwffwvwwxwgwwwxwwwwwxvxwhwwwxwvxxwxxgwxwgffwWfwwwxWwhwvgwwwwwwwwfvwuwwvgwwwwwwwxwwwwxwxxwwhfwgvfGwvwwwwwgwwwgwwwwxxgxwgwvvvwwwVxwggxgxwxvwwwxwhwwffgwuwvvvgwhvwxwwwwwvwwxfhfxgxwwwhxwwwwwxhxvwwgvgwhwfwhwwWwwwwwgggwxwwewwwvwwwvwwxxwfuvwvgwwwgvwfguwggwxwuvwwXwwwwwwWwvwwxwgvwxwxwhwxwwxuwwgwvvfvfguwfevvwggwwxvwwwgwvwwwwwvwWwgxugwxwwwwwwvwwvwwwwfvxfvwwwwwwvwwwwwwwwwwxwxwwwfwwxwxgwwwhwxxgwgwvxwvwwvvvwwwwvwuxxxvvvwwwxwwxwwwxxxwxwxwxwVvwgwvwfgwgwxwwWvwwwwvwxwwfwgvvxwwwggfwhxwxxwwwxhgwwwwwvvfuwfvhwgxwwwvwgwwgxhxwghgwwfwwWgwVxvwvwwgwwwxggwwwgvwwwwwwxgwhwvwwwwwwvgxfwgwwwxwwxxXxwxxwwgvxwxwwxxwwwwwwwfwwxxwxgvgwgwwxxwwxwwwwuwwxwxvwxgwwwwwwxgvwvxwgwwgxwgwwwwwxxwwwgwwwwwwvwgvwwwghwWvGggfwwgwvwwwgwxwwwgwxwwggwwwwwvgwxwxwgwvwwvwgxwxxxgwwwggWvwwwvgvgghwgvwxwwxxwwxwvvxwfwxxxxxwxVvfgffwvwwwwwgwvwwwwxgwxwxxgwxgxvwwwxxxwvfwwweVwgegvfvvxWvGwwhxwgwwwwwggfguwwwwwvwwwwvxwxgwwxwxwxgggvwfvxgvwwwgwfwwxwwwxggvgfWhWwwvxwxWxxwwxvvXxhxgwxwxhggVfvfwvwxvwwgfggxwxGwxxwwvwgwxwxwxwwwwxwwwwvfgwwgGwwwwwvfxwwWXhgwwwxwxxwxwfwwwxwxxxwhxxgwwwwwWgwgwgvwggggwggwwWvwxwxfwwwwwxfvwwxxxxwxwggfwVwvwVwvvvwwvfwvwggwxxxwxfvwwwxxgvxwxxhhxwxwwgwvwgxxfxfwfwwgxxxwxwwgwxvxxwxxvxxwwxxwxgwhfvwwwvxwwwxwhwwwxwxuwxwxwwxxwwxxwwwwwwVfVgvwguwxvwwWgfwgfgWfxxgwxvxxwxgxxxxxhwhwwxxwxhwwgwwwgvwWwxwgwwwwgwgwGwVwvwxhwgwwxwwgwwxwgwwgxwxgwwxgvwvwvwwgwwvxwwwwwxwxwwgwvwwwxxvvwxxxgxwxxxWwxwyhwwwxwwwwwwvvwxwwwXgwhwwwwwxhhwwxwxgevwuxxwvxwwxxwxwxgggwgwvwwxvwwvggxwxwwvvwwxxwwxwvvwxgwxvwwggwvwwwwwwwgwWwgwwwxwxwwxwxvwxxwgxxxxwgwwwwxwxxxgwwwuwwxxvghvvwgwwxxxwwxgwwhwxxxxgvwwvwwwwwvwxwgxwwvxxwxwgvvxgwxwhwwxxwvvwxwvxxVVvhwWwvwxVwwwwwwxwwfgwugwgxwwxvwuwxwxwwxWWwwwwwvvxwgvwvwhxwxwgxwwugfwwuvxwwhxgwxxghxvxxwxxwfggwgvvvhxwwwfgxxxxguwxvxWxxwhwwwwwwfvwVwgwvxwgwxwxxvwwvxwwxwwWwwwugwgxxhwVwwxxxwwxwwguwwwgwgwwvvwvuvgwwgwwwwxwwxwwxxxxxxwwwwwgfwvwwvwxxxvuwhwwwxwxgwwwwwwxxwwwwwwwwxwwwfwwwwxwwwwwwwwxxwwxxwwwwwwwwwvwxwxwwxxwwhxwwwwxwxxvvwwvvwxxgxwwxxxxxwwxwgwwegwgwwwxxwwxgxgxxxwgwvxwvvwwwxgwxwwxwxwxwwwxwwwwvgvwxxvxwxwwwwwgxxwxgwwwgwxwwwXxfhwwwxwwgwwwxxwwvwgwvxwxwxxxgfxxwxxwxwxwwxwxxxwhwxwvwggxwwxxwwhwwwhwwwwwhxwxxxyxvvwwwwwwwgvwwwwxwwwwfwwvvwwwwwgvwwxfwvwwvvwwvwvwwwwwwwwfwgwvfwuvwwwwxwwwwvvwvwwvwwwfgfggvwvwvgwvwwwwwvxwwwvfwwxwvggwwwwvvxwggwgwwgvwvwwwwxfwxfwxuwwgwwvwwvxxgxwwwgwwwvfvgvvxwwwwvwwwwxwwwxwggwvvwvwvvwwwwwxvxwvgwfwwwgwwwvwxwxwfxwwwggwwxwwwwwwwgWfvgwwwvwfwwgwvwvwxxwfwgwwgwgwwxwxwwxwwwwwwxvfwwgwwwwwfwfwvwvwwfgwwwwwgvwxwgwxwxgwgwxwwvwwwwwwwwwxwwwwgwwxxvvvwggwwxwwwhwwwwxxxxxwxxwxwwxwxgwwwwxwwwwxwwgggwfwxvxwwgxggwxwwxxwxfwxgwwwwwxgxwVfwuwwwgegvfvwVfgvvwfxvwggveuvxgewfxvwguwfwhhvwvvTvuvevwweuvwugvwwxwwgwgeuwwwwtxwfgwwwwwwxwxhwwvwvwwUuwfwxWftufwwvwwhghVfuwwgwxwXguwWwhXfxhgVvwwwfvxugwguwwgwwwwuwvgWgegxgwwwtwwvwgwggvgwxxhwfwwwxvgwfgwVvuwUvwvxwwEfgwwwvuwwwgxfVvxvgwxwvhxwvwwxwWhwwgxwVvgfwwvwggxxwgxwvvwwXwehfwfXffvwwwwwWwghgvGfWvwgxgXUfWffuFuewvvvwvgwxwfvwwwwwwwwwgWvfvgwgxhwxhwWwvxwxGwvXwggwxwwwhwwwvgwVvwggvwwgvgUxwxwVwfwvgxegwWdeuwwwgwWgwwwggwwgwwvVwwwwgwvwwfvwvwxwgffwvvwgvxfewvwWfvwfxguwggGTvxwwWwewvwwwgggvvgfwfuwvggwfvggwwgWwwwvwgwvhwgwfgvvvgvwwwwfFfwgvvhxxxwgfvVvuwxvwxxfuwxwwwwxfWwvvfvgwggfwugwgvfwwwxfffvwwwwwwwwvwxvwhwxwwgxgxvwwuvvugwgVwwgfwgvfgwWgvwvxVdwWxgwwfUuvWwuxwxgfvfgwwfwwwxxVevwwwXfwvhvvfWwfwWwgxgxVwghhfuufgvwggwwwgxgggvGxgHExfwwxwgvwVfhwvgxwxxfvvWxwvWwvwwwfgvvwxxgwwwgxxwvxwfxwgxwwgwwvgvvgvgwVxwwwwfxggVXhEgxVxfwgwwexwwgvwvhwgwwwgxxguhXwwwwwvVwwwgvxvWvfxwvvxvwxwxwgggxxwwxwhwwwxxvhwwxxfgwgwwgfwfxwfvvgggVwhwvgwgvwgggwgwxwwxwgwxxwwwhwwwwwwgwfvxxwwxxWvvwwxgwwvxwwwwwhwwvxwwxghwvxxgwwwwwgvxwgwvvwwwwwwwwwwwvwwwwwwwwwwwwvwxwxwhwwxwxwxwwvGfwgvwgwwxxwWewWggwggfxxwgwgwwxxwwvwwwxvwwxwxxhwgwxwfvggwfwgwhgvwwwvwWwWhXVfvwwxgwvgwwgxgwwgvwwxwwWwggwwvWvfwxguwxxxwxwxwwxwhwwgwxwxwvwxwxxwxwwxwwwwhwwwwxwxwwwvwxwwwgwwxwwwvhwwwgfuwhgggwwvxgwwwwwwwXhwwdvvwfvvvvwwhvwgvvWwfwwwggwwwwwvgwgfuvwwvvwxvgvwwwwxxxeewufveffgvwwvwgvwvvvfwwvvwvXwwwWTwvwfggwvgwwwgwfvwwgvwwwwxwwgwvfgeguwwUvdwfWfwwfwfwvwxgwwwWfwvvwwfwugwxwwwwwxwwgxxxwwwvfvvuvfwewvwwwwgvvwhgffwWwwwwgvwvwwwwwwgggwxwwfvwwXwfwwwxwguvvgffewfgVgwegwfgwvwwggfwhvwwwwfwVvvvwuwwhwffuwgwwwgwgwwxwxgvgvwdeegfwfgwgfgwffgxfwfuwwghwWgwwgvfgGwgwhxXWFwgwWgxfwhwfwwwgvgfwvvfwgwwxwgwvvwhwvWwwhwxgggvfggwgwWxhwvwwgwvwxvgfvegWvgUwgwggwwgwwwgggehgwWwwwwwwWwwgwhgUxwwxwwehvguwvvwwvvvgfVugwgwvwwvvwwggfwuxwwwvfwwgvvwgwvwwwwgwvwwWxwwxwwVvgfvvvgwvwWwWwvwfwwWwxwwwxwhewvwgwghwwwggwwxhwxwwwwwgwwwwgwwwwhvwgwwxwvwvwwwwwwfgvWwwvwghgwxfgwgwxvwgvvxvvwvwfwvgwggwwwvwwwfwwvwwwxwvwggwxwgwgwvwwhgwvwvwwwfVvwgfVwwvvxwxwwWvwwvgwhwgxwgwwwgvwgwgvgvxgxgwwgwxwWwgwwxxxwwefVgggvwvwwwwwWwgwwvwXxffwwwfxwwfXgWggvggVwxwvwhwgwhxwwvwffwfwwgwxwgvwvfwwwhvwvwxwwwgwwwgwhwfgxxgwvwvgvwwwxwwwwvWggwwwgxwgwgwhvwgwfggwvxwxwvggxwvvwwxwfwxxuggwxwwwwwvwvhwgvggwxgwwgwxwwxwgfvwwxvwxVvvwfwuvfwvfwwvfwgwwvwwhwwgwxwfwwvfvuwwwvwvxxvwwfWxwvgwwgwfwgvxvwuwfwvvwwggwwwwvwwwhwxgfvwwewwhvxwWvvwwwwwvhxvhhwggvuwfvvwwxwffvwwwfwwvwfwwvwvvvgvgfvgwwwfgwfwvvwgwwwwWwuwgfwwWvxwxggfVgwggfuwwwwgvWvwwxgwwghwgvvgwxwgfgwgxwxvvgVwwvffwwvwwgvwVWwwwwhwVwvwwwwgwxwWgwfhxfwwgfxxgfgxgxgwwvffwwgwwwwxVvvwxgvxwwwxxgvwgwvwxwWwhxefwwfxxvwxxwwfwvwwggwvxvgwgvxwfVwhwwwgxwvwgwwwwhfwwwwxwwfvvwvxwwwfvufwwwvwfvwwgxwwgvwfvvxgwugvxuxgvvwwhvwwwxwwhugfewwVwwwfxgvggwwggwvwwghwfvvvugwwxwwwwVvwegvfwgwwwhwufxwwwvwwwxwvwvvuxwvwwvwwwwwwewwwvxwxwwwhgwvwxwwvwwwwwwwwwwvvgwwwxvgvwwwvwwvwvvwgvxwwwxgxxwvgxwvwwwwWfvfvwgvwwwxxVvvgwfwwwwwwwwxwfwwwwwwWwwWhwwwwvfwxxwwwfggffxwwWxwgwgegVvwggvggWgwwvwxwhwxwwWhvvvwwxwgxxwwwgwwwxwWwwxwhwgxgwxwvwwgwwfxwxwxwVwgxewhxwwxwwwgvwwwwwwgggwggfxwhxwxfvwwwwvwwxxwwwxwvgvvwxwwxwwvxwwwwwhwvxwwwwwhwwwwwwwwxwwgxvxvwxxwwwhwwgwxxwxwwhwfuvwgwwwwwwwvwwwwwwxfgvxgwwxwwvgvvwxwgfwxwxvxwwwwgwgwwwgvwwwwfwwwgwgwxgwxxxxwvwwwwvwvxxvwxxxxwxxwxxwwwgwgxwxuwwwgvxvwggxwwwwwxwxwxxwwxgxwxwwxxgwwxxwgwgwwXwgvwxvwwwxwfgwwvhgwvwwwgwhwwwxhxwhwxwWwgwhxwwwwxgxgxxxxwwwgwwwgxwxwWgwwggxwXvwgghxwVwwwwhgggwxxwgxxwghhhhxgxwxxvhwwghxwwxwwwxwwxgvxxhxwwxwxwwxgxxwhwgxwxxvwxwwwgfwwwwxwgwxgxwhgxwwwwwvxwwwwvxwgxxvxxxxxwwwwxhxvxwwwxwvwvgwvwwwwxwwuwwgwvwwxxvxwxwwxvwgwxwxxwwvwhgwwxwwvxwwfgwhVVwwvxxghxgvwwxewwhwxwwwwwxxwwxwxhwvxwwwxwwvxwwwwvxxwwxhwwwgvfwwxwhxxgwwhwxhxxwwxxhwwwxvwwgvhwxwvwhhgxwwvwwwfwxhwwxwwxwxxxxxgvgwhxxwwwwwxgwwxvxwwWwgfhgvgwwwgwxxwxwxxVwWxwwvxxhxwxvwxxwwhfwggwxwxwxwfhxwhxggxWwwwgwwwvhwwwxghxfgvxxghwxwwwwwwxwxxwxxWfxhwwxxwhgxwwvwwgxgvxvxwwgwxwxvxwxxxwwgvwwxvgwhwxxwxvwvwwwxxxxwxwwwxwwvgxvxxxwwwgxwwwxwwwxwxxwwwxgwwvxwgxwxwwxxvgxfwwwxwxxwgwwwgwwxxgwwwwhvxweUwxxxxxvwwxxxhxxwwxxxwvgwwwvwwxwwxxgwxxwxxwxxxxwxxwwxwxwxxgfwwwgwgvgwwxxwwhxxwwwwwWegvhwxxhwwxwxgfvfuevgfwgwwwwwvvfxxhhxwxwfvfgxgvwxgwwwwxxwxxxwxwwwwgwwwxwxwxgwwxwwhvxxxxxwxfuufvwwgxwxwwwxxwwxwwxgxwwwwwwxwxxxxwxxwvvvwxwxwwghxwxxwxxwxxxwxgxvvggwwwxgvxhwwxxxgwxxwwhhxxwgwwwhwxxxwxxxxxwwwxwxxxvxxxwwxwxwwwhxxwwxwwwxxgxWufvgwxwwgwhvwxxxwhxhxxxwwwxxxxwxxxfvvfwgfwxwgwwwxxxxxxxxwxwfxvwwwwwwxwwxwgwxwwwwxxxxwwwxgxwwxwxwxxwwhxwgvwgwgwwxxwxwwwghxwwxxwgxwwwxuwfvgwvvwvvwwffvwvggwvgwwwvuwgwwvgwgvwwwvwwwwwvwwxxvuwvxVCfwwfuwffWwgfwxhfggwvwwfgfwwwvvVvwvvvwvwwwvvwwgwxgwwwvvwwvwvWUvwVfwvvwvggugvfwVfugwxvvgvwwwgwgxhwvxxhwxxwxwwgvufgevvvvvwwgvwvwgWvfgvwgfwwwwwwwvhvgwwwwwwxxgvwfvvfwgfwvfdgvvewVEwwvxwfwtwwxwUwgfeufgwvwxxwwgvwwwgwwxwwVegvwgfuuVvwWg7wwfgwwhvvWfhX6gwwgfvgwgwwgvgwgxxUwwfxwvvgVvwwfgwvgwxgwwuvxvFwwWxwggwxxxwxgwwwxxxxvxwxhwvgvfgxvfFgwwevvffvwghXTxgwfhwfvxwxgfwwvXwgxwwfxwwwffwwwwwvwwfffwwgvwvwvgfwwwwwvuxxwgwwwwwwxfhwgvgwxwxxfwfvvfvgwuvvgwwvwhgwggwfwwwvwwwwwwggwvwvwgwwwwwwwwwgwvwwwvxfxwvwuxwwxwxxxxwxwwwwWwwwvxxwxgwwgwxwwxwwgvwgvvuuwvwwxwwwwwxvwvwfwwvwwwwvvxwwwvwwwvwwwwxwwvwwgxwVevfvffwwfwwwwwwuwwwwVvwwwwwgxxwwgwwxgwwwxggwwwwwxwwwwvvfvgvGvwwwgwvwwgfwhhEwhfwggwwxwvewwwhvwxgwwwwwwwfwwxggvgwvvvwwwvwwwxwwwxwxwgwxwwwwwwxwwwgwxwwwwxxxwwwxxvwwgwvwwgwxwwwhxuvwwgvwwwwxgwwwvxwwwwwwvvwwwxwxgwwxxwwgwwwwxhwfgwwwwwxwxwgwxxxwwwwhwwwwgwwfwwfgwfvvwwwgwwhgwvgxwwggwwwxgwxxxewwghwhxwwxgwhwwggwwxxwxgvWwxxwgwwwxwxwwwwvxwvvxxgwxfvWwvvvwgvvwwwggwvgwgxwwwxwgvwwwwwxxvwxwwxwxwwVgfwggwggwgwxggwwxgwgvvvxwwvfgvgvwwgwwxxgwwxhxxxwxwvwwwhgfwvvwxxgxwwvxxgwwwghwvvwwwwhhxxwwwwwxvxXhwxvvgxxxwgwgwwwwxxwxwvwwvgwxwgwwwvxwhxxxwwxxxwwxwwvgwwgwwvvwxgwgxwwwxwgwwvxxwwwfwwvwwxwxxxwxgxxwwxhxvwxwfwgweFwxwwgwwfVwwwggwhwwWvvxxxgwxxwxxxxxxvfWgwvwvvfuxwvWwvhwxwwvxxwwvwgvvwwxwxwwxwvxvxwwgggwwwwwwgxgVvuxwxxgFuvhwwwxwwxwwwxvvxwxxxwxwxwwhxwwxFuugwwwghxxwhwwgxvxwwwxwxxwwwvgxvhwwwfweFxvxfwxxgwvwwwgwuwvwxxwWwvwxwwxwwgxwxwgxwxfvwfwwgwwwwwwgfvwxhgxhwwgfwxxgvfwxgwwwyxwwgwwgWfwwVgwgwwwfuxwwxwwwxxwxgwxxgxwxxwwxwxxxgwghxwxwhwxwwvwwwxwwwwwwhwwwwxgxvwgxxxvfwxVxguwwwwvgxwwwwwwwwvgwgwgxwxwgwwwwgfuvhxwwwwgwvwwwvgvvwwvgvvwfevwwfwwvvwwwwwwwwvwvvgxgvwwvvfUWwwvxgvwggwwwwgwxxgxgwwwxwfewwwvvvwfvvvwxwvxwfvwwwwwxvgwhxwvxxwwggwgfwvfuvwvvwwwvvvwwwvgxwxgwwvxvwxwxwwwwwwvwgwwfwxwvwxwgfuwwVewwgwxwvgxfvfwwhwwvwgxxfvVfgfwwwgwvwwxxwvvvgwgggvwwghgxwwgfvggvfxwfxwwfwwwuxvWwxwwxwwvwfUVwwvVwwwwxhfwgwUghVwufwXgvwVfvvvvvwgwwgwwgxvwxwfgwggvgwxwxwewxxxwvwwgwwuwwwwWxwwxwwwwgwfwxfxxwgwvvxxvvvwgwvggwwwwgxwvvwwwvgvwfevwwxwwwwgvvgfvggevwwvwvwwgvuxwgwwxwwwwwwxwwvwgwvfffvwwgwwgwwwVgwxfwwvwwvvwvffvwxwvwwwwvWgexwwgwxwwvvvvwwvwwvwwwxvwwggvvwwvhwwgwwwwwwxwwwgwxxxwwwwgwvwwvxxwwvwwwgwgwfxgwwwwwwwwwwwvwwwwxxvffwfvgggxxwwwfwghvwfggwwwxxwgvvxwggxwxwxwwVgwwwwwxwvwxwwwffewwvWwxwvxxwwgwwfwWhefvxwggvvffwwgggwwwwwwwvfVVhffgwgwgxwwwgxxwwVwwwwgwwwwwxwwwwxwxgexwwffxwxwxvwwvxwwwgfxgwvwwwwvgwfwvwwvwwgwwwwxwxgwwwwwwvwwwggxxxwwwwwgwxhwvgvwvvwwwwvxwxwvwwvwwwwwwwxwwgwgwwvwvuvhgWvwwwwwwwwwvgwgwwwgxwgwwhvwwwwwxvxxgwvxwwvwwwguxgwgwxxxwxwwwwwxwvwwwxwxffwwwwxxxwwgwwxwwgxxxwxwwwwxwxxwwwxxxxxwgwgggWvxgwwwxVgvwwwvwwgwwfgugwgwxwwxgvwwvwwxxxggggvxgwwwwgwvwxggxfhwfgwwgxgWuxxxxgwwvvxhgVxfxwhwxwguwwwWxgvfvwwWwwwxwwvwwwwwxvxxxwhxwxgwgvwWxwgfxwxgxwVhxVxxwfxwgwwwwwwwwwhgxwwvxxhwhwwwwgvwwvvwvgfvxvfwwwxxwwvfwgwwxwvvwxwxwwvvwvuvvvwxwxgvvxwwgvxwxwggvvwwwwwwwwwxxwxwhwwwwwwwwwxxxwxwwwxwxxwgwxxxvhwvxwwwwwwwvwwwxxwwwxxxwhwvwwwxwxwxwxwxxfvgwvwwxgwvwxgwfxxwfvvwxwxhwwwwxvwxwxwwfgxwwggfxwxgwwwgxXgexxvxwgwhwwvvgwwwwgWgwwgwffwwwgwwwwwxxxwxwxwwxxgwgvgvxwhxxhxwgwwhgwwxxwxxxgxwgXwwhwgxwhvgwxwwwwxggwwgvwxxwwxxxwwxwfgwxxwwwwwgxwvwxxxwwwwwxwxxxxwwxwvwwxxwxwwwwvwwgxwgwwvwvwwwxvxhxxxwwwxxxwwxwwxxgwwwxvwgxwxwhwwwwwwwxgxwxxwxxwwxwwxwxgxwwhwwgvxxwwwxwwwxwxhwwwwwwxwfgwwwwwwwxwwhhxvwxxxwwxxwwwgvwwwxvxvwxxwwgwxxwwxxwvwwgxvwgwwgvwxxxxwxxxvxwwwxxwgfwxgwxwggwxgxggxwhgxwxwwxwgxwxxxwwxxxxvxwxwxxwxwwwxxxxwxwwgwwvwwwxwwxwwwxwxwwwggxggwwxxxxxwwvhwwxwgvwxwxxwwxwxwwwvxwxwxhxwvwwwwwwwwwwwwxxwgfxwggwwggwwhvvxwxwwxwwvgvxxwxwwxvxwxgwxxgxwggwwwxxwxxwhwvwxxwgvxvxwxvwwxwgwwwgwwhvwxxwwwwwwwxwwwwhxgxwxxgwxgwwvxwwxxwwwxwxwwwwwxxwwxxxwwwxxwxhwwwwgxggxxxxxvxwxxwwhwvwwwwxwxwggwgwxxwxwxxwwxwhgxxxwxhxwwxxwwxwwwgwxxxxxxwwxwwwwwxxwxwxwxxwvgvwgvwwxxxvxwxwwwwwwvwxvgwwwfxxwxwxvwwvuwxwxxwhwvwgwfvwwwwwvwwwwwwwwwwxxxwgwwvvwwxwxwwwvvwwxwxwxvwgxwxwxwxxwwwxwwwguwxxVevwwwxxxxxxxxxvfgwwvvwwwwwwwgwxxxxwfxwwwwgxwwwxwwxxwwwgwwwwxxxxggfxwxwwwwxggvvwwwhxxwxxgvvwhwxxxggfwgwffvvUxxxgvfwwVwwgxxxetdfwgwfwxgxxxwwwgwfwwwwxxwgggvvxwwgxxwvxwwxxwgvwxxxwxxxvwxxwxxwVttfxwgwxwxwgwwwfxwxxxvgwvxwgwxhxxxxwwxgvwxxxwvwxwwxxwwwfwwwwwwxxxwxxvwwwwwwwxwwwwvwwwwwxxwwgxxwxxhwwxwwwxwvgvwwxwwxwxwwwwwwwwwxxwwxwxfwwwwxwvwxwvwwvxgvwwvxxwvxwhxwwgghvxwxwxgwhxxxxgvwwxwwwhhwhxwwwxxwfvvUxhwwxwwvwwxfxwxghwgwwwggvwgwwwxwxwxxvwxxhhwxxwxwxwxwxxxxxwwwxxwwwwwxwwwwxxxwgwxxwfwwwxwwwwxwxvwgwgxwgxgxxwgvgwwwwxwvvxwwwvwvxvwwxxvwhwwwxwwwfgwwwwxvwgvwwxxvxxxwwwwwwewwwwwxvgwwwxwvxxxxvwvxwhwxwvWwwwxwgwxxxwfgwxggvgxhfxwwxwwgwwuwwwxwwwwwwwwvgxxwwwxwwvwwgxwwvxxgvwxxwwwwwggwwgwwgwwwwwfgwwwwwwwhgwwxwwwxwwwwxvwxwwwxxfxxwwwxvwwwwwgvwwwxwgvxwwxxggwwxwgxwxwwwwxgwwgghwgwwwxgxwxwwwwvxxwgvwxxwwwwxxxgwwgwwwxxwhwwwfgwwwwxxwwwgwwvwwWwgxwwwgxwxwwwwhwwwwwxxuwwwfwxvwxwggwhvwwwwwwwxXxwwwwwxwgxvxwwwwwwwxuxwwfwfwgwwvwwwwxfgfvvwwwwwgvuxwwwwwxgwvxwgwvwwgxfhvwvwwfwwvgwvxxxwwvwgwwvxhxxhxxwxvwwwvwgxgwxgwwwvxwwvwwwhgxuwwwxxwgwwvxwwwwwxxvxgwhxvwuwxxxxvvwghvvwxxxwgwvwfwwgvxwxxwfgvhwwxwfxxfxuwwvxwwwwxvwgxvxvxgfxwWwwxuwgwhxvgxwwwgxwwxghgvvwwggwwxxwwwgwwWWwxwxxhwxwxwgxgwwgvwgvwwwwwwggxhxwwxvvfhwgwxwxxxwxxgxwwwxxwwwxxvwggxwwxhfwwwehwwgwwvvuxgwWghwwxghwxwgxwxwwvxgwwwxwwwwwxwwxwwwvwgwwwwxhwwgwhwgwgfwwuwwwwwvwwwwvwwwgvwwwwgwhwvwwwwvxvfwguxwwwwwwwvwwwwhwwvwwwwwwgwwgwwwwxgwwxgxwxxwWxwxxwxxwxwgwgwwgwwxwwwgwxwfwgxgwxxwfhuwwwwwxwwwxwwwwwwwfWwxwwwWwwxwxvgxxgwwvvwwwwgvwwwxwggfuwxxwxwwfwhwwwuwxwwwgxwxwwxxwgwwwwwwwfwvwwxxwwwwggxwWwwwvxwvwxvWxwWwwvvgxxhgwwxfxwgwwxwwxggxwxxwxxfxhwxwwwxwwgwxxwxwwxwwxwxxxwwwwwwwwwwvxwwvxwwxwwwvvvgxggxwwWxwgvxxxxwggxwxwxxuwwwvwwuvxvwwwgfwwwwwxxwwwxvwwxwgxwxwxwxxwgwwvxgfwwwvwvxwwvwwwwwgggxwwwvwwvwwwxfgwwwwwvxgxwxWwWwwfxxxxuvwxwwwfwwxwhwWvwvvwguwwwxwxwxwxxxxwxxhhwwxgWvwguwwvxxwwuhwggwwwwwhwwxxwwwwwwxwwwwxxxXhwxwxvwwwvwxxwWwwwgwwgvxwwwxwwgwwxxwxwxxwxwwwwwxwwxwwwvxxgxwwwwwwwgvxwxxwwwhwgxxwXwwgxwghvvwxgwwxhwWwwvWwwwxhgwhwgwwxvwvxwxwhwxwwvwxxwxwWwwwwwwuxwxwwwwwwwwxxwxwwwwxxhwwgwwvwxwwxxxxwgwvXxxwwwwwwguvgxxwxxwwxwwwwwwwwwwwwwhWuwwwwwxxwwwxgvwwwwwxvvhgvggvvwwvwXgvxwwgxggvvvwwwxxwwhwwxwwwwxxwxwxwwwwwxxxxwwwwwwgvwwwwwwxvwxwwwwwwwwvxxxwwxfvwgwxvwwxhwxgvxXgvggvvxwwvhgvxxwvwwxggvvwwhwxxwgwwwxF5StwwgvfwwwxhwgwgwwhxhxxwvvwxhxhwwxhwwwgvwwwwwwvxwwgwxwwwwxwxwxxxxwwfxgwgwvwwhwxfwwwwwvxxwwwwwwgwxxxfwwxxgvxwwwvxwwxxwvwwxxwwwwwxxwxwxwwwwxwxxxwwwwwwgvwwwwwwgvwvwxwwwwxwwwwxwvwwvwxwwxwwwxwwxwwwwvwxxvxwxwxwwxwwvwwvwvxvwwwwwwwvxxwwwxwgvwwwwwhgwgxxwwwwwwwgxhhwwwgwwvhwxxxwxwxwxxxwvvwwvwxwwfwgwwhhwfwxwwxwwwwwwwwxxwwxxgvxxxwxwvwxvgwwvwwwwxxwwgwxxxxwwwxwgvwwwwwwxwwxwwwxwwwfwyvwwwwfwwwwfwwvwwfwwxwwwgwwwwwwfwxxxwxxfufwwvvvwvgwvvvwvgfvwwwwvvvwwgvwwwvwvvwwwvwxwvvwwxxxwxwvvwvwvvwwwwwvgwvvwwwwxxwvvwwwxgvxwxwxxwuwvwwwvwgwvgvwwvvvwwfwwwwwvwwxwfxxgwgxwxwxxxxwxgxwxwwffuwvfvvwvgwgvvwwggvwwwwgvvwhwgvwwwwvvwxwwwwgvwgwxvwxxxxwwwgwwwvwggwxwvfwwwgxvgxxgwfwxxwwwxxvwhxhwxgwhhfxhwwugwwwvvgvvwvwwwwwvwwwxwfhgwxvwwxwwxvwxgwxfwxxxwxgwxwxwfvvfgwvehguwvggwewwwwxwugwwxxhfwwwwwxhxfxwwwwwwwwvvwwwvvwwwwvvwgwwwwwwvwgxxwvwwwwwxwgxwxwfgvvvfwvgwvwfwvvvwwwwwvxgwwvwwxxwwwxgxgxwwwxwhwvwwxwwvwwxwvwwxxxwwxxwwgwxxwwwfgwwxwwwwwwvwvwxwxvwvgwgwwvwvwwxwwxwwfwxwgxwwwhwxfgvgvvwgwgxvvgfvwwwwwvfwwxwwgwwxxxvxwxwhwwhxxwwwxxwvwgwwggwgwvfwwxvfxwggwfwggwgxfwwwwxwwwggvwwwxwwggggwwwxwxfwwwwvwvwxwwwvvgwvwwgvwwxxwwxgwwfwxhxwxwwwwxxxvwfwwxwgfwwwvgxxxwwwwwvwfxwwvvfwwwgxgwwwwvxxvgwwwwwfxwvvxgwgwwwwWfvwwvvvvgwggvhhvwwfwwwwxwwxwwwxxxyhxwxxgwvwwwwwwwggwwwwwwwxwwxwwwwwfgwwwwwvfvwwxwwxwwwxwgxxwxxwxxxwxwwwwwggvwgwvwfwwWgfhhgggvwwwxwxwwxwxxhxxywwxxhVewwwWfwffwxxwgwWwfhxwxwgxxfwxxxhwwxxxhxwfwvwwxwfvwxwwwxxwwvwwgwxxxxxwwxxwxxxxxwwvvwxxwwwgvhxwvvxwwxxwvwgwwwxxxxwxwxxxxwwwwwgwwwxwwwwgwwwxxwwwwxxvwxxxvvgvvwgwwwwwwxxhxxwxwwxxwwxghxxxxxhxxxxvxxvwxwwwwvwgxwxxxvwxwwwwwxwxxxxwwxxwwgwwxwwxwxgxxwwwxvwwwxwxwwwxgvgvhxwwwwwxggwwxwxxwwxwxxwgxxxxxhxhxxxgwggwxwvwgvhwxwwxgwwwhhwwwxwxwwxwxxvxxwgwxxgxxwvxfwwxwxgxxwwwgwxwxxxxwwgxxwwxxxvwwwwwwwxxgvwwwggxgxwwvwfxwwxwwwwwvwwwxwgvwwwwwxvgwwwwgwxgggwxwgwvxwwwwwwvgvxgfvfgeevwgvvwvewgvvwwgwwwwxwgWeufgvvwwvfxwwgwwwwwwhhwvvxwfugwgvwgvvwwffwwwwvwgvwvwgwwwxwwuwxxwxwxxxwgeeueevwWutvwwwvvvwwgwfxwwxwgwfwewvvwwwwwwxvxwwwwggxxwvvwwgUfvwggwgwvwVwvwxvgvgxxxgGeuWvwwhwwvxwggwgwxwgvgxxwwwfWvfwhwvggwexgvvwgggxgwWxgwvxhwvwwwwwwgwxgxwxXgxxgxxwxwwfFeueewfVvvwwwwgfevfwxwwwwwwxwUvuwvwwwxwwvxxvxwwwxxxwxwgwfgfvgxxvggxgwxWvfxgxfxvgwxwwvwwvvgfVUxwxgwfwwwwxwxgfwxxggvxvgewgwvvwWgwwwwgvuwxwvwgfvwwwwvxgvvwwxwxwxwwggVevtvvefwwwwwveuwgwwwxwwUutvfvfwwwwwgwwxwwwgwxwwxWfvWuwwwetvwhvvwVfvvxwwxxwwwxxwwxxghwxUuuwvgwwvxwwvvvxgxwwfwxwwwewvwwwxxwxwxxwvxwwxgxgUUeevwVvuwwxwuvvvxgwgxxwxwwVvvgwvvgxgxwwfxvwwwWwwwgvgvgfefwhwwwxgwxgvvwXgwwwwwhwwwgwgVWFfxxgwgvvwxggwwWWwhwgwFevfvggvwwxwwuvxgwwwvxhwwwvwvwwwxxwwwwvwwxfxwgxgggfvwwwvwwwxwwgvwghvwwwxgvxxwwVxvvwxwuvwGxwwwwtwwwwwgwwwvvvwwwwwwwwwwxwwwwwwwwwxwwwvwwwevggVtwvvvfgVvwwWwwudvfvgwgvvvwgvvwwghwfwwwwxwwgvwwwwwwxwfwvvwwwvwwwuvvwxwwwwwufxwwwuvgwwwwwxwfvvgvvvvuwwgwwvWvuwwgfwwwwwwfvwwxfgxwwvxwwwwwwwgwwxwwvwwwwvwwwGuvfwgwgUuwgwvutffgwggwwgvvwwxxwxvgwwwwhwgggwwwwhgwwwwgwgwwxggfevgxvWwgwGxxxfwwwwxxgxxhwvxgwghgwwXxuxwwwgfwvwwvvvwwxxgfvwvvwWvgwwxggwvwvwxwwwwwxwwwwxwwwwxxwwwvexwwWvwvVxwwwwgwWggvwvvvxwwvwvgxwwwWxthxxwwxwwxwvwvxwwwggvwvvwfgwwgfvwvwxwxwwwtuwvwwwxwwuvwwgwwwwxgwvfwfvwvwvwwxwgvwfvuvWwwwwwvwwxgwgxwxxxwwwwwwwhfxwwwwwwwwwwwwvwwgwgwvwwvwgvwxhxwxxwwxxhwwxxvwwwvxwxxwwvgwggWvwgwwwvwxwwxwwwwvxgfvwgwwvuwwwwwffgfxgggwwwxvwguvwwwhhwwxxwgwwghgwwwwwvwwgvvxwvfvgfWxwxwwWwXxufwwwhwwwgwgwxwHxuhvwwxwhwwggxwgwxwvxwwvwxwvvwwfWgvwwgwwxwxwwwwwwwxwxgwwVgwfwgxwvwwgWxguwwwwvwgvxwwhwwwxxvgxvwxuwwwwwwwxwfwwgwgwgwwwwwggwwwgfwgwfgwfvwwgwwwuWhwgwfwwwxwwgfwwwwgwxgwwgwwxxwxwwwwwxfvgfvxxgwwwwxWwxxfwwxhwwxvvuwvwwwwwxxxwwfwvWwwwxgwwfxfwwxwwwwwwvwhWxwwwhwwvwvwwwwwugwwwgeWvxwxwwvwxwvWwwwxwxgwwxxxwwwxhwwvxwwwgwwwwvgvgxxwwwxxwwwwhxwwxxxwxwwxwwxxwxwxywwvgfwwxwwxfevvwxwwwwwhggxwwxwxvwwxwxwwwxwwwgwVxwxxwwwfxwxWxwwwxwwwvgegwwvwVgxvhxwxwwhffxxwwxxwwxwwwxguggfhwwwwxgxgxwwwwxwxxxvwegwwwwwxwwvVvwwwwwggxxwWwwwxwwwxxwwwgwxhhhgwxwwwwwxwwwwxwuxgvwwwxwwwwwwxxwwvxxwxwhwwxxxwwhwxgvwwwxwwxwwxwwxxxvwwwXwwhxxxvfvwwxwvwxwxVvfgxwxxwwwwwwwwwxwxxxwwwxxhxvxxwwwwWggwxwgwgWxxhgxwwwxxwggfxwgwwgxWxwxxgxgggWvggwwhgwwxxxxxwwxwwwxwwwwgwgvxxxxxwxwwwwgvwwwwhwwwwwwwgvwxWvwwxhhwxfuwwgvguwwXxxgxWxwxvwxwwwwvxgwwvwwwgxwwwfwgwwvwwwvwwvwwgvwwwwgvwxvvwwgvuwWWdvwwfvgeevgxwvwuwwxwgwwfvwfwxwvwwgwvwxvxwwwwfvxwwewgffwvwvWfwwwwwxxwwwgwVwvwwwwwvhwxwwwxggUUfewwfvewvhwveuvvxwvgwfwgwwwWVvuwwwxwxwxwwwxwvwwwxfgfvggvwWWevwwwggUfvwwhwgfvvwwwwggvwwwwwgwwhgVgwwxxvwxxfgufwwgfwwwwxhgxgwvxwvWwwwhwhwwWfvhwvwwxgxwwhgvwxhwvxxwxwxxgVevuufwEeuwwxwwfTgwwwwxvfgvwwggvvwxxwwwwwgwwwwwwvvvxvgvghgvwwwvgwxwfgVffxwwegfeEwwUwwxvwwwwwxxwgwxxwwgxwwwfwvwwvwggvwwgvwVwwxgVvwggwvxxwwxgvvgwvwwvwgwwwwxwxwwVVdveffvVuuwfwwuefvxwxvwwwwxwwfvuwwwwwwxxxwwwgxxwgxwwxdevfwxwxxfgughwwxxwVwuxfwWxxxggvwxvWwwxxwefdvuwgvgwwwwfwfwwgwwwwxwwwxhxxwwxwwwwwxwgwgWUfvvvwwWvvgvxwweuvvhwvhvvwwwwggEguwxxwxwwxwxxgwwwwxwgxwxxxwggvhgugggwwwwwwfvfhgvfWVVxgfwxhwgvxwgxgwxxxwvghwwwwvvwgwUuuwvwgugxxwvwvwwhgwwvwvxwvxwwxxwxwwxfxwvxxwgvggfvvwfwxxwwwxwgwwxvwfhwuWtwwwwxwwxwwwxwxfewwxwwwxwwxwwxxwwwfwwwwxwwxxxwwggwwwwwxwxvwvwxwwfWwwgffvwwwwfgvwwgwvWwxwwvvvgwwwwxwvwwwwwwwxvfwwwwwwxwxwxxxwwxxwwuVwwvwxxxffvwxwgwxvwwwwwxwxwxwwxxgwwgvwgWvvxwwfvvwwwggvwwxxwfvvwxxwxxwwxwffwwxwwhgwffffxxwwwvWxigxgwvxxwwwwvWhwvwwwwxvgvgwwwxxffvwxwwwwwxwxxwwvwwxwwwxwwwxxgvvvxwwwgwwxwguWxwvwwwgwwxwxwxwwwxwxwwvwwwwxwwvfxwwwwwwxwxwwwxxwxxwwuWgvwwgwwfvvgxxwgvxxxxwxxwwwxwxwwwwwxxvgvgxxwxwwxwwwxgwwwxwwxxvwxwxwxwwhxgvwxwvggvxwvgvwvwwxxfvvgxwwvwgxwwxxwwxxxwwxxxwwwxxwwwwfvgwxwwhxwxwguWxgwwwxwwwvwwxxwxxwgwwxwwxwxwxwwvxwvwxwwghwwwxxwwwxxxwwwxwwxvwxwwwxgvxwgwxwxxwxxwxwxgwwvwwuxwwwwwwgwwwfgfwvwvwwxwwwggwwwxwwwvwgxwgwxggwwgwxxxgwgwXWuwgFfvWwwxgGtfwwwwWVeggwgWgxfwgwwwgvvgwxugwvhvhxwxxxwwgwwwwgvwvwfwfwxfwwgwwxwgvWwuwvwgwxwgxwxwxwwxxwxfgewgwvwvwwxxwggvvwwwwwwwgwwwwwwwwghwwxxwwwxwxfgggggvWVewfvwW7ugwxwvWfUvxwvgggfwwwwwfvfxwxffwuwuhvxxwhwxxwwwwwwfvgWwwggwgggxxgwhv8hHWvvvwwWvxwgxxwxxwWhhWwwxwhgwwfgfwWwvvfgxgvvvhvvvwgxwxwwwgwxwhuwxwwxxwxxxxwxvwwwwvvvgxxfWxwgwxwwggfWgGGwuvghwwvwwgxxwwxvggwwwwwwwxxwghvvwgwwgfgvwwxfvwwgWwwwwwgvxwwhxweVevfwgwvwhwwxwxvxwxwwwwvVVwFvvxfvfgwwwVffgWwggwxgxwwxvwfwXwwwwxwwwgxwxgvwwwghwwxgWvgwwxwxgvvhhwxvgwxwwwwxwxvwxxwggxxwxxxxxwwhwxgxvxwvwxxwwwxvxwwgwwwwwwwwwwwxgvwwwwwxgwwwwwwwwwxfgfwvvwfvwxwxgfgvgvvwwxxvxxxgwvxwwwxwghxwwxwwxggxwxwwxwvfwgggwWhwwxhwwgggeGxh8VvvgvXvwwxghhwwggwwwvwfgxxwgXwwegxWwxwwxwwewxvhvwxxwwxvxwvxwxgwwvvxwwwwxxwvwvwwxxvwwggwgwwwhWvwwvvwvwvwgwwwhvwxgvgvhxwxwwwwwwfwwxxwwxwwwwxwwvvwxwwxwwwxwwwgguvwgvfvvwxwvxwxwwxwwggvfvvwxxwwxwwxxxxwwgwwxfgwwxwwwwwwwwxxxxwxwxwwwxwwxxxxvgvfvfwwwwxwvwxwxwxwwwgwxxwwxwxwwwwwgvwwgffvfwufvgwxwwwwwwwwvxwvwugvvvxwxwwxxxwwhwxxwxwffffffwhwvwgwWwwxxwxwxixvwggwgwWwwxwwwwxxxwhgxuwefvfwxxxwgwwvwxxwgxxwwwwxxwxxwxxxxxxvvvgwWvWwvwwwwwvxxxwxwxgxwxwwxxwwwwwxwxxxxxxwwvwwfgxwxwwwwwwwxwwwwwxwwwwxxxxxxvgvfvvvwxxvvwxwwvxwxwxwxwwwwxwwxwwwxxwxwxxwwwxgvgvxwwxxxxwxwxwwxxxxxwxwvwvwwwwwwvxwgxwwwxxwwwxxxwwxuvufvvvvwxvxgwwxxwgwxxxwxwhwwxwxxxwxxxxwfgvwwWvWhwwxwwxwwxgxwxxwwwgwwwgwxxxxwxwxwwxwwxwwxvwwwwxwxxwwxxvvxxwggxwxwxxxgxgxvwvvwwwwvwxwxxwxwvgxwxwwwwxuwwgvwwvwwwwvvwwwwwwwffvwwwwwwwxvvwwvwvvwwvwxxfggvWWsgWVewuUfgggvwwxgfvwxgwggfvwfwfWffvvwwwwwWwhwxxwvwwxwfwvgwwvwwwvwwffwxwxgvvwxgwvwuuwwwwwxwwffvwvvvggfvvwvwuwhggvwwwvwxwxWwvwxwhxxwwwwwwvgwwgGtfgfdvueVvXWuwwwwwuwwgvwWgfwWwggvvvvwxvwwwghwxxxwxwwwwwwggvfgvuwg8xwwxxxgwvwgHhugvvxxwWvwgwxwwwwWhhuxxwhwvwfVvwvvvwgwwwvwwvvwwwwwwwgxwwwwwxvhwwwxwxxwwwxwxgvvvgfvWwgwvuvxfWGgtwwxwhwwvwwgxwwwgvvghwxwxwwwwwgvwvwwwuvwvwwxvvgvfwwwwfvwwwxVwwwfgwwwwweegwgxvwwwffvwvgfgfvwwvgwvhgggwwxxxvwvxwwvwhwxwwwwxggwxwwwvwvvvvvwwxvwvxuvxwxwxwwwwgwvxxwwxwwxxwxvwxuwewvwwxwwxwvwwvwvhxwwvwwgwwxwwvxgwveeweffvffvvwvxdvvWvwgwwwwxwgwfvwxwwhwxwwwwxXwgxgwwxwgwfgwvgVvGwwhggvgguwh8hewgwxXwgwxgwgfwgwvXwwxhhxvwwwwvVgvvwwvwxwwwwvwvwwwwwwwwxwwwwvgwwwwwxwgwwwwwwvwwvwwwwghwggwvxwhguwvwgvwwxghgvggxwwwgwxxvwgwwwwvwfwwwwxgxwgwwwwgwgwwgvwwxwvvwwgwwwwxgwxxffgggfUvWVuvvvfgggvwwhwwwwwvwwwwggvvgVwwwgxvwwwwwxxxwhwxfvvfuwfvwwVwwwwwfvwwwwwhvwgxwwwevwwhwwwxwwxvgVevfgTwTuewvvfvWfuwwwwxwwwwwvvvvxgwwwwwwwwvgwxwwxwxggwvwgVVvWFuvguwwgWgwxxgwwfwgwwgwfwwwggwxwvxwgfwxwxgxwwwwxfWvfwggwwwwwwwhwgwfxgwWxXghwwwfWghgvwwxgxwhgwwwhgwwxwxgUUVvugfevwwwfgfwewxgwgvwvwwwueuvwwxwxvwwwwwwwxwwgvgvgfefwgwgvefThgvwwwVwwxfwUwwwgwwwvwxvwwfvwwwwxwwwwwxgwxggewgvwwvggvwwggxewwxxwhwxgwxvvwxwwvvvgwwwwxwwxwWfUvVvuguvvvvwgwgwvwhgwhvwwwgwvTugwgwwwwwwwxxwxwwxvxxwxfughfwwxxxFvexgxwwxxwxxeuwvxwxxxwxwfxwWgWhgvwxUuuwvgwwuxvwvwvwhgwghwxwvwvwwxxfxxwwxxxwwgwxvvVFevWfegeuuwvwwwVffgxwxxfwwwwxwfuvwwwwgwxxxgxwwwwxxxwxxwxwgggwgffgwvwfVWehWvgxghgxwwwxfvwxwgvwvxgxwwggwgwxvhwwwxxvwVdfgffwwvwvwwwxuwhgwwgwwwxwwwxwwxwxwwwvhxwwwxxvgfvvwwgwwxwfwugfwwxwgwutwwwwwxwxwVwwfxwxwwwwxwvxwwwggxwxwwwwxwvfwwxxwwwwwvwwwxwxwxxgwwgUuwgvwvwvwvwwwgwvwfxgwxggWtwdeggwwwwwfgwvvgwwxgwwwwwwwwvfwwwwvuwwwgvvggwfudwwwwxvfwwwxwwwvgwwwxwwxwfvvvfffvuwwwvwwwxwfgwwhxwvfuvwwwwwxwxvxwwxwwwvxgwwxwwvwvwwwwfuvggvwvwwvwevgwwwuwfwgwwxwFuvdegvwvwwwwhffgwwfhwhwvwwxgvVgvfwwwwxwvgwwgwwhwVxxgxwxfwwwvwwvGwWwuxwghgwxgxvxgwwfgwvgfwwwwgwvfwvewWwgvggggvwwwwxwwxwxwwgwwxwxwwwxggwvxwwWwvxfwwwhgwgWwuwwxwwfvgfWwvvwWwtwxvxxwxwwvxvwvxwwwgwwwwwwvuxggwwWwwedgwwxvvvvwwwvvxwwwwxxwhwwgfwfwvvgwwwwwfwwvvwWwxwwxwwvvwwvwvwwwwwxxxwxwfxxwwxgwvgwvvwxwwwwwwgxxgwxgwwwwvwxxwwwxwvwhwxxwxwvvwwwwwvxwwwxxvvhVwvvwxwwxxxwwwvgfvwgVwuuvxwwwfgvwgwggwhggwwwguvwwwwhwwwxwwwwvwwggwxwxwwvgWgwwwvWwvgxxwwxwwWwgxfwxwxxwxwfgwWfgwwGwuhvxwwxwwhwwwxgwxwxwvgwwwwxwvwwwwuXfvwwwxvxwvwxwwwxxwxwgwvwgwwxgxwwXgwgxgwwhwgXxWvwwxwwhvwgvwwwhgxgwwvvxuwwwwwwgwwvwvwvwwwwxfwwwwvwwvfvvwwfwwwwwvxxwvwvxWuuwvvwvwwgGtfwwwwwwegghgFfvwuwffwwwweewVwvwVwxwxwvvwxwfgxvuuufwewwwwwwwvwwwwwwvvvwvvvvwgvxvxwwwxxvUfwftwvwXfevfwvwevwxwgvffvvwxxwwgwwwwvwxwgwwxwwwgwfvfggvwfvvwwwww7uewgwgvVgwuhwVeuvvvfvvxeugexwvgvwwxvwwwwwwwwfvwwwwXwgwfxxgxwWXxfgVvvwvwgvwgxxwg7XxdxwwwxgwvvfvvgfwfwwwwgvgfwwfvxxxwwwfgvvxwxvwhxxwgwwgxwxwwgwwwfvvuwfxxhfwfuFWhcgwfxvwwxgwwvwgwvgwwwgwfvxwguxwwwvhwwwwvwwgvuuwwwvwwvwwwvwvwvvvwgvwxwwvwwgwxwwvfuvvvwwgwwwxwfvwwwwwwwxxwwwwwwhhwxwwvwwwxwwxwwxwvvwwwxffwgxwwvxwwwwwxvwwgxwgwwwwwwxwgxuvvwwxxwvwwwvwwwwwwwvwxwwwwvwxgwwwwwwwwwwwwwwvfvvuxwvxwhfvgwhwfvwwwxwfgvvwwxXxxwxxwgxwwwxwgwxxwwwfgvwxvWwgwxwwfvVwHxdwxwwxwwwhwwwggxvwwwwVgwwhwwvghgwvxfuwxhxxewxvgvwxwxxwwxwwxwxxxwvgwvwwwfwwwwwvwwwxwxghwwwvwwxWvvwvgwwghwxxgwxwwfwvwvwxuxwgwgwxxwwwWgVxwwwvwxwwwwxwwxgvwxwwwwgvxxxgxgwwwgwwwwgvwwxwwwxgvwwhwwwvwwwwwgvwwfvvwwxwwvwwvwxxgxxwwgxwwwwgvXwwwwxwwxhxwxxwwwxwfwvxvvhxxxvxwwgwwvvwwvwwwgwwwwwwwxggguuwxxwwwwwhxXwwwwwgghwgwwwwgwhwgwxwfhwwwwwxfwwwvwxwvxvwvxWuxgwxgwgwxxxwxwxgvwwwvvwwwxgxgxwxwxxxwgwwwgwvwwwwxhxwwxwwxxxhxxwxwgwwwvwfvxxhxguxxgxvwwwhgwvwuvwwwxvwwvwwwwxwwwwxwxwwxwwvwxxhwwwWxxwxgxVxwwxfwvxWhvxgwggvxgwxgwwwwwwvwxxgwwwuhvwwwvvwxggwwwwxxwwwxwgxwwgwxwvwwfwwwuwxwvvwxwwwwxgwxWwvwwwwwxwwwxxxwhwhwxxwwwwwxwwfvxwwfwxwwwwxwwxxxWvxwwxhwwwxxvxxwwwwxwxwwvwxgxwxwxwxwWwggxvggwvwwwfwwxuxgwWvxhgxwvwwxwwwhvwvgwxwxgwxwxxxxxhxvwxxwhwxwxwwwvwwxXxhhxxwxWhgxxwhxgwwwhwWwwwgxgWwhwwxhggwxxwwvwxhxvwwgwxxxwwwwxwgwgvvxxwWvxwwwwxxwwwgvwvwwwwwxxxwwvgwwXxwxhxxxxxgxwvgxguXvwhxwwxvwwvwwvwggwxwxgwwgxwwwxwggwwwvwxwwgwwwwVvvvgwfwvwwwvwfwffvwwwwwfwwwwxxwvgwfwvwwxwwwwfwvwwxvhwxfwwwwwvwxgwgwgwwwwwvgwwxvwwvwgwwwwwxggwwxxxxxvgvfwvvwxxfwvwwwwwhwwwxwwwvgvvvwwxwxhwwvvwxgwxwxvwwgxevvgfgfwvwwwfwwwgfwwwwwwgfwwwxwvgwfvwwwwxwxwfvwwwghwxwxxwwwgwwgwwwxwwwgwwvgwxhwwhhfwwwfhwvghxxwhgwgwwwwxhxxvgvfvwwxwxwwfvwgwwwwhxwwxwwvvvxgwwxwgvggwwgxwwhwwvwxwwwfgwvfwwwwgfggwfwwwfwgwfwwwvwwxhwvgwwxwvwvwwwxwxwvvfwwwvwvgvxvgwfxxwvvwxvwwwwwwwwwxwwwwxxwxxwuwvwvwwwwvvwfwgwgxwgwxwxwvfwwvxfxxvxxxxgwwwwvxwwxwxgxwwxvwwwfxxgwwwxxxxwggwwxxxwxxvxwxxwxxgxwwwvwwxvwvwxwxvgwwvgwxwwgvxwxwxwvwxvwvggwwwxxxugwwfgwwwxxwxgwwwgwgggwxwwgwfwwwwwxxgxxwvvfxgwxwxxvxwxwfffwWwvfxhgvWgwfwwwwghgxwwwxhhWxgwwwwwwxugxwxwwwwwxwgwwvwvwxxwwvvgwwgvwwxxvwxwxwvwgwgxgxwxwwgxxxxvwvvwvvvgvwgvgwvggwwwxxxxwxwwgxwwwwwvwwgvwwwwwwgwvvvwvwwgvggwvwggwwwwwgwvvxwwvvggwvwwwfgvxgvXxwwwWuwwVefwvwggvvwgwgwvvwwgwVevvvwUeuguwvwfwgxwwwhvgwgwwxfvvgUTxwwwvvvxgEUwggfgvvuXgwwwwvvUfffgwvvxugvgxgwwwwvgwvUvvewvvwwhWffvvfggvwgwxWvvvwvwvwgvwwwwvxhwxfgwgwwwwwvxwxwggvvwVewvgwWuwwwgvfvwwwwgwVefgwUuevvwvggvvwwwwhugwwwwxgvwwggfUfffwwvgwggfxx7wgwgwwwwfeefwwvgwx7wggfwgwgwwwwwggfhwwvvwvvfvfgwvvhwxgUvvVfvvvwwWwWxggvwhwgvwwwgwvwxvwfxvwwwgwwwvwwwwwwffgvwwvgwwfwfwggfwgvwxwwugvgxwwvwggwWeVtwwghwwvWeVtfwwwfwgUTwwwxfwwgEUwggffwwugvgxwwwfwwfeefvhfwwuXgvxhwwwwfgwwfeUwfwvxfwwfvfgffwvhgwvfgwwvxWwgvwwwgwwgwguwwwggwwwwgvefugUvvwvwxVufvuWuWvxwxfwfuuwxwwxXwggfwwfvvwggfwwxfvSwwegwwvwdwwvfvvwwwwwwvwwhvwwwwwwwwwwwwwvxxwxwxfwvwffvvfvwxhfUewfwfvfwxwhwggfgwwxgwgvwwwwvwgWxgwWwgwwgwwwwwwwgvvgwgvhwwhwggggwggfwhwwhwwvwgvxgwwvwwwfGeVuvwwgXwwwGeVuwvvwfvxdwwvxgwwwwSwwefvvwwvwwgwwwxhwwwwwxwwgwwwwgwxwwxwwwXwwwwwgwwwwwwwwgvwgwwwwwwwwwwvhwwvfvvwwwwvwwwwfvvwuxwwwxxwxxwwwwwxxxxwwxwwwwwwwggfwwwwwwxwwwwwwwxwwgwhwwwwxwvxvwwwwwvwvwwwwxwwwwwwxwhwwvwwwxxgwxgwgxxwwwvxwwwvwgwwgwxwxxwggwwwwwxvvgvwwwwwxgwwxwwxxwwwxwwwvwvwwwwwwwgfvxvxxhgwwwwwxwwxgwxwwxxxxwxwgvhwwwwwgwxwwwwwwxgvwwgwwxwwwwwwxxwxxvxvwxxwgwwhxwxgwxwxxwwwxvgxwwwwwwwwggxgwxwwxwwwgwggwhhwxxxxxxhwxxxxwxxxhxwxwwxwwwwwwxwxvgxwvwxwxvfvxwwghwwwwwwxxwwxwwxxxwgxxvwwxxwvwgwwxwxvwwgghhwxxwgxwwvxxxwwfxwxxxwwwwwwwvxxvwgxwgwxwwwwggwwwwxvgwwwwwwwxwwwxwwwxfxxwwvvxwxwwwvgxvwwwwwgvxwwxgwvwwwwxxwwxxwxhvwxgwwvxwwwwxwwwwxvxwwwfwwwwxgxxfwxvxwhhwfwwwwwvvwxxwwwvwvwwwwghhwfwwwwvwwvwxhwwwxxgxwgwwgwvwgwgwwwwwwvwwgwxwxwgvxvxxgxwgxxxwxwxgxwvwxwwhxxwwwgwwxxxvgwwwgxwxxggwhhwxgwgwwwxxxwhhwwwgwxxxywwwvwwwwvwwwwgwxwwfwwwvwxhhwgvwwgwxwxxvwwwvvwwgxvwwhwwxxwwgwwwxvgwgwwxvgxvgwwxxxwwwwwxwxwxxxuwxwwgvwwgwwwwwwwxwwfxwwxwwwxwvvxgvwwguVvwvWwvwwwwxwwwwwxxwugvwwwxwwwwwwxxxwwxggfxwwwwwwxxxvfvwxfwwxwxuwxxhwxvfvfvegwwwwwwwwwxhwvvvwwxwxwxxwwwwxwxxwwxvwfvwuWwgfwwwfwwvfxwhvwwgwwwwfvwvwwvwwxxwwwvwwxxhwwvgvgvwgwwxwwxwxwxxwwwxxwwwwwwwxwxwwxxxwxwwywwvWgfvwuwwwwvwwwvwwwwxxwwxffwwxwwghxwwwxwxxWwwwwhwwwwgexwwwwwwfwgvVxwxwxwxwuwvwwgVwfhfxhwwhxggxwxwhwwgfvxwwwwwwhwvuxgxwwwwvwxxvgfefvvwvwwwwwxwxwwxxwwwwwwwwwxwxxwxxhgxwwxwwvwvwwwwwwwwwuxxxwwwxvxxxwwwxxxwxwhwwwwwxwwwwxwwxxgvwvxwwwwxxwwxxxgwgwxwvVwgvVwwwvwgvwwwwwwwxwwxuwwwwwvxwxwxwxxwwhhvxwwxwwwgWvxwwwgvwWhggfwwxxxwhxvxxwgwwgvWggxxvwxxWwgwvxvxvwhwxwwxwwxvwvwwwxwwxxwwwxxhxwxwxXwwvxxhwxwwwgwgwxwwwwhhwuvfuwgwggxwXxgxWwuxxwxwxwwwwwvwwvwwxvwgvwwwwvwwwwwwvvxgvvwwwgvvwxgwvwwwevwvvvvvgfUvxxwgwwggxgVtuvwgvwwxvvxuwvwwwgvxwwwwgvwgvvxvwfwwWfwwfvvxwwwvwgvwwuwvwwwwgwxxwwxxwfVdufvefevvwwwwwVwefwwwwwgxwwUuvwvvxwxvwwwwwwxwhxwvvffwgvvwgvwwwwgVVvxwwvgvwVxwgVuuwgwwwwgxwhfvggwwwwfxwxfgufwggvvwgVxwvvwwhgxwvWxgvvwhgwwwwxhgwxgwxwwgxxxvwxxwxwgVVugwvwutugwwVvewwvfwwwvgwwfewwvwwwwxwvwgwwgwvwxxxwwwgfxgufxgggvwggfgxgfvgxwxwwvwgwvwxwwxwvxxvVfUxfvwwwfwvxvvwvuwhvwvuvwvVvwwwwgvxwxvwfvvvvwwwwwwgwwwxvxgwxgUUWvvgeuvwVvewxwvgwxwwwxwevvvfgwxwgggwWwwvwxwwwxxVtguuwvxwVufgwxvxwwxfXgvwxxxxgxwwwwxwwwdvefuggwwxxvvvvwwwgwwxwwwvgwwwwwxwgxwwxfwwgwvgVevVwuvfwwwGvvVwwwwwwvxwxUtugwwwwwwwwxxffgwxgwxhwgxwwhvgvgxgvvwwwwwwwgVffwgXwwgxwhwwwwvgggwgxwhwxeFWfwuuwgggwvwxUuuwvggvwwxwwvwvwwwfhgwwhehwwxxxwwxgwwxvwwwvgfvvvwvvwwwxwwxxwwwghwgwwvvwxwvwxwxwwwVgvtWwwxtwxwxwvggwwwhxxwwwvwwwhwwwwwwwxwwwxwxwwwwwxwwwwgWUwWtvWftfwwgwwwggfgwwxvwghvwgwgwgwwwvvghgwgwwxhxhwxwwwwwwwwwwvxggvwxfwwwwwWhvxxwwwwwWvxxxwxwHfuhgwxwwwwxwhwfvwvvfwgwvwvwvwgwwgvwgWxggwgvwwxwwwwwxwwwwwwxwwxwxwwvwggewgGewWvdfwgVgwwWwgvvfhggwgvvwwfwgwwwwgggwgwwxxvhgwwwhhvwvefgwwgwwwvGwwwvggWxxxgxxfwwwwxwvgxxxwxXWxxgxghwxwhgxhwwwgfvgvWWguwwxwwvvvgwvwfwwvwwwwfgwxwxwwxwwvwwxxwfgwgwwxwxwwxgwvwVwwvWvgwVwvvgxwwWxgggwwwxwwvwxggwxwwxWGxwhvwwxwxwhxwvwwwwvfwxgwvwggvwwfggxvhxxwxwwwWwvwxwwwxwwGwuggwxwwwgxggfwfgffgwuwwxwwvwwxxvvgwxwwwvvWwvxgxwwhwxwwwwwwhvghwxxxwwwghwgwwvwwwxwgwwwwvwwwxwxwvvhvxwwxxxxwxwxhxhxwxxwxwvvwgwvwxvwwxwhWfvxwwxvwxwxhwwwwxwxxwwxwwwfgwvwvfgvwwxwwfwvhvgWWwxwwwwgwwwhwwwxxwgvwxwhwfxwxwwwxwvggxwwWvfvWfwwwxgwfwxXWwxxhwwwgwhgwxwwwxHWgxwxxwxhwwghxgvwhwvgwvwxvwvwwwXgguxxxwwvwwxwwxxwwgxwxwwxgvwxgwuwwfvwwwVvxWvwxgwwwvxgwgwwxwhgxwxggwwxwwwwvwwxvggwwwwwwwwwwwwwwwwwgfxwwxggvxhfxxxgwvwgwvvwwvwwvwwwwhwwwwwvwwwwvxxwwxwwwvwxvfgvwwvvvxvwvwwxxvvwwxwwxwwxxwxxwwwwwggvxwwxwfvhxfxggwwgwwgwwhvvwgwwxwxxwxxVevwgguwxwggWxxvwfwwfxwgxxwvxxwghhwwxgfgvwgxgxxwvwgwxwvxggwwwwxxxwwxxxwhwwwwfxwvwwgwxgwwwwfgwwxgvhwwwwwwxwwwwwwwhwwwwvvwwgwvwwwxwwwwwwwwwwwxwxxvgwwwwwxwxwxwxwxwfvvwwxxwxvxxxxwxxvwxxxvwxxxxxxwwwwwwwxwwwwxxxwwwwvwxgwwxwwwxwwwxwwwwxwwwwxhwwvwvwxwxwxwwwwxxxwxxwfgxxxxxxxxvwwwxgwfwwwxwwxwxxwwxxwxwgvgvwhwxxwghwwwwxxwwwxwxgxwwxvwwwwwxwwxwwxwxwwwxwhwwxwwwwxxhvxwwxhxgwwxwwwwwvwwgfxwwwwwggfwwwwwwwwwwwwwwwwwwwwxwwwwwxwwxvwvwwwwwwgwwwvwvwgwwwxgwvxwvwvwwvwxwwwwwwwwxwhxwwwvwvvgwgwwwwwwwxwxwwvwwwwwwwgwwwwwwwwvwwwxwwwvwwxwgwwvwwhwwxwwwwxxvwwxwvxgvwwwvwvgwwwwxwwgwwwwgvwwxwvwxggwxwwwgwwwwhwvwwwwwvwxxxxwwwxwvgxxfwwvwvwwwwwwwwwwwwwgxwxwvwwwgwwwfwxgwwwgwwvwwwxwxwwwwgwwgwwvxwwwwvgwwwxwxgwxwwgwwxxggxwxvgwwfxwwwwwxxxgwwfwvwwxxvwwwvwwgwwvwvvgwgwwwwwwxwwwwwvvwwwwwvwgwwwwxwwwwwwvwwwxwwwwwwghwgwwxxwwwxvxwwxwxwxgwwwxfxxwxvwxwwwwwwxxxhwwwfwwwwxvxwxwwwvvwgwwvwwxwxwgxwwwgxxfgwwxvwwwxwwvwvwxwxwwwvvwwwvggwwwwxwwwwwhwxwxgwwgwgwwwxwwwhwwxxwxxxwvwwxxwfwxvxwgwwwggxxwwvwgxxfxwwwxxxgwwhhwxwgxwhwwwxxwwxxgwwwwgxwgwwwxxfgwxwgwwwwwvvwwgwvwgvwwwgwxwwwxwwwvwxwwwwgxvgxwxwwwxvgwwwwwxvgwwxxxghfwggwgwgehgfxgvwgvwewwwwwwfWvwfxffwwwwWwgfwwwwwwxhxghfhETxfvffuuwxVewfVfVfvvwvwwfhgfgUvvwfvvwvwxgfvvwfwwgXxwggwxfvfxVefuuvxgfffwwwfuugwwgxVefvfwfvvwdgvvffvwwwwXdgvvxxfgwgefuuwfuuvwwwfvvwwwwvxhwvvwfvvvvxguwwvwfwwgwwwwwgfwwvwhgfxVewxgfffvvwhETffVefuuwvwwfhfvgfvvwfvvwXUvvwfwwgvwgxxxgvwfVfVfwwwwwwvffVe(wwwvXXfwvvwgwwwHgwwwhhUYffegvwefvvwfuugxhfuuwwwwvwwwwvvwfvvgwguwwwgwfvxgwwwxgfwwwgwwwwwvwwfwwgwvvwvwwfXXfwvvwXTEcwwWwwwhhUwfwwwHeVtwxxfUvvfwwwfhgfgxVefvvvhfvgwvvwfvvgwwWxVeUvfwfvvwdgvvUfvwwwwhdgvvhhwWvwfUvvwfvfwvxgfvvwgwwwwgwwwUvfwwwwxuwwvwvvxhfwwwwggvwwvwxfffvvwfvvwuwwfvvwHuwwhhUfvvwuwwgvhguwwXXfvxffwwwwvwxgdgvvvwfwXwgwfwfdgvvvwvvgwggggwgxwwwwwwWwgffvvwffvwwgUvvwgwwwvxgwwwUfvwxhuwwwgggwwwxfwwwgvwgwgwwwwfwwgwwwXwwwfwwghhUwwwxHeVtwwwhfwwwXXfgwgfwww8TEegwgfeewwwwwXdgvvwwgfvwggfwwwxxfdgvvwggvvxwwgvwggwgxwwwwxhxxxfwwvwxxYffewgwwUvvfhhwwwvwxffwwwwwgwwfeewwwwwtwwuxwwgvwwvwwxxwfwwwwwwxwwwgwwwvwwwfxwwvxvgfvwwwxxxxwvffwWsewgfvvVvvggvxgwwwwwwWwhwVeuVguVfvgvwwgvvxxgwgxxxvwgwvwwVwxWgwvwwvfwwwwWfuhhwwwwwvvwvvgwxwwgvvxgvwxxxxvgfvvgvffwxxwvfwwfwvwwwwwfvvvgwwwghwwxxwxxgwxxxwgxwwwwvggGtfwhgvwewvxWuuwwwwwwvwhvhgfdvVweefwfwxwxwuwwwgVwwxxwwwwwwwwgffvwxxwWwwwxxgwwwXxXfvvVghv7vxwgwwwwwggxXFxxwxwvvvfUwfvefghwgxftwwwgewxXxgwgfvfgxgwwvxwwwxwwwgwwxwwwwxvwvfgwWfFxxhvwfwWfhW6fxwgwgvfwgwwggxwwwwgxvwugwwwwvwwwwhgwwgvxvwwwgwWwuwwxwvgwwwvwwvgxgwgvgwxwxwwwxvgfvfgvwwvxxwwWhfwvwhxwwfvggwvwwxvxwwxwxwwxwwwwwxgffwwwwvgwxxvxxwxwxwwwwvwvwwxxwwxwxwwwxxxgwxvxfwuewvxxwxvvwxwwwwxwwwwgvwwxwwxxfxwwvxwxvWfvfwvwvwwxwxgwvwwwwwwwxxwwwwwwgwxhhwxwwxwhwwxxwxwwxfvgwwgfVwxxgwwxwxhgWwxHFxxwwxxwwxwhewgwvxggghxwwwhwwvwwwwvvwWvvxwwwxwwwvxwwwvxwxwwwvwwwwwwgxwvwwwwwwwwwwwxxwwxvwwwwvwgwvghxwwxguvwwwwgwfwwxhvxxwxhxgvwwxwxuxwgWewxvwwwgvxwwwwwwwwwwxvwxvvwxxwwwwvxxwhvwfwgwwwfwwwwwwwwwvwwwgxwgvvxwvuuxwvvwwggwwwwwvwwwwwwwxwxxfvwwwwwvxghxxvwwvvufxvwwwvwwxvvhwvwvwvwxwxwwwwwuxgwwxwwwvwxwxgvxwwwwwwwwhwwwwwgxgxgvwvwwgwwwwwwwwgfvvwxxgvwvwwgwwwxxwwxgvwwwgxwxgxgxwwvwwwgwwgwwxwwwhxxwvwwwxxxwxwxwvwwvwwwwxwvvwwwwwvwwwxgvvuxwxhwwwwuxwwXwwwwxgvxwwxwhwwwgwwxgewwwuxwfvxWxgwwgvxwhgxwvwggwwwWvxxgvwwwgwwwvwwxvgxwwwwwwwwwvxwvwgwvuvfwwvwxwgwwwhvwuvwwwwvwxxwwxwxxwvvxhgvxwwhwwxfvxwwwxwwfwwxwxxwxwwwwuvxwxhgwxvwwwxwwhxwxwvwgvwvvwwwwxwxwwwwuvxgwgvwwwwwgwgwvWwxgfwwwwwwwwxxwuwxwwxwxxwvwwwwwhwwwwwhwxwxwwxXwxwgwwhWvxhxxwvwwhwxwxwxgvxwwwWwhvvwWwwwxxxwwwwwwwwgwwgxxwwxwwgxvvWvwxxwxwxgvwxxwxwhxwxvwxghxgWvgXwwwxxxvgxwxvxwxwwwxwxwwwwxwxwwgwwwxvwfwwwwwwxxwxgwwwwgVgggvwwwfvwWfvwwwWgwwgwwxwWdvfgfwwwvxhwhFgegwxfhwwwhwwvwxwwxwgvvwwwWwdwwfgwvwgfgwuwwwxgggxxxwxwwwfwwxxwwwxwwxxhwvfwgfwwwxvwvgfgwvwVWwxvwxggvvwvwwxwwxwwwxwxwwgwxwxwwvwwxwwgwwhvvwxfvgWUwwggwwvgwggGuwwvvvwwwxvwFgevwhwxwfwgwwwwxhvvwgwwwwwwxxgevgfwwVxgwgxwfwwwgxwgxwxggwgwGghwwWWxxvwwgfvwwwguwwwhgfffxfwgwxwvvwfWwvwwxwwxwvxwwwxwwggxwwwwwgvwgghwvgwgfxwwxwwWwWWxwwwxwwfvfvWxwwWGxxgwvvwxwwvwxvwvwwwxxvvwwwwVdvgwwwwwWwguxwwvxggvxxwwgwvxxwwwwxwxhwggfwfvgwWvwvgvwVWgvwgwxwwwwwvWwvxwgwwhwwwxwwwxwwwggwwwwxgxvwwwxgvxxgwgvwwvwxwwxwvwwwwwxxwxxwwgxghwwwwxwxvwwwwwxvwwvgwwXufwxwwwvwxwwwwwgxwxggwwvwwfvwwwfwvwwwfvwgvwgWwxwwwwxwgwvwxwwwxxxwvgwwwwxfwxxwvgWwxwwWwxggwwxwgwWwxgfwxwxwwfwvWwwxwxwGWxxfwgwhwwwhgwvwhwxwwxxwwxwvwgwghvewxvwxvxxxxxwwwgxwxwhwgwvxgwwxgvwwXwvxguwwxwwwggwgxwvwwhgwwgxvuwwvvuwgwwvfwwwxvvvxwvwwwxxwwxxwxxvwgufvuwvvuwxwwwwwhxwwwwvwxwwxxvvvxwvwwffwxguwwxwvwwwwxxgugwwwxxxxxxxwwwwwxxwxvwgefgfwvgvwvwfwwxwvvvwwvwgwvwwwvvwwwwwwvwxvxwfvvwwwwvwgwfxwgxvfwvxwwwwwwwwwwwvxhufwwwvgwwxwvwwxwwxwxxwxxwwgexwwwwwwwwxgxxwwfwvvgvwwwgwwwwwwgwxwxwvwwxgwwfgwvWvwxfvgwwxfxvxwwwwxxxvxgvvwwxwxwwwxvwxwxwxwxxxgywxvwwwwwxxxwxxxgxxxxxwxxfvWgufvgwwvwxwvwvvwgwvfwxwxwvwwwxxvwgwwxxxwxwuggwwvvwwwwxwxvxwvuvgwgwwwwxhxwxxxwwwxxwhxvvwwwvxwwwhxxgvwwxwxwvhvwxxwxxxvvwwwvgwwvxwgfwvwgxxwwwxwwwvxgwwgwvwwfWfwxwwvgwvxwvgwwwwxfxxxxwhwxwwwggwvwwwwwgwvxxxvxxxWfwwwwxwfwxvxwxwxwvvwxvwWfWuwugwWgwwwxwgvgwughgvwwxxgwgwwwwvfxwgvwwwvwxvwwwwXhwwxgwwvxwxWvWwxwwxwwwwwxwvwwwwvVxguwwxwxwwxxxwxwwwwwwwvwwggwwvhvwwwwwwwwwwwwwwfggvwwgwxgfgxxvwwwwwwwwxwxvwxwwwvwvwwwxxxgxwxvwwxxwwxxxxxwxxwxwxxwgvWvwwuwfwwwwwxgwvwwwvxwxgvwwwwxwwwgxwwwwwvwWhwwwxwgwvxwxwwxxwwwxgvwwxxfwwwxxxwwwwxwxxxwwxxxxxxxxxuwwwvwwggwwwvwwwwwgWwwwwVwxwwwwwwwhwwxhxxgvwwWwVgwvwgwxwwwwwwxxwwhwhwxxxwwwwwwvxxgfxwwwwxwwxxxxxxxxxwwvxwwwwxhxwxxxwxwwwwwwuvxwfvfffvwvgwxgWwwwwwfgggwvgvwwxxwwwwgwwxwwwwxwxxwwwgvvxwwwwvfUwvwwwwxxwwwwxwwwwwgxwwwwxxwwxxwwwwxwwhxwwxwxxwxwxxxxxwxwvwwwxxxxvwgxgxwwxwwxwwxwxxwxxwwwfwwvgvwvwvggwguwwgwwwwxxxwxwxwxxxwhxxwwwgwwwwwwwxwwwwwXwwwwwxxxxxvwwvwwwvxwwwgwgxwxxxxwxxxxxxxxhwgwxxgxwxwxwwxxxvvfgfvwgvghwVfgwgvgvwwwwwxxxxwwwxwxxvwxxwxxwwuvwgwwwvwwgWwvxxxwxwwwwwwwwxxxxxwwvxwwxxwvwgxxxwxxxxxxxwxwwwwxxwxhxxxxxwxxgvwwvwwgwgvvwxvwwwxxwwwwwwwxwvwvgwwwwxwwwxvwvwwwgugwvvwvwvvguvwwwxxxvwxWwxxwwwwwwhwvwvwwwvwwxwwxgugwwwwvwwwwxxwwwxwwxxwgvvwxuwwfwwwvvgUguwwvxvvvxxwwwfwwuvwwwxfvvvwwgwwwwwwwwwwwwwgwwwwwxwwwwwwwwxwgwvfwwvwxwxwwewwwgegvgxwxwxhwxvvwvxwwwwwxwxwwwxxwwwgxxgwfwwwwwwwwvxwwwwwwwxvvhwvwwwvggwwvvwwwgxwvwwwwwwwwxvvwwwwvwhvwxvwvwvwuxvwvwgvvxwvwwwwvwwxwvwwxwxwuwwwxwxxwwwxwwxxwwwuvwvxxwxvvxwxgxxwxwxwgegwvwxwwvwwVvvgwfxwwwhgwwwgwuwvhVwwhxxvwwwvvxwxwwvvvfwwgwwxwwxwwvxwwhwvxwvvuvvwxxwxwwxwwwwvxvwwvvvwxxwgwwwxwwwwwwwwwxuwwvxvwwvwgxwwwwwxwwxwwuvwwwwwwwwwwvwvwwwwfwwxwwvwwwwwwwwwwwwwgxwxwvwwvvwxwgvxfwgvwwwvwgwwvXwwvhwwwdfxfwfwvxgxwwwxxwvxxwwwwgxwwwwwxhwxxwwvwxxxvwvwvwwvwwutfWwWvvwwwvvvwVxwuwwgvwgwwxxwvvwwvwwggwwwwvwwwvwwgwfxwvwwwvwxfwfxwvwvhvwvwxwWxxwwfhwvxwwwwxwvvwwwwwvfwghgxwwwxwwhwwwwxwwxgwgwxwxvwxwxwwwwhwwxwxwxgwvwvfvvwwwwwdfvgwwwwwwwxwvwxwwvwwxwwwwvvwfwxxwwwwwvwvwgwxwxxxwwwwwwxxwfvvwwgwxxwwxwxxwwwwxwwwxxwwxwwgvwxxwwwwxwwgwxwxxwwwgxxwwwxwwgwwgedfWxwwwgwwhfwwgwwgfvwvvwfwxwgwgwvvwwwxwxwxffwgwwwwwvwxxwvwxwxwwwwwwxxwgwwwwxxxwfwwxxwxxwwwwxwxwxwwwwxxwwwwxwgxwwwxxxxwwxwxxwxwxxwwwwwwwwwwwegwwwwvwwwfgvwwwvwwgefxxfgvfwvwwvwvwwwgwvxfggfggvwwvwhxwxvwgxxwgvgvwwgvwwxxwwwwxwwwxwwwwvgwwwufwwgwwwwgvwxvwwufvwwwwhxwxxwfwvwgvvwwwvwwwxvxwvwxwwwxxxwxwwwvxfvgefufvwvfVfwwgwgWUwgxvxfwuguwvffwwxwvwvwxwgwwxwgfwvwwxwwgwwfxwwwxwwhxvwUxxhfvwvvxxgxwwgfxvwwxxwwwwwxwwxvvvwwvwwxwwvwgwwwwgwgwhwxxvwwgxwxwwxwwgvgxwxxwwgwxwwfyxgvWwxwvxwxxxwxwwxxxwwwwxgfVwefvwgufvwfgvedgwwvvwgvvwvwwxefuwgwvwvwxxxxwgfgWwvgfuguvxvfvwvwwwwwvwwwufvuwvwwwuxwvwxvxxggwxwwwwwwvwvwxxvwuxwvggwxgwxwxxwxxwwwxxxhxxxxgvwwxgwwxxxwwwxxwxxwhwvgxxxxhxxxwgfevWfvwdUuVvwufFevWgegVvgwwwgwfwwwgxxwxVwVwvfGgwUxgwgwwwhwgwwwugwwwvxfwfxXXfwvwghgwwwwwwvgWwwxfxwvWxwuuexgtfwwxwwwxxwwxxwxvvwxwxxxxxgwwxgwwxxwwhxxwwwhwwwvxhvwxwxxwgxxxwwxxuxwwwwwwwgwvwwwwwwwewfwwwwgvwwwgvvwwwfwxvwwuwxwwxwvvwwwewvvxwwwgxvgwgfwwgwuwwwxxwwwvvvwgfwwvfgwewwxwwwwwwgwvxwwxxxxxxwwwwfwwwwwwwwwxwwwxwwwwvwxwxwxxwwwfvwwfwxvVwwwwuwgwvwfwgvvwwxgwxxwwwwevwwwvwwwwwwwwwgwwvxwxwxwxghgvxwgxwwwwxwgxwegxxvwwwwwxvwwwxwgwvwwwwwwvwwwwwxxwwxwwwxgxwvwwwWxxwvvfxwwwvxwxwwwwxxeuwwwffvwfvwgwwgfevgwwwvfwwwgwwwvwwwwwxwwwwxwxwxwgevvvwwwvgvwwwwxwwgwxxwwvwvxvwgwxxwwwwgwwwwfgWfvwvgwfwwguexwwvgwvwwvwwxxxwwxwxguwvwwwwwxwwxwxxggxwxxwwxwxxxxxvwfvfuwwfgegwgwfugwgvuggwgwgffwuwxfxgwwwwwfwfxvgvgvwwvwwwwvvwwwvgvwxwwxwwwgwfxxwwggwvexxwgwvvvwwfgwwwvwwxwwxwgwwwwwxwfwxwxxgwwxwwwwwxwwwxwxwggxwxwxxwxVxxvwwwwxxwxxxwwxwxwxwwxwwwxvxwwwwwwwwwxwwxxwwwxwxwwxxxvwxwxxwwwxxwwwwxwxwwxxxwxxwxxwwxxwwwvwwxxxwxxwwwxwxwwwwwwwwwwwwwwwwwwxwwwwwwwwwwxwxwxwwwvwxxwwwwwwwxxwxwwxwxwwwwwwxvxvwwwxxxxxwxvwxwwwxxwwwxxxwwvfwwwwvwwwwwvwvvxvxwvvvwwwwwwwwwwvwwvwwwwwwxwwxxwwwxwwfwhvwwxwwwwxxxxxxxwxxxwxxxwwwwvfwwwwwwvxwwggwwwvwwwwwwwwwxxxxwxxxwwwwwwxxwvwwwvwvwwwwxxwwxxwwwwxxxxwwxwvwxxxxxxxxwwxxwwxxwwwxwwvwwwwwwwvxwwgvwvfwggwgfwgvwwwvvwwwwxfgwvwwwwvgwxVuvgwwwvvgwwwwgwvvwwwwwwwxwvwgvwwwwvxwwfwvwwgxxwxwvwwvvxwwwgWwwwwwgwvwwwxwxgwxxxwwwvxwwwvwwwwwvvxwwxwwwfwwxxxxxwxxwxwxwxgxwwxwgvgwwwwgfwgwwwgfwvgfvwguwgwwwwWgxwwxwwwxwgvvWwxwwwwwxxfwggwwwwgvxwvwWexwwwvwxwgwwgwwxwxwxxfxwwxxwxvxgwwwwhwwgwwWxxwwxwwxwxwwwxwxwxxgwwwwwgwxvxxxxwwgxwwxwwfxxxwxxgxwwwxgwwwxxwwvwwwwvwwwvvWfvwvgwvwwwwwvxvwwwvwwwxwxxwwxxvwgwwvwxwfwvvvwwwvxxwwwwxhwxwvxwgxwxxvwvwwwvwxgwxgwwxwxxxvxwxwwwxvwxhxxwxvwwxwxwxwxxwxwxwxwxwxxwwwxxxgwwxwwwxwWgwwwwwgwwxwxxVuwWvhwwgvxwxwxgvwwxxxwwwvvxwwhvxwxxwwwvgwwwxwwvwwwvvxxwwwwwxwwwgwvxwwwwwwxxwxxwxwxwvxxwxxwwgxxwwwwxxxxxvxxwwwwxwxwwwxgwwwwwwwxxxxwxxwxwwgxwvwwwvwwwwwwwwwxgvwwvxvvvwfvwwwxxwwwwwwwwvvvvvwwwwwwwwwwwxWfvtwvvwxwwxwwwxwwwwwwvggwvhwwwxwxwgvwwxhwxwxxXfvwwwwwwwxxxwwwwwwxxvvvvwgvvwvwwvvxgwwwwgvwwxvWffvwwwxwwwxhvwwxwxvgvvwvwfggwuwwxwhxuwwwwwwxwvxxwxwvwwxWffwwhwvxxwxxwxwwwwxxwggfwvxwhxwvxwxxwwwwxxwvvwwffwwwvxwwwwvxwwwwwwwwwwwxxvwxvfggwvgwwwgwwwxwwwvvwwwwwxwxwvwwgvwwwwfwwxxwfwxxwxwxxwxfwwvwwwwwxxwxxxgxwwxxxwwwwxxxwwvgwwvwvwvxggwvwwxxvuwwfxxggwwvwxvwwwwwvgwwwwgvwwwxwvfggwwxxvwwwhwuxwxxxwwwxwxxwvwvxvwwwwxxvxwxwwwxxwxxxwxwwxvxwwwwxxwwxuxwvwvwvwvwwwwvhwwvggwwxxvgvwwvvwwgvgwwwwwxwwewwvwwwwxXwwwvvwwwxxxwwwwwxvwxxvwxwwgwwvwxwwwxxwxxvwvvwwwxwvvwwxwxwwvwvwwxxxxwxxwwxwweWvwuggwgfwwgfwwwgwwxwxwwwwwwwgvvwwfwwxwwwwgwwgwfwwwxwfwwwgwxwwwwwwwxwwwwwxwwxwxwgxvwwwwwvxwxwxwwxwwwxxxwvwwwwwwgxxxwwxxwxxwwxxwvwwwwffvuwwvWfwwxvvvwvggwvgvvfvvwwwfwwxwggwxwwwfxwwgvVwvxvwvgwwxgxwxwwwxxwxwwwxxwvwvxfwwxWxxxwhwwwwwwxwwxxwwwwhhwxxxwwwwwgwxxwvwxWfvxwwxwxxxhwxxggfUfvgWfvhwwwVwxwwwwgvgwxwwWwvgvwwvxgwxwxwwwwgXhfxxwgwwwwvvwwxwxxwvwxwwgxvwwxxwxwxxxhhwxxxwhwwxwvvwugvvgwwwwxwxxxxxxxwwwxxwwwwxxxxwxgxwwwwwxxwwxwwgvwvwxvvfwwxxxfgwggwwxxxxxgxwxwxxwwwwwwxwwxwwwfwwwwvgxxgwwgxwxwwgwwwwxwxwwxwwxwwwwfxwwwwwxwxxhwxwxxxxwwvwwwxxwxwwyxxxvwwxffwvgfgwwgwggfggwwwgvxgwggwwxwvxwvwwwgwxwxvfwvvfgvvvwvggxxxwvwwhggwwgwxwwxxwwxwxgwwxxwxwxwwwxwwxhxgwxwxwxxxwwwwwwggwxvwxwxxxwxxxwwxwxxvwfgfwxvwwwwwwfgvwxwwvxwxxwwxwwxxwwvwwwxxwxvwxwwwxwxvwwfxvwxwxwxwwxwxwgxwwxxwxhxxwxxwxwxwxhxwxwwwwxxxxxwxxvfgwwwfwwvwwvxwwgwgxwvggwhwgwxxxxwwwwvwxvxwwwxgwgwwvvwwfxwwwvxwwhxhgxxxxwvhxgwwxxwxwwxxxwxwxxxwxwwxxxxwxwxxwwxwwxxwwgxxxxxxgwxxwwxwwwwxxxwvvwwwwwwwvwxwwwwxwwxwwxwwxxwvvwwxgwxwxxhwwwxwxvxgwwxwxwwvxwxxwwwwwwxwxxwwwwxxwwwwwwxxwwwwwwxwvgxwwxwwwwwwxwwwwwxwwxwwwwwwxwwvwxwgwwwxxxxvxwwwwxvxxxvwxxggxwwxwwxxwwwwwwwwwxwxxxxxwwxxwfxwwxwggwwwxwxwwwwwwxwwwwxxwwwwwwwwxwwxwwwxxwwxwvgwwxhxwxwwwxwxxwwwwwxwxxwxxwxxwwwxxxxxxvwwxxxxxwwxwwwvwwvvwwwwxwxwwxxgwxwxwvwxwwxwwxvxwwwwxwxxwwwwwwgxxvwxxwwxwwwwwwxxxxwwwxwxwxwxwwwwxxvwwxwwwxwuwwvvvvwwwvfwggvwwggwvvwwwvwggxvvxwwwxvwvwvxwwwwvwwwwwwwwgvxwvwhvvxwwhvwwwwxxxvxxxhwwxwxwwxwhxxxwwxxxwxwvxxgwxeuwfvfwxVvvvwwfvwwuwgfvuuwgvgvwwwvwvfwfwvwvvwhxeuwvwffwuvwvwwgxvuwwwuuwgfwgxgxvvxxwxwvwwwwxwwwwvwgwxwwxhxxwwxxxxwvwgxwxwwxxvxwxwxxxwvwwwxwvwvvwwwxwwwwwwxwwxwwgwvvwwwvwwvwwxwvvwxxwwwwxxwwvgwwvvwxwxxwxwxxxhxwxxwxwxxxxxwwxxwxxwxxwwxxxxgxxwgwvVgwfgwwwwwgwfvvvuxggwwwwXwwgwwhfwwvwwhwwwwwwgvgwwxwwwwwwwwvxxuwwwwwxvwvxwwwwwwxxwgvhwxxwwxxxxwxwxxwxxwwwxxxwvwxxwwhwxxxxxwvwwwvwwwffwvwwwwwwgggwwgxvvwwxvwvwvWwvwvwwwwuwwwgvvvwwvftvWxwwwwwgwvwwwxwvvvvgwwwwwwvxvggxwwwwvwhUuvwwwWvwwwwvwwvwwvwwwxwwxwxxxxwxwwwvvvgvwwwwwvwgxxxwwxwwwwwxwxxxwxxXwwwgwvwwgvvvfgwguvfgfvwwwgeseFwgwfgwvvwwwwvwuufVwWwwwvvxgxvwgwvwwwXwugwwgvwwewxFwgxwxxxwwwwwwwxvwwwwwghwwwxwwxgvvwwgfvwwvuvgWWwwwwwwwwxhwwxgwxwwwwwwvwwvwvwwwwxwxwxggxxfxwwwwXwxwwwvwwvxwwxwwhwvvfwwwwgwvwwffvvvuwgvwwxwwwwgUuvwwwwwwxgvwwwwwwwwwxwwwftvWvwvwwwvwvwvwgwwwwwwwwxwxwhwwwxwwxwwwwwwwxxgwwwxxwwwxwgwwfwwwgvwvwwwwwxxxgxxvwwwhwwwxxwwwxwwwxwxxwwwwwxxxxvwxxXwgwxvwvgwfuggwwfweseFwVvwwvwwwgwwfvwwvwwwgwwgxwwvfwwfwgxwwwwvwwwwuwggwvwwwwvxgwghxvxvwxxwxwwwwwxwwwwwwxwWwvxwwwwwwwwxwwwwvxwwwwwwxvwxwwwgwwxxwwgwwwwxwwwxxxwwwgwxgwxgvwwwwxxwvxwxxxwvxwxvxxxufgwvwwwvwvwwwwwwwwwvwvwwwwfwvxvwvwwvwwwwwvwwxwvxwwwewvvgvwwgxwwwwvuwhwwwvwvwwfgwwwwhwxwwxwxxxwvwwgvwwwwvwwdfwwwwwxxxhfwwwwwxwwwxxwxwvwwgwwwxvwwwxwwwxhwxwhhwwvwwwwvvwvgvwvwfwuwwwfwvwwwvWvvvwufwvwfvggwwwwwgvetfWgwwvvwxwxgxgggwwwvwvvhwvwvwvwwxwgwwwwxuwwwvxwwwxWxwwxvxwxxwxwwwwgwwwwwwwxwwvwgwwwvwxwwxwvvwgwvwgxxwgwwvxxwwwwwwxwxwgxwwxxxwwwwwxxwwwwxxwxhvwuwvdfwwwwfwwvwvuwwwwvwwwxwgwwvvvwvxxwwwxxwwwwwvvwwvvuvhvwwwwwwwwwwwgvwgxwwwxwwwwvwuxwwwhwwwvwwxxgwwvxwwwwxxxwwgwwwwxxwxwwgwxvwwwxxxwwxwwxxwxwggwhxxfxwxwwvwwxgvvvvvwwWuvwvwvwgwwwgvwWvuwvwfwgetfWvwggwwwwwwwgxwxwxwwxwvgwvvwwwwvwwwwwxxwvwwwwvwwxvgwwxwwwgwwwwxwxwvwwwwhwxxwwwwwxwvwxgwwwvwwgwwwxwwggwwxxwwxwwwxwwwhwwwgxxxxwwwwwxxwwgwgwwgguwwwwwwwvwvgvvwgwwgwvvwwwwwwwwgwwwwwwwwwwwwxwwwwfvvgwvtgwvwwwgwvwwwxxwwwwwwwxwwwxgwxwwgwxwwwwwxwvvvwwwgwwvvvwwxwxwwwwwwwxvwwwwwwxwwwwwwwxgwvwvvwwgxwxxxxwfvvxvvgwvwwgfgdfwvwgvwvwgwgwwwwwwwwwxgfwgwxwwwwwwwwwwvwwfvwwwwvwxwwxxvwwwxxwwwwxxhwxfwwxgxwwvwwwwwwwwwxxfwgxxwwxwwxwwxxwwwxvxwwgxvxxxwxxwwwwxwhhxwwgxwgevvfuwvwwwuvwwwwfgvvvwvvgwvxggfuvwwwgwxvvvfvwfwwwwvwvgwwwwgwwwgvgwwvwwwwxwvvvwvwwxwwxvvwwvxwxxfwwxwxxvwgxxwwwWxwvwxwwxwvvxvwwwwwhwhwewxwxgwxgxwwwwxxvwffwxfwwwwwweevgwwwwvvvwwwwvWvvgfgvvvhgwWgwwwfwwvwwwfwwgxwvwwxwhvwwvwwwwwggxxxwwwgwxhgwvvwwgvghwxwexvgwwwwxxxwwvwvwwwwwwvhwwwwwwxwxwwwxxwxwwwwwxxgxwwwfwuwwgwwwwwgfgwhWvwguwfwwwwwwwwfxgwgwwvgwgwvwvhwgwwgvwwgvffwvwfvwgwwwwvwwwxvwwwWvvvwwwwwwwfwgxwgwvgxhwwwvwwufwwwgwwwgvvwwwwwwvwxwxxxwwwwxwgxwhwwgevfwwvxwgxwwfxwxwwwwxwwwwxhwxxxwxvxwggvgghvwggWvwvvffgfwgwgfvwwwgwvxfghwvggwvwfwfWvwwwwvwwWwwwwgggggwxwwwwhwvwxwxwwgwwfwwwwwgwvwghuxxWxwwxfxwvwwwgwwxwwxwwwgvwwxxggxvwgwvwwwwwgxwwwwxvwxwxwwwxwwhgxwxwwwxhggxxwxxwwwwwwwwgwxxwxwxwwwwvvgfwgwguwwwgwvgwfwvwhvxxvwvvvvgvwwwwgwwwggwwvgwwwggevwgxxwfwxfwwwwxxxvxxwwwxxwwwwgfwwwwxwxwxvwxwVvwxfwwwwvvgWxgwwwxxxhwwwvwxwgxwwwxwhgfwhwxgwvxgwxfwwwxwwxwxwwxhwwfhwxxxxwxwgxwwxwxfgwfwwwwvwxwgwwfvwwfWgfgfwwgwwgguwvwwwfwwwwxwwwwwxwxgwgwgvxwwwwwvgvwwwwxvwwwwwxgwwxwwvwwwwwxwxxxgfwwwxvwxwxwwwxgwwwwvwwwxxwwxxgxgxwxxwwxvwwwfxwvxvxwxwwwxxhxxgwwwwwwxxwwwwxxhwwwxxxwwwxwwxwwwwwwwwgwwxwwxwxxxxwwxxxwgxwwxxfvwxgwwxgwwwwwxwxxwgxxxwwgvwxwwwxxwwwwwxwxxxwwxwwxxxxxwxxxxwxwwvwwwvvgfwwfgxwwwwwwxwwxgvvvwxwwwxxxwwxwxwwxwwggfwwwxwxwwxxwwwwwwwwwxwxwxxwwwxggwwwwwxwwwxxxwwwwxwxwxxwxxwwwwwxwwwgvwwxwwwwxwwxxwwwwxwxwwxwwwwxwwwxxwwgxxxwwwwvxwxwxwvwxxxwwwxwxwwxwxxgvffggvwwxwxwwxwxwwwwwwvwwxxwwwwwxgwxwxwxwxxwvwwwxwxxxxwxxwwxxxxxxxwwwwwvwwgfxwvwwwxwvwxvwwwwwvwvvwwwwwvwwvwvfwvvwwwwgvwwwxwwwwwwwxwuggwwwgvwwwwxwwwwwxxevwxwwxwfxwxxwwwwyxwwwwxvhgxwgwvwvvvwgfevffwwwwvvwwvwxgvvwwwdtVWvwwwvfvvwwwwvwxwxvwwwfvvgfvwwwggwWxgwxvwfvwwwwwwxwhwwvxxwwvwfuffxwwwxwgwxwxwwwxxwwwxwxwwgvxxwwwwxxwwxwgwxwxxgwwvgvgwwwevwwvwvwwwvvwwwwwwwwwwwwwwwwwvvgwwvwvvwwwwufhwvwwxwxxwvwwwwwwwwwvgwwxwxgwwxwxwwxwwwhwxwwwwwwxxvwwxggwxwxwwwxxxxwwxxwwvwwdtVWvvwwwwwxfvvwfvwwvvwgxwvwwwwgxwxvwvxwwwxwgvvvwgwwwgvxwwwwwxwgwwwxwgxwwxvwxxgwwwwwwwxxxxvwxxwwwwwxwxxwwvxxxxwxxwxwxwxwvwvxwvwwvgwvwwwwwwwxvvgfwwwwwwxvwwwxvxvhwwwxxwgvvwvwvwvwwwvxwfgwwxwwwvgwwwxwwwwwxwwxwvwwgwwwwwwgwwwwgwxxwwwwxvvvwwgwxxxxxhxwfvwggwvxwwwxhwwwwwxwxhxhxxwwvwwvfvuggwvvvgwffvwwwfvvgxwvwvggvwvvxfxvvwvgvfwxwwgvvwwwwxxgwwwfxvwxvwwfwwxvwxgwwwwfwwxwwgwwwvvvwxfxxgxwwvwwwwgvvwwgwgvvggwwwvxxwwwwwxwwxxxwwwxgwfwguwvxgxxvvxwhwxwgxgvvwyxhxvvvfvvfgevvwvwvggwgwvxwwwwwvwwvvfvxwxxgwwgwhxxwfxvfvegwxuwwgwuwwwxwwwwwgwvwfgwwvwxwwxwwxwwguvwgwfgfvxvggxwxxwwgxwwgvfwwxwxwhgwxxgxxwxwfgvwwwwwwwxxwxwwwwxwwwxwxxxxuwgVvtgwfxtwgvWvdgxgfwtwwwwwwgfvwwwxxwfxfwugWwgwwwWwwwvxwvvgwgvvwvwwfvwwwgxggvvvwhwwwwguwwxxwxwwfvgvWwwxwwwxwvwvwvwwwfwvhwhxwxxwwwxxxwxhwwxwwwwwwwxwxwwwgwgwxwxwwxwwxxgwxgwwwxwxwwxwwgvwgwwxwvxwwgvwwvwwwwwxwwwvwvwwwxwwvvfhwwwwxwwvwxvwwwwwwwvwvwxwxwxvwgwwwvvwwwwwvuvwxxxgvuvwxxwwwwgwwwwvwwwvxxxvgxwwwxxxxwwwwwvwffwwvwwfvvxgwvxwwvvvwwwgvwuffvvvvuwwwvwwxvxwfggwvwgwwwwvvwgxgwxwwwvgvwvgvfxfwgwvxhwxvwwxwwwwwwwwvwwwwwwfxwxwvwxwwxwwwxxgwwvxwggvxgxgvxwvxwvwhxwwggxwwwxxwxxvwwwwwgvwugvfuvgwgwwwwvvwwwvuuvvxwxvvwwwwxwwwwwvwwgwwxgvwwvwxwvwvwwwwwxvgwwxgwwwgxwxwxxwwwgxwxxwgxxwwwxxxxwxvwwxwxxwxxxvxxxxxgwvwwwxwgvvVveggfvgwgvgvwwvwfwxwfWWeeffggvwwwwgvwwwwwxfghvwvvxwgwwggxwhhfwfggwfvgvwvgwxxvwwwwwxwvwwgwevvwxxwwwwwwxxwxxwwxwxwwwwwwxwxwwwhxxwvwxwwxvwwwgvwxwwwxwwwwwhwxwxwwwwvgxxxwwxwwwwwgwwwxwxwwvgxwxwxwwwgwxwwwwxxywxwvgxxxxwwwwwwwvgwwwvwxwvwwwwxwwxwwwwwwxxxwwwwwgwgwwvwxvxhwgwwvwwwwxwwxwwxxwwwgxxwxhwwxxwwwxxxwwhwwxvgwwxxxxxxxxxwwwwwwwwvwwwxxwwgwxxwxwxwwwxwwwxxxwhwwxwwxwwxxxxxxxwxxxxxxxxwxxwwwwvgwxxwwwwwxwxwwhwxwxwxgvwhxwwvgxwxxwwwxwwwxxgwxxxxxwxxwxxwxxxwxwxxxwxxxxwwgvwxxxyxxxwxwhxwvwxwwgxvxffwwgwggggvxwgugvwWwwvvhwwwwxfvxwwwwwxwwwggwgxgwvwwwggWvxgwwwWxwgfwwgvwvuvwwgwvwggfxxxxxgxxwwvxwwvxxxgwwwxxwwwvvwxwwvwwxwxwxxwxwwwvuvwxwwwwwgxgvvwwxwwxxggXwwwghgWvwwguwgwwxVgvwvwgvfvxwVvgfvgvvwwwwwxgwvwwwwgwxwwwwwxhwwwwwxgwgxwwgwwwxggwwWhxVxvfwxwwgxxxwwwxgwfxXgexxghwgvgvwwwxxxxvwxfwwxxwfwwvxwxwxxxxxvwxwhwvwwwxxwxwwgwhwfwxwxwgwxxxwgxwwhwxxwxwggvgvvwwvgwwxwwwwwfgugwwgwvwwwwwvgvvwwxvwwfvvwhwvxwgwxwwvgwwwxgwgxgWuwwfwwwxxwwwxwwvvghxxwwwxwxwwgwwwwxxxwwwwwwgwwwgwxwxhwwwhxwwwvxwxxxwwxxxgwxwhgwxwxxxwgWxwwvgwwwvwwwwgvwwwvvvxxxwwvwvvwwwvhwvxwxwwwwgwwggwwggwwwwwwhvwwwwxwvwxhgVxwhxxhxwwwwxxwwxxvwxwffwhgwwgvwwwxwxxwxfxwwhxxwwwwxwwwgwwwwxxxxxxgxwhwxgwwwxwwxwfgwwxxvwwvwxvxvxwwwxwwwwwwwwgvwwwgvxwggxxgvvwwWwwxwwwgggwwxwgvwwwwwxxxwwwwxwwxwwwwwxwwwvwwwxhwwwxxwxwxwwxwfxwwxwwwwwwxxxxwwwxxxwwgwvwgfvwwwvgxgVwwfwwwxvwgvwwwVxwvxwvwwwwvwxwxwwwwgfwvgwvvwxwxvwvxwwwfffwwvxxwwwvwwwxxwgwwvwfxxwvwxxvxxwwgxwwvxwxxxwwfwvxxwvwwwwwxxvwxwwxxwvvwxxwwwwwfxwwxwwvvwvwwwvgwwxxwxwvwxvwwgvwwwxvwwgvxwvwvxwwwxwwxxwgwvxxwxxwxwxwwxxwwxxxxvvwgxxxxxxwwxvxwxwwxwwwgffuvwwwfvwwwwuxwgvvgwvwwxwxvwxvwwwwwwwwwvvvgxgvwxwwwxxwwwxwwwvvxwxxxfwwwxwwwxxgxxwxvxxxxxwxwxwxxwgxxwwwwwxwxwwwvgwwwwvgwwwgvwxwvwwvwwwvwwxwgvgwvwwwwwgxwwwwvxwWwvgwwwwxwwwwwwxwxwvwwxvwxwgwwwxwwwwxwxgwwxwgvwxwxxwwxwwxxwvvgvvwxgwwvxuwwxvvgwwwwxxxwwwxhxwwxxxwxwxxhvvvvvguxfffvuwwgvwwwvwvwxwwwwWvwvvvwwwwwgvWwvwwxwwwwgxwgxwWgxvgwwwxVxwwwwwwwgxxwwwxxvxvwwwfxwwxwwhguxxvwwwwwgwxxwwwwwwwwxwwwwugwxwwxwwxxxwxhwwxxxwgxxxwxwvwxwwxxxwwvwwwwwwxvwvwvvwwewvgvwwwwvvwwwwwwwwwwfvvxwwxwxxwxvvxvwxxwxvxwwgwwvwwwwxxwwghvvxxwwwwwwxxwuwvwwwwxwvwgvwgwwvwxxwvvxwwxwwwxxhwxgvxxwwxwxwxxwxwwxxwxxhvwwwevwfvuvxwwgwwwwgvewwgwwwwwwwwwwhgwgvwgvwwwwwggwhvwxwwgvvxwwwxwxwwxgwwwwxwwwwwwxwwhhfwxxwwwwwwwwxvwwwwwwwwwwxwwxxvwxxwwxwxxxxxxxxxxxwxwxxwvwxxxxxxwvwvvwvvwwxgfewwfgwfvwgfvwwvwwwvwggVggvwwvfgfwggfvxwwwxxvgwwvGuwwfvgwufwwgwwwwgvvwwwvgwvgvwffwwwwvwxwwWwxwwxxwwvfxvvvwwgwwvvvwwwxxxwvwwxwvwxxwwwxwwwwwgwwvvvwwggwvwXwwxvwxwwwxwwwxgwwvwweVwwwegvuvwvGefwvgvuwwvwVgwVvfvvggwvwwwvwfwvfwwgGwwxwxgwwgwwwvwwvvwvfVwxwwwwgwvvwgWtxwfvxwGwwgwvwwgxhexwwvxwhwwgwuwwwwwgwwxwWwwgwwwgwwxxwwxwxwwxxhhwxwwwxhwxwgxxxwwvwvwgxgvwfxwvxxwwwwxgwwgxwwwgufvgwvuvwwvvvvwvwgfuwwxwwwwwwvxvxwwwvwwwwwxvxwwwwwwwvvwvxvvwvwvgvgfxvwwwwwxwwxwwwwwwwxxwxvwwwwwgwgvvxxxwxwwwxgwwwxgxxxvwhxgxxxxwwwxvwvwwwxxxwwwxxxwwxghwwgwxwxggvwfvwvwfwvwwgwvwgwvgfwwwwwvwwvvwwvhgvwwwwwgwgggwxwxwfwwwwwwwwwgxwwwvxwwgxXewwxwgwwwgwwwwxwxxfwwwwhwfwwwwwwxwwxwhxwxxwwwvxxwwxxxxxgwwwxwwwxxxwwwxwwwxxhxxxxwwwwgwgwwwwwxwwwwwxwwwxxxxwwvwfxwwxfwwxgxxwwxwwvwxwwxwvvfwxwwwwwxwwwwwwfwxwxwxvwgxxwwvwgwwwfwwwwxxwwwvxxxwwvfxxvxwfwxwwxwxwwgwwwwxxwwwxwgwwwfxwwwwxvxwwwwwwwwxxxwwvwwwfwxxwwwxxwwgxwwwfxwxxxxwxxwxxxxwwwxxwwxwfwwxwxxxxxwxwwwvwwwxwxxwxwwwwwxxxwwwxxwxwwxwxwwxxxwfwwwwxxxxxxwxxwwwwwwxvxxxxwwvxxxvwwxwwwxwxwwwxwwxxwwxxxxwxxxxwxvgwxwwwwwwhwwwwwwwwwwwwxwwwwxfvvgwwvvwgvvwwwfvwwxwwgwwwvwvwxwxxxwwwwwxwwwwwwwwxxxxwxxxxwwgwwwwwwwxwwwxxxwxxxxxwwxxxfvvvfwgwgvvwwgwwgwvxwwwwwwgwgwxxxwxxxxxwwwvwgwvwvvfwwwgwwggwxwwwwgxxwwfxxwxwwwxxxwwwxxywwvwwxwwwwxwwxxwxwxxwxxwxxxxwvvwxwxwxwxxxwxxwxxwwxxwxxxxxxxwwwwwwvgwwwwwwwwwwxwwwwxwxxxxvwwwwvvVuvvwwvgvwwgxwgwwwwwwwfvwwwwxgwwwwwwwwvwwwwVewfvvwfwvxfvvxgvxgwxxxwwwwxxxwxxxxxxwwxxfvvwwwvwvwgvwxwwwwggwxwwwwwxwxwwxwxxxvwwvwvwevugwwwwwvwggwgwxwvwwwfvxwxwwwxwwwwwwwxwgxvwwwwwwwvxgwgvwwggwvvwwhhwwggwwxxgxwwwwxwgwwwwwwfvgvwwgwwvgwxwwxwwwggwxxxwwwwwwxwwwgvwwgvwxxwxxwgwgxxxxxxwwxxwwxvxwwfwwwvwwfwwxwwxvwxwwwwxxwxxxxwxxfuwfwwvuwgwwgwwwwfwwwvgwgxfwwvwwwxwwxwwxxwxxwwwwwwwvwwwwwwwwgwxxwwwwwwxxwxwxwxywgwwwwgwwwwwwwxwfxwxwxxxvwxhxwwfwufwwwuvwwwvvwgwfwwwgwwvfwwxwwwxxwxgwwxxwwxxwhgvvgwwwffwwwexwgwxxwwhehhwxxwwwxxwwwxxwxwxgwwwfwwwwxxxxwwgxwwwwwvxxwxwxxxhxxwwwwxwwwhuwxxwxxxwuwwwxxxwxwxxwwwgwwvwwwgwwwxxxwwwwwxxwwxwwvwwwgwxfwwvwvwwwwgwgwfwwwwxvxwwxwhwhxwvwwwwwwwfwwxxxwwwxxxhxwwwwxxxxfwxxxwfxwwfwwwwvwwwwwwwxwwxwxwxxwxxwxwwwwxwhxxwxxvwwwwwvfwwwwxwwgwwvfvgwwxwwgxxxxwwxhxxhwxxwwgwwggwwvwwwwwgwwwgwggwvwxwwwxwwwwwwvwwwwwgxvwxwwfwwwwwwwxwwgwwwxwwwxxwxhwwwxxxwwxxwwxxxwwwwwxwwwwwxxwhwwwxxwxxwwvgwwwxwwgWwxwhwxwgwxwwxwwwxwxvwxwxxwwgvwvvgwwwwgvwwwwwgwwwwwxvvvxxxwxwwwvwgwwvwwwwwwxwwwwxwxvwwxxwvgxxwwgwvwvvwwxxxwvwwxwxvvvvwxwxwwxxxxwwgwwvwWwvvwfwvwwwxxwwwwwxwvvwwwwwxvwwxxwwhvwwwvvwwxwwwxxwwwwxxvxxwxxwwwwwxgxwwwgxwxvhwvwwgxgwfuwvwwwxxwxvwvxxvvvwwwxwxwwxxxwvwwxwvxxxwwxwxwwwxwgxxxxwxxfvwgwgvwwvwWwvwwwwwwwhwwxwvxwxwfWggwgvwvwvwwgxxwvwwwxxwwxwwwvwwfuwvwxwxwvwwwxwxxxwwwwvxgwwxxxwxwxxwxxwfvwwgvwxxwxvxwwwwxwxwwwwxxxxxgwvgvwwwwvvwwhxwvwwwwxwwvxfwxvwwwwvvvwgwwvwwxwwxwwxwwwwwwwwvwvvwwxwxwwwxwwxxwwguwfxwwxwxwxwwwxxwgvxxfwxxxgwwxxwgxxvwwxxxxxwwwwwwwwwxwywxwvwwvwwgwuvwxwwvwwvvwwvvxwwwwwwuvwwvtwwwvfwwvwwvwguwwwuxwxewwwwvwufwxwwwwwxxxwvvwwvwuxfvwwfVwwwwwfvhwwwxwgwwwwwxxffVvvxwwwwxggwxWwxwfwwxxxwxxhuxwxwvwguvvwgwvvwwUguwwwvwwwwvewvwgvxwgwwwwwwwxwxhwvvfvvuwVwuguwwwwfgwwdxxwvvwwxwwwwwwwwwwwwwwwwwwwvvwwwvxwuwvgwgvwxwhxxxwxxwhxxvvwxwxwwwgwwvwxVwwvwfywvxwxxxfxwwxhuhxwwxwvwwvvwfwwwwwwvxwwwxvwxxgxxxvwwfwwvwvwwvvwwwwwxwwwwwvwwwxxvwwwgwwwxwxwgvwwwwfwwgwwgwwvwhwvvhwvwwwwhgwwwwxwXxvhxxhwwgwgwwvwvxxwwfwwgxwwgxwxwwwwwwxxwxxxxwvwwuuwwwwwxuuwwuvwgwxwwwhwwvxwwxxwwwwgwwxxxxvvwgxwvwwghwwvxfwwwggwwWwwvwwxwwwxgwwwxwwwwgwwwwvwvwwwwwxxxxwwvxwxwwxwwxwwwxxwwxxxwwwwxwwxxgwwxwxwwwwxxxxhwxgwvgwxxwwwxvvvwxwxwxwwwwwxxwgxwwwwwhvxxwxxvgwxxxwgfvwwwwwwvwvwwwgWfuvwwvhfwfwwwuwwvwxxxxwgfvgxxgxwwgwxgwhwwgwxwxvgwwwwwwxwxxxivvgvvwvfvvvwwwxxxxwfwwwxwwxvxhwgvvwwxvvwvxwxgVvvwwwwwgwfwxwhgwfxwxxwvwwhxwxxwwgvwwwwwgwuxwgfffwgfwvxwvggwggxhwwvwxhxxwghxgfvvwwwwwwvwfgwxwxwwwxxxwxwwwwwwwwwvwxwxvwgwvxxvwwwwxxxwxwxxhvxgxwxxwwxwvxwxxwxwwwvffgxwxgvvxxwwwwwvwxwxxxwvffvVuvwvxwwFdvewwgwvgwwwvvwvvxwwxxgvvgwwwwgwwwvwweVgvwwwxfvvwwwxwhxwgwvwwhgwwwxxvgwxwxwwxwxxfvwwwxwwxwgvgwwwwwxwwxvxwwxwxwxwxxxWxwxwwgwwwwvwwwVuvwwwxwUeegwgwxwwvxwxwwwwxxwxwwwfggwwwxgvxwwwwvwfxwwxvhvwwvWvvxwwgWwwwwvwwwwwwgwxvxgwfgvwgvxwwwwxfvwwxwwxxxxggwwwwvvwxvwwxwwhwwwwvwwxwwwxwwxggwvxwxwwxxvwxxxwwwxxwwwgwhxvxxwfwwgwwwvwwxghvwvxwwwwgvvwvwvwxwwwwwwwvgvwwxwxwwvfwgwuwvgwuwvwwwgwwwwwwwfwwvvvwvwvwwwwvwxwxwvxwgwgwwwhwvwvwvwwxwvwxxxwwwxwwxwxxxwxxwxxxxvwwwvwwvvvwwwwwvvwwxwwxxwwxvwwwwxwwwwwwwwxwxxxwwwvwwgwgvwwwwwwwfwvwwwwgwwgwwwwwgvwwvwwxhwevwvxvxwwvvwvwvvvwwwwvwvwwwwgwgVxxwuwwwwwxxwwwwxwfwxxhwgwgxwwwwwwevwxwvevgxwvwxwwxxwwwxxxvwxwxwwwwwwwwwwwwwvwgfxvxwvxwwwgvwwwwwwxwwxxxxxwewfwwgvwggwvwwwuwvwfwxfwwvxwwwvgvvfvvwwvvwwfvvvwwwxwvwwwwwgwxxvwwwxwxvwgvwwgvvwwvvwxxxxwwxxwxvvwwwxxwxwxxxxwuwvwwwxwvwwwwwwwwwvxxxxxwgxxxxxwxfwwxwxxgfvvvwwwgwwxwgvwvwwwwvxuwwwwwevwxxwxxxwwwwwwwwguvwvvgwxvvvvvwevxxvwgwghwvwwvwwwfwxwxwwwxwxwxvvwwgwfvgwwgghxxvwxwxxgxwvxxxwxxwxwwwxxxwwvxwwwwwwxwxxhgwgxxwwxxwwwxwxwxhwwxvwxxwwwvxwwwwwxwwxxwxwvwwxwwvgexwvgwwwfwwwvgwvwxwvwwvwvwxwwgwxwxwxgwxxxxwwggwwwxxvwwwxwwxvwwxvwwwwwxwxxxwwwwxxxvxwwfehxggwxwvgwwwwwwwwxwxxwwvggwwxvwxWgfuxwgwvvwxxwxwwfxwwwvwwgwxxwwwfxwxxwwgvvwwvxxwxwxwwwxwwxwxwwvwgwwwwwxwwgwxvwvxxxxgxwgwwwwvwwwwvvvxxxwxgwxxxxxvwwfxwwwwVvwgwwwwhwwxxgxwwxwxwwwwwxxwgwwwwgwfwwwwhwxwwwxwxxwwxwxxfwvgxwwhwxwwwwwwxwxxhwwxxxxwxwxwwgWxwVvwgwwwfxwxwgwwwxwwwwxwwwxwwxxwwwgwwgwfvwwhvwwwwvwwwwxwxwxwxwwxwvxwxxxwvwvwwwxxxwxwwwxxxwxxxgwwxwhhwwxxxwwxwwwvwwxxxxxwxwwwxvwvwvxgvvxwwvuvwwwwfwwvgwwvgxvxwwwxwwvwwwwvwxwwwvgxwwfwwVvwvwwgwwxwwWwvwwxwwgwWwvgwwwxwwvfwvwxgxgwxgVvvvwvxfWwvxWfxwgxvvwhxxxwvhwwwwvhwwxxwwxxwwxxwwwvgwwhwvhwwgwwwxwwvwxggwwvxxxxwwxwxxxwwwfuwvwwwvwgfwwwggwgwwguvgwwwgggwwwgvxwwgwwxwgwwfxwwxgwvwwvggvfwwwwwwvVwwgwhuxwwgwwwxwwwwxwuwvgxwwfxxgvwxwfwwwwwwwwwhxwggfxxwxhgxxwwwgxhgxxxxwxxwwwvvwwwwwwwwgwggxgvxhfwwWxwwwxwvwxwvwwxwxwxwwvxgwwxvxvwVwwwwwxwwwwwxwhwwgwxwwxwxxwwwvxwwggvwgwuwvwfvgwvvgwwwwgwxwwgwxwvwwhwwwwwxxxwhwwwxwxwxwfwvwvxgwwwvwwwgvVhxgxwwwwwxgwhwwxwwhxxwxxgwxgwxgwxwXxwwugwxvggvwwwwwxgwxwwwwwwwwwwwwwwhwxwxgwxvxxxwwwugwwwgwwwvwuwVvwgfwgvvwwvwgwvxwxwwhwxxwxxwwhwwxhxwwvwwhwwwwwwwwvwgwwwwgwwwvwxxwxwxwvxwwxwhxhwxvwxwwwvvwxwwwxwwwxwvgxfghwwwwwxwwwwgxvwxwvxggwgxwxgwwwwvvxwwxwwxwxwwfwwwvwxwxwwxxxxwwwgwwxwwxxgxxwwxxwwhwwxgwwxwxwfwVvwvwgwvwwwwhxwwwwxwvwwgvxxgwwxvwwvvwxwxxwxwxxgwwwxwxwxxwvwwvgvwxwxwwwwwxwwxxwwgvVfwwgwwvvwwxgwwgwxwwgwwggvwwwwwxxwWfvuwwfwvvwwwwvwvxxwwwgwwwfxxxwxxwvwwwwwwgwxxxxxhwxxxwwwwhxxxgxxwwvvvwwwwwwxvwxgwxwxgxxxxxwgwwwwgvvxvwwwwhxxxxvwxxwxxxxxwvwewvvwxfwuwwwxgwwwwwwwwwwwwwxxxxxvwvfwwwwxwhwwxwwxxwwwwwwxxxxwwxgvwwwwwwxxxwwxxwxxxvwwhhwxwxxwxvwwewvvwwwwwfwwwxwwxvwwwwwxwxwxwxxxwwwvwwvhwgwwvwwxxxwwwxfwgwxwwxgwxwxxxxxwwxwwwfvwvxwwwwxxhxwwxxwwwwxxxxxxxwwhwwxwwxwwwxxwwvwwxwwxxggwgvuwvvvfwwvwvwwwwwvwwgvwgwwwwwwvvwwwxwwwvfuwwvvwvvwvvuvvwwwvwwfwwwwwgvvwwgwvggwwfwwwxwwwwevvxfuxufgwvvgwgwwvxwvwwwwvwwwxxwxwxwxwxwwwfwwggfwwwgwwwwxxwxxwwwxxgwwxwxhxvxvwwvwwewvwwvwwfwwwuwvwwwguwfvwwwwwvwwvvxxgwwvxvxwvvwvwevfvwgwuwvwvwxxwwwwwwvwwwxwwfwwuwxwwwgxgxvwvxxwvgvwwwvwgxwwwwwwwgvwvwxwwwxxwxwwwvvwvvwwwgwwuwwwwhxfgwvxwwwxwwvwwwwxwvwwvewwwwwvvwwwvwwwwwwwwwvwwvwxwwwxxxuwvewvvwvwwvwxwgwwfvwvuxwwvwvvwwwxwwwwwhwxxwwfwwvVvvwwwwwwwgvwvxvwwwwgxwwwxvwwXwxwwhxgxwgxwwWwwvwgvvfwwwwwwwwwwvhwxwwxwwwwgghwgvwgvwxhxwvwvwgvuwwwvwwvvwvwvwvfwvwwvwwxwwwwwxxwvwwhwwwwwxwvwvvwwwwwwwwgwwwwwwvwwwwwxxxwwxhwxwvwxwxgwxxxxxwvwwvwxxwwwwxvvvvwwxwhwwwwwwwwgxxwhwxwwxwwhwgxwwwvwwwxvvwwwwwwwwfwwwgwwwwxxxfwwwvgwwwgvvvwwwwwwggwvwgwxvgvwxwxxwwwwwxwwwwwvwwwwfvvwwvwwvwwvgwwwwwwwwwwwwwgvwvexxwvwxvwwxwxxvhxwvwvwwgwwvwwxwwwxgwvxxwwwwwwxwxxxwxxxxxxwwwgvevwvewwwwwhxwvhwxwxwwxxvxxwxxwwxxxxwfvwwvwwvwvuwwwgWwwwwwxwvwxfwgwvgwgwgwxgvwwwxwwwwwggwwwvhgwvwvwVgwgwwwgwxwvwxWwwwwwwwwwgvwwhxwxwxfvwwwvvwgvvwxxxwwvwwwwwwwwwgwwwwwwwxwxwwxxwwwxwwwwwvvwfwwwvwwxwwxgxwwwxwwwgwwxwwwwxgxwwwVfwwwWwgwvfwxwgvwwwvxxvwfhwwwwvxxwxggfvvwvgvwwvhugwwwwwwwxwwwwwwvewxwwwwxxwwwwwxvvwgwvhgvwxwwxgwwvxxwxwvxgxxxxxxxwwxwhxwxwxwfgvwvwwgxvwxgwxgxxxxxwwwwxxxxxxxwvgvfvvxwvwgwwvgvfgvwxwwwxxwwxwhxwwxxwwxgwwgxwxvvuwvwgewgvwwgvvvggxxgxvxhgwwgwwwxwwwvwwfwwggwwwwWvwwwXwwxwwgwwxwwwwwgxxwxxwxwgfwwwgwxwgvwwwwxwwwxwxwxwxwxwwwwwxwwvfvwwgxwwvwwvwvwgxvvwvwvfwgvwwwxwwwuwggefvwwvwvvwuwwvvwwwxwwwvvvvvxwwwwwhxvxxgwvffwwvfwxwwwggwwwxwwevgvwwwwwwwwwxxwhwwwgwwwvxxxwwwxgxhxvwwwvwxwxwwwgxwgxxwwvwgdvfwvwwwvvwdfgwwvuwegwvvwwwfwvwvwxxwvgvxwxgxvvxwxvveffwfwewvwwvwwwvxwfwwwggvvgfWvhehwwwwhvxxvgggwfwwfvwvwwwwfwgvxvwwwwwwwwvwwvxwxxwwwwxwxxwwwwvggwwgxvwvwwxxwxvxwwwwvwxwwxxwvvvxwfwwwwwwvvfvwfwvwgvwwfwwwwwxxxvwwvegwwwvwxfvuwvwgwwwwxgvwvwwxwwvwwxwwxwwwwwvVvwwwvvwwwwhvvwvxxxwhvvfvvvvvvwxxxwvxwgwhwwxwwwxhgvvwwwvwvxhhwwwvwwxvwwwvvgwxwfwxwxxwxxwhxwvwvvdffwgwgvtvvxvwwvxevwwgwfvxwvwwwwxgwxwxxxwuwvwvwwwwgwgwwwwxwgxxwwwxwwwwggghxwwwwxwhxvgvwxwxwvwvgwwwxxwvwgwgxwxxxwwwwwwwxxwhwxwwwwwwwxwwwwwwwwxxwwxxxwxxxxxxwwwwwwwwwgggwwxwwwwwvwwwwwgvwvwvwwvuwwvvvwvvwwvvvvwvxwwgwvwfwwgvwwwwgfxwwxuwwvuvgwhwVvwwvwxwfggvwxxgfwwwxwxwwggvxxwxwvvwwgwwxwxwwwwxhxxvwxgwvhwwwgwvwwwwwuwvvgwvgvwuwwxwvewvvwvvxxwwwwwwwwwwgwvwvwgwwwgwfxfwwxwxvvxfgvwwgvwvvgwxuwvxwxwwxwgwwwxwwwwwgwwwvwggwxvwwwxvwwwxwgwgwvwxxwwwgwxvxvxgxxvvwxwgwvxxvvwvwwwwwwvwwvwvwwxwwwwwwvvxxwwwwwxxwvwwwwuvwwwvvuvwwwuwwwwwvxvwwwwwxxwwxwvwwwgwwwwhxxwewuwwwwxhhxwwvwghwxxhgwwwxgwxhhvwvwwwwxwxwwwuwwwwwwwwwwwwgwxwwxxwxwhhwwxwwuwxvwxvfvwwwgwwwwwvuwwvwwwwwxwvwwwwwwxxwxwvvwwwwwxxvwvwvxwxgwwvvwgwwwwwwwxwgvgwwwwwwwgwwwwwgfwwwxwwxxgwgwxwwxxfwwwwwxxfvwwwwwwxgwwwxvxwvxwwgwxwvfwwfwVxgvwwwwgxxwwwwwfvwwxvxwgwwwwxxhwwhwfuwghxwvwwwgwwwwwvwwwwwgwvwvgvwgvwwwvwggwvwwhvvhwxgwwwwwgvwwggvwWvfwwfwwxxwwewwwwuxxwxgwxXxvwwwwgwwxvgwwwxwwgxgxxwwwfwxxxwxwxgwxwvwwwwwwgfwwwWvwwvwggvvwwgwuvxwwwfgwuwwxwvwxwvwhwxxxxwwvwwwwvwwwvwwgewwwgvxWwxfxvwVwwwwwwgfxwWwwwxwwfwfwwxxwwwvwwxwwwxgwgxxwwwxxwvvxxxvwwwxwggxhhxxxxwgvwvwwwxxxwhxXwxvgxvwvwxwwwwxgwuxwxwgwwwwguxuwwwwfwvvwgvwgvvwwwwxwwggwwuwwuwvwwwxwhwxvxhgwwvfwfvwwwwwuwwwgvvfvgwWxxwxwgfvgdgvfwwxxwxfwggvwgxwwvwgwwwwfwwxgwxwxvwwvvgxwGwuXxxwwwwwxwwwwwvwhgvhwggwhwgwfwwwxvwhfwxwwWxxxwwwxghwgvwwwxwxvxwxwwwxwwwxhvwwuggwvwwwwfwdgvfguwgugwfwvxgwfwwhuwwwvxwwwwwwwxwwwwwewxhgfwguVvwvwxxxwgvugwwwwggxWwxgwwwwwwwwvwuvwwxhggvwxfgwwgwwwwwwwwxwwgwvwgxgxwxxxwwwxwwgwxvxwxwwxWWgwgwxgwwvxxwwwgwxfwwxwwwgvwwxxxxgwhwxwvgggwvwxxhvxwwwwwwwwwwwwwwwwxwwwwwwxxwwwxguvwvvuwxwwxwwwvwwwwwgvwwwwwxwwwwxwwxxxxwwwvvwwwwwwwxwwwwwwwwfwwxxwwfwxwxxwwvvwwwwwwwxwwxwxxwxwfwwwxwwwxwwxwxwwxwvvuwwwwvwxxxxxvgxuwwwwwxwwgvwwwxwxxwwwwxwwwxwxwvvgwvwXwvvwvwwvwwvxvwxxwwwwwwwxwwwxxwwwwwwxxwxxwggwhwwwwxwwwwxwxwxwfwwwxwwxxxwxwwwwwwxwwxvxxxwxvwwwxwwwwxwwxxwxxwxwwwxxwxwxwxwwwwwwxwwwwwwwxxxwgvwwwwwwwxxxxwvfwwfwvwfvwwwwwwwwxwwxVuvvvvgfxwvwwgwvwwvwwxwwwwVewVwwxxxwewgvwwwwwwwwwwxwwwxxwhwxVwwfwggxwhwvwggwxxhwwxfwwgxwwxwvwwwgxwxvwfwwwhfvxxfvwwwwwwwwxwwevugwhvwwwxwwvvgfgwwggwxwhwfvvwwwwwwxxwwwwwwxxxxxxgvwwgvxxgwwgwgwgvgwxfewwhxwxxxxwfvwgggwvwxxwwxwwvwwwwvfwwvhwwwwwgwwwgwwhwxwwxxwwwxwwwwwwxfwwywwwwwwwwwwwwxwwwwwwwwwwwwxwxwwwwwwwwwwwvvwvefgwwvvfwgvwwwwwwwwwfgvwgwwvwgwuvwWgwwwwwvwgxfwxfwwwwwwwwxxwwwwwwfwwwwwxxwwwwwwwwwwwwxxwwwwwwvwvwxwwxwwwwuwgxwxxggwwvhwgfxwwxwxwwxWwwwwvgwgvwwvwwwwVgfwwwwwvvfwvfvwwvwwwwvuwgfwwvwwwgguwgfwxwwwwwwwxxvWxwwwwxxgWwwUwwxwwVxxvhwwxwwVggfwhwwwwwxwwwwxwwxwwvgwWgxwxwgxvwvwwwwwxxxwwfvxWxwwwwwxxwfxxwxvxwfggUxgxxwwvwwwwwxwwwwwxxwwwxwwwwfwwwhwxwxwwxwwxxxxxxwwwvvuewwwwwggggvvwgvwwXwxwvegwwgvgwfXxgwgwxgvvxwwxxwwwgwxxvwwwwvwwgwwwwwwwwxwwgwwwwwxwwgwxxwxwwwwwxwwgwwhwgxxvvwgvugxwwwhxwwxwwxxxwxwxwwvvggxwwwwwxguvVwgvwwvwgwevvxwwwvxfwXxxwgvgvvgxgxwwwwwwgwwxxvgfwwxgwwwfgvfxxxxxwwwewwwxwwwwVwwxwwxxwxxggwwxhxxvwwvuvvxgwwwwhxwwwxxwxxwxxxxwxxxwvwwwxwwvwxxwxwxxwwwtwwwvxwfwwwvfVvwxvwhvgvefvwwwwwwwfwvgwxvxwvgwwvvwgwwxhwwwgfffefwVfvVWwwwwwwwwwwwvvwvgwvwvwwvwwvwwwwwwwxwvwwggwwvgwwxvwwwvgwfwwwgwwxvgxhfvwUvvwwwfvwvxHwxwwwwwwvgwvwvwvwwwwgwwxxwwwwwxwgvfvvuwwvwhwxwwXxxwxwhffwwwWwwffVwwwwgffwwwwevfewgwvwvgwwwxwxwwgvwwwwwwvwwvxvwhvgwwwwwwwwwwgvwwwwyxGwvwvwwwwwvvwxxxwvwwgwvxwwwwwxwgxxwvgwwwgwwwxwwgvwwxwwwwggwgfvvxxwXvwhhwxxuwxwxxxwwxwhfffwwwwwwwvgxxfxwwwwwwwwwxfwwvgxGxwwwwwwhffwxwxxhffwwwwwvvwvfVvvwwfwvefvwwwwfwxffgxwwvfwvwxwvwxvgxvxwxwwwwfefwfUfgvvxSvgUwwwgvwwuhwwwfvwvwwwwhxwgwwwwwwhwxgwgvwwwxvwUvvvwhgwvwwgvxwhwwwwfuuwggXwwwwvxgwwwwwwwwwwwwwfwwwxwwwwwwwxwxgxxxhxwxwwwxxwwwwwwwxxxwXffgvwffVwwwwxgvuhwffUvgwgwSvgUwfwgwvwwxwwwgwvwwwhxwvwwwvwxwwwwwgwvwvffhvwgvggwwwwwwggwgvwwwvgxwwhvwwwwwwwhwgWvgwxwwwwwwxxwwhxfwwwwgxwwwxwwwwxxxwwwwwgxgwwxXffwxwwwxxwwwwwvwwhwxxxxvwxwwwwwwXffwwwwXffwwwwwvggwwwwwwwwwxvwxxwwwwvvwvxxwxxwvvvwggevvwgvwwgfwwwwwwwwhwvfwwvwxwwxvwwwvxwxwvxxxwvwvwwxwwwxwixgggfvwwvfwwwxwwwwvxwwwwxwwwxxwxvvfwgfuuwwgvwffwwwwgwwgwwwwwwuwwvvfvxwgwxgxwwwvwvvfffwwgWwfvwwwwwgwxwggvwgwwxgwvwhgxhxhxxhvgvvfvvgxgxxwxwwwxxxwfwgwwwxwxwwwwxwwvvxwwwwwwgwwxxgxgxwvwxhxgwwxxwxxwvvffgwwgvwxxwvwwwxxwvwwxxwwxxwwxvwwwUeevwwxwwvevuwwwvxwxwwwwwfvvwwwvvwwwwwwwweVgfvvwgwwwhwhxwwxxxxxwvvwwggwxwwwwwgxwwxwxfvwxvgwxwxgvwwxwwwwxxxxxvwwwwwwwxwxwwgxwvffvdvdVwgvxvweugwvwwwwxwwggwvwvwwxwwxvgwwgwwvvvwxwwvfvguvvgwvwWwxwwxxwxwxwxwxwvwwvfwvvxwgvwwwwwvvwxxwwwfvwwgvgwwxwwwwwwwwxxwvwwuwxwwxwwwxwhwvwxwwwvwggxwxwwwxxwwvwxwgwxwwwwgxwvxvwwwwwvwwwwgwuwxwxwgwwwwwxxxwwvwfvwwuwwwhwvwwwgvwwwwvxwwwwvvwwwwwxwwvwwwwwwwgwwvwwwwwwgwgxxwwxxgxxwwvwvgwwwfwugxvxwxgvwxwwwxwwxwwvwgvvwvwwwwwgvwxwwgwwgvvwxwwxxwxwvwwwwwwwwwwwgwvwxxvxxwwwxwvwwwvwwgwhgwwvxwwvwwvwwwgvwgwxgvvgwwxwwxwvwwwxxwwwwwvxxwxxwgxwxxfwvvwwuwgwwwwgvgwwxwwwxwvxwwwwvgvwvwgwvwxwwwwwxwwxwwgwxwfwvwwxxxvwwgwwwwwxxwfwugwxwxwwwvwwxxwwvwxwxxvwufwxwwwwwwwxvvxxxwfxwgwxfvugvwxvvwxvwwvwwvwxwwwwwwwxgvvwwwwwwwwgwwvxwwwwwwwvwwwwwvvwxxwwwwwxfvwwvxwwwgvwxwxwwxxxxxwwwwwxvxvwwwvxwxxwwwwxwwwwwxwxwvuwgwvwwwwvwxwwvwhvgxwxwwwvxWvwgwwwxhwxwwvwwvUuvvwwwvwggWwwhwvvwxhwgwvwwwggwwhwegwwwwxxwxxxgwvwwefxgfwfgvhwuwwwwwhxhxwwwwxhwxxwwwwxxxgxxfwwwuwxwgwvggwvwxxvxxvwwxwhxhxxxwxxgwtwwwgwxwuxwfgvwuwwvwxwewwwwwxWfwxxwvwwxwxwxxwhgwvvwuwgwuegwwdxfgwwxfwxuxxwgvwwwwwxwwwwwwxwwwxwwwwwefxgxwwwwwxxvvwWxgwfxwxxxxxxwwxhxWxxwxxxgvwvwVwxwgwvfxwwwwwwywxvxxxhxWxxfxwxwxwhxxxwwxwvwwwwwxfwwwwggwxvXxwwxxxgxwxxgxxxxwwgwWwuwwwwwvwwWuxxWvhwxwxwhwwxwwwwxxhwwvwwgwxxxwgvwwwgwwwfhwxgvhwwwghwvwhwgwwwwwxxwxhxxxwwxXgxghwxwwwvwwxwvwwwxwxxwxwwxxwwxwwwwwwxwwxxwxwxxvwwgwvwgwxxhwfwwwwvxwwwwwwwxvxwwwxwxwxvxhwwgwwxxxxwxxgwvvwgfwwgvwwuxwvwwwvwhXwxwvwhwxwwwwgwwxwxwwwgwxwwwxxgwgwwwfwvxwvwxgwgxwwxxgwxxwxxwwwxxwxxwwxxxwxxxgwwwwxwwxxxwwxwggwwxxxgxwwxywwwwwwwwxwwwwwxwvvwfxwwxwxwwvvwvxwwwxwxwwwxwwwwwvxgwwxwwxxwwwwwgwvxxxxxwxgwvfxxwxxwxxxwwwvvwxvwwwxwxxxxwwwwwgwwwwwwxwwwwwwwwwwgxvgxvwwwxwwwxwgxwwvxxxxwxxxwwwwwwxwwwwwxxhwwwwwwwwxwwxwxwwwxwwwwxvwwwxwwwxwfwwwwxxwxxxxxxxwxxxwvvwxhwxwxwwwwxxxwxvwxxwwwxxwwwxgwwwwwwwxwfwwxxwxwxxwxwwwwxxwwxwwxxwwxxwxwwxwwwxgwxxxxwxxwwwxxwwxwwxxwwwfwwxxuwxwwvvvvwxwwvwgwwwwwwxxwxwhwwtwwxxvgugwgwxwwvvwwwxggwfgwwwwxgxxwwwfwwgvwwwwwwwwXxgwfwxvwwwwxxxwwwxwwhwxwxxxwxwvhxxwwhxwxhwwwxvguwwwxhwwtxwgvxwwggvfwvwxwxgxwxwxwwwxgwxxxxugwgwwwxwgvWxwxxwwwwvwwwhwwgwxgwwwwvxwxwwwxxwxhxxwwxwxghxxwxhwxxxhwwwxwXxxxwxxwxxxxxwwwxxwhwwwwgwwhwwxxwvvwvvxwxwggwwwxxwfwwwwgvxwwwwvvwwgwwvfwvwvwwxwxwwwuwwxgwhwdwwfwwwwxwwxvxxxwfwvhwxwwhxghwxxwfwxgXxxwwxgxxwwxwhwwxwwwxgxxxwxgwwgxhwwwwwhwxxwwhvwwwxxxxxwvwggwfgvwwwxwxwxgwxwwwwdwwfxgwwuwwwwwwhwwvxxwwwwwwwwwwhxwwxwwwxhwgwwgvxwwwwxxwwxxxwwwwfxwxwwwxwxgxxxxwxgwwvxxxhwwwwxwwxwxwxhwwwxhxgwxwxxwwwhwwwxxxhwwxxwwvxxhwwxxwvxxwwwwxvwvwwwvwvgwwwgwwwwxvwwxwwgwxwwwwwwvwwwwwwxwvgwvwwxxggwvwvwwwwwxwwwwwwwggwwwgwwwvwggfwwvvgwwxwxxfwvvgwhxxwwwwgwxwwgwwwxwxwwwxwwwxwgxwxwxxwwgwxwwwwwwgwwwwvwwwwvwvxwwxvggwwwwwwwwxwwwggwwwvwgwwwwwgwwwvwvwwwwwwxwggvwwwwwwwgwwfwwwghwgxxxfgwgxxfxxfxvgwwgwwwxwxwvwwwxwwxwwxxhwgwwwwwxwgwxwxwwwxgwwvwxgwwgwwwxwwwfxvwwxwxwgwwwwwwvxxwwgwxwwwwwwwwwwwwxwwxwwwwwwxwwwwwwwwwvwwwvhwwwwwwwwgvxwwxxxgwwvvvxwwwwwvwvwhwwxxgwwvvwxvgwwwvwwwwxwwgwwxwwwwwfwwxwxxxwxxwxwhhwwwwwwxvwxwwwwwxxwwhxwvvgwwvwwwwwxgvxxwwxxwxwgwvwwwwwwwwwwgvwwwvwwwwgwwxxvwvwgwwwxwwwvvwvwwgxwgvwwxvgwwwwwwwwwxwvwwwwwwwfxwxgwwwvwwwwxfwvvwwwvxxwfhwwwwgwwxwxwhwwwxgvwvwxxwxgwxwwwgwwxwxxwgggwwwxvxxwxwwwwwxwwwvxxwwwwgwwwwxvwwwwxwgwxxwxxwwvvwwxwwwwwwxwvwwwwwvxwxvxwwvwwwgwgxwwxxvvwwwvvwwWwwuwwwwxggxvgxwvwVvwwwvgwwgxwwwxwxwxgvuxwgewxxwhvwwgxwvfvfwxvgwxxwxwxxwwwwvwwwwxwwwxxwgxwwvwwgwxgwwwxxwgwgxwguwwgwvvwgwwvgwgwvgxvgwvwwfvfxvwvwwxuwxxwwwxwwxwwvvwxffwwwxwvwwvvwwxgxvfvvwgwugxxvwxxwwxvwxvwgwxwvvvgwvwwwwxxgxwxwwwwxghwhwwwwgxxgwxvwvwxwgwvxxwxgwxwgxxgwggxwvxxxgxxwxgwvxwxgwwxwhwwgwwvgwwwwxwxwxwvgwwwwwwwxxwwWfwvwgwxwwwwwvxxxvxwwgwuwwwgwwhwwxxvhwwwwwwxwxxhvwwweWwwwhwwxwwxxxxxxhwxvwxwvwxxxxhhwvwwgxwhxgwxwfwxwxwwxvwxwwwwvxwgfwwwxwwxwwgwxwxxxvxwguvgWwvwxwwwwwwwwuxxwxwwwvwwwxwwxwwvwwhgxxwwxwvgwwgvwwwgwwwwxwvxxgxgwvwwvgvwwwxwwwwwxwwxxwxwwvwuxwwxhxwxwwwwwwwwxwwhwwxwwwgwhwwxxwwwxwxwxxxfxwxwwvhxwwwxvwwwxxwxxhvgwwfexwwwwgwwxgvwwfgwvxwwwvwwwwwfwvwwwghwwwwwvvvwuwwvuwfvwgwwvgwwgwwwfgxwugwwvwwwwwwxwvwwwwwguvwwwgvwfwwfvvwxxxxwwwwwXVwwxvwuxxxxxwwwgwwwwwvwwwwxgxxwgvxvgwxwxxvhhxxwwxvwvwwwwvwgwwwwWfwwwwgwwvwwwgwwgvvvwwgwwwwvwvvwgvvwxggwwwwwwvgwwwfgwwwgWgxVwwvewwwwwwwwWwwwvwfwwffwxxwgwwwwwhgwwwvwwgvhgwxwxwxwwxxxxfgwxwxxwwgwvxxXxvwwwxwgwxwgvwwxwwwwxwwwxvwgwxuwxvugvwwwfwwwuwwwvvvwgvwxwwvvwwwghwuwwwwxugwwvwwuvvvwuvwfwwwggwwvwuwvfdgvfwwfwwwvxwwwxuwwwwwwwwwwewhwwwwvvvvwwxWXfwwwGwgwwxwxwvwgwwvhwwwwxgwhvwwwgfwwwxvwgwwxxwwwwxgwgwwxwwwwxwwvxgvwwwghWuxwxwxvwfvvvfwwwxxfwvwvwvWuwwwxwwvvfvwgwwxwwdgvfvwvvwfxxvvwwvwfvuwvwvwxWwugewwgwvgwgxwvwwxwhvgwxfwvwwwwwgwgxuwgwvwxwwwwxwxhwvwfwxwvwWwgwgwxwwhwgxwgwwwxwwwwxgwfwxwgwgwwwgxwwwwvwwxxgvvwxwxxhxxgwwgwgvxwwxwxwgwxvgvfwwgvwgwwvgwvwwwxvxxvwfxwxgwwwwvwwwfFwwgwhwuVggFfvwwgwvgwvvvwwwwgvgxwvhxvfvwwxwgxxxvwgffwgwvwwxwfgwwwwxwwhVwwhwwwxgggwxwxxwwhwwwwfwfgwgwwwwwwfwvgxwgwxxwwwwvwxxwxwwxxgwxwwhxxwxxWwvwwWwwxwvwwgfVvgvwwvgwwxwwwwwgvxxgvghxvxwgxwxggewwwgwwegwwfwffxwfwwvgwvggvfhxxvwwggvWgexxgxwwxxwvwwwwxxwwgwgxxhgwwwgwxwxxwgxwxxgwwxxwwwwvxwwxxwwvggwwxxggxghxwxxwwwwwgxxwwxgvvvgfwxwxwwfwwwfgwwwgxgwgxwxxxxwwfwxxwxxwxwwgvgvtgwxwgegfdfxgwgxwgvwwgwwxwwxwxwgfxwgxwgxvgewgvwwwxwvwghgxwwhwhggvfgxxwgwxxwwwvggvwwhwwxgxvgwgwxwwxwvxvwxwgvxwxxxwwwwwxwwwwxxvwwgwugwwwhwxwwgevxwgvwfxwvgvwwxwxwxxvwwwwxwwwwxwwxwwugwwwwwwgwwwgwxxgwwgwwwxwwwxhgwxwxwwggvgwgwwxwgwvwwhwvxhwwwwgvwxwghwwvhggxxxwwxwxwwwxfxxxwwwwwwwwwwwwwwwxxwxwxxwuvwwwvwwwwwwxwwwwwwwgwwwwwgwgwgtvvwfvwwwwwwwvwxuwvwwwxwwxxwxxxxvwwvWvwwwwvwwwvxvwwfxwwgvxxwxxwdwwwfvwvwwxxwwvxxwgwwwwxhxwxfxwfwwwvgwgvvwgvwwwwxgwxwwwgxxxwwwxwxxxvfgvwvgwvugwwgwwwxwuvvxxwwvwuxwwxxwxvwwxwwxvgfwvvWwwwwwvxwwwwxwgxwwxwwxwxxxwxxwfvTvwwgwgxvwvwwxxwxwxxxwvwwwwxwwwvwwvwwWwwwvwwwwvvvxxwwxwwwxwxxxvfvvuwwwvwfuwwvwgwvwwwwvwwwxxxxxwvvwwwwgwwwxwxwwwwvxwwwwwgwwwwwwxxxxwxxvwwwwwvwwwxwxwwwxxvwhwwgwwvgwgxvvwWvwvgfvwxwwvwwwXwwwwVxxwwwxwwxwxwxxvdvfggwwwfgwwtvfwgxwxwwwxxwwgxvxxxxvwwwwwxwwxxwvwwwwxxwwwwxwwxwxwwxxxwxgwxwwvwwwwwwwxxwwgwxwhxwwwwxwxxwwwwxxwgwwhvgvwwfvuwxxxxvvwwvxwwvwvvwwxwwwvwvwwwwxvwxwwxxgwxffwwxwfuvwwwxwwvwwwwwxwvwwxxxwxxxywvwwwwwwwwwfwwwwwwwwwvvwwwwwwwwxxwwwxwxwvvuwwwwUedvxxwwvgvxxgwwvvwwweefwxxxwwxxvwwgvgwwwwgwgwxwxxxwwwwwxwxxxxUdevwwxuwwxwwvxhvwwwwxwwxwxxxwwxwwwvxwwwvvwwwwwwwxxxxxwwwwvwvwxxwvwxwwxxxwvwxwxxhwwxwxxwhgwwwxxxwwxwwwxxxxxwxwwwwwxwxxxwwxwwxxxhxwxxxxxwvwfwwwfwxwvwhwvwwwwxxxxwxxwwwveefxwxwwxwwwxvwxwwwgxxxwxxxxwxwWxwwwwxxxwxwwwwwwwxxwwxxwwwwxwwxwwwwwwxwwwxwxxxxxxxwuwwwxgxvvwwwwwwwwwwwwwxwwwwwxwxgvgwwvvwfguvwgffwwxwwwgwvvxxwwwwxxxfgwxwwwfuwwwgwgwxwwxwwxxxwxwxxwuvwxwwwwwgwwwwwxwwwxwxgvwwwxwxwxwwxhwwwvwxxwwggwwwwWwwxwvfvvwwwwwwwxxxwxwxxwvwxwgWWwwwwvffVgwvuvwfWvxxxwvgwhxgxwwwwwwwwvwwxxwwwwwvgfwvvuhwwxwggwxwwgvxwwwwxwxxxxwwxxxwgfexwggwwugwxgwwxxvwxvvfwxxwwwxxxwxvvwwgwwwwvvgvgwwwwvgwwwxxxuxxwxxffvwvwwwvwfwfwwvggwgvwwvwwwwwwwwwwwwwwxxxwwwwwvwvgvvxwwwvgwwwvwwgxvvwwwwwxxxxwwwxxxwxwwvwwwwxwwwwwxwxwgwxgxwwwxwxwxwxhxxxxxwxffgwvwfwwwwxxVffwwwwwxwvwwwwwghwggxxxwwwfueWfwvwwwwewvgeVwwhwvgxvxwuwxwwwvvwwwxwgghvxxwvxggvvwgwwvvwxwwxvwwgvggwvwwwxgxxwwwwxxxwwwwwgvwwwwwwwggxhgwwwwwwvxvwxxggxwwwwwxwwwvfwwgwxxwwvwwwwwwwwwwwvxwwwwgVfxvvwwvvwvvvgwvvwgxwvwwwvvfvvwwvwvwvwxxxwxwwgugwwwwwwvvwwxvwwxxwwwgvwwwvxgxxxxgvwwgwwgwwwwvxwwwwgwwvwxxwwxxxwwwwwvwvwwvfwvvwvwfwwwwfvvwwwvvVwwvvwwwwwwhwxgwwwgwwgfvwgwwwgwhwvgwgwhggwwwwvvvvwhhXwwwwwxwfugwvvwvvvvwwwwgvvwvwxwvwxwvvwgwwwwwwxwxwwwvwvxwwwwggwwwgwvwwwxvwgvxwwxwfxwvxwwxvwvwwxwwxxwwwfvwefxwwvwwdVwwwwvvwhwwvwxuvvwxxwdVvvwwfwuwvvwvwwxwxxwuwwvwvvwxwwwwwxgvdvuwxwwweuvwwgwwwvwwwxxwvxwxwwxhfuwgxwwwwwwwxxvxxxwwvwxxwxwgxwvufuvwgvfvvvwwwwwuwvwvwwvvvwvwwwwxxwwwwxvggwwxvwwwfwvfwgwwwwvwfwvwwwhwwfggxgvwfxvfWwwxwgwwvwwwwvewgwwwduuvwwxwwwwwwgvvxxwwxvxwwwxwwxvwvxfwxwwwwwwwxwvwwhwwwwwxvwvfwhvgegwxwwwvwwwwwwwxwvwwwwvwvwwxwwwvwwxxfvwwwvvvwwwwwwwwxugegxhwvxgwwUVwwxwxwwxwwwwxxxwxvwwwwvwwwwxxwxxvxxwwwgfxgxxwwwhxwwvvwwwwgwwwwxxfvvwvvfvwfvwfeughwwwwxwffvvxxwxgxgvwxwwwwwxvwvwwxwxwvwwxvwwxwwwxwfuufxxwxwxwvwwgwwwwwvwhwwxwwwxxwwxwwwwvggwvwwwxxwxxvvwvwufugwgwwwxxxxxwwwwwwvxwxwwwxwwwwgxxxwxwwwxvxwwwwwxxwxhxwxwvxggvvxwwwwggvwvwwxxwxfvvfwgwfvwxxwwwxxwxwxwwwwwgwwxfgxwxwwwwwwxxxwwwxwxwxwxwwwxxxxgwwxwvgwwwxxwwvhvxwwhwwwwufwvwgvvwvvwwgwuvvwgwvgwwffvwwgwggwwwwwwwgvwvwwvwxfvvfwTewvFfftwwwfvwwxvwvvvVwwUwfvwvgwwvwwxwVfuvwwgwxwwvwwvvvuwfeweufvvUuvvfvwgvwwvvgvwwvvwxwwwwxhghxxwevvwuwgwvvwwWwfwvxxgFwxggwvwwxgwxxxxgxwwwhgwgwugwfvwwfwuvvwwx4effhvwffuwvffwwwvgvwgvvwwvwgvVwwwvxvwwwxvwgwVegwfwvWVugvugfggwfwwhwvu7XhcvwwvvwvgxwgwwfgfgxxxUxwwvxgwvwgvugvwwgvvgvvfeggggufwwggwfwxwvwwwwvwxwwxwwwwxhggwgvfvvvhwggwwewgfxfgFXhEgfvfhfwvwwwfxwwgwffwgxfxwwXvwwwxwvwwvfvwvwvwuvwfffwwwwwvwwxvvvvwwwwwwwxwfxwxxxwVevwuwwwfwwvwxwffvfwwwVwwwwwwvwggwwxwwxxwwvwwwwgwwwwwwwwuwvwxxvvwwwwwfwvwxwwwwwxgvwwwvWwwwwwxwgxwvvwgvvwwxwvwwwwxwxxwgwwwxwxxwwwwwwwxxgwwwxwxwxxxxwwwffwvwvwwuxgfwwgvfvhwvgvvgwwwgwwxvxwxvgwwwwwwwggwwwxwwwgfvgwvwfvxwwwfhwgvGwhhTwwgggvxwwwvwwwwhgwvVwwwwfwwwvwvgvwguvxwgwwxwwwvwugwwgfwwwwwwwvvhwwwwxwwgwwwvwwwgwwxvxwwwwwwggwwvxwhWvwvwwvvwwwwwwwwwgwxwwgwxgwvwwvwwwwwwxwxxxwxwwwwwwxgwwwvwwwxwwVexwwxxwvfwwxxxxxxwxxwwwwxwgwgvvwwwxwwwgxwguwwgwgwvvwwxxvwwwwwwwwvwvwxwxxwxwwxwxvfwvwwwwwwvwwwwwxvfxwwwwvwwxwwfggwgwwgvfvwvfgwvvvvgfxvwgxwwvvxgwxwwvfwwxxvfggwwwxxwwwwwwvwwwvVfewwvxwvwxwvwvfwwwwwwwwxwwxxxxwwwwxwwvgwwwwhwwwvvwwwwwgvwvwwwwvvgffwwwwxvwwwvwwxxgvwwwwxgxxxfvgwwwwwwwwwwwwwwxwvvwwxxwxxvwwwwwxxwwwwxxvxwxxvvxxvvwwwwwgvvhwwwxxgvvwxwgxxwwxxxxweuvfguwvwwwvvvwxwwwvxwggfghxwxxwwwwxwwgvhgxwxvxwxwxvxwwwxwwxxvxwxhxwwwwxxwwxwwwwwwxwxwxwxxwxxwxxxwxxufggwvvvwwwwvvwwwwfvwwwwwwwwwwwvvvwxwvwwuwfuwwwwwfvfvwvwwwwwwwgfwwwwgvwwxwWwwwwwwwwxwwwwhxfuwvwwwvwwwwxvuwwwxwwggwwgwwxwvwwgwxxxwvwffwwgvvvwwfvuwwwwwvwgwhfgwwwwwhxhgwwwwwfvgvwwfvvvwxvgwvwgvfwuwwxwwwwwwwwwxwwwwwwxwxwgwwwwwfwwwwvwwvwgvfvtwwwwwwwgwxvwvvgxwxxxwgxwwwwwVxwvwxgvwvfvfvwwvvvwwwwwevwwwgwwvfwwwwwhwxwhvwvwwwvvvwwwxwhgwwwfwgwvxwwuwwewwwvwxwwwxwvwfvuwvvwgvwwvuwvwvwwfugwwwwwwvwvuvwwhwwwwwwwwwwgewuvwfwgvvwwvvwwwwwwwwwwfvgvwwgxvfxgwwwwwxwwxhwwwwwwwvwfwvwwwwwfvhwwwwxwxwwwwwxwwwwgvwwwfxxwgwwgvvwwwwggxgfwwwwwwwwwwhgwwvwwwwwvxXxwwxwvwxwuwwgwvxffvvvvwggwvwufwegwwwvvwwgwwwwgWwwvwwwxwwwwwwxgWvwwwvvfvvwwghufwvxwwvwwwwvgwwfxwgwwxVggwvwWwvxwxwwgwwwwwvwuxvwwwwwwxgvgvgwwvxxwwwxxxxwxxwwwwxxwwwvgvwwfwwwwwwwvxwwxwwwwWxwwwwxvwgwxvwwwwwvvwwwwvwxgwgwwwwxwwwwwwvvwwvwgwwxwgwfwWtgwgvVvvwwweVwwxhwfvvwwwggvfwwwgwxwwwWwwwxwgwgwwxvwwwgvgwwwgwguvvvwhvgxwxxwxxfwwvghwwxxxwwxgevvgfvgwwxffvwxwGvxwwwvwwvwwxwwwwwxxxxwwxwwhgwwvwwgwfwvwWtggwwwvvwwxwwggwwvvwwvwwwwwgwwggwwxgvvvwxwwvwvwgvgfwvfwwgwwvfhWuwvwxgXxxwxwwxwWxhvxwgxxVfggwwgwwwwvffwwwgwvwwxwvwgxxgwwwwwfvvxwwWwwwwwwwvwGhXvwvwfxwxwxxwwwvwxfhwwwwwwgvvwwwvuvwvuvwgwvwvvwwxwffwvwwxxwwxxwxwxwwfeufgwvwufevgwgvfWvwwvwvxhwgwxwwhwxxxhwwwhwfwvxwvvwwwvxffwwwvxwxvxxwxwxvvxxwxwxxwgvwwwwvwwwwwwwvwwwggwwwxggwxxxgwwxxxWwxgfvwfvwwevwgevwwgwvxvwwvwfwvwxxvwwghhxwxvwwwwwvgwwwwvgwgWwwGevwwwhvwwwxxxgwwxwwvwgwwxwvgwwgwfvxvwwwwxwwwhwwwxwuxwxwxwwwwxwwwwwxwwwwwwwwwwwwwxwxhXvxwggwwwwwvwwxwhVvvxxxwwvwgwgwxxwvwvwvwgvwhwwvwwxwwwvwxwwgvuwwwwvfvvwwvwwwxvwxxwvvvvwwwwxwwxxxxxxvgeUwwwxwvwvxxwwwwxwvwxxwwvvfgwvwwvwwxxxwwwwwxxxxxhvgwvwvwvfvgfwvwwwwwffvxvvgvwwwwwxxwwwxgxwwwwxwuevfeevuWevgvuvwvvfxhwwvxwggwvxwvwgvgxwfxwxhxwwuwvwfvvwgwwxwwggwfwxwwwggwwwxxwxwxxwfeevvfvfwwwvfwwxxxwxwwxgvwxxwwgvxxwwwwvwxwwwwxwwvvxwwwwwwxxxhwwwfvfvwxwwwwvxvwwwvwwfwxxwxwxxhwwvvgwwwxwxwwxxxxxwxxvwwwwxxwxwwwxwxwxwwxxxxxxxwwxfvwvVvvgfwgwvwvxwgwwvwggwwxgwwxwufefwvugwxwwVxwxxxhxxxxwxwwwwwgwwxwwwfwwxwvwwvwwwxxxgwxwwxxwwwxxwwwwwvwwfgwwwxwwwxwwwxwwwgvvwvwwvwwvwwwwwvwwwwwwwvwwwxwxvwvgwwvwwwvwxvwwwxwwwxxwwwvwwwwwxwwwwwxwwvwwwfvwvwwwwwxwgxxwvwwvxwwwxwwxxvwvwwwwvwwwxwxwxwwwxxxwxvwwwwwwwwvwgvwwwwwwwgwhwwvgwwwwwwwwxwxgwwwwwwwwwwwwwwwwwwwxwwwwwwwgwgwwwwwwwwwwwgwwwwwgfwhxwgvvvwvgwwwgvfwwvwwwgwwwwwwxwwwwxxxwwwvwwwwwvxxxwwvwxhfwgxxvvwwwwxwxwwgxxwwwvvwwvwgUfvwwwgwwvwwvwwveevwwwvwwxwwwwxwwxwUewvvggwvwvwwwwvxwxwvwwwwxwwwwwwxwwxwwxuuvvwwvwvgfhwwwwwevvvxvvxwwwwxxwxxwvvxwgfvwwxwwwhvwwwwwwxvxwwwwwxwxxxxfvwwwwwvwwvwggwvwgwvwwwvvwxwxxvwwwwxggwgwvwwxgwwvwwwhxwwggxhvwxwwwvwwwwwwwwwxwwfwggwwvwwvxgevwwwwxxwwvwwwxfwwwgghxvxxwhwxxwwxwvwwwwxwxgwfxvwwwwwgxwxxwwvwwwwwvewwwggvgvwwvwvvwwwwwwwwwwvvwwwgwwwwggwfwvwwwwxwxgwwwfevwvfwfvvwxgvwwvxgwwwwhggevvwwwwvwwwwxwwxxhwvvwwggwvvwvwwgvwwwgggvwwwgwwwfwwwwwwwxxghxxwvfwwvwevwxwwxwxvgwwwgwvfwvvwwXwwwxxxxxwgwwwwwffvguvwwvfwggwfwwwvxwwxwwwgwwwwxwwwwwgvwwwwwvwwwwxxwwfvwvwwwfvvwgfwufwxxwwwwwgwwxVwwvwxvwfwhxxhvwhxxwwxwxxwfgWgfvgfvwwwwwwwwwwvwxwwwxxxxwxwwxxxgxxxxgfuvxgwfgWxwgfxxwgwxvhxVxwgwxxgxhvwxxgxwxwwwfffvwvwfwgwwgvwwvwwxwwwwvvgwwwvvxwwVgwxxwwxhwxwgwvvwffvwvgwvfvwwwwxwWwwwxwhhwfwwwxwwgwwwwxwwwwwwwwgwvwwwvfwvfggwwfxwwwwhwwwgwwwxvgwwxxwwxxxhwxgxwxwwgwfgwwwwwwwxwxxXwxxwxxxwxxxwwxwxwwxxxwggwxwwxvvwfvfVvvxvwwVfvwgfwwgwwvvxggwwwwwwxwwxwwwxxwxwwvvvwgwwvfwxgvwgxwxgfgxfxhwgvwwxwwwwwvxxWfwwwxxxgxvwxwwwwxgwfwvwwwwwfggwwvhwwwwxxxwxwwwxxxxwwwwwgwwwwwwwwwxhxwhggwxwwwxhwwxgwwwxwvwwwxgxvwwvwwxxwwxwwxvgwwwfvwwwwwguwxwwwvgfvwwwwwwwwwxggvvvvvwxwxwwwxwxxxvwxwwwxwxxwwvuwwwxxVevxxxwwwxggvvwvxwwvwwwxxvwvvwxxwxxwxwvwwwwwwwwwwwwgfwvxwwwwvwxwwvwvvwwwxwwvvwwwwwvwgfvvfvwfvvUwwgwwgfxwVxxxVdtfwwvfwvxwxvwwvfwwwwwxwxvvfwwwwxwvvwwvwwwxwfwwwwwgwxwwwxxwettfvwwxxwxvwwwwfwxxvwvvwwxxwwxwvxgvxxxwwxwxgwwwfwwxwxwwwxxwwxwvvvwwvwxvwvwwwwxwwwxwhhwwvgwwwwgwwxwwwwwwwxxxwwwwxxxwwxwxvxwhhwwwwwwxxwxxxwvwwwwvwwwwwwwwwwwwxxwwgwxwwwxxwwxfvvUwgwwxxwxwwwfxxghwwvwwwgwxxwghwwggxfwwvwxxvwwwwvwwvxvwwgxxwxvwhxwxwwwxwxvxwwwxwwxwfwwxwxwwhxwwxxwggwgvwvxwvxvwvwwwwvwxvwwwgwvwwgvwwwwgvwvfwvwwwwwvwwwwwwwwwxhwvwgwwwwfwwwwwwwxxxwvwvwuwwvwvwwxwwxxwvvvvwfwwfxhxgwxwvwvwwvwxxwgxwwxwwwwwwwwxgxwwgwxwwxfwwxwgvwwwwwvxwvfxwvwxxwwwwVwwwvwwwvwvwwwwxxxwwgwwwwwwvwwvwwwgxggxvwwwwgxwwhvwxgwgwvwxwwwwwvwwwwwwxwuwwgwgwwwwwvgvwwgxwwxxwxvwwxwwwwvwwwgwwwwvwwwuwwvxwwxwgxwwxwwwwwxxxwwxxwuwwvgwwwwwwfwwvwwvwwXwvwxwwwwwvwwxwwwwvvwvvwwvwvvwfwwgwwxfvvuwwvffwxwxwwwwwvvwwxwvfwwwvgwwwggwvwwvwwwhvwvxhggwwxxxvwwghhwgxxxgxwxwwvvwvwwwvvxggwwwwvfwxwwwxxuwwwvwwvwwwffwwffvvvwwwxwwvvvxwwwwwwxghuxwvvwwxgxwfgvuvwwwWwwwvvfvxvwwgwwvwwwwgwvWxuvggghwwwwwxwwwuwwwvwwwxwwxvwwwxvxghvwhwwvxwvxxxwwxuhwxgwgwxwwwwxwwxvgxxgwxxvxewwhwfwvwwvwwwxvxuxgwwwvvvWwvwwwgwwwwwwwwwgwwxwwwwwwgwwxhwfwuwggwwuwvvwwwwgxwwwwwgvwwwwfwwfwuuwwgwvhwwwwxwgwwwwwwwwwwwvwwwvwwwwwgwwvwwvwwxuwwvwxwwxwwfwwwxwgxvhwwwxwwvwwwwwwwwwxxwxxxwxwwwwwvwwwwwfvwwvwwwggwwwwuwwvwvwwwwwvwvwuhwvwvwfgwxwwwwwwwwvwwwwwwvwgwxvxwwwwwfxwxuwwwgwgggwgWwxwfxwxvhxvWwwxvwwwwvvwwwvwvwwvwwfgwwxwwxfuwwxwwwwxwwxwwwwwwwwgvgggwwwwuxwwvgxvwwwxvwvxwgvxhuxwxxxwwwwvwwfvvxwWwwwwwgwwwwwgwwwwwwwxgvwwguwwwwwvvwwwwgwwgwwwxwvwwwwwwwwxvwxwwxwwwwgwxfwwvgwvWvwwwWwwwwugwwwwwwwwxxhxxwgguwgvwxwhwwwxwxwwxuwwxwwwwuwwxxwxwwwwwxxxwxxwwwwwxvvgwwwgwgwfwwwwvwgvwwxwwgwvwwvvxfwvwuwwxwwxwWxwwwwfXwwwhvwxvwxwxgwwwwgXwwwwwggvwvwghwuwwgwgwhxwhvwwWwwwwvxuxwvxwwwuwxwxggwhwwwwwxwxxwwxwwwwXwwwwwxhwxxwvwxvxwwvxvwwwwwwgwWvvwwwwwxxxxwxuvvgvwwwvxvwvwwwwvwvwxwfvvwgwwwvwwwhuuwwgfvVwhuvfwuwfvwvgwvwwwgvguvvvvvwwvfwvgwwwwgxwxwgvvwvvwwfgwwvWwwwwwgwvxwwxfvuvvwVwwvxxwvwwwwwvwhvvffevvwvwwwxxwwwwxxvvxwxxwvwvvfwwfwwWxwwxvxxxgwxhVwwevvwfvwwfgwwwvfWwvwwvwfwwgwwfwgwwfwuwvwwwwgfuvwxgwgvvfwwvevgVwufwwgwwVwvwfwwwwwgwwvwwgwwwvwfwvfxgvwWgxfxxhfxwvwwvvfvfwfvvwwwgfguwwfwwwxwwvwwgvvvfwvfgxgwwgwvvxfxvwgxwwwwwfvwwgvwvgxwvwhwxwgfwexgxwwgxhwfxwvwwxwxgwwwwwwwfvvwuwfwwxwfwvwvwwvwfvxgwwgvwvvvwvuwvwwwfvvwgvWxwwwfuvevvvvwvwwwwwfvwwwfwwxxwxwwfwwwwwwWwwWwxxwwwwxvwfhhxwxwwwguvwwvwwwwvwwwgwgwwwwwVwwwvwwxxwwxwwwvxwwwvwwghwwwwwuwwvwwggxgxwxwxwwwfxwwxwwVwgwgwxhhwwwwxgVwwwwwxufvgggwewwwvwwgVwwwvvwfxgfwgguvvegvfwwwVwwhWwwwwwgwgwhfhfggfeevvWwgvWgvfwwwgggxgwxwgwwwhwwxvwhWgwwvwwwxxxwwvwgwwxxwvvgvwwwwvvwwvwwxxxvwvvwxggxgwxxwvwgwxwvhwxwwwvvgfwvwhwwwggfwgwwwxwwwwwwvgwwxxwgvvwwwwwwwwwwwwwwwvwwwwwgwwxwvwvgwwwwwxvwwwvfwgwvvwwwgvwwvwwwwgwwwwgwxwwgwwwwwwWxgwwwvwwwwvwgvwvwwfwxwwwvwwwwgwwxvvxxvwwwwwvxxwgwwgxwhwwwwgxwxwxgwxxxwwgwwwwwvvwwwwwWfgwwwwwwwfgvxgwwxwwxgwvwxwgwvwvvwwwvfwgwxwvwwvwgwvvwgwgwwgwXwwWwxewwwxwgvwxgwwvghhwxvwwwvvwwvwvvvwguwwwwwwwwwgwgxwwwwxwwxvwwwwwgwwwwwwfvwhwvwvwwwvwwxxwwwwwwwggvxxvwvvwwwwvwwwwwwgwuwwggwwwwxwwxwvwxgvhwwxwwwuwvvwwgwwwwwwfvvvwwvwwvxVxwWxwxxhwwwvwxwwwwwwhwvwvwwwwwvggwwhwwhwwfwwhxxxxwwwxwwxfhwwwWhwvxxvwwgxghwwvxwgxgwhvwxxxxvwfwgwwvgvwwVwewvwwgxgwwwxwwwwhxwewwhwwwwXvhwwwfwwwwWwfvwggxvxwwwwvwwgxhxxvhgwwwwwwwhwwfgvxxwwwhvwxxwwvwwggwgvwwwfwhxxvwwhwwhvvxwwxxxxxwwwvwwwwgwgwgwvwvwxvvxwwxhwwwgxxdggwgwWfgwwgwvfvvgwwwvvwvwwwwggwvgvvwwwgWfwwwgwvxWvvvwvfwfevvwffVfwgwwvvewvvwwwwwffwuvwuwwwvwevvgwwwgwwfxwvvwgffuuwwfvwwfVvgwfwwUdvwxwvwwfuwxwwxfuwvvxgwvwwwwwwwwwwvfvwwvvwvwwwwwgfvwhgwWwggvvfvvxxwxwWxwwvgwwggwhgxvgVweWgwgvfgvwvvwfVgfgfvwwvwwvwwwEuwwvfwvvwvwxwwgfwvwgvwwwwgxwxwvgvwwffvffwvuwwgFeevxwffwfvgwhuvwwvwwvWwwvhwwhfvvfGxgfWXdwwwgvgfvgwvxVvwwwxuwWfvwhfvfwwwgwwwvgvwwfwgwwvvgxwwwwwwwxwXfwwxwxvwfevvwwwgwwvgwguWvgUxggVvwwvwwwwwwWwwVghUwggwgwwhvguxwwwwgvvxwgguwvfuwgefwgwvvvwwwwwvwfwvvwwvvwwwwvvvwwxuxwwxwwwfgewuwvwwvvwvwvVfwvwvhwwwvwwwvwvvgwvgwwwgvgwwWvwgwxwwwwwvwxwxwwgwwwgwwwvwgwwwwwfggfwvgwvhvvWwwvwvxwwgvvffwvwfwwwgwfwwgwvhwvgwwwwgwwwggvwvxxvwwwhfgwgwwxwVvggfwwvvwwwwwxfvvgwwuxWuwwwhxVvwwxxwwwgwwwgvwhwwxxvwwwvxVVfvgwwvvwwwfwwwggvwwxXfwWwwfwwhfXgwgggehwwvgWvwvxwwwgwgvwwvxwvwwwvwfgwgwfwwvwwwwxwvvwggwwvwvvwhwwwxxggwwwwwwwvgwwwwwwvfgggWvhwggvwwvwwxgwwxgwvwgvxfwxxuwwwvxxwvwwwwwwxvwwwvwvwwwwwvuwvwxxvgwwwxwwguwwwwvwwwvxwxxwwwwwwwvvwwwhgwwwwwxgevwwwvxwefwvgwvwvwxwgwwxwwwvgwxvwwwwwvwwgvwwwvwwgwxwwwwwvwwwgwuguxwwxvwwwxwhwffwwvffwwvwwgwwwwvwwxwwwwwwuffwgvwxwwwxfvvxwwxxwwwVvvwvfgwxwwwwwvwhwxuvgwxxxxvxwwwwxfgwUwvvgwwwwwwwwwwwwhggwwwxxvvwwgwxxxwvxvgvwwvuwwwwvwwwwwwwwxxwwxxwxxwvvvfwwwwwvwvwvvvhwwwxwxvwwvwwxxwwwxwfvwvwwxwwwvxwwwxvwwxwxxwwwwxwwwwwwxwwvwxwxxwwwxwvwvvgueggwxxffwwwwwwxwwxgwwhxxwwwwwwxwfuefwgVgwuwxwwwwwwwwwxxwwgfwwwfxwxxwggvwghxwwwgwwwwwguwgwWxwwwxxxxwwgwwwwwxwxwvwwwwwwvxwvxwwxwvwwtwwwwvuvwvvwwgvwwfgwwwwvvwwwwvvwwwvwvvwwwwwwwgvuwwWevvwvvvuugvvvwwwvwfwuwwvvevvuwgvwwfwvvwwwxxxxxwwwvgvwwfuwwfwwVvwwwvgwwxwwuwduuufxwvvwwxwwvvgwwwwvwugwWwwwwwfwwwvgwwwxgwxxWxwwxxwwwxwwwgdgwgvuwEuwvwvvwwfuwwfwwwfwgwgwwwwwvvvgwwwggvgwgvwwgxwwvwgvwVftvwwwvwvFwwwuwgwWwvfwwfwvwvvvfwwXhdwwggxvwxfwwwwvwvfwevvvvwwwgvhxwwuwxvwgWfvvwwwwwwvwwxwhwwwwhwxwuvuegwvTwwWxwvwxwvxgfwgfhvwxgwxwhgUhwwvgxvxwwwgwwwvwvfwwgfwwwwwwfwwxgvwgwhwwvwwwfwwuwxhgwwguvgvfvvvvwwwfvwwwvwxwwfgvwvwgwwgwxwwxwgwwxxgwwwwgwwvwgwgwwwwwgxwwwwggxwgwwwwwwxghgxwwxwwwvwvwvwvvwgwwwwwwwwgvwwxxwwgxwxxwggxxxwwxxfggvvgfvwwwvwvwwgfwgwwwhwwgvwwwgwxvwwwwwwvwxvxwfguvwxvgxvWwggwvuxwgWgwwwvgwwggwvwhWewwwvgwfwvxwwwwvgwwwvvwwwwwvxwxgwgxwwwwxwwwwwwwwwwxvwwxwxwvwxwxwwwffwwxhwwwwwggxwxwxxwwwwwwgwvxwgwwvwwewgwvwwwwwgvuwwwwwwwwwwvwfvwwwvgwwwwuvvwxwfwwwfdwwUvggvvxwfwxgwgwvwwgwgvwvvvwwwuvfvvwvxwxwxwxwvvgeewvwuvwgvVgvvvvgggwwxgwxhgwwxxguwfVvvwevvvvwwvfwwwxwgwxwwwwwxwwwwxggxxhxgwgwxwvvvwgfwwwvwvfgdwffwxvgwwvfwwwwVwgvgvwwvvwwwvwwvwwvwvwxwwvxxwvvwwvgvvfwdhvgfwggxwggvwFhWvvwwwwwxgxxwwxwxwvhxxwgvvgxgvwwuevvevgvvwxwwvwuvwwwWgXwwwggvwxwwwwwhvwxxxwhhvwvwvvwvwwWwwwgwwvvwwwfwwwxwwwxwwwxxwhvwwfuwwwxxxwxxxwwwwwwfvwVefwuwwhgfwvvgvfwxwgxwwvvwwwxevwvgwxwxhxwgfffWwwwvwgwwgvhgwgxhwgwwuwvvwwwgwvwwwwwhwxwwwwgvfwwfwwwwwvgwwgwxvfwgwgxxxxwwwwxwwWvwxvvwwwgwwgfxwxxxgxxwwxwwwhxfvxwwwxhgvwvwwwwfwuwwwxvWwfvwgwwvFfgvvhgGfwwxxwgwwwwxWwhgwwwwwwwwxwwwggewwvgvVwgwwfgvvWxGfwGwfxvwvwwwxwwwgxwwwwgwwgwwwwwxvxwxwvwwwwwwhwwwvwvxwwghwxwwxxxwwvgxxvxwvxhxwvwwwhwxgwwwvhwxwwxwwwxggwwwxxwxxwWvwxwwvwwwwvwwxvxxwwwwvvgvwgwvwwxwwwvxwvwwgwwxwwwgwwwwwwgwxwwgvxvevxwvgwguvvxwwwxwwvwwwvfuvvwwxhwvwvgwwwwxxxxvvwvwuxwwvwxwvvwgvwxxwwwvwhwwhwwwwxwxxxvwuvfvgwwwwwuwwWxwwwvwvxxwxwwwxwxwxwvwwvhuvvwgwwwxvwwwwwwuvgwwwvwvvwwwgwwvwhwgwwwwgvvvwvwwwfvvgwwgwhfvwwvwgwvxxxxfxuvughexxvxwwfwfwwgwxwwwxwwgxxxwxwwwwwwwwxwxxvwvuwVwwxfxvwfxhexvxvwwxwwwwgwwwwwwxwvwxwxvfvvwwwwwvwvfvwgvwxxwgwwvvwvwxfwwwxxxwxxgfvvwwwxxxvvwwxwvfxxwfvvxwwwwxhxwwwwwvwvfwwwwwwxwwxxxwwxwwwvwvgwxwxwwwxxwwwwwwwxwxwxxvgvgvxwvwwxhwxxhwvwxwggvvggwvvwwuvgxwwgwxwxvvvgwxwwwwxwxxwwwxwwwwwwwgwxxgvvfgXVxvxvwwwvwwvwwwwvwwvvvwffwwuvwwwwwwwvwxxwwwwwwvwwwwxwwwxxwwwxwxwxxvhvwvgvwgwvwwxxwwwwvvxxxfwvwwwwwwwwwwvwwwwwvwxxwwxfwvvwwwwwwwwwwxxwwxwwwgvgxwwwwwwgvwxxwwwwwwwxwvvvwwvwxxwwwwwwwxwwwwwwwwvxvxxwwwxxxxxxwwwwwwwwwwwwxwvwvgwwvwwwvgwwwxwwxwwvxwxwwwwxxwvvxvgwwvwwvwvwxwxwgwgwxghwvxvwfgxvwwxvxwwwwwvxxwwvwvwwxwwxwxwwwwhwwwwwwvxwwwwwwvwxwwwxwwwwxvxgwvxgxwxwwgvwwgwxwwwwwwwhwvwxwwxwwwvgwgwxwwwwwwwvwxwwwwwgwxwxxwwxgwxxvwwwxgwvwvwwwxwgvwxwxxxwxhwvwxwhwwwxxwwgwwwxxvwxwwwwwwwwwxvwfwwgwvwvwgwvwwwwwwhvxvgvxwwwwgwwxxxwwgxvwhwxvwxxwwvwwgwwwhgwvwwwvwwxwwwvxwwxvgxwwwwwxwwxvxwwwxwxxxwwwwwxwxwwwwxwxwwgvxvgvwuwwwwvvwwwwvwwgvvwwwwwwvwwwwwwvvwvvvwgWfvwwwgwwxwvvufwxgffwwvwwvvwVewwhwwvwvfvfeggvvvvvwwvwwgfwwwwvvgwwxgwwwgfwgwxwVfwgvwvgwvwvwwwvwfvwwwwvgwvwfewwvxxwggvvgwwgwggwxfvwwxwwxwvwggvgxxwxwxVwvvvvwwwwwwfwwwvvvVfvwwwgwvvwxgvwwvvwgwwvwwggUfuwhwgggxwwgwwfvvwwwWwfwwwvvgfxxgWxwwfwwgwUfewwvUwwwwwfuwwgwVxhgehxfvvwfvwgvvwwvvxxxgufgwgwgwwwxxwvwvwwwggwwvwwvwwwfwwwwwwwuwwwvfwwwxvwwwWxwfwwwwxvvvwwwvwgvvwwgwvvxgwvxwxxwgvgwgvvwwwvvewwVfvvvfvwwgwwvwwwwwvuvxwwwwwwvwwvffwwwfvvgwvwfgvvhwgfwwwxxwvvvgwwwxwwwwvvwgwwwwewwxwwwwwwgwwggvvgwvwwxvvggwvwwwwwxwxxxwvwxgwwwwwxxwwvwwxwxwwwwwwgwwgwxwwexwwwwxwwwwgxVxwvwffwvvwwvwwvgxgwfgfffwwwVwxxwwvwwwvvwwwwwwwwwvvffvggWVxvwxwffVgwwfwwvvfwgwWwhWVwxwwvvvvffwgVfewwwwxwggvhffgwwwwwgwgwwwxwgwgwvwwvwwgfwvwwwwwwwwgwxwxwwwwwxvwwwgvwwggxwxgwfwfvwwwwvwwxwvwwwwgwwwwwwxxuwwwwvxwgwwewwguwwvwvvwwwvwwvwgffwvvfwgvwvvwwguvvwvuvwfvwewduwevwwvvfvvxwvwfWUvvvffwwwuuwgwwfxxwgwwffdwvgvwxfgvvvvvwwwxwfvvfuxvwwwweuvwwwxxwfefvvuwgwwvwvxgwWwwfvvvwvwfwwwgwwgxwxvxxxwgwwvfweggEtvwfwwegwfuvwwuvwuvwwwgggvvfgvvfwuwwwvvfwwvwWvvvwwwggVevwwfufvwxwegwwwwvgvfgWhhfWfuvgvGwwwgwfwvvwgHgTgxvxvwvfwuvfuwvwxwxwgvfvwgvfxvgxwffvfwvwwwwwvxggwwwwwwvxwwwxuvvvvxvvVwxgevwvVhXTwwwfxwfgwwewwwvxwvghxwwvxvuhvwwwxwwwvgufwxwvwvwevwgvvwxwvvwwwwwvwvwwxvftwuweuvwwgfxvvwgwvgxwwxvgwwvwwxwgwwwgwwxwxxwxwxxwwwvuvvwxwgwwvfvwwxwwwwwgwvvxxwwwwwgxwwwwvwuwxwwwwxxxwwvxxwwwvwwwwhwwwxxwwxxwwwwwwwwxfwvfvvvfwxwwvvwwvgxvVfhwxgwvvwwwvxwvxwwxgvvwwwwwxwwwwfgvvwwuWwvvfwvwwwfgxXhewwwgxwvvwvwwwWvwggvuvvgxwgwwwwwfwvvwwwvxwwwwwwwwvvwwwgwwwxwwwwwwwwwwwwxxwwgwwxxwvwwwwwxwwxwgwwwfvuwwvvvwgwwxwwwwwvvwwwxuvwxwxvwxvwvvwwwvwwwwvvwwvwwvwvgxwvxwehuwwwxeevwwwvwwwwvfgwxgwwwuvwxWwwxwwxvwwwwwwvwwwwWwxvvwwvwwwxgvwwvwxxxxwvfwwgvvxvwvxfgxwxvuwwwWgxwwwwwwwwvvxwvwwwwggwwvwvwwwwguwwvwwvxvwwwwwwwxxuuwvwwvgxwgwwwwwxvwvxwwuvwgvwxwfwwuxhgwxhvgwgwvwwwxwwvwxwwvgwxwwvvvxwvxwxgwwxvwwxfwvevwgxwwwvvwwgxwwwwwWwhewgvxwwwWwwwwwvwwwgvuvwvwuwvvwvwxwxwwvwwwwxxwwwwwwwvwwvwwxxwgewvgwxxwvvwwwwwgwwggwxwwwxxwwxwwwwwwwxfwwwwwwwwwwwwwwwwxwwwwwvxwwxwwgwxxxwwvvgfwxwxxxwwhwxwwxwxxxwwwwgwuwvwxvwfgwwwwxwvwwxwwwxxwwwwwwwwwwxwwwwwwwvxwvgvwwwwvwvwwwgwwxwwxXfwwwxwgwwhwwxxwwvxgxwwwwwvwgxxvxxxxxwwwwxwvwwxwwwgvwxwwxwwwxxhwgwxwvwwwwwwwwwfwwxxwwwwgvwwvvwwwwwvwwwxgwgwggwvwfwvxwwwwxwwwwwwwguvfvfwxwwwvvwwwwwvwwfwfgwwgwwwwvvwwwwvgwwwwwwvvwwwwvwvxwvggvwwwvvvxxwwwwxvwwfwvgfwvxwwuwxwwwwwwwgvvwvwwwwwwwwxvgxxwhwwwwwwxxwwxxxhxwwxxxxgwxwwwwwwwwggwwvvwwfwwwwwfuwgvxwwvwwwvvwwvvwvwffgvwwwwvwvwvwfwwwwwwwwfwxwwgvwxwgwwffxwgwwfvwwxxwvgvwwgwwwwwwgwwxwvxwwwwwwgwwwwwvwgvwxwgvfvwwwwwwgwvwvvwvwvvwwwwgwwvxwvvfwwwwwgwwwwwvfwwwwvwxwwxxwgxgwvxvvwxwwwwxwfxewxwwvwvwfuwwwwwfegvfVvvvvwfvvxwggvfvuwfVvuvxwgexxwwhhgwvfwTfvUvwuhwweuvwwwwvvwwwxgfevvwwxxxwwxgwvwvxwhWwgxhwVvgwwfutxfvwwhUuwfxwwwWhgefuxwWwxgheuwwgwXhfxXwvvwwwVxfwgwvgwgwwwvwxgvwwwwwxwWfgvxvwgwxhwXvwvhxwGgwWwxvwggVvuwVxwwEuvgugvwvwwwwgvVuxxwtwfwhwwwwwwxwwvwwwvgwfwvwgwgxxwffwwggxwXVwxgwXffvwwwwwxgvxghgWffuwwWvXfUGufvdufvugwguwwgxgvuwvghgWVwwwwwwwtwwvhxwxgggwvxgwwfwwgwvwxwxwvvwwggvgwhwwgwgwgewUxwwguwvvxxVVfwwFVuwwxeuvwEtfwdfgvgwwfvwgfffwfvfvwgegefwvwwwwwwvggwwwwgvwxeefwgUtwEugvffwwwwvwwwweuVvwwwxvfVvfVwwgvwvwvvwxwwwxwvgwwvwwvwgwffvwvgvwwvwwwwwwgwXxwwwxxwgvwxgwxwgWufVvwvvwwvwvgwwwxxhwxvvvwwwwwwwwwwwwxxgwwfwwwvfvgfvgwVvuwwfvwxgvWuwwwvvwwvwxwwgvxwwwvwwwwwgvwwwwwfvwwwwxxwwvxwxxwwhwwhwwxwwwxgxwhgwwxgwwgwwwwxwXxwvwxwwwwwgwgwxwwxwwxxxxxxwwwxwhxvwwwhvwxvxwhwwwwxwwwwxwwwVugedevvffvwvwvwvgvvwGvvwwgwgvwwvwwwgxwwxhwhxxVtgvvfvvfwxvwwwfvgwwgxvgxwwvwgwvwwwgwwwwwwxwwwwwxxwwwwwvgvgwgwwxgwxxwwwwgwxwxwwvwxwxxxwhxvwwwhhwxwwwxxwwwxxwvhwwwxxgxxxxvwxxfvwvwwvftwfxgwfwxVhvhwwxgwxwwwwxxhwxwxfvguwvwvfgwxwvxwwwwxwwwxwwwwwxwxwwfvwwxxxxwwwwgxxwxgwgxxxxxxxxxxwwxwwxvwwwvgwwfxwwgwhwwxxxgwvwhvgxvwxwwwvvevwwvgUuvwvvwuuwwgwwvwwwwwvwwwvWvwwvwwwxxeuuwvvWfUuwufwwVvwwwwgvwwwvfgwwwwwwwxegwwwwwvwvwwwwwwvwvwxwxvvfwwvwxwwwxwwwwwwwwwwwwhwvguvfwgggwvxvvuvhxwwxwxwwwwxwxxwwxgwwwgwwwwwgwwwwxvvWwwxVvwxxxxwwwvwwvvgvxwwvwxxvvwwwxwxxwwgwxxwwxwwxwxwwwwwxxxwwwwxwwhwwxwwgwwwxwxxwwwxxxwgxxxxxxxwxwgwxwxwvwwxxwwwwxwwxwxxwxxxxwxxwwwwevwvwwvwufvgwwwvUuvwwwwxwvwvgwwwwwfxwxWwwxxwwxxxeuwfvuwwwvwgwwwwwxwwxwwwwwgxwgwwgxwxwwwvwwvwwwggxgwwxxwwwwxxgxwwwwwwwwwxwwwwwwwwwgwwwxwxwwxwxvxxxwxwxwxwwwwwxxwvgwwwgwxvuwvxxwvwhwxxwwxxwxxwgwwxxwwwwwwwwwwvxwwwxxwwwxxwgxwwwwwxxwxwwwwxxwxxxwwxwxxwwwvwwwwxxwxxwwxwwwxxwwwwwwvxwwwwwwxwxwxxxxxxxxxxxxwuvfgfvvwEfdwdgvvfvuwgWewfgfvfffwfvggwwwwwwxvWvfwwwwgxxxfvwwvggegVvfvvwfFTwfwvfgVVwVuwvvwwwwwwwvwxxgwwwwwwxwwwVwuxuvwwfvvgwxwgwwwwvwwxxxwvvxwwfwwxxxwxxvwgwwwvxgwvwwgvgwfgxgwxwwgwwgwwxwxwxwwgwxxwxgwwwgVvfgggvvvggwwxwwwwwwwxggVwvvgwhvxfwwxwwvwwwwxwwfwwwxfvvvwxwwwxwwvxwxwwxwwxwxwxxwyxxwxfvwggwvxfgwwxwxwwwxvxwxwxxxwhwxxwwwxxwwwwvwxwxwwxwxxxvwxhxxxvwUvvwfvvwvffeufwwgwgwggwwwwwwgwwwwfwvwvwwxwwwwwxxuffwgwvwfvvgwxwwgwwwwgvwxwwxwwgvwxxxwwxxxwwwxwwxxvvfwwwxvvwxwxwwwxxwxxwxxxxwwxxxxwhvwvvwxwwwwwwwhwwwvxwwxwxxxxxwwxxxxxwgwffuvgwwvvwwwgwwwwwwwxvxxxwxwwxxwwwxxxxxwwwxxwxxwvwwxwxvwwvxvwxxxxxwwxwwwxxwxxwwwwwxwvhwwxwxxxwxwwxfxxwwxxxxxxgxvxxxxwxxwxwhxwxwxxxxxwxxwwufvwvwwfvfvwwwetgvvgwvvfVwwwwxUtugvgvwwwfxefwvvwwgwwwwftfgvffvueFwwwvwwDewwvxxefvwwggUfvuTvfffwwwwwgevwwwwwwvfvvgfwwwwvwufewwwwxxwfwuwwfwwwxwxhvwfxwxvVdwvwvvwwxwwVgvwwvwxfwgwgwvvgwvwwvwxwfwwwwwgwwwwwwwwwwgwwwvVvvxwvvgwwwwvvgwggffvxwxEfvgvgvwwwxwwxwvwwwwxwxxvwvhwwxxwxxgwvwwwwwwwwfvwwxwwwvfwvwwwwwwxxvgvgwwwwwxwwgvwwxxvgwxvwwvwwwwwgwwwwfwwhwwwvwxwvwwgvxxwwgwwgvwfwwfevfvvwwwwwvwguevvgwwwwwwxxvfvVvwwxxwvwwvwvwwxxfefvfuvvgwvwwvwwVwwwwwvfwwwVwgwwwwwxxwwgwwxwwwvwgwwhwwgwwwxwwwvxfwwwxxwxwxxvxxxwxvvwwwwxvwwwwwwwfvwwxwgvwxwhxvwxwxwwxwwgxvxwwwwwwfvvvgvwwxxweugvwwewggxwxxwxvgwvwwwwxwexxxvwwwwwwxwxxxxwwvwxgwwxxvgwxwhwxxxwgxxxwwxxxwxhwfwxxxxfxwwwxwwwwwxwxwwwvwxxxxwxwwxwfwwwxxtvwfgvgguwwvfvwfvwfvffvfTTuvvvffvwwgvvwwwffwffvvwvwgvfgxgfwwvvwvfvvvwfwvfvvwwvffvfvvvfwggvwfwvgwvvvvwwvvwvwguwxwgxwwwwgvwwgfwvwgxwwwwwwwwwwwxwwwxwwxwwxxgwvwwwwxvvwwwwwwwgvwwwxgxwuwwxxwgxwwwfvwwwwwwffgwwwgwwwwvgvwfvvwxwwwfvwwhgwxwwxwwwxwwwxwwwxwwwwwgxxxwxwxxxwwwwxxxxxgvvwwgvwxwvwwwwwwxwwwxxvvxvwwwwgvxgxwxwxvxxwxwxwxxxhwwhvgvvfwgTTuggwwffuuwwwwwfwWvwwvvvwwwwgwwwwwvwxwwwwvwvwwwvfwWwwxvvwwvvvwwwwwwxuwwwwggxgvwwwwxwxxwwwwwxwgwxxfvwwxgwvvwxwxwxwxxxvwhwwwwwwwwxwvwxwwwwwxvwxwxxvvvxwwwxwwgwgwwxxxwwxwwwxwwgxwwwxwwwxxwxxwwwxxxwwwhgwwxxxxwxxgwwxxwwxxwhxwgwwxxhvwwwxxxxgwwxwxxxxwxwxwwvwtwwxgvveufwffdegwWUfvUVvvWgwvwwwwwWwwwwgvwwgwvVWwwwxvvgwfgvwvwugwfwgWewgwwVfffggvwwwwuwwwgwvwwwwgwvhvVwvwwwvfvxwwxwwxwvgwwwgxgwvxxwwxgxxxxwxhxgwxwxxwwwwwxggwwvxwwvwwxwhvfxwwwwvvxwxwwxwwxwwwwxxwwwvwwggggwwwwwwwwxwgvwwgwwvuxwwwvwwxwwgxvxWwwwwwwxxwgwwxwwwwxwxxxwwwwxgxgwgwxwwwwgwxwwhhgwxxwvwwwwwgvwxxwxwwxwwwxxwhxvxxwwwxxxwxvgxvxwwxxwxxxwwgvxfwgguwwgwvwwWUvvvFfufvwwwgvxwwwwwxwxvwxwwxwwxxwggwwwwwfwvvvwwwwvghgwgvgwwwvwgvvwvwwxwvwwwgwwwwwwwwvggxgwwxwgxgwwxwwwxxgxxxxxwxxxhxwxxwwxxxxwwxxwwxwgwxxwxxxwxggwwwwwwvfwxwwwxwwgwxwgwxWxuwwwwwwxwwwwxxwwhwwhwxgxwxvwwxwxxwwxhxwwwhgwxxgxvwxwwxvxxxxxxxxxxxwwxxxwxxxwxxxxwxwwwxxxwwwxwwwxxwdUUvfvfxetuwegfVvfxufvfFUwewwduuvfEUgvvwgweVVfwwVwwvwgUevwdVfwffUvvvuhdWfwvvwVudwxgveVVvUudvVwvvvvwvgvwwffwuwgwvgwfvuwfgvvwffgwwwfgfwwwwvxwwxxvfgwgwwwwwxgwwwxwgWfvevvwwgwxfvwxwwwwhxxxwgvwwwxwhwgxxxwwxwwwwxxfvvwvwwffwguxuwgwxwguvgwgwuefvfvxgwwxfvuwwwwwvwwwwwwvwvgwwxvwwxwwvwwxwwxgwwhwxvwxgwwwwvxvghwxwwwwxwwxvwwwvvwwxxxvwwwwxxwwwwwxxvxxwxwwwxwwxxwwwxxwwwwxwwgwwwxwwwxwxxxxxwwhwxwwhwwwwhwwgwgeuvveUTguevvgweFUvevwwVgwuvwvxfevvgWfvwwwxwwxwwxgwwvwwefevfeuwfvfwvwwfvvwVeuhwwwgxvwfgwwwwwxwxwwxxxwwxxwwwgxwwwxxxxgwwwvxwwvxwxxxwwwwxxxxwxwxwxxwgwwwwwwxwwxxwhwxwwwxwxwxxwxwxwwxfVVwvvwwwxxfuvwgwxvwvvwwvwwgwxwxxwxwwxxwwxxfvvwvgwgwwgwwwwvgxxwwwxwgwxgxwwxxhxggxxxwxwxxxwwvwxwxxwxxvwxgxvwwwwxxwxwwwxwxxxxxwwgvxxxgxgwwxwxwxwxxhwgxxxvvwwwwxevwwguffwwwwvwwggVvfvwvwvgufgvvvvWhwgwfwwwwfvfxwwvvwwwvuwffwgwwxwgvwgwfvvwwwwvvgwvwvfxwwvVwvwvwwxwwwwgwvvwvvgwwwxfwfwxggwxgxwwwwxxwwvvvwwwgxgwuvxwwwwwvwwwxxxxwwwxvwwwvwwxfwwxgwvwwxwwwxwxxhxwwwgwxxxxwwxfvxwxxwwxxxwwwxxxwwxxxwwxgwwwwvwxwwwhgvxwvxxwwxywwxwxxwewwvgvvgufuvggxwwfvfgvvguvwvfufwxxvvwgwvwwwxwuvvwwwewwwwvuvgwwwvwwxwxwxwwggxwxgwWhvwxwwwwwvwwxxwwwxxwwwwwwwxxxxxwvwwwgwgxxvvwvwxxxwxwwxwxfxxwwxwwxxxxwxxwxxxwxxxxwwxwxxwxxtggwwvxffvwffgVudwfwwvTffvwvuhVuxwfvwgvwwwgwufevwvvxfuuwguvwfwgwevwfvwwUWFvgwwwVfugwwwwfUTvwwwwvvuvwwwWffVwwfwvVfwwwwwfvuvwwuwwfuxfgfwwvwxgwxvwvwwwwxxfwwwxfgVgvuxgwxgwwxgvvwxwvwwwwwgxwuWvhvxhwwxxxxhwwwxxwwwwwwhgVvugVvvwwwVfwggfvwvvxvvvwwggwvggwwwwxvwwwwwwwgxwwvhxwwwwxvvwxwxxxxxgvwxxwwvwwvwwwwgwxwuvxwwgwwxgxwwwxxxwwxxxxwxwwwwxxxgvuvvxxwwxxwfxwgwwvfwgwwueVuwwvwudugvwwwwwwwwxwvvwxwwwwwwxveeggwVevgxgvvggwwfwwwxgvxwwwggwwwwxxwwxvwxwWwwxwwwwwxxxhwvwxxwfwvwwxxxwhgwhxwgvxwxxxxxwwxxwxxxxxvfvwgwwwfvwwwxgwfvxwwvxgwwwxwwgwwxxggvwxhxwwwwwxgvxxxxxxwwxwxxxxxxwgxxxwxwwvwxxvwvwwwwwwxxxvxhwvxxxwxxwwwyxhxwwxwwwxxxxvwwVuvwgwwxgguwfvwvvwwwwggwwfuwveevwwgvwwwwfgvvwvvwxVuvwVvvfwfevgwvvVwwwwwwwwvwxgUewvwwvwwwwxwvewwwwwxwxvwwgwwxfwfvwwwwgwwwwxvwvwwwwwxgwwwwwwxwxwwgguwevgwwwwxwwwgvwxxwxwWfvgxwwwwgvwwwwxwwwwfvwvvvVwwwgwwgvgwwwwwgxwvgwvVwvwwxxwgxxwxwxwvwwwwwwwwwxxwwwxxwxxwxgwwwwwwxwxwxwwwwxwxwwwwgwwwwwxgxxwxwwxxhwxwxwxxxxgwwvwxwxwwxwxwwxwxxxxwwwxxxxwxwwwxwfuwvgUewvwvwWfvvgwvgwwwwwxxwwxuvwwwwwwwwwwwvvwwxxeevvwwwwgxVwvwwwhwwxwwwxgwwwvvxxxwwwwwwwgvvwwwwwxwwwwxxwxxxxwwwwgwwxwwxwwxwwxwwwwwxwgwwwxwxwxwwwxwwwwwxxxwwwwwwxwfgvewwwwwgvwwgxxwwwwxxwwvvxwwxxwxxxvvwvwwwwwwxwxwxxxwxvvxxwwwwxxxvwxwxwxxwxwxwxwxwwwwxxwwwwwwwwxxwxvwwwwwwwwxwwwxxwxwxwwxwxxxxwxxxwswgheuVwUUWwefgvfvgwvvvwggwvxwvwvfvwgEfwggfwvgwwgvwwffwgwfvgwfffwfguffffvgggwfwfwwvwvwugvgvvwfwvwwggwvwgfwwwvVwggfVwggvxfwgwwvxgwwgwxvwvxwvgwwwwwwwxwxwwwwwwwgvuwwwwwwxwfuwwgwxwwwwhwwvwwwxwwxxxxxxvwwwwwxwuvwwgwvwwwgVwwvfwwwfwvwvwwwwwvvhwwwhvwwfwwwhwwgwwgwwxxwwwwwwwwvwwwwwwwxhwgxhwwxwwwwxwwxgggxwxvvwwwxwfvwwxwxwxhfxwxwwwwvxwgwhwwwxwgxxwwxwwvgwwxwxxwxhwwxwxgwvwvvvwgTgevwwvgwvwwwvvwwvwgvwwwwUUevgwwvwwxwwwwwvuvvwwuwvvwwwuvwwuwwvvwwwwvwwwvggwwxwhwwgWwxwwxggvwxwxvwgwwxwgwxwwuwxxwwxwwwwwxxxwwxxxwvwvvhwxxxxxxxwwwwvvwwvwvwggwwvgxwvwxwwxwxvwwwWwwgWgxwgxwwhxxfxxxxwvwwxvwwwwwvvxxwwwwxwxxwxxwgxwwxwxxxxwwxhwxwwxwhxwwwwxxxvwxwwxwxxwxxxvwxvwwxwwxwwwwfwwxxxufwxfvwfwwgvWvfwgwgfwfvvwWwwwWvWvwxwvvWvvggWwwvwxhwwwewwvvgwvwwvgwgwwvvfggvgwvvwxwxwwwwvwwwwvxwwxxxgvgwwxwwgwwwWwwwwwxxgwvfxwxxxwxxxwwwvwwwxwwgvwgwwvvxvwvxxwxvxxxxwxxwwwhvwwwwWwwwwggwxwwwwXwwhwxgwwwxgxxXwhwxhwwwwgwwwwxxhvwxxxwwwwwxxxwxxxxxxxxxXwgxwvwwgwxXwwwwxwwgxxxxxvgwxxxwxhxxxxxwxxwfwWvVuwgwwvvvxWvvgggwwgwxxwwwwvgwwwwwwwwxxxgvvvwwxvvxxfghwwwwwxwwwxxwxwxwxwwwwxxhwxwwwxgxxwhwwxwyxxwwgxxxxwxxxxxxwxxxxgwwWwgxvgwwwwxwhwgwxxxxwxxgxwvgxxxvxxhwwwxxwxxwxgwwhwwxxwxxxxxwxxxxwxxxxxxhwxxxevwwvwwwwwvwVwgvwwwevxgegwfwwvuvvgvwwwwwgwfugguvwwggvvwwwuvvfuwwgwwwfgvgvxwwwwwwegwvwvvfwwwwvvxwvvwwwwvxwxwxwwvfwwwvVwwwvwwwwwvxxwwwvwuwxwgwvxwvuvvwxxwwwwwwvwwwwwwuwwhgvhxwgvwwfxhvwwvwwwxvwwwxxwxwvwwwgwwwwgwwfwvwwwwwxwwwVgwvwgwwwwvxwhxwxwwxvwwwwvwxxxwxwxxwgvwhxxxxxxwwxxwxwxwwwvwxwxwvwwwwxwhwwvwgwxxxxvxwwwwwwxwxxxxvwxxvgwwwxwwxxxwwxvvwwvvwwfegwwuwgggwwVwwgwwwwguguvvwwwwvxxwwwvwwxxxxwvwvvwgwwxwwwvvgwvxvxxvwvvvwwwwwwxwwwxxwxxwwwvwwwxwxwhwvwxxwxxwxxwvxxxxxxwwxwwwgwxxwxxxwxxxwxywwwuvwwxxwwwwwwxxgwxwvwxxxxxwwvxwwxvwwwwvwwwwxxwwxxxxwwxwwwxxwwxxxwwwxwwxxxwwxxwxwxxxxxxxxxywxxxwwvwwwwwwfwwgwwwwwwvwwwvwvwvwwwwwwwvwwwwwwvvwwwvwwvhwxxwvwxgwwwwwvwwwwwwwwwwwgvwwwwwvwwgxxwwwwwwwwwwwvwwwwwxwwwxxwwwwwxwxwvwgvwxwwwwwxwxwwxxwwxxwwwwxwwxwwxgwwxwwwwxwwwwwwwwwvwwwvwwxxxwwwxwxxwwwxxwxxxwxwxxxwwwxvwxxwwwwwxwwxwxxxwxxxxxxwxwxxwxxwwxwvwwgwwxwwwvwwwvwwwwxwwxwwxwwwxwgwwxwwwwxwvwwxwxwxxwxxxvwwxwxxxxwxvwwwxwxxwwwwwwxxvxgwxwxwwwwwwxxxxxxwxwwwxxwwxxxgwxxwxxwwtfwgvvwWfwvgwwVfwwffgwfVuvvvwwfuwwvgvfewfwfEdvvfvgfgwvwguvwfggvwwgfwwwVgwvgfgvvgggevwvgvvwvwwgwvvwvvwggVewvwwvvwwgvwwvwwwwgWuwvwwwwxwwwggwgxwwxwgwwwgwxwwwgvwwgwxgwhhgvhwwwwwwwwvxwxwwwwwvxxwwwwwwxwwwgvwwvxwggwfxgwwwhwgvwvxVfvwxgwwwwwwxwvxxwwwgxxwvwxxxwwwwwwxwwfvxgwwxxxwvwxxwwwhwxxwgxwxgvwvwguwxwxvxwxgwgxxwwwxxxhgxwxxhxuwwxxxwwxwhwxxwhwxgwxxxhxgvwwgvvgxwvxfEdvwvvwwfxwvwwhwfvvwwwvxwgwgwxwwxwxwvgvwvwwwwwvwwffvgwVwwwwwwwwvwwwwwxwwwxwwwwxwxggwxvwwxxwwvwxwwxwxxvxxwwwwwxxwxwvwwxvwvxxvxwgwwxxwxxxxwwwwwwxxxwxfvwwvgvvxvwgvxwwxwxxwwwwwwxwxvhhxwxxwwxxxvxxwwxgwwxwwxwwwwxwhwxwwwxxhwwvvxxwxwxxxxwxwxwxhxxxxhwxxwwxwvxxwxxwxwwgxwxwxxxdfvweewwVvfxefvfvvweVvwfWgwgvwwfvfweTTvegfwvvgWfffevwwvwvwwwxvfvvgvuwVgWwfgvwgwgwwgxwfwxvvvwfegfvfwvwufvgugvwfwfwwvvwwwwwwwwVvfwvvwwwwwvwvwhwwvvxwwwggvwvfwwwwwwwxxgwxwggwwxfwwvwwwwvuwwwwvxwvxvwwwwwwgwwgwwwwWwxwhwwwxxxghxvvwwwvvwvwwgvwwwVfgwvwffwwvggwvvvvvwwuwvvwwxvwwxwvxwvxwwvwwwwwxwxwxwwwwxxxwwwxhvwwwwwxwxwxhxwwgxxwxxgxwwwvfwgwwwwwwvvwxwwxwwxwxWvwwwwxxwgwxxggxwwwxxxfgxxwwhwxwxvxwxvwxwwwxxwhxwXwwxxxxwXwxwgwwffevfvvgwvvvgvwwwgwwwvwwgTTvwgfwwwwwwwvwwwvwhgwwwwwgevvvwwvwuxvvwwvvwewwwwwvvggwwwwwgwwwwwvwgxxggwuwwgwwwwvwvvwxwwxxxwwwwvwwwwwxwxwwxwvxwvwxwxwxwxwxhwwwxwgwxwxxxxvvwfwwwwwxxvuwwvXfwwvwxwwwwwwxwwxwwxxxwxxxwwxhwxxxwwwxWwwxwwvxhwxwxwxxxxxxvxwwxwwxwxwxxwxgxwxwwwxxhwwxwhxwxwxxwxxwxxxwxxxwwwxwxxxxxtvgwwvwwfvvwwgvwfufgwfwvvvgwxeeffvxwxfVevgvweffvfwfgwwwwwxfvfgfvwwuwwwvwvwfwvwvxwwwwgwvfuwvgwvfwvwwxVfwwfwwwwwwxfvwvfwvvwgwwwwwfwwxwgwwvvwgwwwggwwwxgxhwxwwxxwxwwwuwwwgwfvxwwwwwxwxwwwwwwxwwxxgwwwwwxxwwxwwxwwgvwwwwwguwwwvvhfwvwxxwwxwwwxwwvwxwxwvwwwxwwvxhwxwxwwxwwwxxxxgwxwwwvwwxxxgvwxxxwwwxxwwwvwwxwvwxxxgwwwwxxwxwhwwwxwwvhxwxwwwxwvwwxxxxxgwgxwxwwwwwwgvxwwwxfwwwwwvwfvwgwvfwwwwwwwwwvxgefwwfVfewfuvwvgwwxgvwwfvwfwxvvwwgvwwwxwxgwwwxwwgwwggvwwxwwwxxxxvgwxvvxwxwwwxwxwwggwxxxwxxwxxxwwgwxwwxwwxxwwxxxwwgwwxwwgvwxwhwwwwwxhxwfvwwwxwgwwwxwWwvxxwwwwwxwwwwwwwxxwwwxwxgxxwwwwxwxxwxwxwwxxhwxxwxxxwwwxgxwxwxwxwwwwwwwwwwxxxxxwxufwgwvgVwwuvxvwvggfVgfgfVwvwwxvvgvvwwVvvwwgVgwwwfgVfvwwxwfwwwwfwvwwgvwxwwWugxwgVvvvwwgwguwgvxwwwwvxgvWwwwwwwvxwgwgvgxvwgwwwxgwvwewgwgwwwwxwwwxgwwwwhwxgwwwwxwxwwwgvggwwxgxwwxwxgwwgwwwwwxxwgwwwwwwwwwxwwwwxwxxwwwxvvwxvwwvwgwwwwvvwwwwwvxwwwwwxwwWwgwxwwxwfxgwwwwwwxwwwgwvxxwwwwwxxwxwxxxwwxxxxxxxwxxwwvwwhgwxvwwwwwxvhwwwwxxwwwwxgwgwwvwxxwxwxhxwxwxxwwgxwwxxxxxxgwwgguwwvuwxfggfwvwvwvgugxgvwvvvwgwwwwwwwwgwwxwxgxwxwwxwwwxgwwwgvxwewwwgghxwfwwwgwxwwwhwxxxxwwxwgxxvxxwwwwwxwwxvwxwwxxwxxxxxxxwwxxwwwwxwxwwxhxxwxxwxwxwxxwxxwggwuwwxwxxhgwwxxxwwwwwhwwxxwggxxxwwxxxwwxgxgvwwwgwxxxwwwgwwxwxwwxwxxxxxxxwxxxwwwwxxwwxxxxwxxwxwxxxxxxxxxtgvvVutgVutweWffwvwfggfvffwwwwwUuuvdfeuwgvfvvuvgfwvwgvwwwwvvwfefEevVTfveUvgwwvwwwwwxvwugfvfeffffwVvwwvwwgwvwwwxwvwevuwegewwgwewvwwgwvwwwwxwxuwwwWwwwwwuvwwwwxwxxvwVfgefgugwxhwfvwhgvwwvghvwxwhwwgwwxwgwvxxvxwwwwweVvuwgvwwwvwfFuwvWuwvguwvgvtgVwvvvvvvggwgfvgugwwxwwwwgwgwwgwwwvuwxvxwxxgwxwhwfwwxxufwhxwvxwgxwxwxwxxwuwwfvwwwwxgvgwxxwwwVwwxwxwwvxwwwwwwwwwwwwgwwxxwwxxxwwxwwwxxwgwxwxwwwgwxxveuwffevwgwwgwvgfwggwfgxvwxwhxwfgwdufvwwwwwwwgwwwxwwgxwxgvfeevefwwwwwfvgvwwwwuwhxwfwvwwwfWwxwwxwwwwvxwxwwwwwwgvwwwwwxxwwgwxxwxewvwxwwxwgwwwwwvxwvwxvggwvhwxwwwhxwwwxwwvxwxwhfwwxxxggxvwxwvgwgvgvgwxwxxvggvgvwvwxwxwxwfvwwwxwhwvxwwwwwwxgwwwxxxxgwwwuwwhvxvvwgvwwwxhwgwwwwxxwwwwxwwxwxvwwwhwxxxxwwuwwwwwwxvxwxwvwxwxxwwwxgwxxwwgwxgxxxgxwxxxxwxwwvwwxwfvwwxwswwgfuvvfvwwVEcufwuwvvvwvfuwwfwggwvvwguwvfwvvwwwvffwwwvggvxwfvwwvfvwwfvwuggvfvgwwvfWfwwwgVdvwwwuwVwwvuwwggwwwfugugwwwwgwwvgvwgwwwwwwgwxwwvwwwwwhwvwwwwxgxxwvwwvvwfwwwvwwwgwwwwxgvghxgwwwwwvxwxwhwxvxxwwwwwwwwwguwwgwwfvwwvwuwwgwwwvgwguwwvgvvwxgwgxwwguwxxxgxwwwwwwvwwwwwxwwggxvxxgwwvgwwwxwhwvwwxxwxxxxwguwfwwwwggwhwvwgvwxwxwxwhxxwwxwxxgwwwvwvxwxwxxwxwhwxgwwhwxxwwwxxwgxhwwxggwwWEcuwvvfwwfvfewgvwwwvwwwxwvwwvwwwxvgwwwwxwvhwvwfvwuvffvwwwwwwgwwhWtvfvwvwwwggwwwvvgxgxwvwwwwwvwxwwwxwxxwwwvxxwwxwwwwwwwxvxwwxwwwuwwwxwvwuxwxwxwwwxwwwxxwwwwwguwvwwvwwwxwvggwxvvwvwwwwxwvwxgxwwwxhvgwwwwxwvwwwwxwvxwvwxvxxwxwwxwwhvxxwwgxwwwwwxwxxwhwwwuxxxwhgxwwgwxxwxwxgwwxwwwxxxxwwwwxwwxxxxwxwcffveuvwVvVgfFdfeefgvgvgVfgwgwwwffgfgfvwwfvvwV5ewgxwwVfxwfVfffgUUVefVvSgvffwgwgggwfgvwvwUFvvgwegfwwvwwvFdgfgfwwwwhwwfgwfxggfwVfwwwvwfVVwhwwxhwfxwwgwwWwwwwxgxgwxvwxwwxwwxwffwguvvvwfxwwwWfvvgwxfgxvwffwwvxwwxwwggwwwwwwgwwxvvffgvvgvvxvfgwwxgxfwdgwwwwfgwWuxwxvwwWvegwgwwvxxwwvggxwwwwhwwwwwgvxwwwgxxgwwwwxwwxwgwvwxwwwwxhwfwwVgxxgwWwwgwxwggwvwgwvxwguvwwhwwwwwgwxwwgwwwxxxxxwwwwxwgxvwgxwvxxwhwwwgwggwwwgwxwwwwwWhvwxggwxxgxwgwgwWwxxvwwxVvfgfefffVevgfwvfTfggwgwvvwwwwhVVewvwvwvvxwwwgggvwgwhwwwwwwxeefwwvUgvvvgvwvwgvffxgwwwhfxwxggvvwwwvwvgvvwxwxvgvwggxwxxwxwwvwxwuwfwwvwwwwxwwwxwwxxxwwfvxxwxxwwxvvxwxgwwwwwwgwxhvxwwxxwxwwwxwxvwwwwwxvffwwwwvwwwhwfwfwxgvhwwwwwgfvwwwwwxxvwxwxfwwwxwgwwxgwwwwwwwwwxwggwfvwwwhwfvvwxvwwWwggxxxwwfwwWwgwxwwxwwxwwwwwgxwwhvxgxwgwwgwwxxxxxxwwxgwwwwhwwxwxwgwxxwvwwwwwwvxwwwwwxwxwxwwvwxwxxxwxwwwxxwxtwvwedfvgfwvgwwvvuwgUfvvfvvefwvvtevdUffvwwgvvxfuwfWvfWwwwfwgwffwffdvwfgvvVvgfwvwggfvvfvwuEgffwUfvUvvwvwwwwvgvvfvgwwwxwwwvfevwugvwwwwwwgvwwwggvgwwwwgwwwvwvwwwwxwxwwfwxxvxxxwgvfvvwwfvwvwwfwwWvxwgxwwhwwwvwvvgghwwwwwxwwwwvxxwxwvwwggvwfvwvwwgvvwgwvwvvvxwfgvfwvwghgvxgfvwuwwugvwhwggvgwwwvxwvwxwvxxwxxhwwfxhwVwwwwwwvwwgwwwwwwfxwggxwwxfwwwwwwwwwvwhwvvxhwwWxgwwxxxwwVvxvwgxwwwwgxwvwwwwxvvwuwwxwvwxxwwwwwwwgvxuwwwxxgwxxvwwfvwfevwwwwwwwxvWvvVftxvxwxwgwwvvvvggwwwfvvwWgwwxxwwwffvwvvwwwwvwwwvvVwwwfgwvguwwvgxvxwwwwwwwggwxwggwxwvwwwvgvxxxxwgvgwvwgwxwxwwvwwwwxxxhxhxvxgwgwwwwwwxxwvxxwxhvwwggwxxwxxvvwgwwvwwxxxwwgwwgwghwwwxgwuwwWwwgxwxwxgvwvwHhvxgwwwxwwwwwwwwwggfwgwxwwwfwvvwwwwxwwwwwwwxxwxwxwwxxxxwwxwwwxwxwwxwxwxwgxwwxwxwxwwxwxgwwgwhvxvwwhhvxwwfxvgwxvwwwwvvwwwwXfvvvvvvgvWffwggfwvvwvfgwvwwfwwwvgwvfgwvxxvwvwwvvvwwvwwwwgvvvwvwwhwvwffgwvggvwvwwwwvwgwwvwxwwwwwwggwwwwwwvwwfgwvwwwwwwwwwvwxxvwwwwwwwwwwvxxwvvgwuxxwvxwgwwfxxvxgwwwxxwwwwhwxxgwwwwxwxhxwvwwwwxgwvwhwuvxwwwxxgvwwwxwwwxwxxwwwvxwwxwxxvxwxxwwwwwwgvwhxuwxxwwwxxuwwfxxwwxvxxxwwwxvwwxwxgxwxxgxwvvvwWfvtwgvwWffwwwwwwwxwwwwwwvvwfwwxxgwwwwxfvwwvvwwwxwwvwxwvwwwwwwwwxvwxwxwxwwxwwhwxwwxwxwwwwwxxwwvwwxwxxxwxwxwwxxwxwwxxwwwwwwwxxwwwhvwxwvxwxvxvgwwxwwwwwxxwwwxxwwxwwgwwxwxxxwxwxxxxvwwxxxwxwwxvwvwwfvwwwwwxwfgvwwfvvwgwWgfVVwgvxvwgfvgwgwggVvufgwwwwwgwgxgvggfvwVewfvvgwwwvgwfvwgvvvhwwwwwwwgwwwggvwxwwwwwxxxxvwxwhhwhvgfwvvxxhwvwwwwxwwwxwvwxwxwxwxwwwwxwwwwxggvwxwvwwwwxxwwwwxwxwvwxxwxwwxwxwwwwgxxwgwwwgvwxwvwwxwwxwwwxwvffwgwWvwwwhwwxwwwwxxxwwwwxwwwwwxhwwxxxgwwwxxhxwwwwxxwxwxwxhvwwxxxwwwwwxxwwwwxwxxwwwwxxxxxxwgwxwxxwxxxxwwxwwxvhfwxwwwwwwwfghgvfxxwwwwxwgvwvvvwgvxvxxvwvwgfvgxxxwwwwwvhvxwvxwxwwgwvxxxwxwwwwxwxxwwwxwxwwgvwwwwxxwxxxwwxwwxxxxwxwwxwvxwwxxhhvxxxwwwxwxxwwxwggxxxxxgxwgxxhwwxxgxxxwxwxxxgwxwxxxxwxvxxwgvxxxwxxxxwwxwxxwxwwxwxxwxwxwxwxxuffwgvegwuuwgewfvfwwVewugvwvfVvsfffVvwxwwvwvcfevVvvwfwvwxwxfvfwvVCuwwwwvfvwfwwvwvwwhfvwdfVufffEvwvvwxUuvwEvgwxwvwwwfvtxvwfwvgwvtwfgwffxwxvvvwvvwwwwxvxggwwxwwxwxwwwwugfvgwvWwwvwwwvxgvwwwWvwwxwwwwfwvgwxwxwxwwxwwggwwwvwxwvxwvvvfxgwwwUwwwvuVEwwwwwvwvwwwwvffvwwwwwgvwwfvuewwxwwvwwvwvfwxwwwwwxgwwxxxwvwwxxwvwwgvxxwwvwewwxwghxxvvwfvvwxwwfvwwwwwgxxvvfvwxvxxgxwwxwxgxwxwwwvwwxxxxuwwwgwwwwxwxxwwxxwgwxwwwvwxwwwvwfuwvwvvwwwwwvxvgvvwwvfWvwwwvVfvwvvwgwxwweevgwvwwxxxvvfwgvvfWwvwwfwvxwgwwwwvfvfwwwwgxwwxwwwxwwwwvwwwwwvvwwxuwwwxxwwgwwwxwwwxwwxxvfwwwxwxwwwwwwxuwxexwxwwwxwvwxwwwwwwxwwxwwwxvwxwwwwwxwgfvwxwxweuwgwwwvwwxwwgfgwwwwwxwvgwwWwwwwwxxxwwwwxxwgwwwwhwvxwxxwgwvwvwxxwxvxxxxxwwxwxxxxwxwewwwxvxxwwgxxxvgxwwxwxwxwwvgvhwwwwxxxuwxxxwwwwxwxwwwxwxwwvwwvwvxwvvwgxgvvgWfwewwgfwvggwvvgfwvwwwvuewvwfVgfwgfwvwUvvvwwwvwvfVvgugvwwwwwvgfvgvxwwvvgfwuvfgfwvwvwwvwwvwgvvwvwwxwvwwwvgwxhfvwxfwxfgvwwwwwwwwwwgwxwwhwwwwgwwwwwxwvgwuwwwwvwvwwuwwwwwfwwwgwwhwvwvxwwwxwwxwgwwgxwwwgwwxgwwwwwwwwwwwvwxwxwwwwwvwWwwvvxgxxwxwxxxwwxxwwxwxxwxwwgxwwxwwwwwwwxwwvgwxwwwxwxxwwwwwxwgwwwwwwxxvxwwwxxwxxxxxxxxxwxxwwwwvwvwewwwwwffwvgvvwevvwxwvwwfwvwgvgwwvgevwwwwvgwhwwwwwvwvwwwwwwvgvwgvxvwwwwwwvwwwwfWwgxwwwwwwwvwgwwwwwwwwxxwwwgwwvwxwwwvxwxxwwwwxxvxxxwwwwwvwwwxxxxxwxwxxwwwwwwwwWwxwxwwwwwxwxwgwxwwwgxxxwwwgwwwwwwhwwxxxgwwxwwxxxxwxwwxwwxxwxwxwxvwxwwxxxwxwxwxwxxwxxxxxxxwwwwxxxwxxuwgwgfwvxvwfgfweggffgwfwgFgfgwwfwwgGwvwgwwwvwvfvwfWGggwwwvwwvwwggtwwxgwwwuwgwwgwwvgugwwgwwwgufwwgwwwvgwwgwvuvwwgwxxwwwwxwgwWxwwxwxvwxwgwWwwxwwvwwwwwwwxwgwxxxwgwxwwwwwvvwwxwwwwwwxxvwxwwwxwwwwxxvwwxwfxwwxwwwwgwwwwwggwwggvwgxwwvwgwFgxwgwxgwwwwwwxwwwwwwgwwxwwgwwwxwfxwxgwwxwwwxxxwwuxwwgwhgxxxxwwxvwxxwxxxxwwxwwhwvxwwwxxxgwwwxwxxxxwwgwxxwxxwxwxwxxxxwxwwwwwvxxwxxxwxxxwfvvwwWwwvvvfgwWwvvfvwgwvvgwwvwxwvxwwxwxwwwwvwxxxwxxwxwwwwvwwuwfgwwgwwwwxwwxvwwxxwxwwwvxwxgwwxxwwxwwwxxxxxwxxwxvwxxwvwxwwxxxgxwwwwxwwwxxxwxxwwxwxwxxxxxwwxxwwfxxhwwxwxwgwVxgwXwwxwxxwxxxwwxxwxwxxvxwxxvwwwwxxxwxxwwxwwxxxxwxxxwwxxxxxwxwwwxxxxxxwxxwwxxxxwwxugwwwwxwwwxwwwfvwgwwggwwwwwwwwwwwwfwxwxfvvwwwvgwgwwwwgwwxxwwwwwvwwwwwwxgwwgfvwwwwwwwffgxxwwxwgwwwxwxxxxxxxffgfvwwwwvvwxgvwwxwwwwwxxxwxxxvxwwxwwwwwwwwvxhwwxwwwwwxwxxwwxxwxwwxhxxwwwxxwwwxwwxwwwwwfvwwxwwwwxwwxxxxxgvwwwwwwwxxxxxwxxxwxwfvwggwwwgwwgwvfgxwxxxwwwwwxxwvxxxxvfggvvwwwwxgwwwxwwwvvwwvwxxwwwwxvffgxxwhgwxxwxwxxxxxxhxxfwwwxwxxvxxxwxwxhxwwxwxxwwwwwwxxwwwwwwwxwwxgvvwwxwxwwxxxxxxxxxgwwwxxwwwwwwxwxxxxxxwgwgxwxwwxxxxwhwxwxxxxxgwxwxwxxxwxwwxwxxwwxxtgvwwwwwfvfgwwvwgvwwvwgvfwwguvwgvgvwwwWffwwwgwwwvwwwxwxgffVvwgfweffgfwwwvvwwgwvwvxvxvwvwvwvvwwwwwxgwwwwwwvgwvvgwwwwwvvwgvwvggwwwwvwgxfgwhwvwwvxwvggxvxwvxxwwggfvwfwwxxwwwgvvwwfvxwwwwwwvwwxxxwwwwwwwwgvvwwwvwWgwwwwwwwvwwwwwwxxgwxwxxxwwwwxwwxwwwwwhvwwwwwwxwwgxxxxgwxwxhxwxwwwgxxwwwxwxgwhxxhxxwxwhxxxxxwxxxxxxxxxxwwwxwxxxxxgxwxxwwwwxwgxwwxxwwxwxwwxwxxVvfgwvvvfgwwwfwwwwwvwwwwwwwvfffwwwxxhwvwvwvuvwvvvwvwwgwwwwwwuwwwwvvwwwwwwxwwwwxwxwwwxwWfvwvwvfWfgwxwwvwvwgwxwhWvwwxxxwvxwwwxwwxwwwwgwwwwxxwxwgwwvvgxxwwxxwxvwxxxxwwwwwwxxwvgxwwwwwwgxwwxxxwhwwxxxxxwwxwwwwwxxwwwwwwwwwwwwvwwxwvxhxxxxgxwxxxxghxxwxgwxxWvwwwxwwxwxwxxwxgwxxxxwvxxwxxxwhxwxxwwgwxgwxgxxwwxxhwxxxwwxwxxxxwxxxxxtwxwwwwwwwwWvwwwwwWeVWggwvwvxwwwWvwxwxwwWwwwvwvwvwwwwwwwwvwgguwwfwgwvwwwggwgfxwwgwwwwwwwwvwgwggxvxxxxwwwwxXfwwwxgwGfgwvwvwwwxxxwxxxWwwwwwgwwwxgwgxwwxuwxwwvxwwwwxwxxxwwwhwwgwwwxwwwxxwwwhxwxwwwwwgxwwhxwvxxxwwxwxxwwwgwwxxxgwxwxxwhxwwxxxhwwgxwhwxxxXwxwwxwxxwxwxwywxwxwxwwwhwwxwxhxwxyxxwxxxxwxxxwwvwwwHfgwwwwgwWgwxvwvwwvxwwxxxwxxxwxwwxwxWwvvwwwwwxuwwghwgxhwgwwwxxwwxwxhwxvxxxwxwXeVvwwxwwwxvwwwwxxwxhvwxxwwxxxwwwwxxwwwxxxxxwwwxxwxxwxxxXwxwwwvxwwxwxxxxxwvxxxwxxxxhwwwhxwwwwwhwxwxhwgxxwxgwxxwxgxxxxxwxwxhwwxxwxxxxxxxwxxwxxxwxxxvxxwwwxxxwxxxxxxxwxxxgxuWwvwvwvvwwvwgvgwwwwVWwgwgwxvgwwwwwwwvvWwwxgwvwxxfvvwvfewgffvwwwwvgfvwwwwffvWwwweuufevgwwwwwvxwvvwwwwwghgwwwxfvwxvvwwvwwwwvffwwxwwwwxwwvwwvwwxxwwwwuwwwwgxxxxxffwfwwwwvwxxfufwwwxvxwxwugwwvwgvwxwwwwxxwwxwwwxwwwwwwwwxwwxwwwwfgwxxxwgwgvwwxxxvwwwxxwwxxwgwxwwwvwwwwwxwwgxwxwgwvgwxwwwwxwxxwwhwwwxxxwwwwxwwxxxwwwwxwvwhwxxwwxvwxgwwxgwwxwgvwwwxxwwwxxwxwxxxwxxxxxgwgwfwwwVVgwwwvfwwwwwvfwwxvvwwvwvvwxxxwxwwwgxwffwvvgvwfffgwwwwwgwgxvxxwgwgwwwvwvwwgwwhwwwvvwwwxwgghwwgwgwwxxwgwVwgxwwwwwgwxgwwxxxxwwxxwwwhgwwxxwxwxxxxxgxwwwwwwxxxxxxxxwxxgwwwwwxwwwxxwxxwwwwwxwxwxxxxxxwwwwxwxwwxwxgxwwwvwwxuwxwhxxhwxxxxxxwxwwxwxxxxxxxxywxwxxxxxxxxwxxxxwxxxxxxxegxwwwwwwwwvwwwwwfuwvwgvwwwwwgwwwwvwwvwwwvxwxvwwwwvvwwfuvwwwwewgwvffwfvwwvvwgwwweuvwvfwwwwwvwwvwwwwxwwwwwwwwwwwwwvwwwxuufgxwwwwwwxxvwvwxxwwwwwVvuxgwxvgvwwwvxvwwwwxgwvwxvwvwxxwwwwwvwxvwwwwxwwwxwwwwwwxwwwwxwwwwxwwwgvgxwxwxwwgxwxxwwwwxhxxxwxwwvwxwwwwxxwxxwxwxxwvxxwxxwwgxwwxxxxxwxwxxvwwhxxwxwvgvxxgvwvwwwfgwhwwwwwwvwwwxwwwwvwfvgwwwxvwvwvwwuwvxxwwwwxxxwwwxwxwwwxxwwwwwgwvwwgxhvxxxxxxxxwhxxxwwwxwxwxxxwwwwvwwxwwxwwxxxxxwwwxxwwwxwwxxwxxxwwxxxvxxvxwxxwwwxwvxxxxwxwwwwwwxwwwxxxxxxxwxxxxwxxxxxxxxwxxwwxxxwuwwwwwwvwwvwVevgwgwwfgwwvwxwwgwxwvgwgxgvwwwwgvgvwvgwgwgwwwvgwwgvwwgwvwwwgvwvwvwvwwwwwwvxwvvwwgvwwwvuwwwvwwxgvgvwwgWwwxwxwwwvxxwwwxxxwwxxxwxwvxxwxwwvvwxghwwwwxxgwwxwvxwwwwwxwgwwxwwwwwwwwgwwwgwxwvxwgwwwwxgwxxwwvwxgxxwwwwxxxxxwwwvxwwwxxwxxxxxxwxwvxwxwxwxwhvxwxwwxxxwxwxwxwvwwxwxwwwwxxwxgwwxxxxwxwwwwxxxxwxxwwWwvwwwggwwwxwgvgvwWwvwxxwwxxxwwwxxwwxxwwwxwxwxfwwwhfxwwwwwwxvwwwvwwwwwwwwxxxgwwwwwwxgVgVwxxwwhxxwwwwxvxwxxxxhvxwwwwwwwxxwwwwwxxxxwwxwwwwxwxxwxxgvxxwvxxwxxwwxxxxwxxxwxwhvxxxxxxxwvxxwxxxxwwwxxxxwxxxwwxwxwwwxgxxwwwxwwxxxhxhwvxgxwwxvhxxhwwwxxxwxxwxwxxgxxxxxxxhxxxwufvfwvxvvvwwwfvgvwwwwwuwwgwwewwvgffwfgwwWfwwvwwwwwffwxxxweefvffevffffggwfffwfgwwfuvwwgwgVuvvegfgvwgwfwvgvwwwfwwvvwwwwwxevwgfvwwvvwfgwwgwwwwxwggwwwwggwxgxwxwwwwxwxwwwWvwwevgvvvvwxwfvvwhwwwwwwvvgwwwwwwwwwwwwvxgxwwxwwwxvwwwwwwwwwxwfgwxWfwwxgwwwwxwwxxwxxfvwxwxwxwxwwvxwxwgwwwwwgwwwwfwwwxxwwvxwxwwwwwwxwxwwwxxgwwwxwwxxvvwxxwxwxwwhxxwxwwwwwwwwwwwvxgvwxxxhwvxxhxxwwvwxxwwxxxhvvvfwvwuwwwgffvvwgxwfwwgwwwfewwgwvxxgwwwxxxffvvfwwwwwwwxwvvwwwwvgwfwvwgwvuwwgxxwwwwwwwwwgvwxwxwggwwwWggwgwhgwwwwwgfvwhxfxwxxxxxxxxxwwxwxxvwwwvxwwwxxwwwwwwwwwwxwgwwxxgwxxwxxxwwwwwxxwxwghxVgwwxwwxwxxwxxwxwwvxxgwwwwwfwwhxvwwxwwxxwxxwwwwwwwwxwxwwwxxxwwxxwwxxxxwvxxxxxxxwwxwwxwxwwxxwxwwwwxwhxxxxxxwwxxxywxxwxwwxgvwwwgggwvwvwxxgwxxwfgwWVeuwwgwxwwwwwxgvwwxwwwwwxVewwvwwwwxwwwxfwwwwwwwggwxhgvwwwxxwxxxXffuwfwwwxxwwwwwxgwwwwxwvwwwxxwwwxwwxxxxxxxvwvwwwwxwxwwxwwxwxxxwwwwxwxxwwxwxwwwxwwwxwyxgwxwwxwxwwwxxxwxxxxxxxxxwwxxxwwhwwwwxxxwxwwfwxXffuwwxxwwxwwwhgvwvvwxwwxxxgwwwwwxfwwxwwxxxwwwxxxxxxwxwxWVeuxfwwwxxwxxxxxxwvvwxwwxxxxwwwwwxwxwxxxxwwxxwgwxwwxwwwxxxwxwxxwwwwxwwxxxwxxxwxxwwxxhwwxxwwxxwxxwxwwxxxxxxxwwxxwxyxwxxwxwexxgwggwwvgwvwwwgufwWgWgwwwgwwvvwgwvwwgxwfwgffwwwwggvvwgffgwwwwvxXVegwggvgwvwwwwwfwWwvwgfgvgvwwfvwgwwwxggwwgvxvwvxggwwxgWfgxwxvvwwwwxwwwwwwwgwgvwwxxwxxgggwwwwwghxxgwfwwwwxxxwwwwxxxwxxwxxvxxxhvxxxgwwgwhvwhggxwwwvwxwxxwxxxxwwwxwxxxxwgvwhwvwwwxwvxxwxwwwxxgxwxxwhxxxxxxwwwwwxwxxxwxwxxxxxwwvxxxxxxxxwwxwxxxxhxxwxwwxwxxwxxxxxggwwwvhwwwwgwwfwwgVevwhxwxwxxwxxvwxhwxwxxvwwwgwwwgvwwwwgvevwxWwxhxwxwwuvwwhwxxwxwwwxwvwwxxwwvwgwvwgwgwwhxxxwwxxwxxxxxxxgwvwwhxwxxwxwvxwwwxwxxxwxgwxwwxwxxxhgvwwwxgwxwxhxxxxxxwxhxxvxxwxwwxxgvxxhwwxgvwixwxwwxwxhwxxxxwggwwgxhxxxgwwxxxxgxxxxxxwwxsgxgvwwgwwwfvwwxwxgwxwwwvwwfwggVfwwgwxwwxwxwxgvwwwfdwvwgfwvwwvgwwwwwwwxvvwvvvwwwwxgwwwwxwxxgwwwvwgXUWgfwxwgwwwwxxhWvwxwgwwxwxxxwxwxhxxfvwfwvwgfvhwhgwwwwwxwhwwgxgxwwxwvwgwxgxxwwvgwxgxffwwvvxwwwwwwxgxxwyfwxwwwwxxhvxxwxwwwwwwwwwxxgwwwwxwwwwwwwxwwwwxxxgwxgxwgwxwwwgwwwwxvvxwwwwhxxwwxwxxwxwxwhxgxwwwwwwxwxxwwwwwxwxgxwxwgvxxxwwhxfhwwxwwvwwvvwhWvhwwwxwwwxwxXUWvgwwwgwxwwvwwwwhxxfwgvvvwwxwgxggwwwwwxxwgvxvgggwwxxwxwxhwwxgVfwwwgwwxwwxwxwxxxwwwgwwxxfhwxxwwxxxxwxwwwxgxwxxxxwywxwwxwxxxwxwxfhxwxgwxwwwxwxwfwxwwwwhwwhwvwwwxwxwgwxxxwwwxwxvwgwwwwxxxxgxxfhwwwwxxwxhwxwwxxwxwwxhwxgxxgwwwwhxhwwxfhxxwxxxxxxxhvxxgxwxwxxxxwxxwxwxxxUwwwvwwwvvfVuwewvwwwgugwvwwwfwwwwwvwgwxgwwwwwwwwxwvwgwwevvwgfdvvvfguufvvwwwwWwgwwxvwwvffwwvgvwgvVvwfvXvugvwwwwvwwwfwgvwvwwwgwuvWgwvxwvwxwwwwwvgwgwwwwwwxwvxgwxwgwwgVgvgwwwwwxwvgVwwwwwwwwwgvugwwxwwwvwhwwwwwwwhvwwwwwwvgfwhvvvwvxwwwwxwwwwxwhxxwxxwvxwhvwwxwwwwWwgvgwxwvvwhwwwwxwxxwwxxvxxgxhwwwwwwvwhxwwwwwvxwwxwwxxwwxxxxwxwxwxxxwwwwwxwxwxwwxwwfxwWwwwwwxvvwwwwwhxxwwwgvwvwwwvfuvwfwwwuwuwwvgwvwwwwwwwwxfvvvwwwxxwgvwvwuugwvvvvwhwwwwvwwvwxwwwwwvwwwgvvvxxwwwwwwwgwwvhwgwxwwwwxwggxxwwwhxvwxwwwxgwxwvgwwghxwwwwvvwwxwxxwwwxwvvxxfxwwxvvwwxxvxwwwwwwwwwwxxxxxwwwwwxxwwwwwwwuwhxvxhxxwxhxwxhxxxxwwwwwwxwxvwxgxgwxxxxxxxwwwwxwxwwxxxwwwwxxhxwxxxwvhwxvwxwwxxwxhhxxxeWwwgwwxfwfgwffwwwwfugvwwgvwwwgwwwwwwgUgwgwgwwhgwxxfvvwvfewuvVffuxffvwwwwwgwvwwwwxgffvwwwwwwwwwwhwfVvgWwwgwfvwwvfwxwggwfwggwgwfggwwwxwwwhxwgUfwvwwwwxxfwwvxwxwwwfggvvwvgwwwvwvwwgwwggxwvwwfwvxfffwgwxwgwgxxwgwgwwxwwwwxwwggwfvwxwfgxwvwxxwwwwxwxxxgwwhwxwxvwwwwvgxwwxxxwwxwxxwwxxhvwwwxwwwwwwxwxxvhxwxwxwwwwwvvwxwwwwwwwxxwxwxxxwxwxwwwxxwxwxxxxvwwwwwxwxwvxxwwxhwwwwxwxxxwxwxwwxwgxgvwvwgwwgwwwfffuwxWwwwwxwggwgwwwxwxwwxxwwwwxxxwxxxfggfvvwwugvwVvvvgwxwvwxwwxwwwwxwxwvwxwwwwwxxvxxxxwxxwfwwhxwxxwwwxfwWggxxwwxxwwgwgwxwwxwgxxxxwgwwwvwwxwwwwxxxxwwxwwxxxxhxwwwxxwwxgwwxhwxwwwgwxwxwwwxwxxxwxxwvwxxgwwwwxghwwxxyxwxxxxwvwwwxxxwxwwxxxxwwxwxxwxxwxxhxwxxywxxwxwxxxxxwwxwywdwwgfwxvwwfwwvwwwwwwwgvwvwfdwgggvwwwfwwwwvgwwvwwwvvwvuwvfwggwvwwwvwfvgwvdfvvwwgwVuvvvvvggwwwgvfvugvwwvwwwwwgvwwwgvwwwwwvwxxwwwgdvgfggwwxwfwxwwwxhwwxwwggxgvvwwwwwvwxxgvdwwvxwwwwVwvxvwggxvwwvguwwgwxwwwxvwwwwwwfwwwwwwvwxxxxuvvwxvxwwwwwgwwxxwwwvwxwxwhwwwwwwxwwwwwwwwgwwgwwwwwwwwwxwwxwxwxwgvwwxwxgxwxwxuwwxwxxwxwvwwxwwwxwwwwwwvwwxwxxwwwxxxhxwxwwwwwWwvwvwwgvxxgwwgwwhwwxwggfwvvvwwxxwxxwwwhxxxvvwvwwvhvwwwggfwwggwwxwwxwwvvvvvwwwwxwwuvxwxxxwwWxwwxwwxvwwwxxxhxxxvggxvwwgwwxxxwxxxwxxxxxvwwwwwwwxxxwhgwxxwxwwwwvxxxxxwxwfxxwwxwwwwxwxwwxxxwxxwwxwwxxxvxwxxwwwxwwwxxxxxxwxxwxwxwxwxwxhwxwxxxwxxxwwwhxxxwxxxxxxxxxxxxxxwwwxxwxwwxxewvfwxwgwgwvwwvwwvVvgwwvxwvwxvgwvvwgwwwgewvvwxfvwfwwwxvvggfvwvvwvuwwxVeewwgfvvvwwwvvgwvvwwgvgfwwgvvvwwwwwvhwwgvwfwwwwxgwwwwgwwvvvxwwxxwxvgwwwfwxevgVwgwxwxvwwwwvwwguwxggvwgwxxwxwwgvwwgvwwwxwvgxwxwvwwxgxwxwxwxwxfwxwwwwwxvxwwxxgwwxwwwxwwgvwhgwwxhwxxwxwvwxwwvxxwxwwxwwwgxwwwgvvxgxwwgvwxxwxwwwgwwxgwwxxgxxxxwwwwhvwxwwxgxgvxxwvwvwwxwxgVvvwgwwxxfwwwwwwwgwgwvwwxwfwvwwwwxxwvvwvwwwfxxwwgvxwwwxxwxwvvwwwwxwxwvwvxggwwwgwwxgwxvwwvxwxgwwwwxwwxgwxwxwxwwwxxwxwxwxwwvxxwxwwxxxxwwwxxwvwxxxxwxxxxwxvxxfwxxwwxgxxxwxxxxwvxwgwgwwwwwwxwwwgwxfvvwwgwgwwwwgwwwwgwxfvvwwwwwxxwwwwwwwvwvwgvvwvwwwwwwwwwwwwwvvwwwwwwwxwwwwwwwwxxwwxxxwwhwwwwxgwxxxxwhxxwhwwwwwwxxxxxwwhwxhwwxwxwwxwwwwwxxxhwxxwxwxwxwwxxxxwwwwxxxxwwxwvwxwxwwwwwxwwxxxwvxxxwwxxwxwxxxxxxwwwwxwxwwwxwwwwxwxxxxwxxwxwxwxxwxxxxxxwxxxxxwxxxxxxxxxxxxxxxxxwxxwxxwwxwwxgwwwgwwvwxwwwwwwxgwwwxxxwwxwwxxvwwwwwwwwwwwwwxwwxxxwxwxxfvwxxxwxxfvvxxxwxxxwxwwwwxwxwwxwxxxxxwxxxxwwxxwwxxwxwxxwxxxxxxxwxwxwwxwwwwwxxyxwxxxxxxxxxwxxxxxwwxtgvwwwwwgfwxvxwwgvwwvvwwgwwgxffvvwwvwgVvgwxvggwVvwwwwwwwxhfvfewfvwvwvwgwvwgwfwwwvwwwfgwwuffgvwgwwwwwwvvwwvwwvgwwwwwfevvwwfwwwwvxwgwwwwwVfgwxuwfgffwxwwfwwxvwxxxvwvwVwvwwwxwwwwwwwwuwwwwwfwvwvwwgwwwwxxwwwwfvxxxxwwgvwwwwwVwgwwgvwxvwwgwxxwxwwwwxwgwwxxxgwwxwwwwxwwxwwwxgwwwxwwwxwvwxxxwgwwxwxwwxwwwwxwxxwxwgxvxwwxxxxwxhwwwgwwwwggxxwwxwwwxwwxwwwwwwgxwwfxwxwxwgxwwxwxwxhxwwwxwwggvwvwvvwwxvvwghhwxxxggwwwwggwvvvwgvxxwxwfwvvvwwwvwfvwwwgfxxxwwwvwxwwwwwxxvwxwwxwwgVvvwvwgwwwxgwwxwwghvxxwwggfewwxvwwhxxwwxwxhewxxxwwwwvwwwxxxvxxxxgvvwwgxwwxhxwxxwwxxxxwwwvwxxxvfxxxwwxwwwwxxxwxwxxwvxxxxxwwwwwwxwwxgxwxwxxwxxwxwxwxwwwwgxwxxxwvwxwwwwxwxwxwvxxxWvxxwwwxxxgxwxwxwwwvhwwxxxwwxxwwxwxfwwxwxwwxwxwgwwwxfwvvvgvwwwwxvvvwwwvxvwfvvgwwwwwvwfwwwwxvwxwgwwvfwvvvfwwwwwwwwwvwwvwvwfwvwvwvwggwfwvwwgwgwggvxwwxwwwvwwvwwwfwwwwxxgwgvwwggwvxwxwwwwwvwwwwxxvwwgvwwxwwwxwgwwwwwvwwxwhwxgwwgwwxxwwxxvhwwwxxwxwwwwxwxhwwwxhwxwwxxxxwxxxxxwwwxwxxxwwwwxhxwxwhvxwxwxxxxwxxwwxgwxxxxxxwxwwxxwxwxxhwxxvxxxxhwxwxxvwxgwwwwgvwwvwwvhwwwwxwwgwwwvwwwvggxwxwvwxxxxfwwwvwwwwwwwxvwwxwwgwvwwxwhxhxwwwwxxwwwxgwwgxwwwwxwwxxhxxxwwgxxgwxxgxxwwxwwwwxxwxwwxxxxxxxxxxwxxxxxwxwwxxxxwxxxwxxxxgwxwxxwhxxxwwhxxwxwxhwhxwxxxxwxxxxxwxxxgwwxwwwwxxxxxgxxxxxxxyxxxxxxxxwxgWggwgwgvWggWgfufwwwwgwwwvwwgxwggvwwvwwvwgwgvfwwwxwgwwvwvwwgwwvvewfwwwhgwvvewggwwwfwgwxgwvggwwwwwwxwgxxwwwwwwgXxwxxwxWvwwwwhwvxwxwvxwxwwwwwxxgwwwwgxxxwgxxwwvxwwvwwwxwwvgxxgwwxwwwxxxxxwwfgxgwxxwxgxxhxwwgwuxgwwxgvvgwwwggxxwxxwxxxwwwxxxwwwwwwxwgwxxwwxwwxwxwwxxxxvwhxxxxxxhxwwwwhwxwxwxxwxxxxwvwwxwxxwxxwwxxxxxwwxhxwxxxgwvwwwgwwfwwwwwwwghxwvvwwwwwvwwwwgwxwwwwwwwfvwwvxgwvwgwwwwxvvwwwxwwhxxwxxwwxxwxxxgwgvgxwwwwgvwwxxwwwxxwwxwxvxwxwxvwxxwxxwxwxxxxxxvxwgvxwxxwwxggxgxxwwwwxxxgxxxxxxwxwgxxxwxwxwxxxwxwxwxwwxxxxwxxwxxxxwwxwxxxwwxxxxxxxxevfevevvwvxfwgvwvwwffwvggvwwwvwwvvwwwwfvfvffwwwwgvxvwxwfvfvfvgvfggwwgfwvwwvwvwvwvwfwwwvfwvvwwfwwwwwwvwvwvwwvwwwwwwwuvvggvggggwwwvwgvgwwwWgwwxxwwwwvwgwvwxwxwwwxwxxwwfwgwvwgggwwwgfvwwxvwwwwwfwwwwwgwwvwwxxxwwxxwwgwwwvwvwfvgvffgwwgwffgxgwwwxxwffgwwwvgxxwvwwxwxwwxwwxwwwwwwwwvwxxxxxwwwwwgwwxwwxwwwwxwwxxxgfgwwvxwwwwxwxxxwwwwwwwwwgwwwwwhxwwwwxwwxwwgxwxwxvwxxxwxxxwwxxwhgvwwxhhfwwhwwxvfguwgvggwwwwgwvgvwgwuwxxxxwfwvvwwwgwwxwxwwwxxxwwxxvvwvwgvvwwgvwwxxwgwxwwwxwwvwgfvwwwvwwxwhgggwwhffvgVewwxxwgvwwwxhxwwxxxwwwwxxwwxxhhfwwxwxwxxhgxxwwxwwxwwwxwxxxxwxhwxxxxwxwwwwwxwwxxxvvgfgwwgwwxwgwwxxwwgwwxwwwxwwwwxwwxwwxwwvwwwwxwvxxhwgvxgxhwwxwwgwwvxxxwwxxgxgwgwhxwxgwxxwwxxhgxxhwwxvhwxxxfwfhwwwxxwxwxwxxwwhhxxxxxwwwhwwxwxwvwwwxxxxegfvvwwvewwffvvwvgwwwwwwgwwggwfwvwwvvvgwvwwVuwwwwwvxwVvefffevfwVuvfufvffvwvvgwwvwfwwvvffwvvfwwvvvwvfVvvwwgwgvwwwwwxfwfvwvvwfewwwvvwfxwwgwgxwwuwwvfvwwxwfvwwxwxwxxfgfvwvvwvvWwwwwhfwwwwxwwwwwxfvwwwwwxxwwwwwvgwvvvwxxwwxwwvwwwwwwwxwwwfgwgvwwwwwwxwwwxwguwgwwxwwvwwwxvwwxwwwvwwggxvwxhwwvwwwxwwwwgwwwwwwwwwxwwwwwwwxxxwuvgxwwwvxwvgxwwxwxwvwvwwwxwwxxwxvwwxggwwwwxwxwgvxxxwwwxwwxxguwwgfwwwvwwwfvgwvvxwwwgwvgvhwxwxwwwxgwwxxwxxxwwgugvevwwvgwwwfvvwxwwvwwwgwfxvwxxwwwwwxwwwwwwwgwwwwwwgwvwgwVhhgwxwvwwwxxxwhwxgwxwgvwggxxxwwwwwwvwgwwxxwvwxwwwwwwxxwwwwxwxxxwwwgxwwwwwwxwvxgwvxxwgxxwxwwxwxvwwxwwxwvxgvwhxvwwwxxwxwxxhvxwgwgwwwxwhxwwwxwxwwxwxxxxwxxxwwvxwxxwwxxwwxxwwwxwxwwwwxgwwxwxtwwgvggfgGwxwwwwggwwgwwwvwwwfwxwvxwwwgvgwwvwvwwwgwfwewvggWewfwfwwxgwgvvvfgvvxWgwfwgwwwwvwvwwFwffvwwgvxwwwwvwwwxwWwwfvfwgwwwhwwxgxwxwwhxwwfwwxwxxwwfwwwxwxwvxgwwwfwfwfwvwwwgvwgwgwvwxwhwuwxxgwwwgwwxwwwwxxxxwgxwVwwxggwwwwwwwxwxwwwwgxvxxgxwwxwxwxxwxgwwwwwwwwvxwwwwxxwwgwxxwvwxwwwxxwxwwxwwhxwxwwwxhwghwwwxxxwwxwwxwxxvwwwwwxwxwxxwwwwxwxxxxwyxxxxxwwxwwxhxwxwwxxxwwxxwwxwwgwvwgfdvwwwgwwwvxwwwxwgvwxwvwgvxxxxwxxxgwwxfwwfvwwvuwvxwdvwvxgwhwwewwwwwxwggxvwwwxwwwxwhwxwwwxwuwwxvggvwwhwwxxxwxxwxxxgwxxwxwxvxwhxxwwvwwwwwwxwwxxxhxwxxxxwxxwxxxxxwwxvwwgwwwxvwhxhwxhxxwwwxxxxxwxxxxyxwwxxwwxwxhwwxxvxxwwwwwwxhxxxxwwxxwxxxxxxwxxwxhxxxwxxxxxxwwwxxxxwxxwxwxxwwxwxwwxxxwwwwwwwxwgwgwwwwgeVgwwgwgwwwwwgwgxwxwgfwgwgwgwwwwwwwvwwwwwwwwwwvvwwvwwvwxwguvwwvwwvwwwwvvwvvxwxwwwwxXfgxwwggwgwhwwwxxwwwwwwwwxvwwwwxwgwvuwwwwxxwxvxgwxxxvwxuwwgxgxvhxxwwwxwxwwxwwwwwxxwwwwxhvwvwwwwxwwwxhvxwxwxwwwxxwxvwxwxwwfxwxvwwwwxwxwwxxxxxhwxwwxwwxhxwvwwxxxxxxwvxwxwxwxvhxxxxvxwxwwwxvxwhxxwxwgwwwhggWfggwgwxwxwxwxxwxwwwxxgwwwwwxwwwwwwvwwwxxxwwwwxwxxxwxxwwwghwheVuwwwxxxxwwwwxgxwwwxwvwxxxxxxwwwxxxxxwxwxxwwwwxxwwwwwhwxwwxxxhxxxxxxxxwwxxxxxxwxxxxxxxvxwwxxxwwxwxxxwxwxxgxxwxxxwxxxwwwxxxwxxhxwxwxxxxxwwwxgwwwxwfwVvwwvwwgvVWfvuvwwwwvvxwvwxvwgvwwvwwwwwvfvwvwwxwwwgvwvwwvvwwvfwwwwfwwwwvwwwgwwewvvvfwwwwwewvvwwvxwwwwwwgwvxwgvwgwwwvvwgwxwwwwwwxwwxwxwwwhwgwxxhwwxwwwwwwxxwxwvvwwwwwvxxwxvgvvxfwwhxxwwwwwvwxwwxxxxghxxgwwvwvwuwwfwxxxxwwwxxwwwwxwwgxxxhwxgwwwwwwwxwxxwwwxwwwwwxwxwxwwxwhxxwwxxwxfwgwvxwxwxwxxxwxxgwwxxwxwxwxwxxwwwhxwxgwwwwwwgwgwwwwxxwwwwwxvwvwxxxwxwwvwwwwxwwwgwwfhxxgvwwwwwwwhhwwwgwxxwxgwgvwxwxgvwwxxxxxxwwwwxxxwwwwxxxwxxgwwwwxwxxwxxxxwxwwxwwwwxxxxwwwhwwxxxwxxxgxxxwxxwxxwwxwxxwgxxxwwxxxxwxxwwxxxwxxxxxwwxwwgwwxvgvgvwwwffuwevvvgwvwvgvwwxwuvufgvwwwxvwwwgguvfgwfvfwgffvfffffvfwwWvWwfgxfvvvgvgvvwwfvvvwWvWvwwvvwwwgvwxwwwfwuwhwvxxxwvwwwxwxxxwwvwxhwwwxwwwwwffvvwwwwxwfvgwwgwWwgwwwwvwwwvvwxwxwwwvxwxwwwwvwwxxwvwwwvwxwwwwwvwxxxwwwwwvvxgwwxxwwxxwwxwxwwwxxwxwwwwwxxwxxwgxwxgwwxxwxwxwgxwgxgxwxwwwxxwxxxxxwxwxxwxwxxwxxxxxwwwwwwxwwvxwxixvxwwwwwwxwxwxxwwxxwvvwxwggvwxwvwuwggwwxxxwwwwwwxwxxwxwwgwxxwwxxwwvvfvvwwwwgwgvvvwgwWxwwwwwwxwwwxwwwwhwwwwgwggxwvwxxxwwxxxxwxwwwxxwxwwxxxxxxxxwxwwwxwwwwxwwxxwwwwxwxwwwxwwwwxwwxgxwwxxxxxxxxxxwxxxxxxxxwxxxwwwxxxxwwwwhwwhgxxxxxxwxxwxwwxwxxxwwgxgxwxxxwwxxxxxxwxxxxxxwwwwwwxwxxxxxwwxwvxwwwxwwxuwwuwwvwwvvwwwvvvuwwvwwwwgwfvfwWgwwwvwwugwwwvwggwwvxwxfvuwgfdvvggvvwvgvwwwwwuWvvvwwwvvfgVwevfvgugfWwvwfwwwwwgwggwgwwvwfgewwwwwwwuwwwgwwxwgguwwwwgvxwfxfwvxvwwvwvwWwuvwwxvxwwwwwfwwwwxxwwfVwxwgwxwggwfxxwxwwwwxxwwwxxwgxxvfvxxgvwwxwwwwwwwgvwvxwhwxwwxgwxxgvwxwwwwuwxhwxwhxwwwxxwwwwwwxwwgwwhwgxxggwwwwhgxxwxxgwwwwwwxxwwwwxhxxwwxwwwwxxxwxvwxxxxxxxwxxgwwxwwxwxgwxgWwwxhxxxxxwvxvwwwvgwwwwxgwgwwgwxwwxxwgguuwwwxxxwwwxwvwwxwwwwfvvgefwwxwwgwvfwwxhwwwxwwwwwwwwwxwvwwwwwwwhxwvxwxxwwvgwxvxwwxvxxwwhvwwwvwxwxxxxwfwxxwxxxhxgwvwxwgxxhwxggxwwxwwfhxwwwwwwxhwwwxxxwvwxxgxwwxwxxxwwxwwwxwwwxwxxwxwxwwwxxxwxwwxwwwxwwhwwwxwwvvwwwhxxgwWwxgvwwvxwwxxxxxwxxxwhxxxxwxwwwwxvwwxxwwxwxwwxxwxwfwwwgvhwgxwwwxvwwxwwvgwggwvwwwwvwvgwfvvwwgvggwvggvwwwwvgwfvvwvvwwwwwwwuwwwvxfvwwgvgvvwvwwvwwxvwvvvwvwwwgvvwwwvwvwwwgwwwwwwvwhxwwgwwwwgwwvwxgwgwwwwgwwwgwxwwxwwwwwxxxwxvxwxgwvgwwwvwwwgwwwwgwvfwwwvxwgxwwwwwwxwwwwwwxxxxwxxxgwwwwwwvvwwxwwwxwwxxfwwwwwxwwxwxxxxhxxwwgwgxvwwxxxxxwgwggwxwhvxwxxwwwwwwwxwwwwwwxxwxwwwxwxwxxwxwxwxwxxxwxgwxgwwxwxwxxwxwxwwxwgwvwwwwwwvwwwwvwwwwwwwwwwwxwwwwwwvwwwwwvwxxwxxwwwwvhgwxwwgwwwvwwwwwwwwwvwxwvwgwwxwwwwvwwwwwxwwwxxwfvwwwxwwwwfvwxxxwwxxxxxwxxwwwwwxwxxwwxxxwwxwgxwxwxwwwxwxxxxwxxxwwwwwwwwxvxxxxwxwxwxxwxxxxwxwxwwxwxwxxxxxwxwwwgxgwxvwhgwwgvwwxxwxxxxxxxxwxwxwwxxxxwxxwwxwwwwwwwxwxwxwhwwyxxwxwwhxxwxugxvxwxwwvxwwgwwwwwwfwwvwvxwxwxwwvwwwwwxfwWwgvxhwwwwwvwwwfwgwwVvuwuvwvfwvfwwvxvwwwggewwwwwfwvwwwwgvvwvwggwxwxwwwxxwgvxwwwwhgvvxwwfwxwwwvgvwxwwxvgwvxwhwvwwvwwwwxwwggxwxgwxxwxwwgvvvgwxwwxwxvwxWxfwxxxxwwwwxwgwwxwwxgwwxxwwxwwxxwwwxxxwwxvxwxwwvwxghwxvwwvwxvwxxxxxxwxwxxxxxwxxwwwwxwwxxxwwxxxwxxwxxwxxwvxxxwxxhxgwhxwxxxwwxwxwxwwwwwwwxwxwxxwxxwwgvwxvvwwwwwwwwwxxVguvwxxwwwweuwwwxvgwwwxxxxwvwxwxgxwvxxgxvxwwwwwvvwwwxxwwxgwwwxwxgxhhxxxwwwwwxwwxxwwwvxxxwwwxxxwgxwwxxwwwwxxywwwxwwxxgwxxxwxxxwxwwxwwhxxwxwxwwxxxxxxxxxhwyxxxxxwxxxwxxxwwxxwxxxxwxxxwwxwxxwxxdgvwggfwevuffevwwxwvwwwvgwwvwxevuwfuvwwwwwxuwwwwwxxwTevwUdefffevefevgeVwwvwgvgvvwuxufuvufffvvwvfwwgvvwwgwxgwxwUuewefvwwfgwewwxtevwwvwgvvwhwuwwwwfxwxwxgwxxxwTfevVfffVvdvgwwhfwfwvVwgwwwwguwvwxwwwxwwwfwwxwggvxwwxwfwwfwvvwgvwwWdfwvxwvggvwxevwvvvwwwfgxwffwfgwgvfwvwwuwgwWuxxxgwgvwgwgwwwxgvvwgwwxwxwwxwwxwwwwhvevggwwwwvwxwxwVvgwgxwwxgwwgwuwwxwxxwvxwxwxwwxxxvvvwwwvvwwxxwwgwwvWvxwwxwwxxwwwxwwggwwwwwvwwwxvTuvwfUdwgwwgwwevwwwvwxwvwgwgwufwwwwgwwwxxwxweVvfeVVvvfwwgvvwwwgwwwewgwwvwhvvuwwvwwxwwgwxwwuwwwwvwgvfvhwwwwWwxgvxwhwwhwxxwwhxxxwxxwwxwwvffwwWfwgwwwwxgwvwwvwwxwwwwwwwhwxwxvwwvxxwxvffwwwwwgwwhgwWvxvwwxwhxwwxwwxwwxwxwxxxhwwwwwwwwwvxxvxvgvgwxwxvxwxwhwwwwwvgvxwxxwxxxwxgvwwwwxwgxwxwxwvwxwwxxwwwwxxxfwxwwwwxxhxxvwxxxwwvxhwxwwxwwxwxhxxvxwxxxwwxxxgxwwxwuwwxvfxwvvwWffvwgwwvwguvvgvvwvvwwwwwgwwwwwxwwxvwwgWvuWffvgvWfvwwwvgwgwvggwwveggvwwxwxwuwgwwwhwwxvvxwwwwgfwgwvwvwvVfwwxwwwxxxwwgwvvgfWwwwxvwgwxgXvwwxwwxwwwxwxwwxxwwwwggwwwwvvwxxwwwwwxwxxwvxvvwxxwvgwwxwvvhwwxwxwwwwwvxwwxxxhgXhwxwwwwwwwWwxvfwxwxwwwwxgxxwxwfxgwwhvvxvwxvwwwhxvwxwwxwfwxwwxwwwwwWffwvgwgwWfvwwwwggwwwxwxwwwwhwwxwWffugvvwwwgwvgwwgwvwwwxvgvvxhwwxxwwgwxwgwxwvwwxwwvwwhxwwxxxhvxwwwwgxxuxwxwhgxwxwwwwwxxwwvwwwwwxwwwxwwwwwwwxxxwxxgwxwxgwwwhvwwxwvwxgwxxwwxxwxxxxxxfwwxxwwgxgxwxwxvxwwwxxwwwwwwXxxxwxtggwvvvwfvvwvuwfvvwwwxfffwwxwwxxfgwvgwwxgfvwwwvwxwxxeefvvwfVdvufvvwvffvwwwUgefwvwgffvwvvwwwwwfvfvwgxwwwwhwvfvfgfgwvwvwwgVgvwwwvwxwxuvwwwxWgvwwxwxwUVvugvfvvwgvxwFfdfwxwxwwwwvfwvwwwwxgwwgxwgwwxhwxxwwwvvwwfvwfvvwwgwwwxvwvwwgevvwvvxwwwwwwwwvwwxwvwwxwwwvwwwgvvwxwwwgvgwwvwwwwxwxxwvwxwxwfffWwuwvgxxgwvwwwvxxgwxxxvwwwxxwwvvwwxwwwwggvwwxxxvwggwwgwgwxxwxxxwwxxxxwxxxwxwwevwwgffVewvwwwfgwxxwxvwwxvvfwwwwxwxxxxvwxfVevgwvwvggvwwwfgwwwxwwxwwwwwwwxxwwvwxwwvgxwwxwwwfgwwwwxfwxxxfhwwwxxgwwxwwwwwxwwgwxxxwgvvwwxwgvwwwgwwgwwwgvwxwwxwxxwwwwwwxxgfgefwxwgxhwxwxwwxxxxwwxwwgwgxwxhxxxxxvwwwwgwwwwwxvhwgvxwxwxwwxxxwhxwxwwfwwwwwxwxwxxwwwwxwxhwxxxxxwwxwwwwwgvxxxxwxxwxwwvvwwvgwwwvwwwvwwwgfwfuwwwwfwwfvwwwgvwwgvvvgwgvwvwxvfwwffewVfvWvvwfffvwwggfwvwfhVfevwvvvwwwvwgfwvwwvxvgwxvxwvwxgfvwwwwxguvwvWwvwvwgwwwvwwwwwxxfvvwvfvwwvfwvxfwffwwwvwxwwwwvwwvvwvwwwwfwwvwvvxxgwwxwwwwgvgwwgvgwwxwgwwhxvfwwwwwvvwvwwxwwwxgwwvwwwvwgwwwwwwwwxhwwggwvwwwwvguvxvvxwwwhxwuwxxwxwwvwwgwwwvwwxwwxwvxwxwxxwxwwvvxwwxxxwvwwwgvwvwwwvwxxvgwwwwwwwwwwxwfwwxvxxgxvvwwwxwgvvwvwwwuwgfvuvwwvxwxwwvwwwwwwvvwxwvxxvgfvwugwwvwwwwvhvfxwxugwxwwvvvwvwwwwvxwvwwwwxxwwwwxfwvxxVwwwfwwwxxwwwwwxxxxxxxxxxwwwwwgvwwwxwxxWwwwwwwxwwxwxwxxwvwwxxwwxvvfwxwvvwwxwxwwxggxwwwxwxwwxwwwwhhwhwxvwwwxwvwgwwxgxwwgxxxvwwuwhxxwvwwwwwgwwxxwwxwxwghgxxxxxwxwxxxxxxxwwwwgwxhggwwxhxwxwxwwwxwxgwwxxwwvvwwxvfwvxwggvgvgxwvwwwwwxwxgfwvvwwwwvfwvwwggvvfwwfvgvwwvvgvvvvvwwwwwwwwvwxxvwxxwwwwxgfvwwwwwxwwwxwwfwwxgvvwwwwwxwxxgwwwwwwwwwvvwgwhvxwxwwwwxxwwxvxwgwgxwxwxwxxxwgwxvwwwxxwwxxhxwwwwxxwwxxwwwxfvwwxwwwwvxxxwwxxxxhvvxvwwxxwxwwwxwwxwvwwgvgxwfwgwxvfwvxxgwwxwxwwwxgvgvxvfwvxxggxwwvxwwwxwwwvgwxxwxwwwxxwwvwwxwxxxwvgwxxxwxwwwwxxwxwwwxwxxwwwvxwywfwwwxxwwwxxxgvwxxxwxxwwxwxxwwwwwwxvxxvxxwxxxxwxxhxxwxwwfwwwvwwwwvwwwvfvwwgvwffvwwfwwwgwwxgvwvvVwffvwwvwwxwggvvfegwvUvwvwfwfffwvvwfUfgffUwgggwfgwfvvwvwwgVfwvWfvwvxwxwvwwvvwwwwwvwwwwxfwwwgwxewwwwewvvwfwwwwwxgvwwxwvxxxxgfwgvwxfwwxvwwfgwvwvwwwwwwwwwwwfwwxxxwwhwwwwxwwwwwxxwxwwwwwvvwwwwxewwwwwwwwwgwwvwxgwwwxxwxgxwwwgwwwwwwwwwghwxwxgfwgxxwhwvxwgvxwxwwgwwWvwwxxwwwxvvwwwwgwwxguwwvwxwwwxwvwxxwxwxxxwxwxgxwwwxxwwwwwvxwwgvwwwwwxxxwvxgxwvhxwwxxxhgwwwwwwxwgvwwwwWvxwwgwvwwwhhwwwwwwwxwgwgwwxxwwWgvwwwwwvxxvxwwwWgwwwwwvwxvxwwwwwwwxwxwwffwwwwwwhxwxwwwwwwwwxwxwvwvwwhwwwuwwxxwxwwwxxxxxwxwwxhxgwxvxxwgxwwwxvwxwxwxxxwwhwfwxxwvvwwwwwxxwwxwwwwwwxxwxwxwgwxxgwgwxwwwxwxxvggwxwxwxwwxwxxwxxwxwxxwxwxwwxwxxxwwwxwwhwwwgwxxxwwwgwxwgvxwwwwwwxwwwfxxwwwxxxxwwwxwwwwxxxwhxhwxxtvvwwwwwfuvvwwvvuwwwwwfevwffwgxwxwvVVwwfwxxeduwwfeffvwwvuUduvwwwvvvwwwxueVuvfwguwwvgwwevevgvxwvwwwfvfwuevuwwvwewggvwwwfgwfwvwgwvxwxvwwxxTffvgvwgvwgwwxeufvggwwwwwvvWWudvvgwwxwwwvvvwxwxvxwvhevvvwwwwxfvwwvwxwvuvwwvvwwwxxvwwvwwwfwwvwggfwwvwxxwvwwwxgwwxxwvwwxwxwxwxgvxxxxwyfvfgwvwfuxfwvwxxwgwwxwvwwxwxwxxxxwuvxggvwwwwxwvwxWggvwxwwxxwwwfxxwxweuvwwvgwwwfEUvuvxwwwwwwwxxwwwwvwwxwuVfvvwwwfwwxuffexgvwwwvvwwvwwxxvwwvvwwvwxxwwgvwvxwwxguvgxwxxwwwxhxxgvxxxxxhwfuuwvxwwxvfewwvwxwxwwwwwvwvxxxxwxhwgfvwggwwwwwwwxxgxxxwxxxxxgxxxwvvwxwwwfwwxxwwwwwwxxvvwwxwwwxxxxwgwwxxxwxxwwwwxxwxxxwwwxwxxwxwwwwxwwxwxxwxxxwxwxgxxuvwvvwwvwwwvvxuvvwgwvffwwwvvwwvvvvvwwgwvwgwggfwvwwwvvgwgwvfwvvvwwvVewfvwuufvuwwgvvwvwwwvfggvwevvwevwvvwgwwwfvwuvwwwwgwvvggwwvwwgvfgvwxvwwwvgwxxwwvwwgvwwwwwwxxvwgwfvwWvugwwwWvugwvwwwvwwwvwwvwvxwgggwgvxwwwggwvwxwwwwwxwwwwvwgwwwfwwwwwgwxxxxvxvgwxxxwwwwxwwwxwwwwwwwvgwxwwwwxgxxxxxwxxxwgwxwwwwxxwvwwgwgvwxwwwwwhvxwwwgxxxwwwwxwwwwwxxwwwwvwwwxwvwvwwxxxxwwxxwwwhxgvwhwvxxfwwvwgvvwwwwgfwwvWgwvvwwwvwwvwvwwwgxxwwvwwxxxwxwxfwwgvvwgwwwxfgwvvwxvwxxwvwxwwwwwwxwwwwxwwwwwwwwwwhgggwgfvvwxvwxwwwwvvwwwxxwwggxxwxxhwwwwgwwvwwfxxvwxwgvwwxwwxwwxxxxwwxxwwxxwvxwvwgvwwwwwvxxxxxxxhxxxxwwxxxxxwxwxxwwwwvwwxxwvwwxxhxhhwxwxwxwwxwwwvxwxwfvxxwgwwxwwxxwgxxwwxxwvwwxwwxxwwxwwxwgxxvwfvvwwxwwxvwwwwwwgvgxwwwxwwwxwgwwwwwwwwwvxxxwwwwxgwwgvwwwwxgwvwwggfffvwxwwwgvwwwxxwwwxxwgxxwwwwwwvwxwxwwvwwwwwwxwxxwxgwxxxwxxwxhwwwwwwwxfwvwwwwxwwwwwwwxwxwxwxxwwwxwwwxxxwwwxwwxxxwxwxxwxxxwxxxwwxxwwxwwxxwwwwxwwwxwxxxwxxxxxxxxwxxwwwwxxwwxwxwxxxxwwwxxwxxxxwwxxxxxwwxyxxwwxwvwwwxfvwwwgwhhwxhwvxwxwxxxggwwwwxwwxvgwvxxxwxwwwwxwwwxwxwwxwghwwwxxxgwwwxxxxxxwxgxwxxxwwxwxxxxwxwxxxxxxxxxxxxxxxxxxwwwxxwxxwwwxxyxxxxxxxxxxxwxxwxwxxxxxxyuwwwvhwvwxxgvwwxwwwwwwxvvxgegwgvwwwwgvwwwwxwxwvhwgvfvggvwfwwwgwvwvwwfwwwxgevvwgwwwvwxvwwxxwxvwxxggvwwwfwwgwwwwwwwxxgwwwwwwxwxxwwwxwxxxgvwfwwwfwwuwwwwwxvwwwwvwwwxwwghwwxhxwwwwwwxwgwvgwwwwgvwwxvwwxwxgvwwwwvvhwxwxwwwwwvwwwwwxwxxxwwxxhvwxxwwwxxvhihxxxwwfwwwwvwvwwwwxuxxwwwwxwxxxxxwxxxxwgxwxwxwxxwwwxwxxhwwxvxxwxwxxxwwwwxwxvvxgevgwwwvwwgvwvwxwwvxgvgwwwwxxwvwwxgegwvwgwwwxwwxwwxxwwvvwwwxxwwhxxgvwwwwwwxwghwwxwxxwxwwvwwxxxwxwxwxwwvwxwxxwwxxxxwxxxwxwxwxgvwvwwwwwwxhvvhxvxwxwwxxwwxxxxhwwxxxxwxhixxwwwvwwwhwxxxxwwxwwxxwwwxhxxxwwxxxxxxxxwxxxwwwwwxxwgxxwxxwxhwxxeevwwwgwwgwgvwwfvwwwgwwwwwwwwwvvwwvwvUvwwvxvfwfwwwwwwefvwffewUfevgwvveVvwwgxwfwwwwwwfUefgvwevgVvvvgwfwgwfwwxwwxgvwgvwVfuvfwvgvwwwwwwgfvwwghvwxwgwwwvwxgwxwwugvvvewwwwwvwwwfwvwgwwwgvxgwvwwwgwwwuwgwfwwxwfwwwwwwwwwwvxwgvgwwvwwWfwvwwwxwwwwwxgwwwwfwwwwwxxwwwwwwxwwwwgwvwwxwvgxwwgwwwwvwxxxgwwXwxwxwwwwwvwwxxwgxxgwvwxwvwwxxxwwxwwxwwxwwwwvvwwwvwwwghuwwwwxwvwgwxwwwxxxvwvgwvgfvwwvgvgwwwfxxxwWguwvwvvwgwhgwxwgwxxxVeuvvwwvWwwwwwwevwwwvwxxwwwggvvwwwgvxwxxwwwwxvxxwwhwxwxgvwwvxgwwwgvwwwxwxwwxwxgwwwwwwwwxvwxxxxwxvvvfvwvwwhwxxwwwwxxwwwxwwhwwxwxwwxwxxwwwwwwxwgwhwfxfxvvwxwxgwxxxwxwxwxxxhgwwwwwxxwvwxhwwxxxxwxwwwxwwgwwxwxxxwwxgwwwwxwwxwxwhwwwxxxxxwxxxwxxwwxxwhxwxxxwwxxxxwxxwxxxwxugxgwgwwwwwfvwwwwgwwwwvggwevvgwwwwgvwwwwwwvgwWffvwwwwwwxgwwvffgVfffvfvwgvxwwwwgwgvgwwwwfwwwvxwfggwgwwwggwwghwxwwxwgwxfwgvwfwgwggWgvgwwxwxxwwwghvgwwxgvxwxwwwggwgvwwvfwwwwgvwwwwwwxxvwwvxgwvwwgwwgwxwxxwwwwwwwwhwwhwgwwwwxggxwxwwggwgwhxhxwwwxxwxxxwwwwhvgxwwwfgwwwvwwxwxxxxgwwxxwxwwwxxwhwxxxxxxxxxhxxxgvwwwgwwxgvxwxxwwxxxxhxxwwxxxxwwxxxwwwxwwwxxxxwvxwxxwxxxwxxwxxxxgwwwghvvvvvwxwwwgwuvwxwwwgwwxfgwxwwxwxxwxxwWwwwvwvuwfvvgwxwwwwgwxwwvwgwwwxwhxwwxxwwwxxvhxwwxwgwwwgfxxxgwwwxwxhxwwwxxxgxwxxwwxwwvxwwhxwwwxxwxwgxxxxxxgwwwwvwxvwvxxghxxxwxxxxxwxwxxxxwwwwwxvwwwxwwxxwxxxxxxgxxwxwxxwxxwwwxxgwwxxxxxxwwxwxxxxwxwwxxxwxxxxwxxxxxxufwvwwxwwwgwuewwvvgvgwwhwvuwvvgwwwxvfeWwvgwwwwwxwvfwwgwuhvhvvwxgefwwwwvvwuwvwxgeWuvwwwwwwwvwuwvgwwxwwxufvwgwwwvvgwgwwwxxwxxvWwefwwxxxwwxxxxwvguwvwwhxwwvwwwvwvwVwgwhxwfgvwxwxxwwwwvwwwwvwwxvwxvxgvvgwwxvuxhvwwgvwwwxwxxwxgvwwxwxxwwxwwxuxwhxvwuwwxxxwwvgvxwwxvwwgvvvwgwhwggfgvxxgwhxxxwhxxXwuwwxxxxwewxvvwwxvxxwxxxwgwwwxxxwwxxwvwwxxggwvwwgfeWvwvfwwwwxwvwwwwwxxvvwvwxxwxgeWwvwwwwwvvvuwvgwwwwwwwwwwwwxwwxwvwxvwwgwxwxxxwvwwghxxxxvwvgxxxxxxxxxxvxxxhxwwgwxwxxwwvxwwwxwyxwwwxvwgxhvhxxxxxxwwwwxwxxxxgxxxwxvwxxxwugvxwwxwwwwxgxxwwxvxwxxwvwwxxxxxhwwwxvvxxxxxwwxgxxxxxxxuwwvvwwwwwwwwvgwwvgvgffxwxwvxvvgffwvwvwvvgwvvVuffwwxvfwwvgvwwffgvwwwTEvwgwwwfwvwwvwvgvvVevvgvvwfvvwvwvggwwwwhwwxxwwwwwwxwwwwxwwxxwwwWuxvgvwwwxgvwwwwwwwwxvwwwwfvwwwwvvwwvwwwwwwgvvfwwwwvwwgwgwgfvxwwwwxwwwwvgxwwwwwwgvwwwwwwwwwwwwxwwwwwwwwwwxwwwwxwwxwxwwwwwwvxxxxxwxwwxwgxwwwwwxxxwxwwxwxwwwwWuwxwwwwgwxxvwwwxxwvwxwwwxwvxxxwxgfxwvgxwxxwwwwwwwwgfvvwgwhwwhvwhwwwwwgwvwwwwwwxxxwxxwwvwvwwwgvxwwwwwwgvxwhwwwwwwwwwgvxwwwwwxwxxxvgvwwwwwxgvwwwwxwxxwxwhxwxwxwwwxxxhvxwgvwwwwwxxwwwxxwxwxwwwwwwwxxxwwhvwwgwxxgwwwwwxxwwwxxwxxwwxwwxhxxxxxwxwwwwxwwhxxwxwwwxwwxwxwxxxxwxxwwwxxxxwwwwxxxwwwwwwvxwwxxvwxgwwwhfvwvgxfffwvvvgwwgwwwwwwwUffwwwxgxwgwxwvwfwwgvxfvwUvfvVugvwfvwweUvwwwwgwwwwvwwvwwgwwwvwvwwgwxwgvgwwffvvwgwxgvwwgxxwwxvhwwwwwwvvwwwWugfxgvwxhwggwwxxxwxxwfwxwxwwxwgwwwwfwwwxfggwwfwxwwwxxwwxxwxxwxxwwxwgwvxwgwwhwgwwwwxwwwxwvxgwxxxxvwxwgvwwwwwwxxwxwxxwwgxwwxgxgwwxwvwxxxxwxxwwxwwxxxwwxxwwwwwxgvwwwwwvwwgfwgwvxwwhwwwwxwwxwwxwxwxwwwwhwwffwwwwwwwwvwwxwxxwwwwwwwwwxxxgwwwwwxwxwxhxxwwwwfwxwxwwgxvwgxfxxxgwwwwxwwxxxxxxxxwxxwwxwwwxxgxxxwwxxxxwxxxwxwwhxvxxwwxxxgwxwxxxwxyhvxwxwxwwxwxwwxxxxxxxxxxwwwxxxxwxxxxxxxxxxxwudfwvugvugwvwfwvufwwfggfwxgwwwwvvvfugwfwwfvgvvfwwgwxffwgfxvwefvwfVdwgffevuwwwggvwvwwvvefwwffvdfffgeggvwwWufvwwgwwwgwwwwefvegfgvwwvvwdfgfwxgfwxwxvvwxvVwwwgvwgwgvwuwwwxvxwxefVFfffgwvgwwwgvwwggwwwwwwgwgvtgugvgwhfggwfgvwwxvvwxxwwvwvwgwwxwfwvwggfwfwwwwwvvwwgwvvwvvwxwwxwuwwvwxxvwxwwwwwxxgwwvxvwvwwgwxwwwhgwwhhwgwwwwgwxgwwwwwvwwwwgwxwwwxvwvwvxgvwxwwwwVwwwvgwwwwxhggvwvvwxvgwwwfvvwwXvwwhhxwvwwwgwxwwwwwvwxhwwwxwwwXgvxwwvvvxwwwgwfwwwxgvxwhwwwfvwwewgxwfvxvvwggwugwwwxwgvwwwvwvwxwfwxgxwvwwxwxwvvvfVwfwwvwwwWvwwfgwhwxvgxvfgvwwwxwwwxwxwxwxwwwvwwxgvwwvwugwwxwxwfwwvwvxxwxxxgwvwxwwwhxxxgggxwxxxxggxwwvfwwfwwguxwwhuwwWwwwwwwxgwwxwwwwwxwwxwxwwxxxwwxxwfwvwwwwggwgwgwwwwwfwvxxxhxwwxxxwxxxxhwwwgwgwhwwwhxwwwwxwgwvwwxhxfxwxvgxwwxwxgwxwwwwxxwwwwxwvxuxxxxwwwwwwxwxwxxxgxxvxwwwgxxvwxvhwwxwwwxwwwxgxwxxxwxwwxwvgwwvwxfvvwugxxhvfvwwwwwwwxwwwwwvuwfvVvwwwwwwxvwvwwwwfggeTvgwwwwwgvuwWwwgwwwwwwwwvwwwwwfvfuwwWgvwwwwwwwwwwwxxwwxwwwgvwwwxwfvvxwwwwgvgvwxwwxwxxwwvwwgvwwxwxwwwwwxvwwwgwvwwhwwvwwwxwxxxgxxxwxwxwwwxgvwwwwxxwvwvwwxwwwwxwxxwvxxwwwwwwwwxxwwwwwwwwwwwxwwwggxxxwwfvxwwwwwvwWwwxxwwwhwxwxxxxwhwwwwwxwwgxwxxxxxxvxxwxwwvwwwvwgwwwwwwwwwwxwxwwxwxvwwwwwwxwwwwxwwxwvwxvwxwwwwwxwxwwgwxxxwxxwxxhvfwgwxwwxwwwwxwhxxxxwxwwwwhxwxxwxgxxxwxxwwxxwwgwwwxxxhwxxxxxwxwxwxwwwwwxxxwxxxvxxxxxwxwwxwwwwwxwxxxxxxxxxxxxufwwwwwwwvgwwgwwwwwwwfwfvvwfwwwwfgwgwxuvvfvwgwvwvwwwwxxvwwwwwvxfvvwfvvvfvwfvvwewggwwwgvfvwgwwuwwwgwvwfggfwwvwwfwwwwfvvggwwwvvwxfgggwgwwwxxwxvwvwWwwwxVwwvwwxwvwfgwwgwwwxxwwwwVwwwxwwgwxwfwgwgwwwwwwwwwwwwwwwwgwwxxvwwwwwwwxvvvwwgwwwvuvwwvvwxvwwwwwwwwxwxwxwxxwwxfwwwxxvxwwwwxwwwwwwwgxvwxwwhwwwwxwwgwxxwxwxwxvwwgwwwwwWvwwxxhwwfxwwgvwxxxwwwxwxwxwwwwwwfwwwxwwwwwxwwwwwggwwwwfwwxwxwwwgvxwwwwxwxvwgwwwwxvfwxwfvwwwwgwgwwxwwwxgwxwxwwvvxxwwwwxwxxxwgfvgwwwxwgwwwhwwuwwwxwgwwwvxxwvwxhwwwwwxwgwvwxxgxwxwhwwwwxwwwwwwwxxxwwwxwhxwxxfxwxwwxxwwxwugxwxwwxwwxwxxwwwxwxwxwvvwwwxwhxwwxwuwwxwwwwxwxwxxxxwwwxgvvvxvwwxxwwwxxwxxvxwwwwwxwxxvvvwxvxxwwwwwxwwxwvxfvwwwwgxvwxwwwwxwvwxwwwwxxxxfwxxwxxgvxxwxwxgxxxsvfwfvvxvwgwfvwfffwwwffvwwwwvvvvfffvwwwwxfdgwvheUfffffgVfwgewwvwfwwwwgwvxvxFSfvfvTuvwwwwuwuwguvwwwwwwwfvVvgeVfefvgwuvfvgvwvwwvwxgvgwwvwwwwwwxvwfwwxxwxwxEeffVvSuwwgwwwWwvwwwgwwwxwfevwgwwwwwgwxvxxwwuvwuwgwwgvwwwwwgewwxwfffwwguwwwxxWvwvewxguewvwwwxxxwwwwwvwwwwwgvwwwwwxwwwwxwwwwwvvhwvvwxwwgfvxwvwhuwVeWwwvwgwgxxfdwwwxwgvwwwvxxwxwwwwxwwwwxwvvgvwwwwhwwgwwwxwwwwxwvwwwwvvWwxwwwxvgfwwwwxvwvxevwvfgvwfvxxwxfVgwwggwwxwxfVevwvvwxwxfvwfvwwwwwxwwwfEfvggfvwwwwwfvwxggwwhvvffvwwvhgvvvxwwxgxxfxwwwwvgwwwfwwwwwWvwwwwwwwxwvvwwgwwwxwxwwwwxwxxwwwfvvvwwvwwgvwwwgxwwwxxwxvgvvwwwwwwxwxwwxgwxxxwvVvvxwwggxgwwxgvfwxwwwwwwwwwvwxwxwwvxxxwwwwggwxwgwwwwxwwfxxgwxxxgwwxvwgwxxwwxvxwwwxwxgvxwwxxgwwwwwwxwwgwxxwxgxwwxwxwxwxwxwxwwwwwwwwwwgwwxxxwwwwxgwwxwvwxwxvwvwwwffvffgevevvwvvwwwvfgwgwvvvvvwvvvwwwxwwwwwvwevvvuvgwwvwfvefefuvevfVfWvwvufufgwwwgvgvvvvvVwvvwwwfvvwwugvfVggvwvwvvevuxffvgwwfgfwvwvvwwvgvghxwgwwwwwvwwwugxwhxgwwwvvffffgwwggvgwwvvvwgvWxgwxvwwwgwwvwwwfxwgwxvwvvvwvvwxwwfwvxvvwwwfwvwvgwwvwxwvwvwvvwxxvwwvwgwvvxwwwxwwwwwgwxwvwwvwhwvwwxwfwwwxgwwwgxwxwwwfgwVhgwgwwguvwgvvvfxwwwvwgwgvwxwxwwghwwxwxwfgvwgwwwvxwwhxwwwgwgwwwxxvwwwvwfgWwxgwwxwxvvexWwwwhxwwWwwwwwvgvwvwgwgwwwwwwwwwwwwwwwwwwgvwwvvwxwvwgxgxgwwfwvwgwgwgwwwwwwwxwwvxwwxxwgvwwfwwwwwggwwgxwwxwwwgwwgfwwwggwxhwvgwwwxgxwgvvxhwxvwwwwwwvwvwvwwxwxgwvxxwxwwwwwwwxwvwxwwwwwwgwwwwwvvxxwwxwxwgvgxxxxvwwwwwgwwwfhwXxvvwvxxwwwwxwgwwwxwxwxwwwxwugxvgwwxvgxxwxhwuwvwwxhwxwxwxufwvgwwwgxvwxxgxwvxvwwwhhwvwwwWwwvwxxwwxwgwxhwvwxhwWvuvxwUwhgxxhxwxwgwvwgwhvuvwgwwwefgewfwvwwwwgwvwwvwfwvwguvgwVwwwvvgvwwwvfwwwvwwvwwwWfvvefuvdfVvXfvwwVVgtvvwwwfgfvwwvffvvwwwtwvvfvgwwwvgdwwwwvvgwwvvwvwvxvwfwvgwwwwwwwuwwgwwuwwwwvwwxwfxwwuwwwgvxwxwhfwgwffefVvwvgevfwgwgvWfggwhwufwwvwwwwwwwwwfgwwwwwvwwwhvwwwwvwwuwwwgWwxgwevxwwgwwwvwwwwuwwwwwhuwwwxwxgwxvgwwgvgwxhxwhgwvxhwuwwwwwwhvwvwwwgwwwwxwhwwxxwwwwwwwwwwwwwwwwxwwwwwhvvvxvgwgwxxwhgvxxwwwwxwwwwwwwwwvvvgvgxwxhwgwfwwguwwxxwxwxxwwgwwwxUwwggwuxwgwfvwvwwwgwfwwwwwwwwwgwgxwfvvvwwvxwhwwxxwhvvwvvfWwvfwwvwvwfvwwwfvgfwwwwvwgwwwwwwwxwwxwwvxgxwgvwxwgwvxwxwwwwwwwvfwwgwwhwwwxWwwvWxwwxwxxxwxWghwwwwwwfwwwwxwwvwwwwgwxxwwwwgwhxxvxxxwgxwxwwwwwwwwgxwhxwwWvwwwhxxxwxwwxgwxwxxwwxxwwvwxwwxwwxvwwWwwwXxvwxwxwwwwxwxxwxwwwwgxxxhxwwvvwwwwhwwwwwxwwwxwxxxwxhxgxxxwxwwxwwxxwwwwwwxxxxywxvxxxwwxwwwxxwxxvwwwwvgvgwwgwvevuvwvvwwwwvwgwwwvwwwvuwvgwwvvvwwgvwgwwwwxgvwfgwfvgwuwvwwuwwvvgWwVwvwgxwwgvfuvewuuvwgxfvwgwgwvwxvwwwvwfvwxwwwvvgwvvxwvwxxvwwvwwgwwxxgwwgxwxxwgwfvwuvwvxwxwwwwxgwwwwwfwvwggwwwwwgxwwwwxwwwwwwwwvwwwwwwwwwwxwxxxvwwwwwwwwwwxxxwwwwwwwwwxwvvwvvfwwwwvxxxxgwwwwwxwxwwwxwvvvwwgwwxwwvwwxwwxwwwwvwvwwwwxwwxwwwxwxwvxwxxxwwwwxwxvwvwwwwwwwwwxwwvwwfxwwwwxwxxwwwwwxwwwwvgwvuwvvwvwgwwwwxxvgvwvwgxwxwwwvvwxxfwvvvvvuvwxwwfwgwwwxwxwvwwvwwvwxxgxxxvwwxxwvwwwwxwwwwwxwwvxwxwxhwvwwwwvwwxwwwxwwwvvwwxwxxwwwvwwwwwwxxwwxwwwwwwwxxwwwwwxxxwxxvxwwxxxxxxxwxwwxxxxhxwwwwwwxxvwvwxxwxxwvwwwxxvxwwwvxwxwxwvxxxxwxxwwwxwxxfxxxwxxwxxxxxwxwwxwxxxfxhwxxxwxhxxwxxwwxwxvxxxwwvwvvvgwuevuwvwfeevwwwwhwwvvwfvwufefvwwwwvwwwgvuwgeUwfgwvwvwvfeevfvvwvfvfwwvwfvfvvgwwwwvVvvwvugvwwfgvwwwwvwwwwwvfuWevgwwxwwxwwxxgfwxwwwgwgfvvwvwwvgfgvuvwxwwwwvfwwwwwwxwwgwwwVxwwxwvxwvxwvwwvvfgwwxxwwwvvwvwxxwwwwwvxwwwwxhgwfxxwvvxvwwwwxwgxxxxwwwxxwxvwxxffvwwvwxwxwxxwhxxgxwvwvwxxwxxvxwwwgwxwwwxwwwvwxxwxwwwvvvvwwwwwwvgvggwvgwwgwvwwxwxwggwxwxxxwgvwvwwwxwwwwwxwvwvwfwwxxxwwwwwwwwwwwwhwwvwwvwxwxgvgwxxwwwwxxxxxwwgwwwxwxxxwxwfxxwgvwxxxwwxwxwwwxxwwxwwxwxxwxxxxgxwxwwwwvxxxgxwxhxwxxwxxwwwwxwwwgwxxwxxwwwxxxxxxfwxxxhwxwwxwxhwxwwvewwvwwwwvwxggwwvwvfwwfggfvwwwwwvuwwvwwwgvwvvwwugfwgwgwvwvwxwvwwfgwevvwwwvgggeuwfgVvfvfwvwgvgeveefgvwvuwvweegewfvVuwwvvwvvwgwwwewxfvwxvggwgwwwwwwgvgwwvwwwwwgvgxgwwxvwhwvwgwwvwvwxvxwwfueVwWvWgwwwwgWwuwvwgwwwvwwxvgvvWgfwgxwwvwwgvwxwxggfwxxwvwxgvxwvwwvffwwxwvwwwwwhwxwwwwxwxwwwvxxxvwgxxxgwwwwwwgwwwwwwwgVwgwgxvvwwwvwwwwgwxxwwwwwxxgwxxwwwhfxwwwwxwxwxwgxgwxgwwwwwwxwxwxwwwgvxwfvvwxgwwwwwwvwwwxwgfvwuwggWwvwwwgfvxwwxwwwwwhVvwwwwxwvwwxhgvwxgwgwvwwwwwwwwwwxwwvvwwwgggwwwwwgggwwwwwwwwvgwwwwwwxwwwgwwgxwwvxvxwwhxwwwhwwwwxwgxxvxhVwwvwxwwvvwvwxhgxxfwwwvxxvxvwwgwwxgxxxwwwwxxgwxgwwwwwwgwwwxxxwxwwwwxxgwxxwwwxxxvwxxwwgwwgxxxwwgwvwxxwwwwwwhxvxwxwwwwwwwwwwxewghgxwwwwwwxwxwwxxxwxxxwvxwxwwvxxwwwxwgwwwwwxwvwwwxwwwxxxwxxwxvwxxwxwxvvgvvvvvwvvffvwvgfvgfwwvvuwvfwwvvvwwgxwvvwvwwwwvwfwvwvggwfufvfwwfgffvvvvwgvfwvwgwuffffwfffgvwvvvwhvwgwwfvwwwwgwwwvvwvvwfwwgwxvgvwwwvwvwwxwvwwfvwwvwwwwxwhvwgvxwxwxwwgwvwvwwwvwwwwwvwwgwwvgwwgxwwfvfwvwwwvwxhxwgwgwwwwwwgwwwwwxwxwvwwxwgwvewvvwgwgxwwwwvwwwwwwxvwwxxvwgwxwwwxxwvwxggvvwxwwxxuwxxxwwxvwwwwxwxwwwwhhggwwwvxvwgvvxwxwwwhwwxwxwwfgwxxwwxwhxxwwwwwwwwxxwwwwwwwwxwgwwwxgwwwwwggxwxwhwxwwgwwwwxvwgwgwwwfxvxwwhvgffwwgvwvuwwgwugwwwxxgwvwgwwxwvwwwwxwwwgvuvfggvwwwwwwgwwgxwwwwwwxvwwwwwwwgwwvxwwgwwxxwhxxvxvgfwwxwxwgwwwwgwwwhxwxwwwwwvwxxgxgwvvwwxwxxwwwvwwxwwwxxxwwxgwwwxgxwwwwwwwwxwwvwxhwwwgwwggvwxxhwwwxwwwwxxxxwxwxwwxwhwwwxghwwxwwvwxvwhxwwwwwwxwxxwwxxxwxgvwwxxxxxxgwfxwwwwvxxwvxvxxxgxwwhxxwxgwwwxxwxwxhgxwgxwwxxxwgwwwwfwxxxxwxvxxvwwwwwvwvxwgvvvwgwgwgwwWgvwvgwvwvwxhxwvfgwevvwwwwwwwvwwwwwuwggwwwwfVvwwvwvwwwwwxwxVwewwwvwfwVwwxwevvvgwvxwwwwwwxgwwwwgwvggxgwuvwwwwxwwwwgwwwwxwwwxwxxxxWwvvvwwhwwvvwgwwxwwwwufwxwxxxxwwwwgxxwwwwwwxxgwgwwxxwxgwwwwwwwwxxwwwxxwwwwxxxwxgwxwxwwxyxwgwwwwwwxxwwwwxxwwwgwgwwwxxvvxhxxxvxwxxxxxvxxxwwwwwxwwwxxxwwwxwwxwwwwxxwwwxxfhwWgxwxxxwvvwwwwwwxxwvvvwxxwwwxwggvgvwwxwxgvwxwwxvxwwvvvvvwwwvxxxwxwwwxxwxwwwxvwwxxwxwwxwwwxxwwwwwvwgxwxwxwwxwwwxxxwwvwxgvwwxxgwxxxxxxxxxxxgxxxxwwhwxxwwxwwxxxxxwwwwxxxwxwxwwxxxxwwxwxwxvwwxfvVgvwfxfgfugehhfWwvgffwfgvvfxfwfwggwfvfwevUwfvVfUvfwwwwwwWgvgwUgwffgffWgVvfgfgUffwgwwwgvVweffwUvuwwwwwVWVvggwgwwhfwwwwwvfwvgvhvwwwfwegvwWfgvvggwxwxvwuwwgWvfwvxwxfwfwwxxhwxxvvwghwwwwfgvvggvwwwgvgwwgwxwwwwwvwwwVfvwxgwwwxgwxgwwwwxwvwwgwgwvwwuwwwwxwwfxhgwwwwwwwwxwhvwwwwwwvwwwwxwwxwxxwwwwwxghxgxwgwxwWgxwwgxwwwxwwxxgxxwwxwwwwhwxwxxfwwxwwwxwxwwwwwwxxwxwwxxxxxxxxxxxxwwwwxwxwwxxwwwwxwwxxxvwxwwxxgvxwvvwwwgwwwxvgvgvwwgwgwwgvwwwwwwwwwwwxxwvwwxhvgwwxwxxxvwwwwwwwwwwwwwxvwxxgwwwwxvwvwwxwwwwxwwwxxwvwwwxxxwwhfwwxxvgvwxwwwxwwwhwwxxwwxhwwwxwwxwxxwwxxxwxwwxxwwxxxxxxwxxwwwxwwwgwwxwwxvxxxvxxwwwwwxxwwxxxwxgxxxxhxwhwxxxxxwwxxxxxxwxwxxxwwxxwxwxwxxxwxxwxxwxwxxxxvxwxxxxxwxxxxwwxxwwwwwxwwxxxxuwvxgvwggffgfvwwgvvgwwwxwvgwVvvVwfwwvxvwxvwvwwwwwgwxxxVffvffVvfffufgvvwfxwvvwwwwwffeufgwwwwwxvwwvxwwwxxwUuvwevwfwvwvwVfwwwwwfwwxxvwfgwwwxwxwfvwhgwUfevuvfgvwwwggwwfvfwwwwwwwwxvvwvwwgvwwxwwwwwwwwwwwvwUfvvvgfwfffvvwwvVVwwwwwfwhxwwvVfwwvwwvwxxwxxxfewhwwxxwxxxxVWvvgwwwvwwxwhwwgwfwxxhgxwwwwxwvvwwwwwwhwwwvwwhgwxwwhwgwwxxxwegfvvvwwvwxvvwfuggwwgwfwwxwvwvwxwwwxwgxwgggxxwxefvwvwgwwvwxwwvvfgvwgxwxwuwwvwwwwwxgvxxxwvwwwwvvxVvfVufvvgwwfwwvfVgvwwwhgwwwvgvvvvxwfwwxwvwxfWvufgfgwwwxwwvwgwwwwwwwwxwwgwwxwgwxhxwxgwwwxfgvvvuwvvgvwhufwgwxwwwhvvwwwwwxwxwxwwxwxwxwwgxevwegwgvvhxwvwvwwwwwvxwwxwhvwxwwwhwxwxxwxxwxxUVvvwwwwgvwxwwwwgwfgwgwxwgxxwwwwwwgfxwgwwxwgwwxwxxwwwfvvhwgggwwxwwxwfgwwwxwwwxwxwxgxxhvxxxhwxwwxhwwwxvuwwvwwwwwwxxxwggwwxwvwvgxxxxwxxwxwwwwgwufwvwwwwvwfvwhxxvvxwvwwxwwxxwxwwxwxxxwwwugewVwfwVffwefvwVvgvgVfxVfffWgwfvxvguwugggfwwxvGvwgwwVwxxxFfVwfffwefevVuvwwgWvwwwxgfugwggwvWvwuvfwfwvxwwgwvvvxxwwvwxwwwUfuwffvugfvvvuwvWwfvwwfvfwwgvwvwvfuwwxxxxgwwvwwxwwvwweffvfefgewfgfugewufvwwvwwfvwwwvfxvwwwwhgwwvwwwwxwwgvgwvxVfwwfffwfffvggwvVgggvwwFwfwgwvwuwgwgvgxffgwwwwwfewgwfwwwwwwhxxxuffwwwgfwggwwwwgvwwggggwwWhxgwgwggwggwwxxwxwwggwxhXwhhgghxwuwwfwwgwwwgwvwvdwggwvxfwgwwgwwwvwwvwwwvwxwwvwwwwxwgwwxwvwvgvwwwwgwwwwwgvvwwhfwwfgwwwwwwwxwwwwwvwxgwwwgvwxxfvvxvffwfffwuVwgfeWvfwgVvwwvWwvwwgwvfwwwgwgwwxwwxwhwxxuvwfvuwwfvgvgvwgvvWwhwwwWwwfvwvvxwvwvwxwwwvwwwhwxxwwwxwwwxtfwwfuwfwvwwxwgwwwwwxvwhwwwwwvwvwwwwwwxfwwgwvxwwfvwfwvwwwwwvvgwwwwwvwwwwwwgwwxxxwwhwwvhvwwwwwvhxxghvggffvxfWfgvgwhWvwxgwxuwwwxxwxwwwwwxwwwhwXxvwwhwwhXwfgghhwhwwwwvwwwgxwWwfgwvwwwwxwwwxvwxwwxwxgwwxhgxwwwwgggxgxxwhwxwvvwwxwxwwxgwxxwwwwwgwvwuwxwxwxwxwhxwhwwwwvgvwwvwwwxxgwxxwwvwwwwwwvxwwwwwxfwwxwwwxwxxfgwWwfvvwffvwfvwxgggxfWwwwwvwxghxwwxwwxwxwwxwgwwwgwwwggfwwgfwUewWgwwwxvwwwwwfwwwwvwgxwwwwwhvgwwwxwwxwwwgfvvwgfwvwvgwwxwwfvwwwwwgwxwwwwwxwwxwxwxfwwxfwwwewvvgwwVwwwgwwfvwuwfwwwvwwwxwwxxwwxvxvvwWggwffvwffvwWXgwhhwggvxwhwhwwxwwwgwxvxgghxxxxxwvxxxwwxvwwxfwwwWwwwwghwxxxxwwwhgvwxxxwxxwwxwxxgxxxxxwwwvwgwwwwxwvwgwxhxwxvwvwxwwxxxxxxxwxxwxwwgxwgwwwxvxwwxwwxUwxwhwxxxxxwxwWwwVgvffgfwwgfgwwhgwvvgwvxwwwwxwwwwxxxxxwwwwxxwggWfgwxgwxvuwxxwwxxwxwwxwwwwwwwxxxwwwwwxwxxxxxwhwwwxwwwwxhxwwwgwxwwwwxxwxwwhxxxwwwxxwwfwvxhxxxxxwwxxwxxxwWfwwwgwwVfwwxwwxgwgwxxwhwwxwgxfxxxxhxhwxxwwwxxxxxwwwhghwxxgwwgwwxxxxxfxvxxfwwxxwwxxwwxxvxxxxxwxxwggwwwxhwwxgxwgwxwxxhxwhwxxxxxwxwxwxwwwxwwxxwxwwxwwxxwwwxxxxxtvfwggwwVuvvgFfvggffvwwwWFfuwwwxgvwfugwwwxwwwWffuwxwwwwwvwgvgvwgFfvwwvwvwgwwwvwxwwwgfgvugwwVuvwxwvwwggfgvwwwxxwgfgwugwwwwxvvVffuwvwwwxwxwwgvwwvwwxwwwwwxwwwwwwxxugwwVuvwwwwxwwwgvwgfhvwwwwwvgwxuwwgwhwwxvxwwwxvwxwxvfgfvvwwVFfuwwwwwWwwwwwwwwgwgwVffugvwxgwwxvhwvvwwhwwwhwxwxxvwwwvwwwwwxhfgvwwwwxwxwhwxxwgwwxgfhvwxgwxwgwhwwxwwxxhwxxxWffuvwwxxwfwwwvgxwxwwwwwxwxwwwwxxuhwwwwwwwxwgfgvwwwwwgxxwgwwvvwxxwgwxhwxwwwgwwxwwVufwgFfvwgwxwxVFfuwwxwwwvwwxwwwwwwwgvwxxwwwwwxwxwgFfvvwwwwwwwwwwhfgvxwgvxwwwwwxxwvxwwwwwgwwvxxwwxxwxxxgwxwwxwvwwvwwwwwwwvgwwhwxxxxwwxxvwwxwwwxwwxwwwxvwwxvxwwvwxwxwxxxhxwwxxwxxyWFfuwwxwwwgwwwwwwvxhxxhvwwxwwwxwxxwxxxwxxxxxhxxxwwxwwwgfgvwxwxxxxxhxxxwwhxxhwwxxwxgwwwgwwxgxwxxwxggwhwxwwwxwwwxwxwwwwvxwwxvxwvxvwxwwxxwwxwwxxwwwwwhwwwxwwwxvwxwwxwwwwxxxxwxwwxwwwegwwwggwwvvgvwgwwgvgVfvwvWwwfvxvgwwwvwwwwWewwgWgwwvwxwwvwwwgguvvvgvuwwvwwuvwwdvwwgtwgvfwwfvwwvvwwuvvwwuwwuwxwwwfwxvgvwwwGfvvvFgvgvwvxvwwuwwvwvwwgwwwwwxwwxwfvwwvvwfuwvwwhtfwvgtwwvgwwvwxvwwvwwwvvvwxwxuxwwwwwwwwxwfvwwvxgEvwWWvvfffwwvvggwwwwvwxwxxhvfgvwvvhuwwwxwxxwwwwwwwvxwwwvwwwxxxwxwffvhxgvwwfwwwwwwxxxwwwwvgwxhvwwwwxgwgwgwvhvwxxwegwvgvwxgwvuwwxwhxxwwwwwwwwxwffwwwwwwxxxxwvvvxxvwwwwxwvxwwxwwxxvxxwxxwgvvwgvwwwFVvvvFwvwvwxvwwxwwwvwxwvwwwxwxwxwgfwwvvwwwxwefwvwuwgwwwwxfwwxxwvxwxvwxwxxxwwxwwxwxwxwxwwvwwwwwwxwwwuwwwwwwvxwxgxxwxxxwwxwwwxwxwuwwgwwxwxxwwwwxxwwxwfgvvvwgxwxhwggvwwhwwxxxxwwxwxwxggwxhhwwxxWwwgwxwxwgwwwxwwwxxvggxxxwwwwwxwxwxwxxgxwxxxwwxwwwxwxwxwwxhwxxgwhxwwwwwxxwwwwxwghxhgwxwxxwxwxwxwwwxxxxxwwwwwxxwxxwwwwwuwvwwwxVvuwwgvVfffvffxVVvvwgwwevvgwWvwfwffWVgvwwffvwwVffwwfewgwwvwwwUVewgvwgffwgvwwgfwgwwvxwwxwwvwvgwhwgwwwwwwfvuwwwvgvwwveVfvxwwwwwvhwwxwwfwwwwxwgvwghwwwgxwUfvewhgffwvxvwefffhwwWwfvvwfwggvfggwwwwxvwwwWvggwwwvwgvgwvwggfggwfgWWfvgfhfgfwfxfwwugwwvvwwfvwwwgVffgwxvwgfwvxwxgvfvwgxgwwgwVwwhwxggfxxxhfwwwxwwgwxwgxwwwxxxwgxhgggwXggxwwwhgwvgwvwwxfvwwfxffgwwgvwgvwvwwwwfuwxvxwwwgwwwgwvxxwgwwwgwxxwwgxggwWwgwwwgvwxvwwwxwxwwvwhgwwwvwwvwwvxgvwgwvwvwwxgwxVWfvgggwffwwxgwgvgvgwwwvwwfvgwxwXwghwhxxwvgwgwwxfwvxgwwfgwvwhwgwvvwwwgwgwhfghxxwxwwxfhwhwxwhwwufgwuwwwxwwxxgggwxxxxwggwxfwgwgxxxxxwWwxxwwwwwwxxwwwxxwwwhwgxwxwxwWwwxwwwhxwwxwxwhwwwwxxwwxwwwwwwgwgvwwwxgVfggxhwggvxxWwgwxwgxwxxgxhwvvvwgxXgxxxxxgwwgwxxwwwvwwWwhgxVxxwwgxvxxwwwxfwxwXxxwwwwwxwwxwwxwwgvwxhwwgwxgvwWxwxwwxxwwxvxwxxxwxwxfxwxwwwwwwwwwxxwwwgxwhhwwwwxwwxxxwwwwxxwvxwxxwxxtgvfWWwgfgwGgfvggwwwwwfwwwwwxfvvwGVevwxwwxwfVevvvwwwwwxgggwwwvxfwwgwwwwwwxwhgxfuuxWgwwgVefwxwwwwvwwfwwwXwwwvxwwxxvgfwGgvwwwwwwfwwvwvwwvwwwwwwwgwwwwwwxwwwwxwfwwwvwwwgwvvxfuuWwwwvgvhwwhvwwwwxwwvwvxwxwvxxxwfWWwfgvGgvwwwwgwxxwggwwwwwwwGVevwwgwwwgxwxwgwxwwvwxxxxwwwwwgwgwwwxwghhxhWwwwxggggwvwwxwgwwwxhxWwwwhxwhwhwxxwGfvwwwwwxxvwwwwhwxvgxxwwwxgxwxgvgwwwhxwwwwwwwwwwwwgxwxWwvwggvwhwxxwwxxxwwxhxwwhwwwwwwwgfvvwGVevwxwwwxwvgVefvvwwgwwgvwgwwwwwwwwwgwwwvwwwwfVevwwgxhwvwvwfwwwWwwwxxwhwvwwxwxwwxwvxxhxxxwxwwwwvwwvwwwwwwwwwwhxwwwwwgwwwwwxwhxwxwwwvwxwxwwwwvxwhwwgxxxwwwwxwwwxxwxxwwxxGVevwgwwwwxxwwxwwwgwwxxwxxwwgwxxwxhgxwxwxxwwwwwwxxgwvwxxwwwxxwxhXwwwxhwwwxxwxwwgxwwwxxxhwxxxxhxxxxwxwxwwxxwxwwwwvvwwxhxgwgwwwxwwxwwwxwwwgxwxxxwxwxxwwwwwwxxxxwxxxwvwwwwxwwxxwxugfgwwxVwvxgwwVfegwgwxWwgwwxgvgwwwwgwvwwwwxfgfvvwwwgwwwwgvgwwvffwvwgvwfffwvwwwfvvwxgvwfggewgwvwwwwxwvvwfwwwxwwwwwgvvwwwwwgwxwfffvwwwgvgxwwuwwgwxwvwwwwwxxwwwwuwwuwfwwwwxwwfvuwwwxwwwxxfwwvwwwwvwfxvwvwvwwwwwxfvwwwwggfwwxxfVfvwxwVgvgwxwwfgwwwxxwwgWvxxxfwwwxwvxhxwxxwwwwwxxvwxfwgwwfhwwwxhwxgwxxxxxwxwwxxhgwwwwxxwfwwgwxxfggwwxwwwwgwfgwxhxwwxxxhxxwwvwwxwgxxxwwvgxxxxwgxxxwwxxxvwfvwwxwwxgVwwggwwgwwwwhwVgWvwvwxgwgwxwVfwxhfxvvwWwwwxwwgwfwvwwwwxwgwwwwhwxvxwvwxvwhwwwxxxwwwwwwwwwxyfwvwxwxxxvwxggwwwxwwwwwvwgxxwxxwxxxwfwwwwwwvwwwwwwwwwxxwwxwxwxxgffwwxwxwggwVfgvxxwxwwxwxhxxwgwwwxxxxwwgxxwxgxwwwwwfwwxxfwwvxwhvwxxwxwwgxxxxhgwgwxwxwwwfWwxwxwxxfgwgxwwhxwwwxxxxxxxxwxwwwwxwxxwwwwwwxxwwwxxxxwwwxxwwwxxxxwuggwfwwwgwwwwffwwwxwgWWffwwwwxwxwwwwwwggvfvvgwhgfwxggfgwxwgwvgwggVeggwxWgvxgwxwwwxXgWwwgwwghghVvehwwggwwxhwxvxgwgxwwgwwwwwwwwgxwxwxwvvfvxgwvxwwxxwxwwwgxfvuxgxwxuvwxxwwhwwxwwwgwvxgwvwwWvuxwvwwwwwxwxgxwwggxwwhWwwwwxhwwwxhgwwwwxwwgwwgVegvxgXgwgWwwgWwxxwxwwwwwwwVvehxwgghwgwxgwxgxxwxwhhxhwxwxwhxgxwgXwxwwggwwxhXxwxxwxxxxxwxxxxhxwxxxxwxxhxhgvwwwwgwvxwwwxxgvwwwwwxvwxwwwwwvwxxxxxgxxwwxxhwxxwhxvwwwxxxwxwwvwxxxwxgwxfvhxxwwvxxwwgxwxxwgwxwgwxwgvwgWVvffvxggWwgwxxgVgWwwwxwwwwwvefXwwxxwwwxxxxxwhhxwwwwxwwxfvvhwxwwgwwwgxgwwxxhxxwxxxxwxxxxxwxxwwfwwwwfvxwhxwvwwgwxwhwwvvgxxwwxxxwxxvwwwwxxwhhxxvxwwwxwwwwxwwxxwxxxxwxxwggfwxffvhxxhgXwhwwwgxxXxhhwgvwxxwxxxwwxxwxxgxxhhxwxxwxxwxxxhxwgxwhhxwhxhwwxxxxxxxxxxxhxxxxhwhwfwwxwxxvwxwxxhxwxxwxgxwxwwwxwwwwxxwxwgwxghxxwwwxxwwxwxwxxeWwwfvvwvfwxfggvwwwwxvwwwwvwwgvwfggwfwwgwwxxwvwxxxwxgwwxvfewwggwvwvgxwwwvvwxwwvwgfvvwhxwwvwwxxgwwxwfwuvVfwgwwwggwwvgxwwwwxwwwgwwwugwxxwwwxgwwxwwwxxfgwffuxgwgwvwvwfvwxwwxwxwvxwwvwwwxfwwwwhwxwxwxffwffvwfggwgwwwfgxxwwwwxxwwfffVvvvwWggxxxwxghwwxwxxwwwwwwwwwwxggxwxwxwxwxhwwuwxgwxwxxxwwwxxyxxxxxfuggwvwwwwvwwwvxxwwxwxwwxWwwwvwxwwxwgwxwwxxwxwvwwwwwxhxwfwvxwxxxhxxwxwxwgwwxwxwwxxxxgvwgffvgUffffxwwvwwwwxxxwgwgwwwxwgwgwwwwwwxwwwgwwwwwvwwwgwxwwxxwwwxxwwwwxwxwwxwxxvhxwwwwwwwwwwgwwxwwwwwwxwvwxwwxxwxxwwxwwwwwwhwxxgxxxwwxwxxwwwxxxwxygUgfVvgfwwvxxgwxxvhwxxwwwwwwwxxwgxxhxwwxxwwwwgwgWwwgxwxwgwgwxwxwwxwxxwxxxvxxwxxxwwxxwwhgwfvwwwwhxwwxxgwxxxwxxywxxwwwxwxwwxxxxxxxxuvgwgwvwfwwvgfvwvvwwwfvgfvgwvwgwwwgwwwwwwwgfwwvwwwwwgfvwvgwwwwwvgvwwvwhefvwgwwvwvwvwfwwwxwvVvuwvwwwugxwwwxwwxwvwwwvwgfvvWWvvwvwwvwvwwwwgwgvwwvvwwxwvUwvwwwvgwwgxwwgxvhwwweuvwuvwvwwwwwwwwgxwwwwwwxxuwxwghwwxxxxwwwwwwgfvhfVuwfwgvggvwwxwxgwgwvwwxhwwwgwwVguvwwxgwwxxwxvwgxxgxgwgwxvwwwfwvxggvgwhgxwxwwwxggwwxxxwwwgxvwxxxxxxwxxxxxwgwwgwwvwwwwwwvwwwwgwwwwxwwxwwwxvwwxwxhxwwxvwwwwvwwwvxwwxxxwxgwwxxwxhwwwwwwxxwxwxggwwwvWWvvwgwwwwvwvgvwgfxwwwwvwwwvUwvwwxwwxxwhxwxwwwwvwvwxwwvwwvwwhxwxwwwwwwwwwxxxwhwwxxxwxwwwvgwxgwvwvwxwxwwgwwxwxxwxxxxwxwwhwwwwwxwvwxxwwwwwxwxxwxxxwxwwfvwwgwwwwwwxwwhwwvxwxwwxhxgxwvwxxwwwxwxxvxwhxwgggwwxxvwvxwwwwvwxwhgwwxxxxxxxxxxxxwxxxwwxwxwwhxxxxxxwwxgxfwwwwhwwxxxvwwwxwhwwwvwxwxwxxxxxxxwwwwxxxxwxhxwwxgwwxxxxxwuwwgwgwgwwvwwgfgwwwwxWWvxwwVfgwWWvwwxwwxWVvgwwwwgwxxxgwgwvgwfwwwWvvwWWvvxwwxwwwwgxxwgwwWwwxgwwhwwwwwwgwwxgwxgxxxwgwwfwwwvwxgvvvgwvwxxwxgwwwWWvvwwwxwxwxwwggxwwwvvwwWvvwgvvewwwwwgwwwvxwwwwwwxwgwwgxwxwwwxxwxwwwwwgfgwWWvvvgwwwWWvxwxgwgwwxwgVwwxxvwxxxgwWwxxwwwwxxwwwwxxwwxvwxxgwwwxwxxxxhwwwxXwwxxxwxwxxwxxxwwxwwhXwxwxgxxxWWvwwwwwxvxgwgwhwwwxxxwwwwvwwxxwwxxxwxxwxwxxwwgxxgwwwwwwxwxXwxwwxxxxwxwwxwxxxgxwVfgwwgwwWWvvwwwgVwwxxxwwxxxWWvwwwwxxwwwwxwxwxWWvWwwxwwwxwxwwxwxwxvwxwwwwxgwxxwwxxxxxxwxwwxwgwwwxgwwgxvwxxwxwxxwxwxgwxxwgwxwxxwxwwxxwxhwwwxwxxxxxwwwwxwxwwxxxxwxxwwgxWVvwwwwxwwwwwgwWwwxwwwxxwxwwwwxgwxxxxxxxxwhxwxwgwwwgwwxggxxxwxxwwhXwxxwxxxxwxwxxxxwxxwwxxxwhxxxxxwwxwgwxgwxgwwwxwwwwxxwxgxwxgxwxxxwwxwxxwxxxxxxwvwwwxwxxxwxwxwxwwxxgxxwwxxuwwgvwwwwgffwwffvwuwwgggfgvwwfUgwwwvxgfwffwvwvwwwwgvwwvwwwfvwgvfuwwwvxgfwwgwweewwxvvwwgwugewwwxxwxwwwxVffwxwwwefwvVgevvwwwwgwwxxxwvwwwwwxvwwweewwwwwvgexwwfuxwfuwvgwwxxwwwwghwxwxxwvwvwfUefwwwghfxgwxVffegvwwwwxfUwwUfgwwfgxgvxgvxwxxwxwwwxfvwgwgwgxwwwwxxxgxwhxvwwvxgfwwgwgwhwxggvggwwxxxxwwvwwvfhfwxwgvxxxwwvwwwgvvxwxxvwwxwwwvwgfwgvxwwwwgwwwxwwgwvxwwwwxwxwxwwwxwwwWfewwwwxwvwvVgewwwwxwwwwwxxxxxwwwvvwwwxxgwwxvxxxxwwvwxxwwxxwwxxxwxwwwwwxxwwwxwwwxwwwvwwxwxwwxwwxwwwwgwwxwwxvvxvvxwxwxxffgfggfwxvwhwwwhxhwvwwwwxxxwxwxxwxwxwwxwxxwgwgxfwxwwxxxxhhwxxxxwxfwxxxxxgwxxxwxwwxwwxxxxwxxxwxxxxwwwxwwxxxwxwxwxxwwxxwxxvxwwwxwdfwgwwwvvfhwgvwvvwwgwxwwxgvwwgVfwwvwVgwwgffvgwwgvgwwwwgwwvgvwwvvwwwvwwgwwwvwggvdwwwwwegwvwwvewwvwwufwwvgwwvuwxgxxwwwwwwvwwvwfwvwwwvwvwgwxvWfugwwuVwvwwwwwwwwvwvxwwwxwvvvwvwwwwwwvdvwwwwvwxxwvuvwwvwwxugvvxvwwwwwwwwxvvwwwfgwwwwwgwwwfvfwwwwvwwwgwwgwFvgwwwFgvvwwwxffwgvvgwvwwwxxxwvwwwwwwwwwwxwgwwgxxwxwwwwxwwwwgwwwxwxxwWwgxxhwXxwwxwgwwgwwgvwwwxwwgfwwfwwgwxxwgvwwxhwwxgwvgwwwwxwxwwwwgwwwwxxgwwgwgxxvxxgwwwwwxhwwgwwgwxhwgxwxxwxwwwwwvwwwwvgwwwwvwwwwWguvwwuVwvxwxwwwfwwxwxwwxxwgwwwxgxxxwvfwwwwxgxwxvwgwwgwvxwwxwwgwhwxxxxxwwxxhwxwwwwvxxwvwwwwxwwwwxxwhwxvxxvwwwwwwwxxwwwwxxwwxxwwwwxwxwwxwxwxwvuwwvwuwxxxwwwvwwxwwwwwxwwvwwxxvwxhxwwwwwgxwvwwwwxvwxxgvwwxvgwwwxxwgwhxxwwxwxgwxgxwwxwxwwgwxxxxwwxxwhggwxfxxwxxxxxxxhxwwxxwwwxxwxwgxwwwwxxxwwxxxwwxwxxwwxxxxvgxgggvxgwwWgfwgwgvvfgggfwvxgwxggvgwxfvgggVwgggxxxwxgwwggfwwgvwgwhwgwgfwggvvwgwwwxwfvwxgvxwwwvgvwggwwwwwgvvwwwgwgwwwwwfvwwgvVgvgwvvwgxvwgvwwwwwvwxVwvgxwvwxwwhxwwfvwgwwwxxvwwwxgwggwxxvwwwwxwwwxgwwwwxxxhwxwwwgwvgwwwgfgwghxxwwwxwxhwwxwWgwgvvwgwwxwxwggwxwgxwxwhxxxxwxwwgwwwhxhxwwxxxxwhxwwxxgxxwgxxxxwwxghxxxxxxxxxxWgvwwwxwgwwxhxwwwxxxwgwvxxwwwwwwhxxxwgxxxwxwxxwwwhwwxgxwxwwwwxxwxwwxhxxwxwxxwxxgxWwwwhgwvvwvwxwwwwvxgwhxwxhvwwgwxwxwghwwxxwxxxwhwgwwwvgwwwxwwwhwxxwwwgxwxxxwwxwxxxwwxwwxwxxwwxwwxxwxxxwxxxxhwxwxwxxwxxgxwwhxxxxwxxxwxxgxxwwwwwgxxxxxxxxhvwwxxwxwgxwxxxwwwxxxxxwhwxwxxwxxxwxhhwxxxxxxxwxxxxxxxwxxxwwxwxwxxxxwwxwxxxxwwwxwxxxwwxxxwwxgwxxxxwxxxxxxwxxxwxxxwuffwffvwwwgWuVfvwvfvwwWvgwxgefwfVVfggwfwfVvfgwfvvwxxVfeggvfwwfvgwwgvwwwwvvwxhxwxVVewfvvwwvwxwwxffvwwwwwgwwxxwhweufvvfvwgwwvwVvvwvwwwvvwwwxegfwgwvwgwwvwxfwwwwwwgwUeewffgwvvuxvwgVvwwgvwwwwxvfvegfggwwwwWgwgvfvwvwxgwgwvvvwfevwvgvwfwgvvwwgVgwwvwxgwgwwwfVVWgegvegwghwwfffwggwwgwwwxxxevvvwwwwWxwxwxxwxfwwwwxwWxwhggggwwwghxxxxhwggwwxxxwxxhxxhxwuwweuwwwwwxwxxfgwwwwwvvxxwwxwfwvvwwwxvxvgwfgggwwgvxxvwwwvwwxxxwwwwwxxxwwwxwwwwhwwwvhwwwuwwgwvgwxuwwwxwvvwwvfvgwwfvwgvwwgwwwwxgVVgwvwwgvwwwhxvewvwhwwgxxwxvwvgvghwwwwwwVwvxwxwwwxwfvwwgvwxwwxwxxwwwwwwwxxxwuwwvwvwwfxwvwgvgwwwwwxwxvwwwwwhxwwwxxwgxwwwwxwxxvxfwgxwwfxwxwwxxxxwwgxgwwxxxxwxhwwwgxwwwhwwwwwgwfvvwgxxwwwwWuwxxxgwvxxxwhffggfvwxwwgwwgggwhxwxxWvxwxwgwwgwhwxhwvwgxwhwwhxwxwgxxWwxwwwxxxwxxvgwwxxxxxwvwuwxwxxvgwxwwwwwxwwwxggvwxwwxwxxxwxwwxgwwwxwwwxwwxxxxxxwwxwwwxwwwxxwuwgfvxVwvwffVVvwxwgwxfUVwVuuxgvvxgUfvfwwvgvwgeFwEuvgvvvwfgwwWvwwgtvvfVwEuvgwWufvwwgvewvWfgveFwVvewwwfwvwfeVuuxvgfwggvvwwwfuffefUfwfvugvVfVvvwUfuvgwgUfgeutwwwggwgwfvvwguwwvwvvwwwvwgwvwuwvvwwfWggvwwwxwvvwwvwgwwwxegfwwxvfgevgwwwgwwfgewwvvgvwgwggffwvwwgvvVvvwFevfvwgWWggwVVuwfWwvxhwgVvfwfwWhwgwggwwgvwxwwwwwwwwgwgxwvwwwwxgwwgxxhWggwxxwwgwwxxgxwggwwfwxxhgwwxgwxxwfvfvfgwwgvwfvvvvvfgwwxwwxwwgwvwvxghwxxxwuwwwwwwgwxwwgvwvwwwxxwxvvxwwwwghwwwvxwwxxwhgwxvxfwxwhvfwfvwxvWvwwwwevvgfgvwVvvwwwwwvwggwwvvfwwggxxeugxwvgxwwwxgwgwWvwvwgwgwwwWvvwwgghvwxgwgwwwgxvhwwxxwxwhwxwwxxxxwxvggwxwwvvxwwwvggwxwgxwwwwwwwgxwgwvwxxvwvhwgwwxvwwxwvgwwxwwwwwwwwwwwxxwwwwwwvxwwwwwwxxwwgwvxwhwewvxwwwxwxxwfvgwgwfGwxwwxgxwxxwhhxxwhwxwxxxxxxwhgwxWwwgxxhxgggwgvwxHWhwhxwxwxxwwxxhxwxxxwwxxxxwwvxxwwvxxwxfwwwwWwewvvgwxwwxxwvxwwxwxwwwwwwwgwvwwxgwwwxwwwwwwwwxxwxwwwhvhwwggwgfvwfVwwgxwvwwwfgvfwvwvwwwggwvwwfvvxwgwgwwxWfgwwvwwwxgwgxwgvfvwgxvwgwvwwwwwgwwvgwwvvwfwWvfwwgvwWvfwgwwvwxwxwwxgwwghgwwxwwxgwwfwgwwwgwfwfwfwxxgwvxwxwhghwwwwwwwwgwwvgwxfwwwwwxgfwxvfwwwwwxwxxwgwxwwwwwxwwwxvwvgxggvwWwvvwgggxwwwwgwwxwwxwwxxgwwwwwvwgwxxgwhwxwxxvxhwxwxxwxxwwvxgvwwwwhxwwxwxwxwxwxxxxxxwxxxxhxwxxxwxxgwfwwgwxxfxxhwxwxxwwwwwgxxwxwwxvxwxhxwwwwxxwwwxwwxhgfwwxxwxhxwxxxxwwwwwvgwwgwvgvwxwWwwwxwgwvwwwwwxxwwxwwxwwwxxxwxgWwwxwwvgwvxxwhxwwwwxwwxxxxxwwxwxxxfwwwwhwwxxwxwwxwxwxxxwxwwxwwwwhxwvwwxxxwxwwxwxwgwwwwwwwxgwxxwxvxwwxwxxxwxxxwxxwxxwxxwxxwxxwwxwxxxxwxwxxwwwxxwxwxwxxxxxwwwwxvwxxwxwwxwhxwwxxvwxwxxxxxxwwxxxxxwhxxwwwxxwxuwfwVVVffuvwegfwvwwvVVwgWfgwwxEwvweVfvvgwWfwwwgfwvwgWxwhwxVffweUTvgfWfffvwgvwvggwwwgwxwwgvgefgggwxfggwvwwvwwxwgwwwVvewdfefvgwwvvwwfvgwwvgwgxvgwfvvfvvwwwxwwfwhwwwffuvefVVvvWvvwfgfvvwgwvgwwvwfwVwfvwvfvvfvwwxfwwwvwgvwxwuwgfffgggfvugfwVfVwvfVwVWwgvfvgggfVevwfWggfwwWgwVgWwwvvgvgwvwgwhveexwWWffwgwgwfWxgfwhgxggxgfVgvgewfwgvwwgwhvwwggxxhgxwhxxgvfwwvgggvugwwgwxvvgxgwugwwxwWwguvwWwwwwxwwwfugwwgwwwwxxgxvwggwwgwwwwgwvwwgxvvwxgfvvfwwwwwhgwxwwvwwwwxxxfwwvwwwwgwwfffvvvggwvgwvwfwvfgvvxgxwvvfgvgwwvwhwvVwwVwwhxwhwwfwwvWwwwvgvhgvwwwwwfwwwgwxwxffwgwhwwgxwwwwwgvggwwvwuwfwwvfwvgvwxgxfvwwxwxwwxxwwwvwxwwgwxwwwwhgwgwwvwvvwwwvgwwwwvwwxwwwwwwwwwwwwvwwwggwgwwxxwwwwwxxvwxwgvwegVvgwwgwgggwxhwvWgvwwwxgWgvwwwVwhwwhxwgvgwGwvwggwwwwwgvWwgGwwwxwxvwwwxhhgxxghxhwwvwxWwwgxvwwxwvggxwwvwxwwxwwwwwVwwwvgwwwwwwwfxgvwxwwxxxxxvgwxwwwwfwwxgvxwwvwhxwhwwwgxwwhxxwwwggwwwvwgwwvgugffvfffffvWVugvvwwwwWguvwwggvvwfWvwxwvwwwgvfwwwwxxwwwwfwvwfWvufwfgwvvvxwwxwvwgwvxwwwgwwgvgvvxwgwgwgvvwwxwgwwwgfwvwvwvWfuvwwvwwwwfwwwwgwxwwvvwvwwwwvwwffwvwvwwvvvvwwwvwwwvwvfvfwvwvwvvwwwwwggfvvwvgwwwxwvwvwwwvwwwwfffgVWuuvgvhwggVguvwwxwwwwwxgxvgwxwwxgwgwxwhgwwwwwwwwxggxwxvwwxwwxwgxwxgxwwhxwvwxgxhgwwwwhwwwwwxggxfgwwwwhhgwwxwwVguwwwwwxwvfwhxwwvvgwwxvwwvwwvxwxwwxwxwgwhwwwwwxwwwwwxwwxwxwxwggwxxfgwwxvwwvwwwgwxxwwwffvfvgvWWuwwfgvggfwxggwwwwhgVvuwwwwwxggwwxwwxwxwgWvuwwwwwwvwvwgvwwxgxxxvwwvwvwhwxwxwwwwxwxwwxxwgxwwwwvgwwwxwwwxwvxhwwwwxwwwxwwwwvwvwwxwwwxwwxgwwxwxwwwwwwxvwwwwwwwwxfwwwxwwwxxwWVuwxfggwggwhggwxxwxxhxxwxwxgwwwxwwwwxwxwgfgwxwwxxwxfxwwgxgwghxwwwgwxhghwxxwhwwwhxwxxxgxgwwwggwxwxxhgwwwgwxwhwxwwwwgvwxfxwwwvwxxxxwxxwxwwgxwwvwwvxwxvwwxxvwggxwwwwwxvvwwwxvxwggwxvwxegwgvwwfgwwfggwvxwxwwwwggwfwvwvgfgwwwgwvwvgwxgwfggxwxwxgwwWWfvfwvfwwwvxgWwVgxwwxvwgwwwxfwwwxwgwgwhwwgxgwwvwxxgwwgwfvVvwwhwWwuwvvwxwxXwwwgwxwxwwwwxvwhwxxxwwwxfwWvvwgwuwvfxwwxgxWvxxgwwwggwwxxwwwwwwwwwxhwwxvwvfwvxWVevwgggwfggwgxWfVgwwwwwwgwwwgfwvhwwgxxxxgwgwwxgxwxxxxwwwxwgwxwwwgwvwgvhhxwxhwwwwxxwwxwxxwxwwwwwhxwwwxhxxxxwxhvwggfxwwvwhfxwwgwwwvwwvwxxxwwwxwxwwxwxwwwwwwwxxgxwxwwvvwgxwxwwxwvxgvwwxxwwwwxwhwwxwwgvggUwggwfvgwwgxvvWWwwwwwwvwwwwwxxxwxwxxwxxxxwvwwggvgwwwxwwwwwhxwwwwwwwxwvxxxhxhxxwwxwwwwvwwwwwwwxxxxwwxwwwwxxxwxxxxxxxxxxwwwwwxwwwxxvvxxwwxxxwwxwxwxxxxwxgwwgwwwwxgxvwwhwhwfwhwxxxwxwwwwxxwwxwwgwxhwvgxwgwwwwxxwwxwxwwgxhgwxxwxxxxgwxxxwxwxwxwxwwhxxwxwwwghxvxwwwwwxxwwxxwwxwxwwwhwwwxhxwxxxxwwxwxxwwwxxwugwwguvxwvwvwwgvuwxfwwwwwwxguvwufvwwwwwwffwwgwwwwwxwwfwwgVvwwwvwwwwwgwwwgwwggwwvgvfwffwgwwfvvwvwwwxwxwfgwxvwwwwwwwwwffwwgwwwwwxwxwvwgvwwwxvvwvwwwxwvwvwggfvvwxwwwwvvwwggUwwxgwwvvwffvwwxwwwvwvwwwxwguvwggvvwxxxgggWvxggvwwhxxeUgwgwwwgwxUvwfggwgwwwxxxwfvwwxwgwxwxwwwwxwxxxwfgwgwwggxxxwwxxxgggfxwhwwxxxwwvxwwwwwxwffwwxxwwwwxggwvwwvwwvwwwwwwwxwwxgwwxwwgfwxggwgxVxwvwxxwxwvvxfvvxxwxwwwwxwwwxwxwgwwwfgwxxwxgfwxgwWwwwxwfwffwgwwxwvwgxvwwhwwvgvwwwwwxwwwgxxgxxwwwwggvwwxwxxwvwxhwwgwxwwxwxwxxxxvxvxwxxxwvwwwwwwvxwwwxwxwwgwwwwwgxwwwwwwxxwwwwxxxhxwvwxvxgfwwwwgxxxfwwwgxxxxgfvwwvwwxwxxwwwwxWhwxxwgwWxwxxwxwwwwgwxwxwxgvxwwWhwxghwxxvvxxxxwxxxwwhvxwxxwwwwxwwwwxvwxvwwwxxwxhwwwwxxxxxxwwwwwwwvxwxgwxwwxwwwxxfwwwvwwvwvwwwwfvwwggwvwwwwwwVfwwggfvvvwfgvwvgvvvuwWvwwwgwxwvwwfvwwggvevwvwwwwvhwvvwvvwfwWwvwvggwvhvwwfvvxvwgewXwwwgvgwwvwwwwvwvewvwvugwvwgvvwwwwgwvvwwgvwgxwvwgwgvxwwwwgvvvwwvwwwwwwvwVxxxvwfwxvhuxwwxvwxgwwvwwgvwwgwxvwwwwwvgwxwwwhgWwwgwgwwvwwxwwwgvwgwwwgwwvwxggvfgvvgwwxwwwwwwwwwwwwxgxwvwwwxwwwgwwwxgwwvxwwwwxxxvwxwgxxgwwwwxwggwwwwwvxhwwvwwxwvwwwxwwwxvwxwxwxxwwxxvxwgxwxwvwwwwwxwwxwxfwxWwwxwwwwwxxxwwxhgwwxgwxwgvwwxwwxwgwvwwwwgwwwwgfhwwvewwvxgwwhgwwxwxvgvwvexwxvgwwwwwwwwwxxwwwxwwwwwxxwvwwxgwwwwwwxwwwwxxxxxxwxxwwxxwwxxvxxgwxwgvxwwwwxxxxwvwxwxwxwwwwwxwxxwxgvwwwwwxwxgwvxxxwwxwxxwwxgwfwwwgwwwwwxxvxwxxwwwxhxwwxxxxwwwwhxxxwwggfwwwxwwwhxxxxwwwxwxfwwwwwwwxwwgxwwwxwxwxxxxxwxwwxwxxwwxwvwffggfvgVevgwvwfWvfgUUgvgvgwxWfUvwxUuuwVFevwgggVdfggfvvgwwwgfUvvfufgTwgVVvwggVvuggfefggeVvugfughvgwwWfegwgffffwwwwgwwvWVuvwfvTuewWFuvwwwwfevwwgwgwgvwuvvvfwuxveuuwgwvwvwvwwxwwfwvvfgwvvfvguwwwwwhwwfgvefTwvvwgwwxxxwvwvwwwfVWewwxfwuwwwxggvwwVwWfuwgWgwwgwffwewhgvwggvwgwvwFvexvwhgVffghWvguwhggfwwgxwwhwwwwwwwwwxxxgwxgwWxgwgwwVwggxhgwhgxwwghwxwxxxghgwwgwxwggwwwwwvfvwwwwwwfwgxXgvwvwwxfewwvwwwxxwfwwxwwwwwxwwwgwwwwwwwwwvwwghwwwwwuwUwwxxwgwvxwxxvwwwxwxfvwwutgwggvwhvwvvvxwfwwfWgeuvwwgwwhwxTugweuwvwwfuvwxwgwwxwwwwgvwvgVwgxgwwwwwgghgvwwxwwwvgwxgwwwvxwxxxfwwwgvwvwwxwwxwxwwwgxwwwwwwwxwwxgxwxvvvwxwwwxxxxwwxxxgxwwxwwxwvvwvwwvgvxwxwvwwwwfvwwwxwxwwxgxwggwwwvVwgwwwwwevwwwxgfwxhgwwwwwwwwvvvxwxfxwWxxxwwwwwgwxvhxwwwwwxwxxhwwwwxwxwhgwwwxwwgwwwwwxvgWhwgxxxwhwwwwwwxfxgwxxwhwxwwxgxwwwxwwxwxgvwxxxxxwxxwxwxvgwwwxxwxwwwwxwxwxwxvvxwxvwvwwtfggwvwgwxfwggggxwgwgxwwwwvwwvvfWgvwwwWwvwwWVwvwVwwfwwwgwvxfvevwxwwvwwvwwwwwvwxwwWwxwegFfgfxFwfgwwgwwwwwgggfwwxwgwwwgvvxvwvxwxwfuwfwgguwwxvwxwwWxgwvwgwuxwwgwwvwwxwwxwvgggdxwwxvwwggvxvhwxwwwgvwvwgwwxWwwwWwwgwggwwxwwgggxvgfwfwgwwwwwvfwwvwfgwvwxwxwwfFfvwggFwfgwxxwWwvwwhgwwxhwwxvwgwvwggxwwwxwwgwxwwwwxxgwxgwwvwwwwwwwwgwwxxwxxggxxxWwgggvwvwvxwxwuwwgwwwxwwwwggwvwwxxwwwwwwwhvghwgxwxgwwwwwwwwwxgwwwxwvwhxwwwxxwvxwwwwwxwwgxwwwwwwwwfvwxwwgwwwxwwwwvwwwwxwwxwhxwgUgfgfuvgWxwgvwvgwxvwxxxxvfwwgvxfwgxwwgwhwvwxxwhgvwxvxwxwwwxwwwxwwwwwvwwwwwvxwwwwxxwwwwwxwwvxwwwxwxxwgwfgxwwwwxwwxxxxwwxwwwwxwwxwxwwxwwgfgxxggfhwhxwvxxwwgwhxxxwggvvwwwxgvwwxxxwwwxwwxxXwwxwxwwxwwwWhxxxwgwwxwxwWxxhxwwxxwwwwwxwxwwxxxwxxwxgwwwwwwxwwxwxxwwwxxwvxxwwxxxxxwxwxxwwwwwxWwwxwxxgwwwxxwwwxwvwgwvwwwwwwwwwfVfgwfgwggfvgvgwwwvvgvwwwwwwwxffefWgwevwgwwwwgwwvwfvwwwwvwugwfvvfgvwefwggwwwegfwfwvuwwwwwwwwxwvvgvxwvuwwvxvwvwuwwvfwugVwvwfwvwwvvwwwwxwhgvwvwvvwhfwugvWwwwhwwwxgwwxvwwwwuwwwwwvwwwvwvwwwwwggxwwwxwwwwvvvvwwwwwwwwgfgwwxwwggwwgxggfwugwxwwwwvwwwwwgwxhwVwwwgwwgfwwwwwwwwxvxgxwgxxwhwxwvgwwwwxxhwhwxhwwwxxxwwwwwxxxwvwxxxwwwfwuwwvwugwwwwwwgwxwhgwxwwwwwwxwxxwxvxwxvwxwwgxwfxxwxwxxwwxwxxxxwwxwgwwwwhvgvhxxxwwgwwwvwwwwwwxwwvwfwgwwgwwvwwgggwwwvwwwxxwvgvxwwwxxwwwghvwvwwwwvwwwxvxxwwwwwvwvxwwwwwxwwwxwwxwwwwwwwwxwwxhxxwwxxwwwwwxwxxxwxxxwwwxwwxwxxwwxxwwxwxwwwwxwwwwwxwwxwwxwwvxwwwgwwxwxwxwwwxxhwxwwxwxwwwgxwwxgxxxwxwwxxhxxxwxxxxwwwxxxwxhwxgxhwxxxxwwxwwxwwwxwxwxwwwxxxwwxxxxwxwxwxwxwxxwxxxwwwxxwwwxxxwxxxwwwxwxxwwxxwuwvwwwvwgwwvwfggfwwwggggWvgwvWwgwwwwgwxgxwwggfgwuggwwxwwxgwwwvgfwwvwwwvgfWvuWwfWwwwhwxgwgwvwwwvwgxvxwxwvgwvwwwWvgvgwwxwvxvwfvxxwwfggwggtgwwvwxgwwuxvvgwwvxwwwhgwuxwWwwwwwfwwfwwhwwfwuwwwGvwxwvwguwwxwXwwxwwwvwwvxwxgfwwwwvwwwwvxwwwwgwvxwgwxgGfWwfWgwxxxwhwwvwwxwwgxxwxxgwfwwxgxwwwxwgxwwgxwxwxwwwxwxxxxxwwxwwwxxwxwwwwgxhwxxhwxxwwvgxvxhhwxgwwhwwwwuwwwwxvvvxwxfwwwxwwvwvxwwxwhxwuwwxxwwxvwwwxwwXwwxwvxwgwxgwxwwwwwwwwxxxxwwgfwwwXwxvwwvgwxwhwgvxwwwvxwWFwvvfGwwwwwwhvvfwxwxxwxxffwgwxwwvwxwxwwhvwwwwxwxfwwgwxhwwxxxwwwwxxvxxwwwwxxwxxwwwfxwwwxwwxwhwwgxxxwxwhwwwwwwxwwxvwwwxwwwwwxwwwwwwwwxwxwwwwhwxwhhwwwwxxxwxwwwxhxwxhwxxxWwwwwWwwxwwxwwxgvgwwxwhwwxwwvxwwwhxxxwxvwxwwwxgwwxxwwhxwxgxxwhxxgxwxxwxxxxgwwwxwhxwgwhxwwgwwxxxwwxxwhxwwxwwwwxxxwwxwwwxxxxvhxwxwwxwwxxxxwxwwxxwxwwwxxhwwgxwxwugVxVwgwvwgwgwwvxxwgwwwwwvwwwxwwwwxwwxwwxwwxgwwwvgewvwgwggvwwgwwwxwgwuwwxgwfggvwwwgwwwvwwvwwxwwwxxVvxvwvWvWvfwvwwwwgwxwvxwgwwwwwvxwwxwvxwhxxxxVvgfwvhfvwwwxwufgwgwxgwwwuwwvvwhxwwvvxwxxxwwxwgvwwvgvwfwvfgwwgggwxgwxvwwxwuxwggwxgwwhxwxxxgVwxwxxgwwWgwhwwxxxwwwxxxwgwwwhhwvwwxxwxxhxxyxxVvWvwvvwwwxxwwwwxwxxxxWvxgxxxwhwwxVvwwwxxwxwwwwwhwxxxxvwxvwgwwxwwxgxwxxxxwwwxwgwVfWgwwvwgwwxvxxxwxxwwwwxwwxwvwwwvuvwvgwvuwwwwwwgwxxwwwxwxvwwxwhxxvwwxxvwwwwwgwwwwwwwxwwxxwwhwwxvfwwwwxgxxwxxwwwvfwwvwwwwwgxwxwwxvxwwwwxwwwxxWfWwwwxwvwwxwwwxxwxxwxwxvwhxwxxwwxwwgwwgwfWwvxxxxwwxxxwwxxwhxwgwxxxwwxhxgxxwwwgfvwwxxxvxxxwxwxxxxxwwxwxwwxxwxxxxwxwxxxxxxxuwwvwgffwwffgwwwwvwfxwgwfwwvfwwwvgwwwwxxxwgwwgwgwwxfvwffwewvWvwgwwwwwUgwgvVfwwwxxwwwgvwxvwxwwwwwwwxwwxwwxwwxwwvwwwuwwggwfgwwfwfwxxwvwxwwwwwwwwwgwwxvwwwwhxvvuwwevwxfvfwxwgevwwgwwwwwwxwwwwxwfxxvwxwwwxwwwwxwvgwfwfwWvxgxwwvwVxwxWwwwxwxvvwwwvxwwwxxwwxxhhhfwfwwwvwfwwxwwhggwwwxxgwxwwxxxxgxxwwwxwxwwxwhxwwxxxwxxxxhwwvvwvxwxfxwwxgxvwxxxxxwwwxwwvwwxwxxxvwxxxxxxxfwvwwhxwgwwwxwwwwxxwwwxxxwxwxwxwxwwwhwxvvwfvfwxvvfwvwfwvwwwwwxxwwwwvgxwwwxxwxvgvwvxgwwvfwwxwhwwgwxwvxfgwwxwwwxxwgwxvwxxwxwwwvgvwwwvwgwgfwxwvwxxxxxwwxgwwxxxxwxwxhxvxxxwvvgwwwwwwwwvgwxwwwwwwxwwwxwwxwwwwwwwwvxwxwgwvwwxgwhwxwwxgxxwxxxxxxxxxxxwxxgwxxxwxwhgwgwvwwwwgwwwxgwwwxhwwwwxxxxxxxwxwxwxxwwxwwxwwvvxwwgwwwwwxxgwxhhwwggxxxvxwwwxxxwxxwxwxwxvwwxgxwxxwwxxwwxxwxwwxxxxxwxuwgxxwwwgwxwwwgvvxwwgwghvwxwwxxxwxhwxwwwwwxfvgwgwwfvwwwgwwwxxwwwwvwwwhxwwgxwxwwxWwvwxwxxwwwgwxgggwwwfgfWvwwvxewvxxxxhxwvxwwxwwwxxxgfgvwvxuwxvvwwvvxxwhwwxwwwwwxwvxwxxwwxwxxxwxgwwgwggwwwvxhghxhhgwwwxwgwhwXwxxxxwVwwwxxwxwwxgxxxwgvwxwwwgwwgxxwwwgxxxwwxxxwwxxxxxwhxwxgvWhwxuwwwwwwxxxxwwgxxxxxxwxgvwxwgxxwfxwwwxxxgwxxxxvxwwxwwgwwwvgwxgvWgwxgxwxxxxxxwwvxxxxxxgvwgwxvwvwvwgwwgwwwxwwwvxwxxwgwfwhwvwwhuxwwwwfwxwvwxvhxxxxxxxxwwvwwuxwgvwwxwxvwwxwxxwxhfWwxwxxwxxgwwxxwxwxwxxxxxxwxxxxxxxxggwvwwwhwwhxxxxgwwxxxxxwxxxxgxxxxhwggxuwxxwxxxxwxwxxxhxxxxwxwxwxxxwxwxxxxvwwxwwxvwxgvwvwxxwxxVfwwWwwwwxgwwvwxgggwwgvvhxWvvwgefVffgvwwgfwgfwWfgvwWvwfVfffvwwwwxgvfvwgvwwxwwxwvwwvwwggfwwwgwwvwwxvwgwwwwuxxwvxwwxxfgweevwwvwxuwxUegvwVvgufwgvwwvxufgwxvwwfuvwxwwxwvwvxwvwwvwfvgwgwwgehvgwguxwwgwhvvwwWvwwxxgwwwxwxwwxxwwwfvxfgwwgVWfxgwwgwwwhxwxWwwxxwffVfggvhwwxxwgwwxxxwxhwwwwxwvwwxxwwvwxxxwwwxxxxxwxwxxxxgffwwwgvwvwxwwxgVwwgxwgfwhvwxwgwxwwwxgxxggvvwhvwwwWvwwwWxvxwwwwxwwWvwvvvwwwwvwffwvxgwxwxxwvwxvwwwwwxwxwwxxwxwxwvwwxwuxxwwxwxwvwwxxxwwxwhwxxxwwwwwwxxvwgwxwwwguwwwwxxwvvwwxwgwxgvwxgwwwxxhwwwxxxxwwwxxxvwxxxxxxxxxwVxvwgvxxxxwgxxxwwwwwvxfwxxhxxxwxxwwwxxxwwxwxxxwxwxxhvxxwxgwwxxwxwxxxxxwxhvwxxxwxxwwwwwvwxwwuvxwwwwwwwvwvwwwwxggvwxwwwwwxwwwgwxwvwgwfvwwxwvvxvvwvwvfuvxwwgwgvwhwwfwgxwvwxxxxgvwwwwwxwxgwxwxxwfwwfWgwwwvffwwwwwwvwwwwguwhwwxwfgwwfvwwxxfevwwwwwxwxxwvwxwwwwxwxxxwwwwwwwwxxwwwWwwxvgwxgwxxwxxgvwxwxxxxwwgvxwhgwxxgwvgwwwxwwxwwwxwWgvwhwxxwxxwwwxxxwwwxxxwwwhxwwwwwxxxwgwwwwwwxxwwwgxwxxwWgvgxwxxxgvxvxxwwwwxxxxxwxwvhxxwgvwwwwwwxwwfxwwwwwwwxwwhwxwxxxwwwwwwxwwwwwxwhwxxwwwwwwxwwxwxxwwwxfgwwwxwwwwxvgWvxwxwvwwwwwxxxwxwxxxxxwvwwgwwwxwxxwvhwxxwxxwxwxwgxwwwwwxxxxxwwwhxhwgxxxxwwgwuvxxwxxwwwwgxwxxxwxxxwwxwxxxwgwxxwxwwwwwwwxxwwxxxxxwxxwwwwxxwxxxwvxxxwwwxugwwwwwgwwxwwwgvhgxuggwgvwwxwwgxxwgvwwwgwwwwwwwwxwwgwvwxvwffFwgwvwvfvhgwgvvvwwwgwgwfgwvxwwvwxwggwwwwwwwwxwwwwvxwwwwgwgvgggwgvwggvggwwgwfwxxxwwxxFVuvwxwwxwwwvwxwvwfuvwgwvxwwFVuffgghwwgwwgwwwvwwxwvwwwwwxwxvxwwxxwgwwgxwwwxgwvxxhgwwwxxwwwxwxxwfFxhxxwxxWwwxxxhvxwxwwwxwwxxwggvhxgxwwwwxxxgxxwvxxxwwwwwxwgxwvgxvxgxwgxxwxxwxxwggwwwwxwwwfvwwhgxvxxwxwvxwwxwhhwwxxxgvwwxwwxwgwxwwxxwwxwxwwxgwwxwxwwvxxgwxwxhxwwwwgwwwxgwgwwxfghwxvwxxWgwxxxxwvxxwxxhxwxwxgwWgwwwwxwxxwwvwvxxhxwxxwvxwwwwxxxxxwwxwwwwxxwwhwgwwwwwxwvgwwxxXvwexgwxxxxxwxwhwxxwwwwgvwwwxwvxwxwwwwwwxwxxxwxxxxwxwvwxwwwwwhxwhwwhxxxwwxxxhxwxxxxhgwxxxxxxxxxvxxwgwwxwxxwwxhxhxxwxxwxgxvwwxxxxxxxxxfwxwwwxwxxwvwxxxxgxxxwxxxxgxxwxwhxwxxxvxwxwxwwxwxwwwwxwxxwxxwxwwwxwggwwwwwwxwgwvwxwwwxwxvwVwwgxhwghwxwxwgWfxhwwxfwwwwfgwwwwgvwwvwhwfwvgwvxwwwxxgvuvxwwwwxxxVwvwwgwvwxvwwwffwfvxgwxwgfWuvgwxxwxxVwwhxxxwxgevvvvwxfwxgwfvvwwwvwxwvvuwvwwgwwvxwwxwxxwwwxwgggwhwwWgxgvxxggggwwwxhWggwwwwxxwwgwxxwxwxwwwgxxwvuyxwfvggxxxxxwxwwwxxgfWwxwxgvxvwwxwxxgggxwwywwxwxfvwwxwwfxwwwwxxwwxvxxwwxxxwxxxwgwgxwwxxxwhwxggwwwxwxwxffWxwwxxxxxgfwwwwxwxvwvexxwxxxvvwwxwhvvxgggvwxxxxgxggvwxxxvhwxvvwwwwxffvgwxxxvhwxxxxxxgfWwxggwhwgxxxxwwwxxxxxxxwwwxxwwhxwwgwxwxwwxwxxxwghWwhwfwxwwxxwwxwwwwxxwxxxwxwxxwxxxevvgggxggvwWfewwgfgggvfwwwwvwVvwwxwvwwxVggfvwwwvxwwWuvwwedwgVgWvfwggwgwwwVvfxggwWvfVewvwfvuwfuvvWvvwwgghwwwwxwvwvwgWgwwgfwwwVfvvfhfvvxxfgvvwwwxwgwhxwfwwxwwwxvfeufwvwevfwWwhgFeuwggwwvxwwxxgxtvwfvggwwwvwgwvvfuvwwwwwwgwgwggwgwwwwefwwxWvgwhwwwgxgWwfxwwgwwVwfvvgvwvwwwwxxwgwwxwwgwvxxxhwgwwwwhgwgHxhXwfvhwggxwwhxhhwgwggxWXwxgwfhhwxggVxwxwwxgvgwwwwgwhwwgwwxwxxxxwxvxxxwxxwxwfwvXwwwwwxwWwfgxxxxwxxwwwxxxgxxwwwwwwwgwxwgwgWwwwwhwwxfWgfwvwgxwxwhwwwwxxxgxfvxxwxxwfggwUvvgvvwwvfwfwwgXgwwwwwxwwvwwgxxxwwwxwxwxxxhwxvwwwwgwwxxxuvwwwwxxwxxxwxwwgxxwwxwwwvwhxxuwwwvwwwxwwgvvfvwwwwxwwwwwwwwwvwwgwwwwwwhgvgwwhwwwwxxgVvwwgwwwwwxxxxhwwxxwxxxxxwxwwxxxxxxgvuxwgWwwxxwhwwvWWHgxwwwhxxxwwxxxwwxhhxxwWwwgwgwwxhwwxwxxxwwwwxxxxxxxwxxxxhwxhwwwgxfxwwwxgxxwxwxxwwwwwxxwxwwwwwwgwgwwwxxxwwxwwwwwwxwxxwwxwxhwvwwwwwvgxwwwwxfwwfwwwwwwggwvwwxxwgwxxwghwwwxxgwwwwwwwwwwxwwxxgwwwxwwwwwwxwxwxwxwgwvwwwwwwxxwwgwxwwxwwwwwwwwwxwxxxwwxxwxwxxwwwwwgxwxwwxxxwxxwwxwwxxxwxhwvwxxxwhgwwxxxxxgxxxwwxxwxxwxwxwxxhxhxxxxwwxwwwxwxwxxhwhxwxxyxwxxwwxwxhxxwxxxwwxhxhwxxxxxvwwxxxxwwxwwwwwxxwwwxxxxxwxxxwwwwwxhxwwxfwxxxwhxhxxxxxxxxxxxwwwxxxwwwxxxwwwxxwwxxwxwxwyxxwwwxhwxxwxxxwxxhxxxxwxwxxwxxxxxxxxxxxwwxhxxxxxxxwxhwxxxxxxxwwxxxxxxwwxwxxxwwxwwwxxxwxxxxxxxwxxxwxxxxwxwwwugxgwwwgggwwwhvgxgwxgwwwWwwwwgwwvxwgwwwwwwwwgwgwvffgwxfwgvwwhwwxwwwvwwwxxwghvvwvwwwhxwwwwwxwxxxwwwVffgvwvfwhwgwfgwwgwwwxvvuwfvgfxxwwvwvwgwwwfvwfvfvfwgwwwwwwxwvwwwxwwvvwxvgwxxgwxxxwwwxxwwwwgvxwgggvwwggxxwxgvwxwwwwwwwwwxwxwvwvxwwwxwxxgwwwwwwwWgvwwwwwxwwxxxxwxxxxxwgwugwxwxhgxxxxxxxxxwvggwgvgwwxxxggwgwwxwwxvvwxwwxwghwxxxxgwevgwwwwxxvwwgwxwxxxxwwvwgwwxxxxxwwxvgwwfwwwwvxgwhxhxxwwhwgwwwxxxxxwxwwwwwvxghvvwwgwwxxxwxwwwhxxxxxxgvwwwfgggwwwgwwxwhxxxfgwwwxxgxwxgxxwxxwwwwgwwwxwxxwxxwwxwwwwwxxxwxxwvgwwggwgvxwwxxwxxxxwxxxxwxxxwxxxxxwxxwxxWffvwghxwwwwwxxxxxxxxxwwxxvhxwxxwxxwwwwwxwwwwwxhxxxwxwwwxwxxxxxwwxwwxwwwxwxxxxwxwxxxfgwwgvwwgwgggfwwgwxwwgwwwvwwwvwwffgwwwwxvfwhxFwwfgUvvgwfwvwfgfwhwwvwgwvvvvvvwwvvvgfvwwwxwwwhxxwwvgxfgvggwgwfwvgwwwwwwwwwxgwwfwwwwwwxxwggvgwvwgwwxxxwwhvgfwfvvgfvgwffvwfgvxwwxgvvvwwggvfvfwvuggvgwwvvwwvWwwvwwuwwwwwxwwwgwfwwvxxwgWhwgfvvwwwvwwwgwwxxwvwgwwxwfxgwwgxwfWWwwgxgwwvgGgwwxgwwwxwxgwvwxxwwwxwxgghvxxwwxwgwwxwggwwwggwxxgvwwwxwwhwxwvwhxxwxxwwxhvwxxwxwwwwgwwwhwgwxwgxvwggwwxgxwxvwvgxwwwxwxxwxWxwwwxvwxgwwwgwhggwwxwxwxwxwwxxgwvwvvfxwxxxxfgfgwwwwwvvwwwwhxwvfwwwwwwxwwwxwwxxwwwgxvxwgwwxxhgxwwwwhxwwvwxwxgwxwxvwwxxxgxwxxxwwwvvgwgwwxwvgwxwwwwvxwwwwwwgwxwvwgwwwwxwfgwxgxgxxhvwxwxwwxxwhwwxxwxwxwhxxxwxvfwwwwxwwgwgwwxxxxgxxxxwwwxwxxwwwwwxwxwhwfwxhwxxwwwxhwwgwxwxwgxwwxxxgwwwwxxwxxxwwwfxxwxxxfwwxwxxwxxxxwwxxxwwwxwwwxwhwwwwfxwwxwxwxxwwwxxwxwxvwxwxxwwgwwgwwvxxwwxxwwfwwwwxxwwvwwwwvwxxxxwxwwwxwwgwfxwwwwxwwwywfwxxwwxgwxxwxwwwwwvxwwxxwwxxwwwwwwwxvxwxxxxwwxwxwwwwxwwxxwhwxxwwwyxxxwywwfwxxxxxxxhwwwxxwwwxwwwxxwyxwwxxxwxwwwxxxxxxxxwxxwfxfwwwywwwwywwxfwxxwxxxxwwwwwxwfwxxxxfwxxwwxxxwxxwwvwxxwwwxwywxwwwxxwxxxxxwyxxwxwwwxwwwxxxxxxwxwwwvwxvxfwxwwxxxxwxxxxwwwxxxwxwxxwxwxxgxxxxxxxxywxwxxxxwxwxxxxxxxxxxxxwxxvwxwxxwxxwwxwxxxxwxxwxwwxxxwxwwwwxxxwwwwxwwwxxwwwwwwwwwxwggwwgwwwwwwwgfwwxwwgvhwwwwgvwgwvwwxxwwxxxvwxxwvwwxxwwvwwwwwwxxggwwwwwwxvwwvwwwxxwvwvwwxxxvvvwwwwvxxwvwwwwxxwxwwwwwwwwwwwxgwwxxwwxwxxwgvwgwwwxxxwxwwwxxxxxwwwwxwgwwxxwxxxwvwxxxxwwwwwxxwxxwxxwxxxwxwwwwwxwwwwxxxwwwwwxxxwwxwwxgwvwwxxwxwwwwwxxxwwwwwwxxxxwwwwxvxxxxwvwwwxgwwxxwxxwxwxwwxwwxhxwwxwwwxxwwxxxwwwxwwxxwxxwwxwxxwggwxwwxwwxgxwxwhwxwxwxxxwxwwwwwxxxxxwxwwwxxxxxxxxxxxgwvwwxxxxwxxxwxxwwxxxxxwwxxxxxwxwxxxwxxxxxxxwxxxxxxuwxhvwwwwfwgvwwgwwfwfwgwgggvvwfwwwvvwhvgwvwffuwwwxgvwfgevgfvfwwwxgwwxwwwwvgwgWvvwwgwggwvwgwgvvwwgwwwwvwwwvwWwxvwfwwvvufxvwvvweuvxwxwvfwwfwwxwwwwfuxxwwwgwgwuwwvgfwfvwwwwwwfvvvgfvvvwwwwvwvwwwwggwhxwxwwvvwvgwwxxwgwxwffxfwwwwwexxwxvwwwxgwvvxVgvgwvgwxwwwxwwgwwhxxWgxfwwvwwfgwwxxwghwgvwxvwWwwhhgVfwgwgwgwwXxgxgxwgggxhwgwxxxvvwfvgwxxxwwgwxwwwxwxwgxgfwxwxxhxwwwwwhxgxwfvvwwwwwghxhxhhfwwxxghwwxwwxxxxwgwwwwxwxwwxwhwxwwwwwvwfwvwwwvvvfvwxxwwxwwwwxxwxwxxxhxwvwwvvwxwwwfvvwwgvwwwvwwwxwwwwxxxxxwwvvwwwwvwwxvuwwwwwwxgxxgwwwwwxwxxwggwwxwxxwwwxwwwwxxwwwwvxvxwxxwxwwwxxxxwwxVfffwwwvxgwwxwxwwwxwgxwxxwxwggwxxxevwhwgwwwwxxwwwwwxxwxwvhxhxxxwwxwwxxwxwwwxwxxxgvwgvxwwxwxwhxxwxxxwxwwxgxxgwxvgwwxxxxxxxxuwwwwwwgwwfwxxUwwgwwwwwvwwgxwgwwgfggVfwwwgxfxhwwwwwfwWvwwgvgghUfwwwwwWwwfvgvwwgwwgwwwwvvwwwxwwfwxggwwggwwwgwhfwwuwvwgwwvwwfgUgwxvvwwwwgffxfvwwwwwwuvwvwwXxxwfwwwwvwwwwwxwwwwUgwVwwvwwfwwwwvwvwwxvgwwwwxwwxwwWwwwxwwgxwfwggwWgwxWggwwxwwxwxxxxvwgxwwwwvxgghwxwwwhwxfwfwwfwwwwwwwwwxgxwgxhwgwwwwWwhwwwwwwvwgwwhghwxhwxghhwxwgwfwxxvwxwxwwwwwgwxxxwwwwwxhwwwwxxxvxxWhgwxwfwgxwwxwwwwwwxWwxhgxwxwwwwwgwxvxwwxxwwwwhwwxwxwhgwwwwvwwxuwgwgxwwwgwxwwxwwwxwwfgwwwhxxxxgwgwxxwwxwwgwwxhvwwxwwwfwwxhxwwwxxwxxxxxwxwfwwwxwwwxwxwwgvwwwxgggWwvwwxxxxwxxxXwhxgxwxxxvwxwwxwxgwgxwwwwwxxwwwxwghwvwwxVgvwxwxxxxxxgwxwxxwwxxwxxxxwxxxxxwxvxfwwwwwxwxxxwwxxxyxxxvxxxxwxxxxxxhwxwxxwwwwwwhxxxxxxxwxxwxxxxxwxgxxwhxxwxxxwxwwxxxxwxxxwxxwwxxwxxxxxxvwwwgwfwwgwxgvwvvwvwwgvwguhgvwwwvfwwwwvxwuggwwgwxwwfvvxwfwvugvgwvwVuvwgwgfvwvwwwwwefVwfwgwvxwvwwWwfvgwggwvwvxxxwgwgxfvwugxwvvxgwwvVvvwgwxwwwggwwwwwgwfwxwwwwwhxxwffvVvuwuuvwfvvgvvwgwgwwwxwwxfvvwvwvwwwxvvwwfwwvwwwxgwvwxwwggwxvwwwwxVwfwxfwxxhWwfxgvwvgwgvvxwvwxgxxgwxfhvxgxxxwwwwwxwxgvwxgvgwwxwhxvwwhhfgvwxvgWwwxhxxwxwxwxhgxxwxxwggggvgwgwwwgwwwwwgxxxxwwwhwwxxxwvxxwxVvgggwgfwwxwxwwfwwxwwwxwxxwwxxwwxxxxxxxxwwygwgxvgvghwwwgvhVwvwwxwwxxhvvxwwgwxhxxxwxxwxwvgfwwwwxxwxfvvggfwvwwwxgwwxwwwwwwxwxxwwxxxvwxvvwgxwxgwwwwxxxxxwwwwwwwvwxxwxwwxwxwwwwwvvxwwwvxxxwxwwwxwgxxxxwxxxwwxxwvxwwxwxwwxwxwgwxwgxgvwhwwwxgwxwgxvgwgwxxxwwxwxxxxxhxxwxxVvwggggxxxxxwxfgwhXVxxxxxxxxwxgwxhwxxxxgwvxwxxxgwwxxxwwxxxxwxwxxxwwwxwwxxwxxwwxwwxwwxxgwxxxxwwwwxxtwwwvwwwvwgwgwwvwwvxwgwVwfgfwVfwVevwgwwwVxgvwwwxwwwwwgvfvwwVfgxgvvwwggggvvfgfwggfvvfgvwfwwwwwwfwwvWffvwgwwwwwfvwfvgwwfvUvwwgfwgggwxxwvgvxdvvfvxwvhugwwwwwvgwvwwwvwwegvvfwwvwwgvwwwWvvgxvwwwgwfwvvvggwvwhwwwwwwwgwwwxxwwwxxvwwwgxwgVwwgwvFWvwggWwwgvvwxWwwwxhxfgvhgwwwggxwhxvwvwwhfwUwvxwwwvgwvgghwwvwwXvwggggfxxwhxxxwhwwgwwgwwgxvwxwwvwvwgwwwfwhxwugvwhwvxwwxxwxwfvwwxxxwhwggwgghxgxxwfggwwvwxxxxwfwwwgggwxwwwwwxgwwxxwxxgwxxwxwxvvxwwvwgwwwwvvwgvfwxgvxwwwxfvUwvgwxwwxgwwxgwxwxxwxxwwwwUgwfwwxwwwfwwwggggwwxwwfwwxwwwxwxwvwwvwvwvuvgwwxwgvxwgwwwgwxgwwwxwghwwwwxxgwwxwwxhfgwwgwwwwvwxwwxwhwwwxxxxxggwwwxxwwwwwfwghvEWvwwfgwxgwxxhxwfwxxxxxxwwxxgxxhxUvwwwwxwxhxwwwwxxhwwxxwwxxxxxxxwxxxxwwwwxwwwWwxxxwvgxXxwxwxxwwxwwwxvwwwwxwxxxgxwgwwwxwxxhxxxxwwwwwwxxxxxxwuwwwwxwwwwxgggwwxwgwwxhwxwwwxwwwwxwwxfggwwfwvhwxgfgwggVvwwxgwvgfGvwgwxgwfwwhwxwwgwxxwxwwwxwxhvwwwwwhwxwwwwxwwwwwwgwwxuxggvhwwfvvxxhwwxgVfevgvwxwggwggxwxwwwwwwwwwgevvwgwgwfxgwghvxwwwwVfufwwggvxwxwwwwwgwxvwvxxhwxvGgwhxvxggVwwxwwgwxwhwwghgwwxxxwwxhgxxwxwxwwxxwwwxwwxxxwwfgwghwwwwwxgxwxwxwwxxwwwhwwwxxwxwvxhhwwwxxxggvwwvvwxwwxxwxxwxvwwwgwxxhxwwwwxxggxhxxxwwxwwwxvwxwggwxxwgvgvwgxxxwwxxwhxxwxwwxgwgwwwwwgwvwwgggwwxxxxwvxwgwwxwwghxxxwxwxwwwfwvwhwxxxxwxxxwhxwxwvwwxwxwwxxxxwwwwxwwxwwwwwwffwwwxwxwxxggvvxxxxwwxgxwwwwxwxwxvxhwwwwxwxwxwxwhwwwwvxxwxxxwxwwxwxxxwgwxxhxxxxgwxxxxhwwxxwwhhxxxxxxxxwxxwxvwhwwwwxwxwxxhxxxxxxxxwxwxwxwxwxwwggwxxxwxxwwxxwxxhxwxxxxxxxxxxxwwwwxxxxxwxxxxwwxwggfvwhwwwhwwwxwxgxxxggwvWhggwwwggwwwwwvwvwvwwwgghvxwgwxwgvwxwxhwwwfwfwfxwwwwwwwwgxxwxxfwwgeFxxwwwwxwggwwwwxwxxwwwfwxwxwxwwwxffffwfwwvwxwwwfwwwvWwwxgxvvxvwwgwxxxwuvwwwwwwvwgwgwvXgvvvwwvwgggwvxxvwggwvvxwxgwfxxxvwwxxwwfwwfhggwxwwwwwwxxhgxxwgwgwwgwwwxwhxwggvxxxxxxgeGwvwvxxwgwwwxvxwxxxfvxwwxvxxxxxgvgwwxwxvwxwxxwvWwxhxxwxxgxwxwxxwwwwhxxxwwhwgeGwwwxwggwwwwwxwghvxxxxxxwxwfgfgwgwwxwwwwvXuxwxxwvvwwwwwwxwxwwxwgwgfxwxxxwwwxwwwwhgwvxxwxvgwwxxxxxgwwwwxxwxxwgwwxxwxvxwxxgwxwwxwgeGxvwxwhwwwwxxxxwxxwxywxxxxxxxfgwwxxxwvWwhwwxxxxwhwwgxxxxxwwwwxxxxxwgwwwwxxxxxxvvxwwwxwxxgwxxxxwwwxxwwwxxwgxwwgxwhdvwgvfwwwwvwWwvwxwhwvgfwwgvwvwwxwwwwwwgwgwwvvhxwffgwge6gwffwfwfwgwfwvwwwwwwxwxwwvwwwvvuwwvwgwwwwgguwwgwgwwwxxvwgvvxvWvwggVfwwfwfvwwwWeefwwwvvwfgxfgwxvwgfwxwxgxvxwhwgwxvgwgvvgWeefwwgWwwwwwwgxwwwwwftwwwwvuxwwxvvxuwgfvwgxwwwwwgwvwwgWwwWwwwxwe7wxwgggwwwwwwwvwwgwuwgwgwxwwuxwgwwwxwxfwxwxvgwwwxwwwwgxwgxgxvwgxgxxxxgxwwwwwxwwwxhwwwghhwgwwvxghwwVwwwgwwgwxwgvvwwwxwwxxXxxvgvxxwvwwxxxuwwwvwwxwhxxwwwwwwwwwwxwgwwxwgwwwwwwgwxxxgvwvxxxwxgfvwgexwxwwwwwvwvwwxgwvWwwwwwwxwuxwgwwwgvwwwvvxxwgvvgwxxwwxvwwwwfwwwwvwwwwxwwwwwxwwwvwgvvgxxhwwwhxwwwwxwwxwxxxwwgxwwwwfwwwxwwhwwwwwwgxxwvvgwwgfgvxhwwwwxggxgwgfwwgwwwwxgwvwxwwvwwxwxvwwwwwwgwxxwxwxwwgwxxwwwvwxwWwwxgvxwxwwvwxwwwwwwwxxxxxhxxwxhhwwxgxwhwwxwwwwwxwgwgxwgwgwwwxxhwwvwwxvxwxgxwwwgxwxxwwwwvhwxwwxxwxxwxwxwwwxwxxwwhxwxwxwxggvwwxxxxxwwwwwwxvxgwxwxwxxwxwwwwwxvvwhwwgvvwwwwvgwxhxggwggwwvwwxfvwwwwwgfgwgwwwwwwwxfvwwgffwwwfFvUwgvgwwwfgWwgxgggffuwFfVwxwwxwxxgVwggvwfwxxxxwwwgwwxwwfgfgvwfwwwwwwwggwwxxwwgggwgwwfwxwwwgwwwxxwxxwffvUvfvWvfvvwgwevwhggfvgvwvvwwgxgvxgwwxwwwxwwxxwWwvwxgxfwwgwwxwgvvfwgvwgwggxwFvVwwwwwwwwgwwwxwwxFfVwwxxwwgwwxxhwwwwfwgvxxwwWwgxhxxXwwhxxxggwgwwhwhwwxxxxhwgwwxxxxwhhwxwxwwgxxxwwwwxWvgxwxwxxxwwwwxgwwxwfwghwxhgwwwwwwhwhwhwhwwwwxvwwxwxxwxhhwxhgxwxwwxxwwxwwgvgwwwvwwwwwhhwxwxhfgwwfwxxwwxxxxwwfwVvfgwfwxwgvwwwvwggvxxwxwwhfvgwwwhvhwxxxwwxxwxxwwwxwwwxxxxwxwvwwwxxfwwxwxxxxgwwwwxxxgvhxxxxwxwwhwwxvvwwxwwwgwwwgvwwwxxwghwwwwwwwhwwxxvwwhhwfggwxVwwgxwwwgwxxWvgwxxxwxxxwxwxxxxxwxxyxxxwwxffxgwgwxwhwwgwwhwxhxhhxxxhgxwwgwxwwhWgwwxxxxxwxxxwxwwwxwxxxhxxwxwxxxxxxvwwxxxwwwwxwxxwwwxwwwwxgxxxyhxxxwvxxwxxxwgvxwwxxwwxwwxxxwxwxxwxxwhwwfgwwfwwxxxwwwwvwwxxxxgwwwxwwwxgxwwwwwwwxwwwwwwwvgwwwvxwwwwwwwxxxwxwwwwwwxwgwwgxxxgwwwwwvwgwwwgwvxxwxxwwwwwwwwgwxgwwwwwwwxwwgvwwwwxwxhwwwxwwwwwxxxwxwxxxwfgwwwxxhxxxgwwwwxxxwwxxxwxxxxxwxxwwwvwxwvxxxwwxxxxwxxwwwwwxyxwwxwwvwwxwwwwwxwvxwwxwxxxwwxwwxxwxvxwwwxxwxxxwwwxwggwwwxxxxxxxwwxxxxxwxxwwxwxwxwxwwxwwwwwwxxwxxgwwxxxxxxwwwwwxwxxwwxwxwwwxhxwxwxxwxxxxxxxxxwwxxwwxxxxxxxwxxxxxwwwxwxxxxxwwwwxxwwwwxwxxxxxxxwwxwwxxewwgwwvvwwwvfwwwwwfvwfgWgfuvwwwvvwwwwwgwvvwvvvwgwwwwwggvwfevggwwwvwwffvvwwwgfvgxgwffffvffvwgwvwfgwwfvfVgwwvfwvgwwwgvwwwvfwvvwevwxguvwfvvwfvwgWwvgwvwwvwwwvvxfwxgwwwwwwvwvfvvwvwwwwxwvfgfwuwwwwxwgfvwffvwwfwvfwvwwvwgwwwwwvwwwxgvgvwwxwggwfwxwwwxxwgwgwwwwggwwwxwxVfvwxwxgfggwxhxwwwwwwvxwwggvgwwfwwxwwwwwvwxvgvwwxwWfxwxXwgfwwfgxfwvhwhggwwwwgwwgvwgwvxwwgwxhxVvwwxwwwxwwwhxxwxgwwxhwwxwwvvwwwhgwwwgwvwwxwwwxVwwwxwwwwhhwwwwgxxvvxggvwwwwwwwwgevwwwfwvvwwgwwwvwxgwwvfwwwwwxxgwwxwwxxhwgwvwwfwwwwwwxxvwfxxxwxxgvgwxwxvgxwwwwwvxxwwxwwwvwwwXwwwhwxxhvwwwvwwgwwxwxwwwwxxxWfxgwwwwwwwwwwwwwwxxhvwwwvxwwwxxwwwwwwwwxggwwxwwxxgvwwwhxxxxgVgwwwwwxxxxxwxwxxxgwwxwvwfwvwwxxxwwwvxxwxgxxwxxwwxwxhwwgwwxxxvwxxwwxwwwwxghxxwwwwxwxxxwwxhwwxgxgwxwwxwwwwwxxwgxwxxhwxxwgwxxwxxwxwxwgwwwwxwxwxwxvxwwwwwwgvggwwxhhgwvfggvggwvxgwhxxwwwvwggwvgwwwxgwwvfwfufwvwwfgvwvvwVwegwvguwwwgvxwwwwwwxwWfehxwgvwwwgxggwxwwwgwgwxvvgVwvvXwwwwxxgwgwwgxgvwhwxxwwwvffuvwxwwxwxxfeugwggegwvvgveVfufwwvwwxxxwxxvxwwvwwwwvxxwxxwhwwxWwegwXgwwwwwwxwvwWwegxwxwwfwwxwxwwwxwxxggwwwfgvwwvxvvvwxxwgwwgwwxwgwvwwwxxxxxghwxwhXxxhwxwgxyxhwgggvxxwwwwxxxwxxxwxxwxxxfvvhxvxwxwxvwwwxwxxwxwxwwgwwwxwwxxxvxgwwxxwxxwwxhwwxwwWxwXxxxwgwwgwvxxxxxwwwwvxfwvwxgwvhwwvwwwwwgwwxvwvhwxwxwgwxxwxxwxwxwwxxwgxhxwxxxwwxwwxxwgxgwwwwwwxvxwxxwvwxxxwwfxxxwxfwvwwxxwwwwwxwxfgwwggvxwxxxwwxxxxxxfxxwxxwhxxxxwxfvvxxxwhxxxwwxxxxwwwxxwxwgxxwhXgwhwxxhxxxwxhxxxxxxxxwxwwxxxwwwxwwxxxwwxwxvwxwxwxwwwwwxxuwvgwvwvwwwgvgvwxwwfwwwwwvwvwvxfwfwwvvwvggwggwwWwxgxwgWgwwgfgWxgwgvwwgggwwfwWwvwwvwgwfFwegvfgvwvwwwwwvwwhfgwwwwgwwwvvwwwgwwwWfdugfgwvwvwvuvxwxwwwgwgwvvwwgwvwWvxwwvgwwwwvwgwfvVfduwvwvwwwVufwvwfwxwxwvguwvvvgwvwwwwvxwgwwwgvwxwwwwwfxwfFgvxggwwvxgwxwvwxhxvwgvwgxwwxwxxxvwvxwwgwhxwwwwwwgvgfvwwwwxwwxgwwwhwxfwxwvwwwWgwgwwgWwwwwwwvwhgwxxgWgwwxwxwgwwgwwvgvwhhwvwwxvxvwxwxgxwwwwxwwwxwwwwxxxxwwxwvwwgvvwxwwwxwwwgwwxxwwwwwgxwxwxxwvwwWwwwxgwwwvvwwwvxwvwwvvwwwwgwwgwvwxwwwwwfwwxwxwwgwwxwwxxxwwwwvgwwwggwuvxgxwxwwxxwwwwwwgxxwxwwxwwgwxxxwwwwwgxvwwgwwvvwWwxwxxxwwwvwxwwxxwwxwxgvwwwxxxwxwwvwwwvwxxwwxwwwxwwwxxxvwxwwwwwxxwvgwhxwxxhwwwxxhhxxxxxwhwwgwxxxxhxxwxxxxwwwwggwwwwhxwwwxwwgvxwxxwwxwhxwwwxwxxwxxxwxxhwwwxwxxxwxxwxxwxxxwxxwxhwxwwwwwwxwxwxxvxwwwxwwxwxwwwxwxwgxwwxvxwxxxwwwgwwwgfwxwvwwgvvwwxxvwwhwxwwwwxwwwhxwfxwgwwxvxgwwwwwvwwwwvwwwxwfvvgwwwwwwvwwxxxxwvwvwxxwvwgwwwwxwwxwwwvwxxwhvfwxxwwxxwgfwfwgwxwwwwwvxwwwgvwwwvwggvhvwwxxwwwwwxxxwggwxwxvxxfwxwgwwxgvvgwwxxxgwggxxwwhxxxwwwxxxwwwwwxxxgwwwxxxwgwxwwwxwxwhvwwvwwxxwwxwwwxfxxxwxxwwxwwwxxwgwxwxxwgwwwwwxwxxxwwxwxxwvwxwwwwxxwwwhwwhwwwvxxwwxwwxwwxxwxwwwvwwwwwwxxwxxxxwwxxwxxwvwwxggwhwwxwxwxwxwvwxgxwwxwwwxxwwxwxxwxwxxwwxxxwxwwxxwwwgxxxxxxvwxxwxwxxxwxxwwxxxwxwwxwwxgxxxwvgxxxxxxhvwxghxxxxwxxxwxxxwxxxvxxvxhgvwhxxgwhwwvxwwWwvxggwwwxxwwgwwgwwwxwwwgwvwwvwgxgwwwwgVvxgwwuxwhgwwgwgwwwwwwggvwwxwwwgwxwwgvwwxgwwwvwvgwwxwxfxgfvxwhWWwvvgvwxfxxwgfwuxgwvwwvhwfxxgwwxwwgvxhggvgfvxvvwWxgxwxghwwwwwgwgwwxfwgwwwwwgvggwwwwgwxwgxXwghwgwwhgWwxhxhwxwxgwgwxwwxwxxwxwwxvxgwxxxwxxwwwwgwvwxxwwgwgxxwwwxxwwxwgwxxxwxwxwwxggxxxgxxvxxxxgxwwwwxxwWgxxxwxxvvxxxghhwwwxxxwwwxwwhwxxwgxxwwxxxwxwwhxxwxxwwwwxxxxwxxygxgxwwhwwgxwhgwwxxhwwxxwxxvxxgxwwxxxxxxxxxwxxxwwgwhWvxwxxggxwxxxxxwxgwvxwxxwwxxxxhfwwxfwwxxvgvvxhgwhxwwvvxxgwxxwxxhxwwhxxxxwxwxxxxvwxxxxwhxwhwwwxxwxxwxWxxxxxhxhxxxwxxxwxwxxxxxhwhwwxxxwxxvxxxxxxxwxxxxhxxxxxxxxxxwwxgwvwhxxxxwxwxxxvxxxhxwxwxxxwwxxxxxxwxwgxxxxxxxxxxxxxxxxxewhxfwvwwwwgvwwwwxxvwwwwwvvwwwwwwwwwwwvxwxwxfwvwWuevgvvffvwxuwgwewwwwwgwwvvwfhwwwwwwxggwxxxwwvxwwxwvwwwwfwwwwwvwvgwwggwwwxwwvvwwwwxwwwguffvewWwvwvwwvwwwvwvhVwfwwggwwggvxwwvxxxwwxwvxxxvwwxWuggvwewvwhvwwxxvwxwxgvwvgxwfxwxwwxxxwwwwwwxxwwgwvWwgwxhwxyfwwvxxwwwwwwxwhwwxxgwxxwxyWvwvWwwfvwwgwfxvhvwwfxwwwxwxxwfwxwxxxxffgwgwwfxwwwxwwgwxxxefwwwwwgxwwhwxwwxxwxxgvwvxwgwwwvwgwxxwuxgwvwxxhxvwwxvwwxxxxxWufvfwwgwwwvwvxwwwvxxxwwwwwxxxvxwwwuwwwwwxxwwwwxwwwwxxxxxxwvwvwhwwwxwwwvfwwwwwwwwxwxxxwwxxxWugvxxwwxxxwwwxxwxwhwwwxxxwhwwxxwghvhwxvwwxhwwwxxxgwwxgwwwwxhxwwxxxxxvuwwgxxxwfxhgxwwxxxxxxxwxxwXwxgwwwwxxgwwxvxwxxwwxwxwxtvwxgwfvwwgwvwwwhgvVvwwwwxwwwwgwwwwgwxgxxxwxffwwxwvwGffgxvxggvwwwwwvwxwgvwgwvxwwwwxvgwgwxwwxwxfwwwgwwwwfvgffgwwvwwxwwwwvwwwxwwwwvxwxxgvggwvwvwvxvwvwgwwwgwwwwggvwewwgvwwvwvxgxxgwwggwwgwwGfvuwxgfwxwwxfwwwwxwgvxxwxxwgwwxwwxxxxfgvwxxxwwwwhwxwvgxwxxxhwwxxgwhgXxvxxxWwvxxxwfvfwwggwwgwfwwwxwwwxxwwxvwwwxxuwxhwxxwxxfwggXwvwwxWwwxxwxwgwxxxwxvwwxwxwwwwXwggvggwwwwwxxwwvwwxhvxwwxxxGffwwxwwwwgxxwwxwwwxvxwxwvwwvvwwxvwvvxhxxwxgwgwxxxwxfwxvxwxwvwxxwxwxwwwwwwxxgwxxxxHfvxxwwwwwxwxwxxxwwwwxxxxxxxxxwwwggfhxwvwxxwwgwwxxwxxvwxwxxwxxxxxxxwvvxwvvwxxxhxxwwwxxxxxwwxxvxwxhwwwxwwwxwxvwxxxwxwxgwwxvgxxgxwwwwwwgvvwwgwwWgvwxggfxxxwxwwwghwwxxxxwgwvwxgVwWgvfwwxggfxghhwgWwgwwwgwwgwwgwwwwxfwhgxxwwxwwwwwwvfwxvwvvwwvggvvwwwgxwxwxwwwwwwxwxxxxxxxxggfgvvxfwfwfwwevvwWwwwgwxxwwwwwwwwxwwwwwwxwwxxfwvwwwfwgvwwwgwWxwhwwwwwwggwxxwxxxwwwxwxxxxxxwgfgxxfggfgwwgwhwhwxxgxxwwxxwfgwxhwwxxxwwxxxwxxxxgwgvvwxgwxvhwvwxwgvfwxxwxwwxxwxxxxwwwfvgwwhwgwxfwXgvxxxxwwwwxwwwxxxwxxwwwwvwxxvvxwwwwxwxwwxwvwxxxxxxwxxxgwvgwwxwwgxwxxvggwgwxxxxxgwxwxwhxxhxxvvxgwwwvwgvxxwwxxhwxxxxxwxxwxxwvvvwhwwxwxwxxwxwwxwxwhggwxwxgwwwxxxxxwxwxxxxwxxxwwxwxxxxxxwggxwwwxwhwxggxwhwxwxxxxxwxxwxwxxwwhwxxxxwgvwxxxwwxwwxvxhwxhvwxxxxxwxwxwwxwxwwwxxxxhwxwxwxxxwuwxwwwwwwwxwVvwwhfwgxxwwwxwxwwxfvvwgwwxxWvwwvvgvwgwwWefwxwggwwhwxxgvvvfvwwxwwxvgvwwvwgwwxwgvvwwwxwfvgwvwwxwvwwwwwvxxuwxxfvWvwwhwwvwegvggvwwwvwxwwxvfwvwgwwxwvwxvwvxwfvwxwwxwxxhxWegwwwxfuwwwwvwxVvwwxxwxgfvwxwhwwwwgwxwwxwxwwxxvWwfvvwgwwwgwxfxwxxxxxxgwwwwxwvxwfvvxvwxvuwvwwxfvgvxxuwgghwwgwxwxgvxwwxxwxxxfwxevgwxhwwxwgvhxwwxgffhvxwvxhfwwxWwgwvwxxwwxxXegwxxwxwgwwxvwxxwvwwxxgwwwxwwwwxxwxvvwwxwxwxyvwwvwwwxxwxxxxwwxvvwwxwxwwwwxwwgxxWughxwwxwxwxwxwxxxxxxxxxxxwWggwvhxxwwxxxvwwxhwxxxwxxvvxwxxxwwwwwxhgwxxxxxwxxxwgvgwgxwwxwwxxwwxwxuvfwwxwwwvwvwwwwwwwvvwwwgwxwgwwwvwwwvwwvwwgvwwgxfwwwgvvwwvwduVgvgvwwgwwvvfggwwvvggfguwwwwwvwwuwwwguggwwxgvWvwwwVwwwwvwvdfwwwwfgwwwgwwwwvvwvwxwfvwwwxxxwwwvfwwwvwduVgwwwvvwwwvwVvggwwvewuwfuwwvwvxxwwvgwwvwgvwxwwwwgxwwwxwxxwWgwwwxwvgwwxwwvvgugwgwggwxxvvwxwwxwwwwxwwhvwwwwgwwxwwwgwwxwxgxwwwwxwfgwwwwwwxXxxgvwwxWxwxwwwwwgwwwwxwwxxxwfwwwwwvwgwegwwwxxvwxwxxxxxwxxvwwgwwwwxwwwvvwwxhwwwvvwgwwxwwwwxxxvvwxwgxwwwgwxvwwwwdfwxvvwwvwwwxwgwwxwwwwwwwvwxxwvxwxwwvvwgwvvgwwwhwwxwwwwgxwwvwwvwwwxhxwxwwwxwxxxwwwwgfxwWwwvWwvwwxwwwwxxwxxwwwxvwgwxxwwxxwwwxvwxwxwxwghvgwwgwwwgwwwhwwwwwwgwwwxwxwvwwwwgxhwwvxwxwxxxhwwxwxxhgxxwgwxxxwwxwxxxwwwwxvxwwwxxxwwwxwgxxxwhxwwwhhvwhxwwxxwxxwwwvwxxwxxhxvxxwxwwwwwfwgxwhfwwwxxhwwxxwxwxwwxwxwwxhwwwxwwwxvwwwwxwgvwxxwwxxhxwwwwgvwwgwghwwgwwwwwwxWvwxwwfWwwwgxxfwxxxwgwwhwvwWvwvwvwwffwwhwwffvvhwwgvwvvwwVvwwxfgwvxwxwwwvwgfwwxWwgwwfvWvwvwwwweewwwwwwwgvvvxefvgwwwwxwggvwfwveeffwgvwVveggvwgwgvvwwwwfwvvxxwwgwgvvwWVwffvwhwwhwwwgwwwwxfghxwgwwwhwwXwwfgVvwgwxxwxwxxwwxgwvwhxvgvwhgxwxxvxwhgvfxxgggwwxwxwxvxwwxwxhwhxwvvhvhwwgwwgwvxvvwxvwvwwwgwxwwwxwgvfwvwxxwwwxgxwwxxxgfgwxxwxwgvxwwxwxwghhfvwxgxgwwwxvwgfxxwwvwwgggfvvwwewwwxwwefwggwxwwxfgxefwgvxxxgwwvwwxfwwwwgwwgxgxvxwwxxwwxxwwwxhxwwxwwxwfwwwfvwwwhwhxwwxvxxwxwwxxxxVvwwwwwwwwxwwxxwxwxxxxxxwwwgwwvwwwfwxxwwwvgwxwwwxxgwxwxxxxhyxwxxxxwgvwxxhwvxxxwxwwxixgwwhghxwwxhxwxxwwwgxfxgwwwwxwfwVvwwxxwwxwhxwxxwwwxwhxvxxxxxwwwhxxxwwwwxwhxwwwwxgwxwwwwxgwuxwwwwxwwwxwggwwwxwwwwgvgxwwwhwwWgwwxwWwwwggwwghfwvwwxwxwwvvuwwgwwwxvfvwwwvvwwwevwwgguwgwgxwxxxxvwgvwgxxvwxuuvwgVfvgwvwwwWffwwgwwwxxxfggwgggwvwwxgxwwwwvwxxwxwxxfggwuvfWvvwuggxuvvwgwhwuhghvfwWvffuwfwwxgxfwhuwgxwgfgwwwwwwxwwxwwwxwgfwwfwwwwxwwwWgwxWwvwfwwwhxxwwwxwwxxxxxxgwwwwxxwvxxXhwwwgwwxhwxxhgwwxxhxfwxxxhhwwWfwwgwxwwfvwwwwwvwgwwwwgwgwwvxxxvvwxwhwwxwxwvwwwxwwwxxhvvwwggwxxxwxgWfwhhwxxxwggvxwxwwvvgwgxxwgxxvxwgwwfgxwwwgwfwxwWhvwwwxhgfxwgvwwwxwxxxwwwwwvwwhvwxwwwxwwxxvwxwxxxvxxwvwwwxxxxxxxwwwvggWWgvwgvxwwwggvewgwwxvwggwwxwxxwvvxwxgwwwvwgxwxwxwwxxxxwwwwxxwgwxwwwwwhgxwxxxxxxxxxxwggwwgwwxxvwwxxxxxxwwwwxwxwxxxxxxwxwwwWwxxxxwgxhwwwxwhxxwxvghxxhxxwwxxxxWwvxwwwwwwxxxwxvhwwwxxwxxxxxxxxxxhWwxwwhghhwgwxxwwwxwxwwxxwxwwwwxwwwxhgwwggwwwxxwwwxxwwwwwwwwwxxxwwvwwwxwwxwwwxvwwwwxwwwwxwwwwwwxfwxwwxwwwwwwwwwwwwwwwxwwwwwwwwxxxxxwxgvwwwvwwhwfwwwxxgwwwwwwxwwxwxwwwwxxxhgwwxxwwwxxwwxxxxwxwhhwxwxwwxwxxwxwwxfwwxxxgwwxhxwxxxxxwhhxwhxxxwxwwxwwgxgwhwxxxxwwwwxwwwwxwwwwxwwwgxxwwwxxxwxxxxxxxxxwxxwxwxxxxwggwwxwwwxxxwwwwwwwxxwxxwwxwxxxxxxxwwwwwxwwxxwxwxxgwxxxwwwxwwxwwxwxxxwwwwwxwxwwyxxxxxxwxwwwxwvwxhxxxxxxxxxxxwxxxxxvwwxwwxwwxxgxxxxxxxwxxxwxwvxwwwwxxwwwwwxwwhwwwwwwxxwwxgwvxxxxgwgwwwxwwxgwxggwwwwwwfvwwwxxxgfwxxwxwxgwggwxxwwxwwwwwwwwgvwwwxxwxwxwvwxxxwgvwxwwwwwwfvfhwxwxwwwwvwxxgwwwxwwwwxfvvxxwwwwgwxwvwxxwwwwxgxxwxwwwxxwxwwxwxwwwxxxwggfxwwwwxxxxwwwxxxxxxwxxxwxxwwxwwwxwwwwwxwxxwwxwxwwvwxxxxxwwwwwxhwwwxxxwwwwwxwwgvwxwwwwwxxxxwxxxwwwwxxxwxxwxghxxwxwwwxxxxxxxxxxxwwxvwxwwwxxwvwxxwxxyxwvxxwxwxxwxxwxxwwxxwwxxwxxwxwxxxxwxxxxyxxxxwwwxxwxxwxwxxwyxxxxxwwxxxvwwxxwxxxxxxwxxxwxxxxxufwxwxxwwwwwhwxxxvgfwgvvwwwwwggwwwvgxxfvwwwegvgvwwhvwwwXwgxwxWvVuvwwxxxhxxWwgxxxxwxxfwwwwvvwwxwxwwwwgwwgwwvvxwxxxvgwxxgvWvgwvwwwwwgWwwwwwwvwwxxwxvvvxxwwwwwwwvxxxfwwvggwwvwwggwgwxhWvvfxgxxxwxwhwwxxxxgwgwgwwwWwgwwvwxwxxXwwxxxgggwghwxxxhwgwwxfwfvvvfwwwvxwwwhvwwwxxxwgwwwwxxxxhvwWwggvwxxvwvXwwxxxwwwxwxwxwxxxxwxwwgwvvgwvxxhwxwwwwgxxxwwwwxhwwwxWvWwxwxfxgwwwxwwxwxvwxwwwwxvwwxvgwwwxwxxwvvwwxxxxwwxwxwWvvvwwxxxxgxxxxxwwwxwxxxxgwxggWwwwxwXwhwxxxwwwgwxwvwxvxwwxxwxxxxwxxxwyxxxxhxxhwxxxxxxxwwxuwxvvgwwwxwwwwwwwwwgwgwgwwwgwwfvwwwwwwgvgvwwxwwwxxwxfgwvGvffgwvvwfvhfwgvvwwwwwwwxggvgvwwwwwwwwwvwxwhwxwwxwfvvvwgvfevvwwWfvwxfvwwwwgffgvwvvwgvxxguwvwxvxggxxvggeufvfwewgwwggvwwwwfwhvwwwWvvvfwwvggwvwwwwwwwgwwwwhWvwwffgwvwwvgwwwvGgwvgvwwwwxwwgggwwwxwxxwvwxxxxwwwxwxwwggwgwwwxwhwgwghwxxwxxwxwwxvwhxwgxxhxxwxxwxxwwxgxwxvfwvvwvwvvwwfvvxvwvwvwwhwxwvvxvwwgxxgvwxxxgxwwwwwxfxwgwwxwwwwwhwwgxgwwwxxhfxxwwwxxwfwxwgxghvxfwfvwwxwwgwxwfvwwwwwwwxvxxxwwxhgwfvwwwwwwwfvxwwxwwxgvwwwwwgwxwwwxxhxwwxwwwgxhwxwwwxwxxvfvvgwwwwXwvwwwxxwxxhxwwwwvxwwgwxxwwwxghwxxxwwgvwfwwvwwwwwxxxwwxwxwwwwxwwxxxxxwxvhwgwfwwgxwwwhxxxxwwwwxwxwwxghxxxxxwwwxhxxhghwwhxwxwxxxxxxxxxxxxxxxwxxwxxfwxwgwxxwvwxxWgvxwxwwwxxxxxwgxwxwxxxxxwwxwwwxwvxwwxxwwxwxxggxxwwwvwwwwxvwwwxxwwwwgwgwxxwwxxxwwwwwxwhxxxvwwwwvwwwwxwwwwwgwwwgxwwxwvwwxxwwwwxxwgxhvxxxwwxwwwxwvxwwxgwwwxxwvxxwxxxwwxxwxwxxxxvwwwxwwvxxgwgwwvxxxvvwxxwwxvxwvwxwwwwwxgwgwxxxwxxxwxxxxwgxhxxwxhwwxxxwwgwwwgwwwwvxxwxxxhxxwwwxxxxwxxgxgxxwxxhwyixwwgxxxxvwxwwwxwwxxxxwxgwgwwwxwwvxvwxxxxxxwwwxxwwwwwxxxxwxxvwwxwxxwwxxgxxwwwxxxxwwxxxwxxxwgxhxgxxwwwxvxxxwwwwwwxxxxxwwxxxxyxwxwwxxwxxvxwwwwxxwxwwxwgxwxxxhxxxyxwxxwhhvxxwxhwwwyiwxvxwwxwxxxxxxxxxxxxxxxxxxxxxxxwvxwxxxxxxgxxxxwwxxwwxwwxwxwwwwxwwwwwwwwwxxwxwwxwwwxwwwwwwwwwwwxwwwwwwwwwwwwwwxwwxwxwwwwwwfwgwfgvwwwwwwwfwwvwvxvvxwwxxwwfgwvwvhwwwxwxxwwwgwwwwwwxwgwwwwwwxxwwxwwwwwwxwwwxwxwwwxxxxvwfwwwxxxwwwxwxxwxxwwwwxwxwwxxxyxwgwxwwwwwxxxwwxxxwxxwwwwwwvwwxxwvwxwxwgvwwxvwxwwwxwxwxfwwxwwwxxwxxwwwxxxwvwwwvxxxxxxxvwxwxxwwxxwxwxwxxwwxwwxgwwxxxxxwxvxxxxxwwwwggwwxwxwhxxxxxgvwwxxxxwwxxwxvwxxxxxxwwwwxxwxfwxxxwxwxxxwwxwwwxxxxxwwvxwxxxxyxxxxxxwxwwwxwxwwxxwwxxwwwwwvvfxvwgguwxfwwwfwxwvwwwwfgwwwwwvgggwgvwhwwhfuwffwwxUvvvwwUvwwfvvgwffvvgwfxwvwfvwwuwgwvwxvgwwwwvwwwwxgvfwwwwvxwxwvwxwwwwwvwxwwgwfgwvwwvwwwwvvwevwgwhfwwgwwvvvwwwvwwwxxwwwgwwxwvxwwxfwffxxxfwvwwvwwwwhxwwgxwwxhxwwwxvxwwwxwghwhUvfwwUwwwhvwfwwwwhgxxwfffXvwwwhxhxwgwxxxwhxxxwwvWwvgxwxwgxvwvwgxwwwwfwwxxwwxhxxxwfwwgwxxwwwgwwvxwxxwgwwxvggwxgwxwwWxwwvwwxwxvxfxhfwwwxxxxwxwwwxwwxwwxxxhxxwgwwwwxwwwvhxhwwwxhxxxwxxxxwxfwwwwxgwgwwxxwwxvwwxxxxxwwxxxxwwxwxxwwwwwwxxwuwxxwhxgywxwxxwxxhwwxxxwxxxuvgxwwxvwxwwxxwxxwxxxxxhxxwxxxvwxxxxxhxxxxwxxywxwxxwxxwxwwxgwxwxwwxxxxxwwxvwwxxwxvwvwggwwvwvwwvvwwwwxwwwvxvwwfgffwwvwwxxgwwwwwwwwfvvwgfwwfwwwdtVWgwwwwgfvwwwvwxfefgggvxgwwxwxgwgxvwwwggvwxvwvwvvwwwvxxvwxxwevwwwxwgwwwwwxwwwwvwwffvxggwwvwdtVWwfvwwwxwvvwwgwxwwwgwwwwwwwgxxwwwvwwwgwxuughggwwxhxwwxxxwfgwvwwgwwggxwxwwwxwwxxvwwwwhhvvvwwhfgwvwWwwwxwxfgvhxwhwwxxwgxwwwhxwxxxxwwxeghwwggfwwwgxwwwxwwwxxwxwwwwwxfwxvfvwwwwwwwwwwwwvxxwwwxwxxgwwxwvwxxvwxwhhwwwxwwxevwxggvwwwwvxxwwwwwxxwwwxwwgwwwwwwwwweffgxgxxwxxwxxxxxwwxxwxwwxwwwwwwwwwxgwwxxxwxgwgwwggvwwwxxxxwxvwxxxwwwxxxgxxxwxxwxwwxxxwwwghvwwxwwxxxyxwxxxxwxhxxwxxxxxhhxxwgwgwwxxwwxxxxwwwxwxxwhxxwwxxwxxxxhxxhvxwwwwxxxxwwxwwwxxwxxwhgwxvwxxwwxxgwwxwwxxwwxxwwuvwwvgwwwwwwwwwgwwwvwwwxwwwvvwwwwwwgwwwwvxwvwwxwxgfwgguwwwwvvwgvwwgwwVwwvwwvwwvfWwwwwvwwgduWgXwxwwwxwxxwgwvwgdfwwvwvfvwwvfxwwxvwwwwwwvwxxvwwwxwxxwwwwgwwgwVvvvwvwgxgggvvwfwwwduVfwwwhvvvwwxwxwwhwwxwgxwwvgwggvwwwvwwWgwvhuvgxxxvwvwhvgWwgxhgxwhwxwxwxxwvwwwgwwggwhwwgvwwhwhgvwxxhxvwggvhvxhwxwWwxwwhwwxxxxxwxgvwwwuvgxxfvwggwwxgvvgwxwwxwwxxwwxwwvvfvwfwwwwwwxhwwvwwxxwgxwxwwxwhhwxxxwwxxvwwwxgvvwwwfwxwdfxxgwxxxvwxwxxwwxwxwwfwwvxhwwgwwwwwxwwvwxxvvgvwwxwxxhxxxwwwwfvvwwxwwxwwwgxwwwwwwwxxwxwxxxwxxxxxwwvwwxwwwwxwxwgwwgxxxwwxxwxxwxwwwwwwwwwxvwwwxxxxxxwwxxxxxwxxxhxxxwwhvwxwxwwxxvxhxxwwwxxxxxxxxxxwhwwwwgwwwxwwwvwxxwxxwxxgxxwwxwxxxxxwwxwwxxxxwxwwxwwxwwwxxwxwwwxxxuxwwgxwwhwgvgvfxwhwwgvwwwfwwxfwfggwxwvwwwwxwwxxwgWgwvvWwwwvvWvwufwwwwwwxxgwvwwvfwvwxwvwvvxwxwwxwwxwfvvgegvgvxvwwxwwvwxgfffvwwfvvwwwfwuvwwvwgwwxxwxggfwugwxwfuevwwwwvgvwvxfevwvgvwwggVwgwxwwxvwvwWgXwwXwwwwwgwfwwwwhxwwwwwwxxgwxxxxhwgwwwwgwwwxxxwgfxxxxxwxxxgwwxwwwwwwxxhwhwgwxwxwxgwwguwwvvvvgwvwxxwwwwwwvxxxwwgwhwxwgwxwwwvhxwwxwwwxgggwwxwwwwwxwwgxwxgxwfxfwxxxxwwxwfxxwwxvwvvwwwgwwvvwwxwwwwwwwwgvwwxxvwwwwxwwwwxwwvwxwxvxxwxxxggwwwwwxwwgwxwxwwwwxfgvvxxwwxxwwxWxxvxxwxxxfgwwxwwwwwwvxxxwxxxxxxxwxwwwxxxgvwxwxxwwwyvxxxvwwxyxxxxxxwwxxwwwxxxxxwwhxxwfwvwxwwwgghxewxxwxxxxxwxwxwwwwhwwxwxxwxxwxxxwxxxwwhwewwwwwwwwwgwgwgxwgvxWvwvwwgwwxgwwxwwwwgvgggwfwfxwxgfwxggvgwWwfwwVvgwwgwwfgwwgxwxffgwwxwwwwwwwgVvvwxxwxwgvWxwhwwwwwWgvwfvwgwwgwhwvwwwxwxhvwwvwwwwwxwxgfwwggwwwwwxfwwwwvwwxwvwewwvWgvgwwwwwwwwVfvwgwgwxfwwfvuxwxwwwxvwwvwwwwxwwwwggwgwwggwwxwwwwxxwhwWgwwgxxxwwwxfwgxxwxwxwhwxxxwWwxwwwwxxxwxhwfwxwxxhwxxxwxwwxwwwhxhwxxWxfhWxxwwhhwhxwghwfwgwfwwwgwvxwwxwwxwhxgfwwwwxwxwwwxvwxwwxwxwwwwwwwgwvxxxgwxxwwvxwgwwggfwwwwwwxxwwxwxxwgvwwxevgxwxgwxxwwvvxwwwwvwxwywxxxwxxxxxhwwwfwwwwwxwwwgxwwxxWwxxxvwwxhxxwxxwxxwxxwxxxxwgwvxfvxwwwguwwgwwvxxhwwwwxxxxxxxxhxgwwxxwwwxxwvwwwwxxwwwwwxxxwwwhxwwwwwxvxwxwghxevgxgwwxxWxxwwwwxxxxwwxxwhxxxxxxwxgwxxxxwxxwxxxxhxxxxxxgxxwxwxxhxxxwvwfwxxwxwxxwwxxxxwwxxxxgwxxwxwxxxxxxwwxxhxxxxxwxwxxvwwwgfgwggwxfwvvwwwwwfwwwwwxxwgwxwvvvxxgwgxwwgvwvwwxxxxgwgvgvvvwwefwVwgwwfwvvwwwwxwwwgfwuwfwwwwxwwxwwwvwwwxwhhwgwwwfgewvhwwwgwwvwgwwxxwxxvwwfwwvwwwxwgwxwwwwwwwewuvUwvwvwvxwwwwwwvxvwxwvvwvwwwvgwwwxwxwxwxwevewgwvwfwgwwfvxwwwwvwwgwwwgwvvgwwwwgwxxwgwwwxwwwxxwxxwwfwwVgWwwwgxxwxgwwxxwxxwxxwxfwxxgwxxxxwwxxwxgxhhwxfwggfvwxvxwwwwvwwwxwvxwwhxwxxvwxxxwxxxwxvwwgggwwgwvwwwwwwwxwxwxwxxgxwwwxwxxwwxxwxwwxwxwwwfwwwwuvwvvxwwwgwwwvwgwxxwwxxxxxxhxvwvwwVwwxwxwwwgwwwxxxhwwwwxxwxwwxxxxwwxxxwvgwwvxvwxwxwwwwwwvwxxvwxwwwxwxxwxxxwvwwxxvwxwwxwxxwwwxwxwwwxxwxgwwwggwwwwxwxxxxxwxwxwwhwgwxxwwxxxxwxwwxwwhhwwxwhxwwwgxwwgxxwgwhwwwxwwgwxwwxxwhgwhxwwxxxxxwxvxwwwxwxxxxxwvxwxwwwxwwxwxwxwxxxxxwxxxwwxxxwwwvwxwwxwwxxwwxgxwwwwwxxwxxugwvwwwfxxvwuwgwwwwwwfwwgvwwggwfxvwwwgffuwgxgvwwxwVwwfgfvgwvxeeWgggvwwwgwfvxwwuwvvfwSeFgwwwgvwegvgwvgwvxhwvfvwgffvvgUuvwvwwwwxuvgwvvwxwwwxwgwwwwwwwwwwvwxwwwwwxxwwvwvSeFgvvvwvvvwevfwfuwvwwwwvgwwvwvwwwwwfwwwwwvxwwwvwxwvwwwuwxwxwwwhgwwwgwwggvwwwhwfvgxxvggfwwwvwwwgwxxdvVwwwwwvxxxhxgwvwwWgwwwwwgwWwgwHgwwwxvwuwgwvwwxxxwgwgwxwwwgwhgvwwwwvgwwwwwxwxxdvVwwvwgwwwwwwvwwwwwxxxxwvwxwwxxwxwwwuwgwxwvgwwwwxwhwvxhxvwwwxxwWwwvxwwxwvxwwhxwxwwwwwwwwwguvwwwwgvwwwwwwxhUuvwwwwwxxwvwxwwwwwwgvuWgvxwxxwgwwuxwwwxvvvwwwxwwxxxxgwxwxxwwxwhgwwvvxwwvwgwwgwwgwwxxwwwxxgwwwxwxwfvhxwwxxwxgwvwgwwwxwwwwwwxwvwwxwwwhwwxwwxwwvwwwxxwwwwxxwwvxgwwwgwwxwfvgwxwxhwvxxxxwxvxxwwxwxwWwvwxxwxxxwggwwwxwgwxxxvwwwhhwwwxxwwwwxwwwxxxwgwxxwxWxfwwwwwwwxxxwxxWwxxxxwwxhwxxxwwxxxxgxwxwwwxwhwxxvwxwxwxwxwxwhwxgvwvxwvwxhfwwxwxwwfwwgwwwwwwwgxghwwgwwwwwwggxgwwghwwvxwwwgwgwvhwvwxxxxgwwwgffwfwfwfwvggfgwwggwfwwxwwguwfwgvgxwvvvwwfvgwxgwwfvwwwwffgwvwfwgfwvwvxvfggvwvvwwvgevwwwwwwhgvwwvgwxxxxwewgFwegvvvuwVwFvewxgfwuwwwwvwfwtwwwwwxwwuwdwgwwwgwhvvgvxwxwggwwgwwwgfwgxggwwvwxvgwxwwxwxwwgvwwwwxwwxxxwxxggwwwwxfwgwggwxwhxwwhxhwvwwwwwxxxwhwwfwwgxhhxggwwxgxfhwWwvwvwvgwVvfgwwxggxwwwwwuwwxwwxwxuwwwxxxwwvxwwfwgwwwwgfwwvfvggwgxxxhguwvwgwwvgwfvwwxwwxxggwghwwwwxwfwxwwgxwwxwwvxwwgxwwxwwxxwwwwwvxvfwhxgwxxwwhwgwgwvvggwxwxvvxwgwwwxxwwxvwwwxhwwwgxwwWvwvxgggvwxfwwvwgxxwwwxxgxgfvfwgwwhwhxxxwwxwwfwwxvxvxwxvxfgwxvwxxwwwxxxwwgwwghwwwwhggwwxxwwhwwhxwhwxwgvxxxgxxwxwxxxxxwxwgxxwgxhvvwgwxhhxwwxwyxvwxhvwxhvxxugxwhxxxwxgwghxwwwxwwxwxwxwxxwxwxwwwwxxxxwxwxwwxgxwxwxxxwwxwxxwgxxwwxhxwxhwxxvwwwwxwwwxgfgwwwwwvwwgefvwwwwwwgvfwxxgwgufwgwwgwxxxwgwwvfevguggvwwhfvwwgvgegwxvxgWefvuweugvvwwvfvwhwgwxxwfhgwwwgegvgvVuvvgfVvgwfgvwwgwvwdufwwwfuvvggwwxxxwxwgVfvevTvwvvgWufwuvgufVwgwvvgFUdVuvwvwvxwfWwgwwwwuxguwgwvwvwWvgwwwwhvfxxvwvwxxxgvfvxgwgwvxxxwvwvxxwwwwxxxwvwwxxxwgfwwxvwwwxwwhxwhwxwwgfwXvwWxxwwwwwxwwwhggwghgxwwgvfvfvwVvvwhwwgwewwwwwvwwwwxwfevfwgwxuxwxewwwVxwgvxxwwvwhvvgwwwwvxWxwgvhgUwvwVgUwwWwgvwgwxwxgwgwwxwvvvxwVwwwvxxwgwvgwwgwfuwvxxwwwxVvwxxfuwxhwxxxxhfxwwvgxwwxvwvwwwwwvxwxwwvwxwwgxxxxwxhxxwwwwwWwwwxwxwgvwwgxgxwxggxwwhxwxwwxxhwwwwxgvvwxxwwwwwwxwwwwwhwxxvwwfgvvvwwgwxxwvgwwwwwwVvwxhwwxxxxwxxxwxgwgvhwwgwxxvxwxxxxhwxwxxxxwwvxxWgwwxwxhhgwxwgfhxwwwxxwwvxhxxxgwvxxwwxxwxxwwwxwwxxxwwwwxwwvwwxwhgwwxWfxxwxwwwwwvwwxvfwxgwwwwvwwxwxwxvfgwwwvvxwxwxxgvwwwfwwfvwwxffwwvvfwwxxwwgfgfvwxgxwwxwwwfwwwfwxvwxwwwxwwwvgfgvvvwgwwxwwwwwwvwwxwwxxwvvfwwvgwwxgwwgwvggxwxwxvwvwwwwxwxxwvxwwwvwxwgwxxxxgwxxwggxxwwxxwwwwxvwwxxgwgxxwwhwwxxxfgwwwxxhwxfggwxwwwxhxxxfgvwwfxhxxxxwvggxhgxxxwwgxwxwwwwvwxwxxwwvwxwhwxxxxxxggwwwwgxwgvxgwhggxxwvxwxwxxxxgwxxwwxxxxxxwwwgggwwwxwwwxxxxgwwxwxywwwgxxxwwxwwvhxxwwxxxxwvwwwxwwxxxwwxwxgxwxwwxxxxwwxxxxwvwgwxwwwvwxxwwxxwxwwwwwxwwwwgxwwxwvwwxvxwxwxxwxxwxwwxxwwxwwwxwwxwwxxxwxxxhgwgxxwvwxwghwgwwwVvfvfwwgggvggVwvfgwwwggfwwwfvwVfgwwwvwvwwwwgwwwWvGgggWvgffwweVwwfvxfvfwwwgGwWgVwvwgwvwwwwVgvwgvwWwgwwxwwwwxgfwwwwwvwwwgegvgvwwvwxwwwwgwVwvvgxxvxwguwxwxwvxwwwwwwgvwgwvwvwwgwfvvxwgwfvwwwwvfgvwgvwwvfxfwwwvwwgwwwwwwxwvvwvxwgwwgwgvgvwwWvGwwwxwgfggxwwWgggwfwvwfwxWgfwwgwgwxwxwwwwwgxxwwwghwgwwxgwhxwwwxgxwxGXhgggwwggwxwgxwhwwgfgWwGwVwgwvXgwgwgwvwxwgwwgvgfwxxwwwWvxxxwwxfxxwvwxwwwxwhwwwwwwxwwgwwxwxxwwwgWhWwwvwxwxwxwxwxxwwwxgwhwgxvvwwxxwgwwxxgwxgfgwwvgwxxwxfwfvwwgwxuwxxvwwxwwxwwgwwwvwwxgxuwwwxwxWwxwxxwfwwwxxgvxxwxwwxxwwgwxxxhhwwgwxwvvvwxxwwwwwwvxwwxxxwwxgwxwgxwwwwwxwxwwwwwvwwxvwwxwwxxxwxxxxgwwxwwwgwvwfwxwwwvvXwxxxwfvwwvxxwxxxhgxwxxxwxgvwwvwgxxxxwxgxhxgxhxxxxhhxwwxxwwwwhwwxgwWwxevgvwxwxxwwxwwxwwxgxxwxgwxxwxwxgwywwxxxxxwxwxwxxhwwwwxwwxwhhwwvwhuwwwvwwwwxvgwwxwwwxxxhwwwggwuwwwwxwwwvwgWwwxWgwwxwVwwwwwwwhggwwwwwwwxwfffvwvffwwwgxvwwggvgwwxwxxxgwwvwfwxxxwvvxuwvwwwvgvwwwvwwwgwvxwxwxwfvfvvufxwvvvgvgvwwvfgwwwwwwwwwxxxvgvwxhwwxvxwgwWxxwxxwwvewwwwhxxxfwxxwwwggvwwwwwwgwxwxwwxxxwxxxwyyxxfWWgwwwwwxxwwgxwxxwxwwwwwwwwvxwwvwwxuxxwwwwwxwhwwxwwwxxewwwgwuvwwwwvxwwwxxvwwhwvwwwxxwwxxwwwxwwwxwwwwvxgfwwxwxwxxxwwwwwwwwxwxgwxxwxgxxwxxxhxxwvwwwgxxxgwwwxwwwxgxxxwxwgwwvxxgwxwxxxxxxwxxxwxwwwgwwxxxwxvxxwwwwwwxxxxxxxwxxvwwwxvwxxxxwwxxwxhxwxwxxxvxgwwxwvxxvxhwxxxwwwhxwxxwwwxxxwxxxxxhxxvxhxuwwvfxwwwgvgwwvxwguxwggwwwwwwguwxwvggwwgfwvvwvwvwwvwvwffvffxvfewuxwhvvwwgvgxfwxwwxgwVvvvvwwgvvwwWggwxgwvwgvvgwwwwgwgwghvwwwvwfgfvwwgffwxwwvvwwvgvwwfwhwvhewvhvwwwwwwwfwvvvvwewvvwwxwvvwfwefvwwwxgwvwwwvvvvwwvwwvwwvwwwfwxwwwwwvvwvwwwvgwWvvfxgfgfwgwwffwxxxwhwvwwxwwwxwgwhfvxwhwwwwwwxxgwwfgxvwwwwxxWwwhfwwwwwhxxxwwxgxgwxhhwwwwwwghwXxfhwxwwwfwvxwwxxguvxvwwvwxwxwwxwwwgwgggxxwwxvwwwwwwxxwwwwwwxwwwwxxwvgvwxwwgwwxwwwwxxwxhggxxwwvwwwwwxwwwwwgxwwxwggwwwwxwwxwwwwwwxwwwwwxwhfuwhvvwwwxxhwwwwfwvxvwgxwwvwwwgwwxxwwwgxvwgxxxwwwwwxhxwxwwwwxwvvgvwwvvfvuwwxguwxgxwwgvvvxwwxwwwxvwgwwwxxwvxhwvxwwvwwwggwwgwwxwvwwxwvxgxwwwxfxxxxwgwwvxwgwggvwwxxfuvggwwhwxxwwxxgwxwxwxghxxwxxxxxwxxwgwwwhhxwxxxwxxhhxxhhwwxwhwxxwwxxwwwgwxwxwxxxxwwxvgvvwfvxxwwwxgwxxwxwxxxxxwwxwxwxxxxwgxxvwwwwxgxwxwvwwwwwxwwxxwwxwxxwwvwwwwgvgwhfvwxgwgwfvgfwgxwvwXwgwwxvgwwfvvvwVwwwwxxwwgwhvewfgfwgwvwhwVvfwwfgvwwwgWwgwfgvgwwwwxwwwwwvgxwXwwwxxvxxwWvfwggwfvwfwvwwfwfgvwxvgxwvwwwwxvxwwwwxwwxvwwvWgwfwvxfwwwwwwwgwvggwwwwwwfwfwwxwfxvwwwvwwwwhwwwwwwvvwwgggwVvgwgwgwvwwwgwxgVgwwhwfhhwvwwwWwwwxxwwwhwggwxxxgwwgwwwxwfxwghwvgwwwwwxghxwwgxXgewxgvxwwXxxxxgxwwghXvwxwwhwgggwwwfgwxwfwvXwVwwfwgwwwwxwwwwxwwwwwwwwwwwgwxxwvwwxvwvxhWfwwwwffwwwwgxxxwvvxxxgwxgwxgwhwvwwwgwwgwgwwvwwwxxhwwwwxwxwwwxxwxxxxvgvfvwwwwwwhxhvwhxwwwxxxxwxxxxhwxhgwwxxgxwxgwwxhwgxxwxxxwwxwfwwwwwwxxxvwwwwwxwxwwwwwvxwxxxwvxxghwxxwwgwxxwwxwwwgwxxwwwwxfvwxxVgwwxwwhxxxxhgwwxxwwxhxVfwxxwgxxxxwxwwxxhhvxxhwxwgxxxxwxxxgvgxxwxwgwwxvvwgwwxwwwxvxxxhwxxwVxxxwxxwxfwxxgwxwvfxxxxxgwxwwxxwvxxwxwgwxxdUUvVuugVvewefevfvvwvwvvUfvvevvwgVvvvwwxwxfwwwwwwfvvtVfvuUTfUvvgvwwwvwgvwvwvfgvvfuwvwxwwwwfwwxwwwwwwwUvdweUfvfgVvvgvvefVwwwwwvwwvfgwgvwwwwwwgwxxxwwxwvEUfTuevvvgVvwwfvgwwwgwwwvwwgwxvwwwwwvwxwfuvtVvveEevfvfxuvwvwxVvfxvgwvfvvgvwwvwwxwwvxwwxwwwxwugfgwvxgvuwwVewwxwwwgwwwwxwwxwxvwwxxxwgvwuUffvwwwxwwwevvwwvgwwvwwwwwwxwxxxwxwwgwxwwgvvwffwwgwxwxwwwwwvwxwwxwwwxwxxxxwwwwvxhwgEvuwfeevegVwfvvvvggwwwwwwgwgffggwxwwwxgwwxxgwufvegwwwvwwevwwvvxwvwwvwwxwwwxwhwwgxwuwfxvufwwwwwwwwwwwwxxgwwvwxwxwxwwxxxggwxvwxfwgwxwwwwvxgwxgxxxwxwwwxvxgwwwxwvEevTuvvwuVggVfwwxgwwfwvwvgwwvwwwhwwvxwwwwgwwwgvuxgvwvwwwvgwvvwwxxwxwwxwxwxwwxxwwxhwgwfwuvwwxfxxvwwwwwwwwwwwxwxxxwwxxvgxxxwvvwgwwvxwwwwwwxhxgwxxxxxwxxwhwgxxwvfeevvevuwffvwwvvfexfgvevvwwwwwvwwfwuwfwwwwgvwxvwwwewfvvwvvwwvwwwwwwuvvvxvwvvwvwggxwwwwgwwwwxwwwwxxgvwwwfvvfffwwgwvgfvvwvfvwxwwxwwwwwxwxvwwwwxwvvvwvvwvwwwgvvuwvxwvxwwwxwwvgwvxwxwwxxxxfwwwvgvefvvwvwfgwwwwfvwwwwwwgwwgvvvxfwwwwwvwvgwwwxwwvwxwxvwwvwxxwxwwvvwvWvvwxxvxwwxgwwhxxwxwgwfWWwhvwwxhwxfhwwvxxwwwwxxxxxwxxxxvgwwxvxwwxvxxwxwgwwhwxwwxxxxxwvvvwfvvvfvwwwvfVfvfvvvvvwvwwxgwvwvwwwvvxxwwvxvwwxvfvwgvgwvwwwgvwwwwwwvwvwwwwwxwxwxwwwwgwwffvvwvwvvggwwgWwvvvwwwwwwwwxxxwwgxwxxxwxxgwwwwwgwwwwwwwxxvwwxwxxvwwxxxxxwxfevvwwfvwwxwxgvvwwgvwwwwwxwwxgxwgvgxwxwxwgxxwwwxwuwwxwvwwwwwxxvwwwwxxwgwwvxxwwwwxvwxxhwvwwwwwvxxwggwwwwwgxxwvxxxxxwxxxwwwwwwxxwwwwxvgyvxxwwxxxxwxxxxeffwvvgwEvexvfvvVvvwwvxgeffwvwfwvwfgwvwxwwxvffwvxxvuwxVvwwVVegcgfwUvvgfFdvvhhefgwwvwvwgfvvwvuwwwgvvxxwwvwxwFvtwgWgvfufwwffgfwgwwvvuwwvvggwwwxxwwxwxwxxwhfVewgevxeuevwvwWvwWWgwgwvgwwwxwvwwwwwwwxwwwgwwgxvxwxwxwfvvwggvvdgfwfvvxV6ewvwhxevVgwwvwvgwwwwvfxxWvgwwxwuvwfxwvwwwwwxfvuwvwvgfhwxwWtvwgwwwgwxwxwwxwgwxwwwxxggvwwWuffwwwwwgvwwwgwvgwwggwgwgxwxvvwwxwwxxvwxwwxwwxwwwgwwwwwgwxwwxwwwvgfwxwvwxwwwwxxwwwxwggwwxwxwwvw6vuwwfVvfvwvwvVfgfwwfvfvvgfwgwwwwwwwxxwwwwwxwwwwxxxxtVvwfffhvwwwwwfwwwwxgwfwvwwwvvwxgwwwwwxwwwwxwxwwwxvfwgvwwxvvwvuwgfwwwwwfwwxwwxxgwxxwgwhwgWwxwxxwxvvxwwwwwvgwwwxwhwhwxwwwgwxwxwxwwvwxgwwwxwxwveVUwvvweuvwgwhffGfwwwwvfwwxgwwxxwwgxwgxXwwwwwwwxfvvwwwwvxwwxwwwwwefxxwwwxwwwxhxgxwwwxxwwxwwwwwwwwwwvwwwxfwwwwxvgwhhwxxwgwwxwwgwwwfwxwhwxxwgwvwxxxxwwwvwwwwvxwhhwxvwhxwwwwxwwvwxxxwxxwwwwwwsgfwvfwvffgwfevvvfwvvgfevvwvxvvvffevvxwwfevvvwwxwvfffvvvwfffvvvvvwwwgwvvwwvwfffvvvvwwwuwwwwvvvwwwxwffvvgfSUvwwxvwxxgSUvwwvwwwvxwwwwvvwwvxwwwxwvgwxxvwwxxgevfvvvwvwvwwwvvvwwwgvfwwwvwgvwvvxwwxvwwxwxwwwwvwwwffgfvgwfffvgwwvfwwgwwfvwwvvwwfffvfvwwwxwffwwvwuvxwxggwwwwwxwwfwvwwewwwxwvhwuwwxwwfgvvwwuwwxhwwwuvwwhgwwvwxgffevvfwwgwxwwfwwwgwwgwwvwgwwwwxxwxvgwxvgwgxwxfvvxuwgwwwwxuwwwgxwwfwgxwvwwxxxxwwhwwwwwwxwwfvfwgSUvwwwwgfSUvwwvvwgxwwwvwwvwxvwwwwvxwwwwxxfevvvwwvwwvwvwwvwwwvgwvvwvwwwxwvvwvwwwwwwwvgwwgwggwwwxwwwgwwwgvwwfxxgwwwxffwwgxwxwxwxxwgwxxxwwwwwwgwxxwxwvxwwgwvwwgwwwxvwwwgwwwxwgevffvwgvwxfvwwwwwgfwwvxwgvwvvvwwxwvwwwwvwgwwwwwxxwfvwxuwwwxwwvxuwwwvwvwwwwwwxvwwwwxwwwwvxxwvxwxwwvwwvwwwwxwxwwvxgwgvwvxxwxwwxxwvwwhgwvwxxxwwwfvwwwwxxwwwgxwxwxxgfxvwwxwwxuevvxvvwwfuvvwgwfUvggvwwwwvgvxwxugvwwwwffgwxwxvvvwwgevgvwwufuvgwxwvuvwwfwvgvgwwgvwgvvwwwwgwwxfwwwwwwgWvvwfUewwvwfxfwwxgfvwxwwwvwwwwwwgvxvxwvvvwvwvxwwvwwwwVwxwwwvwwwvwxwvwwwwxxwwwwggvwgwwwvVfvwxvvwwwggvwwgwxVvwggvxvgwwwxxwwvwwwwwhwfwwvwxwvwxxgwwwxwxwxwwxxxwgvxWxwhwwxgvwwwvgwwwwgvvvwwxvwwwxwxgwgxxwWwwhwvwwxvwwwxhwggvfwfwxxwwxxxxxwwwwwwxwwvwwwgfvuwxeVfuxwwwwvwuwwxfVvwxwwwxwwxwwwwwwwxvwxwwwwwvwwvxwvwgxxwwxwwwwwxxgvwWwwxwfeuwwvwwvwgwvxveVgwgwxwwvwxhwvvwwxwwggvxxxwwwwwwwxxwwxxwwwwwgwwwvxwwwwwwwxwvwvwvxwwxxxggvwwwxgwwwwwwgvwhvwwwhxvwwwgwwxwxwwvwwxwxwxwwwwwvwvwwwwxwwxxxgwvwwxwwxgwwxhwwvfwgxwxxwwwvwhxwxxgwwxxwxwxgwxxxwxwwhxxwxdVefvvwfwvwvdvfvvfuVvgedvufwvwvuvwvwvwwWwwvwvggvfvvwvvwwvhwwfuvwefewwugufuwxuWvffvuvgwugwgwgvffUvvwfvwxvwwVvuwvwvggwwwwgeuwwfvvvgfvuewvfVvvfwwgeevfwggvwwvvwwwwwwwwvwgggwwwfxvwgwwfvwggvgvvvvwwwwwvwwwvvVhvwwgwwwvgwggvwvwwwxxgwgfwgwvwxxvuwfufvggegvvvwxvgfgWvvvWvvgwgwwufgeuvwfvwxwwwGgvgvgwgwWwwwwxvwwgxxwwwwwxxfwwgwwwwxxxwfwfwgwvgvvwwhwgwwwwwvwwwwwwgwwwfwgwwwewwwwwxfvwwvwVggwwwwgwgwwggwfwgvhwwwwgwgwgwxhwwwwwvvwwgwwwwwfgwhgwgggwgwwxvhxwwwggwwwwwhwgwxgxwwwfvwwvwvfgfvvdfvuVvufwgvvdvvwgwgvwwuwvwgwwwggwvvvwwwwgwwvgwvwwuvvxvuggvwvwfwvvwgwwwxxgwxvvuwwvvvvwvwgwwwwwwwwgwwwwxwwwgwxwvwwgvwvwwwwvvwwXxvwwwhxgwwwvwxwxxxvgwggxwxgwwxxwxwwwwwwwwwgwxwwWvhWgfwhwwwwvwxxwwgwgwxgxwxxxxwgvwwfwwgwwwewwwxfwwwgfwWvwwwwgxgwgvwggxvwwwwgwggggvWwgwwwwwghwwwwvxvvwwgwgvxvgwvwguvvxwggxwfwwwwhwwxwhwwxwxxwxwxvwwwxwwWvgWxfwvgwwwwgwxwwxwxhwxvwwwwwgxxgxwwxxwwxxxxwxgwwxxxwxwxwwwwwxgwwgwxxwxxdUUvfvvwfuvwvwwUvewvgwgfuvwwwxVvugfeewwwwveVfvfvvwefvuvwffvwgwwdfuwwwfwvxwxweUdvfugvwwwwwxfvgwvwxxxwVutwfwfwffwwfUfvgwwwwvwwxugVvwwwxwxffvwwvwxwxfUdwvvuvwvwxxeduwxwvwwwhwwwewgWvgwvwgwwwvuwwvwvxffvvwwfgvvwvvxdfewvwwVvvxxwweEUggwvxvxwxxfuewvgwwwwwwwwugfwxwwwwgvwwwxwwwxxVwvwwwvxvxxwwVewhwwwgvxefvvuvwwwxguvwgwwxxwwvvwxxxxxxvwwvwwxwVwwwwvwwxwwxgvwxxwwvgwxwvwxxwwgwxxwxxgvFuugufVvvvfwwxeeevgwvwvwxxfgVvwgwxwxxwxxgfwvwwwwxxhwweeefuvwvwwxxwwvvwvgwwwwwwxwxxwwwvwxwwggwvwwwwwwwxevwgwwvwxhwwwwxxwxxggwwwxwxxxxxewwhvwwwxxwwuvwwwwwxwwwhgwwwwwxwwxxfUTgfvvwxUdugwvwwhxvfWgwwwhwwgwwwwwxvwwxxwwfwwwwwwwwwwffwwxwwxwwwwwvwwxxwxxwxwxwhvvwxwxvvwgvwvwxwwwwxwxxwxxxxwwwwwxwvvwwwwwxwgvwxwwxxxwgvwxxwxxxhvxueevfuxetegugffuwvgvvtefvgwwwfuuwuwuwwwVutwuwwwvwwvvvwfuvuuwuetueuwwvvvueuwwwwffvvwgwwugvevevdvewfvgvvuvwwvwwvvuwwwweevvugwvwfwfvvwuvvwfuvwfwxwvuwvwvvwwgwgwvwwwwxxvvvfwfwfvwwwwgffwvwgvwwwvwxvvwvvuvwwwgffwwwwwwxxfvxvVewffvwwguevvwwwvvuuwwvwuwwfvvweuvwwwwwvfvvgvvwvgvwgwwwvgvwwhwgwwgwwwwwwvwwwxwwwvwwxwxwwwxvwgwwwwxwvvfgxgwgwwwgvwuwwvvfwxgwxgwgxvgwwwwwwxwuvxwwwwxwxxwwwwxxxxvvxxwxgwwxwgfwgxwwwwxwwwvwwxwxwxxxhwvwxwwwwwxxxxfduvtwvuwvwfuuwtfwvvwwuufxvvwfwwwxgwwxgwwxxxwtgwuvvuvvxwwwwfvvxxgwwwvwxvwxvwwwwxwxxwwxuwwfvehwxwgwwwwwvvvwwwxwvvxwxwwvwgfwvwxxxxwwwxwefvwvvwvwwwwwwwwvwwwwvvwgwggxwwxxwxwwvwgfwvwfuxwwwuuvuwvwfwgwwwwxwwwwgvwxwwggfwvvwwwwvxxxwvwvxwwwvwwxwxwvuwxxwwwwwwwwwwwwxwwwwwwwxwwxxxwfvwgwwxwxxxwvwvvwwwxwwwwxwwwwwwwfgxgwwwxxwwxwxwwxxxwxxxwwwgvxwwxwxgxwxwwhwwxxxwwwwuwwwwWvuwwfuwwxwwwwfvvwwwvwwwgwwvvvvvuvwwwwxxwxvwwwxwwwwwfwWfffwvwvgfwwwxWvvwgwvxwwfxgwwvvgVwwwwwxgxwhwvwwwwfvggwvwwvwxxxuvvwwhxwwwvwwwvgwwgxwwwxwwxwgvwxwxvwwwvvwwgwvwwgxxuvvfWwwwwxxwwvwvwxhxwwwxvgwwwwwwxgfevwwxvWgxwxwWfvxwwwvfxwwugWgxwgwwwwwWvvwxxWhwwwwxwwxwwwwwwwxxgwwwxwhWgxxxxxxxwxwgxwhwwwwwhwwvvwwwwxwwwwwxguvvxgwvwvxxwwwwwwxxxxxwwxxgwwwxxwwwwgVwhXwfvwxxwxxxwwgxxhwwwhwwwvufvvwvgwwwvvwgwwufvfwxhfvwwwxgwvwwwvwwxxwwwgwvfwwwwwgvwgxgwgwwxuvwxgwgvwwxxxggxxxxxhwwwwwuvwwgwwxxvwxhwxwvxwxwvgxwxwxxxxxxxxxwfvwwwwwxxwxxwwwwgvxwxxxwvuwxhvggwgwxWgwwwxhufwwwgggxwxxgwwxwwxghgxwghwwwwhgxwxhhwwwhwgwggxhfwfgvxwxxwxxxxwwwxwwuwwwxgwxxhxwfwwvwxwxxxxxxwwxxxgxwxhwwwwxwxxxeevwefvwgvwugvvxwwwwwwwwwvVeugvwvvvfwwgwgwxwxwwgwffewgvwvvewwgvwwvwvvgwvvvwwwvxvwvwwwwwxwwgwUfevVfuwwwwgwwwxwwwxxwwgfvvWwwgwwwhwxwwwwwwwwxxgvwwgwvvvfwvwwwvwwwgwgxxwvwwwwwwwgxwwxwxxxwhxfvwweVvwvgvfwvwwWfwvwgwvwwwgvgvevwwvwwwwxgwwvwwwwxwgwwwgxwwwwgwwwwxwxwhugwwwvwwxwxxwwhwfxhwxwxwwwfwwwwwgvxvwwwvwwxwwwwfxxxwwxwxxfwxxxwxwwwwwwwwwgwvwwxwvgxwxwxwxxwwwwwxwxxxhwxwvvwfUegfvwwgwwwwwgwxwvwWguggvgwwwwhwvvwwxwwwwxxxwvwfgvwwwwwuwwxwwwgwwvwvvwwwwwwxwxwwxwvUvevgVghvwgwfwgwwwwvwxxvwgwgvxwwwwxgwxxwxxxxwwvxvvvgxwwxwxxxwhxxwwxwxxxwgwxvfwwfwgwwwwfwfwgwwXwwxwwxgwxwwxvwxwxwxwxwxwfwgwfwvwxwwwwwwwxwxxwgvxxxxwwxwxxxwxxxwwwwwxgwxwwwwwwxwxwwwvwxwwhwxwwxxxxwwxwwwxwwwxwxwxxxwxxxhxxwxrvwfvwwvwvwfvvvvvwwwxwfgwvgvwwwfwuWwwffvgwwwwxwfvwwwWUwvfvfvuvwgfvwfvvvwwxvwwfvuvwwwwwfwvwwvwvvgxuvwvwvfvWDduwfwvwwgwvwwvwwvxgTewwgwwwvvwxvwwxwxfvvfvuvuwfwwuwxgvvwvvvwwgwwwwvwwwwxwwwvwwwvwwxwgfxxvvvwwgfvwwgvvwwWUwvvwVfvwvgwxvfvfvwwvxwwvVfvwwwwvuxxVwvwwxvwgwvwvvvwvvwwxWvwwwwwgwvwvvwxwwwxvvvfwwwwhgwwgVuwffvvwvwwwgVfvwvwwvwxxxwwxwwwxxgwvxwwxwwwwwwxgwvvwwxvxwwwwvgwxwwwxxwgvwwxwxwxwwwvwwxxgvwwvwwgTevwwvfvgwvwwwxvWDdvwwwwwwvwguwgfxwwxxwxwffvuvwwwxfvwvvwxwwwvwwwvwxwwwwwwgxgvwxwuWwwwwgwwwwwwvxwwwwxxwxwxwwwvwxfgxxwwvxwxwwxxwxwwwwwvwwwwvwxvvgwvxwxwwwwwxxwxwwgghwxwfxwxffvfwvwvvwxvVfvwvfwwwwxwwguwgwgwvxwwgghuwwwwwwwvwwhxgwwwvwvwwxwwwwwwwwvwfxxxwwwxwwwwwgwxwwxvwwwgfvuxxhgwwwwwwwxxwwxgvwxxwwfwvwwwxxwwwwvgxuxwxxxVwvgVuxxwxxxxwxhxwwfgwwFwwwvgxvgfwwwxwwwgxggwwwggwfgfwgwvvgwfgvfwhwfwxgvwwfgUfgvfvvgwwgwfWWwwwwwwhwwgwgwxvxwgwwwxwwwxhwwwfgwvvgwggwfvgwwfwwwgggwwgwxhggwwwwwgwwxgxgxxwwxxxggfwvwgwfwffvwwvxxxgwwxxwgxvwwxvvwxxwvgwxwgxwwxxgfgfvgwwfgvxwgWvgGggvwwwggwxwwwhgxwhvwxwgwwwwxhxfwwfwwhwwwwwwwxghwgfwwxwxwwwxgxwxxwwwwxwxxxwwgxwwgwwvwwwwvvvwvvwgwwwwhxwxwwwhxwwwvxwxxgxwxxwwgwxgwwggvwxwxwxvwxxvwwhxwxwwxwgwwwvvvwfwfvfwwvwgwvwwvwhvgxgwvfwwwwvwwwhwwxxxgxxvwwvvvwwwwvuggwwxxwwxxwwwwvwwwwxwxgwwwxxwwwxxwxwvwwvvvwwxxvgwwgwwxwwxwvfxxwxgwwxxgxxwfgwgvvwwxxwxgxxxxwwwwxxwxwxxfgwfvwwgvgwvWwwwvwghvxwwxhxWxwwxwxvwwxwvwgwxwwxxwwwwwwwwwxwxwwvwgwvwwugwxwwxvwxwwxxwwxxxgwhwwxxwwvfwhxwxxxwwwxwgwwxxvxxxwxwwxxwwxxwhxxwwwhwwfxgxwwxwwxwwxxwwwxxwxwxwxxvVfggwwwwxwffuwVfxgwwwwwVuvwvgvvwwvwffvfuvwWvwgwwvvwwvfwgwvwwvgvwwwgvwvwefvvvvwgwxvwwgvwwwwwwwwfvwwffevwgwgwvfwffwgvxwxxffvfvwwgwvwwgwwwwwwwxfevfwvwwwxwwvwwgvwxwgxvvvvwwwwwvgwwwxwxwwwxwgxwvxwvwwvgwwwwWgwwwwgvwwwwxffwegwwwvhwwwwfwwwvxwwwwxxgwgwwwwvvwwxwwxwwguxxxgwfgvwwvwgvvwgxwwwvfvwvwwgwxwxwwwgwwwwwwxwwxgwvwvgwwxwwwwgvwxhwxwwuwwwwwxwwxgwwxwwxwgwwwwwwwwvgxwwxxwgxwwvhwwvwwfvwwwgfvwgfwvwxvffvvvwxgwwwwwgwvwwxxwwwvwwwwwxwwwvwvwwwvxvxxhhwwxxvfvgwxwwxwxgvwwvxxxwvvggvvwwxwwgwwwgwwwxxvwwwwwxxxxwwxxwwxxxwwgwwwwxxgwwxffwVvwwwgvwgwxgwwwxwgvwwgwwwhxxxwwgwxwxhxxxwvfvxwwwvxwwxxvxwwxgwwwxwwwxxxwwwwwxwxwwxxgxwwwwvwwxxxxwxxwwxxwwwxxwwwxwwwwgxhwxxxxwwfwwvwxwVtwvwfvfvugvfuvgwvwwVgfgwwfwuwVgvetugwvwwwwvwwwwuwvwwuvwwgwvwwwvfgWuffwwfvvvwwfwWwwwWwgfwwgvgwwxvwvwWVuxgwwvVvvvdugfvwwgvgwwwvvwwxhvwgvgwwwxwwwwwwfwwwwwwvgwgwvvgwwxxxggwvwgwwwwwwwxwwwwxwxvwxgffxvvvvvwxxfwwwwwwwvwwggvvwfvwffwgwwwwvwgwgggwvggvwwvwwwgwvwwwgwwxvxggxwwfWwwfgxgwfwwwgxwxgvwvwwhgwxwxgxggvvwwgxgvvwggvfwvvxwgwgwxgwwwwxgvwxwxgxVwwwwxgwvwwwwwwxxvwwxgxgxwwwwwwwwxvvwgxwhxwgwxwvgVtvwwwwfweuvwwwxwwwwvwwwgxwgvwwwwxwhxwwwwwvvxwwvwwvuwggeuwvwwvwwwwwwwwxwvxxxwhgxwxxwvwvxwwhwwwwwwwwvwvwvwwwwvwwvxwxxwwxgwxxxxwwvvfwxxwgxwwvwwxwxxxvwxgxwxxwwxwwwwvwhvwwwwwvwwgwwwwgxxvvwwwxwwwwwvwwxwhwvxwxxwwxvwxxxvwxwwwxvwxxwwxwwwwwxwwwxxwxwhwwvwxxwwwgwxwxxwwwhwxgxwwxxxwxwwxgxwxwxxhxwxwwwwwwwwwgvxxxwvvwwvwwgvxfvwvwwgwwwwwUewgwvwgwwwgfwvwweuvxvgwwgwwfwxvwvwwwwwwwwwvwwgvvwwwwwwgvwwwwggwwwfwvgvwwvwwwwwwgwxwhvwgxggwxgwfUfvvwgwwwwwwgxwwwgvwwwxfewxwwwwxwwwwxwwgwvwwwfxxwwwxwwxwwwwhgwxwwwwwxwwxhxwwwxwwfwwwwwwwgwwwwwwwgwxwwwwfvgwxgwwwfwgxgxwwwxwwwwwwwggfwwwwxxwwwwvwxwwwhxwxwwwgwwwgxgxxwwvwwvwgfhwxwwhhgwwxwxvwxwwwwwwwfvxwwwwwwwxxvxxxwxxgwxxfhwwvxgxwwxxxwxwxwgxwwwxwxwhhgwgxggwgxwxxxwggwwgvwweewvwwgwwwwwwfwvwwvvwwwweewxxwwwgwxwwxwwwwwvgwwvwwwxwwhvxxxwwwwvwxhwvxvvwwgwxwwwhwwwwxwwwvwwwwwxwwwwwwwxwxwwxxwwwwxwxxxxwxxwwwxwwwwxwwxwxgwgwwxwwxxwxxxwwwwwfwvwvwvwxgwwxwvxxgwvwwvgxxwxxxgxxwxwwwxgwwvgxwwxxxwwwxgwwvwwxwxxxwwwwvwhhwwgwwxwwwwwwwwwxwwxgxggxxwxxwwxxwxxxwwxwwxwwvxxwxwwwxxwxwgwwxxeUfwUvvxUvvwuwwUvxfgvwugvwwwTufgdefwuwwwfvwwegfwwvwEvuwvVvfveevuwwffwvvVewwvwwfvvwwfwvvfvVVwweuvwvgvwwwgwgwwwwwwwwvwTfvvdvvvwwwwdgwvvwwwwxxugwwewgwxwvwxxUvvwwfwxwxfwgeUwwwwwwwfwwgvvwwVwgvwwwwUvxvwgvwxxwwwwwwwwwggfxxwUvwwuUvugvevwweEvwwwwVevgwvwwuUvwffvvVtvgvVwwfgwwwwvwfvgvwwwxvgvwgwwxwwwxgfwgxwgvwwwxvxwvgwwwgwgwwwwvwgwvwwwwxwwwxwwgvwtwvfvwvvwwxfuwxwvwwwxfwwwfwxwxwxwwwwvwwwwwwgwwwVwwwwwwwwwxxwwxwxwwxvwwwwxxxwwxwwwwwxxxxxxwxeevvufwwugwvvxuwvevvwfwwwvwvggwvvxwwgvwfvvwgwwwxxuwwwwfewwwwwvxvgwwwxvvxwwwwwxwxxwvxwwxwwuvxwggwwfwwwwVfgvgxwxwxwgwwwgvwwxwwwgwwxvgvvxxwfvfgwwxxxwwwvwwwwwwwwwxxwwxwgwggxxxwwwxxhwwvfwvfvvvfwwwwgvvgwgvwVewwgxfvvxwgwwwwwwwwwwgxxgfhfxxgwxwgfwvwwvwwxxxxwvwxxxwwwxwvwwwwxxxwwwgwwfuvwgwwwgfwgwwxfwxwwxwgwxwwwfgxxxwwwxwwwwwwwwxwwwwxxgvwxwxwwxwxwwwgxxwxwxxwwxxwwvxvggwvwwwVgvfvvfvfgfTufwvwwegvwwwvwwwFuevfwWvvwgwgwxvvwwfvwvwfhffvwwwwvvfvwvggfwvwwwwwwwfwwwvwwggvvvwgwwwgwwgwfggwwvwwgFuveuvwgvxwgwwwwwgxxwwwxwxwxwxwgvwwwfvwvwwgwwwwwwvwwxwgvxvwwwxwgxwwwwxvxwwxwxvwwwwwwvwvvwWxwWwvwxffvwwgfwwvwgggwwwxwgvgewwwgWufvwWvgwwwvwwhgwvwwfwwwwhwwwXwwgwgggwwgwgwxxxwxwgxhvxhwwwwwVwwwgwwwxegwxWWfvwwwwwhgxvwgwwxwxwxwgwxwhxwwgxxxxwvxxwxwwwxwxvwhxwwwwwwwxxxxwxwxwwgxxxvwwxxwvwwffwvgwvwfgVuTvgvggwwwgxwvvvvgwwwxwgxxwhwvxxwwgfwvwwwvvwwvvwwggvfwwvhWvgwwwwwwwwxxgwhwwxhwwwvwxxwxgwwwwwwwxwgxwwggwfwwwwwxwxfwwwxxwwvwxvgwxwxxxwxxxvxgxxxwxgxxwwwvwfxgwwgfwwwfwgvwxgxxxwgwwxwxwxxwxgwwwxgwwwwwxxwvwwwvwwvwxwwwwxxgvwwwwxgxwxwgwwwvwgxwwwhgxxvfgwwhwwhwxxxxxwhwxxwxxxxwxwxxwwwwgwhwxxwwwwvwwxwwxgwxwxwxeFefvfwVgufwfgVffwwfvxeevfgwfvgwwgWwvgvwvgwfewvevwfuguwgwfuvwfuUtwuwdvgfvffvevwgfvwwfvvwfgvwWvuvgwtwevwwVvuwvwvwvwwwvwfxVfvxfvffvwvvwwfVvwggheVwvgwwwfgffvvxwwwXwvwxuVgvVwgfwvwgwxwwgfvwfvuxvwwwwwwwfgvfVwwvwwwwvwgvfuwwvwwgvwvgvwwuwwwhwgvwxxwwwgwfvwgvffuffwuuvwffWgevwguvvwfwwgvffwWwfwWvewvgwGgvgggxffgvvwvgwgwxwgwwgwwgvwvwwwgwfgwwvwwwwfwwwxwhwvwvgvwwwghwhwwwxwfwfgwgwwwfwwwgwffvggXvgfwwwwxvgwwwwwvwvvgvvvxWwwwgfwwxgwwwwwwwwxwwwwwxwwwwvvwxXXvvwxwvvwwwxxwwwwwvwwwvwwwghxhwxxwvfvwvfvwfvwvvgeVfvgwwgfUgffxvwfgvwwwwwggwwxfUwvWwwfwwwwxxxxvgwfgvwwwvwvwwefwgggvgehvwgwwvwwwwwwwwwghgwwgwwxwwxwxwwvvwhwwwfvwwwwhxuwfhxvgwwgwxwwggwxwwfwwgxwxgxxgwxwfvwwwvhgwhwvwghxhhwvwghwxxvwhwvhwxwhwhwwxwhwwwgVwwfwxwwwgwgwfVwwWwhfgwwwwwwwfwwwxxwwwgwgwvwwwwwggwwwxwwxwwwwxhgwwxvwwwwvgfwwhhfuwwwwwwxwxxwwwwwwxwhwwxwxwwxwwwgvxxwwwwfwhvgwwWwwxwhuwgvgxghwvxwxwwwgwxwxwwxwwxxwwwwwvwfgwwxgwwfwxwwxxxwxxwxwxxuffvfvuwgvvwvffwvvwgwwgvwvxwVtguffwwuwffvwvwwgwxfvvwvVcuvwvwvwugggvvwgwwwxwtgfvfufWfwuwfvwwgwwxwxvVvswfvfevgfwgwwwfVwwwwwwwvfvwfvgwwwwwwwgfwvvwwwxuVUvvffFwvwwwvvwwwwwxwxweuvwvvvwgwwwwwvhxxwwvvuwfFdvvwgfvwvVeeghfvvwxwwsgfvfufhuvwfuewwgwwwxxwwxwvwwwffhwwwgxgwwxwxwwwgwVvwgGuwwxvwvwgvwwwwxgwwxggtfuwwvvwffxwfffwxgwwwhwwxwvwgvvxwwwwwxwvxwwwwxwwwxxfvvwgWgggwwwwgwwwxxwxwwwxxwwwwwwwwwwxxxwwxxxwwwwFvtwfvffvwfwwwwewwwvgwvVvVvwwwwwxwfwvxwgxuffwgwfwvvwvwwwwwwwwggxwxxvwwwwwwxwwwwwxvwxxwwwvvvgvwvvwxwwxwwwwwwxwxwxVgvfwwvwvwvwxwwwuxwxxxxwxwxvwwwwvgwxxwvwvwxxwgvvvxwwwvwwwwwwxvvxgwvVevwvWWgvwwvwevvwwgvvwwxhwwUevgvwvwwwwwxwwwvwWwwxxxwxxwwwvwvgfwwwwxhwwgwxhxwxxwwwwwwwwxwwwwwwwwwxwwgwwwvwwxvgxwvwwwwxwwwwwwvwvwwwwwwxxxwxxvwxvwwwwxxvxwxwwxxvxxwwwwgwxxxxwwwwwwxwwvwgwwwguVdfvufvvvgfuvvfvvgfvwwwVwvuwWvvuevvgvwWvfxvggfwvvvvwhuwgwvvfwvvVfvffwgwdvvffvufwgwugwvuffwfuwwVwugfvfveuwwvwwfvwwgvgwfvvefevfgvufvuvfvwwwfwwwwwgwwevvwuffewwghwwwwfvgxvhwvwwwwwvuvvvvuvvvxwwwwgvggexwwwwfwwgwwwwvwwwgwwwwwwwwwwwgwvwxwwevvwfffwvgvvVvuwvUWvufwVguwvgwwtWwwvvvwGwvwvwwwvdfgvfwvuvwvgwgwvwwvwwwwwvwwwwwvwggfwhwwfwwgwwvwxwxvwwgvwwggwgvgwxggwfwvvufvgwwwwwvgvvvwgvfwwwwwwwgwwwehvgwwwwwvwxwwvgwghxgwwvvxwwwwwwwvggfwxwwwwvwwwuwwxwwxwvxwgxwggxwgwwfuvvfuvvgfvewefgwfhfvwfwgevvwvevuwWwwvwgvvwwwwwvvwwxwwwvwvfvfvwwvwwwwgwwvwwhufwgwwwvwwvvwvwwfvgwwwvwwgwwvWwwwwwvvvwwwfwvwwfwgwwxwxgwwgxewxgwggxxwgwwwgxvxwwwxxxwfgvwgvgwwwgwwwVwwhwwwvwxxgxvwxwwwwxWxwxwwwwfvvgffvuvvwwwgVvwfwwuvwwgwfxgwvwwwwwwvgwgwwwwwwwwfwgwVwwwwgwvwxvvwwwwwggwwwwhwUwxwwxvwxvxwgwwwxxwwwwgfwwgwwgvwgwgvggxvgvwwwwgggwwwfwhxxgwvwhwhhgwxwvwwwwxxxwxwxwwxwvxwxwwxxwxxxxfggWvxxfffweeVffvvefewffvgvwfffvfgwgwfvvwfvwwvxwwxvwvxVvvwwwxgvfvfwvffwvvffffwfvfwuvvggvgwvwfwffuwfgvwvwxwwwvwfwwwgwwwxeVfvfvvfeuvvvwwvvfwxxwfgwwxwguvvevwvwvxwwwvwwwxwhwxwxgwfwevfgvfgvwvwwwxwwwvgwxxgvwggvvgwgwwWWfxgxfgvxvfvwffgwvvvvffvwfewvfwfwffwwvVvwvwwwfvvwgvwwwgwwvwwwwwgwgwwgwvwwwwwwwwgxxxhgwwwxhwwgwwwhwwwwwwwwxxhxhwwxwwgwewvwvvvwwwxvwvwfvgwvwhwxwvwwxwwxwwxwwxxxxwwxwgxwxwgwxwwgwxxhhwxgwwxwxwxxwwxwwwxwwxxxxwwgxgwfUfvfvffeuvvvvwvvvxwxvwwwwfuvwuvvvwwwvwxwwwgxxuwvvwggvwwxwwvvvwwwwwhxwwwwwwgwwxxwxwxxwwwwwwwxfgwwwwgwwgwwwxxxvvgwvxwwgwwwwwwxwWwvxxwgwvwwxxvhwxwfwxxwgXfxwgwwhhvwwwxwggwxwwxxwwwwwxvwfwuvvwvvvvwwvwwwgwxwvfvwwvwwwwwxgvvwwwxgvwwvWXfwwgwxgwwwwgwxwvwwwwwwxwwxwggwwxwggxwxgxhxwxwvxhwxwwwwwwwwvgxvhxgwwwfWfwhwwwwwghvwxxxwghwwwwxwwwxxxxwwwwwxwwxxggxwwxwxwxxwwwwwxwwgwgwwwwxxuwwwwwwwwgwwwwwwwwfwxwwVwuwvfwvfwwvwwwVvgwwwvuwxwwxvwewfgwgwwwwxwwwxwxwwwWgVfvfuvwugVvwwwwwwwxwxwexwwvwfwfvgwwwwVwwwwvwwwwvfwvfegvwgvxwwwvwvwwxxwVwwwuvwwwxgxgwwxvfwvwfuvvwwwvwfwvxwwgfwwwwwwwgfggwwwwggwwwwwwwwgwfffwuwvfWgwxgvvwgwvvwwxgwvwwwwwxwgVwgwxwwwwxgvwxwvxvwwwwwwwwwxwxggwwwxxxwvvwwvxwgwwgwvwwwwfxwgwwgvgwwwwxxwfwwgfxwwwggghgwwxwwwwvgwfwwwgxwwxwwwvwxwwwxwvwwfvxwwvwxwwwvfuwwvwgwwvwgxxwfwwwwwwwwxwgwwwwwfwwwwwwwwwgwvwwwwwxwgwvwgwvuwwwwxxwwwvwxwxxxwxwxwwuwwwwxxvxxxwgggwwwgxxwwwgvgwvwwwwxwwxwwvwwxxvwwvwwfwgwwgxwvvwwvvwVvgwxxwgwgVwxwwxxxwxVxxxwwfvxvxwwvwwxfwxvvvwxxxwwwwwwwwwxxxwwwxgwvxwwxxxvwwxwxxgxwwxxwwxxvvwwvgwwwvwvwvvwwwwwwwgvvvwwwvvvwUewwwvvxfvwgwvwevwvwvwwvwvwwwwwwwwwwwwwwvgwwwwwwvwvvgxwgfvwwwwwxgwwwwwwwwwvwwvfvwwwwvwwwwwwwwvxgUfguuvwwxvwwwvwwxxwwwwwxvvwvgvwwxwwxxwvwwwvwwwvwwhxxwwxgwvwwwwwwwwwwwwwwwwwgvfwwvwwgwwvwvwwvwwhvwggwvwwggwvwwwfxxwwxwxwxwwwwwwwvwwxhfvwwwwwvvgwwwwgxhvwxfvwwwwwwwwgxxgwhwwgwgwwgvwxwfhwwwwxwvwwxwwwwwgwwwxxwxwvgwgwwwxxvvwxwwwvxwwwvwwghxgwvwwvwvwwwwwwwwwwwwwwwveewvevvwvvwwwvxxxwwwwwvxwwwwwwwxwxvwvxvvwwwwwhwwxxwwwwxxwxwwwwwwwwwwwwwxwwwwwxwwxxxwwxwwwwxxxwxwgwwxwvwwxwxxwxwwfvwwwwwwwgwwwwwwwgwwwwwwwxwxxxvwggwwwwxxwwgfxxwwxwwwwwvwxwwvxxxwwhxwwwxwwxwxxwxwwvxvwwwxxxwwwxwwxxwxggwgwvffvfvfvfvvwgwweefVfgggvvwvVfufvwvfgvxwwwuVfvwwvgvwxwgvgvvvfvvvfuwvwvwvfvwufvvwvwwwwvwvvfvgvvgvvwwwffwwvvvvwvxwwwgefvefwwuvwvwwffgfgxwfewwwguewwwwwwvxwxfvwwgwhwwxvggwwwwgwwwwvwvfuwwhgwgwfwvfgUffwwvwgwwgwwvwwwwxwwfvvgvfgvvVvvgvgvffwfugwgvvvwwwgvfgvwvgwwxwfvvfvggwwwwwwxwwwwwgwwvwwwgxvxgxwvxgwwxwwwvwwvwwwwwxxwvwwxxwwgwugwwvwwwvxwwwvggwgwwgwwwwwwwxwwggwwwwwwwwvwwwwwxxgwvwxwgwvgxwwwwgwxwvwwwxwwwwwwxwfwhwxwgwfevevfgwufwwvwwffwfxhgwvevwwguewwwwvwwvvwwxwxgwwwxugwvvvvgvwxwxwfvwwvwhwwxwwwwxwwxwvgwwgwwxwxvwxwwwggvwwxhwggwwwwwhwgwuwwxwwwxxwvwwhhhwwxwxxwvvwwxwwwwfhwhvhhVgxfwwwwxxxwxwgvxwxvwwggvwwwwhgvfufgwgwgwfwfwghUvvfwxwvxxvgwwgwxwwxwwhxwwwxwwwwxfxwxxxxwvwwxwhwwwxvwgxwwxwwwxwwwxwwwwxfhwhggVhxfwwwxwxwwwxxwxwwwvgvwwvwwwwwwwwwvwxwwfwxwwxwwvwwxwwwxwxxwxgwwgwwtVefffwevwwfwfwfvvwufugvgwwfvvwgvvwUdvvwgwvvwwfdvgvvwvwwvxvwufgwvgfgevfgwdvufvgfguweuvwvwvggufvfwewvvwwwwvwwwwvwwwwwwwfvvUfuwvwwfvwwgvwwwfvgguwwwgwfgfvdfwvwwvwgwwvdfwfwwvgwwvxwxhgvvwvvwwwwxwwwvwvvVwvvwwffuwwvvwwwgvvwvguhwvwwwwwwxevvwegugvffVvuwuVfvVfvwfuuwvgwgWugwWwfwvvwwgxuvwwwvgvwwwwgwvwwgwwvwfwvwwwwxxxwwwwwxvgwwwvwwwgvvgwwwwvwgvxvvwwgwvvwwwwwwxVwwwgfvwVvwwwwwwvwwwvwgfwwwwwguvggxwvgwwwwwvgwwwvxwwxvwwwwwwwvhvxwxwwvwxvvhvgwxhxgwgwwvwgwxghwwxvvwwguxwwwwwUuvffuvvwwwwgfgfvwwvfwvvwwwwfgfweefvwwwwfxvuewvwwggwwwwwxgewwwvegwgwwgvwwwwwwwwwfwvvvwwwxvxwwxvgwwfwwwxwwwwwvxfwwwwwxwwgffwwxhwwgwxxgwgwwvvwwwxxwxwxvwwwwhvgxwwxwwwwgugwwgwwwxwhhuwxwxwwgvwwgwhwgwwwxwwwwgxwvwfvwvwwwgwxxxgwfvgfwWwvxfwgfgffwwwhvxgvwvwgwvwwwwwwwvxwwxwwfwwwwxgvvxfwwvwwwgfwwxwxgwwwwwwwvwwxfwwgxwwwwwwwwgugwgxxxwvwwwwwhhewxwwwwgxwwvwwxgxwwxwwwgwxvwvxgwwwwwwxwxwxwwwwwwwwwwwwwgwvxvwvvwwwwwvwvfWvtwgwvgfvvvvwgwwwwggxvgvgfwwwgwfwgwwxvwwVvwxvvwfgfwvgFwwwwvwvwvwvwvwwxfwggvvwwgvxxvxwvwwvwwvwwgwwvwvfwgwvwwvwxwvvvgwgwwwvfvvgwwwwxvgvvwwwwvvvwhvvwxwwwvwvgwgwwwwwwwvwuwxwuvwgwwvwvwwgwwgwwwvWVvwWVvwxwwwvgvwwwgwxxhfvfwwwgwwvwwggwvwwhfgwwwwwwhwwwxwwwwwxwwxxwxhwwwgwgwwwxwvwwwgxfvwwxxwwwwwwxwwwxxxwgxwxvuggwwwvwwxxwxwwwxxxxwxwwwwwwwwwvwgwvxwwhwxxwwVwwwgwwwxwwwvvxwfxvgvvgwwgwwwwxwwwvwwvhwwwvwxvvvgwvwvxxwwwvwwxxvwwwwwvwvwwwwwgwvxwvfwwwvwvwwvwvvfgwwwxxxxwwwwxxhwvwvwwwwxwfvwxxwwwwvwwxwwxwvwxgxxwwwwwwwxwxgvvwxwvwvvwwgwvgxxxxwxwvfvvgwvvwwgxwwxwxwxxwwxvxwxhxwvxgxwwgwxwwgwfvwwwvwvwxgwxxwwxxhxxxwvvwwxxwxxxwwgvxwwxwxgwwxwwgxxwxxwwxvwvwxuwwfgwvgwvgwwvwwfvvfWevwwwVfuvgwfwvwwwwgVeuvwwgwwVfuveuvwxwxgwwvvFvwWwwwwvgWwVfufgwvwwgvwWwwwveufwvgVgwvwwgvvgwwwwvwwwwxwgvfvvwwwwwgwvwfvvwwwvgvwfvghwvwwfvvwwhwwvwwwxwxwwvxgvxgvxwxwxwwxvxwwvwwwwwwwvwxwwwgwwhxxwwwgxwwwvwVwvwWwwwvfGVfevgwwvwwgvwWwgveuvgvgxgwwwwvwwhevgXwwwwwxwwwwxxwwwwwwwxwxxwwxxwxxhwwwwwwxxxxwxwwwwxuwfwxgwwwfxwgvwwvxwwwxxxwwwwwwwwvxxwwxwwgxxwgxwxxxxxxwxvwwwxxwwwwxwwwgvwwwwxwwxwxwxxxhwwwxwwvxwwwwwfvvwwwwgwvwfvwxvwwgvfvvwxwvvwwfvvwwgwgvwwxwwvwvwvwwwwwvwwwvwvxwwwwwvgvwwwwxwwwwwwwxwwwxwwgggwxwxxwwghxhwxwwwxvvxwxwwxwwwxwwxwwwxxwwggwwwwxwwwwxxwwxwwwxwwxwwwxxwxxgvwxwwxwwwxwwwwvwgwxwxwwwwwwwvgwxxhwwwwxwwgxgxwhwwwxwwxxwwxwwwwxwwwwwwxwwvwwxxxwxxwxxwgvwxwwwwwghwwxxwxwwwwxwwxwwwwvwxwxwwxwxwwwwwvxwxwwxxxwxwwxwgwxwxwwwwxwwxxxwwxxxwwwwxhwgwxwwtvVwvfvUwvxfggugfwvvwvvwwwvwvwvwgwvwwwfwuwwwxwwxTfWffeeweffvfuvwwvuwwwwwuvgwwgftwwfvwwvvvwwwgvwxvwwwwwhwdegwVefvvgewvwvvfggwwghvgwwwxwvwggfwwwwwxwxvwwwxxVffwdffwfwVwvgwfvvuwwvxvgwwgwegwwwwwvwxwwwvwwhvwwwxxxewwwwffwegwwvwwgvvwgwvdwwvwwwvgfwwwxfwVvwwwwwxvevwvgxwVwwwgfxwwwwwwghwvwxwgwvggwvgwwgxwxxwwwxXxxxxxvvggwwwwwvvvwwwevvwwwvgvvvxwxvwwvwxxwwxxxwwwxfgvwwwwwwwwwxwwwguxxxwgvwxwwxwxxwwwxwhxxwwwwxfvvwwgutfwwvvgvwwvwgwwwhxwwvwwwxvxwxxxxwhuVvvfvvvvwvwwwvvvwwwwvxwwfvwwwxxwwwwwwxwwgwxvUfwfFfufvgwwwhvwgvwvhvwxxwwwggwxwwwxwxxgxxxxwfvwvevvhwwwwxvgwvwxgxwxgwwwwvgxxwxwwwwgwxxgxwxvfvwwggvhwwxvfvwwxwwxwxwxwwwxwxxwwwxxwxhwvwwgvwwwwwgwwwwwfwwvwwhxwwgwwxvxWwgxwwwvgxwwxhvxwxwfgvwwxwwxfxxhwvxwxxxwwxwxwxghwxgxxxwvxxwxgwxwvvvwhxwwwwwwgvwvxxxgwwwxwhwxwwwxxwwhwwxtvgwxwvvwwvfvfgxvwwwwwvfwvvgwwwwxvevfgwuwvvvvvwwfgwwwvfwwvxwvvvwwwwxwwgvxwxwxxeeffwwwgefwvVvwvgwvwvvwgwwwfwwwwwxwxeffvvwwwevvwxwvxwffwwvwwwwxwvwwwxwvwwxwwgwwvwwwwgvgwvvwvwvvwwxvwgwwwxvuwxxwxxgxxxvvfgwwwwwxggwxxxwgvwwxxwxxxwxhwwwwwwwwwxwwwwxwwxxwfwvwxwwxvxxxwwxwwgxwxwwvxwxwwwwwxwwwwxvxwxxwxwvxwxfvvwwwwwfvwwwuwwwxwxvvwxwwwwxvwwwwwhxxwwvfwwfvwwwwwwwwwxxgxwwxwwwwwwxwxwwwvVegwwwfVfewfvwgvvwwwxxwwgxhwwwwfwwgxwxwxwxxxwxxwwvvvgwwvwwwgwuwwwwwwwwwwwxvvxxwwxwwwgvwwwwwwwgvwwxxxwwwwxxwxxxwwxwwxwwwvxwgwxhwwwgxwxwwxwwgwwwxwxxwxxwvxhwwgvwvxwxxvxwwwgxWxhwwwggwxwwxxwwvwxxwwwwwwwvwhwxgvvxxwwxwwwxwxxwxwxxwxuWWwWvvwfwvwfvwgwwwwwwvggxwwwgvwwvgvwwWwwwvwwxwwxFvvvffewvgueeuwgggwwggwgwwgwwwgwgwwwwvwwwvwwwgvvxgwwvwwwwwwWwwwvgvfvwuvgwwWvwwgwWwwwhwwgwwvvgvwgWgxwwxwwwwxxevfwgvwvWvegvvgvgwgxgwwwwwgwwvwwgwvwwwvwwwwvwfxxwxwxwwwwgwwugWvwwwwgfgwwwxvgvgvwfwwvwvwwhwvwxwxxwxxvxvwhwwgwwwwgvvxwwwhxwGgwwxwwwgxwvwxwwxwgwxxwwxwwwxxhwwwwgwwvvvwwfgwxwvwwwwfwwxxwwwwwhhxxvxwwwxwxxxxwwxxgvwxwxvwwwgvwgwwxgxwwwwwxwhxvwxwwxwxhxwwwwwwvvwufwvgwvvvwwvvwwvwwwewxvxwxwwwwwwwwxwxwwxwwxwxxxvgwvgwuwfufwfvwuvgwxxxgwvhwwwwgwxwwxxwwhwxwxwxwxwwwxfgvwgwwwgwgwwvWVggwwwwxvwwwggxwwwwxwwwwxwxxxwwxXxwxxwgfvwwwwwwwgvuvvwwwwwWxwxxwxwwxwxxwxwxhwxwwwxhwhxxxxvVwwwvwvvwxvxwgvvxwwxwwgwgxvvwwxxwwwwxxwxxxxwvvgwwwwvWwvwwvgfgxgghxwgWxwvwxwwxwwwwwwgxxxwxhxwxwwwwwwwxwxwhvwwgxwwwgxWxvgwvwxxwwwwxxwxhwwxhxxxxwwwwggwwwgwwwfxwwwwwvwxxwwxwwxwxwwxxxxxwggffwwwgwxvwgvvwwvwfgvxfvwwwwwxvvgxwveufgwgvwwuwwwxvfvwxxgwwwxwVvwwvvvwvvvwxfvwwwwxwxedgwwwvwwwgvwgUVuwgwfwwwwxwgfvvwwwwwxgwvwwwxxfVVvfwvxvvwxUuvfwwwxwwxgwvegvgwxxwwgwwwwxxvvwwwwwwgwgwvWwxxwvwwuugvvxvwwxxxgxxvwwxwWxxwwvxxwwWwxhggvwgwwwxwxxwvwwwwxwwwwvvwwwwxwwxwxvewwgwwwxxwxwvuwgfwwwwxwwxxxxwwwwxxwwgvwwwwwwxwwvWfvvhwwvwwwxxuwgwxxvxgwxwwxxxxwvgfwwwwwwwwwvxxxwwwxwvxxxxvwwvwwUVvvgxgwxwwxxwVfdwxwggwxwwwwxxxwghwxwwwwwxwxwvwwwxwwgxvwwwgwwxwwgxwwxxwwwwwwwxxwwxxwxxxwxxwwxxxxwxwxwwxwghxvwwwxxxfwwxwhhxxwwwhwwwxxxwwwwxwvwxxxwwwwxxwvxxxwxgxxghvxxxwxwggvwxxxxgwxwwxxxwxwwxwwwwxxxxxwxxvwxxuwwvvxwwwwvgfuwgwwvfevfgvfuvwvvfwwwvvfgwfevxgfwwwvwfuvwwwewFcwvvvvvgfvvuwwUdvwvfewvgffwvvefvwUwgwfuvgfwvwvvwwgggfvwwwwgvvwveEwVwwffuvgxvgvwvwwgwxfUwvwvwxwxxxwUEwvuwfwwvwvwwdSfvvgfgwwwWhwwfwwvewwgvwwvxwwwxvxwwwxwwxxvwwvgwwwwvwggvvvxvwvwwxVewwwgwvwwwwwuwwxuvwvgxwgfwvgwwvfwwxgwvwwwwWwffwwxwvvvwvwwgvwvwxggwwwwggfgwwgwfWvxwwwvwgwvwwwfwvfwwvvgwwgwwvwxxwwewwwwwxxxxwfwgwxwwwwwggffxgxwxgwxwgwwwvwwhxwwxwxwWwffwxhwvwwwvwwwwvufgwegwvwxwgwgxwwfvwwwvwwvwwwwwwvgewedvvwvwwwvgvevgUewxxwvxvwwwwwwxhwwvxvwxwwxgwwwwwxxgwvwxwwXgxwhwfwvwvWvgwxwwvwwwgwvxwggwxxxwwxvwwwwvwwfvvxxxwwwwwvhfwwxxwwxwwwwvxvxwwwwwwwgwwwwxwgxwwvwwwfvwwvxxxguvwwvgvwwwxvwgxwwxwhwwxwvvwwwwxxggvwfvxgxvxwgxwwfggghfwvxgwwxwwwwwwwgxfgvwwfwwwwwwxwwgwvwxwwxvwxvwwwwxwwxvxwwvxgWgwwvxWvgxwxwwvwwwgwxxgxwwfvxxxxwxwvxwvvgghgwwxvxwwwwwvwwxfwfgwvwfxwfwgwvwwwwgvVvwwwwwwfwvwfwvvgwwgvvxwwxgwvvvvvwfVwvwvwfwfvwgwwgvvvvwwggwvgvfwfvvxvfgwwxhgwwwfwwwgwwxwvvwgggwwwgvwwwwfVvgvvxwwvwwwwwwgwvwwhwwwxwwxfwwVvfWvgwhggvwwwgvwwwwwgwvwwwwwxwvgwxvwwhwxwwwwwwwwfwwwxffwwwfxwvwwwgwvgwgwwxgwwxwwgwvwwxvgwxxxwwwwwwxwvvwwgwwvwgwgwwwgwxggvwwwxxwxwgwxgwwxgwwgvwwxwwwwwwxhwwwwwwWvgxwxfwxwxwwwwwwwwxxxxwvwxxwwxwfwwgwwwwvwwhyvwvhxwwhwxwwxxwwxxxxwwxwgwwgfWwvvxvwwwwvfwwwwwwfvvwvvxwwfwwxwwgwwwwwwgwxvwwfwvwfwvvvwwwwwvwwhvxhwwvwwgvwxvwwvwwgghwwwwwhgxwwvvwxwvvvwgxvggwgvxvgvwxwwwwxwxgwhgfhwxxxxggwxvwvwwwxwwwwwwwwvhwwwgxwwwwxwxwwhxxwwxwxwwgvwWwgwvwwwwxwxggwxfwvwxwxwxxxwvxxxwwxxwgxwwwfwwvvxwwwvwwwhxgxxvxwxwwxwwxwwxvwvwhxxwhxwwwgvwgwwgwgwwwwxxvxwwgwvxxwhvxwwwgxhxxxxwwxwxwvxxwvwxvxwxxwxwvxxxwxwhxxxxwuVVvfvVveguwwguuwvgvwvgggvfudgvvwuwhwfvxtwvgvwVvfxwxwfuwugVuggwvwvuWVwvwfwfgwfvwtwfWvuWwvwgvgwvfvvwWgwwhwwwwwVetvfgfvfwwfwuWVwwgwwfvwxwvugwwfuwwxvxwWvvwwggwwxxwtfVvguvWfwwwwwfvfgwgwwwgwwwxwWfufvwwwxwxwwwwhgwwwwxwxxwxwfuvVewuwvgvuGVwwhvffwwxwtgwfvwwfevwwvwWvvxwxwwggwvgvvgwwwfvuwxxggwwwwwwwwgvwvwxwgwvwwXgwvhwwwwxwvwwxwwvwgvufvwgwxfvvwwvxwvvgwwwwwwwgxwfuuwwxwwwhwwxxwwwwwwwxxwwwxvwwwwgwwgwwwwwvwwwxxxwwwggwwwwxxxxwwvwwwwwxwxxfuuwuwwugwwvuugvwwwgwvgvwwfwwwwwwwvvxwgwwwxxuwwgvfggwxwwwgvuwwggfwxwwwvvwwwggwxwwwxwwwxxwuwwwVvuwwwgvwxwFevwwwvwwxwwxwwgwxwwwgwfwvxxwwxwvgwvxwwhgvvwvgvwwwxvWgwvwwwwwwxwgwwwxwxxwwwwuhwfvvwwvvwwwwVevgxxgvgWxwwxgwgwwwwwwxwwwwxxvvwgwwwvwgggwxwxwwwgwvgxwwwhwwwxxwwwxwwwxwxxetuwwwwwxxwxfvgvwwhfgfxxxxwggfvwfggxxwwxwwxwWfvwwwxwwwwgvwxxxxxwxxwwxwxwwxxwxwweggvgwwwwvvgevuvuwwwvfWVfvwvwvgwwvwwvwvfvvwvuvWwwwxuefwwfVVgfvvgvwvvwvwwwduewWfwgfvuewvwWvwwwxfwwwgwWvfgvwxgfvwwvwfvwgvevvwVfvwwxxwwwwwxwhvvvwwxwxgvvvugvwfvvgwwefvgvwHvwwxwvwhwwwwwwwwwwwwwwwwxvggvvWwvwwFVwwwxwfvwwwwwwWwwwwwgwxwwUvvxwuvwwwgwwhwwfvxwwfwwwvwwwwxhgwvwxxfvwwgwwwwwxxgvwHWvwwwwwgwgwwxwwwxwxufvwxwWwgwxwwgxxwwfgwhwxwgwxxxfwwwhwwwwgwvWXhwgxxwxxxxxxxxxxxwwhxwxwwwvwgvfgvvvwwveffvGvwwwwxwwwwxwgwwxwwwwwvxVvvefwgfwvxxuvvwgvwgvWfvwwwwfvxwwxwwwxxwhhwwwwwwwwvwwgxfuvwwwhwwwvxxxvxwvwxxhwwwxwxwwvwwwvvwwwwwwwwwwwgfxwwwhwxWwwhwVwgufwwwwwVvwwwvvxfvgggxxwwwxwxhgxxxxwwwgfwvwvgvwwxxxwxwvvhXWwwwwwwvxxxwwwgwxxwxwwxgwwwwwxwfgWvhhwwwggwwxxxwxxxwxxwwwxxwwxwxwgwwghwxwhxwwxxxxhxhxwxxvvgWwwwwfwvxvwwggvwwwwwvvwwxfxgwwwfwwxwwgwwxWvvwwwvvvvwvwvvVewwwwuuvvwwgwgwfwvwvwvvfgfxvfwghvwwvwwwwvwgwwwwwwwwwfgwwxuuvvwwwgvvgwwhwxwgwxggwwwxwvwwfxvffwfwwwvfvvwwwWfugvwvxgwwwwvwwvvwvxvwwxwgwvxwxgwwwxwgwvwwwuwgvggwwxfvwxxwgwwxwwwwvvxwxxxwwxxwvwwxwwvwxwwwvfwwwwwwgwwwxgggWhwwwxwxwxxvwgxwxxvvwxwwwggxgvvwgwvwwxxwwwwwwwwxgvvwxwwwwxxxwxxwwxwvhwxvuwwwwwwwvwwxwxwxxxwwwxxxxxwgvxwwvvwwgggwxgxxwwvxxxvwwxxwvvwxwvwhxxvvwgvwvxwwwVvvwwwvvwwwwwvwxxxxxwwxxhwxwwwwwvggvxxwxxwwvwxggfvxwvvgwxwgwwwxhwxwwwwhhwwwfvwwgwwwwwwwwxvwggwxwhvvwwwwvxxxxhxwwwwxxxwxwgwwgvxwxgwwwxvxwxgwxxwwxxhwxwwwggxvxxwhxwwxwehgwxwxwwwvxgvwxwxwxwxxwgxxwwhxxwwwvwgwwxxwwgwxxvhxwxxxwvvxxxgwvxxwwxxwhwxxxxxwwwhxxwxwwwxxwwxwxxwxwxswghfvgwfVwwwwwwwwxxwwxwgwvwwwwggvwvvwwvxxxeuVwfffwggvxgvuwwuvwwvvwwwvvvwvuvvxwxwwwvwwxwwxxUUWwfgufwgwwwwwwgwwwwwxxwgTgwwuwvwgwxwvwvhwefgvffffwvxwwxwvwwwwwwgxxwevwwvvwwwxxwggwwwwxwwxfvgvgggwwfuwgVwwvwfvwvgwwuvwxvwwwwxxxwvvgwfgwxwgwwvfwwwwwxwvwwwwuwwgwxvvvgxwwhxvwvwgwfwwvxwwwfwwwxwxwvvwwvhwwvwxvwxvgwvxvwvwwvxwwvwvwwwxvgwvvwwwwxxwwxwvxwwwwxwvwugvwvgwhwwwwwhwgvwvwuwxxxvwwxvfvwgvvwwwvwwvvxhwfwwwwwwwxxwwxwxwwgEfwfwvwwwwwwwxhwwgxxwxxwwUUewvggwwxwWwwwwwwxxvwggfwwggwwwwhvwhwwxwwwwxvgwwwxxwwxgWgxwxwxwvgwwvwgwwxxxwfwwwvxwxwvwhwxwxwgxxwxxwfwgvwwfwwwxwxxwwhwwwxxwhwwxwwwwwwhxwgxwwxwxffwwvVwwxxvwgwwwwxggwwwxgWwwwwxfxxwxgwwggwwgwwxggxhwxwwxwwxxxxxxwxxwxxvfwwvwwfxvggwwwwwwwwwgvwvvwwwvwxwgvvwxwwwvwwwgwvvgvwfwvwwgvwwwwwvwhwvwwwvwwwgvvwwvwwwwwwvwwvwwvfwwfxvgvwwfwvwvwwwgvwwwwwwwwvwghgxwwxwwwwwwxvggfwvwfwvwvwwxwwwgwvvwxfvvwwxwwwwxxwgwwvgwwwxwwwwgvvwwwxwxxwwxxwgwwwvxwgwxwwwxwwwwwwwwwwwxxxwxwwwxwwgvwwwggwgxgwvxvgxwwwwvwgvgwvwxwwwxwwxwxxwwgwwxwxwxwwhwwwwwvwxwxxxwwwwxxxwxwwwwxxwxxwwfxxwwgvwvwwwwwwfvvwgwwwxwxvgwwwwxwwwvwwwwwvvvwwwwvwwxwwxwwwwwwwwwwwwxxxxwwxwxwxwxwwgvvwwghgwwwwgvwxxxxwwxwxxwxxxwxwwwwvwxwvwwxwxxvxwwwggwwxxwwwxwxxwwwxwxwgvwwwwwxwgwgwxwgxgwfxxvwwxwwxxwxwwxvwvwwwwwwvgwwgwvwwxwwwwwwwwxxxwfxwwxwvwwwwwwxwwwxvgxwxwwxwxwxwxwxxwwvfwwxxxwwxwxwxwxwuwxfgwvfvvggfgwvggwvfwfxwwxgvwvfgvwgwwwwfwxxvvgwGvffvvweufvwwvgwwwvvwwgwwwwgwwwvvfwwfwxhwgxxwwwxgwvgvffwewgwwxwvwvxwwwwxwwggwvwwgxxwxwxwwwwvwfvevvwgwwgwvhwgvwwwwhwfvwwxwwwwXwwwxhgxwwxwwwwwhfwwWfgvGgwvwghwfvvxwgxwwwwwwvwwxxxwwwhwwwvwxvxwwwgwgvvwvwxwwwwgvwxxwxvwvwgwwwwwxxwwxxwwxwhxxxhxxWgvwxgwgwwwwfvwwfwhvwwwxxwxvwwhwxxhxvxxhxwxxxwxwxwxxwwwwwxwwgwwwwwgwwxwxfxwwxwwxxhxwwwwwwwwgwwggffgWvvggwvwwvvxxxwhgwwwwwwwwwwwxxxxwxfvwvgvwvwvfwwwwhxwvwwwfvwwgxhvxwwwxxxxxxwxwwwwwvvwgvggxwxgxwgxxxwfwwwwxwgwxwwxxxxxwxgwwwwwwwvxxwvwwxwxhxxgwxwwwwxxwwxxxgggvgwvwguwwwwwvwxxxwxxvwxxgxgfvxwwwwwxxxxxwxgxxxxwxxxvwwxxwhvwxwgwwxxwwwxxwxgxhvwxwxghwxwxhxxwwwwwxwxvxggwwhWwxwwxgwwwxfwwxwxxxxvhxxxwxxxxwxwxwwxwxxvwwfxwwxwxwwxfvxwwwxwxxvwwwfvwwvvgvgwvgwwwwggxvuvwvvfgfvwxfwxgfwgevvvvwwvvwvwggfgvwvvwwwgxwwfvwwfwfVwgveuvwgwgwwwgvwvgvwfwxwwwwgfVxvwvwgwgwvwxxwvwfvvwwwwwwxwxwwwxwwxxxfggvuvvfwwwwfvwxvgWxwxwwvwvwvwwxxwwxxwvxwxxxxwxvwvwgWewWvhfvfxggwwwvxfgwgwwvfvwwwvwwwwwwwwggwwwvwxvwgvwwgwgwufwfvvxvhggxwXgefuvwwvwvwxwwwvwwwxxwxwxgvWvugvvxwwxxxxwxwvwxxvvxfwwvwxxwxwwvxwxxxxwxwgwwvwfxxwhfhwhxvwxwwwwwwwwxwxxxwxwxxwwgfvWwwgxwwwxgvwwwwwwwVwwwwwwwxwgwgvvwwwxwxvuvvwvgvxxxwxwfwggfwwwwwxxwwwwvvwwgxwwwxwgwwwxgxvxwgwwgwxwwxwhxxwxwxxwxxwxxxwwwwgwxwxvxxwxwhwxwxxwwvxxxxwxwxxxxwxxgvXgvfwwwxvxxvuvxwgwwvwvwwxwwxwwwxwwwwxxggwwwwwxxwwgwghhfxwwxxxxwwxwxxwvxgwgwxxwxxwxwvxwxggwxwwwwxxxxwxwwxwwxwxwxxwwwwvvxxxxxwwuvtvwuwuvwwwwwtfvfuuwuwxufwvwUvvwgefffuvwxfwwvvwfgevvvgVvwwuwwvwvWfwggUvwffwvfgvvfwvffggvwevvwfwwvwvvvwwvfewxgvwwffefwfgfwgwgevwfgvvvwwwxhfvugwhwwwwwVfwvvffgfvgxwwwwWwwtwwxvwwwwwvfxvwwxwxwwwgwwwvwxwxwvwxwWuWwwwwwGvwwwvwwxwvwwWvvwvwfwxgwfwgwwwwwxxvgfvwxwhwwwwwxwXfwwxhwvvwwgwfxwgwwxgvwwxxgwfwvvvwwwvxfvvwxwwwvxwWuwfwwwwXvwugGxvWxgwwvwwwwwwwxwwvwwgwgwwwxxgwxwwwxwwvvxufvwwvwgwvwuwwVuuwgwwhvwvgxvvwgvvwhwvwXwwgwwvwewvwwwwfvwwfvwhwwvwwwwxwhxxvwwwUwvwfvfvwwgfvugwvwwwvvhweffvwgvgwxxhwfwgXgvxgvvhxvfvvwwxwxwwwvvwwvxwwhwwxxwwhxwxxwgxwwwuvvwfvxwxwvuwwxvwwwxwhvvvxwwxwwxxhwwwhWxwgwxxwgxwwxxwxwhwwwgxvvwwwxwxwxwxgwwgwwvxWwhwwwxgwhxfwvgwxwgwgxwwhwXxxvvxhwghwwxwvxwxxwwwgxwwwwxwwvwwvwugwvwfwwwwfvwwfwwvgwwwwvvxwwwwuuwwfvwwgvwfwggwvvvvwfvwvgwww5cvgggfvwfwwwvwgwwvvvuuvwvwwwUuvwvwgvwvwvvhwvvwwwwwwwwwvxwgvwxwwwwxwxwgVUwvfvvggwwffvvwwvwwwwwwxxwvUUwwfvwvfwvvwxgwwwwwwwggwxwwvTdffvwwwvwvxwwwwvvwWggggxwwxwwwWuwwgwwwgvwwvvwgwwwgwwwwuuwxxgwwvwxwwwvwxwwwfwwwwwwwwxgfwgwwwgwwwwwxghwwwwwhgvwwhfvvwwvgxhgfvvwwXuxwwwwwwvvvxwwwwgwwwxwhwgwvwxwwxwwwwwwwxxwxxwwxvwwwwxvvxwvwwwgxwwwxwxwwwwgvwwgvwwwwwhwwxwxwxwvwgwwvwwwwgvwwwwgwvwwwgwwwxwwwvvxgwwxwxwxwxvgvwweevvwxwwwxwwxwwwfwvfwwwwfvwwxwhwwwwvxxxwvvvwwwxwwxgwXWwwggxwwwvvvgwxgghxxxgwwgwvhxxwwxfvvwwwwgwwwxwgwwwxwwwvwwwwwwwwgxwgwwwwxwwwwgwxxfvwwxwwxxwwwxhwwwxwwwxwwxgxwxwwgwxwwxwxgxwwwwfvwxvxxxwwxvhxxwwhhwwwwwwwwhvvwwxgwwxwwgxwxxwwxwfxvfwxvwwxwxwwwwwhgvwwwxxwxwwxxwgxvvwvwhhwxwwvvwwwwwxwwwwxxhwgxxvgwwhxwxxxfxxwgwxwwxuwvvvvfuwvwfuvxvwwvfvvuwwvwwgfvvwfwggvuwvguwevgwwvwfxevgfvVfvvvwfvevffffegffwvwvwvgvFcvTufvvvvwuwvvvvvwvguwfwvwgWwuwwgfUvvfwuffffvwvfvvfgvwwwvfvVVvvwwwvxwvwgvwxvwxhwwhwxfVTvSdfufwvwxvxevfvvfugvxwwgwxvwvwgvfVgvwwwwwgwvvwwxgwwwfwwwvwwvwvWegwwwvWvvwwwvwgwggfvwvgvwfuwwgvwvwwxuwwwvxgvvvfggfewxwwvgwvgvgXwwwggvgvevwvwgugwwfwwhguwwhwghwwgwWxvgvvgwvwwvwvwevwwvwvhwxwwwxwwgwwvgwwxwwvwvvwxgwxgwxvvvwwgugwwwxgwvwvwwwggvgvwgggvwwwxwxgwxwwgvwxxgxwwxfwvvwxwxwwffvwvvwvvvwwvwwvwgwwwwgwwwwxxgfvwuvvwwwfvtuvwfvgwwwwwwvwgwwwwwwwwwwxwwvgwwwwwwwxwwwwggvvvvwxwgwvwwwWwvwxwxwWfwvhwwwwwxvxwghxwvwgvwwwwvvfvfwgwwvxwvxwwvgWvwwwvwwwwwxxwwwwwwwgxwwwwwwwwggwfwxwvgfwwwwwwvvwvfwwWwxxwxhgwwwwwxwxwxwwwxxwwwwgwewwgwvWwwwwfgxwwwwwXfwwgvwwwwwwwwwwgxwwxwwxwwxwwxwwwwgvwwwvgvxxwwvxxxxwwvxwfguwxwwwwwwgWwwwwxxvwxwwwvwwgwwvwwvwwwxwhwwxwwxwwwwwwhwfhhwhwxvxgwwhufvwgwuwwvwvgwwvwwwwguwwvwfwwwwegwwwwgwwwvwgwwuwuwvvwwwgggvvwwgwwvggvwvguwvvwgwfwwgwwwwvvwwgwwwwwuvgwVxwwwwvwwvWvwvvwxgwwwwvgvwvwvwvggWvvxfwwwvwvxwwxuwvfwwwfwuxwxwvfwwwwxwwxwwxwwvvwwvwuwwwwwgvwwwvwxxwwwwwxwxwWwwwwwwwwwxvwwwwwvxwvvwwvxwwvwgxwwwwwwwwgxxwwvwxWxvvwwwxwwWwxwwxwwhwwwwvwvwWxwwwgwxxwwxxwxvvgwwwxwxxwxgvwwxgwxWvwwwwxhwwwwvwwxwwwwWwwgwwwxgwwwxwwxxgvuwwxxwwWwwwwgguwwegwwwvxwwwxwgwwwwwwvxwxWvwxwwwxvwwwwwwwwwwwgwwwgwwwwwwvwxwwwxxwwxwxwxxwwvvwwwgxwxwxvwwvwuwwxxxxwwwvWfxwxvwxxwwwwwgwxwxwwwggwwwxwwwwwvwWwwxxwxwxxxxwxxxxwwxwwggwwwxwuwxxxwwgwwwxwwxwwwwwwwxwxwwxxwgxwwwwwwxxwwuwwxhwxxwwgvvhwuwxwxwxwxxxwxxxwwwwwxxxxxxxxwxxwwwwvwwwwwwfwxxxwhxgvxxwwgwxgwwvuwgxwwxwwxxxwwxxwxxwugfwfvfvVvuuvvgwwxvgxfffgwwgfvuwfffwwggveugffVffguwxvwwwWwffwfwvgvwfvfwvgwxgwwhffvwwgwwffVgfvvwfefXuvgvVvewgwgwggwvvwvfgwxgWfwwwgwfvvwgVVfffwVfwwwgwwwgvvvhvgvhwwhfgvwvhgwXxgwffWwVfvgWvggewgvVwewgwgggwwvvvgwvwvxwgvwwXwvwxwggwWggwwwgwwxgxvgwxwgwvvwwgwvwgwwgfwxvwgwvfwfwgvvxvgwwgfwxwhwwwwxwwgggxwxwwwwgwxwwwwxwwwwwxgwvwwxwwgwvwxgwwvhwwwwwwwwwwwxxwxwhgwgwvwwgvvwgvxxxwgfwggwwwwxwxxwwvwvxwhxwggwxwwxgwWxgwgwxwxxwwwgwhvxwwxwggxwwxxwxxxgwhwvgwxwWwgxgwxxwwwwWghxxwwxwwfwwwggvwwxwwvwvwggfgwwhfwvxvxwxvvfvvveewwwvvgvwwwxwwxvxwvwwfuwxvwvxfvhvggwxggwwvwwwwxuuvxwwfgwvgfhxxwwwwwxwwwwwxxVfugvfgwwwwgvvwwhgwwwwghwgvvwwwwfwwwgwvwxghwwxwxxvxfvwfhwvwxwgwvwxwxwgwxxxwxwwwwwwxwwwwxwxwxxwwwwVvwxwwwxwwguwhgwgwvwxwwwxvwwhwxxwxwwwxxgwxwwwxgwxgwgvxxxwwxWggwxxvxgwwwxwxxxxwwxvwxxxwwhwxgwwxgvxvgwwwxxwxwxwghgxxxhwvgwwwxwwwwwwwvhxghxwxgxwxwwwhxwxwwhgxgxwwxxxwxwwvwxxwxxwwufFwfvugfvvxfwfvwwwxwggwwxfuguefvxwgwvgwvwwvxvxWwfvvVdvwgWggvWwwvwvgwwvwwvufvfvdfgwWwvwwfgvwwvwwwwxvwgwwfwgfgfwgvwgwffwwvwvwwgwxwvwgwdfwwwxhwxwvwvwxxvgegffdfwwwwwvwgwwwwwwwfwvugvgwxwwwwwwxfwgwxxwwxgVwvvwvwvwgguwxwfvvxwwwwgxwwvfggvwxgwwguwwwuvwvwxwxxwxwwfggvgwwvWgwfgwwfwwwgwxwfvxwwvxwfwwvwuwwvgwwwvxwwxwhwwvggwfwuggwgxwvwuxwwwxxwvuwvwwwgwwxvxwwwwwxwwxgvuvwxwxvwxwwwxwwgxwhwxuwwvvwwwxvuxxgvwxxxwgwffuwwvvggxxgwvwwwvfgwwwuwxxxwwxxvvvwevuwvvvwwwwxwwgwxwxfgwwwwvxwxxwxwwwwwxvfwxwwggwWfwfgxgwwwwwwwwwvxhhggwwgvwfgvxwxwwvgwwwxwwwwxxxgvfvvwwWwxwwwwxwxwgxxwxwxwgwgvfwvgxvgwghggwgxwxxggvvwgwwxxwvvwwxwxwwwwwgvgwwvwwxwwxxwwwxwwwwwwvwwuggvxwwxvgvwgwwwfggxxwxwwwvgxwwvwwfxhgVxWwhwgfvgwwwhwwwwwwxxwwwxwxwfwxxwwwgxvxwwggwwxvwvwwwwxwwwwxwwxxxgwxgxwwwxwvxwxxvgxwvxwxxwdgwgvfvuvvuvwwfwwwvwwffvwvvwuwvgfwVwvwvwvtvxwvvwwEbvfffveuufvwvvvgvvfvwvwwgvgvfvuvtwvuwvvwguwfgvwuwwwvvgffvwvguvgfTwggvuvgvwwwwefvvgwwwwvvwgfgvwwwgvvwwxxwwwwxwveUwvfvwddUuwwvGvwwvgwwwwwwxwvfvvvuwgwvgwwvwvwwwgwwwwwwxxxwwwwwuwvfwwwwwGtwwwfvwwvvwwwwwgvwufwvwwwwvvvwvwtwxwwuxwvwwvvvwvwwgwgvwvwvwwvwfwwvWwgfvwwwgwwggvwggwwwwWwVgVewfGvwwvwgwwwvwwxwwfggwgwwgvwgxwxvxwghxvxwwgxgwwxwwwwwvwwgwwvwwhwvvwvhvwgfwfvxwwwwwwxwxgvxwuwggwwwwwwwgfwwugvwvvvwgwwwfwwwvxgwuwwwvvvvwwwxwwwxwgxwwvxfwvvfvwvwwwgwwwgwwwwwwwwwwuueuvWvfvwvvwwwwwvwwwwgwwvwvGgfwwwwwvwgwfgwwvuwwvwwvwvwgxwwwghwvgvggwwwwwvvwvwvwwgwwvwwwwwwwwwxhxWwwwwwvwwggvxxwwwwfvgwwwvvxwwgvwwxxxwgwwfgxwxwwxwwwwxfwxhhwwxgxwxwwhwwwvwvwvwgxwwwgwwvwwgwWwwuwhxwvwwvwhwvwwvxvwwwwvwvwgugwgwvgwxvwvwehwxfghgwxwwwwwxxwxwwwvwwwwgwwgxwwwwwwwwgxgwgewfwWwxwwwvwxXwgwwwxwgwxwwxwwvwwvxfggvgfUffvvfwgveVvxwxuwwgwxgvuhwwwvxwvgvgwwxwvwxwwgvvwegVvvhgvgvvguwVvgwvwwwwwwxgvggwwgwvwxwgwgwvgwwwggvwgwgVeevgfffgffvuwfgfgwgwvfwwwwhvgggwvwxxxwWvvxgwhwwwwwxwweWevggvvvvfgwwvggwvwxwwhwgwwxwgggvggwwvgwwwwwwwgwxwxggwwwwvvwuwgvvWfwvwwewgwwvwwgwwwxwwwWfgwwxwgwgxwwwxwwxwwgwvgwvwwvwwgwwgwvwxwwwwgwwvgvwgxwwxwwwwwwwggwgwgxwwwwwwwvwggvuwgwwxvwfvWfvvwwhvxwxxgfwwwxxwwwxgggwxghgwxvwvgwgwxwxwwwwxwwwwwwhxwwvggwwwwwwvxwwxxwxwvxxwwvffvggvvvfwwwvvwfwwwwwwvwwvfgggwvxwvxxhwwwxgxwxfwggvvwwvwwwwwwwwhwxxwxwvwwxwwwxwgwxhwxwxwvwvgwwgwVvvwwwvhwvwgwxvwwwgwggeWvvwxgxwwxwwwgwggWgfxwxwxwwwvwxwgfwgxwwvwwhxxggxxxwxwvgwhwwvwwxxwxhwwwxxwvgvgwwwgvwwwgxwvwxxwwwwwwwfgvwxwxxxxxxxxwwwhvxggwxwfvwvxxwxxwwwwwwwwwxwwxwwxwwwxxwxxwxfvwxxwxwxxxwwxwvuxwwhvwwwxgfUxxwgwxWWwwxwxwwwwwwwxwwxxwwxWWfwvxwwwwxxgwwwwwwwwwwwvxwxwhxwvvwgwwwxwxxwwxgxwhxwwwwwfwwwvvwwxwwwwfvwwwwvgwvwfvvwvfvwwxwwxvwwwvwvwwgwwwfffwvfvwwwgvgwgwgfvwwwwxwwfwffvvevwwvvwvvgwwfvvvvvvwgwfwgwfwwwwwvevfvvgwfwvwggwvhgfgvwwwwxwwvwwwwxxwwvwvuvfefwwwwwxfgfvwvvwfwwwwvwgfwvwgwvwxwxvwvwwwwwwwxwwgvwwwwwwwvwwwwwfwwvwvwwhxvvgvwvwwwvwgwwwwwwwvgwwwxvwgvwwvwvvxwwwvwwwwwfggwxxghwgvfvvvvgvvwwwwwwvwxgwfxwhgwwfwgwvvgwvxwwvgwwwwwxgwwvwwgwwgwxxwwwwxwwxwwxxgvwwwwfwxxwgwgwwhxvwxwwwgwwvwwxxwxwxwvxwhgwwwwxxwxfwxwvvwwwwvwgfvwwvxxvwwfvexxhwwwwxvvwvgvvwvvgwwxwwwwwwxxwfwwwwwxwxwvxxxxwwxwwwxvwwwvwhvwwwwwhwwxwwhwxwwwwwfggwwwxwhwwxvxwxxxwxwwwwwvwwwwwwxwwwvwwwgwxwxwhwwwgxwwxwhxxgwxfxwxwwgvwwgxvxxvvwwfwwvwfgvxwwwwxwwwxwwwwxwxvwgwwgwwvwxxhxwxwxwxwwgwwxwwwxwwwwvwhwwwwwxwhxxwxvxvwwwxwwwgwxgwwwgwxwxxxwwxwxvxwxxxhwwvwxwxwwggxvxuxwwwewxxwwwwegwwxvwwvwvwwwwvwggfgwwgvvwwvwvwwvwwgvwWvwugwfwwwwwwwwwfxwvxwwwgUfvgwwvvgwwwwwwvwwwwwwvwwxggwwwwvxwwwwffwfwwxWfvhwwwxxvwwwxvwxgfwwxwfxwxwgxvuwwwgvwxWxwwwwxwxxwwvXwwxwwgfwwwwgwxvWfVwvxvwxVwxxxwvxwwxghwwwvvwxxwwwwxwwwxvwvxWfvwwwwwxwxvggwwxwxxgwwxwwwwwxxwvvvwgwwxxwxwgvgwwgxxxxwwwxxxwxxwxwwxvggxhwwxwxwwvwwxwwwxvxwwxvwxwwwwwxwvggxwwwWwxxwxwxgvwwvvwwwwwxwwwxvvwwwxwxxvgvwwxxwvvwwwxwgvvwwwwwwwfvvwxwxxwvxgxhhwxxwwwwwwxwxwwwwxwwhwxxxxxwgvgvvwwfwwxfwwxwwwxwwhwxwwxwwwxvwxwwwxwxxxwxxwhhwwxwwwxwwwwwxxwxwgwggwxwwxxxwgXhvvwwxxxvxwwwwxwxxxwfxxwuxuvffxwwxvgfgwxwhfwwffgvgfuvwuwwwwwvwwwVvwwvvfgvwwwwgwvwvwvvwgwwwvewwgffgvfGgwuwwhwfvgwwgwvvfvxvvgwvwuwfvwwwwwwwgwvwgfxWfgvvwwWfwvwwvvvgwhwgvwfvfgfvwwvwwwfgwghwgwxgwfwwwgfgwfWgwuwwgwfwwwxwwwgwhvwwwWfguwuwfewwwwvwwxwwxwwwwhwvxxwvvwxvgvwwhfwvwWwwwwgxwwwwwggvvwwvwwuxxxWvwvwgwwxgvgwxwgxwwwwxwghwvgwwwwwwwvwwggwxggwwwwvvvwwwwwgwwwwwgwwwwgwvwvwwwwwwwwxxgwwxfgwwuvwxwwwwwwwvwxwxhxvgxfwwwxwxwxwhwxwwwwwxwghfxwXwvwwwwwxxwwfwgwghwgwxxwwwwwwvvwwwfvwwvvvxgxwwewwwgwvwwxwxwvvxgwwfwwxwwwxwwgwwwwxwwvwwxvuwwwwVwwwwwwwwwwwwfwwwwwwwWgwxwwwwwwwvwwxwhwvgwxwgwwhvwwWwvwwvwWwwxwxxxwggfwVxvxXxwuwgwwgxxxwwwwwwwgxgxwvwxwwgxuxgwwwhxwvwwwxxwwwwwwwwwxwwxxwxwwwwwgvwxgwxwwhwxxwxxwgwwwwgxgwxwghwwvxwwwvwwwwxwxwwwwwxwwwxhwxvxwxwxxwxxwxxxwxwxwwxwxhxvhwwvwwgwgxwgwggwwwxxwwwwwwxgxxxwhwwwxwxwwxvwwwvxxwwwwwxxugVvwwwwwhvfwuwwwvwvwwwwwwwwfwhwvwvfwwwwxwwwxwxVvewwwfwwwwwwuwvgvwwwgfwvxwwwevgugvgfwhwvwfuvwwwwggwxwfwvxguwwxwfvwwvgwwwwwwwuVvwgwfwwwwwxwefwgwxvwwxxwuwfwvwxwwfwfwvvwxwfwwwwwwVvewvxvwwwvwxxwgvggwvwgwwwxwgvwwvwwwwxugfxxwwwwwwwwvwwwxxwgxvgwwwwxwwhwwwwwwWWwwwxxwgvxwxxxvhxgfwwwwgfwwwxwwwwwwfxwwxwwgwfwwvwwvvwwwwwwxxvwfwxwxgwhwwwgvxxxgvwwwvwwwwxwxvwxwxxwwwfxwxgwwwvxwxxwxvwwwwwhwwwwvwvxwxxvwwwwgxwxwwwvvvxwxxxvgwwwvxwwwxwvgwvvvwhgwwwgvwwffgwwwwxwxxwfvvxwwxwxwVvwgwvwxwwwgwwgwxwwgvwwwwwwgxvvuwXwxwvxxxVvvwwwvwxxwxwwwgxhgvxxxxxwvvwgxxwxxxwufwxwwxwwwwvgvwwhvwwwxwwvvxxwwwwxxwwwwwwwwwvwxxgggxxxwwwwwxxxghwxhwxvgvwwghxwxwgwvwxgvwwwwgxxxwwwwggguwxxwgwhxxwwwxwwwxxwvwwwwgvxxwxhwxxxwwvxxwwxxxwwwwvxxufUwwvgvuxwgeUfvgvwwwffwvwgvwwgewvwfvwtwwwwvwfvvwvwwgfvvwvvvwwwfggdgvwwgwgwVvwffwwwwufwVvfWwxwewvvwvfvgdwgwwugwwwvwgewgvgvuvvgewwvvvwwwwwwhvwvwguvvfvgwXewfvfwwwwwxwwxvwwgwgvdvwwwxvwewuwwvfgwxhgffffvxwuwwwgwwwgdwwvwwwwxxwwwwggwwgfwwwgwwwvvguuxwwwwggwfwwvwxwwuvvwwwwwvxwVvgwwxfxwuwxwgwwwxwhgwwxwwwvvwxwwgxwwwwgVvfwwwwwgwvwwxxgvwwfwwwvgwwwwwwewxxfxwxhgvfwxwwwxwgxgwxvwwvwwwxwxxwvxwxhxvwgwwgxgxvxxwxwwxwwvxwwxxwvgwwxvxxwxwvxwgewvvwwwwwgvvwvwewxwwwvwvuwfvvvwfwwvwwvxwxwvwfvfdwwwwvvwvfwwwxvxwwwwwwwwxwgwwwwwwxgwwggwwwxwwwwwgwwgFwvwwwwfvwxfhxwfvgwwxWxwxwxvghgvwgvxvwVwwwwgwwwxxvxwwwwxgxwwwwxwwwwwwxhxxwwhwwwwfvwxwxxhgvwwxxvwwxxvwwxwxwxhxxwwxwwgxwwwxxxxwugxwvxwwxvwgwwxwwxwxwwxxwwgwxxwwwwwxgwwxwwxxxxgxhhhwvgwwxxVwwxwxxwxhgwwwwxwwwxxxxwgwwwxwwwxVxxxwgwwxwgxxwxxxxxxwwwwwwxuwfWwuwfvvwggewfvuwfgVugfwfffgvxfffwwwwuwgwfgvvwgxwwfgggwggfVuvvwfvewvwgvgvWWwvwfegVvgwffvuwVwwvwwgfvvvgwgvvgvwvvvwwwxfguwgvwwvvwggwwwwgVvgwxwgxgfvwfwwuvwgxwXfvgwxwwhvwxgwwxwggfwfwfwfwvwwwwxgwWggwggegvfxwgwfwuwfwwfvwwwgwgfwvfghgvwvwxwwwwgfxvxwgvvxfWwvgggwwuvxvxwvfWwwwwvwwwxwVvwxwwhvxhwwggfwwgwwfgfwwwvvwvwwwwwwxwwfwwgwfwwwwhwwwvwwwggwggwghWggwwwwgwwgwvgwfvwwwwxVvvwxxwXwwwxwwvwxwgwvxwWgvfwhgxgxwxvwwxwwxwxwgghvgghwxgwgxhggwwwvxxwwwwwwgxwvwwwwwwggxwwwwxgwwwwwggwwwvwvwvgwwfvwwvuwwxwewvvwwvwwwxwxffvvwgwvwwwgvwuvvwvvvwwwwwwxfwgxvWvwwgwwfVwvwxwwvwwwxwgvwgxwwxxwwwxwwwfwWwfwwwwUgwwwgwvhgwwWgwewfwwxwWxwwgvwgxhwwhxwhwgvgfvwvwvfvwwxwwwvwwhxhvxWwvwwvwhwxwwwxwxwwxwwwvwxwwwwxwwwwwxfvxwwfvwxwwhvxfwwgvvwwxvgwxxxwwxwhxxxwwwgvwwwhwxwwwwgxwgvwwwghvggwgxvxwwxxwwwgwwwxxfxxwwwwwxxXwwvfwwghvwfxvvwvwWgvxwwfwwwwwxwwwwxxxwvxhhwwwgwwwgxxgxwvwhxwwhgwxwwwwwvwwwxxwwuwvgwwwwfwvvwwwwgvgwwwwwwwfwvwwwwwfwwwwVvvwvvevffwgvveVwwwwwwwxevfvwwwfvwxfwwwxwwevewevwvfwfwwvwvvvvwwwvggvwwwwwwwwxwxxUfVgfvgfwvwgwwwVwfvxfgwwwxggfuwwxwwxvxwwwxwwxvwvfvwfWvwwfwwwwgwvgvwvgxwwxwxVffvwwwwvwgwxwwvxwxwwgwwwfwfvwxwwwxwxxxxxwxyufvwvwwvgxvwvwwwxxvwxvwxwwwwxxxxxVwffxgwwwwwxwggwvgwwwxwwxhxxwwwwxxwxwxwwwwwwgfvwwwwwwwxvwwvwwwwgwxwwxxxvgwgwgvgwxwwxwwwwwxvxgwwgwgvwfwvwwxwgwwxwwwxxgvvwxxxxxxwxwfwvwwwwxwwwgwwwwwwwxxwxwwgVvvgwvwxgwxxxwwwwxxvwgwxxwwwxwxggwwxxwxwxwwxxwxwvgwgwxxfvvgwxwxwwwxxxxxxwxxvwvwwvxxxwwwwxwxwxwwwwxxgxwxueuwuvwwevvwfwwuvgwwvffwwvfxxfwvgvwfvvvvwwvvvwwwevvfgvfgvfvufgwwvwwwvWwufwwfxvuvwvvewvvvwvwwwgVwvwwgVvwwvvvwfwfvwgfwfwvvvvwvwwvvwvwwvgwwgwvWwvwwwwwwwuvfvfvuvevvvwgwwuvwwgvwgwfvwwxwwgfvwwffggwxghwwwwvxxgwfwvwvfuwvWvwvfwgVfwwxvfwwwwwwwugwwxWvxwwuwwwvwvwwwwwggvwwvwwfvwwwwwwwvVwhfgwvwwXxfwvwwwwwwwwwwfggwhwwfxxwxugwwwwgwwwxfufvwwvwvwvwwwwwgvwxwwwxhxwwwwwwwfxxhxhvvfwwfwwvwwwwwvgvwwwggwfgwwvffvwwxxgxxfwwgwwgwgwvvwuvwVfgvvwwwgwwvvgevwwgwwvwwwwwwgwwwwxwxwwgwfvevfwfVvvwwwwwvwwxwuhwvwxfwvvwxwhxvxwwwwhxvwvvfvwwwwWwfwggwvwvwvwwvWwxwgxwwwwwvxvvxwxwhxxxwfufwgwgvvwfwvwvwwwwwWvhwwvwxwWxwxwwwxwgwwxwvUfwwwvvvwxfwuwwwwhvwwwhxhxwxwwhwwxxwxwxwwxhwwwxfuwgwwvwwwwWhwwvwwhxuVxwwwwxxwwxxwxwvwgwwWvwvvggxwxxvfwvxwvgvvwXhgwxxwxwwwwwxhwxxwwwwgvvvwwghwxxxwfwxgvwxwwvwwwwwxgwwxxxwxxgwwwxxxfvwwxwfwwwvwvxvwwxwwwfvwxwuwwwvwwxwwwwvwwxxggwwgdgfuwfvvgvwgvwhwGvfwggwwWvfwxwwwxwwWwwxxxxvwxwuwwuwwwvvgvvxwwwufwwwxwwwxxwxvwwwwxwGvvvgvwfwvxwwfvGghwwhvxxwwwwwwwxwxxxvxwxwvwwwvwgwwggvwwgvxwxxvvguwwwwwwwgxxwwxwwxxxxxwwfxxxwgwgwwwgwvwhwwwwxGwgghwwwhxxxxwxxxwxxxwxxwvwgwwwvxvxfwwwxwwxvwxwwwxwxwxxwwxxwwgwwxwwwfwfwwxxxwwwwxwxxwwwxwhwwwwwwvvvWxvvwwwvxggwwwxxxxxwxxxgvwwvwwgfvuwwwWwgvwxwgwwwwwwxwxxhwxxwwwvxwfvgwvwwwwwwwwwwwwwwxhxwxxxxxwwwwwwwhwwhvuwwxxwwxwxxwxxxwxxwhwxwwvwwwwfvxxwwxwwxwwXwxxyxxwxxxxxxwxgwxwwxwgWwgxxwgwgxwxxxxwwxxwwwxwfwwwwwwxvwwxxwxxxxxhxwwwwxwxgwgwwxxwxwxxvvvvxwwwwwwxwxwxwwwxxwxxxxxxwxxwxtfgvvwgvwvggwvfvvwwwfgwwfvwvfwwxwwfgfwwwwvwwvvwwfvevwvwwvwgvfvwwgvvgxvwwwWwvwdvwwgwwvvwvwwwwwwufwgFfweugvwfFfwwgfvwwxuwwvvwwwwxwvvwwwvxvwxwfVwvvgfgfwwwgvvwwwwwwxgwwwwvvwwvvwwwxwwxwwwxxwwwwxxwxwwvfvwwwvwwwgwvggwwwxvwwwxvvwfvwwgxewwgwxwxwxvvwxvwwwwwggwvgvvwwxwwgWwwewvxwwwwwvvwxwwgwxwvwUvwwwwfvwxxwvuwwwwwwwxwwwwwwwvwwxgxwwwxwwwxwvwwgfwfgwwwwwfwgxvWwxxvwwfwvxxwwxwfwgwwwxxxwwvwwwwxwvvvwvwwxwvvhxxwwgwxxwxvwwxxwxxwvvwgwwwwwwwwwwwwxwwgxxgxwWwvwwgxvxxxwxwwwwxwxvwwwvdvvgWuvwwwvdvvxwwxwwwxxwwuvwwuwxxwwwwwwwwwwwxvuwwwvwwwwwwwwwwxxwxxwvwwXwwxvwwwxxxhwwxwwwvwWxwwwxgwwxwhxwhwgwwxwxwwxxwwxwxwxvwwwWwgvxxgwwwwxgwgxwwwxwwwwwxxwxwwgwwxxxxxwefwwwxwxwwwxxwxwwwwwwwwwxxgxwxwxwwwwwxwvwwxwxwvwxWwxwxxwwwxwxxxwxwwwwwxwxuvwvvwwwwwvvwvwwgvwvwwwwvuwwwvwvwwugxwwwwwwvwxwxwvwwvgvwwufwwwwvwvuwwwugwxvwwwxvwwvvxwwwwwwewuwvwwvwwwwwvxwwxwxvwuwwwwwvvwwxwwfvwwvwxwvxvwwwwxwxxwwxxxxxwgvwwwwxwwwwvwgwuwvvvwwwwxwvwvvxwvwwwxwwwwxwvwwwvwxwwwxxxwxwwvwwwxwwwwwxwxxxxxxwxwwxxvvwwxwwwwwwwvwwxxwwwwwxwxwwxxxwxxwwwwwxxwwwwwwvwwwwwvwxgwxxxxwxwvvwwwxwwwwhwxwwwwxxwvxxwwwgwwwwxwvwvvxvwuwhhwxxwwwwwwxwwxvwxwwwxxgwwvwvxvwwwwwwxxxwxxvwxwwhxwwxxwwwwxwwxwxwxwwwxxwxvwhgwwxxxwwvwxxxwxwxxxvxwwxvwwxxxxxwxxxffvwwwvvwgwvwgwvvxWvwwfwvvwwgwxwvgwwwfvvwvvwgffwwgfvvwwwvvwgvwwvgwwvWwvwwwwvewfwwwwvgwwwdfgwGfwfvwwwwfwwwwwwwwwgUwvwwwVwwvwVwwwwewfxvvwvwvvwxwxvwxvvfwwwwvwgwwUfwwVUwwwwwwxvvgwvXwwvwwwwvwwwwwwvwwwwfwwwwwGvvgwwwwuwvwggwgwgwwfwwxwwwwxwwwwwwwxwvwwgwwwwxwwxwvxwxwvgewxwWwwwwwwgwvxxwhwhxwxwfwwwwwwxgvwwwwwwwwvxwgvwwxwwwxwuxwwwvwxxwwwgvwwwgghwvfwwxxxwwwxwxwxwwvwwwwwwxWwwxwwgwxwwvvvwwGgwvwgxwvwwxwwwvwwxxwwwxwggwwwwwfwwxvGwvhhwwwwwwwxwwwwwwxwwwvvxwwgwwwxgfgvwwuwwvuxgwvxwwxvwxvwwxxwwwhwwxwvwwwvwxvxwxvwwfxfwxxwwwwxxwxhwxxwwhwxxwwwwfVwwwxwwwwgwxwhwwxhwxwvxxxvxwxwwwwxwxxwxvvwWwxwxxwwhxxxwfwwwwwxwxwwwgwwwxwwwwxgwwxwwwwxwwvxfgxwxwwwwwwwwwxwwwwxwwhhwwwwvvwxwwxxxhxwwwwwwxxwwxwxwxwwwxwwwuvvwwwxwvwwxwwwvvwwwwwwwwxvwgfvwwxwfwwwwwwwgwwwwwwwgvwggvwvwWgvwXgwuuvwgwwguvwXgwgwwvvwwvwwwhwgvwwgxvwwwgVewvwxwwwgVewwxxvvwwxgeuvfvfwvfwfvvwWffwwWgwvvwvwwwwwgwvwwwwxwgvgVugXwwwxxwwxhwwwwwwfwwwgwwwwwwvvwgvwwhvvwxxwgvwfwwwwwxwxwxwwuvwWgwfvwwwxwgxwwwwgwxxwvxwhwwwwxhxgvwhwwxwwxwwwffvvwwxxxvwghvxwwxfvfxwwxwwwxxxvwwwwxwxwwxwwwwXuvwXhwgxgfwwwhxvxwgxhwwwwwwxwwwwwwwgwwwvwwxxwwgwvhxwwwwvgwgxxwxwwvvhgwWvwwvwwhwxhvwxwwwwxxwwxxwxwwvvveevfuvxvxeevxwwuwvwgfewxwwxxwxxvfgvgwgwwwvwhxhxvwwvxwhhxwhxwwwwwwwwxwgwvghxxwxwwwxgxwxxxfwgwxxxwhwvxxwxwwwxxxvxxxxxwwxwxfvvvwgwxxxwwwgxxwwwxwwwwxwxwxwxxxxwwwwxxwwvvwxwhgvwwwwwxxxwxxwwxwexvwwwvvggwgvwgvvwwwxvvwxwvwwwgvvwxggwwwhvvgfuxwwXVegwxgvfwwxxwwwvwvgwvgwwgVwvxwwvxvwwgwxvvwfwvwgwwxwgwxvwwwwvvwvvvwvwwwwwxWuvwwvgwvwvvwwxwxxveVgwxwwxwgwwwhwxxvwvwxwvgwwfvwhhwwxwwwwxwxvwwwxxwwxxgfWwxwxwvwxxwgggxwwwfwwxxWwwwwvwvgwwwwvwxwxwwxwwgwwwvwvgxgxvwwxwxwwxwwwxwwwwgwwxxgvwwwvwwwwfwwwwwwwwwwwxWwvxwxgwwwwvwvxxfvwhvwgwxwxxwwxxwvvwxwwwwwgwvgfggwwwwwxwxwxxwxvffwwwxwxxvgxxxvxxwxxxvwxxxwgwwwuvwwxxxxxxwxhwxwxxwfwxxwxgwwwxxxhwxwwwwwvxwwvwxwwvxgwgwxxwxxxxxxxxxxwwwxxxwgwgwwxwxxxuwwwwvwfgwwgvwvwwwfwwwvvxwwwwwgxgwwgwxwvvwwwwxwvvxgwwwWwvgwfvvvxwETfgvwfffwgwvwwwvwwwwwvfwvfUwwwwwgwwfwgwfwwwVeUvvwgfwwwwwUuuwvvggwgvvwfwwxxwfvwwwwhvvwwxwwggxvwwwUuuwgvwxfffwwxwwgvXfwwwvvvwwwvwwwwwwxwwxxwwwwvxwvwwwgvfwwwwwWgwwwwwgwwwxggwwwvvwwwxgvwwxvxwgwxwfwwwwwwwwwwwxfvgwxxwwwwwwwwwxwxgwgwxwwwxxgwwwxxhvxwvgwgwwwxUvvwxgvvwxgwgxwwwhvvwwwwwuwwxxwwxwxwxxwwwwwwwwxxgxwwwxggwwwwwwfwwwVewxwxxxgwwwxwwgxwwwwfwwwgwgwvvvvwvvwwgwwwwxgvvxwwxwwwwwvwwxwggfwxwwwwwvvwvfwwwwUwwwwgwwwwwvwggfwwxwxwwwxxxxwxwwwghwxwvvwfwwuwwxwfvwgvwwvwwwgxwgwxxwhxxwwwxxwhwwxwwvwwvvvwgvxgwwgwxwxhxgwwxwwxxwwwwxwwxxxxxhgxwwwvvvwwwwwwwwxwwwxwwwwwwhhwwwwxwwxwwwwwwxwwxwwwhwwxxwwwwwxwxwwwxxxwxwwwwhwxwwxxxwwwxwwwvvwhwxxxxxvxhfwxwxwwwwxwxwhwwwhxxwwwxwwwwhxxxwwwxwwwwwxxxgwvxfwwwwwxxgwxwxwxwwwwUwwwevvwvwgwwgwwvxwwwwwvwwwvwvwwwwvgfwwwwwvwwwgfdvvwwwVgvhvwwhvvwhxwwvfuvuugwgwwvwwgxwwwxxxvvfvvfggwgwwwwwwwwwwxwfwvvvhwghxwwwxwwwwVuwuufvuvWgwwwxwwxwwwwxwxwwuwvwhwxwwwwwxxwwwxwxwxxhewvwvwwwvxwvgvgfwwWwwvwwxuwwwwwwwwxwvvvwwwvwxwxwwgwwWwwvwxVwwwhvgxwwvgwvwwvwvwwwxxwxgxxxwugwgwwxwwwwwwvvwvgwxwwxwfxwvwwxggxvxwuwgwxxvhwvwwwvwwvwwwwwwvxwwvvwxxWwwwwwxxwwwwhxvwfwwwffwwvgwgvugwwwwwwwwwwwwwwhxwwxxxxwwvvgvwgwwwwxwxhxwxwwwvwxxvxxxwwxwgwxgvVvwwwwwwwwwwxxvvwxfvwwgvwxwwwwwwwwxhxwwwxwgwwwwfvXwxvwwxwxxxwxwwwvvwvvvwwwxwxhwwwwvugwvxhwwwwwxxwwwhwwxxxxwxwxxxhhwwxvwwwgwxwwwxvxxwxxwxxwwwvvxhxwwvwgwvwwwwhxxgxhxxwwgvwgwgwxxxxxxxxwxxxwwwfwgwwwxwxxwwwwxwwwxxwxwvvvxwwwwgfvwwwwwgwwwvwwwwwvwwwwvgwwwwwvvxwwwwwxvwvwwxvwwwwwwwwwwvwwvwwwwwhvxwxwwwwwwwwwxffvwwwwwwwwwwwfwwwwfwwwvwwwxwxxvwxxvgfvwvwvvwwwwxfwwxgwwwwwwvfxvwwgxwwwxxwwxwwwwwwxwwfwwhhvwwwwfvgwwvvxxwwwwwwwwgwvwxgwvwwwwwwwxgwwxwwwxwwxwwxxvwwxwwwwgxwxgxwwwwwwwwwfwwwxvfwxwwwxxwwwxxwwxvwwwwwwwfwwwvgwwwxwfwxxgwxwwwwxwvxwxxwxwxxxwwwvwwwwwvfwvvwxwwwxwwwxxxwxwwvwwfwwxxxwxvwwwwwwxwxwxwxwwvwwwvwvwwgwwwwxwxxxwvwwwxxwxwwvwwwxwwwxwwvwwwhwwxxwwwxwxwwvwxwxxxxgwvxwxwwwwwwxxxwwwwxwxxxwxwwwwxxwxxwgxwwxwxxwxwxxxwxxwxxxwwwvwxwwwwgwxgxwwxxxwxwwxxxwxxxwwwwxvxwvwxxwwxxxwxxxwxwxwxuvgwwwwwwgwwwwwwwwgwxwgwvwwggwxwwwwwwfvwvwvxfwwwwgwvwvgvwfvveuvwgfvhvwwwwgwwwvwwwvwwvwvgwwwwwgwwwwwwwwhwxfwwvwvwhWWvuvwfVuwfwvxwvwwwwWWvvvwxwxgwxwwwwvwxwwxxxxgfvwefvwvwvwvwwwfwgvggvgwwvxwwwgwwwvwwvwwvwxwwhwhgwxxvwxvvwwgwwwvwwwggvwwhgxwwxxxwwvwvvwxxxwwvwxxwwwxhwfvvwvwvwwwwwwgwxwxwxvwwwwxgvgvwwwhwxwwxwxwxxxxwhwwxwwgfvvwwgwxgwgwwwwwgwwwwxgfxwxwxwwwwwxhxxxxwvwxxgwgwvwfwwwgvwwwwwvwwxxggwwxxwwwwwwgwwwxwxgxwxxwxwxwxgwwwxwvvvwwhwwwwxwwxwwvwwxwxxxxwvwxxxwxgwwwVvuwwwxwwxwgwwxxwwwxhwwwwwwwxwxxxxwwxwxxwwwwvwwvUwvxuwxVguvwwwxvwwvUwvxxwwwxwwhxxxgfwwwugxwwwwghwwwxgxvwwxwwwwxwhxxxwxxxxvwwwwwxvgwwwxxgwwxwxxwwxwwxwxwxxvxxxxxxxwwwwwxgxwwxxxwxxxxxhxxwxxxwwwhxwxxwgfvwwvgxvwwvwgxxwxwwxwxwhxwxwgggwwwxgwvgwwwwvhxgxgxxxxxwxxwwwhxwwxxxvwvwwwwhxxhvwwwxwwxfvvwwgwWvwwwvvwwvwvwhxwgvxvvuwwwwxwwgwwwwgxfhxwwwwvvfwvvvwgwwwggvwwhxvgwVgvwxwwwwvvwxvvwwwwvwvwwwwwwwwwwxxwggvwwgwuwvgwwgwgvgfgxwwwwewgvwwwwxwxwxvxwxwwwxxvwWgvwxwewgvwwwwxgwwvwvwwxxwwxvwwwwhvwwgwvvxwxwwxwghvxwxwewwvwuvxxwxxvwxxwwwxwgwwwwwwwwwwwwwwwxxxwwwwwxewxvwvwwwxwwwhgwwwwwxwwwvwwwxxxwxxxwhwwxwwxwwxwvwwwwxxwvxxxxxxxwwwxwvwwhgxwwwvwwxwxwwxxvvwwwvwwwwxwgwxxhwgxwwxwxvvxwxxxwwgwhwxhwxwwwwxxywWwwgwwvwxwxwxxwwwxxxxxxwvxhwxxhgxxwxxwxwwwxwwxxwwwxxwxxxxxxxxxwwwwxwwwxxwwxwxxxfwwwwwvwwwgwxhwwxwwwwxgwggvvwxwwwwwwxwgwwwwvwxfvwvvwwwgwwwwvwwwvfwwgxwwwxhwwxwwwgwwgwwwwfggvgwwwxxxwxwwwwwwwwwwxvvwvwhxxgvwwxwwvwwggxxwgwwwwhhfxvwwwwgwxwwwwwwxhwwwwwhwwwwwwwwxwvvwwxxwxwxxwwwwgwghxxwvgxhxxgwwwwwwxwfwhgxxxwxxxvxxwvwxxxywxvwwwxvxxwxvxggwwxvwwxxwvwwwxgwxxxwxwwwxwwgwxwwwxxxxwwwvwwwwwxxxxhxgwwwwvwwgwxwxwxwwxxxwgwwxxwvwwwxgwwhxwwwwxwxggwwwwxwvxwwxxxxxxxwwwxwxxwxxxxxxxxxwwxxxxxwwxxxxwhwxwghvwxwwwghwwwxwxxvwwwvwfvvvvwTvxwfwwvgvwvwvgwvwwgvfvwgwvvwgwvwwVvvwfvwwvwfwgwhVexvFwvwwwwvvgvfvvfwvwvwvvfvwwffxwwwvxwfxwvwwgwfwwfvggwgggwfwxwvvuvwwgwwwwwfwwvwwwwwxggwwfwwggxwvgvwwxwgfwvfxwxwwggvwwgxfuwggwwfwwwvgwxwvwxwwfwwwvwwwwwwwvwwVwwvwwwwwxwgxwwgvwvgwwgvwvgxwvwxwwgvvwgwwwWwxwwwwwxwwwwvvwwwxvwvvwvwxwxwwwwwgwgwfwwwwwfwwwvvwwxxxgwwuxWwxwwxwxvwxgwvxvvwxwgwwwwwvvgwwwgwwwxgwwwwvxwwwxwwwwwggxxxwwwwvvwwvvggvvwvwxwgxwwvxfvvvxwgxwfwgxxxwwwwwvwxwxxwvxwwgxwwwgwhwxwvwwwhxwwwxwwxxhhxwwvvvwgwxhwghvvvwxgfwgwwwxwvwwwxxhxwgwxwwwwgwwwxhgwwwgxwwgwvxxwxgxxwxxwwwwxwvgwwwxwxxwwwwvwgxwwxxwxvxxhwwxxwwwwwwwxwxwxxwwxwxxwxxwwxwxwxxxxxxwxwwxwwxwwgwwwxxxxwxhwvwxwwwwwwxwwwwgwxxwvxwwwwxywhwxwxwxwwxwwwxufvvvwvvwwwvvvwfvxwWvwxvvwvwwxwwfgfwwvuwxwfffvgvvxffwwwwwwgvvwggvfwwwwwfwevwwvvwWvwfufwwwvwwgwwwwxxewwvwvwwvwfufggewwwwwxwfwwvwwwwxwwgwfwxhgwwwwfwwfuwxwgwwxwwgfvvwxwwwwwxfvgwfvvggfwwwwvwxwwwwwxxwgwwwvgvvgwfgfvwwwwwvxgwxvWvwvwgwvvwwvxwwwfwxvxggvwwwfgwfwxxwgxvwxwxwwwwwwxwvgwxwxwxwxwxgwvwwxxuffvwwwwwwvgfwxwwxwxhwwvvwvxvxwwxhvwgwvwgvwwwwfwwwgwwwwwwwwwwwwwwwgwwwwwwwwwwwxxwhvhwxxwwwxwwgwwwvwvgvwwwwvWvgvwwwwgwxwxxxwvwwvwwwwwwVvwxxhwwwfWwvwxwxxwxwwwwwxxuwwwwwwwwwxvwfwuwwwxwwwwggwwxxwxxwvwxgvwhffhwxwfvvwgvwhxwgwwwwwggxwvwwwwwwwwgxvxvxwwxxfefwwxwwwwwwxwwxxwxwgwxxxxxwwxxxxevwgwwwxxwwwhxxwxwxwxgxvgwvxxxxxgvvvwwwwwwwwvxwwwwxwwwwwwwwhgxxwvxwxwxwgvwwwwxwwgwwwwwxwxwvwwxxwwxxxwwxxxhdvvwvwwvfwvfgwewvxvwvvvwfvwxuvvvvvwwwgfvugvwvvvxWwuwwwvwfxgvvwgVtwuvgwwvwwwwwuvfwvwvgWtwuugwvgvvfwXvvvwvwgvgwXwfxevvvgwggugwugfvwvwfvvvwwgguweuVvevwwwgvvuvwwwhwwwwvvvuvfdegwvwwvvwwwvvgwwwvwhwudfvvvwwwHwwvwwwwwwwwwwvwxwvvvwvvwgffvxwwwvwwuvwwggfvuvwhwwvwhfvvxwwwvwhwgvwxxxxvwwxwwwxwxxxhhwwwxwwwwgwwwwwxwGxuwwwwwhwGwuhvwvgwvuwfwxxevwwwwwvwwwwvvwwxxwwvwwwwwgwwvwwwxwwwwwxwwhhxwwgwgwwwwwwwwwgwwwwWwvhxxwwwwwwvwgwxwwvwwgvwwwwwvwuvwgwgwwwwwvwwxxwwwgwwwwwwgfwwwxwwwgvuvggvwgwxxvwwXvvwxwxwwfwgwwwwgxwxxhwxwxxwwxggvwffvwvwwWwvuwwxvwhxwgxwwuewwwgwhxxwvvwwwwxvgwxwwwwvvwwwxwwwwwwfwwxxwvvgwwwwwhwxxwwfhwwywwwtuwvvwfwedwwxhwwwwhxxwwwhhwgxxxxwwwxxwwxxxwwwwwxgxxxgwwxxwxxwwxhxxwwwxvhwxwwwxwwwxgwxxxwxvwwwwwwwwxwxwxwgwwwxwwhwgxxwwxwxwgxwxwwxhxvwwwxwwxwxxwxgwxwwxgwvwwgwvwvvwwuvwgwvwfwvgwevwgwvwgxfwgwfwwwfvwwwfwhgwfgwvxwvwvvvwggwwggvVfwwgvwwwfuvwwxuWwvwvvvvwwwwguwwwwxvwfuvwvwuvwwgvvfwvvwwwwvfvwwgwwwwhwxwwxhxwwhwwvwWwvwwwwwvwwfwWwvwwgwgvvwvwvwxwwvxwvvwwxgwhxvxxvvxwwwwwwgvwwwggwvwgwgwwwwwwggwxwwwwwwxwvwwwwvhwwvgxvgwwwvvfwwwxWwwwxgwgwxwhwwxwxxhhxwwwxwxwwwwvwwwvgwgwxwxvxxwwgwxwfwwwvwxxxhxwwwxwxvfwxwwwxwwwwwwwwxxwwwwfxwwxxwxxhxwxwwgwwxhxxxxxxwwguwwwuvwvvwwxxwvuwwwgxwwxgwwxxwxwxwxxgwwwxwxwwuwwwvxwwxwxgwhwwwwxwhxwwwxwwgxxxxxhxwwwxwxwggwxvgwwwvwvwgwvwwwwxxgwxvxhwwwwxxhvwwwwxvwwwxwwxxwWxwxwwxwwxwxxwhxxxxvxxxxwwwfgxwwwhwwvgxxhwwxgxxxwwwgxwxxxxgvwwwxxwwxwxxhxxxhhwxwxxxvyxxwxvwxxxxwwxwgwxxwxxwwggxwxxwxxwxwxvxxxhxwhxxwvwwwxwxxwwwxwxwwxxxwhvwxwwfvvfvwxvwwwvwwwwwwwwwfwfwwwwwwgwwvvwfvwvvwwgvvwwvfuuwwwvwwvwgwfWwvuwvvwvggvwwgwvwxwwwwwxwxxwfgwwvfvwgfvwwvwwwwwgwgwwwggvwvwxwwxwwgwwwwwvvwwffvvvvvwwwfxwwwffvvwgwvwvwwwvxwwxxxxwwwwwxwhhgvgVegvgvwwfffwfvgvwxwfvxfvwwwvwwxfxwxwwxwwxxgwvwvggvfwfwxvvwvwgwxwfwwxxwwwvwvhwwxwhgwwxhxvxhwwvwwvwwvvwwwwwwwwwgwhgxwwwwwwwxwwwxwxwxxxwwxvwwvvwvvwwvwvvvwwwxgwwwwwgvwwwwwwgwxxhwwwwwwwwwvvvvxWwfuwwvvwfxxwgwxxwwwwwxwwxvwvwWwuwwwfxwgxxxfwwwwxwwxwwwxxwxvgfvvvwwwwxwxxwxxwwwwvwwwvgwxvwwgwxhwvvwwwwwwwwwwvwvghwwxxhvwxwwwxwhwxxxxwhwwhxwxwffwwwfxgxxwwwwwwgxwwwxxhwxwwwxxwwxxvgfwwvhwxgxxxhxwwwggxxxvwxxwwwwwgwwwfwwgwwwwgwwhgfvxxxhwwwwwxgwwwvwxxwvvwwwwxxwwwwxvvxxhxwwwwxwxxwwxwvgxwxwgxxvvwvvvwwwwvuwwwvvwwwvwwwwwwwvwwwvxvfwwwwvwwwxwxfwvvvvwvwvwgwwwwvwwwfwfwwgwvwvgvvwvwvvwgwwwhdvwvwwvgwwwvwvwwftgWvvwwwwufwwwwwvwgwwwgVvvwvwxwwwxvuwwwwwxxgffvvvfvwggwwwwgvuwvwwugwwfwwwwwvwvwvgxxvwfwvxxwwwwwwwwwgvwvwvgvwwwwwvwxwwwwvwvwwwvwwwwwgwwxwvvwgwwwwgwwwwwvwgwxwwwwwwxwgwwvwwfxgfwgwwwhxwwwwxwwwwfewwvwwvwxxwfwwwwwvwwgxwxwgwwvxxwwvwwwxxxwwwwwfwvvgwwwxhwvwvwxwgwvgwwwgvwwwgwwwwwwwwwwwxwxwfwwwwwwwwwwfwwwwwgvwwhwxwwwxxxwwwvgwgwwwwFwgwwwwwxvgvwgwwwhxwxxwxxhwxxwgwwgftvvewuwxwvuxxwwxxvwvewuwxgxwxxugxvxvwxxxxwvwvvwwwwxwwwuwwxxuwxwxwxwxwxxwgwwxwxxvxvgwgxwgwwwwwxxxgfxwwxwxxxwwwxxwxxhxxxxxxwwwwgwwxxxwwwwwxxxwwxgxwxxwxxxxwwhwxxwwxxwwvuvwwwxwxxxvwwvwwwwwxxwwwwwxxwwwwxvxwwxwxwxwwwxwwvwxwgwxwwwwwwwhwxvwwwwwxxxxeffUgwvgvxvgewwwfgwgwgvfvwgvvwgwvwfvwugwwvvvwgwwwgvwwfvwwwwwgwvvVfVwvVdweeUfwgvgfvfgfwgwfvfwvweuvwewvwVwewfwwwgwwwwwwwwwfwvwfgewxfwUddwgfWwwvvwgvvwwgwuvwwfffgwwwwwVgwgvwwgwwxwgwvvVwUddveufwwwfWwvvwggwgxwwgwwgvgvvgfwgwgxwwwwwwwxwhwgwxwwwxwfgwwgwfgwgfwvwfVfwgfgwfuuwwwfgffvwggvvvwwwgvwwgwwwvvwwwwwwwgwwgggwfvwgvwfgwggXwVghwwWwhguwwgfwwwwwwvwgwvwwxggwwgwxwwwvwgfffgfuuwwfWvfwfwggxgwgwfvwgwwwfwxffgvwwwxwwwxvvwvfgwwwwwgwwwvvfwwggxwWgwgwVwwwvxwgggwgwwVvwwxwwxfwwfvwvgewwgwwgvfwvwgwvvwwvfvwwwxwwvfwwvgwwwgvxwxwxvwwvxvvfVgfwgvvfvfvhwvwwwxvevxgwhgwxggwxxwgxwggwwwvwwwwwvvgugwwggwfwwgwwgvwwxwgfggvwvwggwxwwgvwxgfxwwWwgwewgwwggVwvwwwwwxwxwhwgwhxxwwxwwxwwWwwwwxgwhwgwwwwwwgwwwgwwwhvwwfvgwwwwWwwvwwwvvwgwxwwwvwgggwwXxgwggwhwxgwwxwgWwxwwxwhxwgwxxfxwxwxwwwxxwgwwgwwgfxwghgxwwwvwxwwgwwwgwwwwvfvwxwwxgwwwgwwvxwwxwwxgwgwxWvwvwwwxwwwxgwwwwvvwxwwxxwwwwwwwwwwwxgxVwwxwgwwxwwwfwwwwwwwwwwwwxwvfwwwvwwgwwvxvvvvwwwvwwwvgwwvggwVewwwwwwxwxwgfuwWgewwxwwwvfvvwvvwwxwwwwvvxwwwwvvwggvegwwwvwxxwvwwwwxWvvuvvVVxxxvgfwvgxwwwvvvwvxwxvxwvwwxxxxwvwwxwwvwwwwwxwvwwvwwvxwhwwvwwvvxwxwggwwwxwxwwwwwxwwwxwvwfwWvvuxxwgwwwwwwxxvwwvvvwwwwwxvwwxxwwwxwwxwwwxvxwwgvvwxwwxwxxwwwwxhwwwwwxwwxxwwwwvwwwwgvgwwwxgxwwxxxwhxvwwwwwwxwwwwwxxwhwxxxwwwwxwwwvxwxvvfwwxwwxwwwxwxxwwwgwxwgwxxwhvwuvwxwxwxxwwwxxwvwxhxxxxwxwwwwhwvxwwxwwwwgvwwxxvxwxgvxwxxxwvwwxwwxvwxxvwxwwxxhxxxxwxxxwwwwwxwxwwxwwgwfuwevvwwfwvxwvvwvgwvvwwwuwvfwwwvwgwvwwvwvwwvwgvuwwvvwxfuwggfwwvwwvwevwwvvvewewvvvVvvvfvwgvvwwwvwwvvvvvwxufwwwwewvvfvwwvwwwgwwwvwwvwwwwwwvuwwwwwwxxwxvvfwwvvvuvgwvgwwvwgwuwgxwwuwwvwxwwwwwwwwwvwwwwwgwwwxwwvvwwwvgwwwwwwfwwvwvwwwwwwvvwgwwgvwwwwvvwwwwvvvvwwwwwwvwwgwxxwwwuwxxwwwwhxfwwwfvwvvxvhwvwvwwwwvwwxwwwwwfwwwvwvwwwwwwgwvvuxwvwwwxwwvfwvwwwhwwwwvwwgwwwgxwxxwwwwwvgvxwwwwvwwgxwxwwwwwwwwvvvvwwwguwwwwwvwwwwwvvwwwwwwgvwxxxwwwwfwwgwwwwgwwwxfvwwxwwfwxwwwwwxvwghwxwxhgxxwwwwvgwvwxgwwwwwuxwvwwwwvwxwwwgwwwwxwwhwgwwwvgwwfwwxwwvwwwwwwwvXwwwxvwxwwvwwwwxwwvvxwwwxwwxwwxwwhvwxwvxwxgxwwhwwwwxwxxwxxggxgxwwwwhwxgxwgvwwwhwwxxwgxwxxxwwxwxxhxvwwvxvwvwxwxwvwxxxwgxwxhxwwwxxxwwwwvwwwxwxxvxxwxxwwWwwxwwxuwwfggvvwwxffvwvgwwwwwwfVvwgvvvvwwffvwwvuwveewfgwvvvwwgvwwWWsgwfwvvvggGtfwggvvvvwgfvWwuvwvgfgvvvewveffvgVvGvwwvwwwvwwwWVewvgwwgfvvgfdvfgvugwwwgvwwxfvwvwwxwwxffvvwwhvwxwghwvvuUfgvwwwvwueVvwg8wvwwwvuvvvwvvwvxwwwvxggvgwwwwwggwwwwwggvwvwuwXWuwxwwxvvwwxfWgvfgwvhuvxxdvvguwhvwvxwwwwwwxgwhggvwwwwxxgwwwwGgtwwwwgggwwxwvWvwg8hevwwhguwffvwfvwffwxuwwwvwgwgwwxwfvwwxwxwwwwwwgwxwwwvwwwwxgwgwxwwwgvwWHhuxwwhwwvwwxxvwwwvwvwxwgXwgwwwwgvwwwwwgfvwgvvwgfwgvvxwwwwwgxVwwvwhxwfxgxwxghxvvwfwfWvwxxwxWwggxwWxxwwwwwxwwgwwwvwxwgfwwwgvgwffvgwvWwvvvvvwgvhgvvfgwwvwhvxxwvwwgwwhwwgwvvgwgvwvwwvwwxwxwwwwghwwwwxwwxwwxwwwXwwwwwwxvvwwwwwuuwwxwhvwwwwwWwxwwxweegwwwxwxwxwxXxhhxwwwwwWwhwwxxwghhhuxxwxwwgxggxwwwgxgxvwgwwwgvwwxwxwwwwxxxxxwwwxwwwwvwwxwwxvvxwwxwwwwvwwxxxxxwwwwwwxwhwvwwxgvwwwwwvwxgwgwVgwwuwwggvwgvgwvwwgwfvfwwxwvwwwfgfwvvvwvwwwwwwvvvvvgvwwwxwwwvvwgwVcwwvwfvfvfvvwvgwwwvvwvgvfwfffgfwgwgwfvgfgvwwvxwxwxvvvfwvfvvwfgwwvvvvvgwgwwxwwwgwgtwUuevvgwwvvwVuvwwwwwhxxwwxwvwfwffvfgwwwwvvwhwgwwwwwwvgUuevvwvGvwwwwwwwwwwgwgxwgwvwwhfvfvggwwfvxvVevwvwwvwvxfwfggwwwwwvwwvwvwwwwxwwwwwxfvfvgvwwwvwgggvwvwxwwwwvxvwvwvhwgwwgvgwwhwfwwxvwvwxgxxhgwfwfwgfvxgwwwwvwvwxwwwwwwxwwVuvwwwwwvgxwwwtwwggvwwxgxwwwvwvgvgvvwxwwvgwwwvwvwxwxwwwwwwwwgwgwxgxwwgvwwwGvhwwgvwvwwvwwvwwWuwgwvvwwwxwwwwwvvvgwfwvwwwwwgxxwfvwwWuxhfvxwwfxxxwvgwwwwwxwwwwwxvhwwwxhvvvwwwwvvvvvwwwwwwwvgvwgxghvwwwvgvwwwxhwwwvgxwwvwwxvxwwwwgwwwxvwwgggwxvxxwgvxgwwwxwwxxwwwwwxwxwwxwvwwxwwxwxgwwvwxwxwxwwvwwwxwgxgwwwwwwxwxwwgxgxwwwwvwfwgwwxxxwwwwvwxwxwxgwwwwgvgwwxwghvwwwxxxwwgwwwxwwxwwhwhxxwxxwwxwgxgwgwwgxwwwwxxwxxwhxxwhxwwxwwxwwvxwfxwxxgwwwwxwwwwwxwhwwwwhwweuvwvwgvwwwgwvuwwvggugwwwufwwwwwwwwvwggvvxxgtwwwuxvwwvvvWwuugwwwwwwwwvvvwwvvwgvwwgfwwgvvvwgwwwwwwhfuwwvvfwwwvwwwwvvwwwgxwwvwwwwvuwwXwwwwvwxwwvwwfwvwuwwwwvwwwwwwvvwwvwwvwvuwgvfwxgvwwwwgwvwwwwwwwwggwgwwwwwfvvwxwvwuwwwwxwwgvwxwwwwxwvwwgwvwvgwvwwvwhwwvwwwwxxewvxwwhwxxhvgwwwgwwwwxwwwwwwvwxxwfvvwwwwugvwwwwwxxwwxWgwvwwwwwwwwgwewvxxwwwxxwvgvxgfxvxvwxwxwxwwhwwvxwuxwxwwxwwvvwuxvwwwvwfvwwwwwwgwwwwgwfwgwwwwwwwvwhvwvwwwwxwwwxxwwwwwxwwwxwwxxwwvxxxwxwwwuwxwwuwwvgwxxwwwuwwwXxvxxwwwvwxxwvwwhxxwhxxxgwwxxvxwxgwwwwwxgxwvxvxgwxwxxvwvwxxwxwwwvxwvwxwhwxvxgwxxxwxxgwxwwxxwwwwwwwwxxwwxwhwwwwwwwWgwwwxxwwxgwwxxwxhvxwwxxhvwxxwxxuwwwgwWwwwwwwgfVvwwwvwfuwvwvwwwwwwwwvwgwwgwvgfvwfwwwgwwwxggvwwwewfwwwwvgvevvwVwvvwwwwwwvVdwfwwvvewvwwfVfgXwfwfgvvwwvwwgwgvvwwgwvwwguwvwwfvgfvwhxwwwfwwwwwxDuufwgxwgvwwffwwwgvwwwwwwDeufgwfwwwwwwwfvuwwvxwwxwwwwwwXfwwwwwwwxwwwgwwgvwgvwwwgfvwvwwwwwwxwgwwwfvvxwwgxxWwwfxgxvxxwwvwxxwwvwwwwwwwwgwgwgfwwxxwvwgwxxxgxxwxwwwwwwxhxvwwwfxxvwWwgwvwwwwxwwwwfvffvwgguwxxwwxfvvxxxwxxwwwwwwwwwwvwwwwxwwwxwwxwwwggwwwwwxwwxgggvwxwfwwwwwgWvwxwwvwwwwwwuffwuwwwwwxxxwgfwgvxwVwwwxwwxwwwwfwgvvwfwfgxwwwxwxwfwwwxxxxwxwwxwwwwwwwwwxxwxvwwgwvwwxwwwwwwxwgwwhwwvvvwwwxwxhwvwwvxxxgvwxwvxvwvwwxxwwwwxfwxxgvxxxwxhxhxvxwwwxwwwxwgwwwwwwwxwvwwxxwwhwxwxhxvwwxxxwxwfgxxwxxwxvvxgwxxxfwwwhxwwxxwxwhwxwxwxwxwxxwxwwwwvwvxxxxxxwwvxxgwxwwwhxxwxwxxwxwxwwwxxxwxxxwwxwxxwfxwxwxwgwgwwwxvwwgvwfwwwwgvwvxwwwvwwwwfwwfwwwvfwfgfvvgwwfgvvwwwfwwwwxwwvfvgwwwwwwxfvxxxxwwfwwwwgwwwwvwfxxwxwwwfgvfwvwwwwwwwvwxxxwvwwxwwxwxwxwfvvxwfwfgvwwwgwwwgwxwxwvgffvwwxwwvwwwwxxwvgwwwgwwwwwwwwwwwvwwwwwwwwwfwwwwxxwwwwxxxwxwxxxfgvwwvwwwxfvwwxwwwxxgwxxwxwxxxwwwwfwwwwwwwxwwwwxxwxxwwxxwxxwfxwwwfwfvvwvvfvwwwwwvfgwwwwxxxwwwwwwwwxxwwxwwxffvwvwvwwwvwwhwwwvwwwxgwxwwwvwwwwxxxxwxwxwxwxxxvwwwwwwxwhhwxwwwxxwwwwwxxwwvwwvwwwwwwwvwwxwxwxwxxwxfgfwwwvwwvwwxwvgvwwxwwwwxxwwvwwwwxwwwwxxwxxxxwwwfwwwwxfwwwxwwwwxxwwxwwxxxwwvwwwxgwwwwwwgwxxwwxwxwxxxxwxxwxvwwfxvxxxwfwwwwwwwxxxwwwxxwxwwwxfwwwfggwfWvwfwwwwwwwfguwwwwwwwwwgwwgwwfwwwgwwfwwwxxwvvwwgvvgvwvwvwgvwfvxfvwugwwwwfvvgvwwwwVuxuwwfwwfwwggwwwwwwwggvwwwwwwfwwwwwxwwhVewxwwwwxxwwwwwwfvwvxvxwVuxvwwwwxwwxxxxwvwwxwwwxxwwwwwwwwwxwwvvwwgvwvgvwfvwwgvfvgvwhuwvwwweugvgwfwwffvxuhwwwxwwwgwvwwwwfvxwwwfWvwfvwwhguwwwwwwvwwwwwwwwwwvwwwwwwxwwwwgvwweuwxvgwwwfvxvwwwxwxxxxwwxwwwwwwwvwxwwwwxxxwxwwuxvwxxwxxxugwwwwxxwwwwxwwwxwggfxwwwwiwwxwwvvfvgvwf5SffwfwvgvwwggwffwwWuwggvhwgwwwwfwwwxgwwxxwwwxwwvWvvvfwvvvvgvgvfvvxvWvxggfwgwwwxwwxwwwwxwwwwggvwxwgwwfvwvgwggwwwwgvwvwwwwwxwwwwwwwwxwwwhxwwwwggfxxwwwxwxwwwwwwwfwwfwxwwgwvvxxxwwxwwwwwxxxxxwxvguvfvvgvvgghvfgfwvguxgvgvwghwwwwwwwwwvvgwxwxwwwxxwwwwwugwxWuxguwvwwxghxWuwwwwwwwwwwwwwwwwwwwwfwwfwwwvvwgwwwwwxwwwxxxxxwwwwxxwxwwxxxwxxwgwvwwwxxxwwggwgvxxxwwwwwwxxxxwxwxxwwxuwwWgfwfwwfvwwufgwxgvvwwwwwwwwgfwxgwxwfvwggvwgxwwwwgxvwggxwvwgvwwggfwwgxwxwvvxxwwxwxwxwxxwwxwwwwwgwwwwwwvwwwwwwwvwwwxwwwxhxwxxwwgxwwwxwwvwwwgwxwwwwwxxwxywwwwwwgwgwwvvxfwwggxggxwwvxgwxgwwwxxwwxgxxxxwwwxxxwwwwwwwwwxgwxwwwwwwxxwvxwwwwwwwwwxxxwxwxxxxwxwwwwvwxgwwwwwwwxxgwwwwxwwxwxwyxwwxxwxxvwwwwwxxxxwwwwxwwxxxwwwxwxwwwUffwgfwfwwwwwvxgwffWWfwvwwwwwwwvvxwwwvvhwwwwvwwwwvwwwwxvxwgvwwxwwxwxwxwxxxxxwwwxhxwwxhgvxwWxvwxxwwxWgxxxxwwwxwwxxwwxxxxwxvxxwwwwwwxwxxwxvxxhxxxxxxxxwxxywwgwwvgwgwwwxwxwwwwwgxwxwwwwwxwxxxhxwfvvwxwxxwwxhhfwxxxxxxxxxxxgxwxwwwwwgxxxxwxxwxxxxxxxxwxwxxwxxwwxxwxxwwwxxwwwwwufuwftvefvwuwgguvguffwvfwwwweuugeffvtggwgwuwwwvfwwwwvuvvvffvvffwevvwvffvwggvfvgvwwwfgfVfvfevvvwvvwfwvgvwwwwwwvvvWvwvwwvwuvwwwfwvwwwvwvfvgwgwwgwwwxwwwwvwvguwfwuvvwwgwgwgvvwfwwwwwwwxWxvwwwvwwxwxwwgwwwxwxwwwgufvgewwfeWfVwwvVgggvwwguwvwwwvWwVwgvwvwwwwwGgvgggvwvwwxwxwVfvwwwggvgwgwgvwwwfwfxxvwwwgvvwwwvxwwvwwwwvvxggvwwwvwwgvGvwfwwwwwgwWfvgwfwwwvxwwgwvwwwwwwwgxwvxvwwwwxgwwwwwwwgvwxwwwwwwwxwwggwwxewwevvwxhxxwwwwggwwwwwxwhxvgvwfuvfefevvffvfgwgvffwwwfvfvVwwVefvwvfuvvvvwwwwwwvwwwwwgwwxghxwugfvVuvwgguWvgvwwwvfwxxwgwggwwfewvwVvWfwhwfhwwwwvvwwwwxxwxxxufwgvvwwvvwwwwgvvfxwxwwggwvxwwwgwxxxxhwwvwwxwwvxxgxgwvwwvwwxgwgwwwwwwwxwxwwgWxwwwxwvgwxggwwvhxxwxwghhvwxfffefwgguvwwWwwvtvvuwguwwwwwwfvvvgvvwvvxwwwwvvwvvgwvuwvwwwwwwvvVwfwwvXwwvvvwwvvxwvxwwxxwwwgvwwwgwwwwwwgwwwwgwwwxwwgwuxxwwwxwxwwwwfxfwffxvxwvwxxgvwvxxvhxwwwhwgxxwxwwwwwwwxvwxwxvxvxxgwwwvxwwwxghwwxxxwwhhtfwwwguvwgvwvvwvvfwugwwvvwwwwwftwwwwtvwwvwvxvwvwvgwvwwvwwvvwwwvfwwvfgwvwwvdwwfwwwwfggvwfwwgwfwfwwvwwwwuwwwwvwvwwwwwwwxwwwwwvvwwvxwwwwwwwxxwwwwvwwwgvdwwwwvfwwxwwwwwxwwwwwwvwwvwwwvwwgvwgVwwwwwgvggwwfwfuvwwuwwxwwwwwwgwxwgxwwgxwwwwwwwgwgwwvwwwwwwwwwwxfvwvxwwhwxwxwxxwvwwwxvwwgwwwwwwwwwvxwwxvwwwvwwwwwwxxxwwxxxxwwwxxwwwxvwhxwvwxwwwxwxwxwwxwwxxwxwvvwwfwVvwvwwVgwfvvvfgwfvfwwwwwwgvvwwwwwwwwvgwwgwgvwwwxwwvuwwvwuvwwwufwwgugwwwuwgwhuwwwwwwwwwhxwxwwgwgvwwwxwwvwxwvwhwwgxwxggvwxxfwwwwhwxxxxwhwhwwxxwwvwwwxgwvxwxwwxwxwvwwxxwxwxxxxwxxwwwwgwwwvfvxgwxwgWvwwwWvvwwwwxwwwwxvwwwwvwwwwxxwxxxvwwwwwwwxwwwghwgwwwwxwwxxwwwwwxwxxxgwxwxwwwWvwWxwwwxxwwhwxxxxxwwgwwxwxxwhxwwvwxwvwxxwwxwwwwwwxxrgggvgwwgggwggweVfgggwvVFegwwwwwwvfwgwgwvefVufwwwxwwxxwwevfggvwfgwfvvwWvgwWwwfffvwgwgfgvfvegfvdwwvfuwvggwguwwwgxwfgwgFewfxxwgWvwwgvxwwwwwxwxwwxgwwwwwwwgwwwwxwvxgwgwvvgwwwwwxwguwxwxwwvvwxwwwwxwwxvxggfwwgwwgfvvuwwWvgwwhgVfvggwwwvwwwwvxeuxWevWwxwwdwwvxgxwwwxwxwwgfwwwwwwwwggegwgwFewgwwfwfwhgwgvhwwwxwWuwwxxhwvxwgvwgwwvuwwwgwwWwxgwwfgwwwxxxxwvgxxwxxxwwwwhwwgwvwfwwgwgxxfvgwgxvwfwxwwxhwwxwwwwgvvffWvwwwggWwwxf$CvvwwggwwwwwwwgvvwwgwgwxwvvwwvwwxwgvgwwwwfFefgwwhfwwwwxwwvvwwhgwwwwwwgwvfvwwxxwgwgvgwxwghwwWvvwgwwwwwfgwvgwxwwwwxwwfwwwwhvwwhxwwwwwwwxwxxxxwfwxwxxwwwgxxwwwvxwwwxwwvwwwwwwwgwxwwgwwxwhwwhWvvwhwwwwwxxwWugwwwVwwwwwwwWfggxwwwggwwfuwwwwwxxxwgvgxxxxwgwggvwwgvxxgwfwwgwvwvxwwwgFewwwwwwvwwvgvxxxxvxwxwwwgwgwgvwwwwgxwwgxwvwxxwfuwwwxwwwwhwwxwgvwxwgxwwwwwhxxxwwhwwxwwhxxxvwgvwwwwwwwwgxuffwfvewVfuguwweefveggUVVwgwwxwvvwwvwwuwwwvwvgwwgwgwwevfwgvewVggwfwgxwgvwxwfewvwwwwxwgfwuuwvvvvvxwevwvvwxfwxwwxwwfvwwwvwwwwgfwWwguvxxxxvxvxxwwxfwwwwwxxwwguvgwwgvvgxgwvxuwxwxwwwvwwwwgxwwxwxwxwhwwhxfvfwvgvwvgfVwuwgfgwgwwxfgfwwwgwwfgfvvwgvwwuxwvgvwwvhfvwvwwxvgfwwwvgwwwwwwwwwwxwwwwgwgwxxxwvwvwxgwwwwwwwwhwwwwxxwwxgWugwvwwvwwvwxwwxvvwxwxwvwxwwwgwxxwwwwhxwwwwvwxwwwwwxwwhwxhwvxxgwwwhwfwxgxwxxwwxxxxxvfewfeeefvwwwfgVVewvggwfevvwwhgeefggfwwwwwwgwvfwgWwvwxxxwfgefffwfwwfvvgfvfwgwwxfwgvwwgggwegwvhwvhxwxxxwwgwgwwwwvwfvvwggewwwgwwgxwwvxwwwWhwhwwvgwwxwgwwwwwwwxwxxwwwgvwgwwwxwggxgwwxxhwwggxwWwxvxWgxxwwxxxwxwxwxwfeeuegvvwgvwwfvvwwvwhfvvwwwwgvvwwvxwxwxvvwwgvwwwxwvwwxfwgfgwvwwwwxwwwwwwwxwgxxgxwwhwwxwwwwwwxxwwwwfwgwwvwxggwwxwxwhvvgwgwwWwwxwgwvxxxxwxwxxxwxxwxgxhwwhxwvwgwwwxwxxwxwxwwwxxwtgvwwfvegwwwffvVgwwvgwwwwwvvgwwwgggewwvwwfwwxwwwgvwvwvwwwevwvxggfwwwxxwwwwwwwwvwggfvwwwwwfwvwxvwxxwwvwfwwwwwwwxvgwwwwwxwwvwwvwxwxwwxwwwvwvwvwwxxwwwxwvwxwwwxwwwvxwwwwwwwwwgvwfwwwgfwxevwwxxwwvgwxxgvwwxgvvxxwwwwxvwgvwwxvwwxxwwxwwwgwwxwWwwwgwxvxxwvwhwwfvxwxvvgxwvwwwxwxwvvwwwxwwwxxhxxwwxxwwgwwwwvvxwxwxfwvwwwwxwfxwwxwgxwwwvwxxwfvfgvwwVvfwxuffwwwfvwwwwxgwvwwwvfgVxguxwvwxwwxwfwvvvwwwwwfwwxwwwggwwwhvwwwwwwxgwvxwvwxwxgwvxwxwwwwxwggegwffgfxvwwwwgxwwwxgwvwggxwwwxxwwwxxwwwwwwwwvxxvwvwwhxwvxxxwwwwxxxwxwgwwvwwuxwwwvwvvwvwwgxwxwwwwwwvwwxwwwwxxhwewvwxvwgxxvhwwwwxfvhwwxvxxxhxVxwwxwvwxxwxwwwwwwwwwvxwxxwxwxxwxxxwwwhxxxhxwwxwwwwxwxwwxwxwwxwwwwxxwwugfvwwwVwwuxffffgggvwfwwfwwwvwVfuwwwvvgvwwVwvvfvvwvxwgvgggfwfvvvwfxwgvvgxwwfvvwwwwvgvwwwwgfwwwwwvewvwwwgwwwvwwwgvwvwwgwwfwfwwfwwgwwwwxwwxwwwwwwwwwxwxxxxwhuwxvxwwxwgfwwwwxwxwgxwvwwxwwxxwwwxxxwxgwvgvgvvgwwfwvwgggxwfwvfwugwwwwgwfwxwwxvhwwgwwxwwgwghhwwwwgfxwwwVwwwwxgwvxhwwxwwwwwwwwwwxxwuxwwwwxhwxhhwgwvwwwwwffuwgwwwwwxvwxxwwgwwxxwwxxxxwwxxxwxwxwgwwvxxwxwwwxxwxwwxxwxwwxwxwxwwxwwxxwwgxwvwxgvwvguwwwfwgwvxwfwwgwgxfgvwwxwwWvgwwgwgwvwxwwfwWgwxwwwwwwxffvwvxvfwwvwxWwfwxxwxvxwxgwhxgwxwvwgxxxwxwgggxwxxxvvwxwxwwwwhgwvhxgwfwxxwxwwwxxwwxgxwxxxxggxwwgwuwfwwhxvwwgwwwwwxxwwxxxxhfwxxxwxxxxxxxxxvhwwgwgwwxvgxVwvwxxwfgggwwwwgwwhxwhwvwxwxxggwwwhwwxwhxxvvwwgwxwggwwwwwwxxwwxghwfwxwwxxxwwxwwwxvwwxxggwwWwgfxxwwxwwxwxwxxxwwxwxxxwxxvxwwwwwwxxwxxwwwxxxwxxwwghxxxxhhtgvwfvfefevvvwvwwgwwwwwwwwggvwwfwgVvwwwvwvwwwwvwvhwwwwwwfvwwwfVwvwwgvxxwxxwwvwvvvvvwvwwwwxxwxgfwxvwvwwwwwwxwwwwwwxwxvwwwgwxxxwxwwxvxwwgwvwwwwwwxwxwxwwvwwwxxvwwwxgvwwgwfvxwwwwwwVwwxwgxvwwwwvvwfvwwgwwxxxxxvfxxgxwwwxwxwwvvwwwwvgwwwwuwgwwwwxxwwxwwgghwgfwwghgvvxxxwxxwxxwwgwwwwwwwwwgvwgwwxxxwhwxxxvwwwxwxxwwxgxfgwwwwwxwxxwxwfxxxxwwxxwwwgxxwxwvxxwffvvuffVfgfwvwvwwwwwhwwxwxggwwvwggfewwxwwwxxxWvxxfwwwwvwgvwgwxuwvwwggwxxwwwwwwwxwwwwwxvhxwxxwwxwwxgVvgwwwfgffwwwxwvwxggxwggwvwwxwwhxxxwxwwwwxwwwvwxwwwxxwxxxwwxxxwxwxxxxvggwvwwfwwwwwwwwwwgwwwwgwxwxvvwvwxwxwwxxwvwwwxgxwxwVvwwvwwxvfvxxwgwxwhxwwgwxhexxxxxxwgxwxwxwxwwwwvgwwwxxxxwwxxwgxwxvxwxwwwxxxwxwwxhwwwxxxxwxwxwwxwwxwxwxxxwwwwxxwwwufvfffvewwfwwgwwwggvwuffwwwgwvwwuwwwfvvwfeevwggvvvwvvwvgvvxvwvwfuwxvgvwwfgfvwwgwwwwwvvwwwwgvwhfwwwvwwwwwvffwwvwwgwwvgwwfwxwwwwwwwwwwwwwxwxwwwxwwwwwwwfuxwwgfxwgxwwvwwwxwwwxxwwwvvvwgvvfggfvvwgfvwvwxwgfwwwwvgvVvwxvwfwgwwwwwwwwwwwwwvgwwwwfvxwggewwxwwwwwwxwwxwwwwwwwwwxhwuwwwggxwhxxwwwwwwWvfwwwwwvxwwwxwxgwwvwwwwxwxxwwxxwvwxwwwxwxgwxwxwhwwwwxwwwvwxwxxwwwwxwvvvwwwfwwfwwfvgwvWvwvgwvvwwwwWvgfWwvwwggwwwwwgwxxwxwwwwwvwwevwwvwwfvvgvwxwvxvxwwwwvwxwwwxwwwgxvwwhgxxvvwwwxwgfwwgwvxwwxhwxxwwwxxwxwgxvxxxwvxwwwwWvwfwwwvwwxwvwgwwhwxwxxwxxxxwxxfgfufwwgwfwvwxwvxwxvwvhwxgwwvwxgvxwgwvxwwwwvwwxwwwwxwgwvgvxwwxwwwvwhfxwwwxxxwwxvuwxgwwwhgwwxwwfwwwwwxwxfhwxxxxxxxxwwxxwwwxwxvxxxwwwwwxxxwxxwxxxxwghuffwVfegeufvUeewfevwevvuwwvwwwvvwvwvuwwvxwwgwwgwwvwwwxffvwgvfwvfvffgwvgvwvwweuwwwvwwwvfgvghvwvwfwgfvvwwgwhuwgwwwwwfvwgwvvuxfwgwwWxwwwxxxvwwwfxwxgxxwwxwwgWugwwvwvwgvvwwwxwxwxxxwwgwwwwwvwwwwwwxhwxxxwVfvwwgvwVvvwVvwwgVgwxwxffgwwwwxwfvwVwvxgvgfxwWuwvwgxvgwwwvfvwwwwvwwwgvwwwvwxwwwwwwwwxxwgvwwwxwwwwxwwxxxgwhwxwwwxwwxwWvvvwxvvwwgwgwxwWxvvxxwwgwwwwwwwxxxwvxxwhxwwxxgwxhxwxwwwxxvwwwhgwwxxwwwxxwxvxxxwhfwxwwxxgefwVVewegfwfvegfVVgggwwfwvwwhgVVwfvwwwwwwwgxfggfgxxWwwxgxxwfVVfvvwgwvfggwWgegwwghvwwwwwvgwvwwgvwwhxgwwxvwxwxwwgvwfggwwvwxwgwwwwwWvegwxxxwxvxhwwwgvwxwwwwwxxxwwwgwxxxwwwxwfwwwxvwxgwgvghwwxhwgvgwwuwwwhxxwxxxxxhwwggxwxxxwfVvffvwfwwfvwvfffwgwwxfgggwgwvvewvwwwgxwwwggwhvgwwwxwxfgwfwwwwwwwwxgggwwxxwxwwgwwhwwwwwwwxwwxwxxxxwwvvwgwwxwgwgwvgwwwxhxxgxuwwgxwwxxwxwwhxWvxxxwxxxwhwwvvwxxxhxwvxxwwxxwxxwxxwwwxwxxwxxxwufvfvvvffwwvwwwwwwvvvhwVuvwvwvvwfvgwvwwwvwwwwfwvgwwuuvxvwwvvwwvwfwwvvwvwvwwwwvwwwgwwwgwwfwxeuvwgwhfwwvwwwwvvwwwwwwwvfwwwwfwwgvwwwxwxwvwwwxwggxwwwwvxwvwwwxxwwwwVuwvwwwwwxwxvwvwwxwxhwhgwwwxwxxwxfvgvgvwfwwwwvfwwgwwgwwwwvvwwfwwwfvwwgwfvwwvwwwwwgwwvwvwvgvwwwgwgvwvxvwwwxxfvwwhwwwgxwwfwwxwgwwxgxhwwwwgwwwwwgxwxvwwwfwxxxwwwwwwvgxwwwxxxxxwxwwwwxwxxwvwwwwwxxxxfhgwwxxvxwwxxxwwwwgwwwxwvvggwvvwgfvwvwwgffvwgvfvvwxwwfwfwxvvvvgfwwxggvvwwwwwxxwwgvgvfwwvwwwwwwwvwwvwgwxwwwgfvvwwwgvwwwwwxwwgwvwxvwvwwwwwxggvxvwwxwvvwwxxwxgwvgfwwwwwwwxwhgxhhvvwwgwwxwwxvxxwwxwxhxxvgwvwwxwwxwxxwxwvwwvwffgfxwwxwwwvwvwgwgwwwvvwwwwwwfwwxwxwwwxwgvxxvwvwwwwwwwwwwxwxfwwgwwwwwxwxvxxwwxwxxwxwwvwxgwvxwxwwwwwvwgxfhwwvwwxwwhwwgwwxwwxwwwwxhwxxwgwgwwxgwgvfxxxwwwwwwxxxvwuUvwgvvwvvwveewfefwwgvvgfvuvfwvvuwwvfgwwvwwefgwfvwgevvggvvfuggfegwwvWvvwwvwwfwwWvwwwwvwwvggvefvgvwfvvwvuwwvgvwvwwwvgvvvvuwvwvwvfewvwwwfgxxxwwfvxvvwwxgwwhggwfffvwwwwvvwuwwwwwxxwvgwwvfgxwwwxgwuwwwwwxwxxwwhvxwwxxwwvuwwvVvwuvwgwwfgfvwwwfuvggwxwvfwwwwvvvwvwVfvwwvvwgwgvwvgwwgwgwwwvwwgvwwWxvfWwgWxvfxwgwwvfgxgwwvwfwwggwgwWxgvvgwxwwwwxfgwwwxwvwxvwwwwwxxxwxwvwvwxwwwwfwwwfwxwwwvxgwxgwwxwxwgwwwxxwwhwwwwvxwgwwwvwfuvwvguwfvfufvwwffvvvvwffvuwwwwwvvwwwwwwWvwgfevwvvwxfwgxxvvvvvwvvwvwvwxwvvwvwwvwwwxufvwxvgwwwvwwvWwwfvwvwgxwxvwwvwgwxwwgwwxguwwwxwwwvvxggwwwwxwwwvvffxxgwxuwwvwvwvwwhwfwuwvvwwwxxwxvwvxwwgxwwwvxxxvwwvvvwvwwwxvuwfwwwwwwwwvxevvfwwxvwgfwwwwvwwwxwvwwxxwvwwwwwvwfwghuvvvwwvwxwwwwvwxWxwxwxwwxvwwfvwxwwwwwwxvvfxwwwwvxvxgwvwgwwwxxvxxxxxwxwwwwwwwhwwwwwgwwwwwvwwvhxwwwwwxxgwvwvxyufwwfvvWfvwefvgfvxgFdwgvxfvgwvuvxuwwvwwfwwvWfvvvwgvwfvwwhvwxvwfvvwgvwewffvgwwfwvwvwwgwgfwwvwfvgvwwvwwwhwwwwwwwwwwwwxwxwwwwwwgwfwwvwwwxxxwwfwwwwwwwwxvwwhwxxxxxwwxwwwwfvwxwwwwwwwwwwxwxwwxxxwwwwxwwwwvwwfvwwvhvvvwgvvwvgwwvgwvvwfvuxwwgwgwwwwwvgvvxxgwwwwxwwwwgwxwwgwgxhwfwwxwxxvwwvwwxwwxxwwxwhvwwwvwxwxxxwwwwxwwwxvxwwwwwwwwxwwwxxwwxwwxxxxxwxxwwxxxwgxwxxxxxxxwwwwxgffvWvvUvvwwfvxfvwwffvxwvwgwgvfvvwvvvxwwwwvwxwgwhwgwxxwwgwgwwwgvvvgwwwwxgwgxvxwwwWxvwwgxwgxwgwhhxvwwgwxxwxfgwgxxwwwfwxxxxxwwxwwwwxwvwwxwxxxwxxxwxvwfwwwxxxwvwxxwxwxwgxwwwwxxwxxxgwxwwxxhhwwwwwvwwvwvgwwwwxxwhgwxxwwuwxwxwwwgwxxxwwwwxwgwwwwwxwwwxwhwwwwxwfhwwwwgxgwwgxwxwwwwxgxxgxxwwwxfwxwxwvxwwxxwxxwwwwwwwwwwwwwxxwxxxwxwxwwxxwwwwhxwwwwxwxxxxwxxxhqwwwgvwwwwwwvwwwvwvwwxvwwwffffwfVewWwwuwxgwfVewwwwwwgxwwxgvwwwVevvwwgudwwxvUwwwuuwuwwfffxUvfwfgggVxwwfwvvuvwwwxvwWwwwwwvwwWVevvwwwwgxxwWgvfxgwwwwwwfgxwxwwwwfvwwwgudwvfwwuuwvxwvxxwvwvwgvgwwwfwwwgwxxxxwgwwfwwxvwvwwxvvwwwuuwwVevUwwvduwuwwfffxfvwgfggvxwxUfvwuwgwVwwgWwwwxUwwwwvxwUwwffXvwfwwwfvgexxxxwxgwvVvxwwwgxwfVexvwwwwuuwgxvxxvduwvwfwxwwvggwgxxxwfwwxwfgxwgwwwgwwwxwxfuwwxwwvwuwwfwwvxxxxwhxwwUwwxwxhxfvgxwwxwxxfffwfffxWgvvwgvfffxwwwfggwgxxxW4CwewwvfwwwwwfVwwgwVexwfwwwwfVewUvfwfxgwgwfvwgvgexxxxwhxewwvWwwgwwfxfwvfxgvgwxwwwwwwwvwWwwufgggwwwwwfwfggvxxxwfwwwwUfwwwwwfxxwwYwwfwxvvwwxwxgwVxwwwwwwgwxwxwxgwxwfwwxwwffwvfwhwwwwwwwwgwwwwwwfVewfwvvfgxwxxxUfvwvVvxgxwwxhxVwwgxgvgwfwxwwwwWwwgwwxwfvwfgwwwwwwuvwwxwwxwgwuwgwwwgwwfvgxwVexwxwwvvwwwwwxwxgvwwxwwwwgxwwxwwwfVwwwgxwwgwwwwxwfwwwwwwgwwwfvwfwwxwhwwwwwxvwWwfwwxgWwwfVexwxwxwxxwwwwvwwxwwwgwwwwwwwwwwvgvwwwvfuuwvvuwwwggvxvWgwfuuwugvwwgvwggwvugvwwvvwvwggwwwwwwwvexwwgfwgwgvxwwxgwwwwvuxvwwwwwgvwxgfvwgwwxwfvwhwwefwuwvvvxwwxwvwwvvwwxxwwwwwwwwwwwxxwwxwgwvxvwxwwWwxwgwwxxxuwwwwwwxxxwwwvxwwxwwwwwgvxwvwvwwwwVgxwxwhfwvwWgxvwwvwwgwhXwwwwwvwgfwggfwVwfWwwwxwxwxxhwwwxxxxwwggwwwxxxxgxwxxxggwvxwxwwwwuwgwxvvwwwvwwwxxxxWwwhwxxxwxwwwwwxwgxxwxxxhxxwwwhxwWWfwwwwwxxxgxxwwxxvxwwvvgvwgvfvvwgvfwwwfvvwxxgvwvuwwhhUwwwwwuvwwxwwwwwwwwwwvwwgwWwvxwwwgvxwvvwewwwvwwgwwwxgwwvwxgvvwwgxwvwwxgwwwwwfxwvwwwwxxwwwxxwwxxwwxwwxwxxwwwvwwwgwwvxvguxxwxxxwxxwxwxxxwxwxxxxwxwwgwxwgwwwggwwwwwwgvxguwwVwwhwvxwvwhwxvwxgwvwwgwvwvwwgwhwwwxxgwxghwwwxxwvxwvxxxwwwwwwwxxxxxhxwgxxwhxxxwwgwggWgwxxxwxwxwxxxxwxxxxwxwxxxxxwwxxwwwwwxwwxwxwxwvvgffvwwwwvwwfvfwgwwwvwwwwwwfwwwgwwwVewfvfxwwvwfwwwffvgvwwgwvwwwwvwgwfvwwwggvwvwvvwwwwwwxfvwwxwxwwxwwvwwwwgvwwxxhfvxwggfvxxxwxxwwxxxxxwxwxwwwwwwxxxwwxwxwxxxwxwxwxxxxwwwfwgwwwgvwwggwwwgwvggwwvxgwwwwxwwfvwvwxwwwxwwwwxwgwgxwwxxxwwwwwwwfxxwwxwwxwfwwfwxxwgvxwxwwxxwxxwwwxwxxwxxwwwwwxxwwwxhwxwxwxxxxwxwwwwwxxwwwwwwwwwwxxxxwwwxwxwwwwwggvwwvgwVufwggvwfggwefuwwgvxxwwwwwwggwwvxwwwxxxwgwxwwwwwwwwwxwwgxwwwwwvwwwgwwwwwwwfwxxwvxwvvxxxwwwwvhwwwwwwxxwwxwxxwwwwxxwwwxxwwwxxxwwxwxwxgxxwwxwwwxwwwwwxwwxxxwwwwwwgwwwwwwwwwwwwggwwwwwfwxgwxwvwxxxwxwwvgwwwwwwwvwwxwhxwxxwgwwwxwxxwxwxxxwwxxwxwwxxxxwxvwwwxwwxwwwxwxvwwwxyvwwwwxxwxwwxrvvgVfVvvggwVVdggwgwgwvvgwvwwwwwvwffWefggwwwwwvwwwVwvfgwwgugggfevfvwwvwwhwvguwgwwwvwwwuveuVdwwvwvwwwuxgwwgfwgguwfwwwgVdwwvgwwwxvwwwwxxwxwwwhxwwxvwvwwuguwxwfwwgwwwwgwwghwxxwghwvefwgugfwvfffgggvwwwWwfvgwwvgfgvfwugfvxuwwfevvgwvgdwwvxgwwwwwggVfwwwwVdwwwvwvgwwwwxwgwffwxwWuwgvhwvwvwwxxwwwwgvwwvwwggwvxwwwwwwvgwgwxwvuwwwwxwwxwwxwxwwgvvhwwwxwwvghvwgwgvwwwxxxfgfwwxhhwhwwwwxgfwxwxwwwvvvff4BvwvwgvwwwfguwgwwvuwwhwwwwggwvwwwgvwgvggwvxvwwxwxwwwwwwWugugfvewwwgwvwwwwxwwwwwwwfwuwwwwwwvgwgvgvvxxxvwvwxxfwvvfwwwwwwwvwwhvwwxhxwwwwwwwwwwxxwgwxwwwxwxfwwwvxwgxwfuwxxwwxgwwwxwvvwwhwgxwwwwxwxwfVdfgwvwfwwwwwwwvwwhwvwwwwvwgfwvwgwwwgvgvwwxwguvvwwwxwwwvfwwgVdwvgwwwvwvwwwwwwwwwxvgvxvwvwwgvxxgxwwwwwwwwwwwwwwxvwvxwwwvwwxwwgxwuvvwwhwwxwwxwhwwhxxwxxwwwwxhxwwxwwxhwwhwwwwgvwvxgwwwwuWfwvvuvfvwvwffvtVuffwuvwwwwxVuuvuwwtvvwfwwweffvwvxvwwvfugvvegfuVvuwgwVwvwvwfwVwvwwwvwutvgvwwvwvwwxegwgggvwwwwwxwgvxuwgwvwwwwvguwwwfggwxxwvgwvwwvgwwwxwfvwwwwxvwvgtwuvfvwwwwgwfwwwwfwxvwwwggwwvwwwvwwwwwwwwwxwvvwwwwgvugvffvvffwfvvvffvwgggVvvwvwwwffvwfwVvvxxwwevffvgvwvgwvwwwfevvwvwvvgvvwwwwwffwxvwxwwwvvvwgwvwwwwwgwgwggggwwwwvwvWvwvvggwwwwwfuwgwwfwgvwwwxwhuvwvwwxxwxvwwwxwwwwxwwwwvwvxwvvwwwwwwVxwwxwVwxwwxgvwxwwwgwvvgvwxwxwwwwwxfvufvffvffvgvfeeVfvwwwffwgvwxwVegfwwwvwgvvwwwggufgwwwgwwwwxhwfffgvtgvvuwuwwwVwfvwWgwwuwhwwwfvvgvwgvvgWvwwgggwgwggwwwwwwwwuwfgvvvfwvvwwwggvwwxwxwwwggwwwgwwwxvwgwwxwxxxggwuwwwwwhwffwwxxffxwxgwvwxwwwxxwvwvgvwxgxufvvwvwfvuguwvgevuwwwvgvwvwwfVvwwwgwvwxwxwVugfwwwwfwhwxwvvewgwvvwwwxwwwfwxwxggvvxxwwwgvwwwwvwwwwwwwgwwwwxwwwvvwvwwwwwxwvgwuwwgwxwwvwwwxwwwxxxxwggwhwgvwxvwwggwwvwwxgvwwwxxxwwwxvwwwwwxwwwwvxwxghxtwfgvwWwvxuwvwwgwxvfgwgwggvwwwwwvgwxwwwwggwGfgvwwGwvwvxwwwvwgwewwwgwvgvvvxwwwwwhvvwwwxfwWfwwwwWwxgxwxgwwwxxwwwxgxwwwxwwwgwwwhgwxwwwwwgvwwwxwwxwwxgwwxxwwvwvwwwwgwwxwwxwwwwxgwwwwwwxxxxwwxxwwwvxwfggwxwwgdwwggwwvwgwfxwwfwwfwffwwfwwvwxwwvvgwwXgwwxxWwwxwvwxgwwwwwwvwwwwwwwwxwwwwvwxwfgwxxhwxxwwgwwwvxxxwxxwxwhxxwgwwwvdvxwwxxwwvhwwxxwwgfwxwwwxwwwwwxxwxwwxwwxxgwxwxvwxxhwwwxxwwwxwxxwxxxwxxwwxhwwwxxgwvwvggwwgwgwfwfewvfwgfewgfwhwwwgvvgwgwwwwwvwwwwwgxwgwwxwwvwwWggfxvvvwgwwwwgwwwWxwxwwwwxwwxwwgwwxwwxhxwwwgxwhhwwwvwvxggvwgwxxwxwxhxxfwwwwxhwxxwwhwhwxxxwwwWxgwwwwxwwwxxxWwxxxwwwxxwxxwxxvwxxwWgwWwfwWvwwWwwwwvxgvWwwwxvhwWxwxwwwwwwwxwwwwxwvgwgwxhhwxgxwwgwwwxwwwxwhvwxwwwwwxxxwwwxxxhxxwwxxhwwwxxgxvwwwgxwvwgwwxwxwxxxwwxxxxxxxxwxwxxwxwxxxwxwxxhwxwxxwgwwxwvwwwwwxxwwwxwxxffvvuwvfwwwvffwgwugwffwvffwwvvwfvvfvgfwwwwwxvfvwwwwxwfvvvgfvwgfwwwvwvwwwwxwwwwxwvvfgwgwvwwxwwwwwwwwwwxwwwwwffxffffwwwwxxwwxwxwwwwwxxxxwwwgwgvfvvwwfwwxwwwfvwgwwxvwwwggwvvxwfvgvwwwwfvwwwvfvvwwxwwvwwwvvvfwwwwwwwxxhxvvwwwxwwwwxwwwwxwwwwwwwwgwhwwwwvgwwvhxxfwwwwwwfwwwwwwwfwwwwxwwwwwwwvgwwxvxxgfgwwxwwfwfggwwvvxwgwgxwxwwvwwwvwwxwwvwgwwfwwgwwwwwwgwwwwwgwwwwwwwfuuwgffvffwvvgffvwffUwvgwhxvffvvwwwwwgwwwwwwwwvfffwwvwwwvhfwwwwwwxgwxxwgwwgwwwvwwwwwwxxxxwffwwwfWwwwwxwfwuwwxwwxwwwwwxxxxfwxwxfwwvvwwwwxwvwxgxwwwwgwwxxwxxvfffwwwwvwxwvxwvwwxwwfxwwxvwgwwxwxwwgwwxxwxwwxxfwwfwwvxxxxwgwxxxfxxwwwwwwwwwwwxwxwwwhxxwwxxvwgwvvwwxwwxwwxwxwxwgwxwwwxwhvwwxfwxhwgwwwfwwffwwwxxxwwfwwwwwguvwwvvwwvvvvuwvvgwggwwwwvfwwwVewVwwvwfwfvvwewwhwwwwwwvvuwwwwwwwwwvwvwXwhxvwwwfwvwVwfwggwwhwwxwwwgwwwxwwwwwwxxxwvvwwwwxxxfvwxxxfvxwwwxxxwwwxwxwxwxxvwxxwwwwxwwxxxxwwwwwwwwwvwwwwvgxuwwvwwwxvwwwwwewhwfvwwwwfvwgwgwwwwwwwwwwxwxwwwwwvwxwwwwwwwwwgvwvwggwwwwwwwwggwvhxwwxwxwwxvwxwxwwxxwwxxwwxxxxxwxwxwwxwwxxwxwwwwxxwwxwhwwxxxwwwgvwwfwwwwgvwwwwfwwwxwwgvwVuvvwwwwwwxevuggvwwxwxxwwwwwwfwxwwwwwwxwwxxwwvvgfwwwfwwgwhvwwwgvwwvwwwwwwxwwxxwwxwxwxwwwwxxxwwwwwxwxxwwwxxwwxwwwwxwwwwwwxxxxwxxwwvwxwxwwgwwvwxwxwwfwxwwwwwwwxwxwwxxwwxwgwwwwwvwwvvgfwgwgfwwvwwxwxxxwwxwwwwwxwxvwwvxxwgwwgwgvhfwxxwxwwwxxwwwxwxwxxwwxwhwgxgwxgwxwxxwwxxwwxwxwxxwxwwwwxwxwhwfwwyvwwVvvvfwwwvgvevvgwwwgvgvwwwffwwwuwvwxvwwxugwwfffwgwwxxvwwvgwfwwwvfwvvfgfwwwgwfvwwgwvfvwvvwwwvwwwvwvfgwwWwvfvwvvwvvwggwvwwwwxwvwwwwwxwxwwwfwxwxxwxxwxwxvwfwgwgxxfwwwxwwwwwwgfgvxvvwxxwxxwxhgvwwvvvvgwwgffvwwgwfwvwgfwwwgwwfvwgggwfvgwfwgwgwwwvgwgwwwWgwfvgwgvwgxwwwwwwwwwwwwwwwwwwvgwwwwwwwwffxxwgxwgxxwvgwgwgwwwwwgvwvgwwxfwwwvgwhwwgfwwxhwwhxwgwfvvwxxxxwwgggwghgwxxvggwxxwxwxwwwxhhfwwxwwwwvwxwxwwggwvxwxxwwxwwwvwxwwwggwwvgwvwwwvgwvgwwwwfwvvwwxvwwvfwwwwxwgwfwxhhwxwwxxwwvwfwvwvwgwvvvwfvwwhwvgvxghwvgwwwvxfxxvwxwwwwWxgwvwxxwxwxwwwwwwwxwwwxwhxwwwwwwwxvxxxvwvxxgxwwgwgxwwwwwxxhwwxwxwxwgxwwxxxxgwxxvgxwvwwwxxgwgwwfwvwggwwvvfvwwhgwgvggwvwvwwwwwwwxgwvfxugxwgxwxxwwwxvhxxwxgwwghwwwwgxwwwwwxxvxwwwxxwwgwxwxwwwwwwwwwwxxxxwxvwxwwxhwhwxwxwxxxwxgwxxgxxxxvwwwxgxvxwwgxxxxxwvwxwvvwxwwxwwwxxwxwwxugUwffewgwvxggfvvvwwgvvvVVwWfvwguvwevfwfwvwVvvvgwfwvvgwwgxgvgwuwwvffuwgfvuvvgewgwwwvwxgwwvwfevfwgvvwgvwvwwwwggwvwwgvwgvvfwVwwgfxgugwgwwwxvxwwfxgxvwgfwxvvwxwgvwffwwwwvhvfgwwwwxwgxwwxwxxwxwxgwwwwgwxxxwwxwgxwwwxwwxfguxwwgwgwwvgwwwgVffwwuuvvwwwgwvvvvgwuwgwvwwwVvfvvgvwfggwgggwwvgwwuwvhwugxwgwxhgfwwgxWgfwwgfvxfwwguwwvwwgwvvgxwxgvvxgwggwwwxxwhwWwwwwfggxwwxxvuwwhwhxhxwxxxwwwwgwxhwxxwwxwfwwwggxxwxwwwxfwxxwvxwxwxwxxvwwxxxxwxvwwwwwxwgwwxhwvwwfvuwfgfffgufvfWvWvwgvvwfwvwwwwwwggfvewwwwufxwgwwwvwgxvhwgxgvwwgwufwwvwwwwwgvgwwwwwxxxvVgfvwwgwwvvwfgwwxwxwxwwxwwxxvxwvuwwwvwxwvwwxwxwxwwgxvvvfgfwwwxxxwWvwxvwwwwxwvfvwvfwwwwvhwwwwwwvxxxgggwwgxhwgwxwxxwxxxvggvgggwwgwwvvwwwgwvwwhxwWfwvwgfwwwgwxwgvwvwggwhgWwwxwhwghfwgwgvgwwwwhgWwhxwwwgxxxwwgxwuxwwwwxwwhgwwxwvwfxwuwgvxwhwgxhwwxhwwwwxgwwgxhxgwgwxwxxwwwvwwwwwwwxwwwwwwvwxxwwxvwxxwxghgvwwwwwxxuwfwvvfuvfwwgvxfvvxgFdegffgvwgvuvfuvwwvwvfuwwgvvwfwwvwwwvgvwwgvwwwwwgwvvfwvwvwvwvwvvxfvhwwwvgvwwwvwuwwvvvwwwwvxwwvwwwfwwwwwwxxwwvwwwwfwwwwwxwwwwwwgwwwwxxwwwwwwwwxvxxwwwwwwxwvfgfvvwxvwwvfwvvwwfgewwvwwgwfvwwwfvvwwwwwvwwwwwvwwvwwwxxhvvwwwwvxxwwwxwgwwwwxwhfwwwwwxwxwwvwxxwwvwgwxfwvwwwwwwwwwwwwwwwwxwxwxxwxwwwwxwxwxxwwxwxwxxxxvxwxxwxwwwwwgfxvguvfvfgfffwvwUvvwwwggwgvwwvgvvwwvxfvvwwwvhwwwwxwwwwxwwvwwwwwvwxgvwvwwwuwwxwxwvxwwwwwwwwwghwxwxwwxwwwwfvwvxfwxxxxwwwwwxwxvxxwwxwwxwwxwgfwwxxxwwvwxxwwxwwwwxwxwxwxwwwwxwxwwwwwvwwvvvxgxvwwwwvgvwvwwwwuxwhwgxwvvwwgvxwwvwxwwxwwwxwwvwwwwxgvwhfwxxwxxxvxxwwwwwxxvxwwfwwxxwvwxwwxwwgxwwwwxxxxxhxxwwwgwwwwwxwwwhwwwwxxxxwxxwxxugfwwwwfwfwwWefvvgvgghvwwgvwwgwvxwwfvwwwWvufvgwgwgwgwwwvhwwfvvvwfwhfvwwhvgvwwgwwwwwxwwvwgwfvwfvwwxxwfwwwwwgwwwvwwgwxwwxwwfvwfwwwwxwwvgwwwxwxwwgwxvxvxgwwxwxwwwwgwwwxwwwvvwgwfwwwwxwwxwxxwwwxxxvvwwwwwwwxwwwxwgwvwwxwwwggwvwwvfwwgwwwgvwwwhvwwwfxxwxvwxxVvuwwhwwfwwvgwvwwgwghgwvwwgvwvvgwxwxwgwxxfgwwwxvwxwxwhwwwwgxxwvfwwwwwwwwgxxxeuwhwwwwhxwgwwvxxhwxhwwxxwhvwwwwwxxxwxhvwxgwxxfwwwwwxxgxwwwwwxwxgwwwwggvvgffvggfwgwvwggwwvgfxwvwwxwfwwfxvvggvwfxwxgvvgwwwwwxxwxvwwwwwgvxfwwggfwfwwggwxwwwgwvwxwwfwggwwwwxwwxwwxxxwwwvvwvvgxwgwwwxwxvwwxxwgvwfwxgwxxgwwwwhhgwwwwvwwvwxwwggxwvwxgfwwwxwwxwwxxxwxwwwwvwwxwxwgvgwvwgwwwwgwfwwwggwwwwwgwfgwvwxwwxwwwxgwgvwwwggwxxwvxvwxwxwwwwwvwhwxxwfwwwwxvwwwxxwxwgwwwwxwxxxwxxwxwxxwgxwwwxwxwgvgxwvxwxwxwxwhwwwwxwgwxwvgxhxwxwvwwfvxxxwxwwwgwwwxvwggvvvvvwwgwwwwwwvwggwxgvWwwwwwgvvwhxxxVvuuvffvvwfwVwfwwwVggwxxwwgvvevwwwwwgwvxxxxxwxfwwxugvggvvwwwwwwgxwvgxxvvWwwwxxxxwxwxvgfwfvwwwwwxwxwfgwwvxwwwwwvwwxwxvxwxxxxxxgvvffwvgwVwwwwWggwwwwwgxwwwwWvvxxvwfvxxwvxwwfvvwwvwwwuxfwwvxxwxvgxwgxxwwggwgwwfwwxxxxxxxwwwgvgwwwgvgwxggwwhwxwxvwwxwwwwxxxwxxxxxwxxgvwwvggxwwxxwvxwxwxxwvwgxwwwxxxxxxxwxwwxhxwxWuuUvgugVGuwwwwvwwwwwgwxgvvwvwwwwwvvxwwhefgvffffgvuwvwgwwwvwwwwwhwhwgwvwwwxwxwwwxxvwwwwwxxwFVvvvvwUgWUwvggvvxxhwxwWwwwwwwwwwwxxwvxwxwxwxwwvvwfwfwwvhwwwxwwgwwvwwgVxwwxwxxxxwxxwwwwxwxvvwgwwggwwwvvwwvwwwwgwvwwxxxxxwwxxgxxxxhvvwvwvwxgwwvwvwvwwwxxwwwxfxwvxwxxxxwxxfhxxxxwgvvhgxgWwhwxwewgwwxgwwhwgxxxxxxwxwxwxxxxhxxwwhwxwgwwxxwwwwvwfwxxxxwwwxwxwxwhxxxxxeevwwwvwwxgvvuvvwwwwfggwwwvxwgwhwwvvwvwwwxwwwxwxeuvvwvvwvguvfwvgvwwggvVvvwwxvwwwwuwwwgfwvwvwWwwggwgwvwwxvwvwwwfvwvwwwgwxwvwwvxwxxxxwhwwxwwwxxxvgwfwvwffvwwwwvvwgvwwfxgvwxwxwxwxwxxvwwwvwwwfwwefvwxwvvvgwwxwwwwwwxxwfhwwwwxwwvwwwwWwuwvvwwwhwxxwwwwhwwgwwwhvwwxggxxxvwgwxhxgxxxwxwvgvwgfwwwwxwwvxxwwwxwwwwwwxxwwxxxxxxvwwwxvgvgvwwhvwwwwgxwwwggxwwwwwxxxvxxwxxhwxvvwwguxuWfwvvwvgvgwwwwgfugwwwwwvvvwwwwwxxwxxxxxwxwuvvwgweuvvvwwvvfwgwgvfwwwgvwggwwwvwgxwwwwwxwwwwxxwWfwvvwwgvwwwwwxwfwwxwxwWWwgwxwxwwxxhgxwxxwxfuvwwwvwvwggwxvwwxffgwuhxwwxwxwwxwxwwwwxxwwwwwvvvgwwxvwvvwxwwvwwxwwwgvxxvxxfwxwvxxxxwvvwwwvwvhwxwwwvwxwwxwwwvwxwwwwwxwwwxhwwgxxhwwwwwhxwfwxwwwwgwxXfwwwxxxxxxwxxxxwwxxxvwwwwgvwvwxxwxhwwwwhxwwxxxxxwtvwhgvvgfvvwwwxgvgxwwvfvgwwwgwgwwxgfgwxxxgxxVfuvwgvwvwgufwvwvgfwhxwgvvwwwxwwWwvwgxvwxwwwxwxxxwxxgvwxwwwevwwxfVvwhxwvvvwwwwxxwxhxwxgwwwwxxwxxwffvwwwwwwfwxgwxwwwvwwwwwwxwwxwxxxxxwgwvwwwwVwwWguxvWwxxgwvwwwgwvwxgxxgwwxvhxxwwgwfvwwwwvwxgxwwxwwvxwxxwwwxxxwwxwuwxhxvxxxwwwwxwwxwwwhwxxvxxxwxwwxxwwxxwxxxwggxxwwwvxwwvxxxwwwwwwwxxxwwxgxxwxxGvufwwvwgfvwwwvwWUVvwgggvvwwwgvwwwwwxwwxxxxwxxxfUfvvvwegwvvvgVeewwwwxwvwwwxwwgvwwwxxxxxxxxhwwxxxgUVwxgvgwwwwxfgGVxxxvwhxxxwwwxxxxwfwxxwwgwwwwwvwwwvxwwxxxwwwvxvwwxxwxxwggxxwxwgwwwgwvWwvhwhwwwwwwxxwwwxwxxxxxwwxewwwwfvwwwxwxxwxxxwwwwxxxxxxwhwwwxwxxgvvxgxxwwhxvxxwxxxwxxxwxxhxwxwwxxgwxwwwwxxxwwxxwxwwwxwwxxxffwvefgefwxegeVgvwwvgvwvwfvxfggxwhwwwuwwwvgwwxwfvwweevvvfwwwweuvwvvwwvfwwwwwgffwffwwgwwwgwwwwwwwxhgvwwfggvffwwffwvvwvvvwwwwwwvxwxgxwfvfwwgwgxxxfwwhxwxxxfvwfvwwvwwwwwwwwxhxgwxxvxwfwwwwwxwwxwxxxwwxfwwwevwwvVvwvwuvwvgwwwwvvxwwvVvgwwwxwwxxwvwwxwwwwwwwwwwvfvwwgfwwwwwvvwwwwxwgwfxwwgvwwwgwwwwwwwwwwwhwxgwwwwwxwwfgvwvwwgvwwwvwxwxwxgvxwwwxfgvwxgvwwxwxxwwwwwhhwwxvxgfwxwxwxwwwwwwwxxwxwxwxwxwwwwxwwxwgvxwxxxwwwxwefWVffvgvfwvwwvfvfwwggfuwgwhvfvevvwwwwwwvvwxvhwwwwwwweVuvvvgggfwvwwvgvvwwwwggwwgwvfgvvwwvgwxxwwwwwgwwwgxvgvwvgwwwvfuwwxxhggwwwwwwgwhwfgVfuvwwvgwwxwwxwxwwhwgWfxwxwxwgwwxwhgwhwxhwwwhgxvxxwxwwvwgghwwhwxwxxwxwhgwxxwvvwevwwwwwwwxfuggwwhwfwvxgxfwvwfvvwxwxwwhhvxwvwvwvwvwxvfwwwwxwwwwgwwwxwxwwwxwwwvwwxwxxgwwxxVvxwwgwwwwwxxwxwgWwuwghUwwhwvwwwvWXfwwwxxwwwxxwwwxwwvgwxwxxwxvwxhwxwxwhwvwxvvxwwwwxgwwwxwxwxxhwwvewxwwvgwvvwgwwwwvwwwwvvwwwfwvwgwwwwwgwfuwwwwvwvvvvwvwvVewwwwwfvvwwvwfwvvwfgvvfvVwewwvwwvwwvwwwfvwvwwxwfwvxwggwwxxxvwwfwwwxvwwxfvwgwwgwwxxfuvwwvwvvwwwwwgwwfxwwgwwwwwwwvvwwwxwgwwxwgwxxxgwxwwuvwgwwwwwgvvxxxwxwwvwwwfewwfwwvwxxwvwwxxwvwwwwwxwxxxwwvwwxgwwgwvxxwwwgwxwvwvwwxxxvwvwgwwvxwxxwwxwwwfwwwxxxwufvxwxwwgwxwwgxwwwxxwgxwwgxxgvwxwxgwvwwwwggvwwfgwwwwvwgwwwwwwwggwwVwewwxfwwgxvffwwvvwfwwwvxeewgwvwwwvwfwfgwwwxvwwwwxvvgwxvwwwwwwwxffwwxxwvwwxgvvgfxwwwwwxxxfwwwwgwxwxxvwfhxxxwwwwgvvwwvxxwvvwggwxwwwwwwwwwxwgxxwgwvwgxvwwfwwvwwwwvvwwwwxwgwwwfvxxwwwxxwwvxxwwxwuwwwwwwwxxxgwgvxwxxwgwwwxxwxxwwwgxxvxxxvgwxwwwvwwxxwxhgxxwwhxwxwxwgwxwwxwwgwxwwwwxxwxxxxwxxxwxxuhwgwwgwxwwwfwwgwggwwgfwvwwggwwwwxwWwuxvhvwwwwxwfvvwfvwfvvvvwwfwgww6SwgvfVuuwvxwgvwvvvwxVwuwvwwwvvvvwwvvwvwhwvvwvgwwwwxvwwwwvgwwwvwwvwxwgvwwwwxgvxwxwvwwxxwwxxxvgvwwxgfhwwwxwwwwwxwwhwwwwVvegwxwgfwxfwwhxxxxwvwwxwWuwgwwwwxwgvwfwwwwvwxxwwwvwwwxWuwxxvwvxwxwwwgwwwwxwvvxwwwwwhgwfvxwwwgwwvhghfwwwwwwxgwwgfvvwwwwwgvgwvwWxwwxxwwgvwwxwwwwwxxxxhxwwwwwxxgxxwwwxxwwwxxxwwwgvwwwwwggwvwgwxgvxwwgwwxxxwwxwvwxwxwwxwxwwxwwvgwvxwwwwwUevfwfgwgvwwwxxfvfgwwvwwxwvwwwvwhvwxxwwwwxxwwwwwwwvUUwfwwgFedfvwwwwwwwwwwgvwgWwfwfgwfgvwxgwvwwwwwgwxwxgwwwxwwfwvwfgvxwwxhxVwuwxwgwgwxvfwwwxwwxghxwhwxwwgwwgggwvwwvwwwwwwwvwgwxxwwwwwwvwwwxwwwxwvxwwxwxwwgwxxgxwwwwvwgwwwxxxwwwwxwhwwwwwwxwwwwwxwwwxxwxxxxwxvxwwxwwxvwwwwgvwwwghvwwwxxwgxvxxxwwwxhwvwwxwwwxwwwxwwwwxwwxgwgvxwxxxwxxwwxxhwvvwvwxvxxxxwwxxgxvgwvxwxxxxwwgwvwxhxwgwwwwxhwxwwvxxxwwxwwxwgwvwgwxtvgwwxgwfgwgffvvwxwwwwwfwwwwwvvhvwvwwwwwxhxxwffuvgwWwwwfwwvfgwwwfvwgvwfvwvxwwwxwwgwvhwwhwwfvvwwwwgwwxuwwwwxxwgwxwgfwwxgxvwfwxwxxwwvggfwgvwgxwwwwxvwwwxwwwwwwwxxwxwwxwxwwwvwwgvvxwwwxfwgwhwWwwxwgwxwxfwvxwxwwgxwwwfwvvwwxxxwvxxwwwwwxwwwwwxwwxxxwgvwxwwwwwxwgvwwwxwwxxgvwwxwxxxvwxxwwxxxwxxwwxwxwxwvwwwxxwvwwwwwwwxwvgwxxwwxwwxwwwhwxVfefwwwvwggwwvWfwgxwwwxvxgfVxwggwxxwvwwxwxeffvwwvwvwwwfwwfwgwwxwwwvfvuwwvwwxgwvwwxwxfVewvwwwggwxxwxfvwwwwxwxwxwffVVwgfwhxxwwxwwgxwvxxxfwgwwgwxwwxgxhxwwwxwwwxxwxwvxvwwwWgxwwxxwxwwxwxvwxwwwwgwggxwxwxwhwwxxxxxwxxxwxxxfwxwxwxwwwwxxwwvwxxwwwwxwgvgwwxwwxwhwwhVxxvvwwwwwhwxwwwwgwvwxwwwxwwwwfvwxwwwxxwxxwvxxxxxxxwxxugfwwewwvggwxwxvxugwwwwuwwgxvwwggwvwwWwwwgwwxvwwvvwwuwvguwggvwggvvwwvfwwwwhuwewvwwgwwgwwgwwwvvwwwgvvwwwwgwuvvuwxxwwgwwwugwvhwxfuwwwghvwwuwxgwwxwwxxxxwgvwwwwwwvwwwxwvwxwgwwxwxwwwwwwwwxwwwwxwwxxwwxwwwwwWwwwwwfwwwxgwwxwwwhwxxwwwwxxhgxwwhwwwwwxgwvwwxxwgwxxxwhwwwgwwvwxwxWwwxwwwwwvwxwhWgWwwxxwwwhwvwwwwxwwwvxwwwwvxwwxWwwxyxxwxxxwwwxwwxxwxxwwwwwxgxwwwxggvwxWgwxwwxhwwwwxwxxwwxwxvuwwwvgvwvwvwvWvwgwwwvvwwvwwwvwwwwWvfwfxwvwxxxwxwxxwxewvwvvwfwwwWwgwwvvwwxwwxwwguwuvwgwwwwwwwxhvxwxxwwwxwwfwwvxggguxvwwwfwwwuxwwwwwxxvxwwgxwwwgxxwwxxwxxxxwwwvwxwvxwxhwwwwwwwvuxxwwwxxwxwgxwxxwwxxwgwwgvwwxgwvvwwwwguwxwwwwwxxhwxxxwxxwxwhwwwxgxvgwxxwwwXvwwwwgXwvxxwwwwwgwwwxxxwxwxwwxggxxxgwwwwxwwgwgxwxxxwxxwxxwwwhxwhwwxxwWgvwxxwwxxwxxhwwxxxwwxwxwxwuwwgWxfvgwwvgWxgwwgfvwvwxxxxxwwgwvfwxwggwwxfgwwwwgxfwwwvvwwxgvWwguwfgfeuggwvwwvwvwvvwwwwgwwwwxxxxwwwvxwwwhXwwgvgwvWwwwxwxvxwwxwgxxwwwwywgwgwgxvwwwwwxwvgvwwwgwvxwwxwwwwwxgwXwwvVvvuwwggwgwwwuxhwwxwwwwwgxwxxwwxhwwhwwfwwwwwxvwvfwwxxwwwwwwxwwxxwwxvxhVxxxxxgvgwwgxwvvxxwxwxxwvgwvxxxxwwwxxwwxwwhxxxwxwwxxxxxxxxvxwxwwwxxxxwfxxxwfwwwwwgffwwggwvwwxfegwxvxwxwwwwvvvxwvwwxwxxxvwwvwWwvwgwwgvwghxwgwxvwxxxvvxxwxWxxxwxwwxxgwvxwxxfvvwxxfvwwwxwwwwhgwxfxwwwvwxxxvxxxxxxwwxwxxxwwxwgwwwxxxwwwxxxwwwxxxwffwwwxfwvwwgwxwvwxxwwwwvgvwxvwwxyxxwwxwwwwxwxwwxvhwgwxxxwxxwxxwwwxxgwwxxxwwxwxxxxwfwwwwxxwhxwxgexwfxxxwxxwxwwxwwxwwxvwvfwxwudfwefvwefvefVwvwwwxxvwvxvwfvwvvvvwvfwwwfwwxvxvugvfVdwegfgFffgwwxgwwvgvwxwwgwwewgfVwwvwufwwgvwgwgwxwwwwgugwgffvwwfgwvwfwxvwwxwxwfwwgwwuxwwwgwxxvwfwevuwvvwgwwwvwwvwwwwwwwwfvxvwwwxwxwhwwvwxvvufwwwgdfggvwggfwgwxVwwwvwxvvwWvwwfwwuwwggwhwwwwwhwwwfggvwvfwxwggwfwwwwwhvgwwhwwwggwuwfgwvwWwwwgwghxwwxxwwxwwgfwxwwvvgfwxwwwwwwgwwwxxwwwgwhwxvxxwwwwwwwwwwxwxwgwwwefwwwxwwgwvvwwwhhwhggXgvwwxvgxxxxgwxgwwwfxwwvxuwwvvffvvvwxgvtggwvgwwwvwvxwwgvwvfgvwvwxwwvgwxxvfugdfffvVwugvgvwvwgwxvwxwvvvwwwwwxwxwwwwwxxvwwxxxwwxgwfwwgeggwwgvwhfgvwxgwwwvgwwxwwvwvwwwxwwhxxwwxhhxfwwwwxwfvgvvwwWwgwggwfgwwxwwwvwfvwgwfwxwxwxxxggxwxwxwxwxxvfwwufvwvwvwwxuwwwwwvwwwwwxwfwxwxgxwxwxxvwxwxgwxwgwuwwvvvwxxwgwXvwgvgxwwwwxxwwxxwxgxxxxxwffwgwwgwxvwxxwvwxxwwwwhxwvwwxvwwxxxggxxwwxxxwgxxwfxvwwwwwxwxwvwwwxvwhxwhwwwwxwgxwwxxhwwwxwxwxeUfwfvTfvvfwgUvwwvgvwtwvgwweevvuwwuvxwfvvfwgwxfuvwxwUvvxeevdvveUwwuUvgwwxfvwwVwwufwwwwfggwwfgwwvfvvwgfwwgwwwwUvvwuwwvwwwwwwugvwwwxvvwwwwugwewwfwwxxxvfwwvwwwwuwwffwvwwwfwwevwwgfwgwxwwwvvxwwwwwwwwvwwUvxvVewdgwgvvweEvxwgvfuwwuwvvVfgwwvwgvvgxxxgfwxxfgvwwvwwvvwwwVwwwwwwwwxwvwxxwwevvwxvgvgwwwwgvwxwvwgwwxgvugfvvwwwgvwVevgxvwwxxwxfwwwwwxwxwwwwVewxxxfwxwwxwvwwwwfwvxxwwwwvwwxwvgwwxvwwxwwgxwwwwxTufgvfvugwwUvxuUvwwwwgfwwvwvggwvvxxwgwwxxfvvxxwvwgwxxwwdefwVVwwewgvwgvffvvwgwwwfwwwwvvxwwwwwwwwxwwgwwwwxwxwuwwweuvwwxwvwxxVtvgwwvwxwxxxxwwwgvwxwgvwgwggwwwwwwfgwwgfvwwvgvwwxxwwvVwwgwvwxwwxxwxwwxxwwwwxxxwxxwxegfwwgUvvwwwwfgwwwwwwwwwwxwwfvvwwvxwgwxwwwwwgxxxwwxwwxwwvwwgwwwfwxwwwwwvwxwwvwwwwwxgwwwwxwxxwwwwwwxwwEvuwwwwwwxwggffvgvwxwwwxxxxwwxxvgvvxxhgfhfgwwwxvVvwwvwxxwwwwxwgvwwwxwxxwwxxwwwxxwwxwwvwwwfvvxgwgxffvggwxwwwwgggVvgggwgxwvgvwxvvxwgxVvwgwvxwgwfwwfwfvwuVvuwvwwwxwxgvgwgwgfvgvfwwwvvwwwwvgvwggggwxwxwwwgwxvugvgxwuuvwwxgvwxgwwwwxwghwwxxgxwxhwwxxxwgvwvgwvvvxwfvvVwfwgvgwwxwwwwxxxxwxwxxxxwxxwvwvwwVuvgwwvgvvwxfwwxwgwwwfwwgvhfvvgwwwwwwgwxxfgwgwwxxgwwgvwwgwgVvvwgwgwxxhhwwwxwwVwvggfwwxwgxwgxvhXVxxxxxguhfvwvgwwwxwWwfxxvwwgxxwxwxwwxvwxxxxxwgwgwxxxwgvwwwwwxwwxgvwhhfxxxwwwwxxxxxxxxxxxxwwwefwwgfvvwvgwgvwwwwxxxxhgwwxwwwwwwwxxwxxxvfwVwfwgwwvwvwgvvxxvgWwwhwwvvwwwwwwwxxwwxxwxxxwwwwgwvxwwwgwwxvwvwxwwxhwxxwxxxwwgwwxwvwxxvxwwxgwxxwxxwvxwvwwwvwwgxxxxwxxwxxxwxwwxxhwxxxwwwugWwfvfwxfwwvgwxwxwwvxxxhxxwwxwxxwxwxxhxxxwwwgwwgwggwwwwwwxxfhvxhgxxxxxwxxwxwwxxwxxxwwwxgwxwvwvwwhgwvxgxxwwxwwxwwwwxwxxxwwxxxwxxwwxwwxxxxxwywxxwgwxwxxxuUwwfuwwgwvwwwvwwwwwwWwwxvvvwvwgfhwwgxwvfwwwxwwwwwwxftfwvfevwgwgwwwfwvwwwffvwgwwvvguUvugwwvwvwwwwfwwwwwgwwwxwwwfwwwuggwwwwvwggwwwwwxwfgwwgwvwwxwwwxwWwgvwwxwxwfgwwuvwwwwwwwxwwgxvwxwwxVvvvVwgvgxwxwvgwwwwvwwwwvwxuewvwwgwfgvxwgwgwwwwwwwwgwwwhffwvvgwwggwwvwwwwwwxwwwgxtwwxwxwwwwxvfvwwwggwxwwxxvwwgwwwgwwwwvvWgvwwwxwfvwwwxwwwxxgwwvxwwwwwxwgwgfwxwxxfgwwwwwwwwwwwxwwfvhwgfwwxwfWwwvWwxxxxhwwwWxvxwvxxwwwvwwwwvgwwwvwWvwwwgwuxxwvgfwgwuvgfwwwwwuwwwgxwwwwxuvfvgvgwvvwwfwwxwvvwwwvvxxwxweewvfvgwwxwwgwwvwwgwwwwwxwwwvgvvwvwwwwxwwwxxwuvfwwwxxwwwwvwvwxgWwxxxxxxwvxxwwwfxxWxwfvwgwwwwwxxwxwwwwwxwwWhwhvwwhVwfwwgwxwwwwxwwwxxvwgwwvgvwwvwxwwwwwwvwwwxwwwxwwvxgxxwxxwxgwwxhwhgxwgwwxwxgxgwxxvxvwwwgwxxxwxwwwxwxwwwwwwwwwgwwwwwwwwgxwhWwxgxgvxwwxxgxxxxxwwvgxwwwxwwwwwwggxwwhwwgxwwwxwwwwvwwwwwwwxxhxxufvwfvfvevvwvffvwvwhxwveffvevwuwffwUgvgvffwfwwWvwvwwwvwvvvvvvefffvvwgwwwfweuvvwvwvvgvwfvvvVVfevgwfvvgwgwwggwvgxfwwvvwwgvvxwffvwwfvwfwgvwwxwxxwwwvwvwUwvfgwvwvvwwgxwxxxvwwWvwVuxfhwvgwgwvgxwxwwvwwfvhvwvvggggvvwwwwwxwwwxxgvgwwvggfvvggwwwwwggvgwgwwgwgwvxfvwvgwwgvgvvwwwwxwwgwfwxwwwwvvwwxgwwwwxwxwwwwwwwwwwvxwwwwvgwwwwwwwvvwwwxgxvwgwwwguwxwxgxWfwwvwvwwxwhwxwwwwxxxwxxvwxwxwgwwwxxxwxvvxwvwxxwwxwfwuxgwwxwgwwwwxxxwxxxhwwwxhwxwgwxxxwvgwVvvgvfgxwUffvvfvvvgvhgwvwwfvvwvggwwhguvgwgwwwXxwxhvegvfevgvwwwxxhuuvvwvwfwhwgwgwVgewvevwvwwWgwwgwwvgwvvwgwwwwxweevgfxwwgwwggwvwxgwvwxgxxggwvfwwwgwwwwxhgwxwghxgxwxwhfvvxvxvwwwxwxwxwwwxxvxwxxxwwwwggwwxwwgwxwxxxvwwfvwwvwwhwgfwgwwwvwwxgxgwWgvxxwwhwgwxxwwxwxxwwgxwwxwgwgwwwgwWwgxvwwwxgwXwgxxwwwwwgxwwwgxwwgwwxwwvvgwwgwxxxwwwxwxhxfhxgxxvxxwxwxwxwwgwwwgwgxwxxhhwhwxwwwxxxwwxgwvxgxwwwwhwxgxwwxxwwwxvxwxxuvfUvVvvwuwwtvxwfwwWfwfggwwwvfvwwwgwwwwffffwxfvwwwwxvvwwfwvwvgwwvvgwgfvgfFwvvvwwevvwwgwwewwvfvfxgxuvwwgggwwwwgwwwwwgwwwwwvvwwwgfwfwgwgwxgwwfwwffwwwwwwxxwwWxxgwwxwxwwwwgwwwwgwwwwwgwugwwWwwwwgwuvwwwghwgwwgwxxxxxwxxwxxxgwwvgvwvfwgvwwWwwgwwfuwxvvwwhvvvwgwwwwwvwxxxwwxfwwvgxgwwxwwhwwwgwvvfxwwwwwgwwwhwwwwwwwgwxvxvwfgwwwwgwvwwwwwgwwwwwwwxgvwwwxvwwxxwwwwwxwggwwwxgwxxwxxwxxxxxgwxxxvwxwwwwwwwwxxwgxwwxgwxwxgggwxxxwxxxxxxxwwxvwwfvwgvwffvvwVvgwwwwfvgwghxVvfvwwgvvwvwwwfgvwxwhwxggwwggfvvVwvuvvgUvvgwwwwwwgwwwwwxwuvwwggwgwwwgwwwgwwXwwwggxwvwwwwwvuwwwwgWgwwvxxwgghwfhwgWgwvwhwwxwwxwwwhgxxwxWwwWwvwwxwhwxwWgwwwwxhxggwwgwwxwxxwwwxgwxxhxwwwwwwvwwVwwwwxwwwwxwhvwxwwhhwwxwwwwwwwwwxgwxgwxxhxgfgxxxwwxwwwWwwvwwwwxhxwggwgwfxwhwwwxxwxwwxxhhhxxwgwwwwwwwwwhxgwwwwxwxxxwxxwhwgwxxwwhxgxxwwhgxxwwxWwxxwwwwwwwvwwwxxxgwwwwxxhwwwxwwhgxwwwwxwvgggwwwfvwxvxgwwwwwwxghwwgvvvffwwxwxgwwvwwwxwwwxwgwwwggwwvwwwwwvwwgvwwwwgwwwxgwvgvwvvvwfvwwwwgwvwwwhxwwgwgwvgfvwxvwwwfhwwwwwhxwwgwwwwwxfvwxxwwwxxxwwxwxxxwxwxxvxgwwvwwwwwvwwxwwgwxwwxwxxxxxvxwwwwwxwxwwxwwwwgvwhxvwwxwxwvxxxwvwwvwwwxvwwwxxwwxwwwxwwwwwwwwxwxxhxwwxggwwwwwxwgvxwgwvxxxwwxxgxvxxwghwwgwwgwvxhxwwwwvwxwgwxwxxxxwhxhwgxxxwxwgvwxgwwwwwxxwwxggwwvvwwwwgwwvwxwwxwwwxxxxxvvvgvwwwwxgwxvwwwwvwxwwwwxwvvvwxgwfxxvwwwwwxxwxxxffwvvvwfvwwwxwvwwwwxwgwgwwvvvvwwxwxxxwgwvgwxwwwwwxwxfvwwxxwwxxwwxwgvxxwxxwxwxgwfwxwxxwxxwxxxxwxxgwwwwgwwxxxxxxvwwgwvxxwxxxxwxwxwxxxwxxxyvwwvwwwwxvxwwxxxwhxxwwwvwgwvxxxwxxwxwxwxwhxwxwwwwwxxwwxxhwgxxxxwwwwgwxxwxxwxwxxxwwwwgwxxwxxwxwwwgxvxxxwxxxwxxwwwxxxwxwxwgwvgwxxwxxxxwxwxxwxxxyxueevwdvwxwfuwfeugwwgxtwwvwwwevwwfuvvvfwvwfffwwfvvwvwwgfvvwvwfwewwVwwvvwwwvwvfwwwvgfgwvvgdfwfUvvWwgvvwffwtvwvWwwvfwxwfuwwvewwwggvwvwwfwwwwfwwwwfvfwggwuxwfwwwxwwwgfvvwwwwwfwvfwwwwwwvgtwwwxwwgxwxwwxxwvwgwvwwwwwwgwwfwwwvxvgwvwgwVwwvwwwwfvwwwxgwwwxUvwwwwxfwwxXhwvgwwvfwwwwwwwwhvggwwgwwewwxgwwvwWgvwgwxxxwgwwwhvwwvvgwvwxwwVvwwwwwwxxwgwwhhxwwvxwwxhwxwwxwewgwvwwxwwgwxxxwwwwwxxvxwxxgwxgxwwwwxwxxwwxxvwwwfuvwvwVvgwvfuwfwgwvvevvwwvwgvevgwgvvvwXwwwwxwgxxwxwgwwvwwdvgvfffVwwuvuwwvfgdwwvWwwwwwwwwwwgwgwwwxghfxwxxxwwgwwgvvvwxWvtvwgwwgvwgxgfwwwgxhxwwxxwfwxgxxgwwghwgwuvwwwgwwxwwvwwxgwwggxwwvxwwwwwwxxxxwwwwvvwwgwwvwwwewgwggxwwwgvvwxwxxwwwghxxwxxgfxwxxfhwwwwwwwhwwgwhwgwwvgwwxxhgxwwxxwhgxxwwxwwxhwwwgxvgwwXhwwwwxwwxhxxfwwwwxxxxxhxgxxhwwwwWgwxxxwvwhvwwwwwwwxxwxxxxwxxxwuwwgwxVvvwfvfWvwwgwxvfgwVvgwwwwvhvvwwxwvvfegwfffvwhwwvwVvvwwvuffvvvfwffvwWwvwVfvwvwvvwFcwfwfwfvuguvwuFuugvfewvwgwwfgfgwwxwwvwgxwfwgufgwwuhgwwxwxxvwwvwwwwwvwgwwwwhxxxwxwvfuwFvegwwwxxwwxVwfhwVUvwwwwwxggwwxwwvgxhwhwgwxxhwgwwxvxwxvxwvggVewwwxgfwwhwfwwwwwwwwwxvvgwvwwvwxgwwxxwxuxgwgxvwfvwwwvgfwvwvwwggwwwwxwWwwwggvwfgwvhxwxhvwvwwwxfwffwxxwwwgggWvxfwwfwwgghwwwwxVvwwwxgggxhxwxwwgxxwwhxwwwvwwwxxhwwgvvgvxhgxxwxxwwwwwfggxhhfgwwgwxwwwwhgwwwvvgvvhgwwwwwxwwgwgwvwwwvgvwwvxvdUgwwWWvfWvwvxwgvwwwwhxevfghwxwxxwxwTUwWgfwwvfwuwwf6vdVvfvgxvxwvwvwgxwwgwfwwwxwwwwwWxxgwwwwwvgwwgwwxvwwhgwggwwvXhwwwxgwuwhwwhwwxwfxxghxxxwwwwwxwwgwvfvvxwwwhwgwwwwwhggvwwwgwxxwxxwwwwwwwwxwwwwwwxgwwggvwfwwwxwxgwggwggxuwwvwxwgwwxwxxwwwxhxgxxxxxggwgxwxwgwxgwwwgfvfxwxgwggWggwxwwwxwgwwxwxhxxwxgwwgwwwwvxwgxgwwgxwxxxhxxgvgxxxwwwgxewxwxxwwxxxwxwgwxwwwxwhhwwwvvgghwghxxvxwvwwxxwvxhwvwxwvwwwwxtufwfvgvwvwvvwwvwufwgvwWxxwwvuwvfwwwgwwhvwgwxwxxxgedevfUvvwGvgvvwwwewwwwgwwgeffvVvvwvvvwwwVgwwwvwwwwgfvvwgguwwvwwxvgvwggwwxtggewxwxxwwwwgxgweWffwfgvwvvxwwffxwwwwwwwwgvwvwwwwwwwxwxxxwvuwwffwvfvwgwwwfvwxwguvwwxwegwgwwwWwxwGwvgvwwwxxxxxvgVwxwvgwgvwvgwwwwwvwgxwwwuwuvfvwhwwwxgwgwwxvxwxxgvgfwwwhwwwxfwvgwwwvffxwxwwxxwwxwxwwxwwgvwwwwwgwwxwvuwwgwwgxwwvvwwwvwwvvwwvgwwwwwhwwwWvtfffVuvvwgwvwvfwvxwgfwvwxxxvfuwvwfwwwwwxwvwwwxxxxvffufvtfwugwwwwevwwvwxxxxfvvvvufgwgxxwwxwwvwwwwwwwwxxvVVwfvVFwgwwgwxwwfvxhgxwvvfvwwgxxxxxxvwvxwxwxwwxxgvfwwffwxwxfgxhvwxwgwwwwwwfgxxxxxxwwxxgwxhwwwxvfwwwwwwwwwfvuwwxwwfvwwwwxwfgvwwwxvwwxvvgwwwwxwxxvwguwxxwwwxvwwwwwwwwxxwvwwwxxwxwvvgxwwxwwxxwfvxxxwhwwxwgwxgwxvhwwxuwxxxwgwvxwwggwxwxxvvwwxxgxwwwwgxwxwhwxgxxxwxuwvfvwwwggfvfwxwwvguwgvuvWwvvvwgggevwwvgfWwvwvwvvxgevfufffFcwVudvvffWffffwvwvguwvwfwevfvfwvwewvwvvvwvwvgfwvwwwewvxvwgvwwwvvvgfvgfwgwwxwxwxggwwwwgwfxgwwwxxwgfvfewgwwwwwVdwwgfgwxggwvwvgvvwwwwwxwwwwwwvwwwwwwwwxvvxwwgwgfvvwvgguggvwvwvwwvVuwwwevvwwhvwwwugwhuxwwhgwwvwfwfffgvewwguggwgvfVwgxwfgvwwvgwvvwwWfwwwggvgvwwwvXvxwvggwwgwfwvwwVwwwxgwwwwwwxwwwwgxhwwwvwwwuwwwvVwwwwwxvwxwwwxgguxwwwwxwwxwwfgwhxwwxwwgvwxwwwxwwwwvwuxgeevvgffufWvgfvfwfggvwxvwvggfUfwwgwxwvwvvhvwwwwgxvfUdvFuSfvwvwgvfVfvevvgegwwfwwwvvvwwwwwgvwgwwvwwxwwwhhwxwwxwwwwvvggwghuxggvwwwwwWwxwhwggvwwxxwwwwwwwgwxxggwwvwwwfwwvvfvwwwwwxxvwwwwfexwwwwwwwhwwwwxxwwvwwwwvwwwvwggwgvgvwwfgwwwhwvggvuwwvgfwwxvwvwwwvwxwwwxxxwxwxwwwxfwwwxfwvwwgugwxfvxgwwwgwwwgfhvwxwwwwwxggwwvxxxwgwvfwxgxwgwgwwwwvgwwxxwxwwvxwxwwxxwxxwWwvwwwhwwwVwvwxwxxwwvwwWgxxwwwwxvwwhwxwxwwgwwwvxwwgggvxhwxwwwwgxvwwfwwwfvvwvgfwfwwgwxvwfwgvwwwwwwwwwvwVgwwwvgvxwxwwwggffgWffewfvvgwgvwgfwwvgfwfvgvfwwgwwvwwfwvwwwwhwwgvxgwwvvgvwwfvwwevvWgfwxwwvxwxxxwxxvwwwwxxwwxwxfwgvwfgwwxwwwwwvgxxwwxxxwxwwgwxwxwwwwwwwghwwxwwwgvwwwwwwvgvwgxwwwggwgxfwwwwwgwwwwwgwwwxfwxwhwgxgxxggwwwxxwggwwfwfvfwfgvwwwwwwfggfwwxxhvwfwwgwwwwxxwwxwwgwvhvhwwgxgwwgvwwwhfvwwfxwwhxwhwwwxxxvxxxwxwxxgxxwxhhxxwwxfxvwwwfvxwwggxwxgwwxwwvxxxwggwwxwxwxwxwwgwvfvxwhfwvfvvvgfhgwwgfgwwvwxwwwwxegvwwwwwggwwwhwxxxxwwVwvwegffvvvwwwvvfvwgfwggwxgwwwwwwwwgwxgwxwvxwwxggwwxwwwxwgwwxwfvggwfwwwxxwwwxwhwxgwwwwwwhxvgxwgwwwxxwxxwwwwwwwwwvwwwvwwxwwwwxgxwwwvwvxvxwxwwxxxhxxxxvxwxwxgwggvvgwgwwwwwwfvhwwwxwxwwxwxxwwvvwwxwwwwwwwwxxhwwgvwwgwwhwgwgwwwwgwxxhghwwwxgwvwxwwxvwwwxwxxxwwxwxwxwgwxwhwwhwwvgwxxxhxxwwhxxxwxwxxwxxwxwwxxxxxwwgwwwwhwxwxwfwwxwxwxxxxhuwxwvfgxwxwwgwvfgwgwwxwwwwvvfwvhgggwvggxgvxgwvvgvfdwvwwwwwwvwvwwwvxwgwgVvevgvxvxwvgwwgwwwxxhxxwwvwxghwxgwwwwggwxvxxwxxvfgfwwgwwwxfwwwwxxxwvwgvwvggvvwxfwwxxxvxxWwvvggwvxwwxxxwgxwxwwwwwxggwwwwxggwtxwwfwwwxxxvwVvfwgwwwfvwwgxwgwhxwwwvwwfvwwxwwxxxgwwwwvxgwwxwwwwwxwxwwwvwvwwwwwwhVxwxwvggwwhvvwwxxxwwwxwwxgwxWwwwwwwwxwwwxwxhwgwwxwwwwxwgwwxxwwwwwgxwwwwwgxxxfxwwwwhghxxxxwwwxwwvwwvwwwxwwvxwwvfuvvvwwxxvwxwwwxwxwwxwwwvwfvgwwxwvwxxxfxxhwfvuwwwwfwwWwwwvwwxwwvgwwxwwxwwwwwwwwxxwhwxwwggvwvggvvwxxxgxghwxxxgwxwwwwwwwxwxxwxxxvwwgwwwxwwwxxhwxwwwwvwwwwwhwwxxwwwxwwxxxxxwgvvwfvxvwxxwwggwvwxwwwwwwwwxwwvwxwwxxxxxxwxwgwwwxgwxwwvvwxwwfwwwxwxxwxxwwxxxhxwwxwxxvvgxWwvxwvvwwxggxxxwwxwwwwwxxxwxxwxxxfwwgwwwwxVuvvuuwwvvvffevvwvevwvvfvwwfvvwwfuvwwuwwufvfggfwvwvvggvwgfvVwvvevvwfvwwgVwufvfwgvwvuwfwevvvguvvwwggggweevvvgvwfwvwwwwhuvwwfvwwwfgwfwwgfvvwgxwvwxwvwvwwwgxgewwwWwgwwhwvxvfwuwgwwxxwwwwvwwVwwgfwhwfwvwwwwwvwwwxwxvwwgvWgvwwwfvwvWwwwfWwvwvwfguwxwgvwfvwwvwwxwVwwfwwvvwwggfvwvgwvwwwwxxvvwwvwwwwwfwwfwewvwwwfwwwgwwwfwvvwwgggwvwwwgwwwwwwgwvxxwxfwwgwwgwxwxgfvxwxxgwwxwwfxgxgwxxxxwvwwwgwwxwwwfwwvwwvwwxgwwxwwwwwxwfwgwgwvwvvwxvguxfvvwvvwgwwgwwgvvvwwgwgvwfwwwVwwwwVguvvwwhvwxgxwwwwfvvvvvvuvvwfwwfwfwuwvwffwvfxhwfvvvwwwwvwwwgwgegvfwwxvgxgwwwwvwwvVwwwwWwvwwwvfgxgxwvvuwvWwwWxxwwwxhhwwwVwhWgxxwvwvggwfwvgvxxwwwgxgvwwgwwwwwwwxxwxwwwwwwwwhWwwvwwwwxwwvwwxwvwwxvfuvwwWvvxfxwxgfvvwwwvxwwxgVwwwwwxxgwxwxwwwwgwwwwxxxgxgwggxfxvwgwwwwgxvwfwwvwwwwwgwxwwvhwwwxwvwwxhVvvxxhfxwwwwwwvWxhhxwghwwwwgwhvwgxwgvhxwghvwwfwwxwvwwwwwwwxwwwwwxfhwwxxwvvvvvwwgwfwvvvwwwwwgvxgwwgvwggwxwgvWfwwwwwfvwxwwvvgwvwfwwwvfvwvfvvvwwwgwvwxhwvfWgvwvwfvwvhgfvgwvwwgwxvwvvwwfwwfWwvwwwvvggwwwwwwvwwxxwvwwwwwwwwxfvvwxgwvwwwwgggvwvvwwxwvwwgwxwgwxwxvwfgfxvwwwwxvgwwhhgwgwwwfwwwwxwwvgwwvwvggvhwgvvwwwxwggwwxwvwwxwgwwwwhxwvhwwxwwwwwxgwgwwxwwwvgwwgwgxgwwwwxggwgxwwwwxwwgwwwgxhwwgvwwxxvwwWwggwwwxxwwwgxhgwwwwxxxgwwwwwxxwgvwxwxxwwwvwwgwxwxxwwxwxwggwwvxwhxvwgwgxwgxwwvxhxxwwwwwwwwvwwwfvxxxwwvwwgvwwggwvvwwxwhfwwwwwwwgufvxgxwwwwxwfwwfvvgwwwwxwvvwgwxwggwxvxwwvggvwhxwxgvwwwxgwxxxhwwwxvwxwwhgwwvfgvxgxxwfwgwwxvhvxfvgvwwwxwwxwfvgwxxwwwwxwwxgxwgxwwwwwwwwwwwwwxxxwwwwwwwxwwwwwxgwwwwxwwgwvxwxxxwxxwwwwwwxwvwxvwwxxwxgwhxwxxhxxwwwgwxhgxwxwwgwwwxwwwwwggxhxwwxghxwxgxxxxgvwwwxxhwwxhwvwvwwwhgwwxwwwgxwwxgwvwwxxwwwwwhwxwwwgwxxwvwhgwxgwxwxtgwfwvWwvexvgwgwwvwvwgwvxVvwvwVwvhwvvvuwffvwfxFvwwwgvwgFRwvgvevwvwvgwfvuwwgvgvvfffvUfewGwfwewvwfwvgvwwguwwwggfvgvwgugvwwwuwwgwwwwwvwwwwxxvwfwwfwvwxwwgwxxwgxwvxwfwvvvvvUwUvvvWwwwxwwwvwxwwwgwgVwwwwhvgfwgvxwwwxwwwwwxwxwvwwwwwwwuwgvwuvwwGtwvwvvwgwvwvwfggwwwxWvvxwwwwfwvwwwtwxwXwwwwwfwvwwgwwwvwgvwvwgwggwgWvhwuwgvwwgvwvxwgwxwgwwvWvwgfWefgwGvwwwvvwvwwxxwxwwwwvgwwvwfwxxwxfxwhvxxwwwwgxwwvwvwvwwwxwwwfwvwwgwxvuhxgwwxwwwwgwxwxxxxvvwwWwwxwggxxwfwwxgvvxfguwwwvwvvvgvwwwwfvwwxwwedvvvWgvvgwwwxfvegxgwxuwwxwwxveUwfwvgfwVwwxwhwwfwwwwvvxwwwwwgEvTewwvGuwvhvwwwwwwvghwwwwwwwwvggwtfwwxwwvxWwwhghwfxwvgvgwvvwwwvwvwgwwxxwxxxwvwwhwwWwgvwvwwwwwwxwwwwxwwwxwwvvgvvwwgvwwwwwgfxxwwxwxuvwxxxfwxwwvwwvwwgwwxxwvvfwwwfvwwgxwvwvxxxwwhwhxvwgwwwxgxwwwwwwvwwgwxwxwwwwvgwgfvWwwwgwwwvwwggxxwvhwghxxxwwwgwwWvwvwhwxwxwvxxuvggfwhwwwwwgwwvwvwwwgwwwwxgwwgxwvxwxwxwwwxxvwuWfggwXwwwwxwvwwwhwwvvwwxwwvxwwvwwfwvfwwwvgvwfxwwwewuwwwvvwfvVvwvwgwwgVvwwwwfxfUvgVwwuwxVwufweffwevvuwvwfxwwvwvvvxwgwWffvuvwvgfuwxxwwUvtvwggeffgwggvfwwwxggxvwxwffVffxwvwwwfgvvwvwwwftwwwwwwwfwfgfugfvxwwwfwuwwwgfwxxfwxxwwwwwfVvwwwwwwxxwwwwvfwwfgwwwwwEfwxwwwfuwwwVwgwvfxwwwgwwgvvwwwwwwvwwxxxvwgfwxwgvvwwwwvwwvwgwxevxhEffwwwwwwwwvvwwwwwxxxwxfvwgugwwxxwguvwwfwxvxxwwwwwxxvvgfxxgwgwwwwvvvwvgvwwxxwwfgxwUxwxxwxwxwwgwwxwwwxwwvxwxvwwvwgwwwvegvwfwvwxggfwwhfuvgxwwxgwfvvwugevwgfugwgFwwwwwxwwfvwwgvwwwwwwwvxwwxwxwxwwwgxgwwxVvvwgwxwxxxwwwgvxwwghwgwwwxwwhwxwxfwvwwwwwwwwwhgvwxwwwwxxgxwwwxxwhwwvwwwxxwxxxhfwugxgwwfgwxgwwwxxxxxxwgewxxwwgwwvvwxwwvwwwwwwvVxwVwxwxwvwwwwxxwgxxwwwwwwwxxxxxwxwfewvxwfwxwwxxxxxxxwgwvwwwwwwwxwxwhwxxvvwvxhxwxxwxgwgwvgxxxwguxWwugggwuxwwwwuhwffehgwuxwvxxfuuwdgfUvvwVvvwxggwggfwggVfggvvvfgwxWwgwgwwvffggVwvxgfvwWgvvhggewgwWVvggggwgwgehvwwvgxfwvxewwUuvwgwwxwWxvvwgwwfwwhWvwwgwwhwxwwxgWwhgxwxwwgvwwgfwwhxwgwwxwwwxwxwxxghhxxxwxwxwWuwWvvwvwgGvwwwxwvvwxwwgXvwwwwwvxxhwwwwwwxhwwwwxgwwgfwxxgwvwgxwfwxwwwxxwxwvvwxgfwxxwvwwwxgguwxhwxxxhvgwwfwuwgwxwwxWwvwxwgwxxgxxwWgxxwxwxxwwxhwwxxxhhwxxhxwfwxxwwwxwwxwwvxxhgxxhxwwxxwxwxwxxhxxxwxwhxxxgvwwvfwgVxvvgffgfegevwgwhgWxfvwxgwvxwxgfghwgwgwxxwwxwxfggufgvffwvwwwwwwuwwGwwgwvgwgvvwxwxwXwwwxwwwwwwwwxxvwwwvuuwfvvgwxhfefvwwwgwwwgxhVfvfvwxxgwhghggxgwhWgvwhghxvfvwwxwxxwwxwwxxvwgwxxxxvxwxxgxxwxwgxxwxwgxwgggvxgwhhxfvvwxxwwwxXgxxgGwwxhwwxxwxhXxgwxwWXxhWgwwwwvwwxwwxxwxgwwgwwhxgxwxwxfwxxxxwwxxgwxxxxwxwvwxgwxxXwwwhwwxxxgxhvwhhghxwhvwhwwwxxxwvhwuwxhxgwxXxwxwwxwxgxwwxxwwvwwxvxxvxwwxwhxgwtvvgvggggwwfvwwwgwwvvwwwwwwwgwxwwvwwxvxxvwvxwxxwxvfwvgeugvvvuvvwgwwvwwwvvwxvwxwvvvggvwwwxwxwxgxxxwfwgwfvwvfwgwggwwvwxxwvwwwvwxxhxwxxxfvvvwvwvwvwwwwwxwwuwwwxwwvwwxwhxvggwgvvwVvwwvfwwwvvwxwvvxxxwfvgvhvxxvwwhxxxfevvwwwvgxxvvxxwwxwwxwwxxxvwwwXwwhvxhXhxxhxwfwwwwwgfvugwfggxwvwxgwwwwxwxwxhxwwvwwvvvgwwxwwwwxhwxvwwwwwwxxxwhxvwwvgTUwvvugfwwfewwwwwwwwwwxgxfTUugfwwwwgwwvvxwvwxwwxwwvwwvxwwxwvvvvwwwvwgvwvwwwwwwhwvvxxxxwxxxxvwwgwvwwvgfxxwwwwwwhxwxwwxwwwwxwxxhwxvwxwxhgeewgwfwxwxvwwwwgwxwxwvxgwxxxxwxgxxvgwwwvvgwwwxwgxwxwxxwwxxxwxvvwwwhwwwxwwwwwxwwxwxwwxxwxwwhwwwwwwwwwwwxwxxwxdvwgwwwvgvxfwvwvvwwwwvwwxwxwwwfwwwwwwwwvwwhwwwvffwgffVVvvwwwgffvwwxwwvvwxwxwgvvvvwwwvvvwwwvvvwggxvwxxxwgvvxggwffwwwwfwgwwwxwwvvwvwxwwffvvwwwxwwvxxwvwwwwwgvxwwwwxfwwxvwxwuwwxvvwffvwvvvxfvwwxxwvwwxwwwxwwxwxgvwxwwwxfffwwwwwwwwxhwhxwgfwwxhgwwhxwwxxgwhwwgxxxwwxxxxxggvvwwwwxwfwvxxxuwwwxxwwwwwxxxxwfwwvvvvwxwvwfvwwxwwwwxxvxxwxxxwxwxuwvwwwwWDUvwwwffvwgwwvvWvxwgvfwwwxxwwxwVDUvwwhvwWvwwfffvwwwhwwxwxwwwwwfwxxxwwwwxxxwxxvwwwvfvwwgwxgvfwxxwWgwxwwxxwxgxwxfwfgwxfwxwxxwxwwWvwwhwxxxxwxwwgwxxwwhxxhvwvfvwwwwwvvgvwgxwwwwwxxwwxhxwxvwwxwffgwxwwxwvwxwwwffwxwwwxxxxwwxxhwxfvvxwgwwwgfwwxxxwxxxgxxwxxxhwhwwwxgxxwxxxwvwxevwfwvwggwwwwvwwwxwgwxwgvvwgwwwvgwxwwwgvwXwwwvWvxvxfwgwwgewegvwvwvfwgwwwwgwwwvwgwxwfvwgxvgvxgxwwwwxwxhgwwxgwfwwwwwWvgwwgvwxwwxwwwwwxwxgxxxvgwgwwwgvwvfvwwwxwwwxvxwwwwgxxwwxxwvxwwwvfwgwwxwwggvgwvwfvgfwvxwwwxxwwwwvwxxgvvwxxwxxxxxwwvgwwvwUvfwwwwgwwwwwxxWxfwwxwvvgwwwwxwwhwwxgxxxxgxxwwwwwgwwfvwwxwgwxwwxxwwxwwxxxwxxwwxxwxxhwxwxxwwxfuvhwwxxwwgfwwwhwwwxwwwgwwgwxxwwwxxxgwwwxxwxgwxxxwWwgwwwwvfvfvwwwwwwwwgwgwvghwxwvvwwxwwwwxxxwwwxxxxwvgfvgwWvgggfwwwvgwwfXhxxwwxgwxwwwxwxwxvwhwwxxwwxwwgwwxfwfwxwwxWwfwwwxwwxwxwwxxxwxwwwgwxwfwxwwwxwwgxWxwgfwwwwgwxxxWwxwwxxhxxxwwxwgwvwwgwwwwwwwgggwwwvgvxxwxwwxwwwxxxxxxxxxhwevgxwwhwXgxvxwhwwwxhhXwgxxxxxxxhwwwwxxwgwwwxwwgwwxvxxwxwwwxhvxwxhxxwxfxwwwwxxxvwwxwhwwggxwxhhwwwgxxxxxwhgwwsvvgwvwwwggwugwgVvwwwwugwwvwvfwwwwwwxvfgwwwwwxwfVwwgvvwwugwwwvfevwvgwgwwwwwwgwffwvevvvwwwvuwwxugxwwxxxffgwwwvfwwwvVugwwwvwhwxfwggxwhgwxwwxwxxVugwfvgwxwwwvwwugwwwwwxvgwdvwfwxxwvvvwxwxxfgwwvwwvegxwvwewwwxwvwvwgfwwvwwwxfufvxwwwxxwffwwwwwwwwwwwvfxgwwwwggxvwgwwwwwwwwwxwxugxxxwwgwxgfwwvwwwvwwfwvwwwwwwgwvWwwhwxwdwwfxwxwwwwwwwwwwwwwwxwxwugwxwwwgwwxgxwwwwxgwxxxwvwwwxxwvvwfwffwvvwgwgSEwwwwfwxxwfwwwwwwwfvgvwxxwwxwxfSEwvwwfwwvvvgvxugxwwwxwwwwwwvwwwwwwvwvwxvfvwvwwvwwwvwwwwhwwhwwwvwvwwwwhxxwwgvghxxhwwxvwwgwwwgwwwwwwwgvxvwgfgfwwhwhhhwwwwxvwxxvvffwwwxvwwxvvwvwwwxwwwwwwwxwwvwwxwwwxwwwvwwvxwwwwugwxxwwwwwwwwwwxwwvwwwxxwwwwuwwwwwwwwxvwwwgwvwwwwwwwwwhxwhxwxhwhxwwwwwvwxxxxwxwvwwxxwxxxwwxxwxgwwwwvwwvvvvvwvvwwuwvwwvwvfvwwvwwvgvvgvfwvvwwwvwxgwvwwwvxguwwvvvwvvvvvwgwffvvVwwvwwwwvwvwwvvgfwwfwggvvwvvwwwwwwgwvvwxvwwwgvwwfwwwwgfvvwgxvwwwwwwwxgwwwwwwxwvwwwwwgvwvwxwvwvwwwgxwwwwvwwwwxvwwwwwwwvwfvwvwwvwxvfwwwwxwwwwwwxfwwwwwvvvwvwvwxgwwgwwwggxwwwvwwwwvwwvwxvvwuxvwwvwgwxvwvxwwwwvxwgvwvwxwgwwwxwgwxvwvgvwwwvwxxgvvxwwgvwfggwwwwwwwwwwvwwwxgvwwhwxhwwwwwwfwgwvwwvvwwwwvwgwfvwfvvwxvwvwxwggwfwwwwxxhfwwwvwxvfwwvwggvwwvffwwwfwwvvwwwwgwgvvwwgwwwwxwvgwwwwwwwwwwxvfvwwwvvwwgwwgwvwwwvwgxwwxwxwfvvwgvwfgwwggwvvwwwggvwwwwfvgvfwwwwvwwwwwwfwgwwwwwfwwwwxxvwxxxxxwwwwxggwfwwxgwgwvwwwwgwwwxwwwwwwxwgwwwwwwxwvgwwhwxwwwgwwwwxhxvwwxgwwxwvwgwxwwwfwwgwwwwwwxxxvwwvwxwxwwwxwxwwwwxxwwhwwhwwvwgxwxwwwwxwxwwvvwwwwwwvwwgwfggwwwwwwgwvgwwwxwxwvwgfwgxgggvwwgwwxgwwwxxxgfxgvwvvwwxgwwxwvwwwwxwxwwwhwhwwwghwwxwwwxvwxgwwfxxgwwvxuwfvvxvfwwvgwvvwxxwwvUUgwwwwwwvwwwwvvgwwwwgwwwwwxfvwwfvvwfwgweuvwgVVwwgvfcSeuwvwwwwwwfwgwvwwwfwhvVwugwwxvwvwwwwvvxwwwgwwwwwwvwwwwwwwfwwwwwwgvwwxvvvxggwwhwwxwhwvgvwwvwfvwwweUwuwxhvwwgwwgwvwwwxvvwvwwwwwwwvvwwwvgwddwfwwwwwweuvwwwwwvgvfxvvvwwwwvvwwwvwxxwwwwvfwvvvwwwfvwfggfvWwfvgwhvwwgwwhvwgxgwwggxgwwwwxxwwwwwvfwvwwwwwwwvwwwwxvgwwwxwxxwxwwxwwwwwxvwwwvvwwwwwwwwwwwwwxxwgvwxvgwvxxxxgwvwwwwwwxxWxvwwvvwwwvvwwEdgwwwgvwwwgggvwwwgvwwwwwwwvwvxwwwxxvwwwxwwggwwwwwUvuwwwUeevgfwhwfwgwwwwwwwxwwvwwxwwxxxxfxxxwwvwwwwwfwwhgwvwwhvwwwxxxwwvwwxwwwwxwxwwxXWxwxwxwwwwgvwwwvwwwwwhwwgwwwwwwxvvggwxwxwxwxxhfwxwwgwwwvwfvvvwwvwwgwwxwvhwvwwxwwwxxxwxxwhxwxxvwvwwwxgvxwxwwgvxwwhwwxwxgvwxxxwwwxwxxxwwwwwvwwvwwwwxwwvwvwvwvwwxwwxxxwwwwxwgwxwwgwxwxxwwxgwhwxwwxwwwgwwvhhxwwhvwvxwxvwxeVdfwvvevffwvfvuwwwvxggfwwwfvwgwewwwvvwvwxwfweffwfufgfgewfvfvvffvgwwwfvgfvxgwefevfwVwfwvwfwvVwfvgxfwgwwvwwxeugxuffwfwgfwwwtWwwvwgwwwwxfwgwwwvgwwxxwvwwvwwvxxwwegVWvvwVwVgfwwfwvwwgwwwwwwhwvfgUfgwwwuwxfwwegWwwwxxwxffvwvffffgvwwwfUWwwgwfuvwwwwvgfwfwgvfvgwgwwxvwwwwwwwgfxVwvvvggggVwvvgfwgVwwvXXgvwwvWwfwwxvwwuggvgwhhfggwxwvffwgWvuwgwvwgxwFgvfwgvwwwwwwwwwgvvwxvwwxwwwwwvwxwxwwghhvhwffgwfwwggwwwwxwgfggwwwwfggwgwggfgwwwwwxxhgwxuhgwxwhwhgwfwxfgvwvffwffvvwwwfgvwwwwfwuwwwwxfgvfwwvwwvwgvgwvwwwwxwhvhwxwfwVvtvgvWgVgwwwgeuvwvxwwwwwhwgwfwUgwwwwfwwgwgwwgxwwwxwwhwwxvgvwuevwwwwvvgvvtwwwxvgwgwvwwwgvwwwgwhvgxwhgwwwwwwwwhgxxfuvfvfvwwggvwwwvwwwwwwwxxwxhwwwwwxwwgxwwwxxwwwhwxwxxwuvwufwwfvvwgwwuuvgxwhvwwgwwwwwwwwxxwwxxvwwwwwwxwxxgxxxVwvxgxvxVvwffwwvgwwwhgwhgwgxwWwwfwggwxwvxwvwwxxwwxwxwwxxggwvxvwwwgxgxvuewgwgvwvgwwWwgwwwxwxwwggwwxwxwwwgwwhhwwxwuvwwgvwvwwxwwwwgfwxfwwwvwwhvwxxxwwwxwwwxwwxwwxuwwwhwwwggvvgfwxwwwwwwwxwvwwwvwwwxvxwwwghwwwwwxwvwgwgevwggvwxwgtfvwgfwvfwwvvwwvvvwffwwwxwxwwwwwwgxwwwgwvvwwxwxVvwwwxwwwwxfvwwwwxxwwvwfvvwvfwwwwwxvwvvvwwwwwxwwxxxxwxxxwxwxxtgwvwwwxgevxwwgwwwgwwwwwxwwwwwwwwxxvwwwxwwwwwwggwwgvwhxwvwxhwwxwxxxxhwwwgwvvxWvvwxxwvvwwgwvvwwxwwwhwxxwxxxwwhwgwwwxvwxwwwxgxxxvwwxxxxwwwwvwwvwgwwwvwwwwxweuffwxvxxwwhwvvvxhwvxxxwxwxfvvwxwvwgvgvhgwwwwwvwwwgxxwwgwxwwwxwxxwwwxwwwwvvwwwwwwwwvwxxxxwwwgwxwgwxxwxwwwxfvwwwxwwxxwwwwxwwvwwxwwxxvxxxgxxwwgeefghwxxwwwvwgwxwhvxxwxwwxxwwwggwwwwhhwwvxxxxxwxxwxxxwxxxwwxwwxwwxhwxwwwxxxwxwxxwwxwxwxwxxwwwxwxwxxxxxxwwwxuwfwwwwfvvxvwwgwwwwxfwvwfwwwwwwggwwwvwggfgxvgwxvwvwwwwwvwfvvuwvwvgfwwwwwewwwwwwwwwvwwvwxxwwvwwwxxuvwwwvwvxgwwwfggwfwwwwxwwwgfwxwwwwxwwwfxwWvxwxwwfVgwvwwwwwwwwxwwxuwwxwxwxwvuxwwxwfwwwwwwwwxgwvvwwwgwxwvwwxwwvwfxwwggxvxwxwwwwwvxvgwwxwfvvwxwwxwwgxgwvvwwxwwwwwwhwwxwwwwxxxxgwwgwgwvwwxfvvxxgxwwwwxwwwwxxxxxwwwwxxwxwwwfvvwwhxwwgwwxwwwgwxggfgwwwfwxwxwwwwwxgfxwxxwwxxfwwwggwwgvvvgfwwwxwvwwwwxwxgwwwwwwwwwwgxwxxxwxvgfwwwwewwgwwxfggfwwvxwwwwwwwwwwwxwhvvxwgwwxwwwwwwwvxgwxwxxWwwwwwxwxwwwwwhvhxxxwwwwvxxhxvwxwxwgwwwwxxwgwwwxfwxxwwxvvwxxwwxxfwwwxwwwwxgxwvfwuwwxvwwxhwwwwwwwxwxwxxxwwwxxgvvvwwwwxwwxxwwwgwwxxvwwwxxwxxxwxwxwwwhxwxwwvWvxwwwwxwxxwwggwwwxwwwgvxvxxxxwwwwxxxwwxwwxxxwwwwwwwxxxwxvxxxwwxwxxgvxxwwxxxgvxxxdfvwvfvvwwwxfwvvwwvwwwvfgxwgwwwwgggwvxvvwwxxeewwgvuwVvfwvwwwvvwwwgxwwffevevvvuwwgwvwxwfwwhwxwxwxwVvfxVgWwwvvwwvvwwwwxwwhwxfvvwwwwwwwxwwwxxwxxxefvfgvwwwwwuwwwgvwwwxwxwwwwwgwvvwuxvwvwxwxxwxwfvvwgwgwwvwwvwVfwwwvvwxvxvvgvvwvwxvuwwwwxxwxxeVvwwgxwvwhwxwvxgwvwwxxxwwxwxvvwwwwvvwxwxhwvXwxWwxgxwxfWgwfwxwvvxvwwffwwxwwwwwwxwgwwewwwwxwwwfwwwxxwwwxgvwwvvvwwwwwwwwvggxhxwxwwwvwwwwwxxwxvwxwwxxxxfvfwfegggvwgwwwvvvwwwWvwxgTTvvggwwwwwwwwvxhhweTTvfvfwvfwwgwwvvvwwwxwwxvwgfwwwwwvwwgwwwxwwwwegfwvwufwwwwwWwuwvwxwxxwwhxwwwwwgwwwxwwwxxwxwvvgWvgugwwxxwxwhvwwxwxhgwxxwXwwwwwxxwxwxfffvwfwgwwwvwwxwwgggxwwxxwvwwwwwwxwxxxhxwxevwwfwwxwxxxwvxxxwwwxxwvwhvwgxxxxxxwvwvwvvwwgxgwvxxxgwxxwXgwwwxwwxxxwxxvxxwwxwwwwgwwhxwwxwwxfwxxwxxxwwxxxuwvevguwwfVTvvwvvvvgvvvvwfwgfvwwwwwwvvwvgewwgvwwwvwvvvfvVfgfUvSdfuwvwfggfvgwvwgugvvwuvvggvvfvfwfwgwvWwwvgwgwfuwvvvwvfwfwvvWeewxwwvwwwwxxwxwvvwgwwwwwwwvxxwvwwvwffvevuffwxvxgwwwwvgvwgwvwwwwfvxwwvxwwwwfgwwvwwuvxfffffvwevfvwvWwvgvevwwwvwwffvwtuvgwvvxwwvvwvxwwwvxwxvwwfegfvfvvvfugvvwgXvwvhwggvvvwwfvgwwwWvgWvfwwWwwXfxxxwwhwvfvfwvwfgvxwwwwvwwwwgwxwgvwvvvwwwwwvwxwwwwxxwwwgvwvxwwxvuwwvwvgvwwwgwxgwggvgvwwxwggwwwwvwwvwwxhgwwwfguwwvwwvFcvvfvvwvwgfvwevwvwgwgvwvwwgwxwWfwwwxwwwwwwwwxwxwwgfvvTufvVVvvgvfVvgvwwgugwvgwwxvwgwwwwwvhxwwwwwwwwwwwwwfwgvvvwwwwvgvwwfuwwfwwwxwxgwwwwwwwwwwwwwwwwwxwxgxwwgWwhwfgvuwuwvvxwvwwwwgwwgwhguwwxwwwxwwxvxwwgwxwwxwwwhhwvguwvvvwgvwxwvvwvwvwwwhvwvgvwgwwvgwgxwwwwwwxwwxhwxevgwvguwvwxwxgwwxwghvwxxwwwwhxwwwwwxxwxwxvxwvfwvhwwwwfuwwwwgwgwxgxgxwwwwwwvwgwwggwwwxwvwxgwwfxwgWwhwxwwwwvxgWxwxwxxxwwxvwwwwfwxwwgwwwwwwhuvwwgfwgwvwwwgvgwwvwwgvvvfvwwxwfwwwwwwwwwwwwhvwwgwwxvgwwgguwgdfwwwgwggvwgwwwwwwfwgvvwvxhfvvwvwwxwwwwwxwwwxxwwwwwwVvvwwwggwuvgxwwwwwwwwxwwxwxwxxwwwwvvwvwvwvwwhwwgxwfwxgwwwxwwwvwwwxwwxwwgvwvfvvwgxWgwvwwfvwwwdfwwwwwwxwwxxvvwwwxgwwwgwwwwvgggvhhwhggxhwwxxgxwwwgwxwxxxhxxxwwxwvwVwfxvvwuvgxgvwxwwvwwwvxgwxxwwwwxwvwwwxfwwwxxhxvxxxxxwxxwwwwgxxxwwwwwwvwwvwwduVfxvwwggvgvvwgxxvvvgvwwxwwwxxxwxwvvwvfWwwwwwwwwhvwhvhvxhgwxwxwwxwwwxwxwwxxwxxgxwwwwwwwvvwxvvvgWwwxwWwwxwxwxxwxxwxxwxxxxxxxwwxwwwgwwwgxwwxgxhwxwwwwhhwxxwxwxxxxwwwwduWgvwwwxgxwhwwxxwxxwhxwxxxxxxwwvxwXwxwwxwwhwhwxxxxwwxxwxwxxxxwwxxxhxxxxxwxxvwwwwxwxxwxwgwxxxwwxxvxxxxxxxwhwwxxwxwxxwwwxwwwxxwxwwxwwxwxxwxtwggvvfwwwxvwwwvvwwwxvwwxwwwwfvwvgwvgxxggwwWgwwwwxwwxfvwvwcVfvwvwvwwwewwwvgwwwwgvWvwffwwwwwwwwwwwwwwwwxxwxxgvwxvwwwwvwffwwvwwwxxwwwxvwgGvvwfwwwwwgwxhwwwvwwewvwwwvwhuvwwwwwwwxwwvgvewwxwwwfwwwxvwwgvgwwwxvxxgwwwvvvgwwwwwcWwwwvvvwwwvwgfwwwxggwwfvwwwwgwwwhgxwwgwwvwwwwwwwwgxvwwvwwwwxvwwwwwwgwwwxgwwwwwxwwwwwxxxwwxxwgwuvwgffwwwwxwuwwvwgvgxwGvuvwwwwwwwuwwwgfvwgvwxgwwwwwgwgxwxwwwgwwwvxvxwxwwwwvwgfvwwwfwxwghxwxxgXxwwxgwwwxwffwvWwwwuwwwgwwhxwwevUegfwvvwxhwfwwwwwxvwwvuwvvvvgwwuvwwwwwwwgwwxwxxvwffwwvwWwwxxvxwwwxwwwxvwwwwggwwfgwwwgwxwwwwxwwwwvguwwvxfwxgwwwwxxxxxxwwwwwwwwwwxwxwgwxxxvvxwxvxwgfwwhhwxxwxxwvwxhfvwwwWwxwwwwvwwvvwwgwwwUegfwwxwwwgwwxwWwhxwxxvwwxwwwwvwxgwwxwwwwgxwwxxwxxggwwwwwxwxxxxwfgwwwwwxwwxwwxxhgwwvwxhwgxwwwhxgxwwwxxwxwgwxxwxwxwgwxhxxxwwvwxwwgwxwwvwxwgxwwvvvwvvvvwwwxwufwvwwwwwvwwwwefhwwfwvvxwvvwwvvxwwwxwuvwgefwvwwwwfgwvgwwvvwwwwgvwewwvfwwgvxvwgwhwwwwwgwgwvvwhvwwwwwuvwxwfwwwwxwwwvwwxvwwwwwwxgwwwwxwxxxfgxfwwvwwvwwvxwfwwvgwuxgvwvwwxwwfxxwvxwvwxwvwvvwwvvvgwewxvwwwvvwwwxwwvwuvvvfwwwfgwwwvwvwxgwwwwwwwwwwwgwwwvxxwwxwwwwvwwwwvxwwwgwxhgwgxvfxwxwvwwwgwwwwxvwwvwvwwgwwxxxxxxvxwwgwxwwwxwwxxwxwwxwvwwvwwxwxwgwwxwgxwxwwxwxffwvvwvwewgwfwwvvwvfwwvwgwvwvgwfuwwwgvvvwwvhwwXwgWffvwewvfgwgvvwwwhxwgwwhwvggxwwwWwwwwwgggwwwwwxvgwwwxwwwhwvwvvhxwwxwwwwwwwhwxxxxgxwxxwwwxwvvwvwwxvvgwwvxxwhwxwwvxwwwxxwwvwwxwxwwxwwvwgvvwwxxfwwvhwggwvvwxwwwxxwwwwxwwwwgxwwwgwvxhxvhxhghvwhxwwwxwxxwwwXfgxwxxxxwwwwwxxxxwxwwwwwxwxxhwxxwxxxxhwwwxxxxxwxwwgxwwwxxxwwvwwefwevwgfuwwgvevvgwfwxvvwwxwwfvwvvvwvwwufVfvvwvwwwwVvvvwfwwvugvvuwwfvwfvwwwvfgwgwwfevvgwweffwwfwwfvwvgwwwwwgfuwwwwwegwffVvwwwwggwxxfgvffwuwwWfwwwxvxvwwfgvgwugvwwwvffvvwvwgwwwwvgvfvwwfwwfwwwgwvwxwwfwwvVvwvwwwwwwwwxwgwwwvwwwwwwwvggwwfwwxwgwwwxwwwvgwwhwwwwwwwfgwvvwwvgvxwwwwgwefwwvwgwwwhwgwvwvggxxggwgvhwvwgvwwwfwxwxwvvwwwwwwwwwgwwWwwwwuxwwfvvwwwwwwwxxgxwxwwfwwwwfvwgwxwwwwfvwxwxhhWwwxfUfwwwhwwwwggxwxwUgwwghxvwfwfvwvvvwwvxfwwvVvwwwxwwwwwxwwxggwwwvvgwwwwwwwgwwxxwwxvewvvvwfwwgvwwfgwwhgwfvwgxwwwuwwvvwwxhwwwwgwwhgggvwgwwwwfvxwxwxfgwwwwxfvwwxxwwvxxwwffvwwwvwwwwwwwwhxvwwwwwxfwwgwwgwxwxxfwvwwwwWwwfwxhwwwwxxwxgwwgwxgwwwwwwxwwxvwwwxwwwwxwgwwxwwwwwwwwwxwwwxwwwwwwwxwxxwxwxxwwwxwwwwwwhwwwwxwwwhwfwvwgwhxvvwwwwxxwgwwxwwwwxvvwwwwxxwgxwwggvwvwwwxwxxwhxwfvvwwwwwgxvwwwwxwwwxgwwwwxwfwvgxwxwwwwwwxwxwwxwwwwwxwgwxxvwwfvwfwxvwwgwwxwwvxfwwwwfvwvwfvvwwwxxgwwxfvwvvuwwwwvwvvwvgwvgwvwwxvwvwvwgwfvwwggwwgwxwxwwxwvxwfwxwwwwgwwvxvwwwwgvwxvgwwfwfwxxxwwwvxwwxxvwwvwvwvxwwwwwwvwxwwwggvvwwwwxwhwwwwwvxwgwwgvwwvgwvwvwwwwfwxwwffwvgwwwwwwxwwxvwwxwxwxwxwggwwwwxvgwvwwwwvwwwwwxvwxwghwvwwxvwhwxvxvgwxxwhxvxxfwwwwwvgwvgxwffwvwxwgfwggwwwwwwvwhwxwgxvwwwwwvxwwxwwxvwxwwggvgwwwghwgfwgxgfwwxvxwgwwhgwwvwvwvxgfwhvvfwwwvwvwvgwwvvwwwvwwgwwwwxwgvvwhgwgwwwgwxwwxwwwwwxwfvwvwgwfwfwwwxwwxxvwhwwwwvxwgvwhxxgxgwxwwwwwwxxwwxwvwffvwwxwhwwwxvvwhwwhggwggxgwwvgwwxxwwwxvvwggxxwwwwxvwxvgwxwwvwwwgwxwwwvgwxwxxxxwxxwwwxwwgwwwwvxwxwwxxwgxwvwwxwwwwwwwxwwxwxxxxwxwwgwwxwxwhxvwwvxgwxxxxwxxxwwwxxwwwxgwwwwxwvxwgwxwgvxxfwwwfwwwwwxwwwwxwxwwxxwwxvxwwxxvwwvgwwwwwwvxwwhvvwxwxwxxxxxwxwxuwwgvwwfwwevvwwgfwvWfwvvvvwgwwwxgvwwwUEwvwgvvvwxwwwuvwgwfwuvfwewvwfgfwvwwwefwwvfgvUFvgwvvgwvwvwxcdveggffwwwwgwevvwgVewvwvwhwfgffvwwwwwwxxvgvwwwfwvwwvxwwfvwwwvxxwwwwwwvvfwwwwwvwwgxevfwwwwgwxwwvwwvufvuuwwvwxgxwgguwwwvvwvwwvgwgwfwwvwWgwvwvdevvhvxwwwvvgxvwwwwufgwwxfgxvwwxwwvxfwwwuwvguvwwwwWwUevhhfvwwuwvvxwgwXwxxvgfgxwvgggxxffgwwwfwvwxwxgfvwvwwgxwwxwwwwwvwwxvwwhvgxxuwwfvwwwgwwvvggevvwwwwwwxwvgwvvwvfwxwvwwwvgwxwxwxwwgvgxvwwvvxxwgwwwwwwwgvwwvw6dwvvwvwwwxwhwgvvwwwgWxggwwwwxxxxvVfvwwvwwvwwduuvwffwxxwgwVfvvhvxxvhxwxwwwwWxwwwwxvwwxgwwwwwxxwhfuvvvgwwxxwwwgwwwwwwwwxgVfwwwwxvxxxwxwvfwvuvwxwxvvwwwggvwvxwxwwxxxxhwwwxwxwwwgwhwgwwvgggwgwwxwffwwxwhwgwgxgwwxwxwhwwxwvwwwxwxwxvvfwfwxwwxhwxvVfwwxwgwwwwwxxxwxxxxvxwxxwwwwvvwxvxwwwwuwguwxwfgwwvgvvxwxwxwwxfwwxxwxwxwwwwwwhwwgwwvxgwxwwgvvwgffguxwxxwwgxwwwwxgwxxwwwwwwwtwwuwxUvevvfwwwgffxvwwvwwvtvwwvgfwffgeufwuwVwvwvVvexvwwfwwgeUfgvwuvewwvfwgwgweefgWgfwvgffWfwdtvwfwxfvvwVfvwWwwfvfWvewwxvwwfxwwdgwwfuvwvwwwxwxuxggwxWwwwwVvxwhxwfxxxvwxuxwWfvvwxgwfwEudhhWfwwgwwvwwxgvvxwxvxwwwwfxwxwxwxwwxhxvxwegwwveeffvuvwwvFVxwwxwvuvwvwvwwgVwfwxfvgwgwfwwwwvxggxwwwwxwfvwxwwwwwvfwggxwwvxwwhwwwwgvgvwvwwwwWggwgwwXwwgxhwwhXfxfvwwgwVuxwwvwwxfvvxwuvwvgwxgwwxWwxxxvgxgwwwwxwwwwhwvhfWwxvxwwvvhwgwwgvgxhhwhhxvwwwwxwxwwwwxguhwxwxwwxwxxwwxwxewwwUwhfWexfvvvWvwwwuevuwggwggwgwvwvgwwfwggffxwgvwhwffffgfwevuwfwwegggGwwvghgwggwVvuwwwvwwXwgwwXghxxgwhxwwwhWwvWwvwgwwVegwwwgxwwvxwwwwvxwxfxwwwggfwgwhxwhwxgffxwgfvwwxxwxwhvwxwhwxwxwxxhxwwwwwwxwwxwwgWVwwwxhwxwhxvwxvggwwwwfwwxwwvwgvwwwgWwxgwwwwvvwxxxvvwhxwwhhwwhhxvwwwwvgwwwggxwwwgwwxxhwwwHwvgwvxwwxwgwwgxwwwxwWgwxwxhwxwgwwxxxwxxxgwwwxwxxxgwwewhxxxgwfwwwwxxxxxwwgwwhwwwwwwhxxvxWwwxxwxwwwxwwwwxwwwwwwwxxxvwvwvwfvvgwwfwvvwwvwwggwgwfwevwvvfwgwgwwxuwgwggwwxvggvefefvwvwwgwgfxwxwwwwwxwwfgfffvfwgwfxwwfvgwwgwgvhxwwxfwvwfwfggvwwvuwgwvvwwxwwxwwwvhwxwwxwxxwvxfwffwvuwwwvwvfvxgwwxvwgxwwwvwwhgwxwxwvxxvvwuvxvwfwvwvwwwwwwxvwvvwwwxwvwvfwgwWhxvwwwgwwxwvghxxxwwwegegwwwhwwwwwwxxxwwxwwwfwwgvWhgwwxgxwwfgWwfwgwwxgwwvwugwgwwxhwwvwvvgwwwwxwhWwvgwwwhxwwfgvwgwgwwwwhxfewgvfVhwxxvwwxgwhgwVwxwghwvwfwxvwwxwwwgxwWwvwfgvfevewwvwvwwgwwfxwwwvfwwwxwwwwgwvwfwxwwfvwwwwxhvwevevfVvVgwwwwwwvwwvxwvwxxwgvvvvfvwwvvwhwxvwxwwggwwvwwwwgwvwgfxwxwwwwhwwxxxwegwwwgwgghxxwwwxvxvwwfwwwggfwxwxwxwfxxwwxwwwwvwwgwhgwxxvxwuvxgxwxvfgwwgwwwwwwwwvwxxwvvxxxwwfwxhxwhxxxxvwxwxhxwgwwxXwvvgwwgvgwwwhxwwvwxxxwwxhvxxwwfxxwwwxgwwwxxwgxwwwxhwuvVvwwgvvhxxxwwgwvwwwghwwfghwvvwwwxwwwwhwwwWwxvwgwxvwfwwxwgwhxxwhwXxvwuwwwwvwxwxxwwwgwvwwxwvxvwvwvvfvevvguwvvwwwvvxuwvfwvwvwwwfwwwwwwfuxwggvwgfffvweggvfvgfvgwfwuvvvgwwwfgvfwvwvvVvvfwwvxfwvvgwwgwgvwwwwvgfvvwwfwvvwwvvwwfwwvxvwwwwwwwxxwwvxwgwwfvfuvwwvwwwgfwwwvwwwwwvwwvgfwwwwwwwwwuwxfwvwwvuwvwvvwvgwfvvwvwvwfvwwwwwgwwgxwwwgvxfvgvwxwwxvwuwfwvvfvwevWvwvwxfwgxggVwwvxwvxwgvxxwwwwvwwghugVxwxwgwuxvwgvxwwfwwvwgwwwwwgvwwwvxwwvwwwwvxwVexwwwvgfwwgwwvxfwwwvwwXfvgwwxwwxwwwwwwxwewWvwwwwxfvwgfguwxvguwwwwwwggvffxvwgfwwxgwvwwwgwwgwwxwvgvwxwwxfvfvggvvwxwwwfvgWwvWgvwvwvwwwxwvwwwwxwwwwwwwhwxgwfwvwfwxwwwwfwwwwwwwxwxwwwwuwwvwwvwvwgvwxxxxwwwwxvxvvvwvvvwwwwwxwwxvxggxwwvhvxwwxxwxwwvwwvwwggwhvwwwwwwwwgwwvwwxvwgvxwwwxgwxxwxwwwxxgfxxwwwwvfgwgwwvwvwxwhgfwWwxgwwxwwwxvhwwwwwwwwxwwwwwwwxwwwwuwvwwwwwWuxwwwwwxwvwhgvwwxwxwwwwwwwxwwfwhvxgxwwgxwuxwhwxgxvhwwwxxwwugUwfwwvgvuwwgewvwfwwwvwuvvwwVvwwgvwvwvwwggvwewwwwwxwxfwfgffTvuvUwvwgffVegwgfwfvWwgwvffVwegggvwfwwwggWwWwwgfwwwwwwvvvwvvVvgfvwuwfvwvwwxwwugggwxwwfwvgwwwwwwwxvfwFwfwVWgwwvgwFgfhwgvxvwwuwgvgwwxwgfxgwvwgwfgvgvgfwgffwfvwvVVwwugvvwxwfffwvvxwvvwvxVvgwwvxwvwwwwwxwwwwVfuwWvwuggwwxwwVwvwwxwvEgvfgvfvwxggwGgvwhwvvggwwwvvgfwfvwVwwwxgvVvvwfwwvwwwwxwWvwwxxxgxwwgxgxgwxwwxwwwwgwwVwfwgfwvwxwxfwvwWwwwxhhgxwwwxwvwxwxwxwwwgwwwwwwwgwwvvwxwxwvWvvwgevfwfwvwwfVewevvvwwvwwwwXvgwwgwwvwvwgwvwwvggwgwgwgfEwfgVVuvvvwwwxgwFfWgwVwwxwhwfefwwwxxvwggwwwwwwxwXvwwgwwwfwvgwvvvufwwgVgwvvxwXvwwwwxgVfuwgvgwwwwwwfwvgWxxWgwwwxgvwvwfgvwwwxfwgwgxgfvwhwwwwwwxwxxxwgwwhwwwwxvvfwwvwwfvxwxfffvhvwvwwvxxvvvwwwwxwxxwwwwhxxxwxwwxxEvegWgwewwwgwgwvGwgVhwgwwwwxwwwwwgxwxwwwgwwwXwwxwwxgwwvfwwwwwwwvgwgwvwfgwxwxxgwgwvxwfvvgwxwxwvwwxwhvwxvgwgxxwwxvwwvgwgxwvvwwvwwwgwwxxwgwwwwwwwwwxwwwwwvgxwfwxwwtwwvwvwwxwfvvugwwxwwwwgwvgwwwvwwwweUwgwwvvwwwfvvwwfvwvuwwffUvwvvvefwevwwvwWwuvvwxvgvffwRdutwfvvgvvwtvwwvvwwgwwfvxwgfvggvwvvwwfwggwwwwwxwxgwwvwgvfwvwwwvxwwxxwxvwvudfvtwvwwgvwwvxwwvwxvwwwvvuwwvwvwwvvvwwvvwwwwuwvwvwwwwvwuffvwwfvvwxguvwegwvgfwdvwvvuvwwwcuugwwgggwwggwwwwfuwgwwwwuwvwuxwGwwgxwvffwvgwuvwvgwvwwfvvhhwwwgwxgvwvvfwvwwxuwvewgvhghwwwwvvwwwxwwwwgwwwwwvvvvwxwvvgwfvgwwxvgwwvwhwwwgwwgwtwwvwwvgwwwwvuwwgwwwwwwvwxxfvvwwxvgewgwwwgvwwwfgwwffggvwwgETwffgfwfwwgwwxwgvxvwwxwwgwfvwEfvevwwwwwgwwxvvWxwhwUfewfwwggvvwxxwwwwwxwgxxwwggwwgwvwwwvwwwwhwvwwgxxwxwgGwvwvgvwwxwhwwwwxwwxwxwxwxwwwwwvvgwvwwxwxxxwhwwwwxggwwwfgwgwgwwwxvwxvwwxwvfwxWwggvgwwwgwxVwwvxgWgwvwhgfvwxwwxwxxwwwfwxxxxgwxwwxgfgwwwwugwwwxxwwvwhhwwxwxwxwvfvxwwwwwvwwwvwxxxhwwvwwwwwwxwxxxgggvgxwvvghxvwvwgwwxwxwwwwwwwfwwwwWwxwwwxhwwxWwwgxgwgvwwwgwwwwxwwfwwwwvgvwgxwxwxfwfwvxufgwvxwwvwwwvwwwvvwggwgwwwwwvwuwwwvwwwwgwxvvvwvgwwwwwxwwvwwwwewgvwgwvgvwwwwvwwwwwxvdfwvwwvvwuxvwwvvwwvvwwwhwwwvvvgwwwwvwfwvvhwwwxwwwvuvhwwwwxWuvwwwwxxhwwwwvwwvwwvwwxvwuwwwvwvwxwwgfwwvvwwhwxxwvwvwvwwwwwwgxwwgxwwdfwwwwfwvwvwwwvwgxwwwvuwwwwwwwgwwwwwwwxwxxxwwwwwwwwwwwwwwvxwgwwwxxwwwwwwvwwxwgvwWxxwvvwxgwwwvvuwhwxWvvvwwwwvwxwxwwvwwxxvuwvwwwwwwvwwwwvwwxxxwwufxuwxwwwwxwwgwwwxwfwgwvwwwgwxwwwhfwwwwvwwwwvvvwgwwxwgwgvxxwxetfWwxwwxxwwwfwwvwvwwxfvggxwwwwvwxwvvvvwgwwwwggwvwgvgwwwggvxwwfghwwwwxWgxwwwvxxwxhxxfgwwwxwgwgvwvwwwwwwwxwwgvxwwxwwwxwwxxwxwwwwwgwwwwvwhwwhetfWxvxwgxxwwwxwgxwwwwwwxwxxwgwwwxwwxwwwhwgwwvxxwwxwwwwwwwvwgxwwwwxwvwxwxwvwvwxwxwwvhxxwxxwwwxxwxwxwgwxxxxxwxwwxgxgwwxxwwwxwgwxvwwdvvweewugwvvfvvuvvgvgvwvgfwfvegvvvVvgwwwvwvwfVvwefVgffwwwwfvvvfveffgeguvfwffewdeegvvfwWvgUgfVfvvvwgwwfwvggfVwggvwfwwgvWggvwwhfgvuwwewvwfgVfwfggwwwgwgugwgwvwwwgwvvxvwwwwxwwwwvwgvwwvwUvdwwwwggwegwgfgxwggwwggwvwWwWwwhvwgwwwwxwwwwWwgvwgxwvWwfgvwvfWfvvwwfgwwffgwvvwwwwgwvvvwfwgwvwWvwwgwwvvfwwgwgwwwwvvfwwwfwhgffvwwgxfwfhwvWggewwggwWwxwxwvwwfwvgwhwXxfwhvwhvwgggwwvvwfwvwwWwgfwhuwwgwwhwhgwWfwuxwwwxwvwwwvwwwgxwfwwwvwxwfggwwwwvXwwxgwwwwwgvwwwhwWxggwwwwwwwwhwwwwwxwgwwwfxwwwwgwvxvgwwWTwwWfwvwvwwfwgwwggvfgwwWvfwwewvwfgvvwgggvwgwfXwwwgwxwvgfuvwfgvvwwwwwwVvvvvfgGgwgwwgwgvvwgwghWwwvwxwwgvggWggwhwfggvwwgwvgfwugwgggwuwwgwhwWhgUgwvwwwwgwggwgvxgvggVgxxgxwvvvvwxwwwgwxwwwxwwwhwfxXWFxhwvxwwwwwgwwhgwxwxgwwwxwwwvgvwfvwwwfvwwfuwgwgwWwxwwegwvwxhfgwgvwwhgwxvwhvwvwxwwwwwgvwwxwwXwfwwwggxfwgwvhvguwWxwxwwxvwgwvwwWwgwgwgvwwfwxwwwgxxwwwwgwwwhwfwwvvwwwwwgvvwwwwxhxwwwxwxxxwwxwwwxwgxwxgwwwgxvgwwxwwwgvxvwxxwwvwwxxewfwwvwvwghvfwvgwwwvvvwwxvwvwwwewwwwgwuxvgvwwwwwvwvvvvwwvwwxwgvvgfwvwwvwwwwwhvwvvvwvwwxwwwwwfgvvfxvvwwwxwxwwffwwfewggwwwvwvwwwwxxvfgvwvwgwgwxfwvxvwxfwwwwwfgxwvvwwwwwwwggwwwxwwfwwvvvwwwxvxwwwwwwwwwxwxvwwvvwwwwwwwwwgvwgwgvwxxfwvwwgwxfwvwwwwwwhwxwwwwvxwvvvwhxwwxgwwfwwwwwwwwxxwevfwhwvfgwxvwwvwghwwxhwwxwgvgwwgxwxwxwgfwwwwwwwwwwxxffvwwwhwwhhwwxvwwwxwwgwwxwgwevfwwwvgxxxgfwwwxwwfwwghvwwwgwwwwxxgwfwwwwxwwwxwgvvgfwvwxwwgwwwwgvwwgwwxwxvgfwvwgwgxgvwxwwvwxxxwwvwfwwvvwxwwxwvwggwwvgwxwwxgvgwfwwwwwwwwwwxxwxwwwwwgwuggwgwwwwvxxwwwxxwwgggfwwwgxxwvfwwwxxwwwwwwwwwwwvxvxxwwwxgwwxffwwxwwwwwxwwxwwxwxwwwvvxwwvwxgvwvxvwwwxwxwxwxxxwwwgxwwxwwwwwxwgwhxvuwgwwwwxxxwwwwwxwwxxwxxwhvxwhwvxxgwwwxxfwwxwxxwxvwwxwwxxwwwxgxxvhwwwwgwwxgwwxwwxfwwwgwwwwvwwxgwwwwwwxxwvhwwxwwxwwwwwxwxxxxswvwffveuwvwfvvvwvwfwgvvwwwwevvwvfwvvffvdwffvwwgwdvexvxwffwfwfwfgvvufvfffvwfwgggvfvfvfvuwdfUvSevwVfffvfwgwuvvwvwugfgffwuwvwvhffwvwvgwvwxvvwwwxwxwvvvfvxvwwwwwwxvxwwwwfxvwTvSwgfwwwgfwvxguvwxxvvwfvfvvwgxwwwxggfvvgwggxvwwvfwvWewvwgwwwffwwwgwguwwwwgwguwvvvwvwfxxxvwuvfvwvwgwwvwwxwgvwgvgwwwwgwvfwwgwffwwwfwxwwwvwvwhxwwxgvgwgfffvwwwwwfgwwxuvwwwvuwuwgwxxwedxwvfwwxwwwwwwwwgvxvwvwwxwgvwgwwwgxwwwgvwvvwwwwwwxwfwxvvwwgfgwxvwvhvxxgwwxgxfwwwvvwvwfvvwguwwwwWwfwwfvgwgwvVvwxwwgwwVewfvvwvwvvxwgevxwwwvwgwwvwfwvvfwEvvwwgvggwwwWvfuvwwxgxgweuwxwwwuwwWwxwwwwwvwwwwhwwwxvwwgtWvxwhfwuwwwvxwxwxwgfuwgwwwgwgwwhffvxwwgwgxwffwxwefvwwfwwxvwxxxwwwgxvxxwvwvwwwwwgVVxxwwvgwxxxwxvgwwwgwfwxxxvxgvfwgwwwxwwwxwwvvgwvwvgxwwvwxwwgwwwwwwxwwwwwvgwfxvhfvfgwwxwwvfhhwxgxwwwwxxXwewwwhxvwwwwwwwxwvwwvhxwwxwwxwwxwwxxwxxxwwgvvgvfwwvwwxwxwxgwxwxxxwwwwwwxwwxwwwwxwfwwxxwxwxgxwxxtwwwevwwvwwgudfwwgvwffwuvfgwxwwfwfwvwvwvwfwvegUwgwwvwxxewgwgVuwwvfwvgfgWgvwdufgfgvwwgvgvwwvwwwxwfwvwuvfvGwvVgwvwvggvvgwvgVvwvgwfgxvgwgwwwwwxexwgwwgvwxxfvfwxhwxwwwxxfwwWvwgwwwwhwwgwgwfhgxgwvggUdwwhwhvxxwwwwxxwwwwwwxwwvgwvvwfwwvvxfvvxWvvwwwWwvwvwWvwwWfwwgxwwwwwxffxgwxwwwgwwwwvwwwwgvwwvwvwwvwgwWwfvwwWxvvgwwgwwgwwwwxgvXwwwhhvwfwxwvwgwxwfwwwfuwwgffwxvwwhvwwwgwwvvvwwhxwhxxxggwwwwgwwwxwxxwwwwxwwgvwxxhgwxxxvwvxwwxxwxxxgwwwxxwxwwwwhfwwwfwvwwfvwfwfwwGUwwwgwvvwwXwgegwWwwwvvxvwxfwvwwwwXvxwxwxwwgvUgvwwwwwwxwwvwfwfwvHwwwwhvvvwwvwgwXWwwxxwwxwxvwxwwxwwxhwvwvvwfxvwwggfvwxvxwwwggWeguhwwWwwwwwfwwvwXWfwwwwggwwvwggxwgwxxwwwwwghGVwwwwwxxwxxwwwwxxxxwhwwvwxgxfwvxufwwgwxvwwvgwvhwxwvwvwxwwwwwwxwwvwwgwwhhvwwxwhwxwxwhwwxwhwvhxvvgwhwhhwwhwxggxwfhwwhwwxwwgwXxvXwgwwwwwwxxxxhxxwwgxhgwgwwxxwwxxxwwxwxwgwwvwxvxxxwxxwwwvwwhwwwwwwwhxwxxxxwwwwwwxhwhdwgggvwggvgxwwgwwwxwwwxwfwwxwwhwgwwxwwwwwxwwfwwwwxxgfwxfwgwggwwvwgfwxgxxxxwwvwvxwwxwwxwxxwxwxvvvfvwfwfwwxgwvwwwwwxwgvwxhxwxxwwvxxggvfvwxwxuwwwgwwxwwxwwwxxxwwxxxxxxxxwgffwfgfwVgevgwvxgffwwxwwwwvxwwgggvgvwgvvwwgxgwwwgvwwvxxxwfffwwxhwwwwwgwfwwwwxxxhxhxvwwwxvxxhvwwxxxwwxxxwwhhxfgfvwvwwwxwgvxwwwwwwvxxwwwwuxwwxwgxxxfwhwxxxwxhvxxfwwxfwgwwgxwwwvxgvxwwvwvxxxxxxhwxxxwwxWvwwfgfwWUDvgWvgwwwvwwxwwwxxxxwgvwwwwwhxwfxxhxvgfwvwvvwvwgwwxwwxxwwwxwxvwxxxxxwxwwxxwvwwwvfvwwgwxwhuggvfxxxhwxxxwwxwxgxxwxxwxxfvvhgwfwwxvwwxxxxxwwxvxxxxwxxxhVUDvfffggWwgwxwxwwwwwhwxwwxwxwwxwwwwwwfxwxxxwxxxxxxxxfgfwfwfwwgxwxwxwwxxwwwwxxwxwhxxxxwxxxffwvwguwxwxwfwhwwxwwxxwxxwhwwxwgwxxgxhwwxxgxxxxwwwxwxwxwxxxghxewgwwwvwgwwgvvfvwwwwvxwgwwwgwwwwxwwwuvvwvwvwxvvvxfgwwwgfggvfvwwwwvxvvwxwwwxwvvvwwgwxxwwxxwxxxxvwwwgufwwvwvxwvvwwwwxxwwwvwwxwwxxwxwwwwvwfwvwwvwwxwwxwwwwwxxwwwwxhxwxxwwxfgwwwwvegvwvwwwwVvwwwwxgvwfvxwgwxwwwwvvxvwfvwwxvvxxhwgwgwwwwUfvwWfwwvwwwxxwwwgxxwwgvvxxvxwxwvxwxwwxxwwhwxxwvwvwwvwvgvwwvwwwwwwxfwgwwxvxvwwwwwxxwxvxfvuwwwxwwgwgwwwxwwxwfwwxwxvwwxxwxxvxwwwxwvwwwugwwwwwvgffvvwvwwwwgwwgwwwwxgwwwwwwwwxgwwxxxxxxwxwwvwggvvwwwwvgvgwwxwxwwwwwxwwxxxwwwxxxxxxwxwwufwwffwwwwvwwwwxxwwxxwxwwwwfwwhxxgwwwxxxwwvwwwvwvwwwwwxwwxhgwwwxwxhwwxxfhxvfvgwgwgggvxxgwguxfXfwwwxwxwgxxwwxwwwxxwwxwghwwxxwxVgvhwwwwvxxwXvwxwhhhxgxwxxxwhwxxxxxxxwwxxxhwwwxwwwvxwfvwxwguxWxwwwwxhxxxxxxxwxxwhvxwwvwxxwwwxwhwhvxxgwwxwxxvwtgggwgwwvwgwwwwggghwggwfwgwwwxvxwwxwgwxwxwwggxwgxxgggwwggVwgwgxvxgggwwwxxgwfwxxxwgfgwwxgxxvhvxhxxxxxxxxfgwwgwvwfvwwwvfwgvgxwwxwgwwxyxwxhxwwffggxvvfvxwwwwwxxxwuxvwgwwwxwxhxwwxxhwxxwgwfggwwgggvgwvxgWVgwwwWvvwxwgxwggwwxxwwxxggggxxxgwxhxxwfgVxwxwgxgxwxwxgwwwxwwxxggxxxxgwwhxhhxwxxxwXxhXxxhwghxfggwwwwwvuwwwgvwhwwhvhwwxwxxwwxxvwwxhxhxxxhgwwgwwwxwxwxxvxxgggxwhhxwxxwhwwxwxwwwxhxxxgwwgwVfwggwwgUEwwxWfgwxwwvwwwxxwxxxgVVgwwxwwfgwxxhgwxwwwxxwxwvxxwxgxwxxgxxxhvgggwwwvwwwhgwwxwwgvwxwgxvxwxxxxxhxxxxxgwvxwwhwwwwxwxwwwxwhxxwxwxxxxxxwwwwxwxwxfUEgvwwwxwxwxWfgwwwgxgwhwhwwxgwxwvxxwxhhxwxwxgwgwwxvxwwwxwwgggxwxxxxwwxxxxxxxxxhwhgwwvwwwhvfvxwwwwgwhwxwwwxwwwwxgxwhxwxxwxwXxxwwwxwwxwxwwxxwwxxwxwxxxxxuUvwgfwwvuvwvWwfwwgwwwVvwgwvwevwggvwvxwwwwxwgvwVwwxgwwxwxfvgvveewgffwWggvfvwwxfvwvwwfffwegvwgwvvwwgxvwwgwvxxxxgvvwufwfvwwxvegvgvwhgwwwuvvvwwxwwxwxwvwwxwfwvxxwgvfvwevvwewwwwwfvwfwwvwvvwxwuvwgvwgxwwwwwwxwwwggxwwffwvfVeguUgwfWvwfEfvwfgwggwfgxwvfefwvWgwgwfwwwVggvWwwgfwwwwwwxwwwxvwgweufwVgwwwwwwxxwwWwguwwxgTvgxGvxvvwxgggwfgvfwwhgxggwwgwfdwwvFwvvvgfVwufwgwwvwuwwvfxwwvwvwvvvwwvxefwwWwwwwwxwwgwfvhhvfvwwwwvwwxwwwwxwvwwwxwgwwvgwwwwxwgvWgfVewffwwwvwwwVvvVvvggwwwwwXvwvwvvwwwvwwvgvwxgwgxgwwgwvfgwfffgfvwgwxwwvwhwgvxwxxggwvwwwwhwxwwwxwxxxwxwxxxxfgwvvwggfuwvwwwvvwgwXvwVwgxefwuvwvgWwwwwwvwvwWxvwwfxfwwwgwwvwvgwwggwwwwxxvwwvfxfwvvwvxgwgvwxwwxgwwwxgxwwhwgxwgTfwvFwfWvvgwxwxfVgeWwvVwwwxwwhfVwfwwwwxvxwgwwgxwxwvXwvwwwwwhTevvGvwVwwwgwwwwWwvewhvwwggxwwwwvwxwwXwhgwwgwwwwxwxwwxwxxgxvvwwwvgvwwwgwvfwggxfxxfhwxwwwwwwgwwwwwxxhwwxxvwvgwwgwgwwggwwwxwxgxwwwwwwwwxvvwxwwwxwwwfwwwxvgwwgwwggwgwgwvgfwgwxwfgwvfwwVvwuvwwwvvwvfgwgxvwwwgfwwvgwwwwwwwvgwgwxwwwxvgwgwwwuwvgfgwwgwwxxxfvwwuvwggvwffwwvvwwvwxwwwwxwwgwxwxwxvwwgwwwvxvwwwwwwWgwwgggwwuwgfvhvwxxvwwwwvwwgwxwwwggggfxvgwwwwweVffwwxwwwgvxxwwffvfgvwwwgvxxfvffwwvgfwwwxwxwwxwwwwwwwxxxwVegvxhxhwwwwxwwfwwwwxfhxvwwwgwwgvWvwWfwgxxxvffwfvxwwwxfvwWxwvwvwxvxvwvwxhwwwggvwwgwwgxwugfewwvwwxwwxvgfgVwgexvxwxxxwwwwvhvxwwugfwwxxwwgwxfvgfwfwxwwgvfweVgwwwwgwwvwwxwwwfvwfwxwxwwggwwwwwxvhwvvfwgwwwwwxwgwxgwvwwwwxwfwxvwwwxvwwxxhwxxwwwwwwvfxvvwwwwwwwewvwwwxwxgxhvxwgwxghvxwwwfevwgwxvxwwfwgvvwwwvxwxwxvwwwwwwgvwwuwwwwgeVgvgwwgvwwxxxfvVexgwwwwwwwgggvvfvxwvwghXggwvwhwhwxwwxxwgwggvwwgxwwwwwhxgwgvgxxwxxhwxwwfxwxgwwgwxwhwwwwwxwWvxwwwxwxhwxwgfvwxwwwwxfwwvwvwwgwxgwggxxWwwwvxxxwwwxvxxgfwwwwguwwwwwxvwwwvwwvwwwwgvgwwgwvwVvxugwgfvgwggxvWvwfvwwgwxWfxwxwgwfwwwggwwwwxvfvwxgfwugwwgvwxwgwgvwgwvgwfxvwhwwwwvwfvgvwwwxggxxwxvxwwxwgwgwwxwfwggfvgwwxfvwggwxvxwwwwwxwwwwxvxxwhgWwxfwvvhgwhwgwhwgxwxhwwwwwvgwwwxwveewwgwxxwvwwwwwfffhgfwwgfgvwwwvVwgWvvggfggfgvfwwgfvwggwfxwgvgVvggwwgwgxxwwwwxgxwgwxgfvgfwhgWfwwvXwxwgVWggexwwgwgwwwgvxvxVwxgwxwhgWhwxwxxwgwwvfwgwwwxwwffvWwgwwvwwwhvwhwwxwxxvvxfwwwxxwwwxwwxuwggxwgwwxwwgwgwfwwgXwfgfxwxhwwxwwwwwwwxxwfvwwwwxgfeuwvvWwvffxwwwwfwwvWvwggwxwgghxwvvwxwgvwgwhxwwgwxwgxwwxxwvwwgwwxwwwggwwwwxxgxwwvwwxwvwxwwwwvfxxxxxwwfxwwxfwwxxwwwwwwxwwwwxwwuwwwvwxvvwvwwvxxwwxwxwvwwvwxwwwuuwwwwwwwwwuwwwwxwwvvwxxwxxwxwxwwvwwffgfgvhgxwxgvwggggWgwWwhwwgvwwwwwxwwwwwxgxwwwgwwwhhwwfwxvwwwxwxxxwwvwwWwwfggwghfgvwxxwvwxxwwwwxxwhwwxwwxwxvhwhgvxwhwxvwwwxwxwvgwvggxvwwvhvwwwwxwxwgvwwvwxvwwwwgxxwxwwvxwwwfwvwuxwwwwwgxvwwydgfwgwvwwwwxwfggvfgvwwxwfxgwwgwgggwvxwvwxwwgfvvwwfewwggwvxgvwwwwwwvxxgxxvvggwuxgwxwwgwvxwxwxxefvvwwwggwwVuvwwwwvwxwxfggwwwwwwwwwwxxwxxxfvuwfwfwwvvwxwfwxwwwvwwwxwvwwfxwwwwxwwexwwxwwwwxwxxVwewwggwVfgwgxgWgwwwwvwxxwwfVfvwwfwWwwvwhwVvvghwxxwwgxxxwegewvvwwghwwxwwxwxgwwxxxgwxxxwggwwwwxgXxxgwwggwwWxwwhxxxxegfvwvwwwwwwwwwfvgwwwxuwwwxwxvwgwgvwxxvWwxxwwxwxvwvwvxvgwwwwvggwxhxxwwwwwwwwgwgwxwwwwwxwxxffvwwggggvwuwvfvVgwwwvwwgEEwwwwwwhxwggvvwghxxwfffgwwxvwgvgfwwxwwgwxwwxwwwvwwxxxwhwxwwxxxwxefvwwwugwwwxwwguwfxwxwxwWwxhxwwwwwwxwwxxwwXvwxxwxwgvwwwxgxwgxxwvhgwxxxvxxvwxgwwwhwwwxxxxxgxxxxxxeEEvgvvwgwfwwxwffvwwxwxgxwwxxxggwfwwxwwgwxwxwwwwxwxxgwwwVwvwxgwxxxwwfxwwxxxwwxxxxxwwghxxxhxwggwxxxxxxxxxggvuvwwxwwxvxwvWvgxwwwxwxxwwxwxwhwwxxxxxwxwxwxxwwvwwxxfwwwwxwwwxxxxwwxxxwxxugwgwxWwwvgvVgvhvggfEevgvvwfwxwvgwwwwvwvxggfwVwwxwvvxwgwwWvwugfgfwVwvwfffwgvgVfvgwwgwfgfwgwvgvvwxvxGvuhxwwwvwwhxwxfwuvVuvwfwvwwvggwVwfvwxwwwxwxwwwgwvxvxwwxwwgwxwwvwvgfwvwwfgxwhwfvwwwwwgvwwvwvgvgwwwwgxwxvwwwwwwgwgwwwxwxxgvvxwwggUfvgwggfegffggf5fdWwWvgvwgfwvvggwgwgWvvhggwWffgwwwgXvwwgwvxgvfgvgwhfgefghhXvWfgwggggwvhfwwWwwwWxxwwgfgwXwfgWggwxwvfwvwwxWffXvxwfevgwgwgwgxxwggwwhwwxxwwwwfwvwfvwxvwvxwwgwuwwvgvwwwwxwwvgwgvgvgvxwxvvwwhvxwfvxuwvwwwxwwvwwwwxgwwggfwvgfwgwv6dvVwvggvwwghgwvwwwwwWwfwwvwxwwwwwwwxwxwvWvwgvwwvwvvwxvgvvwwwxhwggwvvwvwxwxwxwghwwxggwxwwxwxwhwwwfgfuxwwwgwxwxgvvwwfwwgwgwwgxwwwwwwwxwwwwwgwuwwwwxgwwwwwfwvxuxwwwwvxwvfgwwgwwwwfxvwwwwxwwvvvwwwwxwxwwvwgvwxggfvgvgwevVgwgxgEfugwWvggfgVwxwhggwxwwxghxwwwwwwwhwwwwwwwxwVgvwwhxvhwxgxwxvWvwwhgxwgxwxxxxwwwxxxhxxhwwxwwwwwwgvuvwwwgxgwwwwugwvwghWwwwvxwwwwvxwwxwwxwwwwvwhwfwxwxvvwwwWgwhuxwwwwxwvwwvwwwwxwwwwwwwfwxuwgwgwgvvwwgxgvwfxwwgwwvwgfvgwxwwwwwwwwgwxwwfwwhwgwwxwwxwwxWwvvgffwvgwggwwxggwwhwfFwxwwwxvxwwwwwxgxxwxwwwwwwwxWgvwwwvgwevvxwwwwwwxwxwwwxwxwwxwwgWgvfwwewxgwgxvxgwgwwhwxxxxvwvwxwgwgwggvgfFwwwwxgWvwwwgwwgwwwxfwgggwwwwwfvvwwwwxghxwxxvwwxxxgwwghwvwxgxvwwgwhwxhgvxgwhwxvxxwhvxxxxwwxhxxxwwwxwxwwwgwwgwxxxgwvxhwwgvhwxwxfwvxwwwxwwhgwxxwwwwwxwwxxwxwxwxgwxhgfwwwxxxxwwwxwwxwvwxwwwxxwgvwwvvvwwgwwgggFVufwxvxxhgwwhxwwxggvgxwxxxxwxxwwwvwxgwwxxFWuvhxwwwxwxxwxxxwxxxxhxwwwwwvWwgxwwwxwwwgwwWvggxwwxxxxxwwxwwhxxxxxxxwwgwwwwxxxwwwxxwwxvwvxxxwxxxxwwwggwghwgwwwwgxwxgWfwhghwwwhxxwwwwxxxxwwxxvwxwxxxxxwxwxxwgwxhwxxwxwwXwwxxxwhwwwxxwxxxxwxwxxxxxwxwgwwvhxxwwwhwgwwxwwwwwxxxwxxxwxxxxwxwxxwwwwxxwwxwwwwxxwxwwufwvwwwfvvfgwwwwwwwvwwfwwwwwxgfvwgwwxwvvwvvxvwxvwxwwwwwwvxggwgwwwwwxwxgwwxwwvfwxgvxwwwxvxxwwvfvvwwwwxxvvfwwwwwwwfvwwwwwxwwwgwwfvvvvwxwwwwvwxxvxwwwxwwwxwxxwhxwxwwwwwgwwwvfvwfggVwwwwgwwwwwwWvwwwwwwwgwgwwwgxwxugxwwwxwwwxwwwwfvvwgwgwxwwgwvxwwxxhwwgggwwxhwwwhwwxwwxwwwxwwxxxxfwewggwwxxwxwuvwwwwwfxwwwwuwwwwxxuwwxwxwvfwxfvvwwwwgwxvfwgwwwwgxvwwwwfwxwxwwwwwwwxxfvxfwwwvfvwwvwgwwwvvwxwwgvwwxgwxwwgwwwwwxwwwxwxxwfggwwWwwwwwwxhwwwxwxxwwwwxxxwgvwgwxuwwwwwwwvwwwxxxwwwvvxxwwxxvxwwwwxxwuvgwvwwxwwwwwwwwwwgvxvxxxwwxwwxwwwxvfvwfggfVwwvwwwwwwxwgwxwxwxwwwwwwwwwvxwhwwxxwwxwgxvwwxgwvwwwvwwwxgwwxwxwxxwxwxwxxwxwxhwxwxxxwxwxxwxxwwgvwwwwfwwvxwxwxwwwvwgxxwwwwfxwwwxvwwxxwxxwwwwvxxwxwwwwwwxxwxxgvvvwxxeFefuvwVfvxgfvwfvwgwgwxfgwwwxfvwvgwwwfgVwwwwxhgwxfvfwfuUfvffvuxvffwgwwgwwwwwwwvfvwfgvwvvwwwfwxgwwxvxxxwwwVgutwuwfvwvwwwuffwgwfwwwwxfvwwwvwvwhvwwwgvwwwwwfwfgdvgfvvwwwwwwuuvwwgvwgwwwwwvvgvwwwwwhwgwwwvwwwvwfVffwvffvfVvwfgvfffWgvwwwffvgvvweVfvefwgfvwwgwhwfVwwgfwfwhvgwwwfvxevwggghVwwvevwggwfggXvgxXXvgwwgggvgwwhxvwghWwhfwhhfgwwWxgweevfvwweVwvwwwwuvvwwwvwfwwvwxfUgfehvuwfxhgwwwuwwwwwxwfgwfvvwgwwwvwgvfwwgwwwfwwxvwvvfxvwwghxvhwvwwwwwwwhufwfvgwfgvwfgffuwwvffwwwwxgwwwwwwxfgvwwvwgwwgwghfwwwxwxwgvgxwwwgWwWvuvfvvxvwwgWwfwwhwwvwxwwwwwwwwwwwwxwwxxvwxxxwwxgxvgvwgwtwwwwXvwvgWvewwvvgvwwvwwggwwwwggwhwvwwwgwwwhwvxxvgwevwwwvwxvwwuvgwvwvgvvxWwwvwwwxwghwxwwhwxwwgwvwxwhxwxwwfewvVvuwuVgvwwwhGgvgvwwwwwgwwghfUwvgwwfwwghwhwwwwwwwxwwwgwxxevwvwvwVwgfwgvggxwghwfwwxxhwWwwfgwwxwxgwxwggwxwwxxwxwxwfugvwwwwvwgwxxwffgvhwwwgwwwxxwwwwxwwxxxgwwhwwwxwwwwxxuwgwvwfxwxwwwwgwvwvgxwfwwwwwvxxxxwxxwwwwxwwwwwxuwwgfgwwwwwwwxhwxwwwggvwwxgwwxwwwwxwwwxwgwvwhgwxxwwwwxggVwwgwgxvGxwwwwwwgwwwwwwxwxwxxwwwxwxwxxwwwvwwxwwxevgwwxvvwxxwwwfwvwwwwwxhxwxwxwxggwvuxvwgwhxvxxxwvwxgwvwhwxxwwwxxxxxwxxggwwgfGvggvgwfxggVwwfgwwwxxwggwwggxxwxffwwhwgwxwxxwxxxwxxwgwgwxhwwgwghwxwwghwwwxxxxwgwxxwwxwwwvxxxhhxwxxhxwwxgwfwfvvxvxwgwwwwxwxgvgwxwhxwxwxxwwwxxxxxwxxhwxwhwxxhwwwwxwhgxwxvwvxwxwxxgxxxxxxwwwxwwgwwxgVfufwwgwxwwwwgwwgxxxwvwgvvxxwxwwhhxxxwwwxxwxVfevwwgghgxxwwxxhxxwwvxwxxxxwxwxxwwwxwwwxgvwvxwxwwwhwxwwxxwwgwwwxwxgwwxxwxwxwwxwxhxwwwxxxwwxxwwxxxwxwwxxxwxfggvwwwggwgwwwgwwxhwxwvggxhhxxwwwghwxwwxwxwxxxxwxwxxxxwwwwhwgxwwxvgxxxhhwxxxxxxwxxxwxwxfwvhxwwwxwwwvwxwxwwxxxxwwxwxxvxhxwgxxwxwxwwwwxwwxxxxwwxxwefwfvwvgwxvggwvwwwxwwggwwgvwwvgvwwwwvwVwwwwwwvuwwwvvwwgvwwwwvxwwvwxwwvwxfgwfvwwvwxwwwwwwwwxwwffwwgwvvwwwwVfwwvwwxxxvvffwxvgwxvwgvwwhgxwxgvgvwfwwwwwwgwwwwwwwwxxffvwvwwhwwhvwwwxwwwxwwwxvwwgvvgvfvwwgwwwwgwwwwvwvvxwwhvgwvfvggwwxwwwwxgvwwfgvwwxwwwxwwgwxvwwfgwwwwwxvwgwwwwxwwxxwVfvwwwggghwhwhgwfxwhwvwwxwfwwwwwwwvwxxwwwfwxwvwgvgwwwxwfwwgwwwwwvwwxvgxwwwwwwvwxVfvwwwwxxwwvwgwgxwwfxgfgwwwgfwwwwxxvwxwxwwwhwwwxwvvvvwvwxwwwwfgwwgwwvvwwxwxvfvwwvwvgxgxggwwhwxwwxwwgwwgwwwwvwxwgxgwxxwwwvwwwwwwwxxwxwxvxxxwwwwvxvgwxwxxvuwvxwwwwwxwwvvfgwwwwxxxwwwwxgwwwvfxwfwwwwwxwwxvwxwxwvwvhwwwvwwxwxwfwwgwxwwxwvfwggwvwwxwwxwwvwgwgwgxwxhxwvgwgfwxwwwwxxwwwwwwxxxwxwxgwuvwwwwhxxxwwwwwwxwwxhwgxxwgwxxxwwhgwxxhwwwwxvwvwwxwgwxwfxfwwwwwwwwwxxxwvgwwxwwxwwxgwwwwwwwxxxwvwwxwvwvwwwxwxwwwwwxxxwxxwxsgwwgvvwVuwwgvvffgvfwvfwwwwwVvvhfgfvfgFevwfgwwgwwfdvwvwgfwwffwvvwvwuwvVuwwgwwwwxwvwwgwWvWfvgfwgwxwgwvxvgwwxgwgwwffwvwvvfgvugwwgwfvwwwwwxwwwwfvwwgvgwgxvwwwwwxwwwvVdvwwwwWuwwwfgwxwxwwwwwwxvwvgwwvwxwgvxvwwwwwxvwgvwffwffffgvvgggffwwgfwwgfugffgvfWgwffvw5vewvgwwFUfggWwvVfhfWfgvwgvwgwwwwwwwfwwwvgvffxwggwfwwwgvwwfgfwxgvgfwgwhwwwwwwxgwfxxWvfgwfvwxvfwxwxESvwxWvvwwxgxvxxgwxgfvvvwxvgffgvggvwwwwvwwgvwwgvwwxvxwgwwwwgwfxwxfxxwvgxfwwwxxwvvxwvgxwvxwfvvwgfgwwwewvwWvwwwggufwwwvwwwVewVvwwvgvxwgfvvxwwwvwgwwvwvvfvwfwxwwwgwwgwwwxgxwwxwgvxwwwwxggwwwgwxvvwwwwwgxxvwwfuwwxvxwxvtuwgwwhwwxvfuwvwwgvwwhfwfgwwwvgwwfhfwxwwvwwwwxwxxxxwwwwxxxwxxfwwxgwgxxwxxvwwvvxvhvfwwvwwwTvvwvwwxgfvwWfguwgvgvgxwVuwwwwwuwwWwwhwxwwwgwwwwwxxwxwwwxfwvwwfxxfhhwwgwgwwggfhgxvwwwwxgwwwxwwwwwwXVwwwhxgVvfwwwgwxxwfwwvvxxxwwvwvwwxwVgewxwwwwvvxhwwwwwwxxwwgxwwwwxxwwwwwvfwwxwwwwxxtwwwFwfhgwxfwfVwvwwgvwwWvWfvvwwxwfgwwwgvwwgffwVUgwgvwwwxxgwggWggwwggxgvwwvfwwwWwwfvvWgxwwfuwffwwxxwwwggxwxwwwxwgwggwggvgwwwxvevvgwwvfwxwwxxewffvxvvwwvwwxwxhwxxwxwwwfwffuvwwwfwwwvwwhwxwgvwwggvxwhxwhhwwwwgxvxwwvwVgwwWgvwwfgwfvgxgWewFfuvgfgvwhwgvgvwWfvgwwxxggwwwwvwGgwVfgwwggggwwwgwwgxgwgwgfwgwwwwwvWwgwwwxWggwgwXwwwwwwwwfgwwgxhhgwgxgwwggfwwwgwwvwwxgvuvwgfwhwwxhwgvvUdwwwwwwgwwwwxhwxwxxwwwwwxwgvwwwxxwwhxvwwxxvgwxwwwxxwxxvxwxxwxwwwwxwfwwwwUtwwgfwgvxfgwwwgwwffwwwhwXwVvfvwwwvwgvwxvWwwwwwXxwgxwwxxfgwxgwwgwwgwwvWfwggwhxxxwwvwwwgxwwxwvwxwwwwwxwhhgwwxhwvgwvfgfvxhwwwggwxwgxwwxgxWgVvuwgwwwwxwwwwwwwWxWXfwwfgwvwwwwwgxhvwwxxghwxxwwxxwxhwvwwwgwwgwgvgfwwwwwwwwxwUvgwfgwHwwwwvhggwwgwwxWwxwwxwwwvXgxwwwxxwxhwwwxxvwvhwhwwhxhwwxwhhwgxhgwvgxxxwwxXgwwhwwxwfwhxXvwxwwgwwggwxwwwgwwwgwgGhewxwwwwxwxxwwwwwxxxwhwwvxxvxwhwwxxxhwwxxwwwwwwwwvwxxhwxwwxwxwwwxxuwwVvvwgwwxvfuwvxwfvwfwwgvxgwvwTUwwvgwvgwwggwggwwwxwwgwxwvuwwvFvegwvgwwvgfwwghgxxwwwWgfwgwwfvvggvxwxwwwxwhVvvwffvwgxwwwwxgVefwvwghwwwxxvgvwwvfwgwwxxwwwwfwwwgwxvxwhwwwfvfvvfwfwgxwwxwwwxvwwgwwxwwwwwvxuwwfvwwhhwgwwxwxgwwwgxgvvggWvwffvwufgwVwfhgfwwgwwwVvwwwfggvdU6vdVgwggwwwwgwgggfvfwwgxhwghwgwxWwvwwuhwVUvhwfwwxwWwxggxhhfgwwWvfvgwwvXhggvwggxxwxgwxxxxxvfgwVfvwgwwxwwwwwwwwwwggxhxgwwgWvfWxvxhwwwwguwwvwggWhxxvxwVvgvwvvwxxwwxgwwwgvwfwxwwwxwwvwvxwvwwwwwxwgggvgvwwwwwwwFcwvwwgwwxwxvgwvhgxwwhwgvvwgxxgwuxxgwwxwxwwxxxxxvhvfwfwvwwwwvgvgwxwxhxwgwwwwgwwhwwwwwwvvwwxfvugwwwxhwvwwvwvwwhwwvwwwhfwwwwwhwxxwxxwxwgwgxexhwvwvuvwuvwhwgwvwxwwxfxwwwvgvvxxwwwxwfwwwwwwxwwwxwxwvfeFuuggwwxxgwwxwffwvwwhgwwevfgwwwWxxghwwwhxgxxwxhxwwgwffvfewwwhhwgwxwxxxwwwxxwwhwxxxgxxxwxwwxxxwxxxwfvwhvwgwxxxwxvxuxgwwggghwwxwwxxwwwwwwwwxxxgxwxvwwwwvwwfgfwxwwxgxvWvxwgvvwgwwxwwxwwwwxxwwwgwwxtwwfwwwUvhvwwWwgffxegggwwgGwvwuewfvfeevvfvwwwvgVfuwvwwVwgwvedxfgfgvuwvVVwxwwWwvwvgwwwevwfwwwfgvwgxwfwwgggxwwwwVwwdwvwfxgwwwvwwfvuwwwxwxuvevuwwfxvwwwwwgxwwwvfvvwwxvwvxeuwgWwvwwxvwwuwwxvxvxvwxwwwwvwwwfwuxfwwwfgwfgvwVfevgUVvgwwWevwWfvwvfvfvvwFvtwWwwfffWwVgfwfxwxgWfgwgfvwxwwwwxhwwwwwxwvwwvwfgwvgvgwgXwwgvugXhfwwwwwhwwwgwxgfwuwTdugwwwvwuvfhfuwgfwwgwwvvvwwxvwwwhxwxxxwwxxwfwvwggvgvwxhhwgwhhwvwwvwwwwxwwwxwvxwwwwxwwwxuwwVwwvgufVuxVuvwwUhwwwWfvvxwvvwgwvvffgwgwxhvvwwwgvwfxwgxwxvvvggwgfwxWwgwwwwwwwgwwwwwwwgwvwxwhvwghxhgxxxxwhwxwxwxeevuvwwgwwuvwxwwwgwxwgwxwwwgwwvhfwwfgfwxhwwwggfxxwgvwwwxwxwgwxxwxvwwewxxxwgfwvwxwwwwwfffVggvVuvwgxgffgwGwwvfwxwwggweuvxvhvwwXxxhwwwwgxwwwgwwwxwwxgwwxwvvxwwHgvwvwwhwwwwxggwxwwxwgWwxgwhwwwgwxxwxwwxwfwvxwwxwxwxhwwwwxwvwwwwwwwxhxwwWgehxvxxwxwxwwwwwwwxwwxhwwwwwwwwvuwwwwwwwhwwwwvwwvwfwwgwfwvxwxxxvwwhxfwwwwwwxvfwvwwwgfwxxgvxxvwwfxvwwfwfwgwwxxwwxvwvwwwwwxwwxwwgwxwxwxgwvwwwfwvwwgxwvwwwwwwxwvvxwxvwvwwwwxxvwffwxxwxxwxwgwfwfvxhwvvwxvxwxxxwvwfvvwwxwvxvxwhwwwwwwwgwwwvwwfwvxwgwwwwvvwxvWggwgggvwxwxwxvgwwwgwwfwvxwwwggwwxxwxwxvggxwwxxxwwxwwxvxwxgwggwwxwgwwwhgwgwwxwxxwggxxfxwghwxhxxvxvwxwwvwwxwwxwvxxwgvwxwgwwwhxwwgwvgwvhwgwxhvxwwwxwwgwwwwwvwwvhxvwvwvxwxvwfvwxwxwhgwwgwvxfvwxwxwvwwhwvwfgwxvvvwwxvvvfwwwwwvwvwvwwxvgwwgwwxgwvhwxwxwgvwwxvgwxwwwwghwxwxxwwwgxwwwwxwwxwwwvxwgwwwxxwgwvwwwxxwwwwwwwxwwvfwwwxwxxvxwhfwvxwgwxhwhwvvgwxxwwxwwwgxghxxwwvvvwwwwgvwwwwwwwgxxfvxwfwwwwwwwxwwhwwwwwgfwwxwxffwxwwwwggwwxwghwwwxgwxvghwxwwwwgxgwhxxxxxxxwwxwwwxxwxxwgwwxxwxwxhxwwgwvvwxxxwwhxxwwwxxxwxxwgvxgwxxwwxvgxvxvwwwwwwxvwwwgwvvwwwxwxxwxwxvwwwwxvwwgxwwxwwvwwvvvxwwwwwsgggvvVwwggwvWwwvwwxwwvWwwwgvwfvvfwwwwwwwwwwwwfwgwwwVwvvVxwwvgwgwwxhwvwxgfwwvffugwwxwxwwxxxxwxxwxxfgfwVvWwfwwwwvwgwwwvwfvwvwxwxvwwxwgwffwgwvwwxwwwwvwwwwxwwgguwwdwwfxwwwxxwwwwwwfwVwfgVwwvWwwwwwgggwgwgvwwgwwgwffwgwuwgwwxwxgvegxvWxwxwxxxfwfwgxfvwwwwxwgwwwwxwwwwxggwwgwxvWxwwwwgwwwwwwxxxxwxxVvWwwwvwwwwfvvvWwwxxwwxwgvwxvggwwdwgfwxwxxwwwxwvWwwwwvwwwxhwwwwwxxvwwwwwwvwxwghwxwgwvfgT5wvwgfwxwffwwwwxvwxxxwwfwfgvgwwwwwxwwwxxwxvffwgwvggwwwxwxxwwwwwwwwwwwxwvwxwwwxwwwwvgfwgwwwwwvxwwhgwwwwwwwgvwwwgvghxxwwwhxhxxxwwwxWwwwwxwgwxwwwwwwwvwvwwwwwwwhxxxhwhwxwxxxwxfT5wggvgfwwxwwgwwxxvWxvxxxwwwwwwwwwwwhwwghwgwgxxxxgwwgwvWwxwxwwxwwxxxwxxwhwwwwgwwxwxwwxwwwwxwwgwwvxwwwwxvwwwgxvwwwxgwfvgwwwwwhxfwwxwghxgwwwwvwxxwvwwxwwxxwgwwxxwxwwwvxwwWvwwgwvgvgfgvvxwxgwvwwwwxgwwvwwwvgvvvwwvgvgwfvwwgwxfvwvwfwwwgwwwvxwwxwwxxwwxfwwgwwvvxwwwgwwxgwwgvgwwvwxwgwvfwwwwgvfvvwvwwwgxwwxvxvwwvwwwwwwxwwxxwwwwxvgvvvhwvwgwgfwwxvwwvwgwwwxwwwxwwwxwvwvwwvwwwvwuwfgfvggvgwwwvggwgwVwggwwwxgwvwwvgwvfwwhwwwwggxvxgwfvwgwgwwxgwgwvWgwwgwwggxwwwxxgwxwxxxwgxwhwwgxwgwxwwxvvwwwwgwxgwgwgwvwwwgwvwvhwxvxwwxwgwvwwxwwhwvwwwxwwxxxxwwxwwxwwwgxvwwwxvxgwwxvwwwgfwwwfwwwgxwvwvfwvvxwxwwwgwvwwwvgvwwxfwwfwgwfwfwfwggvgwvwwgwwfwwvwxwwgwgvggwvwwwwwwgwwxwhwwwxwwwwvwwwwvvvwwwwwfxxwxxxwwvwxvwxwwwwwwwwwgxwwxxwxvgvwfwwvwwwwwffwwwvwwwwwwwwwwwxxwfwvwxwgxvxwwvwvwvvwfwxwvvgwvwvwwxgvxwwwvwvvxxwwxvwwwwggfvxvgfwwvwgwvwxxwwwwwxwwgggwwgxwwfvvwhwwgwwgwwwxgwgfwgggvvwgwfxwwxwxgwxwwhxwxwwwxxxgwwhwwwwxhwxwgwwwwwwwwwvwgfvvwwgwwwwxvvwwwwwwwxxwwwwwwwggwwwwxwwwxwwwvwwwxwvxgwwwwwvwwwwwwwwvvwwwwwwxwwwwfwvwwvwgvwwufwgwvxfwwxvUUggxvgxwwvwvwwwxwxgxwwwwwwwwxwgwwwgwxgvwwxxgvwwfwvwvVvuwwwwwwwwFdhwwwwvggwvxgwvxvwgxfgwwwwwxxwgvwwwwwwwfwwwwgwwwwwwwwxwwwgvvwgwgvxwwxwxwxhvxxhwwwwwwwvwwwwvxvwgwfgwwwxwxwwwxwwxwwwxxgwwxxwwwwxwxwfwvwgeewfvww6eSWfggwwvgfVvuwwwgwwwwwgwVWgwwwvgwwfgwwgwwxfwxhwwwgwxwwfggfgwvwwgfggwfggWwgfwxhwgwgwwwhvgvwxgwwwhwxhxgxwxgxwxwvgvVwUWfvwvxwwwvwwwhwwvwwvwxvxxwwxwxwwwhvwxxwwgvwwgwvwwwwwwwwvwvwxxwxxxwwwxvwvvxwxwwwvwvwwxxvWxwwggwwxwgvwwFTgvwvwwggwwgwvwwxwgvwwxwwwwwgwvwwwwwwxxxxxvxxwwwgwwvwwgwwwxgwfvvxxgwhvwwxwwwwxxxxwxxxhwxwxvxwwwwvxwwfxvwwwwwxwhwxgxxwwvwwwwwwwxwwwxXxuwxwwwwwwwxvwwvwwvgwxwwwgxwwwwgwxwwxvxxwwwwwwxwxwvgwvwUeegUuvwwwfgwwwxgwfhwxwwwwwwwwxwwxwgwwxxxxxxfxwxwwgvwwwgvxgvxxxwwwwxxwhwwwwxxxgvxwxxxxwwxxxxxwwxwhwvgwwwvwvwwwvvvwxwwwwwwhwwwvxxxwxhxxwwwxwhfwxvwwwwwwgxwwwvxxxwwxwwwvxhxwggwxwwxxwvuvfwvvwwwvwwwvwxvwvgwwgwwwwwguwwvggwwwwwwwgwwgvwwwgwxwwwxwwfvwfFwwwvvgwwwvwwwxxwhwwWgwvwwwwwhwwwwwwwwxwxxwwvxvfwwwwwwvvgwvvxwwhwwwuvuwwwwwgvuxwwwxxwwwwgwuvvghwxvwwgwuwwwwxxxwwgwvwWvxxwwwgwxxwwwxwwwwwvwvgvwgwgxwwwwVwwwwwgvwwxwxvfFwgwvwguwhwhgwwgvwgwvwwxwwxwxwwwwwgxwwwwwwxwwwxwxgxxwxxxwwwxgwgWvXwwgxwvwxwwwxgxwxxxwwwgwwwuwgwxwxwgwwwwgvwvxwvfwwgvgwwwwwwwvwxwgwwwxhvwwvxwxWfxwxwxxwxxWwwxwwxwwfvvwwhwvwwwwwgxwwwwxwwghwfgwvvwxwwwgwwhwwxwwvVftugxhwwxxvxxwxwxxwxwwwgVftuxwxxgwxxgwxhxxwwwxxwwvwxwxwwwwhwvvxxxwwwwxxxvxwfwvxWxhwwwvwvwwxxxvxxxwxwxxfvwwvwvwwxxwgwxwvwwxxwwwxxwxxxwwwxvwwffgvvwwwgxwwwvgxwwwxxxhwvvgvhwgwwwwwvvxwggwgxwggwgxxwwwxgwwvxwwwxwxxxwwxxxwhwxwhxwwxgwwwwwwwwhxwgxxgvwwwxvvwxxwwwwwwwwxwwxwxxwwxwwxwwxwvwwxwxwhwxxgvwxxxxwwwwwwwwxwwwxgvdggwWvvvvwgvfvwVweWvgvwvgfvfevvgvvxfgewwwwffwVvgVVfvgvwwwwwgwWfwvfwffuwvvwgwgvwffvgwvxwwwgwgguwvwvwxvwfwgfwwgwwvvxwvgwwgwwfevuwwvwwfgvffwvVvwwwwvguwvwvvwxwwvvwwvwwwvwwwwgwvvwffvwwwwwwvvwuwwgwxuwwgufuwwvwwwgwgwwwwxfwwwwwvwwvfgfvvgfVfwfVvggfvwfVgfFeevWfvwWvgUgefvVfwwwgwfwwgfvvgggvwfgwgggWvwwwgwwvwfwwhgwWgfvwxwffhfvfxggVwgwvvwvhwwvwvhwwwuxwxXfwfwwhwggvvwvvewvUdvwwgwvwwwfvgwwwgvwwvvvwwwwwwgwvgwWuwwwWwwvwwwvwwwwwvwwwxwvwgvvwwwhuwwwvwwwwwwwvwwwwwwwwwwgwhxfwwxwwvggwwwfwfuwvfvvwEuwvwwvgvwwwwWvwfwvwvvfggwwwgVvwwwhfXvvwgwwxgvgvfwuvxwwxxxwwvfwwwvWfwgwwwVvvwwgwfwvggvwxxgwgwwwwvwwwuwfuwvxwWvvwvwwvhwvvgghUvvwwvgwvhvxxvwwwggggevwvxgwvwwwvwvxxwwxwwwwhfxwwwwggwwwwvvwwwwhwwvwhwwgWfevvggwvwwvggfwvvvfGwwwwwgwwvvvwwgvgWwwvwwhfgvwhvgWvwwxxgvxwwwwwwgwwwwwggwgvwxgfxwXfhvguwxuxwwWvwvxwgwgwwwxxwvxwggwwfgwvwwfwwwwhgwwwgWXdwwxwxwwwwxwwgwwgwxvwwwwwwxxwvwwwxvgxwxwwwwgxvwwwwwxwwvvwwvxgwwxxtwwWwgwwwwvvgvwwxwwwwgfvvwwwgwwwwgfgwwfvxwUVwgwwxgwvwxwgvwwwgfvwfWWwvVwwwvwgxhfwvxgxwvgwf6uuXgvuxgxxFwvggwwgwxwwxwgwgwfwwggvwwwwfvvvwgwwvvhwxgwwwvwxfxwggwgxwwxgwwxxgwggWvwVwvvhfwgwxxgxwxxwwwwvvwgxwxxgvvhxwwwwwwwwwwvwwgwuwvwwvwggvgvwfUfvwwWWVwfVxgxgvffwGwvhwvfgwwxg%udGwghvgggwwfwhgwvwxwvWwwgwwwxgwfwWxxwGwWwwwxgfwfgwgfvwxggwgwwgWwvxhhwxvwwxgvwWggwwgwxvwxxFvfGxwhwvwwggwwwguvxwwxwgwxwwwgwwgwvwgvvhuwxggvxwxgwwwxwwgwwgfgwhwggwgwxtwgwwxwgwwwwgvwxwgvwwwwwuwwfvgwwwvfwgwwwvvxvVvwwffvvwvwwwgETwvwwfwvwwfgfxwgvxfxwwwwvggvewwgvwxgwvvwwwxxvWxxhwvfwvfwxwxwwxwxwxxxxvwwwwvgxwwvwwwvwwwvvwwxwgwwwgwtwwvgwwwwwhxwwggxwxxwxwwwxwwwwwxgxvxxvvwxgwgxvgvwxvwwxwwwxwwwgwwwfwwwwuwxwgfwvwwgwwTvfVxggWwxwwhwwUefwwwwgggwxxxxfwwgwwxvxwwvwfwgwwwghhwwxwwwWwgxwhwwxxwxwxvgfxxxwwvwwwwwwwwhwwvwwgxwwvwgxwxwxwvggwwwwhwwgwwwfvxwwxwwwxwgxxvgwwvwfwvuwxxwwxgvwxwuwvwwwhxxwgvwwxwwwwwfwwwwxgvwfwxwwwvfwvvxewfVvvvfwuvwgVwvvwwfxwgvwwxwfvwffevwwgwvggwgvwWwxwwewvgwwvwwwwwwwwwwwvxwwwwwwvvvwvwwwfvxvwxxwwwwwwwwxfwufgewewvvgwwwwwwwwfxxfgvuwfxfwxvxfwxwxuwwgwwwgvwwvvhfwwwwwwwxwwwwxwxwwgwuwwwwwwuwwvwxwxxwwxwfvvwwfwevvgwgfwvvWwfvvwwfwfwvwguvwwwvwfgVfwwfVfxwwwgwgwvgwgfwwhwwvhxwgwvwwwwwwwwwwwvgvxfxvwxwgVfwwgwvggwwwhwggwxxggxvwwgghxwvfgvfvfggwxwxwvuwvwwggwwxvwwgvvxfwwvwxwwwxwfxhwwggfwwfwwvwwwwvwwwwwxwffwgghhuwwwffUwwwhvwwvvxgwvfwwwwwhxxUwwfwvvgewwgwwwwvggwwxwwfwwxwwxgwvwwwwwvwwwxxwvvxgxwwxxwwvwwvwwwwwwwwxxxxwwwwwwxwwwwxwwwwwwwxwxxxwwwwxxwwgfxfwvwfwgwwgxwwxxwwwxwxwfvfwxwwvwwwwwwwwwvxwwwwgwwwgwgvwvwwwxwwwwgwwvvxxwwwwwfvvxwxwwxwwvwVfwgwfwwvvwxgvvwhwvfgwgwwwwWwwgwwhxhxwxvwgwvgggwwwwgwwwwxwwxwwwwwxwgwxwwxwhfwwwwwxxgxwwwgwgwwwwxxhgxwwwwgfwfgwwwwvxwwxvwwwwuwxwfwhvwwxwwwxwwwwgwwwgxwwwwwhwwvvwwwwwwgwxwfwwwwwwwwwwxwwvwwtvwgwvwwwwvwwxvvvfxwxvwwwwwwwfvwwvuvvxwxwvwvwwwxvwgxwxvwwwu6wgwwgvxwggvwwgwwxwwwvwfvfwvwvgwxwwwwwwxwgwxwxgwvwvvwwwwgwwwvwwwwxfwfwvvwvhfwwxwtvvwwxwwwwwxwwvWwwfwfwggWwvvwggwwwwxtvxuwwwwwwwvwvuwgvvfwwwxgwwfwvgwwVvgwwwwxwe6fwvwvgwwhwxwgvguwwwwwwwxxxfwfwwwwwwwwwwxxxwxvwxggwwxwxwwwvwwwhwvwwwwxwgwwwxwwwwwwxxxwwwwgwwwwvwwwwvwwWwvwwvwxwwVvwwwwwwwhxwgvvhvwwwwwfwwewwxvgvwwwwvxwwxwwvwxwwwwvgwxvgwwxwwwwxgwwxwwfwwvvfwxvxwwgvwwwwwWxgvwwXwffwxwwuwwxwwgVwwfwwvvxwxxUgefwwwxhgwwgfwwvwuwwxwwwwxgvwxwwvwwwUgefwWwwwgxwxwxwxhwwxwxgwxwwxfgwwxvwgwxwwwwwgwwwwvvwwwvfxxxuxwwwwxvxxfgwwwxwwxwvwwwwgwxwxxwgxwwwxhvxxwxwxwwvwWwwwvwwWwwgvvgwwwgvxxwwxxgwffwwxwwwxxwxwwgWwxwggwxwwxxwwwwwwwwgxwxxwwxwwxgwvwwxvgwwxxhwxxxwwwxxhxwwwwwwvxwwxxvwwwwxxgwxwwxvwgxhwwhfwwwxgxwxwvxwxwwwvvxwxwwwwwvxwvwwwvxwwwgwwxgwxwfWwgvhxwxvgggwwxwwxwwfwwwgwvwwwggxvwVhfwvxgxgwxwwVxvxggwvxvwgwgwwwggxwwwwwgfwgwgwfxvwxxWvvxwgwwwvwwxvwuwgxvxwwwwvwghwwfwwwwwwxwvwwxvwwwwxwxgwwxwxwxwwxfgwwgwgwwwwxvwwgwgwwwgxwwxvxxxxwwgxxxwxxxxxwwwwwvfwgfVwgwvhwgWwgwgwgwwwwwhwgwgggwwgwfwwwwgVwwxhxwwggxxxwxxwwwwgwwxwxwxhwwwxxxxwwwgwwwwgwwhxxgwxwwgfxwgwxwxghvxwxxxwxfwwxfwgwwxgwwxwxggvwwxuvgwxwxwxwxvwvxxwhxvwwxfwwxwxwwwwvwxwwgwhxwxwxwxxgvwxwwxwxwxwxwwffxwwfwwwggwfhwgggwvxVgwxwwggwwggvvwfwuxwwXgwgxwxghwxwgwWgfwgwfwxgwvxxwgwgxwxghwxwgggwxwxxwwhwwxwwwxwxwxxwgwxwwvgwxwwxxwwgwgxxghwwhwwwxwhxvxwxwwwwwhwxxxxxwwwwwxwxwxwwwxxxxwwxwxxxxwwwwhxxhxxwxxfwggvwgfhxwxgVwxwwhhgxwgwhwwggxwhxgwwwWxwwxgxxxxggwwwwwwxxwhxhwgxxhwxwxwghhggxxhgxxwwxwxxxxxwXwfxxxwxxwxxgwwgvxwgxwxxwwxgwwhhggvwwwvxwxwwwxxxwwxwxxxwwxvwxxxgxxxwxwwxxxxxxwwwxxxhwwwxxgwuwwhxwwwgwwxxwxxwwgwvxgwxwwwxxggwwvvwwxvxwwvwwwwxwxxwxxwwwVvuxwwwwwxxxggxfvvgwwggwwvxxfwwgwxxxwxgvxwxwxgxxxxfvweuvwwwwwxwxxwxwwwwxxxxxxxwxxwxwxwgvwgwWvwwwwvgxgwxxwxhwxwxxwwwxxxvffwggwwgwvxgxgwwwwvgwggwwwhwvvwwxwxvxxxwxxwxwvvfvwwwwVwuwvxgwwgwxwwxgxxxxwxxwxxxwfgwfwwwwxxwgvxgwvghwgwwwwwvxwvxxxxwwxwxwxwwgwwxwvvwgvgwwxxxwwvxxwwwxxwxxxwwfwvwgwwwwwhhwxwwxxwwwxxxwxwwwxxwxxwvvvfvgwwffwwwwvwvxxxxhxwhwwwwwxxwwxfvvvwfvfwwwwwxwwxxvxxhgxwwxxxwxxwxggfwxwwgwwwwxwxwvwhxxwhvhwxhfxwxxxxxxxxxxwxwfwwwxwhvgghgxxwxwxwxxwwxxxxwxwxxwxwwxvfgfwwxwwxxxwgwwhxxwwxwxwxxwxxxwwxxwggwhwxxwxwgwwwxxwwxwxegwxwwwwwwxgvwwwwwwwwwwwwwwxxvwhxwxWvvgvwvfvvvguwwwwwxgwgxwwvwfwwwxxgwwxgxxwxxxwgvvwwwwvwwwvvgwgwwxwwxwwxwwwwxwxgghwwxxxvwgwwvuvwwgvwwwgxwwwwwwwwwwwwwwwgxxwwxvwhxwgvgwwwfgXxhgvvxwxwvgwxwwxwwWwwxxxwxwgfwxggfwvwwxwwgwgwwxfwgwxxwgvvvhwvgwwvxxVwwwxhwwvwwwwggwgwxgvvwxwWfvwwgwwxxxwvxxgwwxxxxwxgvvwgwxvwwwxxwfwgwwwxgwwwxwwwwwwwvwxxwxwxwwxxvwwgwuvwwwwvWvwwfwxwgwxwwwxxwwwxwwvwfwwwwfuvwwwwgvfxwwxvhwxwwwwwwwxxwxxwhxxweuvwxwwvwvgwgwgvvfxwvwufwwxwwgwwwxxxxxwgxxwxfeuwwvXwwvgwgwvgwwwvxwwhwwxxxwxxxwxxxwwvwVwxwwwwxwwxxgwvxxxwwxwwhwvvwxxxxxwxxwxwxwxxxxfwgwwwwvxxxwgwvxwwwwwwwwxwgwxwwwwxwxxfwgVwxxwvgxwxvgwwxxwxwwwxxxwxgwvxxxxwwwxvgwwwwxwxgwwwwwwwwwwxwwwxxxvxwwwxgwvxvwwxwxXvgvwwfvwxxxxxxxxwwxhwwwxxwwxhwwxhwvwhwwhwxwwwwwwwwxwwwwwxxwwwxxfxxwxxxxhvxfxwwxwwxwgfwwwwwwxxxxgwxxhxwvgfgxwvxvxwwwxxxxxwxxwwwxhxxvxxxwxwxhwwgUVwxggwfwvxxxwxwhxxhwxwxxwwwxxwgxxxxxxXvgwxxxfwgxhxhwwwhwxxxxhvwxxwwwwxxhxxwwxxwxxxwxyhxwxxgwwfwwwxwwwwwwxxxwhvxwwwwxxwwxwwgwwxwxwxwwxxwxxxxwwxxhvwxwwxwwwxxxwwwxxxwfwwfwwwwwwxxgfvwwwwwwwxxwwxxwwwxwxfvwwgwwhwxxwwxhwxwwwxwwxwxxwvggwwxUuvhwvwwwwwwwxgwwwvvwffwxxxxxxxxwxxxwwffwwxxxxwwxxhwxgxvwwwwxxhxxwgwgwwwwwxxxxxgwwxwxxhhwxwwwwxxxxxwxxxxgwwwhwxxwxwxvxwhgwxxxhxwxwwxxxxxwgwwxxxxUfewxwvwwgwxwwwwxxwwhhxxxxwxxxxwwxxxxxxxfwwwwwwwxxxxxxtwwwwwxxwwwxwwwxwxxxwwwxwgXwhwwxwxwxfvwwwvvwwwwxwggvxwhgdxxwwvwfwwwwwxwwfwwwwhwxwgvwxwwxwwwwvgwvwwwwxxwwwwWwxwwwwvgxxvgwwwvwwwwxwfdgxwxvxxwwfwwwwxxxwwxwhwxxwxwxwwgwwvxwwwwvwVgwwwxwwwxwgGhwxgwxvvgwwgxxwxfgewwwwgwgwwwwwvgwwwxwxwxxwVwvwgwwwxxxxxggWwxwxxwwxxggVgwwwwxgfwwwxwxwGwvgwxxxvxwxxxgvwxwwvwxwwwxwvvgwxwxvwwwwwwxxwxwwxWwhxgwwxxwwwgvwwggwwwfgwwwxxxxwgvwxwxxxwhxxxwxxxgWwwgwwvwgwxgvfwwgwvwxxwwwwwxxwxxxwxwxwxwwxvfwwvwwwxwxxxgwwfxxxvxxwwwvvwxvwxxwwxxxxxVfvwwwwwhwxwvfgxgwwgxxwwwwwwxwwxwwxxxvgewgxwwxxwggwxhhxgwgwhwwxwxxwwhwwxwxxwwwvwwwwfhxxgwgvwxwxwhxwwwwxhxwxxwvwwwxwxwxxeggewxwxwxxwwwxwwxwxxwwwgxwxwwxxwxvwwxwwwxwwxxvwxgxwwwwxxwwxxxxwxxxsgwwfvwfwwvgvvhwgvvggwwwwfvvhgwwwvwwggwvhwvgvwxfvxwfvwwwffwwfvgfwvgvffwwwgwwvwvwvvvwvGvhWvvwwxwwgvwghwwxxwxwwfewguwvwVewfvvVwvgvwwVuvxwwwwxwwwVvvxxxwvxhvwfxxwwxwwvfvfgVvwxwwfvvgvfvvwwwwwvwwwwwvxxvxwwwwwgfwvvwwwxxggfvhvWewwWvwwwwgvggvgwgvfvwgwgwgugwwWuwwFwVxxww6tuWwwwwggwxxxgvggwwwgwgwvwwwvgvwgvghvWfguwhwwvwxwfgwwgwwxwxhWvwwggghvwgwwwfgwvvwfvwgwxvVdvVxxwvxwwwxXguffwxgvxwwwvxxwffgvxxxgwwwwwxwwwwgvgwwwwwxwwvwgWwvwwwwwvwwwwwhwwwwvwwvgvwwvvwgvxweuvwgwwwvvxfgvwwwwfutwghwvhfgvwwxxgwvhwwxwhwwwxxggvwuwvwvuwxxxwwgvfwggwwwwvvfgxwxwwxwxxxwxgvwxxxxwvfggwgvgwwwvgesuvxgvguwwWwwxwgvxvgwwwwgvwgxgwgwwhwggWVwwvVvgwwxvvwgwwwxvgwwwvvvxwwvwxwxxxwvwgfhghvvhfwwxwgggwwxgwughwwefwgggwfwgvghfwfgvvwwxxwhwwwwxgxghwxwwxxwwwwwwgwwwgwxwwwffgvwxwwxwvgxvwwwwwwwwxwgwxhwwwwxxxgFvvgxhwwvxwgwhwwffhewghgxwwhxvwwwxwgwhggffwhwwwwwxXxwwxwwwwwwxgugfhuwxwwwxwgvwwxwwvwwxwwxxvggwgvwwfwwgwwvwwghgwxwgggwwgvhwxwvwggwvwwwhxwxwwwxxffffWWewwwVvwxwFfggwewFfvfgwwgwvwwfgwwwwwfwwxggwwfvvxwxwvxxwwWwwwwwvwwwwwggwwgwwgwgWxgwwwwwwxgxwxwxvvxxxxxwwwwxxwuwwwfwwgwwwwwwvvfvfgwwVuffgxgwevwxgwvwwwxwwwxwxwwwvxxwgvwwxVwewwWwvwgFfwvvwxFfvwwwgvgvvxgwxgxwwgWgwxwwxWwwxxhgggwxwggxfvggwgwwvVwvXwxgwggwwhggWwwgwwxwwgwwxXxgwxhhvhgwgxxwwwgggfwvwwwvxxfVwxxxggwwgwwxwfvxwxwhwxxhgwwwwxwxwgwwwwwwwwwwwwwgwvvXhgvwwwwxxwvxwxguvwxwhgxwwwwvewvfhvwwvgVxvuwxWvwwwwgwwwxwwwwwgwxxwggvxxxwxxxwxwwwfgwvfwwgwvxwwwwffvxwwgwxwwxwxwfwwwgxwxxxwwwhwwhwxghwxwwWwwVvwfvfWgwwWwwwwwgwwxgxhgwwwwwxxxxwvwwhwxhxwxvwxwxxvwgfvgwwwguwvwwwXgvwwhxWxvxgwwwwwwxxwwwwwwxhxgwwxxwfffwwwwxWwvwwwxgVvwhxxhvXwwwwggwxwxxhxxwwhwwhgwhwwwxwvwwwwwxxwwwxxwxwwgvgwhwwgggxwwwxxxxwxgxgxwhgggXxwwwwwgfwwwggwhwxxvvxhxxxxwwvwxxxxwwghwwxxwxxxxwwwwwxxwxwwxwxxwWwwxgwwwxwxwhhwwxwwxwwxxwwxxwvxxxgwwwwwgwxwvwxwwgwxvwxvgwwxwwwwhwwhvgwwwxfvvwwugWdvVwgffvwhwwvwwwxxgwgWefwwhvwwvvfwgwvwwwwxvwvxxhwwgwwwvxwvgxwvwwxwgfwgwwhfvxwxvhvwvwxgxwxxwwgvxwxhwffvfvfwvvxwwwwgfvgwxwgwxwxwwwvwgwvwgwwwxxwhwgwwwwxxxxxwxwwgggwwhwwfxvewwwxggwwghwgwwwwwwfwfgfwxwwwgfvwwvxwwvxwxxxwgfgxwxVvuwWfuvwwwwwwXwwwvxxhwEgvgwwfgwxwwwhwggvfxgxgxxwhhxVgvgWwwwvwwxgfwfxwwwwgwwgfwxwxvxwxxvwxwwxxwvwEfuwwfvwwgxhwvwvggxgwvwgxwxwwwxvxxxwgwxWhgwhwxxwvgwwwwgxwvwwfxwgwgvxxxgwvwwxwwvxxhxxxxwwWdVwwwwwwxwwvxgwwxhwgwxwwxxgwxgxgwwwxxwxxxwxwwwxwwwwwwwvwwwwwwxwxwxwwxgwwxxxfwwwxhwwwxwxxgwxxvvwxuvvwvuwvwhxwxgvvwwxhxwwwvwwxwxgxwwwwxwxwxhwwvxwgvxwegvvggwwwxgwwgwwwgxwgwxwxxxgvvxxxwxgxxwxxxxgxhwxxxxxwwVfvwgWufxxwxwxhwggvvxhxgxxgxxxxwhgxwfwwxxwxgxxxwwxxgwwxwgvgxxxwfwwwxxxwvxwwwwwxwxwwxwxwwwwxvwxxgwgxwxwgwxwxwgwwhwwwxxwhxwxxwxwwxxwxhwxxxxxtwwwwwfvwvgwwwwwwwwgvxwwfggxwwwxwwgwwwxwwwwUwvxwwwvwwvwgwewxvWvgwgggwgwgggwwwwwfwvvwvTvWwvxvwwvgxfwwwwwwwwxwxxhwvwwwwwgffwvwwUvwxfwwgxwwwvvwxfwwwxvxxwwvdvWwvwgwwxvvvfhwwvgwxxwwvvxwvxwwvxwwwxwxwxwwwwvwxxgfvgwvwwwgfgwfhwVvggwgwwvvwfwxgvuxwuxUwgxwwwxwxxwwxwwwgwxwwggfgwxhgwxwggvgxgWgggwggvfwwvfwghwwxxXwgvvghxwxhwwxwgvwvwxxUwvhwegfxwwwwwxgxxxwvxxgwxwxwwwxhxxwefwguvwxgwxxwwgwfgwXwgwgwwwwwwwwwxhwgwxwwwhxwwvwgvgvxfvggfvwggxfvwhvwxgffwwxwwxwfwxwwxxwxwwwvfvgxWgwgvwgfwwghwwgwwwxwwvwwxwwxwwwwxgwxwxxwwfuwwwfvxxfwwwhgxwvxvvwxxwwwwwwxwwwxwggwxxvwvwwvvxvwvvxxwwwvwxggxwgwvxwfhvxvwxwwwfewgxwFvvxwwfvgwgfvxvxggwxxwUvwxgxhxwxxxwxxxxxxxxwVwhwvwwwwwxxhvWffvwgwwhwwwgwvxxxvxwxwwxwwgwwxevexxxxwxghwwhvwwwwxxwwhwwxwwxxxvxwgwxwxxxwwxwxwwxhgxwwwwwwwwwwwwxxxhxwwgwxwwxwxxxxxgfxgwvwxwxxwxxxhfgwwxgwwxxwwhWxgxgvwxwwwwgWgwwwwwwwwwxwwxwwwwwwxwxwxxgxwxwxwwwfvgwwwwxvwvxxwxwwxxwwxxgwhwxxxxvwwwwfvvxwwwgwxxxwvxwwwxwwwwwwwxwgwgwxXwxwwxwwxgEVvxxwxwxxhwxgwxxwgxhxxwxwxwhhfgwwxwwxxwwwWxxxwxxwwwwxxwxxwwxxwxwxwwxxxxfggwwwxvvxwwwxwxwwwxwwwwggwxxwwxwxwxxxxxwwwwwvxuxwwwwwwwwwvwxvwhxxwxxwwxxxwxwwwwwgwwxwwxvwgxwxwwwwxxwxwwgwwxxxwxwwwwxwxwwwwvwvxxwwxxxvwwwxxxwwxvxxwWgwgvwwgvgxffvWwxwwgwwwwwwxxwhxxxwxwxgvwwwxxxwxwxwhwwxgwwxxwxhwwxxwwwxwxwgxwwwwwxwwwhxxxxwgxxxxxxxwwwwwxxwxxxwwwwwggwxxwwxxwxxxxgxfVvgwxxxxxwxwWxwxxwwxxwwxxhxxxxwwwwwwwwxxxxxxxufwwfwwgxgvgwwwxwwxwxwgwwxvxxwwxwggxgwvgwwfwvwgwgwwxvvwxwwwvwxwggwwwxwwwwxwgwuwxxVwwvwwwwxgxwwvwwgwvxwhxuwwgwwwwwwwxvwwxxuvxgvwxgwvxwxvxwhgwxvuwxgvxwxxwxxhwgvwvgwwWuwewgwwwgwwwwwwwxfggewwwxwgwwxwxwwgfVggxwggwgwgwwwwwxxxvwwxwfwvwwwgvwxwwxxxxwfgfVvvvwwwvvwwwwwwxwgxvwvgghxwwxwwwwwwgwwxxwVwvwwgwxwwwwxxwwvhwwwwugxfwwxwxhwwhwwxwwwwxwguwwxgwwwvxxwwxgvwwgwxxxwwxvvggvxwwgwwwwwwxxwxxvvvwxwwxxxwxwxvvwwwwwwwhwwwwwwxxxwwgwwwwhwxxxwxxwggxwxwxxxxVvvwvxgvxwwwWwwwxwwxwwwwxxxwxwxxwxxxxwgVWwwgwwwwxwgwxwxxxgwgwxwgwwxxxxwxwxxxxxgwwwwwwwwwxwwwwxwxxxwvwxxxxwxwwxwwxxxxwxxfgVfvxwxwwwxfxgwwxxxgxgxwxxwwxgxvwwxgwgvwwxxwwwxwwwxwxwxxwxxxugfwWwffgwxffWwgxxwxvwwwwfwwwvwwwwxxfvwwwwgwxgvxgxfvfvfwfwgWfwVfvgvgwxwwwwgvvwwgwggvwfuwxVfugfhwVvwxgwgvgwwxwwVvuvgvwwwgwWvggwgwgwxgvxhvxwxwwvwvxvfgwvwxwwvxxxwwxwhxuvvfvfwfvvwewgvvvwwwwwxxwwwxwvwvwfvhvwwwgwgwvwxwwwwxxwxwxgwwxvgwxgVVVwewwgwvxwwwgfwgggxwggfggwxvvwwwxwxguwhWggwwxwwwhgvgxgwwhfffwgwggwgwwwwxgwwwwxxwgwwhggwwhgwwwgwgwgwxxvghgxgxfffffvwVfwwgwwvgfwxgwvwwxwxxxxgfwvxvwwwgxxxwvwxwxgwxxxhwwgwwgwgwwwgwwvvgwvwgwwxwwxwwwhwvxwwwwxhwgxwwwxvwwwvfvuwffVgwgvvwvxvfwgwvwvwvxvgwxxvvuuvvwwwwwwxwxgwwxxfffwfvvwvvhwgfwxgwwwhxwWwgfvvvxwwwfwwhwxxxxwxwxwxwggfefXvgvhvwwXgvvxvhwwwggxgwxveewwwfgwwwxwwwxwwwwwwwwvveuguvgvwwhwvwxvgwwwwwwwxxwwwwwvvwvgfgwvwxwwxvwwwwvwxxffVVvewfgvwwgggfwxwwwwwwxgwWggvwwhxxwxgxwxwxxxxxwhxgwxxwffgwgwvhgwWggwhwwwxxwwWxghxxwxwwwwhwwwgwwhwhxwwguwxggwvwXwwwgwwxwxwhgwgwxwwxwwxvwwxwxwxxxxwwxgwxvwwwvwvxgwwwxwgggwgwwxxwxwwwxvxwwxwxewwgfwxwwwfwwwwwxxwWghwwwxxwwwxxwwvwghxwxfwxxxwwwggvwWgwwvwwwwwwxwwfwwxwwwgvfwwgwvxwwevgxxxxwxxwwwgwWwvwwxggwwwxgwwwwwwwxwwfvxwxgwwxwxwxxwgwfwwfvwwvwgwwxxwxwevgxwxwwwwxxxxxxxgwgxVvgwgwwewwvggwhwfwfwgwvwxgwwgxguwwwwwwWxxwxxwwwxwgvxwgwwgwhwWgvgwxwwxwxxwwgwxxxgwxxwwxxgwwvwxwwwwxxhxwxxxhxWvwfgwwvwwwwwwwwxhwvxwwxxwwWwxxxxxxvwwgxwwxwxwwwwxwxxxwwxwwvvxxxhwxxxxxgwwxffhvwVfvwhwWxwwxwwxvxwxwwvwwwxwwwwwxxxwwxxxxgwgwwxwvwgwggwwwwwhwhxgwwwwwwxxhxwxxxxxwwxwwwwwwwwwwxfwgxxxxhwxgfwggfvwxxhxxxwwwwhgxxwxxxxwwwwwwgxwxwfvwwwxxWxfwwwwwwwwyxxwxxhwxxxxxwxgwgvgVvvwgfwwuxwxfwgxhWxwxwwxwxxxwxgwwvxxwggwxxwxggwwwwwxxwxxxwwwwxxwwxxxxwxxwwhxxxfwfxwgvWwwwxvwwwxwhwhhwvwxwwxxxxwwwxxwxxxwxxwxwxwxxwhwvwwxxhxwxxxxxhxxxxgvwxwuwxgfgwxvxvxxwvxxgggwxfvuxwuxuwwwxggxwfwgfvvwxxwwwgvxxggVwwwwfwwffgwwweefhxvwvvwgvwvfwwvwwxwxgfvxwwwxwxxhwxhfwwwwxwvwhfuvhwwwxhwxggwwxwxxwxxxwxxxvwgwfwvwxxxuufhwvwvwhwxhwvwwwwxwwwxxxwxwxxhvwxxgwwvwwwfvvwggXwvhvgxwwwweghwfvfwWwvxgwwwwhxggvwgvxhgxxwgwwwwxwfwwgvwxwhwgxwxgwwxxwfwwwggfvwwwwhxgwxwwwhxwxxhhxxxxfvxwfvwwfwwwwwwwxgxwxxxxxxwVvxhwwwwxxxgxwxwwxxxwvvwwwgwwwgxxwvwwwhwfxhxhxwxwwgxhwxwwxxxxxxwxwxxwxwgfwxgwfwxggwvvgwwwwxxggxgvvwgwwwwwwfxwxxhxwwggwvvwwvxwwwvwwxxwgxgxxxwgvxwwwwxxxxxxxwwhgxxwwggxfwwwwwwwvwwhwxxxwxgwvwggwwwwxxwxxgxwxxxwxwgwxwhwwxxwwxgwxgwWxxxxwwwwwxwgwgxvhxxxgwxxwvvvvvgwwvevvxwwwwWwwxwxVvwvvxwxgxwxxxwxxhxxxwfwvgWvxxvwwwxgwhxfxxxwxvxwwgwgxxxxxgwgxwxwxevvgwwvwxxwwhwgxgxxwxwgwgxwwxxwxhxgwhxxxxvwvwwwxxgxxxgxXwwxwwxwwwxwxxwxwxxxyffwwgvwvwvwwwxwvgwgwwgwgwwxwxfwwwvgwwwwgvvwwwwgTvvgefvfwwVewfvwgfuvwgvwgwVewUvgwgvwwVvwgfvwwggwWfwwfwhwuwwwvwwvwwvwwvvgwwxgwwwwwhwwwvgwwwxwxwfvwwgwxvwwwgwgvffweuvvvwwgvwgfuvgvWffvwwwxwgvvwgwgugwwwwgwvwwwgfwhgwwwwwwgwvggwwvwwgfVvgwwwgvgvfvvwgwgwwwwgwgxvwvwfwgvgvwgvwgvgwggwgvwevwgfvwwvvwWfevwwwwwfvwWwWWVfvwxvgfVvwvwwhHffvvGxWHewgWVggwwvwwwwwgwwxwxwgvgwwwwwgwwwvxgggvwwxwhwwwwwhwgwwwwWvxhwwxxfvwgvWwguggwxgwffvWwGWdwwhgwvwwugwgwxWwwXhewwwwgfwwwvwwvwvwwwwwwxwwwwwxxgvwxxwwwwvwwvwwxwxwwwwwwxxxwxwvgvevfvvwwgvwVwvwggvgvwuwgxVgvffvgwxxwwxgvwvxxhhgxwxggwwvwwxwwgwwwwxwwvwvwwfwwwgvwwwwxxwwgxwwxxxhwxwwwxggwwvwxguwwwvwxwxxwwvfwwWxtwwxvgvvvvvwwgwvxgheXvgvhhwgfwvgwgeVuwwwwwwwwwwxxwwwwvwwvvwwgwwwwhwxxwwxwwhwwxwwgwwwwgxxxxxfvwgvvvgvuwwwggWevghxfhwWhwgugfvwwwgfxxxwhvxxgXvwhwwgwwxwxwwxxvxwwxwwvwwwwxwxwxhwxwwwxvxxgwwwwxwgwggwfvwwgwwgXwxxgwxwgwwwhfxvwvwwxfwhwgwwggvvwxxhuvtwwwfwwhvgvxwxfwvwvwwwugwwwwxwwxfwwwgxwwwggwgwfxfwwwwgvwvvvWvvxwfvggwwwgvwhwgwvfgwwxgwxvxgwfxwwxvwwwwwxffvgwwvwvxwGUggwwgvvvwxwxggwgwwwvxxwfvfwwwwhwwxgvwgwffvfvgwvwwuwwwfvvwwwwgwxwwuwvfvvwvgfwvwwvwwwwwxgvwwvwwfgwwxegvwvWfggvwGfwWwfwwwwwwxxwwfFuuggxvgwxVvwwwxxxvxxwxxxxwfwxgvxgwgwwvwxgggvwwxwwwwvwwwggwwvwhwxvxwwwxwxWgwvwxgxhwxxwxwfgwfvwxwvwvwxffwxxggwwxwwVUwgwwwwwwwwwwxwxxxwxxhwWxvwwgwwwvgvwvwxvwwwvgwwvwfwwvwwvxwggwwuwwfxgxwwgwxwwwvxwvxufvwgVwwgfwwwwgwwwfuwgxxwVvWwxwwwwwgfuwgxxgwwhwxxwWvfwxfxwxwgvvgxgwgwwwwwggvwvwwwwxvwwwxwxwxwwwWvwgghwwwxgvhvVwgwxwgwfhwhhwudvgvhxgwxxxwxvHwgHVwxwwwwfuvxwwwwwwwgvgwwgWxgWgwvxwwvvggwvwwvxwwfwwxwwhwwwvgggwxwwwxVwvgwgXwwwxxwvwwxwxgghwwxwhwwxxxxxgxwwwgvwwvxwxvwwxwxxwxwwxxhgwwwxwxfwwwwxgxxgxxhwxxxhxVgvxvxxgwxxxwwwwwwwWxXgVxwwgwvxggwfwxwwhwwwwwwxghwwgxgwvhwxwxwwwxxwgwxwwxgwvwvxwxwfhvfxwwvwxwxhwwtwwfwwewwxuxwegwwwfvwgwvxewwfffhfvwvggwwgwwxwhwuwxgeUvwwWfvveewxwwVuxwwvwUwhfgfwWwvwxxwwwwvgwwxxwwwwUvfgvwfxvwxffvwwwwwvhwfWexevuwWwvwwxwfwwggxwxxxwhxxevvuvewwwgwfwuvwwvfwgvwwxgwwfvvfwwgwwhvwxwxwwwwwgwwvxWfwwwwvfwdgwwEudhvFVxgxwwfvvxgvgvWvegggVegwhwxvwgvgwwxwxwwxxgffxgwgwfuvwhWfwwwxwvxwwwuvwxhhwwwwuGwwvwwwwxwxwwwgxhwwwxxwxwvwweefgvwwwwgwwvuvwhwwwvgwxhhxevughggxwwxhxwWwxgwHwvxgwwwwxvwwvWgfwxwxvwwxvwvwwgvggwwxvwwwggwwggwvxwwwwwwwwwwgwvewhwwtvwwvgfuxggvvxwgVwvwvWwxwwxggwVvuwwvwxwwvvwxxwwxxxwwxvgfwfWfwgwxwxfwxwwwwxxwxwwgwvwwwwxwxxwxxwgwwxwffgdtvwWwwvxwwfvgwWggvgxwwxgvgwwvwwXfxwwwgWVvvwhgxwgwfwwweufwfwxwwwwfxgwwgwwgwwwuhwfwgwgwwwggfwwwxwwxwwwwwwuwVfvvwVvxwxwxfwwwXwwgwxxwxwgffxXghwgwhxhwwwhwWgwxxxxwxwvwvVfvwwhxwwxwwvxgxhwwwwwwwxwxwgvwxxgwxwhwxwhwwxwxxxVvexWwwffxxxwxhxgxwhXfhwvhxwwhhxwxgffhxvhhxvhwxwwgxvwwvfWvvwxvxwwwwxxfvwfWwxxwxwwwxwgwxwwwwuVVwwwxfwwggfvvwvwvwvwVwxgwwwggwxwwwwgwfwvuwxwwfuevvwvggvwewvxvwwwwwfxwwvvWfwVwhgvtwvwvwWuvwwwvvxwwwvwFwvwwfwwgwgwewwfwwxxwvgwwwvvvvgwwwfffhwxwwwxwxxwtwwewwfwwwxwwfwwwvvvwwwwwwwwgevggxwvwgwwwdwwvvwwggvwwwwgwwwvwWfvwxvfwwhwgfvggxwvwWfwgwwvwwxwxhFgvghxwwwwwggWxwvwxggwwgwwxwwwwvgwxhwfgwxxwfgwwgwggwwghXwwfggxwhxwgwhwgwWfwwvVwwwxwwewwgwxwwwwwwwxwegvwwxwwwxWxghVxwwwhwwwwxxxgwwwvwwwxwxvvfvgwwgwxwgwvvwwvwgwxxgxfxwwuwwxghwxwwwwVvwwgfwfwwxwgggVwwxvtxxxwxwgvgwvwwwvxhwwxxwxvxxxxwwffUvwwuxvwwgvxwwvxwwwwwwwwxwxfwgxxwxxhwvxxxvggvwwffvwxhfvUgwxwvwxwgwxvvvvgwxwgwwwwwwwwwgxwxwwwwwxxfvvwfwwxfwwwwwtwgvvwwwwwggwwwwwgwgwxxwwwwxwWfwwwwwwwwhFwfhxxxgwwwxgxxVgvwwwxhxxfwhwwhxvwxxxxfwwxwwwxxxxwhxwwffwxxxwvwxwhxwgxgxfxxvhxhgfxxxfvwwxgxgwxwWxwgwgWgwxwwwXxhxwwwgwxxwxwvwwgxhXwxxwwuwwghxgwwwxgwwxxxvwwxwwxxhwwgwwxvxwwwwxwwwwwxxxwwhxwxwxhxxxwxxwwxgwwwhwwvhgwwvfwwgvwwxxwwwxvwwwgwxwwxgxxvxwxxxwxwxxgwxwwwwwgwwxwwvwxxwwwwwwwxwwgvwhwwwxwvwxxxwwxwxwxwxxxwxvxwfwwxwgwfhggwwvxwgwvwwvxwxhxxvwwwwwwxwxwwwwxwgvwwwwgwfhwhxxxgwwxwxxwwwggwxgwvxgwwvgxxxxxxgxxxxwxxwwwxxwwwxggwwxxxwxxhxwhhwwxgwxvwwwggxvwwxxghhhxxhxhxwwwwwwwxwvxwgwwxwxxhxxxxxxgwwxxgxhwgxxxxxxxwxxxxvwwwwgvgwvwwxxwxwhhxxxxwxwxxxxwxwwgxxwhggwxxxwwhgwxwhwwwwgwwxgwxwxxxxwxwwhxwxxxxxxxxxwxwwxwwxvxgwxgwxvwxxxwxgxxgxwwxwwhxvxxwwxhgxxwvwxwxhgwvxwwwgwxxgxwwgxwxgxxgxxwxwxxxxxwwxxwxxxvxwxxxwwxxvgwwvgxvwxhwxwwhxwwxwwwxwhxwxxxxwxxwxwwwgxxxwxxggxxxwhgxwxwxwxxxxxxxxxxxwwwxwxxgwxwwwxxxhhhxxxxgwxxxwhxvxxwwwxxxgwwxwwxxxwxwgxxxxxhxxxxxxxxxhxxxwwwwwwxxwxwxxhxwwxxxxwxwwwwgwvgwwwxwwgxxwwxxwwvwwhvgwgvwxwwvvgxxgwvwvgvwwwwxwvxvgwwxxwxwhwvwxwxwwwwwwwxxwxxxhwwwwvwwxwwwwwxwvwxxxwwwwwfwwwwwwxxWxwxxxxvxgvwfgwwxwxxwwwwwwxwwxWuxvxvvxxxwwxwgwxxxwwvhgTEwvwgwwwxwgvwwwwwwwxwgvwgvwwwxxxwwwxhwwxxgvgwwggxwvwwwhwwxxxxvxgvwwxwxgwxxwwxwwxxwxwvvggvfxwwwwwwwwxwxwxxgwwwgwhxwwwxwxxhvwgxwhxfgwgwgwxxxwwwwwxxxwwwwxxvxvxhvvwwxvvgxvwxwffwwwgvwxxgxwwwgvvwxwwwwwxwwxxwwwwgvwwghwwwwwwxxxwwwwwwwwwxwxwxwwwffvVufgvvwwwxwxwwwwwhwxwxwwwvvgwwvwhxwwxxxwwwvwvwwwfvwxxxvxwvwwwwwxxvwxxwwxffvwggxxwgvxhxwxxwwxxxwwwwwwxxwxxxxxxxxwwxxxwgxxxwhwxwxxxxwwwxgxwxxwwxxwxwwwwxVefvvhwhwwxxwxwxvgwwxwwwwwwxxwxgxxwxxwxxxwwxwwwxwwwxxxxxwxxxwxxxwxwwxxdwffwvfwvxvvVfgwvwwxvggwvwwfvvvvwwwxfwwvgwwwwwxgwvxxfgwfffWvvVwfwegwwvgggwgvvxxwwwvvwfgvwfvxugvwVvwwxwgwwwwwwfvvwwWTwwgwfvvgwwvgwgxfwwwwgvvwugvwfwwwvxhfwwwxugwwwwuwewevevfvwwwfwvwwwvfwxUwwwvvvwfvwuwwwwwxvwwvvwwwvwxgvwggfVewgfVwfwvxeVgfVwfgFuegwwwgeVfwwgwwWwwwwxgxffwxwwwwfwgxwwxgvwfwvgfffvgwWwgfwvvwhxwwwgwggxggvggwfwfguhwwwwgwwvggfhwggwwwggwwfvvfwvwfevfwwwxevvgggwgwwwwwwxgvvwwgvwwxwgWxvuvwhgxwwwwxfwfwfvfwfgfgvgfwgwwwvhwwwvfvxwwwuwwhvgwwwwgwwvfgwhfgwwwwwefwwvgfvwfufvevvgVwwwguwvxhfwfgevfwwvxwhhhgwwxwxwxwwwwgggefvfwffuwuvgfwvwwwfgwwwxvvwwwvvxxwwwwwwwxxhwwwwwwwxxwgfwegfvetfwvgwGgvfxvxvgugwwgXEggwwuWgwwxxwwWwgwwfxxfwwfwfuuwvvvVewwwwwvvwgwwwwgVwxuwvwgvxwvxwwggxwwgxwwwvwwwwwvwffgfwfwgwwhwggwvwwwwWfwggwgggwwxwxwghwgxgwwwxwwxxwwvwwwvwfvgwwfewfgxwggwgwgwhWggwwvwxxwvvggwxxvwwwwhwwhwvxwxxvggwWwvwwwvWfgwVwwwwuwwgwgWewwwwgwwwwwhxxgvxgwWgxvwggwwhwwguwvwvwwvgevwgghwwhxvwuwvxwxwggwxvwvwxvfwvwwxvwgwwwwwwgwgwwgwwxxxwwwxwwxxwwxxwwwgxwxxwwwwwgfUvwwvgwhgfUvgwxgwvwwwwwffgggxwwwwhfwwxwwhwwxxxwxgwxvwgwwwwwxvwgwwxvxwxwwwwwxwyvwwxxwxxwxxwxvwgvwwvggwwwvxwwgwwwwwxgxxxwwwwwwwxwwwvvvwwxwgxwvwwwwwwwghwgwwwwxwggvhwxfwggwwxgwgvwwxgxwxwwwgxwwwxxwwwwVwuwgxwwhgwVvvwwhxgwvwxgggxgwxgwvgvxxhgxhwgxwgxwhgxxwwxwwfwgwwwwggwwwwwwwxwgwgwxxwwwwgwwxwwwxwwxxfvvwVvuxwgwgwwwwwxwwwwwxwwvghwwwxwwwwxhhwwgxwvwwwgxwxwwwvggwvwwgwwwxwwwwxwwwwwwxxwwwwwwxwwwwxxwfUgwwxfwvvxfwwxghwgwxxxgwvxwxxwwxxxxxxwxwwxwwwwwwwxxwxwwwwwwvxwwvvwwwxxxwwwxwxgwwwxwvwwwgwwwvvwvwwgwxhwxwvwvvwwwxwxwwgwwwgwwwxwwvwgwwwwwwwxwxwwwgwwxxwwvwxgwwxwxxxvxwhghxxwgwvxhwwwwhwxwxgwwgwhxgxxxwwwgvwxxxxxxxxxxxxxxwwwxwwwwxxvwwxxwwxwwvwwwwwwwwwwwwxwwxxwwwwwwgwxvwwwgwxxwwwwwwxwwxwxxwwvwwgwwxegfwvvwwwwwxfgwvwfvwwgvwwwwxfvvggfxwwwwgwwvgvwgvxvfVuwVuggvggvvwggvvgvugfvfwuwgwgvvWvuvgwggwgvvwwwhgwwwwwxvWvvwfvgvwvfuwwwfwfwwfvwxxwhvwvgwVgwwxvwgxgvwwxwghxxwxewgwvffwvwvwxwwgvwwwwWwwgvhwgvvvegvwwwxvxvwwwWwvwwxwgvxfwggVewvgwuwfvvwfvwuvvwwvwwwwwwfgfwWguwgwwxgxvWvvwwwxwggxwwggwwwwwufvfgfvgwwvwwwwhwwvvxgwwgfffwWgwWwvvwxwgwwwwgwwgXgvwwgwxwgffwfgvvfuwwggfvvwgwwfwwxwxwwWfvwxfwgwwwwwvvvwwwwgwwxwgwgvvggfgfxwxgwwwwwwwwgxVwhwfwwwwvwwvvvgwxwwxwwgvghwwwxwwwvwfvfwgfuwwwwwuwwegwwwwwwxxxgwggwvwvwgwwvwxhvuxwghxxwwwgwegwwvvwfxwwwwwvwwwwwgwwwxwvwwwwxxxwhxgwwxwxxxwxxwgfwvvfwwwwwxxgwfvvgwwhwxfwvVggwghwxxxgvwwVxwxfwvwwgwvwvfvvwgwwvgwwwvwvggguwwxvvugfgwwwwgwxvwgWwvwwwwxvwfffguvwwxwwwgvvwwwwWhxhhWWvwwgvhxwxxhxvwxxwxxhhwwwwxxwwwwwxwWwxxxhgWxwhhxxgwwwhxvxwfhggWvwwxgxwwwxxxwgxvxwvvwwhxgxwxwwwwxwxwxwxwwgxwwwwwfgwhwxwwvvxwgxwwxwwwghwgwvxhfxhxwgvywwvwwwwvvwgwwwwxwywwxfwwuwwgvwwwwggvgggwwwwwwwvwggxwfwfgwwwwwgwwwhxgwwgvffwwvevfwghvwggggwwxhgvgfevwVvwxwwxwfwwwvgvwwvwwxgwwwwwvwwwwvggWvwxwwxxwxwwgwgfwwwxwwvwxwwwxwxwwwgffvufwxwwvvwwwwwwwwwguwxxwwwxwwgwwvwxwwgwhwgwwwggxffgfhwvwgvwxhwwgfwxvvgwfvwwwwwwxxgwxxwWvwwwwvwwwwwfwgwgxwxwxxgggwvgwfwwwWxgwxhfWgfwxgwxgxwwwwxguwwwgxwfvwwwwggxvxxwfwvwxxxwwxxwwgfwwwxwxxfwwwwxvwvvwwxwwwgwvwwfwgxxwhvxvxxwxhwwgwwgwvwwwwxvwwwwwWwwwwxxfgwwwwvwwxvwwwxwvwxfhguwwwwwwwfxhwwwfvvvwwwwwhwvgwwgwwwwwwvvvxwwwgwxvwwwxwxxwvwwxxgwwwwvwxwxhgwvwvwwwgwwwgvgvwwgfxwwwxxxwfwwwxxgfxvxxwwgwwwwwwxwwfwfghuxwwwwwwwwwwwwxwhxwgwxwwwwwxwvgfwgxxxxWvwxxWwxvxxwgwwwxgfwhxwwwwxvwwxwwxwgwxwgwwwwxwwwwxwwxwxwggwwwxwwxgwwxwxgxwxwwxwvwvhwvgxwgxvvwwWwxfxwwxwvgxvvxgwxwxwgwwwxwwgwwxhwxwhxwgwwwwxwvwxwwwwxgvxwwxvxwwwhwwwwwgwwXxxwvhwxwwhxvwhwwxwxxwwwwhwxxxxwwwwwfugvwgwgwgvwwwgwwghwgfwvxwwgwwxwvwwgwwwxfwggwxxWwwgvhwvwgwwxwxxvwwwgxxwwwwwwxwwwwvhwxgwwxwxwfxhwwxvxwwwwwwwfwuwwwwwxwxwWxwxwgvwvxwwvxwwwvvxwwxwxwvgwwwwhwwwwwgwgvxwfgwgwwgwwxwxgvgwvfgwhwwwhWwgfhxwwwxhwxxwwwwvwwwgwxvwggwvhgxwXwwxgxwhgwwwwVVwwvxxwhgxfhgvhxggxwhgwxvwwwwwwxgwxwgwvwvwggvxxwwxwwvxxgwxhwwgwwwxWwwxwwvwwwwwxfgvxxxxwwwwwwghxwVxhxwwwvuwwghxgvwwwgvwwwgwxwgwwvwwgxxwwgxgwwxxwxwxwhwwwwwwxxwwwvwwxvfwxhxwxwvhxgxxwxvxvwwwvgvwwwxxwwwxwhggwxwwwvwewwhfwwwwxxwwwvxvwwwxxwvvwxwwvwwxghxwhgwwxgxwwxxwxwwwxwhxwwxVwWxghxxwwgxwwwwgfvxxvxwxwwxwWxxwgxxwgxxvvxwwwxxwxxxwwfgvwwhwxwxwxwxxgwgwhxxwghwxxxxwwxwxxgwwhxxxgvxxxxgxvgxwwvxwwxxxwwxwwhhhhgxwxxvwgwwxwxhxvgwhxwhwxwwxvvxgwxwwgwxxwxwwxgxgxwxxwwwwwxwwxhwxwwxhxxwwwwxwxxwxwgwxxxwgwxgxxxxvwxxxwwvxwxhwwvwxxwxxuwfwgfxwxxhfvhuWxxvwwwuxghxwwxggvxwvxgwvwwwwwwwwwxwwwwwwvwwwvgwwwwxwwxxwxxhwWwffwwwwwvgwvfxgxxvwwwwwwwwxfwvwgxxhewvvvvwwwxfvxwgxxfwwxgvwhwwugwwwwwwwxfxwwfxhgfxwgwgvwxxwwUVxwhxwgvxwxxxwxxguVwxgfwxwxwwxxxwxxxvvgxwwwwwxxxxwxvxxxxwwxwgwwvwwwvuxwwgxxwgvwwxxwxwxgvxwxxwxwvxwxfvwwwxwwwxwwwwxwxxwgwvxvxwwxxgwwxwwwwwvxwxwvfxwxxwwgwwwvxfxwwwwwwwxwxxxxwwwwwvxfxwwxxxxwwwxwxxwwwxwwwwfgVwwwwwfwwfxfwxwxwgxwxeuugxwwwxxwwwgwwwwxxvfwwfwwggxwxwxhuwxxwxggwwvwwxwxxwwxwwvfwwwwwwwwwwxwxxwvwxwhxvwwxwwxwwwxxwwwwxxwxxwxxwwxwxwxwwxwxwwwwwxVeewvwxxwhxwxWwxwvwggxgwxxxxxwxfxwvhwwwwxwgxwwvxwwwwxwwvxxvxwwfwwwwgwwggwxwvwuxwvwxwwfwxwwuvxwxwvxwwwxwxwvwvefvwwwgxwwvxwwwwwwvwgxwgwwvwgwfgwwhwwwvwwxfggvvxwxhvgwwwggwwwwwwgwwwwwwwwxwwxwgvwvwwwgwwXwwwhxwxwwvxwgUwwwwwwwgvwxwgvvvwwwwwxvwfwhwwwvwhvwgxufgxwvxwgwwhwwwwwwfxwxgVggwwwxfwvgwhwwfgwxWxwhxxwWwvXwwwhWwwgxxwwvwwwwgwwwwgWwwwwwxwwxwuxgWwwwwwWwgwgxxgwggvwwxWhWgwxxxwwggwvxwwwxwwwwgwfgwwwXwxwxhhwvxxxwgxxWxxxxfwxgxwwgxhwwxwgwwwwgxvwxWwfwfvxgWwwwxwwwvxuxwxgwwxwgwwXgfwxxwwwgwwggwxwwwwwvwwwwwvxxxxxwwwwwwwwwwwwxwwwxwhwxxwgwuxwgvfwxwwvvwwWxwwwxwwxxuwxwxwwwwfxwvxxwwwwwxwxwxewwwwwwwwwgxwwvggwwgwwwvwwwwVwxwwxgxwgwxwxwwwwwwwwewxwhxwwxwwwuvwxxxwwvwxxvxxwhxwxxvxghvwgxwxwwwwxwxxwvwwwgWgwwxwwwwwwwwwwxxxwwwgxxxWxxwxwwwxvwxhxxwxxxwxwfxxXgWxwwwwwxwhxxwxxxwwxxwwxwxxwxWxxxwwwwgwwwxxwgwxxxwhhwwwxxxwgwwwxxxxvwwhxxwwxxxwwgxfxxxwwxwxxxwxwxwwwxwxvxwwwuhwwwghWxwxvwgxwwwxwwuxwwgwxfxwxgxgwxwwwvwwvxwwxwxwwwvfwuwvgwvwxgvxwvwxgwuwgwvwuwgwwfwvxwhwwwwwgwwuwwwwxwwgxwwwvxwxwffxgwwwwxfxxgwxwwwwwxvwwwgwwwhvgxxfwwvwxuvewwwwwwwgvxwwxwwfwfxvxvwwwvvwgwhwhxvwuxvvwwhxwwgwwggwfxvwwvfgxwxgvvgfxggfxwxxwvwxxWwwxwxxxvxwwwxhxwgvwwxgxvxvwwfwwxwxwgfgfvhxfwxwwvxwhvwxxxgwgwgwxXxxxgwxhwvxwwwxwwwwwxwwwwwwxwwxhuxwghvvwvwwhxgwwwxwwwwwwwwwwwvwwxvxwwwxwvwvwwwgggwvwwgvhxgwwwgvfwhwxxgwxgwwxwwhwwgwhwxwwwwwwwwwwwwwxwXxvwwxwxhhwwxxwxvwwwxxxwwvwwwxwwwwvwhwwvxwwvwwwwxwwwvxxxwgwwxxwxhwwwwwwxxwxwwwxxfwffuvxxxwwwwwwggwvwwxgwhfvvwwgxxwhwwxvvwfwhwwxwwgxwwxxhvgvwwvxwvwxggwxxwWwwwwgwwwwwxgxvxgxwxxxhvwwwwwxwxxxwxwhxgxxwvxxxwxhwxxfwxwwwxhwWxhgwxxxxggxwxxwxwxxxwxhxvwgwxxxxwwvxwwgwwwwxxwwwxxxxwxwxgwwwxhwxxxwwwwxxxwwxxwwwvxvxxxwwwwwgxwxwwvhvxxwwvxwwgwwwwwvxwxwwwxgwxxwwxwwwxxwxxxxxgggwxwwwwvwwxhwxwxgwwwxggvxwxxwwxywwwxxwwxwwwwvvwwxwgxwxwxgxxxxxwxvggwxwwgwvwwxwwxwxwwwxxvvwwxxgwxywwwhxwwwwwhxxhwxhxwggwxwwwgxxwwwxwggvxwwwwwxvwxxxxxwwwwgwxwvwwwgwwwgxxwwxxxwfggwwwgxwwhxxwxwwggwwxhwwwwwxxxwwwxwgwwwwgwgxxwwwxxxxxvxwxxxxxgwwwwwwxwwwxxwwwwwwwgwwwwxxwwwxwxwxwxxxwxxwwvwwwxvgwxxwwwxxxvxwxxwggwxwxxxxxwxxwxxwxwxxvwwwwwxxwxwxwwxwxwxxxxwwxwwxuwwxwwwwwxxwxwwwwwwwwwwxxwwxwwwwwwwwxwxVvwwVvwggvwwwwgwwwwxxwwwxxwxwwwwwwxwwxwwxxxxxwwwwwwwwwgvwvwwwwwwwgwxwxwwwwwwwwwwxxwwvggwvvvwVufwfvggwgxwwwwwhvwwwfwfvwwvwvxwwxwwwwxvewvwgwwwggvwxwVgxwwxxwwwwwwxwwwxwwxxwwxwxwxxwxwxwvvggWwwwwwwxvWwgwwxwxxxwxxwfwwwgxxxwwwxxwgxwwwxxwxxvvvwwgefuwwgwgvvwwwwwfvggwfwwfvxxvxwwwwwwxwwxxvxwgfvvwfwwwgvwwgvfwwwwwwwgwgwgvwwwwwwwwwxwwxwfwwwwwwxwwwvvwwwwwwvvxxwwwwwwwwwxxxxwwwfwwwvvwxwwwgwxxxxwxwwwxwxwxwwwxxxwxwwVewvuvwwwwwwwxgvuwgvxwwwxxxwwwxxhwxxwhwxwfwvvwfwwxwfvwwhxwgvvgwwwwxwxwxxxxxwwhgxwwfwwgwvvwxxxxwwxxwxxwxwxxwxwwwxwxxxxxxwxwwxxwwwxfwwgxxxxxwwwgxxwxxwwwwxxxxxxxxxwxwwxxxwwxwxwwfwwxxwwxvwwwvwgfwvggwvfwhwxxwxwvxwwxxxwwwwwwwvwwwwwwwwghwwxwwxwwwwwxwwywwwxwxxwwwwxwwwwxxxxxxxxwxxxggfwhwwvwwxwhxwfwwwwwxwwwxxwwwwwxwwwwwwxwwwxwxxwwwxwwwwwwwwvvwwxxwwwxwxxxwwwwyyxwxvfgwhwvxwwwhwwfwwwwxwwxwwxwwwwwwwxxgwwwxxwwwwwgxvwxxwxgxvwxxwwxxwxxwxxxxwwwwxwvvxxwwxwxwwwxwxwyxwxyxwwwxwxxwwwwwxwwwwwxxwwwxwwxxwwxxxxwwwxwvxwwwxxgwxxwxxxwxxxgwwwgwwxxxgxwwxwxxxxxxxfwwwxvxxyxgxwxxwxxwxfwwwwwwxgxwwwxxxwxgwwgxwwwwwgxxxxxxxwxxxxxxwwwwwwwxxvxwwwwxxgxxxxxxxfwwwvxwxwwwxwwxxxxwwwwxwwxxxxfwwgwxgvVgvwwvwxwwxxwwwwwxwwwggvwwxwwghvvwwwwxwxxxgwwwgvvwwgvewvwwvgwwwwwwxgwwvwwwwfwvwxwgxxwwwwwwwwxhxxxguvggWwvgwwwwgvwvwwvwxwwvvvxwvwxxxxwgfvvvgvwewwvvxwvwwwwwwxxwwwwuwvxVxwwwxwwxwxxwwwwwxfwwgwwgwggwwwwxwWwvwwwgvwwxxxVwvwwwwxwvwgwxfwwxhxhwxxwxxxwfwwvgwwwwwwwgfwwwwgwwwxxgvvwwgwgXxwwxwxhvgwwxXwwxghwxVgvfvwwgwffwvvwxwwwxgxxggwwgxwwwxwxwwxwwwxvwxewvwVvwgwgwxwwxfvgfwwgwwgfwghwwwwgvxwwwggwxxgwvwwwxwwfxWvwgxwwwwwxxxgwwxwxxwgxvwwwxxxxvwxxwwwwxwwwevgvwwwgxwghxxwxxxxxwewwvwwxxwxwhxxwwvwgvfwhgwwwvgwwxwwxwwvgvwxwwwwwxxxxwwwxxvvvgvwwxwxwxwwwgxxxxwxxgvwxwxxxxxfwwfwwwwvwxwwwxvwwwwxwwwxwxxwfvwwxwwxwxxxwwwxwwwwxxxxwwwwfwggxwwhwxwwwwhxxgxxwwwwxgwwwwxwxwxwwxwwwxwwxguwwwWwxwwwxwwwwxwhwwxwgwwxxwxgwwxxxgwwwxfvwxgwwwxxwwxxwwwxxwxxxxxwwxxvwxwwfwwxwwfvwvhvwxfvvwwwwwwwwvwwgwwvhwvvwwwwgwwwWdfvwwwvgwggdvfwgvwgvvwxwgwvwwuVhwvgwgxxvgwgwvxxxxxwfwwvfvwvwwwxwvvwvgwvvwwvxwxwwxwwxwgwwwxhwwxwxgvwwdfwwwwwwwwdfgfxwfvxxwwgwwWwgwwwwwfxxxvwuugxwuwwwwwwwwgefvvvwffwhxvgwwwwwvvxxvgwxxwxxxxxgXfwgwgwwvfgghwvvffvhgWgehxwugwvxxwxvxwxhfgwwxwxhgwwxwwvwwufwwgvwwwxuvgxwhwxwxxwgwwwwgwwwwwxfwgxhwwwwxugwwwwwwwwgwvwwxvwwgfwvwwwwgxxxxvwwwwwvwxxwgfvwfgwvgegwfgwxxwfwwwwxwwwwxwwwxxxwwxxxgwvvwwfvgwwvwxvfvwxvwwgwxwgxwwwxwwwxwxxxxwxwxxxxxwxxvfuwvvwffwvxwgggwwfxffwwxwwvvwwxxwwxwwwwhgwxhxwxfvvwvxvwwxgvwwwwhvwwwwxxxxwxwxwxwwwgwwwwwgwwwxwwgwwwhwxxxvwxxxwwxxxhxhxvxxwxxwwwhxwgxxxwvggxxwgwwxwwwxxxwxxwxgxvXwwxwvvwwggwvfgwxwgvwwgwwxggwxxhxxxwwxgxxhhwwwxxxxxwxwwwxwwxwwxxwwxxxxvxxvwfwxwxfxwxwwwvwwfgwwxgxwwxwwwxwwwwwxfvwgwwwwewwwwWVvvwwfwffwgxxggwgwwwwxwwwxxgfhgwwwxwxxfwxwxxwwwvffgxgxwvwwwwxwwwxwwwxwgwxwxxxwxxfffwVufxwwvvwhwFdVgwvwwvgwwwwwvwwgvwxwgxvhwwwxgwwwxvwfvwwwwxhgwfxwxgWfvwwwwgwwwgfwgwwwxwxwgggxwxxvxxgvwwwwwwwgvwghffgfwxxhwwvwxgwwWgxxwhxvgggxxxxwgxxhxvwwwVuvwwwwwUeufgwwvfwvwxwwwxwwwxwwxgwwxxwxwgvxwwwgggwwwwvwwwwwwfWvwxwwvfwvvvwvgwwxvgwxwvwWwxwvwwwwVvwgwvgwwwggwxwxwwxxhwxxxhvfgvwvwvvwwxwfvfwxwwxwwxgwxwxxxxwwxwweVgxvvwwwgfvvwwwxwwhxxxwwwvwwxwxwwxxvhxxxwwwwxxfvvwwxwvwwxhwwgvgwwwuwvwvwxxwwxxwwwwwxwwwggfvwwwwwxgggwgwxgwxxxwwwxwxxxxwwxwwwwwvwwwxxwggwwxhwvwxxxxxhxhvxxwwwwxxgwxxgvvxxvwxwhwhwwwwwvxwwwgxwwxwxwxhwvxxwwxwwwxwxwwwwvggxwxvxvwxxxwxwwwwwxgwwwvwwggwxghwwwxwxwwwwwwwwwwvxwxwgwuxxxwwxwxgwgvvxwwfxggwwwwfwwwxwwwwuvxwxwwwwxvvwwwwwhvvfwwwugxvwwgvwvwgxwggwwwwwwwxwwwfgvvwwfwwwwwwwxfwvfwwvvwwvxxwxxwgwvwgxggvgwwfwwgvwxwxxvwwxxwvwvwwwwxfwvxwwxxxwxxxvwwwwwwwvwwhwwvvwwhxwwwgxhxvwxwwxwxxxxwxhwxwxxwwxhwxfwegvwvwwxfwvgwggwwvwvxxwwvxxwxfvwwwwgwwwwwwgwwvwwxfwwwxwwwwwxwwwwwwwwwwxwwwxgwwwwwxghwwgwgwwvwxxwwxxhwxxxxwwwxxxxwwvvhwwvvwvwxufvwhwwxxwwwxxwxwwxvwwwvwwfwwwufvwxwxwwvxxxwxwwxwxwxwxxxxwwxxwugfwvxgwwxxvxwxxwhxwgxxwwxxwwxxxwgwvvwwwffwwxxxgfwwxxwxxxxwwwxxgwwwxwvwwxwxwwhgxwwxwwwxxwxxwwxxwxxwxwxxfvvgwxxxxhwwgvwxxxwwwwxxhxxxxxxxwwwgwwwwwwhxwwxwxxwxxxxxwxxwxxxxxgwgxhwwwgwxxwwgxxxxwvwxwwxwggWvxwvWwgwfwwwwgwwgxxgwwwvwvwwxxvvwwxxwxxxwwvwxxwwwvwwwwxwvwwwxxvvxxfvwxxwwfwwgvwvwgevwxwwxwwxwwwwwxwxxwwxwxwwgwxvgWvhxXwvgwwwxxwvwxggwgwxvgvxwwwwxxxxgwxWfvuwgxxwwwhwghwxggxxfwwwxwxxwxxgwwwxxxxwgvwwuwwxgevwwwwxwwwxxwwwwwwwxwghxwwxvxxxwgwwgwwxxxwwgvxwwxwwwxwxvhvxgvxwwwgwwwwwxwvwwwwxgxwfwwxxwwxwxwxxwwvwwwwwwwwwwxgwvxxhwvxwvxxxwwxxvwvwwwxwvvwvwwxxxwwwxwxxxhxwxvfvwxxwxwxgxwwwxxxxwgxxxxxxwwxxxxwvwwwxwvwxxxgwvxxxxwxxxxxggwwxxxgxxxvwxxhvwhxwwwwwxwhwwxvwvwgxvwgwwxwwfxwxwxwxxwxxwwxxxxxwwwwwxxwwwgxxxwxvwwwwwgwxwwwvfwwgwWhwgwfwwxwwwxxwvxwwwwgwwgwwxwwWwvxgwvgggvwgwvwgwfwfwhwxxvwggxgxgvwwwwwgxwhxWxwwwwgvwgwgvxwwwwxwxgwgwgwwwxwwwwxwwwwgwgxxxhxvwxwwwwxxfxwvwwxgwxvwewfwWwwwwxwwxfgwuwwwxwxwwxxwwxwxxwxxwxwvvwwwwwfgWwwvggwxxxghgwwwwwxgwWfxgxvwgxxwWwwwwxxwxxxxwxggwwggwwfvwxxwxhgggwxxxWwxvhwwwwxxwxxhgwvvxgwhwxwhhhwxwxxxxwxXwwWwvwvxvwgvvwgwwwgwwwwwWwvhwwwhwxxxwxwxxwxwxgwgxwwwwwhxwwxgwgwxgxwvgwgwwwxxgwxxxwwxhwxxgwxwwwVvwghvwfgvwWfxwgxgvwhxwxghxvxwgxxwxwyxxxxwgfwwwxwwxxwxgwvwxxhwxgxhwwxwxxhxhwxxxxxxxxgwwhvxwwxvwwwfxwWwWgwwwgwxwwvxgwwwxhwxgxwghhggwwwwwxwxwwhwwuxwwwwxvxgxxvwxgxwwwxwwxwwwwwwggwwxxgwwxwgwwxxwhwwgxxxhwxwwxxxhwxgwxxxxwxxwxxwfwxwxgwwxhxhwwxwgxxhwwxhgxxwxxgwhxxxwxxwfwwhwwwwhwwgwggxxwxwvvwwxwwwxwgwwxwxxxxxxxwxfwhghxwvwwwwxwxxwxxwxwxxgxxxwgwwwggxxgxxxwwhxwxxxwwwxgwwxxxgWggvwvwXxwwwvxhxwxxxxgwvwwwwgvgxvwvxwxxxxwwgwwxxwwvwwgwwwwwwfvwxxgvxxwwgwgvvewwxwwwxwuwwwxwxxwwwwvxwwwwxwxwgxxvWggfwwWvwwwvxgwwgwwxgwwgwvwgvwwxwxwxwxxxxWgfuwhgwwwwhgxxgwxgxhxfwwwgwwwxxxwxxwxxwxxfwwvvewwvwwvvxwwxwxwwwwwwxvwwwwxwxxxwwwgwggwxwxxwgwwwxwwxwxwghvwwwxxwxggxgwxwwxwxxwwvwwfwwvxwwxwwxxxxwxwwwxwwggwxwxwwxxvvwwxxxxxxwggwvgwwwxxxxgwwxxxwxwwwhwxxwgvwwgwwxxgwwwfgxxxxwwxxwxxxwxvwwwwwwwwwgxwxvwxhxwvxxvxxwwxwxxxvwgwxwgxggwxhxxxwwwwwwxwwxxgvfwxwwwxxxxxwxxxxxxwvwgxxwxxxwxwwxwwxwwxxxwwwwxxxgxwxvwwgwfvwWwwwwwwvwwwvfwxwwwxwwxwvwwwwwvwwgwxwwgwvwgwvxfuvwvwwwwwgxwvwwwxguwuwwwggwxwxfgxwxxxwwvvwwvwvwwwgvwvgwwwwwwwwwwvxvgwwwwwwwwxxwwvvvwuvwwwvwwwwwvvgwwwwwuvwwwxwwxxwhwwxwxxxxxuvwggwwgvvfwggwvfwwgwwxxvvwwxgwvwvwWxwvgxhxxxwwwwwgwvwggvfwvWwvvwgwwxxwxwwwwxxwhwwgwvxwxhhhwggxwxfwVfwwvwwwgwwWwwwvxxwwfxvuwwwwxwwwwxwwxxwxxxxwwxvgwgvwwwwgwgvwwwwxgwwwwxwwhxwwxxwwgxxxvxxwwwxevwwfuwvfvwvgggwgxwxxgxwwxgwxvxyxxxwgwvvwwxvwwwvwxwxxwhwxhxwwwxwxhwxxwxxwxvwgxuWwvgwwwwvxwwwwxwfwxwwggwgwwhxwwxvxhvfwwvvwwhwvvwwwwwxwwvwwwwxxxxxwwxxwwgxwxxgwfwvvwwwxwwxgwxxhwxxxxhxxwxwxxxhxxxvwxxxxxhxwwxwwfwwgwxhwhxvwvwhxwhxwxxxwxhxwvwxxxxxhwvwwwuwwxwwhxxvvwwwwwwwxxxgwwwxwwwwgwwxwxxwwfwhwwxwwvwxvhxwxwxxwwxxxxvvhwwwwxwxwwwvgxxwxxgwwwwwwgWwxxwwgwxxwwwxxxggwgwgxgwwgwwggvwxxfwwxxwvgwwwxwfwwxwwwxxvxxxgfvwwgvghvwWwwwvxgwxwgwvwwwwwwwwwxxfVwfvwgwwxgwxvvwgvwxwgvwxvwwxxwxwgxwgxvwwwxfwwwgggxwwwfxxxwwwWwgwvxhwwwwgwxwxxwwxwhxvwwwgwvwgwwwwxgwwwwhxwhwxwxhgwwxwxwxxwhxwxwxxxwwhxwxfgvwwwwfwfwxvgwwxwxwxxxfwwgwvwhxwxvvxxwxxwfwvwgwwvgwwwfwwwwwxwxwxwwwxxwwwwwwwwwwwxwwwwwwwvwwwgwwvgwwwxwwxxwxxxwwgxhwxxwwwxxxxxxxxxxxxggwvwfwfwfwwxxgwwwxxxxxxwwxwwwxvwwvwwWvfwfwxwgwxwwvwwxwxwwxxwwxxwxxwxwxwxwxxwxfvvxwgvwxwwwwgwxxxxxwxxxxxxxwxxxwgwWvfwgwvxwxgwhwhxwvxwxwwwxxxwxxwwxxxxxxgwwxgwwwxwhwwxwxxxxhxwxxwxwxwwxxwxxwWfgwvwxghwwwxvvxxwxxwxwxxxxwxxwwwvwwxwwwwwhwxwwwxwwwxewwwwwgwwvwwwxwwggwwwgvwfwwvxfuwgwgvfxwwxfwwWuewvgwgwvgewwgufxvwwwwvwgvwwwwgwwwxfwwwxvxxwwxvwwwwwwwwwwfwWwwvxwvwwwwwwxwwxxxxwvwwuuwwwvxwwwuuguxhwwvwwwvwwwwvwgxvxwxxxgxxxxwxxxtvwwWvwgwwwwgfguwvwfwwxwxxvwxewfuwxxgwwxXwgwxxwxxhgwvuwvwfvwwwwwvgxgwxgwwxwwxwufWwGwwfxwxwxxWwxxwwwxwwwvwwvvwwgwvxwvvxvxwwxvvwwwwggvwxgwxwwvwwwwwwwxwvvgwgwggwwwwwhwwwgwwwxwwwxvwwwhwwVwxxwhwxXvgwwwxwhvvwwwfVwwwwwVgwwwwwwwxfvfgwxvwwhxhxhhhwgwwewwxwwxvvwwhwxxxwwgxwwvhhxvxxfxxxwxwgvwwwwvwwwwwwvxvwhxwxgwuvgvgvwwxxvwwxxxxwxfxxvvwwwgwwwwxwwwwwwxxwwxxwxwxwwwxwwxwxwwfVwwwwxxfxwwwXxxWxgwwwwxxxxwxhwhhxxwxwvvwfwWwxXxgxwwxyxwxhwwwgvhhwhgwxwxwwxxiwxwxxxwxwwwwvvwwxxxwwwvwxvwwwxxfwwwwvwxxxwwwxgwxhwwwhxvwwwwwwxwwvwxwxvxxgxxxxuwvfwgvvwVwvwwwwxwwvwwwwfvwvwwwwwwxfwwvwvgwgwwgwwwWvgvvguwvgwwgwwwWxwvvvwxxgguvwfwwxwwwgwwxgwwwwwxxvxhxxewwvvgwwvxxvuvwwwwwwwwwwwvwwfxwxwwvwwhwwxxgvwgvwxuvwhwwvgvgwwwwwwguvwwfvvwwvxwwwwwvwwwwxwwwevvvwwwgfwwwwwfwwwvwwwwgxfvwwvvfvggwVfwwwwwggwwfwwxxhgwwvgwwwwwxwwwvWgwwwwhwwgwhvfvwvwwwxWwwvhwwWvxvwgxwwxxxwegwwwwvvvwwgevwfvwvwwxwwgvwwwuwwxwxxwfwvwwxgxxvwwwgwxwwxgwvvwwwgwwggwxwwwxgwwxxwxwwwgwwwwvwxxfwvwvfgwxwxVvwwvwwwxhegvvgwxwwggwxwwwwxxxwgvgwgxvwwxwvwwwwxfgwxwxxxwwwgxhxwwxxwvvxvwwwvxxwwgffuvxxwxwvwvwwvwwwwwxwxvwwwwwwvxwuwugvffwwwwwgwwvwwwxvwwwwwwxvxwwwwwwwwxwwwggwwwwwwxwggfxxwwxxwwwgwwxwxhhwvwvhxxwxxxxfwwwwwwwxxxxhvxhhvxwwwxwwwgwhxvvwxwhwwXxwxhwxwvwgwwwwwwwgvwxfgxghvwhwvwwwwxxxwwwhxvwwwwxxxwxvwvwwwvxxwwwwwwwfxwxxwxuwwwuwhwwwvwwwgvvwgWggxgvwwvwwwwxvxwvfwgwxfwwwwxxvwwxhwgxwgewgwgwgfwwwgwwwwgwvvwwggwWggwwwwwvwvwgwwwxwxxgwhxwwxVvxuwwwwfwuwwwvgvxfvwwwwgwwgggwvxwuwvwwwwxvxxwhhwwvgggvvwffwgdgvfffgwvgwWwhgfwwwwwuwwwwxwwvxxwxwxwxxvvwwwwwwwfvwWxwvwwxgfwwwgvwvgxwwguwwwfwfwwwxxVwwgwwgwwxhxxxgwwwwvwwwwwgvwgwgwxvwhXwwxwggggwwvxwhWvxwXwxxgwxhgWhwxxxxhxufwgwwwfuwwwWfwwegwgvxxxwwxwvwwvdgvfvxwwwwwwwhggwwgwwwxfgfwguWfwxwwwwwugwwwgwvxgxwgvwxwwwhvwvxuwgwwwxXxgwwvgwvwwxwwwwwgvxwwwwuwwWvwffwgwvxxvwvvwwxwwxwwxXxwwgwgwwwwgxhwwwwwwhvxxwxwwxvhgxwwwwxhwxwxgwgwwwxwvwwxwwxfgwwwwHvvxggvgxvxwwwvxxxwwxWWwxwxvwvwvvwwwfvxgwxwxwhwvwxxgwwwwwxwxwwuwwwxxhgwgxwgwwwwgwwwfwxfwxwwhwwxvhwhwfwwxxwxgwxwxxwwvxxxwxxhvwwgwxuwwxwwxxwxwwxXxxhwxxxhvwwxwhxWwvwhxhwgwwwwxxwwwxwwwwwwxwwggvxxgxwxgwxwwwwwwxxvgxxwxwwxxwvwwwvxhgwgxxwvxvgwxgxwwwwfwvwwxxwxwvwwxwvwwgvwwwvvvgwwwwxwwwxwwxwxwwwwwwwwwwwwwwwwwwxffvwgwvwxxhwfwgxxxwxwxggvwwwwxwxwwwgwwxwwwwwwwwwwwwwwwwwxwvgwwwwxxwwwwxvwwvwgwfvwgvwwwwfwwwwVufwgxwwwwwxgwwwwvwwxwxwwvwwwfvfwfvwxwxggwwxxwwggvwwwwvxwxxwwwwhxwxxxgwwwwwggwggxxwwgwvwxwxxwwwfggwwwwgxwwwxwwwgxxwxxyvwwvwvwfvxwxggwwwxwfwwwwefuwwwwwwxxwwwxwgwwgwwwxvvwwwwwwwvvwxwxvxgwwwfwxhwwwgvxwwwfwwwwxwwwwfwxwwwwfwwwwwxwxwwwwxxwxxxwwwxxwwxxwwgwwwwxxxxwwwxwwwxxwxwwVewfvwwxxwwxfvwgvxwxxxwwggwvxwwgwxxxwxwwxfvfxwxwxwxxwxwvwxwwxwwwxwwwwvxwvvwwwwvwxxwwwvwwwxxwwxxwxxxwwwxxxxxxxwwfwwwxwwxxxxwwxxwxxxxxwwxxwwwxwxxwwffvvwwwxxxwwwxwwxwwxwwxwwgwxwwvhwwxxwvgxxwwgvwwgvwwgwgxwwwwwwxxwwwxvwwwwfwwvwwwwxwwwvwwwwwwwwwwvwwwwwwvwwwwwwwxwwwxfwgxgvegwgwgwwxwgvwwwwwwwwwwwggvgwfggwuvgwwuwhwwwgfgwwvxvwxwwwwxxwwwvvxxxwxwxwwwwwwwxwwwwhxwxxxwwwwegVwxwwgvhvvggwgvwgwxvvgwxwwwvwgvvXxwvWwegwvxwwxfgwwgvwwwvwwwwgVggwwwwvwwwvwgvwvwwwxWgvwwhgxfggwgvfwwwWhgxwhxwwwwxwwwwhwwWwwxxwwxhwwWwhhfwwwxwWhxwxxgxhwWwXXwxxxvxwwwwwggvvxwxxwvxVVgwwgvwwgvhggvxwwxwxuwggXwxxwwggVwggxwxgwwwwwwgxwwgWwwwxgwggwwWgwxwwwwxgghvwxxwxvhggxxxxxwwwwwuwwxwwgwuwwxwwvwxwxxxxwwwwwwwxxwwwxxxxxxxwwwgwgwvgwfvwvxwxxwWhxwxxxuwwwxwwwwwxhxvwxwgwwwwwwxwwgwwgwwwxwwgwwwwwxwwwwxwwwhxxwxxwwwxwwwxvwwvwxhwwxwfwefwwxwxxwhwxvwwwxxwxwwwgwxggwxxwxvgwwxuwhgfwxxxWxwwwxwxwxwxxxwxwxxhgxxxxwwwhwghwwxwxxwhxwgwXXfwxxwxwwxxwxhxwwhxxxxwgwxfwwxxhxwxwwgxVwfwxwwxxwxhxxxwwxwxgwxxwxxxgwwwvwwwxxxxwwwxxxwwxwuxwwxfwvwgwxwXxwvvwwwwwwhhwxwxxwxwxfxwxwxywwxHwwvwwfwwXvgwwhwgvfwvwxwwxwwwxwwwxgvwwxxwxgxwfwwwfgwfwwwvgvxwxwwfvvwxwwxywxxxwwwvwgwwguwwgwfgwxgwdwwfwwwwvvwwxxvxhxxxvvwxxwxwwwxwwxwXvgwwfwgwfgHwwvwwhvwwxwwwxwwgwwwwxgwxwxwxgxxwXxwwhwgwwwxgwwwhvxXwvwfwwwxwwhwhxwwxxxxwwxhwxvvwvfwvvdwwfwwxwvwuwwwwwwgwvvwxvxhwwwwxxxwxxxgxwwwwwwxwwgvxwwwwwwwwwwwxvwwxxxgxxwwwxxvgwwwwwwhhwxwwwxvvwxwwfwwgwvvwwxgvwfvvwxwxXwxwwxwwxwwwxxgwwxvwxxxgwhxghxwxwhwwxxwwfvvvxhwwwwhvxhxxwfvvxghYwxwvhwwwxxwwwwvwwxgwxxxxvwxgwhxwwwwwwwxxwwxwxxgxhwwwxwxvwwwvwxxwxwxxwxxxvwxvhxxhxwxwhwwfwxxxywxwxxxwxxwxgwwXxwwwwhwwxwhhwwwxwxwxgwxxxwwwwxgwxhwxxgwwwxxxwwxwhwwxvwxwxyxwwwwxwxxwxxwwwwhwwwwvwhwwwwxvfwwwwwfxfwvwwgwxwxwxvwwwxwwxwwwwwxfwvwgfuvhwvfvwwwwwwwwwwvfvwwwggvwxvwwxwxxfwvffgwwgwwwwxxgwwxwxwxwvwwwwwxwwwxvwwwUuefwwwxvwfvevuwwvwwwxwwwgwwxwwvvwxwxwwwwwwfwvvWgevewwfwfvwwwwwfwwwwxxggvwwvhfvwwwxxwwwwwwxwxxxgwgwfgffwvghwgwwwwwwwhwvxhxvwWwvgvvxwxhwxgxxxxxxxghfffwdVdvwvwvwvwefuwwgwvwwwwwgwgwvwwxwwwvxwxwgxwvvwxvggwfguwvwwgwfgwwwxwxwwwwwvwgvhvwwwvugvwvxwxwxwwxxwwwewvgwvvwvwwwxwvwxwxxxwhxggfvvvggwwwxgwwwwxwvxwwwwxwwxxxxweVgfvvwgwvwwhwhwwxwhgxxwwvwwghwwwwwwwxxxxwxvvvwwhvxxwwxvwxwwwwxwvwwwvwwwxwxwxwfgvwffvwxvvwhwgwxwwxwwwxxgxxxwxxwwxwwwwwgwvwwwxxvwwgwwhxwxxwxxxwwwwhxggwxhxxxxxxfvvxwgvgvxwwxuwwwwwwwhwwgvwwwwxwwwwwwwwwwgvvxxwwgvxxxxwwwxwxwwwwwwxvwwwfwwwvwwvvxxwwwvwxwwxVgvwwwwwggwwxwwggvwgwwxwwxxfwwvwwuvgwvwvwvwwvwwwwwwwxVgwwfwwwwvwwwwwhhwvxxxvvuvwgvwvxvgwxgwugwwwwwwgwgxwxwxgvxxwVgvfwfgwgwwgfvwvwwxwvwgwwwwxxvgwwwwwwxwxvwwwwgwgwgvwwgggwwwwwVwggwwvwwwwwwgxwwhwfwwwwwwgxxxxwwfwvwfxwwwwwwwggwwwwgwwxxxvgwvwgxwwxwwxhgwgvwXwXwwhxgxxggfvwwvwVwwgxxgvgwwwwwvxwwwwWvwwxxwwxxVhwwwwwwwwVvwwfvgwwvxvwwvVwggwfwwwwfgwwvwxwxwwwxwwgwgxwvvvwwfwwwxgwwxWwgwgwwwwggwgwxxxxwwwxwwxxwfwwgwwwwwvwwfwwwwwwwwwxxwfwvwwxxwwwxwwwwwxwxxxxvvwwgvwwgwwwwgfwwxxwvvwvxxwwwwxwwwxxwxxvwuwwwxxwwxuwwwwwwwwxwgwxxwwgxwwwwwwgxwwwxVgvghwgxxxxxwVwwgwxxxxwwwxxxxwwxxwwwwwxwwxwwhxxgfvwgxhwwxxxwwwwxwxwwwxwwxwwxvwwwxwxwxgvvvwxgxwxxxvwxwxxwwxwxwhxxxxvgwxwxwvwwwwxwxxwwfxgxwvwwwwxwxxxwvxwxfwvgfwwfggwwxhwgxwwxwwxwwhwwvwwhwgwvwhwgwhxgwwwwWgugfVvwxwfwfxwwWwgwvxwwwwhxvgxwwgwgxgvxwxxwwwxxxxxxxvfwwwggwwwggwwgvgfgwggwwxwxwwwwgwhwwwxxwwhxwvwwWgvhvwvwwxwWwfwxxwhxwxxxxxwgwfwxggwwxwwwwxwwxhxwwwwxxvwwwggFfvwwwvvvwWfFwvgwgwgvxwxgwwgwgwgxggwxxWhVwggwxgxxhxxwXwfggffgggfvWvhewwgwhxxghwvxhwWwgggwwxwgxwxwxxxxxwhxvwhxfwwgwgwFgffwwwhgfxFwfwxxhwwxwwwwvwwwxwfxwvWwhghxxxxwwwxWwgwwxhwwxwwwgwfwwxwxxgwggwwgwwwgwwwgvxwwxxxxwxwxvfwvfwvfghVwwfhggwwxxxxgxxwwwwwwwwwwxwxwxxxxxxxxxvwvwwwwgxwwgwxwxwwwwwxhwwxxxgwxxxwwxxwxxhgxxvWfwvwgwfwfgfwfwgwvxxfxxxwgwwggwwwwhxwxhwxxwghwwxwfgwvwgwgwvxfgggwgxvwxwgwxwwxxxhxxxwwxxxxxhxxxvxwwggwgvfwhwwxwvxwvfvxwgwvwxwgwwwxwxwxxxwwwwxxxxxxwxxwwwxwvggwvxwwgwhxxxxxxxxxxwwxwxxxggxxxwwxxwXwhxwgwvvhwwvwwxxwwxvxhxwhwgxgxxwxwxwxxwxxxxwxwwxwxwwwxwxxxxxxxxwwwxwxxxxxxxwxxwgxxvwwvxxwwxgwwgwwwwwwwwvwxwwvwxwwwwwwWffwgwvwwwwvxgwwwvvwwxxxuvwwwwwhwxwwxggwxggxgxxxxfwwwwwwwwwwwwwwwxwwwxwfwxwwxwwxxxxvwwwwgwvxwgwwggwgwxwvwvvxvwvwwxxxwwxwgwxhwuffwgwwwwxwwggwwvvxwvwxuwgwvwgxwxxxwwwgvgwwxxxhgvvwxwgxxwwxwwxvxxwxxxxxwfwwfWggwxWvxgxxfxwxxvwwwwgwwvwwwvgwvgxwgwvvwxwxvvgwwwxwwwwwwfwwgwxxwxxwwvwwwxxfwxxwxwwwxwwwxxwvwwwwxwwwvwxwwwwwwwvxwgwwxywwwwwwwxwwwwwwxwwwvwwgwvwvwwxxxwwwvwwxwvwvxxxxxxwwwwxwwwwwwwxwwxwxxwxwwhwxxggwvvwwwvvwwwgwxxxxwwwwwxwvxxwwxwwwwwwxxxwwwvgwgwwwvwwxwwwxwwxxvwwxgxxgxxxwxxwwxxxxxwxxwxxwwhWxwxxwuxwywwxxwwwvvwxwxwgwvwwxwwwxwxwwxxxxwwxwwwxxwxxxwwwxxwwwwxxwwwwgxgvxwxxwvtwwhwwwwggwwvgwwwwhvgwvgwfwwwwvvwfefwwxwwffVwwwwwwwwwxwvxwgffwvgwvwvwWwwwwwwwwwwwwvfVvfUfgvwfwwwwwwxgwvwwwxxxwfwwwfefwwxvwwffVwwwwwgwwvgxvwwvvxUvvxwwgvvffhwwwwwwvfVvVfvVvwwwwgwwwwwgvwxwwxfxwfwSvgUvwhwwwuhwvwgvhxvwwwxvwWwwwvgwwwxgffwwwwgvwwwwwwvefvwwwgwwwxffUvggwwfwwwhwxxhvgwwwwfwwwxwwwwwwyxGxwwwwwwwwwwgvwwvwwgwxgxgwgwwwwwwgxxxvefvwwwgwwxwwwevfewvwvwwgxfwfwxuhwvxwhxxhxSvgUggwgwwwxvwxwwwwwwwvvvgxxwgvwgwvwwwwgwgwvgffgwwfvwwwwwxwwfwgvwwwwwwwwwfwvgwhfvvwvgwwvvwfvvxxGxwvwfuuwwwxwvwvgxwwxxwwwwwvgwvwvwfvwuwwwwxxxxwxwXxwwwwvwwwhggxwwwxwwwwhvxwXffxwUvvwvwhwxvwwgvwhhwwwwfwxwgXwwwwwgwwwwwwwwwwwvxvwwvwwwxwwwwvwxxhffvwxwwwwwwwwxwvwwgxgwwvgwwwfvwwXgvwwxwuwxwwxwwvwxwwwvxgxxwwwwhwhwgwwxXffwvvwwwwwvxHxxwwwwwwwwwxxxwxxvgxhwxgwwwwXffxwvWvgXffwwwwgwxwwxwxwvwwvxwgwxwhffvxwxwgwwwwgvwwwwxwwxwwwxvwwwwwhffxvwxxhffwwwwwwwwvwwwwwwvwxwwwwwgwhwwwxwvhwwwwwxwwwxxwwwwwvxwwvwgwwxxwvwxxwxxwwwxwwvxwwvwwwvgxwwwwwwvwgwwvxvxwxwwvwxxgwwwxvgwwwgwwgwwxxwwvxwwwwgwxwwwwxwxwwxxwwwwwwwwwwwwwwxwwwwwwwvwwvwgwvwwwwwwwwgvgxwxvvwgxvgxwxwwvwvwvwwgxwfwwwxvgwxxxwwwwgwxwwwwwwwxgxgwwvwxwwggwgwxvwwwwwxwwwggwxxxggvwxwgwwxwwxvwvwwxxwwgfgvwwxwwxwxvfhhwwwwwwwgvxhhwwxwgwhhwhhwxvgwwwwwwxggwwvxvxgwwxwwwgvxwwxxwgggwvxwwwwwfwwwvxvxxgwgvwwxvgwwwwwwwwwwxxhgwwwwwwggwghwxwwvwwwxxgwfwwwwvxgxwgwwwgwwwggfwwxvvgwwwxxhhwwxvgvwgxwxxwwwwhwvwwwwwxxvxxwwxxwwwwxgxwwvxxxxxxwxxvxwwwwvwwxwwxvwxxxxwwwwfwwwwxxwxwxwxwhhwwwwwwwxwwwwxxgwxwgxhwxxwxwwwwxxwwfwhwwgxwvwwgwwwvvwwwwxxggwxwwwwhxxxxxwxwwxxxwwxxxvxwxxgwxwxxxwwgxwxwwwwxgwxxxwxgwxxxxxwxwxhwhhwxwgwwhxxywwxvwwwxxwxwgwwxxxxwwxwxhxwwgxwwwwxvwxgfwwgwvwwwvwwhwwwwxxwwxwgxxxwwxxvwwfxxwwvwwwgwwxugwevwwvvwgwwfwxwwwxvxwwwwfvwfwwvwwwvwwvwwwgvwwxgwwwVvvxwwfwgwfwwwvvwwwwwvxwwwxxxxfwgewfwfgvgwwfwvvxwwwggxwwxwVwwvgWgwwwwxvxgwwwxgxwwwwwwwwxwxfwhwwxgwxvwwxxxxxewvvvewgvwwwxwwwgfwgvxwxwwvgwwwfwxwhwguxwgwwxxxwxxxuvwwvwgwWgvvwgggwxWwgwgxxgggWwvwwwwwwxxgxfwwwxwxgwwxxxhhwvwggWwwwwxhwwggwgwwwwxwwwxhwgfwvgWgvWxwwwxwwwxwxgwgwhwxwgwgwgvxWwvwwvwvvwvwhxxwxwwvWwvwwwgwwgwxwwfggwwxwxwwwxwgwwxvwgwxwwgvwxvwwwgwxgxwwxxwwwxwgwwxxxwvwvwwxwwwxwfwxgefxvwwwvgwwwgwwxxhvVvgwggwwwxgxxwwwwxxxwwvvwwggfwwxwwwwxxwwwwgwwghwhxxxxwxxwwhgxwggxffWwxvxxhwgwwxgxwwgxwxgwwvwwwwwwwxwWvwwwxwwgxxwgWwggwwfvgwwwgxhhwxwwwvhgxwxwwgwxwwwwwwwhwxwxxwxxxxgggvgwwvxgwwwgwxwwxxxxfgxvwxwxxwxwxwxxxxxhhwwxxxxfwwwhxgxxxwwwwwwwhhgxxxxxwwwgwxXwgxwwhwwxhgxxxhxxwwvvxwxgwxxwxxgfwfwxwwwwgwhwwwwwwwwwwhxxwwwvxxwxxwxwhwxgwwwwgxxhxwxwwxwxwxxwxfxwwxxwhxxwxxxxwWuwvgWvwwwxwwgwwwgxgvwgggwwwwgxwwwxgwwwwfgwvxfwhwwwwgwfwWwvggwgfwwvgwwwwwgwWewwfwwxwxwxwfwwgwwgwxxxevvgvxwwfwwxuwwwfwvwWwwwxvwwvvwwwwwhvvwvxxugwwwwuwfuwfwfvxvwwwewvguwwwwxwwgwwgwwgvxwwwxdgvfvwwvwwwwwfwgwwvwgvwwgwvwwVvwwgwwvwfwghvwWvwwwwvwwwxvwwwwgvwxgwxwhgwwwwgwwwwwwwwvwwvwXgwggvggvwvwgwhxxwXxxwuvvhWwwxxhxvvvfgfwfwfvwxxhvvvwvwvWdgvfvwfwwwwxwwxwuwwwxwwhwgvwgwvwfvuwvwwxghufuwwwggwwwwvwvwwwxwwvvwvvwhwgxwvwuvwwwwwwwwwguwwwvwgvxwffwwuwwxgxxwgwwxXgwvxwwxwwxwwwwwfwvwhvwwwwxwxfwxwfwxwvxwwxxwxgxxwwxwhwgwwwwxfwgwwvggwvwwxwHwwxxvgvvuWvxwvgwhwwxxwwwwwggwwvgwwwwxwwwwwxwvwgvwwXwxwwvxwwgwxxgwxxxwxwwvwwwwwwxvxwwgwwwwhghxxwhwwwhhxwxvgxxwwxwwgvwvwxXwwxxxuwwxhxwwwxwhwgwxwxhxxwwwxwhxhvwwWwxvwwwwvwxwwfggwgwhwwwwwwxxxxwxxvwwwWgvwwxxwwvxhvxwvxxwwfvvgwxxwwwwgvwwxwxwvwvxwxwgwwgwwwgxxwxgwwwwwxgwvVwwwxwwgwwwwxvwvgvwvxwxfwwgxfxfwuxwxxGwvwgvfgwwfwwxWwgWvwwwwxxwxvwvwwfwuhwxxVwxXwxgxxxwgwwxwwfwwwvwwwhWwwwhxwhgwxwxwwxxwwwxxxwxvwwgxvgvwxvgwgwvwxwwxvwwwwvvvxvxwwgwwwwxwwwxxwwwfwwxgwVvwvWxfgWVWwwgxvvwxwwwwvvwfwwwwwghxxwgwwwxgxwwxxxwhwvvgxghfwvxwwxxWvwwgwgwwwwwxwwWWfwWxwxxwxwxwwGwwfxxwwxxxwwwwgwWuxwxvhwwvWwuwgxWxwxwwwwwgwwwwxvxvwxxvvwxxxwxxggvwhxxwxvwwxwwgwhgwgwwwwwwwwvwwwhXgwxwwwVwwgxwwxwgwvwVxvwwxwxwxwefwwwwwwwwxgfwhxvwxhfwghhxxhhwweffxwwwxxxwwhwwxXxxWvwwwwwxhxxxxwxxxwhhxxxxxwwgvwwxvxwwxwxwwwgwghwwwwgWgggwhxwwxxxwfgxgwxxhxgxgwwwhwxwvwxwwwwggwxxwgxwxxfxwwxxwwxwxxwwgxwxvgwwgwvwxwxVwwxhwxwxxxxwwxgxxhwxwgwhfxxxxgxgwvxxwxwwxxwfwxWxyxxxXvhwwxwgwxxxghwxwghhwiwwxwwxgwwwwwxwxwxxxwgxwwxwxwwwwwxxxwxxwwxwxwwxxwxxwwxhxwwwwxhgxwwwxxwwwwgwxxxxxxxxwgxvxxtwghvgvfvvxfvgvvvvwgwwwwxwwwvgvfwwwgxvwxvvwwvwuVwwvvwwwwxxuugwwwwvvwvvgwwvwvfgewewggwvwwwwxgwxxxwwwxvwwwwwwxwxxxwwwwxwhwwwxvxwwxxwwwwwxxweufgvfvwvvwuvvvwwgvwxhwfvwwwwwuwwwwwvwgwwxxvwxwvwwgxfwvxwgwxwxwwxwwwvwxxwwwXwwWxwxwxxxxxhgxwfgfvwwwwwgxwwwwwfxwxwxwwwwwxwwwxwwghwhgxwwwwwxgxxxwwxvwxwwwghxwxxxxwxwtuvfWeUvggfwgwvwwgwwwggvwvwwwxgwgwwwwwwxwxxxgwwwwwxuvwwwwvvwwwxxwwwwxwwgeUwfGgewwwwwghvgvxxxxxwwwwfxwxxxxxxwwwwvxxxgwxhgwxwgvxxhxxwxxhwxxwwxwxwxxxffUveeewVwggwwgwgvwwwwxvvgwwxwvvwxxxwxxwxwhwxxxxVwwwwwwxwwxwgfxxxxwxxwxwxwwwgwvwwwwgwwwgwwwxxwxwgwxwgwvxwxxxwxwwvxwxwwwxwwwxxxwwxwwxwxxxxwggwwwgwvwvvwvvvgxwgwwvwvvuxwgvvxwwwwwxvvgwvuvwvwwwfwfvwwewwwgwwwwfvxvxuvvwvwfwwwwwggvvugvwwgwxwvgxuwwwvxgwwvwvwvwwvwwgwwvgxwwxxvwwwwwxxxwxeuvWwewvfwwvwvffvvxefwwwwgvvvwwwxwVwvwvxwxxwfwfwwgwvwwvgxggxwxwWwxwgwwwxwvwwhgwvxxxfwwvwvfvwfgwwwwwwxfwvwwgxwwwwvwxwgxwwhwvwvwwgwwwxwgvvvxwxxxwvwwwxwxxxxxxwwxwuuuUwwgwgtevwvWvwwwWwwwvvwgvwwvwgxwwwxxwxxxvwggwwgvwvwwvwwvwwwwgwvwwxwxxgwxhwedvgxvUWgUwwuwgvvwwxwvggwwwwwwwwxxwvwxhwwwxxxwxxvvvwwvwwwvgvWwgwwwxVxxxxwxhxwwxwxxxevfvwvwwvuvwwwhffffwwwvvwwwgwgwxwxxwwwwwwwvwwxwxgvwvgwwvwwwvgwwwwwvwwfxgwxwxwxxxxfxxwgwvfwhvwvwwwgewwfwwvwwxwwwwwwwxxxwwwxxxxxwwxwvwwxxxxwwghwfxwwwxwwwxxxwwxwxegVwWvvwgwwfvvwwxwwwgggwwwgvgwwxwwwwwhvwwwwvxwxgwxegfwwwgvwgwxxwwfwwxvwvwwfwwwwwwwwxhwxxxwwwggwwvwwwwwwwvwvgwwwgfvwvxxwxwxxwwwwxxxhxwxxvgvwvwfwwwwwxwgxxwxwxwwwwwxwxwwVvugvgvwvWvevvwwggwwggggwfxwgwwwwgwxvfxwvWwwwWwwgwgxwxgwwwwwxxwvvxwwwwwwWWxwwwhwwvwwwgwxxvvxxhwgwxhvvxwwwvwvgwvfvfhfvvfvwwgwgwwwwwxxwxwxwxwxxxxxwxxxxgwwwwwwwvgvwwgwvxxggxgwwhgwwwvxxwxwxwxwgvwgvgufuwvufvwWvxwwwwgwvgwhwwwxwwwwwwwxgvvxxxwxxxwwggvwvwwgvwgwgvvwwwwwxwxxgxxfxxgxwxwxwwfuwwwfwvwvwuwWgwvwwxwwwxxgwwxxxwwwxwwxxxxxhxvwwwwwwwgwfwwwwxhwXxfxxwwxxxxxwwxwxuggwgfvwVvugvwfwvwxgxwgvhwwwvgxwggxwwwwwgwwwwwxwxxxxgwwxxgwvxvwwvwxwvwwwgwwxxwwwwwwwwwwwvxwwxxwxxxxwxxfvuwwgwvvwgvuwwgwwxfxfxwxxwwxxwwwxwwxwwxxwwxwxxxwwvwwxxwvwwwwwwgwgwxxxxxxwwxwxxxxtfWwguwfgvwwvuwxfvvvwvwgwwwguwvvwwwwwvwfvwwxwuvwwfwvvgfwvvuwwffwwwxhvwxwwewvtvwvuvwwwvwwwwwxfvvwvgvwwgwxgWvvwgwwwxxtvvwwwxwxxVwvxwxgwvfvwfvwvwwwxwwwwxwxgffwwwwxwxwwwxwwvdeVwVwwvtwvvwvUfvwwwxvvvwvweffvewgwgvxwwevvwwwgvwwwxwvvevwwwwwwvghxwwvwvwggwvgwwWwvuxgvwwwxwgfwwxwgxwxvefuffgwgwwwffwvwwvwwxwwwvvwwwwvwwwhwwxvwvwwvwwwwxwwwwwgwvxvwWgxvwwwwwwxwvwxwgwwgwwvgwxwutvfvwfvvwggwvwfefugwfwvwxvWfwwwvxwwwxxgfwwwwxwxvwfwfuvwwwwwwwwwxwwfvwfgvwwwxvxwwxxwxwwwveewwfwgwwgwxxfVvdgwvxxwggvfxvwxxxwwwgxwvxwwxxgvvvxwwwwwwxwwxfwgwgWxwwhxwvxwgwwxgxwvffuVvwwuvftvfgwwwwwwfxggvvWvwhwwwwwfwvgwwwhwwxwxxgvvWvwwxxwwwwwwxxwvwxvwwwwhwvxwwwxwwwxwwwvfvwwwwwxxfwfxgfvwvwwwwwwwwwfxgxxwvxxxxxwvwggwwxxxxwxwxggwwwxwwxxxwxxwxgvxxwugwfwwwvWvwfvwwwgfvvvuvguwvfvwvvggwxvgguvwwVwvwggxgvgvWwfvvgvwwwvwvvwgvwvhwvWegwwwVvxuwwwwwuwvhvwwhwgwwvvfvvvwwvwxvvwvfwwvgwwxxwxvfwwwwwwvgxgwwxxwvgvfwwwwwxwvxvwwVxxwvwwxwwwxwwwwxwwxxxgwwwgwvegvfff6dwfvwwffWfufffedugvWvwvfwwgvvwfvwwfgwVfvgvgwgegwwwwwVvfwvgwgvevwwxgwffffVwWvgwfvvxwwwgwggwwwwgwgwgvgvgxWwfgxwfvvedwvwxwvgfewwfvgwwwwwvwgwwwwwwwwwwwgggwgwwwwwxwwwuwxwwwwwwwwwwwgwVggWwvxwwwwwwwgwgxxhwxwfwgwwwwwwwwxguwvfvvvfvvvwgVVvffwvffuugwvvvgvwgwwwxvxfUfvwwwxgwwxvxvgvvuvwwwwfwxwwfwvgwgwgxgvwgwwwwhwwwwfwvxwwwwwxxwwwwwgwwwhgWwwhggvvwwwWvgwvvvwvwwwwwwvwgwwxxhwwvwwwvwwvxwwxwxxwgwgxwwwwxwxxwwwwwwWgwVwhvwwxwwxfFUvfevggvwwwfwwdSufvVvggfgVxwwggvwvxwwwvwvwhhwhwwwwwwgwxwwxfvwwwvwwwfvwvwWvgwgwfgwwwwwvwxwwgxvwwgxvvwfxwvwfwwvxwwwwwxwxwvfgvwfwVwxwwwwwwxwwwwxxwwwggwwwvwwwwgvwvwgwwvwxxxwxwwWvwxwwwxwwwvwwwwxxgxvgwwxvwwwwxxxvghvwwfwwvfvvwfvwfwwwwgwvfvwgwwwwwVwvxwvvwwwwvwgwxwxvwvwwvvwvgvwwwwwwwwwvfxwvwxwgwwwwvwwgfxgwvwwwgxwwhwwvvxWfvvwwwxvwfwwxwVvgwxwwwwxgwwwxxxwwgvwfwxwfvxwxwwwhwhwwwxxgxxgwwwwxxhhwwwwvvwvgWffwvwvgffgggwfVfwgffwvgfgwwwwwgwwvvwwgwhwwgfgwwvwgxvwgwwwwffvwfwwxwfwwwvfgfgvwvhwfwwwwgwwwvgwwwwhvgwwxwvfvwwvwvwwxxgfwvxwwwwwwxwwwwwwwxwwxwgwxxhgwwwwhwfvxxxvwwxwwwwwfxwvwgvgwxxwwxgwwxvwxgwxxwwwxgvffvwvxfwvwwwfwwfgvgvvvwwwwxvwgwwwwxVggwwxwwxwwwvvgwhwvwwwwwwggvwwwxwwwfwxwgvwwwwxwwwwwxxxwwwgwwwwwvwgfxwxfwgwhwwwxgwwwwxwwxggxwwwwwhwxxwgwwwwwvwxgwxwwxhwwwhhxxwwgwxxwwxxwxwwxxxVgwwfwvvgvvwwvwVfgffvwgwgwvwwwwwwwxxwwxxwxwwgwgvwgwwvwwvwvwwwvxwwvwwwgwwhhxvvwwwxwvvwxxwxxwwwwwxwgxwwxwwwvwxwvxwgwwvwwxwwwwgwwwvxwwxxxxhwxwxxxxgwhvxxxxwwvwwwfwwwxwwwwhxhxxxwxxxefUwUwvwEvfgtgwfvxvgvwfvwvwwVvegvwfugwfuguwwvwfvxwxwUvegTdwvfuwvVewgwgvvvwxwugwvvvvefvgwfgxxxxwgwwUvvwugvvwwgwvuwwwwwwwwwwwwuwvgwfwfwwwwVwwvwwxxxuxvevevwwwxwxfvvwxxggwgwfwwwVwVxwxxfxwwwwxxwwwwwwUvvugUdggfvwegVvwwVwUwwwewuwfwgvfgvwgwwxvwwfwxwfvwfwvwwwwxfgvwwwwwgwvwxgwwwwvwwwxwwxewwxwVvvwwgvwvxvvwwxxggvwwwwwgvuwwVwvwwwwfwfggwfgwwfwwwwgvwxwwxwxwwwgwwwxxxgwwwwwgwxxwwfvvwvwwwxwwvxwwgwxwwxxwwwxEfuvugUwuwvwfwwvgfwwwvUvwgvvvwfvvgwwwwvxgvxgwwxxwxwefvfwgwUvvwwwwwwwvwwwwwxwwwwfvvwwwwgwxvwwxwwgwxxwxwwxuwwwevtvwwxgxwxVvuwwgwwwxxxxwwgwgwxwwgwgwfwvwxwxwvgwvwwgTuvwfvgvwxwwwwwwwxwwggfxxwwxvhffgvggwwwxvxhdfVwfvfgVwvwxfwewVwwwvwvvwvwwwxgvwwvwwxwxwxwwwwxwwxwwxwwwvwwwgwwwwfxgwwwwvwwwwwwwwwxwvxwwwwwwxwwwxwwwfwvwvwewwxxwvgvwvvwxwwwxxwwwxwwxwxwxwwxwxvgewwwxwwxwvwwwgvwxwxwxxxxwxwwwwxwwxwwvwwwvwgvgwgvvfvvwwwwfgfegvvvgwwvvwvvwwvgevwgvwxgvwwxwfgwwvvwwxwWevwwxxvvvwwwfwggvwvwwwgwxwfvgxvfwwwwgxwwwgwwgwvwwvvWvvwvWvuwwwgwwwvwxwxwgWufwvwgfwvgxwgwwwwwwxwwgvwwxwvwxxxwvfwwwgwfwguvgvwwwfwwxeuvwgvwfvgvvvwgwvwxxfwwwgvvgwwwvwwxwwgvwhxxevvwwwwwwgvhgvwwwxwewgwvvxwxxgfvwxXhegwxgwgvefwwgvwvvwxgvgwwgfvwxwwwxxwxxxwwxwxvwvhgwgxwxxxwwwwhhfxwxwwxxxxxxwwxxxwwvwvwvwwxwfVvwvfvvwwwxxwxwwwwwxvwwxxxwwxwvWvwfwwgxufwgxwwfwwvxxxxwwwwwxxxxwwxwwwwwwvwwwvwxvvwwwhwwvxwwwvwvwxxwxwwwvwxvwwvwxvxwwwxwwgvxxwxwggwwxwwwxxxwwvwfvvvvwwwwwefwwxvgWvgwwwgvxwxwwwxxwwwwwwxwxvwwhxfvwwwxgvwghxvwwwxwxwwxwwwxxwxxwxggxxwxwwgwxxwgwwxwxxxwwxxwxhwxxwxwwxwxxxxwxxwxwwwwxwwxwxvwxufFwwvwVvfxvgwxVvfwwwxeefgwxfvwwwfvxwxvggxwxgwfwvgfuwgfvwdvfewwwwvwvxwxvvwvwvwgvwgxwwfwwwuvwhwwwuwwwwxWwgwwfvwwwwgffxxgfwggxxwwwwvwwxxxfwwgxwuwxxgwfxwwwvwfwwxwvwggxwwwwwwwvwwwwvwwwhxwxwwxwwwwgguggwwxefvgvwvfFewvwwgdffwvwwwwVggwxwwvWgwwfwVxgxxwfwwgwwwvwvffwwhfwvwvwvwvgwwwhwvvwwwwvwgWgxwgvwwxwwvfwwxwuwwwxwwvfwwgwgwvwxwVuvwwwgwgwwwwwwwfvxwxwhwvwwwhhwhxvwvvwwwvwgwwxgvewfwwhhwwgwwvvwxwxwwfxxvwgugxgxxxwwvwwwvgggwvwgxgvwfgfvwwwvtvvwwgvwwvxwgxxggfggwwxwvwfwWwwgwvxwwWvfwwwwvwwxwwwwwfwxxgwwxwwxxgxxwwfwgwwgwgvwvwvgevgwwwwfgwwxwvgxhwwxwwwwwwwxxxhfxwxwxwfwfvvwxwvwwwgwwwwxxwwvwwxxxxgxvggwwwxwwwvWfggvwgVwvwFfffwwvxugvgwvvgwwxwxwxxwwwwxgwwwwwwwxgvwvwxuwwvwvwwwwggvxgvgxwxwxxwwwxvxwwwfgvgwwwwwvgwfgvwwWwwgvfwvwwvfwxxxxwgxvwwwxxwxwxxfgwwwwwwwwwwxxgwgwwwwwxwwwwwxxgxxwwxxwtvgwfvfgvfwvwwwxwwxwvwwfwwwvwwvgxwgwwwwxwwwvwwfvwwvwuwwwgvwwwwwvfvwwxwwgwxwfvvwuwwwgwwwgwwwwwxxwfvwfwvvxwwwxwwwgvwvwvwwwwwwxgwxxwxwwwwxwwwfufgfwvwfwfvxguwwwwxwvwxwvvfwvvwwwwxgvwwwxwwwwwfwwvxwxwwwwwwvvhxxxxwwxxwwwwwgvwxwxwwxxwhwwxxhwvvvwwwgwwxwfwvxgwgwxxwwwwwwwwwwxxwwgwxwgwwxwwwxxxwwwwxgwwvxwxwxwwxhwwwxweeffvfuwvvwgwwwwwxwvwwgxgefgwwwggwwxwvxwxvgwvwwwxwwwxxwwwwxxxwxxxxxfVefwvwwggwwxxwwvwwwxxwxxwwfVfexwwgxwfvwwxgxwwvgvwwxVwwxgwwwxwxxxgwhwwwwwggxwxwwxwxwxxxeffvfwwfgxwwxwvwwvwwwxwwwwgfuvwvwwxwxxgwwxwxgxwxfwwwwhwxxwwwxxxxwvxwwxwxwwxwfgwwwwwxwwxxwwwvxwwwxvhxwvgwwwxxxwwwWwvwxwwwwxfvwxwxwhwxxwwwxwwxwxgxxxxxxwxxxufvvwgVxuwvwwwgxwgwwwwWwwvwwwvvwwwgggwuwwxxwgwwwwuwwwfwwwwwwwwxvwwwwwwwwgwwwwxxxgwuuwvvwwvfwuxwwxwwxwxwggwwwgxwwwuwxhxxwxgwwvwwwgwwwxwvxwxwwxwxwwuwwwwwxwxxwxxwxxwxxwwwwvgggvvvWvwfwwwwWwwwwgvvgwwWwegwwgwwvwwvwwwwwwgwwgvvwwwvvuwgwwwwgvvwxwxwwwwxxwwxwgwwwvxwgwwwuwvwWwwwxhwuwwwxwwvwwwwvgwwwxwwwwwwvwwxwxwwwwxxxwxwwxwwxwwwwxwwwggvwwwwwxwxvxWxvxwxxwwxwwxwwwxwguvguwvgvwwvvwwwwvwwgvwwgwwwgwwwvwvWfwxwwwxwxfwxwxxwwvvvwgvwvwwvwuwwxwxwxwwwwwxxwxwxxwxxxwxwfwwwfwwvggWwwwwwvwWwxgwwxxgwwvwwvwxxxxwwxxxwxwwwwgwwwvvxwgvxwwxwxxwxwxxwxwxxxwwxxxegwwvvwfwwwwwwwvvwwhwWvwwvuwWvwwxwwwwxgxwwwwwwhxgwwwgwvwvxvwwvxwwwvwwxwxwwxwgwxxwwwwxwwgwwwwwxwwvwvwWhwxxwwwxwxwwxwwxxxvxxwwwuvgwwxxxwwwxxwxwwwwxwxxwuxwgWgfvggfwWggwwgwwwwvxxvwggwfgwxwwvwwfwwwwwgxwwvvvgewuXwwwwgwguwhxwwxwwwwwxwwxvwxwhwwhwWwwgvggXwwwwxwvxwwxvwwwwwxxywgvgwvvvxwxwwwxxwxgvvwwxwwwwxxxvfxwWvwuvwwxfuevwgwwgfxvvggwwwwgwwwwgwxwwwvgvwxxwwwgxwxxhwwfwwwwwwwwfwwwxxvgwxwwwwxwxxxxwxxghxegvwwwwwvvgvwwxxwvwxwwvvwwwwwwxxwwwxxwxvxhxxxxxwwwxwwxwwxfxxxwfwwxgwvgfffevwwwgwwwwwgxwwvwxgvvwxwwwwwxxxxxfwfwwvfvwwwvgvwwxwwwwwvxwxgwwwxxxwxxywwwwwxxggwxfwvwfvvwwwgwxwwwxxxwfwwwvxwxxxvxxxxxxwwxwwwfwgVxxxhwwwxfwxxwxxxxxvwwvwvvuvwwwgwgwhwggwhwxxxgvwwxWxxwwhxxxxxwwxxwxvwgxwxxwxxwwwxxxxvwxwwwwwxxwwxwwxxwxxxwxwwgwxwwxxxxwxxxxxhwwwwxwwxvwvhwxxwfxxwxwwfVuwwgfwvfwvwvwvwgwwwwevwggwwfgUvwwwwuxwevvVwwfwxxxwvfwfTwgwwfuwwfwwwwwwwewwggwvvvwwwvwwgwfwxwwwwwwxxgfwwxfefggwvwwvffwxwwwfgvvfwtxwxwwwvwwwwwwfwgvvuwwwxvvuvfwwxwxwwwvvgfxwwgwwwxvwweuwfvfwxfVwgvvwfVwvwwguvwwwvWfgfuUtvgfwufvfwgvwvwvvewwxgggwfvwvwwvvvwwVvwxwxgwwwvxhxTffwgwvwwwwwwwwwwwxwxffwfuwwfvwxxvufvwvwfwwwfwfgewwwxwxxxwwwwwwwwwwgvvwfwgwxwvgvwxwxUxwxwwwwwwwgwxxwxxxwwgwxxgwwVgwvxfvwwgwvvwwwxxxxgfvfvuvxwwwxxxwxhxwwgfuwvwwvfwwwxvwxhxxvwwwwvxexwwvxwxxxwwwevvwgxwwwxwgwxxxgwxwxwwgggwwwwvwwhwwxxxxhwxwxxwwwfwVvwxxwxfxwwwwxwwggxxwwwxxxwxxxwgfwvfuvVvwwwwguwvvwFwxvwwxwfvwvwwwwwwxxwvxvxxxwwwwxwvvwwgwVwwwwxxwwvwxewwwvwxwvwwwxwwwxxxxxwfwxwwwwwwvwwwwghgxwwwwxxxwxwxxvhxxwxwwwwwwhxxxwvxxwgvxxxxxhwwvwwxvxxxgvxwvuwuwxuwvuwwwwuvvfefvwdfvvevvwuwUvvwfuuwxvvwwggtwguwvgwWuwwwgvwwwwwggwwwwvwwwwwwwwwxwwgxwveewwvvvwwvwwUvuwfvwwxuxvwguwvfwwwwxvwwwhvwxwgwwuvwwvwgfuwwxvwwwwxwxuvwwxwwxxxwwhxxxwxxwvfgwwuwfvvvwfvfgevvgwwgfvvgevwvvvwevvvxgvvfwvuweuvvvvgwwwfvwwxxvvwwwwvwxwwxgwfgxwvfwxvvuwwwxxwvxxwxwxgwvvvwvwxuwwfvwwwwwxvwwgwxwwwwxxwxxfwxwwvxwwxxwhxvwwwwxxxwxwwwwxxxvvwffwevxVvwwfgvefvgvvwvhuvxfgvvwwwfwvwwvgwgwwxwvvfvvwvwgvvxwwwxgxtwwvwwwhuwWwhxgwwvwwwVvfwfvvvwwgguuwwvwwwfxhxeffvggvwwxghwvwgxWhvxhgvhxvvwxgwwwwxwxwwhhvxxvhwgxwhxwxgXxxwwwgwhwufvvuwwwWfwgwwvfvgfwtwwwwwggwvvghwwxwxwwwwxwwwwwwwxxwvwwwvwwxxxwxwwwwxhvwxvwfwxxxxwxwvwxwwgwxfvwwwxxwwggwwwwxvxxwxxxvxxwgxwgwxxwxwwxwvwwwwwwgwvxwxwwvvwtwvvwvuvwvvwfwgwgwwegwvevwwffvwdvwvewwgfwgvvWwxwwwwxwGtwgwgggwwwWwwgwgWvwvgwwfvvwfwwuvxtwwwwwvwwwvwwwwwvwvvwwwwWwwwwugvwwvwwgwwxvfwvwfvwwwvwwwhxwwgxwwwwwwwhgwwwwgwvxwghgwxxvwfwvxxwfwgxxwwwxwxwwvvwvgwvgvWwwvg%dwvfwgVvwvgvvfffvfvwvtfwwuwwwUefwvwwgegwwvfggwwgvwwwwgwwvxWfvwwgvwgwwgggwhWwvgwwgwWvwgufevwgvwggwfwwxvwgtfgwvwwwUUwgwwgvvxwwwvvgWwgwwvVwwwwxvfvwwwxwwwhwwwwvvwwgwgvwwvwwgwwgxwwgwwvxWwfwwwwwwwguwwxxggwwwxwvvwxwfwwvvvvgvwgwfwvwfWvwwwwwwvgxwwFVvfevvgvvuwwxgWvvxwvxwwwxxwwwgwwwvvfvwvwwwvwwwwfwwxgwgvwvwxgwhwxwvxwwxwxxxwwwgwuwxfwwwfwvwgGwvhwgwxgvgvwvvwwxvwxgwwwgwwXvwxwxwwxxwuwvguhvwwwwhwwwxvgfgxwwwwvwwxvwgwwgxgvwwwxxwwwxwvUVwwfwwfVwwvwwfvwvwwwvwwhwwwvTTvVwwwugwhwwwxwgwGghgwgwwwwwwwwwgwgwwxuwwvwwgwfggwwwwwvwgwwgwxwwwwxgwvxxhxvvwwxugwxwwxwwwwwwwxwvgwwwwxwwvvgvvwwgwxwwgwfwxgwwwxxWvxxwfwvwxugfvwwwwwwxwwwwxwgugwwxwhwwxwwwwfwwxgvgwwwvvxuwwuvwevvwvvfwvwwwvxffgevvwwwwvVfvwwxfwvvgvfwfwvwgwwggwfwgVewwwwwvgfwwwwwwwwwgvwwgwwuvwggwwxvwxvxgvwwuvfwwvwvwwwgwwufwvwvwwvwwwwwxxgwwwwxhvxwwxwfwwewvwvwhwgxfwwvwvgwxwxwwxwvvwwxwhwxxwwxwwwwgvvevvwfgfwfgfevfwwWguvwwgfvwvgwvw6dwduuvfuvvvvwwffwwvVfwuwguwgffwgfwvwwwfvwwwwwgwvwvwwWvwwgvwvfvvwwffwvgwwwggvxwhwxwwxwfguxvWfwefwwwwwxwwdevvwUevxwwxwxwvvwwxxxxwwvxwgwggwwgwwwxxvvwvfgwxxvwwvhvxhhfwwwwwwwwxwhwgwwwgwxwxgwwwvgvvwwgvvwvUFvgvwufvuwwwvwwuwvvgwxwgvVfvvwwwwxxwxwxxxwgwwvgwvwwfwuwwvvvgxwvvxwwxwxwvwwhvxwxxwwxwxwxgvgwvvwwwvwwwgwXvwwhxwwwgWxvhwwwhwwwxwhxxwwwxfwwwvwwwvwxvxwxwwwxxvgxxgvgxxwxwwxgVxwwwxxwwxxgwxwUEwcdvewfvwgxufgwvgfguwwfxvwwggwwwwWfwwwxwwwwvwwxxxvxwxwxwvwgvggffwwvxwgguwxxwvvwwwvvwwwxwwxvgwxxwxwwwwvvwxwwwwxwwwwwwvfgxvggggwwxxwxxwwwxxxwwhwwxxxwwwwwwwwwwwgwwwwvwwwxxxvvgggwwxxxxwvgwwwxvwhwwwvvvwwwfwvgwwvwwwwwwxvvvvgvvwwwwxwwfwfwvwwwwwwwwwwwvwgvwxgxwvwwwwwwwxgwwxvxwxfwvwfwvvwwwwwwwwwwwwwxwwwxwxwxfvwwwxwxgwwwvvwvwwxwxwwgwwxwxxxwwwvwvwvwwwwgvvwwwvwwxgwvwwwwwwvwwwvwvgvwgwwxfwvwwvwwgvvwwhxwvwwvvwvwwwxwxwwwwwwwxwxwxwgxvwwxxwgvxvxgwwwxwxwwwggxwvvgwwwxwvwwwxwxxxwwwvwvwxxxwwwwwwwwwxxwxvvxwwwwwwvwwgxvwwggwwwwwwwwxwxvwwgxxwxxgvvwwwwwxgwvgvwwwvwwwwwwgwxwgfxwxgvvwwwwwxxvwwwwwwgwwxxxvwwwwgwxxxwgwxvwwwwxwwwxwxwxfwvwwgvxxxwxwwgfxxwxxwwxxxwxwxxwwwwxxwxxxwwvwwvxgxwwxxwxwxwwwxxfwfgwfvwwwvgvvwwwwxwwwvwwggvvwgwxvwwxwwwxxvwxxwwwwxwwvwhxwxwwwwwxxwwwwwxxwvwxxxxwvwwvxwwxwvwwwwggxwxxwxwxxwxwxwwxwxwvvwvxwxwxxxxxxwxuVVfuevFwvtwwgwwvwxwWfwgwwwVvwwffvggfvvwwWffwwxfvwvwwgwwwxvwvwwfwewwwwvggwwwvvwwwwgfUvwvwwfwwxwwwwwwxwxxhXwfwggvwwgwfwwwWfgwwxVwwwxwfwwuxffvwfwwwwwwwxxxwgxgxxwwggewvxgwwxwwvwxwwxwwwxvwxvwwxhwwwhhxwwxwwfvvwvwwewwfwwwvfwwwwvgewwgvfvgwggggvxfvUgtwgvFwfhwffwWxwguwwgvwvwwwfwvvvwhwgwxhwxwwwwgwVwwxwwvxwxwvvwwwxxxgxxxwwgWghxgwwvwfxwxwwwwfvgwfgwwwwwxwgvtxwwwxwgwwggwwwxvwxwwwVwxwwvxwwwwgxwvxxwwxwwvxxwxwwwxvwwgxxwhxxwwxgwwvWfwvgwwgevgwWffgwwegvwvwwvwgvwwwwvvvgwVgvwwgwXgwwwggVwhwvgxwwgwwgwgwxwwwgwxgwvxwxwxwgwwwxgxfxhxxxwxwgvtwvvvgvwgvwwxgwwgwxWxgxfwwwvfwgwwwgwxhxxvxwvwwvwvwwwwwwwwxhhXwxghxwwxhxxwwwwgxxfhwwwgwWuvwfffhdwwvFgvgwfggVxwwuwwxwwxwxxwwwgwxwhwwxhgfwwgwxfwwvwxwwvwwghxwwxwhxwhwwghwxwxhwvxwxwxwwhxvxxxwvuvxwwwxwgvwwwgwgwwwxxwwvxxxxxwwwwwwxxxwxwwwxwwwvwxxwwwwwgWxhwgxxwwxwxxxwxxxxwvwVxgwvvgvwwwwwwwwwvxwwgvwvvwwfxxwwwvwwwwxwxgwvwwwvwvvwwwxwxxwwuwgvvvwwwwxwvxwwxfvxwwfvwwvwwgwwvxvwwgwwfwwwfxxxwwvwwvwwvxxgwxgwvvxwwwwxwxxwfwuwvVewggvwfgwgwwwwwgvwwvwwvfwweewwfvggvwxwgvwwwgwfxvgwwwgwfwwgwfVwgwwwxwwwxxwxwgwwwwwgwxwxvvwwxwxwgwxwxwwvvwfvuwvwwwwwgwxxxvxgwwfwgwwwwwwwwgwwwwxwwwfuxfvxwwwgwwxwwxxwxxwwvwgwxxwwwxwwwxgvgxvwwvxfwvggvwwwvvwwwwwwxwxwwwweewwxwvfwwgwwxxxwvwxxwfwgwvwwwwwwwgxwxxxvwwwwfwvxxxxxwfwfwggvfwwvwwwwxxxxwwgxxfwwwvfwhxwxwwwvwwxxwxxxwwwvvvwgxxxwxxxwxwwgwwhwwhxvxwxxwxxvffwVwevfwwwxwwwvvwgwwvxxwvxffwvvwvxvwxwwwwwwxgwwwwxwgwwxwwxuwwwxwwvwwwwxwxxxvwvwwwwwxvvxxwxvvvwvwggxxwwvxgwxwxwwwwwvvwwwxvwwwggwxwwwxvwgwwwwwwwxxwwxxxwxxwxwxuwfwwvvwwfvwvwwwvvwwwwgwwvvvgwwwwvfgwwwwwwuuwwxxwwgvwwwvwwvwWufwwwwwwwwwwggwuuwwwwwwvwxxvwxwgvwvwvvwwwvwwwwxwvwwwwxxxwgvwwwvwvvwwxwwwxwxxxwwwwvvxwwwxwwwwxhwwwwwwgxwwwwxwwwwfvww5cvwgweuuwfggwvgffgwwvwgvgwgvvxeuwwvgwwgwvvwwvvwwwvwgwwwxwvfwwwwwgwhwvvwwwgwxgxhgfwwwwwwwwwwgvvwwwwgxggfvvwXuxvgvwwwvfwxwwwwwwwwwxwwweevvfwwhwfvwwwxxxvwvvwvwwwgwwvwwggvvwwxwwwwxwxgwwwwwwwwwvvvwwgvwwVUvffvvwwwwwxwffwvwgwwwwwwwwwvwwwwgwwwxxvwxwwwwwwwwwwwwwwwwggwwwwwwwwwwwxwwwxwxwgwxwxwxwwVWfvgwwvxfvwwwwgwwhgfwwwwxvhhxwwwxwgwwxwgxgvwvxwwxwxgvwwvxxwhgwxxhvxvvwxxwxxxwxwgxvxvUUwwwwwddefvvwWfwwvwwwgvwwwwwffvfwvwvxgwwwwvwgwgxwwwwwxxxwwvwwwwgvwxvvwwwwxvwgwwwwwwwwxwwxwvwwxwwwwwwvvwwwwvxwwwwxwwwwwgwwwwgwwgwwxxwwxwwxgxxwwxwvwwwvwwwwwhxxwvvwwxhwwvwwvgwvwxxwwwwwgwfwfvVgVgfwvgvVgfVxwwexvwvwfvuwwwvwwfvvwvxwwwwfwwwuwgvvgewvgewgwvwwwwwvxwwvgewwvwwxwxwvwwwxwwwwxwwwfgggvggwfwfwxvwfwfwwwwwgvwxvwffgfwwxvwgwwhwxxxxfgvgxwwvvwggwwwvwxwxwwwxwfvwvwwwwwxwgwgwhhwxxwvvfwvwegWwvwfwgwfwegVvgwvwwwhwwwgfxfwwwwwvwwgvfwfwwwhwwvxwwhwgwfgwvwvwfwwwvfgwwxwxwxwwwwwvgwwxwwwhwwwwwwwwvwwgxwwwwwxwwfwgwwwwgwwxwvxfwvwxxxwwxvwfwwxxxwwxxwwwwwxwxfwwwwwwwxwwxwxxxxwwwxwxwwwxwxwwwwwxxxwxvwvwVWfevgffvwffuwfgfgwgwvgwwwvhvgfwvvwwwwwwwVvvwghwxwxwwwvwgfguvwwwwwfvVwvwwwhwxwxxgfwvwxwwxwfggwxhhgwxvgwvgwgvwgwfwuwwwvhwwwgwhwwxxhwgfefvuwxwwhwxwxxwwgwgwWgfwxwwxxxwevxxwgwwwwwhgUwwgxwWWwxxwwwwvwwwwxxxwwwwwgXWfwxwxwwweWevgwvwvwfgwvwggvvwwgwgwgxwggfvggwwvwwwxwgwgwxggwwwvxwwvgxwwwvwfwwwxwxwgwwwxwwwwxwxxwwxvwxwxwxxxgwwxvwwwwhwvhxwxwxhxxggwhxwxwwvwvvhxwwwxxwhwwhvxwwvwvxxwwwvwxvwxxwhxwvwxxvwwwwxwwgwwwhwwxvgggwvwvwvvgwvwwwwgfgwwwvvvfuwwwfvwwvvwwwwvxwwwwwvvvvvwvgwvwwwwwvwvwwxwvvwvwwwwvwvwwxwwwwwxwwwfwvvvwwwwwvwfwuvwwwwwvxxwvhwfvvwwwwgwwwwvwwxxxhwwwwwugwwvwwwwvwwxvwxwxxvwwwvwwxwwwwwxwvxvwwggvwfggvwgwwvwvfwwwwwvfwvgxwvfvufgvwfvwwggvwwvwwgvvwvvwwwwwwgvwvwwxwvwgwwwvgwwwxwvvgwwwwgxwxvwvwwwwwhwwwvxgwgvvwgwwwwwwgvwgwgwhxvwvfvfwhwhwxwwwxvwxwvgwxggwxfvwwvgwwxvwwwwwxxxxxvvwxxwhgwwxwgwwwwgwxwwwvwwgvwvxgwvwwfwwggwwvwwwhwfvfugwwwwwwwwvxwwxwwwwwvwgwwwwwxxwvxwwwxxxwwwwwvwvwwxwxwxxwhwwwwvwfwxvxvwgvxwxgxwfgwwvgvwghwwxfxhwwxwwgxfgxwwwxxwxwghxwgxgwvwwgwwxgwwxwwwwhvwvwgfwwgwvvvwwwgwvfvgwwgwwwwgvggvwwwxxxwxhwgwgxxxxxvwwvwwhxwwhxvxwwwwvvgwwwxwwxhwwwwvvwwvxwwwwwwxwxvwxwwwwwwwwwhxhwwwwwwwwwxwwxxwwxwwwwwwxwvwgwxwxgwwvwhuwwfvvwwwwfvvwwvwvwwwwgxvvvvvvvxvwfxvgwxwwwwgwvtwwwwwwxvvwwfwxvwgefvwvwvwwfwxwvwwwxwwwvgwvxwvwgwvwwwxvvffwwvwwxfwwwwxwxxxwwvgwwvvwwxgvwwwwwwuwwwwwxwwwwwwwhvwwwvvwgwgwwwgwvgfgdwwvwwwwwgvwvwvvwheevgwwvwvwvxxwwwgwvwwwwvfwvwxwwxxxvwwvgwwwwwhwewwwwwwwwwwxwvvwwwvvvwgvwvxxvfxxuvwvxwwvvvwwgwwwwwxxwwwxwvwgwwwxwwwwxxfxwwwvgxxwwwwwwwxwwwgwgwxxwwgwwfggwwwxwxWvvgxwwwwwwwgwwwwwxwwwwwwxxxxwvvvwwwgwxxgwfgvgwxwwxwwwwwwwwxwwwvvgwvvwgxvvhgxhgwxgwwwwwxwxwwxxhwwxvxgggwwxwxwWgvvvhxwwwgwxvwxgfwgxfwxwwhhfuvwvwwwwWgxwwwfwwgwwwwwwwwwwgwwwxxwxwwwwxwxwwgwwxwvwwwwwvghwfwwxwwwxwwwwxgwxwwxwxwwxvwwwwxwwwwwwxwxwwwxwxwxwwxwxfwwgexwuggVvvwgvxwggWwuwvgVvfffwvwfvvwugfwwwvwWfvfggfWwwxwgggwxfwuvvwuvuwgfwwwvfwwwgvxwewwwvwvgwfvwfxwwwhwwggfwwfwvwfwfvvwwWvfwwvgwwwgwvwwVwwwwwxwwgvwwWxwggxgxwhxwwwfwwvvvwwxwxwxwwgwxxvfvfxgwvwxwxxwgwxwwxvwvhfwgwwggffvwggfVvwVWVvvwgwgvufwwvggwvvuxvgvwVvvgegVvvwwgfvwwwgwvwwwwwwwwfwgwggwwwxgvxwfVwvwwggwwvwwwwvwwfwwwggvwwfwwvwvghwwgvwwwvwffuwwwhwVxwwwhwfvwwvwwgvwwwwwwwwggWgxwxwxgwxwxwfwhwwwvwwwgwvwwwxxgxwhwfvwwwvwvwwxwwwvwxgwwwvxgfvvvgvWvwwgwgvwgwwgwgvwvvugewwwvwgfwwwwxwhxwVwwwwgwfvuwvwwvgfwwxxwWwvxwvfvvxwwxwvxwvxwwwwwwxwwgxexxwwwvwewwhvggwwggwfwxwWwggwugwwwVxwwwxgWwwWwWhvwhxwvgwxvxxvvxwwwwhwhxfwhxewwwvxuxvwwhgwxxwhvvwwwxwvvwgfvwwfWWvvwfgwfgvvgwwgffwwfwhfgvvwegvfvwxwvgxwwwwwxwgwwgvwxwwwxxwvgwwwwwvvwxwgxxgfxxvwwwwhvwgwwwvwwvwwvfxxwwwwwxvwwwgvhxwgwwfgwggxgwxxwxwwwwwhwuwwwwwxxwwgwwwwwwwxwfwvhhwwxwxvxgwwwwwxwwhfxwwwwwwwwxwuwUwwwvwvwwwufwuwwwwvwwwgvvwvwffwwwwwvvwwxwwvwxwwxwwvwvfvvwwvwwuwVgwwvwwwwfwfxvwwwgwwwwxggvgwfwwwvvwxwwxwxuvvvwwwwwwxxwfwvwuwvwwxwwwvvwwvxwwxwxwvvufvwwwxgwwwwwwxwvwwwwvgwwwvxwfxwwwxxfftwwwfvwwvfvwvVfvwwwfvwwxgwwvvWvwwfwwvwwwwwxUuvvwwwgvwwwwwwwwgwxgGwxxxwwwwwwwwwwwxwxwgfvwwgwwvxwwgwwwgvwwwxwwgwfwvwwwvwwwWwvwxxgwwxwxxwwevvgvxvwxvxwxVvwvwwwgwwxwxwfwgwwgfhwxwwxwwwwwwwgfwxwwxxwfwuwwxWgxxxwwgWwxgwwwwvwwwwguwwwwwuhwvgwwvgxwvfvwwwuwvwfwwwwwvuwgwxvxwwxxvvwwwvwgwwwwvvxwwwwxgwwxggwwwwxwwwxxwxvgvvwvufwxwwxxwwvwwwwwwxwwwwwvgvwwxxxuwvWwwfxxwxxwwwwwwwgwwxxwvxwghwuwwwxvvwwwgvxwxxvwwxwwufgvwvggwvwvvgvwwwwvfwwxxwwVwegwwgwwwwwxwxfvgwvwwwvwwwwvwwwvwwgwxwxxwvgxxvgwwwwwxxwwwwwgwhwxxwxwfwvvwwwwwxxwwwwwwuxwwwvwwhxwwxwvwxefwwwwwwwwwwwwwvxwwgvxwwwxwxwxwwwgwwxwxwwxwwxxugfwwvwVvvwvfVffvgwvffvfvhVvwvffwfuvwufwwwfwUvgvvwwwvvgwvwvvvvvvwvwwwwvfvvwxvwwwvvvvfvwwwwvvwvwgwvwvwwwgfwvvwwgfxfwvwvwwgvvwfwfvwxwxwxwwgvwUvwfgxwgvwwxwggwwxxxwwufwwxwvuwwwgvxvxwwxwvwwwxxwxwwxwwgwwxwxwgwgwvwvfVfVvugvggvwfwfvvwwwgvvgvwfvvveVfgwvvfvvgwwvwevgwvfxwxwxwxwwgwvwwwwwwwwwwwxwvwwwwwvwgwvvxvwxggwwwwxwwwwwwwwwvvwwwvveuvxuvwwwvvfxwwxwgwwvwwwgggwwwfgvwwwvggggvwwfuwxwwwwggxwwxvwwwxwwxwvwwwwxwxwvvwfUgvgvvvwgevfvvffgvxgwwgwvvuvggvwxXfvvwwwvwwwhxwvwwvwfvgwwwwgfwvwwwwvxwwguvvxwwwwgwwvxxwxwwxwwwvvwwfwxwwgVvevxwvvgwwgxxxvvvwfwwgwwxwwwwwgxxhvwhxvxwgvxwxwwwvxxhvwvxhfwxwxxvwgwwwxwxwgwxgwwwwvvVvWvuggwwwwgfvevwwgfwhwwgevweggwwvwwWwwgwewgvvvwgvwwxxwwwvvwvwwgwwvwwwwwguwhvxxgwwwvwwwwwwwxvxwwwwfvvxwwwwwxxxwvhvwxxgwwxxxwwxwwwxwwxxwgwvxxxwvxwxwggxwwwxwwwxvwwxwwwxxgwwwwxgxwxufgGvevvwwfuwUvwhfwuwwfggwwwxwffwwwfwvxvgffwfvwwwwwwxvwwwwuvwffwuvgvwwwgwvvwvwgwhgxwvwwwfwwgvvwxwwxwwgxgvwwwwfvwwwwvwgwwfgwwgwvwgwwfwfwwwhwwwwwfwwWgwwxwwwwwwwwxvvwwwwwwwwwwvwwxvvwwwwxvwwgwxxxxxgwvwggfgvwvwgwvwfgwwfwFgggvweggwwwvwWwvwfvxwwwwVwwggxvgfvxvwwxwwgxfwwwgwwwwwwwwwwvvwwhwwwwgwwwwgxwwwwwxwgwwgggfwxwwvwwvvuwvwwwwwwwwgwwWwwxwwwgWgwwwxgwwgxgxwwxxwwxxxxxgwwwxwgwwxwvwxwwwwwwxgxvxxxxxwwvwxxwgwwgewgvwwvfvwgfvwwwfvfgwxvhxgefvgwvvvwwgfwvwwhvwwwvwwvwwwwwwwewwwvwwgwwxwhwxwwwgwgwwwwfgvwxxwwxxwwwxvwwvwwggwuwgwfwwwxwgwvwWgwuvvwxwwhwwwxuxwhvxxwxwwwuwwwwxwwhxwxwwwxxwvwwwwwvxxhwvwxhvwwxxwxxwuggfwwwWvvvwxwwgwVgwwwgUgggwxwwWwvwwhvwwwxwxgwvgwvgwwXwvwwxxwwwwwwxwxuvwgvxwwxxhwwvwwwfwxwhhwxwwwvwxwxwxxwwwwvwwwwxwvwwhxhvWwvwvwwwxxwxwvwwwxxwhxxxwxwwxxxwwwwwwwwwwwxxvvwwwwhwxwwwwwwwxwvsxfwwwwxwfxgvxwxwwwwwxwxffxxwxwxxfvxwwwwwwwwwxwvvwgwwwvvvxxfwwwgvwvwwwwwgwgvwwwxxgvgfvwxwwwgwxxwvvggwwwwwwxwvvxhxwxwwwwwxwxwxwvwgxxxfvwwwwxgvwwwwwwxwgwxgxxwxwxvxvxxgvwwwgwwxvxwwvwxxxvwhxxxyvvggvwwwwxvwxwwwwwxwwwvwxgwxwwxxxwwwwwwwwwhxxxwxvgwwwwxxwwwwxwxwxxwvvwgwgvgvgfgwgvwvwwvwxwwwwwwwwxwwxxxxwvvgvvwwwwwwvwxvwgxwwwwwwxwwwxwxVDDewwgvwggwxwgwgvgxxxwwwfxxwwwxxxwwwwwwwwwxwwwwwwgxxwwxwhxwwwwwxxxgwwxvvggwxwwwvwxggwvhwxwxwwwwxxwxxwxwwwxwxwwwwvgwwxwwvvxwwwxwwwwwwwxxwxvgxwwwwwwwgwxxwwxwwwwxxwwwwwxwxgwxwwwxwvgxxwxxwhxwxxxwxxvgvwwwwfwwwwwwwwwwwwwfwwwxxvwxwwvwwgwvewugvwwwwgvwwwxvwwxwwvvwvvwwvwxwwgxwuxxxgxwxxUvvwwwwgvvwwwwwwgwxxxxwwwwuxxwwxxwuwxxwxxxxugvwwgwwewwwwvwwwvwxwwxgwwwxwwwwxxwwggxxxwxxwgwwgvwugvwvwVgwxwwwwwwxwwvvxwwuwwvvwgvwxxwvwxxxgvxxgwwvvwgvwgwxxgvwxxwfwwwwgwwwwwwVhwwvwwggUwVwwwxugvwwvwVwwwwvwwgwxwwwgwwwwxvxxxwxwwwwxgwxwxfwwwwgfwxgwvwwfvwwxxfvvwwxxgwwwxwxgxxxxwwUvvwvwwgvwwvxwgwwvwxxxgwwggwwvvwxywgvwewfvfvvwwuwvwwvwxvwwfwwxfwwvwwwxxwxxxwxxwxxwxwgvwwwWWfxvwwwxxgwwwwwwxwwwxwxxxwxwwwvggwgfvwwwwwvgwxWvxvwxgvwxxwxxwxxxwxwxwxwxvVwwvwwfvvwwwfwwvfxxgwwwWvwfwgxxwxxwwwwwxxwxxxhxwwewxwewVwwwwwfwewxxxxwwwwxxwwwwxxwwwgvvxxuvwwwwvgwwfvvwvxwgvwxxxxwwxxxxwxwxxwwxwwgvUgwvUvvwwwwxxwwxxxwwwxxwwxxxuwwxgwwfvvvvgvwwxwwwvvgwvvwxwxwwvgwwWwvwgwwfvfwgwgfxwhgwwwwwxwxwwwwwxxvwwxwwxwwxxgwwwwwfvvgwwxxwfvvwwxxwwvwyxxxvwygwwwwwxfvvwxwwwhxxxxwwwwxwwwwxwyxwwwgwgwgvwfgwwvwwxWgwwhwxffvwwwwxwxwwwwwxwwwxxwvxwxxgwwwwgwwvvwwvwwwgxxwwxwwgwwwwwwxwxwwwxxxwwwxgwwwhwfvvxwwwwwxwxxwwwwxwxwxxxwxwxwxywwxwwwxwwxwwwwwwxwwxxxwwwwwwxwxxwxwwwwwfwwwvgfuvfwwwwwwfvuwwxxwwwxwwwxwwwvwwwwvvvwwwwwwxxwwwwwwwxgxwxxxxxvwgvvvfwwwwwgvxgfvwxwwwgvxwxxwxxxxxxxxxwwxvvfhwwwwwwwgxxwxxwwwwxxxgwxxxxxxwwxwgwwwwwxgvxxwwwxxxvwwwwwwwwwxxgxxwxxxxxxxwxgwwwvwgvxwfwwgxwxxwxfwwwwxxwxxxwwgfvxxwwwwwxwwwhxxwxxwgwhwxxxxwghxxxxxwxwxxxwwwwwwwxxhwxwwvvxwwxuvwfuwwwxwvwvvwxgwvWxvvwwxwwvvfgwwhwwxfvxggtwvWvwfuwwgwwwwwvvwwwweffeuwvwfgvfwgvhvwwwgxxwwgwwfvwvdVwwwwwwvwfwuxvwxxwxxwVVfgwwwwwwxvvwwwwwxxxwxgVVeuvvfvvvweuvWwvwwwTuwegfwwwwxwvxgxgxvxwxguwwWuvgvvfuwwggvwgwwwgvvvgvwvvVffvwxfwwwxwfvfwvwwvwwvwxwgwwgvvwfuvwfwgfuvwwwxgwvvFWwtfuvwwwxwgwwwwxwwvvfgwgvwgWWxgwwwdVvUuwWvvwhwfuvvwvvwxwxvwxfvvwvwwxxwwwwuwwwxwhvxxwxVduwvfvwwxggwxuwfgxvwwxvguxwwwvxhwxwgwwwggwwwvuvwvefwgwwwwvvgfvwwwwwwwgvVVvgwvwxwwwxwfwwxxxwvefVduwffuwwwwvvvvwvwvwwwhxvefvwvwfvxxgwwvvwxwhwwxgwvggwvwwvwgwvxwwvfWwwghgwxgwgwwxwwwxvwwwwgxwwwhwwxxwvwvgVvvgxxxwxggwgxvwxxxwvwvggVfwxggvwwxxwhgxxxxwxxwvUVvevwvgwwwVdfgvwwwwwxvveugvwgwgwvwwwwwxwwxwwhwxwwUuwvVvgwwggwvwvvvwWgxehwxwxwvhvwwwvvxwgwwwwwwwwxffwwfwvwggvvwwxxxwgwgxgwwwxxxwgwgwggWfhwwvwwxxwwhgwxwxwvvgwvwgwxwwwwfwwwwwxxwwwvwgwvwvxhvvwWvwxxwswwwwvwvvvwwWvvvvwwwwfewwwwvxwvgwfwwvwvwvgvwvwvuwfvvuwvvwwwwwvfvfwwwvvwwwgvsuvuvwfwuuWvvwgwxvwvwvvgxwVewvwwffvvfgwdtvwwxwwwuwWwewxwvvwwwvxwwfwfwuvuuvwwwwffvwgvwfwgwvhwfvwwwvfxwxxwwxgvgwwwffwgvwvfvffwvgwwvvuwfwwwwvwxwtdwwwwwwwtuvvgwwvvwwwwwfwwwwwfwvwwgwvwggvvwgwewfwwwwwwvwwwgwwwvwwwvgvvgxghwwvwwwvvwfvuuwgwwwefvvwwwwwxggwguvgxwwwxwwwxxxwwwwwwgwwwghwwhwhfvvfWhgvfwwgwwwwwwxwxvgxwwwwxfvwwvvwwvWuwuwwVfvvfvesuwwwwwwwvggvwxvvwxwwvwwwwvVvwvfvvfvwffVvvwvvwwwwwvgvvwvwwgwwvwwwhwwwwgwvwwwvvwwwwwxwVutwwguhvvWxwxwwwxwxxwwvwxwwwwxwxwwggvwvvvuvgwwguwggwfwhgwuwwwwwwvxwxwfWhuXwwhxxwxgwvvgffuvgxxVfwvgvgvwwfvxwwwxxxwxwxwxwwwwwxwwwxwwwvwgwwvwwwwxwwwfugvvggfwuvwxWwhxwxwwxwhwgwwxgwgwwgvvxwvgvwwgxwwwwggwvwwwxwvwxxxwWwugvwwxwxxgwwxvwwwwgvwwwwwwfvgxwfxwxxvwwwxwwwwwwxwvxxvxwgvwwgwwwvwxgvwwwxvwwxwxwvwwfwxwwvwwwwxwwxgvwwvwvvwvvvwvgvwxgxggwwwxwwvwvgwvxwwxwwgvwwwwwxxwwfvvgwwwvgwwxvfgwwxgwvwwxxvwgwwwxwwxxgwhxwxxxxvwvwwwxwwwxvwwvfwwxwxwwwwwxgfwwxwwwwwxwwwwxgwxwwxxwwwwxvwwwvgwwwxvWwwxwwwvhxwfvgwwgwwwxwxggxgwhwxwwwwgwwgwgwwwxvwvggfwgxwxwvgwwvwggwwwvwvgwxvgffvgwwwgvvwxwvgvxxwgwggwgwxwvwvwgfwwvwwwwwvwwwgwhgwwwwvwwwwwxwxgwwgwwgwwxwwgggwgwxvvwwvxwwgwwxwwwvwwwgwwwwvwvwffvwwwwvvwwgwvfgwgwxwfxwvgvwxwwxvxgwwxwxxwxwvwvwwwwvwwwwwgwvgxxwvwwwwwwvxxwwwwwwwxhxwxwwwggvvwgwxwwggfxwwgwwxwwvwwhwxxxwxwxxwxwxxxwwwwwxwvwgfwgxwxwwgwgwwwgwwxwxxwwwwvvwgwgwgwwwwwwxwwwwgwxxfxxwwwwgvwxgvwgvwfwgxwwwgwwfwwwhwxwwvwwxgwhxwxwwwwgwwwwxwxwvwwwwvwgwwwgxwwwvwwwwwgwwxwvxxwwvxwxwfwggwwgxxvwvwvgvgwxvgwxggwxfxxwwwvvvwwwgxhxwxwwfxvwgwxxgxxwwwwxwwwgvgfgwggxwwxwxwvwfvfwwvwhgxwwhxwwgwhwwuvwvvfuffguvwvwvvwwvwvxgwwwwxwxvgvwwvwwwxewvwgvvvfefvvgwWuwwvwvvwvwwfgvwfgvwwvvfwwwuvvwgvwvwxwxwwevwwgfvffUwvwwvvefwwwwwgwvwxwwwwwwvxwxxxggwwxhwxxfeUwdvefUufxwwwvevwwvwxvwgwxwwwwwwwwwgwvxwvxvwxhwwwwwwfvwwvfVfgfxwGvvwwwwguwwvwwwvguwVvwgvwwvuvwWwwgvwxwwwvwwvxevvwevvwvfggfwvwwwgwwwwgwevvwgfwGwwwvwwWVwvvhwHxuxwwwxwvwfeffvwwfuvvvwxTvuvgvwxfuxgxwgVvvvwwwwxxgwwwgxvwgvwwxveuuvvwWvhvwwwxwvfugWhvggwwhgwwggxxvwxgxvvvgwwwxwwwwwxxvvvWvvwgfUgvvwwvdVwvxwwwxwwxgwwxwxwwwwwxwgwxxxwxgdVwefvwfvvwuwwweuuwfwwvvxwhwgVguhwwwxwwxwwwwwwvwfwfwWgwwwvwxwfwwwgwxwxwvxwgwvwxhgxwwxgwxxxhwwwwwwwwgvvwwwvgwwgvwxwggvvwxwvwgfVxfwwxwwhvwwxwxxwwwhwxgfUeuVwVtuxvxgeevwwvwwevhfhwvgfvxxxwwwwwxvwwwwxwwwTvuvfuwhWvwwwwvvfvwhxvwgwwwfwxggxxxxgwwwwwxwxwgvgwxwggvwwxwvfwegwvggfVxfwxxxwxwggxwwwxxxvwxxwfwvwvwwvgwwwwwwwhwwwgwvhxxxwxxxgxwxxwxvvwxxwvwwvwxxvwxwgwxwwwvfwxwwxxvwvwxgfwwwwwwwxxwwwxxwvwwvxwwwwxwwwxwxfwxxxwgwxvggvvwwgvwwxgwwgwwwwxxxvggwxvwgwxhwxxwwwxwwwhxxxwwwxwwwvwfgwxwxxwgwwwwvwxwwxwwwwxxwwwwxwxxwwwwwxvwhwwxxwwwxwwwwxwgxwwwyxvggwwwfwwxwxwwwxxwxwwwxxwxwwxwxxxwwgwwxwwwxxwvwwxxhwgwxwwvwwgvwvfwwvwxgwgwxwwvgxxvfwwxwwwxxwvxxxxwxwwhgwxxxvvgwwwvwggwvgvwwxwhxxwgvvwvwvxwhxxwwhwwwxxwwvgxvwxxwxxwvxxwxvfwwwxwvwwxwwwwxxwwxxwxxxxwwxwwwwgwxwvwwxwvwwhxwwxxvwwwwxwwwwwwxxwwxgwvfwwwwxwvxxxwwxxhwxwxxvwwwwxxxvvxwxxxxxwxdggwgvvwVvvvwvgfwvwvggwwxgwwwwwxxxwwgvxwxwwwwwxVvwwwwufvVwvxwxgwxxwxgwvwwvxwwwvVwdwuvwxvxwhwvwgwwxwwxhxgwfxgffgWvfgGewgwwFgewwwhwwwwgfwwfvfwxxvwvvxxvxwwxxwxwvggwWwvxfvvhvwwWfvwhwwwwxwwwwwwvwxwwwhvwxxwwwxwxxwxxwwxgwwvwgvwvgwugggwxxxWfvxwwwxwgvwGwugvvgwgwxWgvxwwwwvhgwwxgwvxwgwwgvwwwwwwwwwwxxhwgggxgwvwwwxwuwwxwwwwXhgvxxwwwfwxwgvvfwgvwxwxWgvwwwwxvxwwxwguwgxxvwwxwwxxxxhxwwwfwvwxvvwhwwwvhwvxxwghwwwxwwwxxxwwxgwwwxwxwwxxxgwWvvxggfgWvgvxgGuwwwwWfdgwwwgwwwwwweuwwfwvxxggwxwugvwfvvvvvhvwwwgvvwwwwwwwwwwwwwvfxvwwwxxwxxxwxwxxwxwxwwwwwxeevgwxgvgxwxwxwwHxwWgwwwghxxgwxgxxwgxwwwxuwxwwghwxhwwvxvwvXxwGWwvwwgwwxxwwxwxgwvwxwxhwxvwvggWvwwuexxwWguwgwwwvhgwwwwwvwxxxhwvwwxxwwwwwwwxwwwwxxgvvwwuwgwwgwwvhwgwwhxwwwwwgwxwxwwwxxwgwwxhxwwhwxfvvfhwwghwwwwwxvwfXwxGWwvwwhwwwwxxwgwwwxxhwhwvwuwwwwgxwwwwwwxwxfxhhgwwwwxwxwwxxwxwwgwgwwwxvwxxxwvwxfwwwxwwxxwhgxxwwxwvfwwwwvwwxxxwgwwwwwgwwwwwwxxxxfwvvvwwvgvxwwgvwvwwwgxwxxwwhwxvvvfwwwwwwwxxwxxxxwwwwwxwxxxxxgvwwwwwfwwwwwwxvhxxwxwxvwwvwwwwwxxxwxxwxwxwwxwwwwwxxxwgwwxxxwxhwhwxvwwwxwwxxxwwxhwwwwyxvvvvwgwxxxwwxwwwxwxwxxxxxwhxwwwvwwwwwxwwxxwwgwwgwhxxxxwxxwvxvwfwgvwwwvwxvxwwvvxwwgxxxxxxxxvwfwvwwwwwwxxxwwwwxxxxxxxwxvvgwvwvwggwvxwhwwxxgwxwvggwhgwxxgwxxxwwwwggwfxwxwwxgwxwwwwxxxwxwxhxwwxxxxxxxxvwfwvwwwwwhwxhxxhwvxxxwxxxwwwwgwvwwgwwwwxwxwxxwxwwwwxgxwxwwwxwgwgwwxxwhwxhvxwxxxxxxxwxxwxgxvwxwgvxxxwwxwxxxxxxwxxdvvwvwfxevvvvvvvvwvwxvgwwwvwwgvwxwwwwwwwwxwxwxvwwgvvwvgwuvfvvwxxxvuwwwwxwgvwuvgggvwvvwtuwvwwwwgwwgxwvfwgVtwggudegwgffvwwxfwwhhwwwwgvwgffvwwwxvwfwxgxxxxxwwvfgwuvgwgwvwwvxwwwxwxxxwvwuvwxxvwwwwwxxwxxewvxwvwugfvvwwwwwwxevwwgwwgwvwwWwvwwedwwgwwvwhvwwwwwvwvwwvvgvwwxxhwwwwgwgwwwXvvuwwxwfwwxhwxxwwwwwxvwvvvwuvfwfvvwwwuvwhwwwvwwwwwwwvwxwvwhxxxwwwhxxwwwwwfvwxvwvvwwvwhwwgxwwwwwwwxxxwwwgxwwvxxwwxwxwxuvvgWtwgguudfvgfvwwwvvwwwgwwwfwgwuewvgwwhhxxwwwxvvvuugwweuvvwuvwgwwwwwwwwgwwwwwwwgwwwwhxwwxwwxxwwwvgvVvevwwHhwwwxwxxWwvwwghxwwwgwxvgwwxgfvvfwXwwwwwvwwvwhwGxuwwhxxwwwwxwxwvhwxxxxhwwwgwugvwvvvwgvvwwwwfvvxwwwwvwwwwwwwgfxvwwwxwxxwwxwxwwvvvxvwguvwwwwwwwwhwwwgwwvwwwxhwwxvwfwwwwxwhwxWwvgwXwhwwvwwvwhGwuwvwgwxwwxwxgwhwxxwwwgxgwuwwwwfxwwwwxwwghvwwwxwxwwxwxwwyxxxwxwuwgWvwfuvwgwgvvwxfvfgvwvwxgwgwwxwwxwhwgwxwvxxfvxwgtvffevwuwwgwwwwwvfvwwwvWvwWvwvgvwewvxWwwgwwvwwwgVwvwvfVwfUfwvvwwggfwwwwgwwgxwwwvwgwgwxwxwwwxxxhxxffVEuvgfvugfWgfwvwgwgxvwxwxvevvggwwwwwvgwwxxwxggwxwvVvwxwWuvVfgvwwgvvwvwwfvvvvxwwfgvwWvvwwvvxwxwfvgwgwgvfwwwwwwgwxfvwwVvvwwwxwVvvwwwxgvvfgwwghVvvwwgghwwwvwwwgwfGwxHWwWwexgwwfUVwgvewUfuvvwwFevfwwgxwwxwwwwwwwvwxggwxwwwwxwwhwhxwvwxwVuuxvWfgvgwvwgwvwgWxhWgwxwwvwvwggwgwwgxwwwwxgwxwvggvvxveFwgUfgwwxWggwgwxxgwvwxwwxgwwwwgxwwwwxwxxxwxwgUfVveweutegfVVuwwwgwvxgxwhgvvfvhwwwwxxwwxwwxwwwwvfwwwwfwwwwgwwxfWwvwxxghwxwxvxwwggwxxgxwwwwwwhhxhxwxxwvwwwvgvwvwfegwgwvfgexhwgxwggxxwfwxxwxgwvvxwxxwxxwwwxxgeFwVuuxfvvwvgwVvfwwwfwuwwwxwhveugxwhwwwwwwhwxwxxwxwxEuvgvgfwguwwwgwfwWhxxhgwwwgfwwvgxwwxxvwxxxxxwxwxwwvvvwggvvwvwvwfgewgwgwwxgwxwfxwwxwvhwxwwxxwxxxwwwwhfgwwwwwvwwwwwvvgwwgwxxwwwxxxxggwvxhwwswwwfvwwggvwwfwwwwwwwfvwwfuvwxfvwguwwvvwgwwvwvfvvvvwwedwwgffwgvwtdvgwwvwgvwufgwwfwwfwwwwwwwwwwwxvvvwvfvwwwvvvvwwfvvvvghwxvWuwSuvwvvgwwxvuwxwwwxwxwwxfvgvfuvwwwwwvfwvfxwwxxwvugfwwgwxwwwwwwxwxwwwvgvwvwwwgwgwuugVwgggweSwwwfwwfvvvwvwvwwvufwwwfwwfgvhwwwvvwwgwfgwwwwfwfwggwvvxgwwgwxwfvwwwguvgwgwwvwwgwvwwwwwgxwwwggwffvuvfxwwxvvfuwwfwwwwxgwwwdfvxwwwwwgwwwvfvwfvgxgwwxvwvwgwfugvwxxwgvggwwfgfxwwwwwwwewwwwhwwwgvwxwwxwuxwvwffvvwwwfvwvgxwvvwuwWxwxxwVewdtvwwvxwwvvwxwxwxxhwvvwfevvvugwwwffwwwwxxxwxwuugwwwhwxwwwwwwwhvxwwEvuwwwwwwgvwxWvgxxxxxwgwwvvWxwxwwgwfwxwxwwvwwgwwfgvwwwgwwwxxxgwgwgxvwwwvwwgwwwwWwuwvxwxwwgwvwvggvfvvvfvvxwxfUwgvwfwgwxwxwvuwwwgwwvwxwwxgwwxwwhwwgwffwfwwwhwgwwwwgvhexwwxxwxvxvvwvwwwwwwxhvxgxwxVfwwvvhfwwwwfwWxvxwwvwuwggwwwwVvewxgxwxwxxwxvwwwfwgvwxwxxwwgxgggwwxhxwwxwwxwwwwwxwxxgxxtfwvfvwwwwwgwgvwwgvwwfwvwvwwwwvfwwwwwxwwgvwwwwwwvtuvvwvwwwvvxwwwwugfvuwgwwfwvvwwwwhwvwxxwfuwwfvwwwvgxwGuvvwwxvvfxxxwWvfvUwwgwxxdewfwwwgwhxhwugvwfvwfwwfvwwwwwwwxxxxwfgwvwwwvwwwwxxwwwwwwwwwxxxwxwvvwxvvwwgvwudwwwfwvxwvugwwwwvwvuwgwvvwwxfugwwwvfwwwvwwwwwvwxxvwwwwxghfuxxwgvwwwwwwwwwwwwwwfwgwxvwwvvwvfwfuwxwwwhuuwgwwwvwwwwxwUwvvwwwgwwxvfwwwwwwwxwxwfwwwwwwwxxwwxwvggxwvwxgxuvwwwwwggxwwwvwwxwvwvwvvvwffwwwwgvwgwFuvwwwvwfwwwgWvwfvvvxwutvfggwwxxwxwvfwwvuwgwwwwgfuwgxwwvwxwxxwffwvwwgwwxwwwwwwxxxwxwwwxxfwwwhgvvwwwhgxwVfugwxhxwwxwwHwgxuwwgxgwvwgwwxxxwwwvWwWxtxxwgwxhvwwwwxwvgwwwwwvxwxwxvvfwwwWfwwwvuwgwwwxwhwgwxwvwxvwwxxxwwxwwxvvwwwwwxxwfgwxwxxwxwwwvvxwwxxxwwvgxwvwgwwxxgwhfgvvwgwwxwvvWWwtxxwxwwwxwwwhwxwwgwwwxwvxwwxuwwwwwxxxwwwvxfvwxwwwwwwxxxwwxxwxwwxwvxwwxwwwwxgxgwwwwwggxwxwwxwwwxxfwwwgwvhwwwwwvfwwwvwgfvvhwxxwwwwwwhwwvwfvghxvxwwwwwwgxwwwwwwwwwxwxwwxwwwgwwwxwwwxxwwwwwwxgvwxwxwgvwwwwxwhxxxwvwwxvwwxwxwxwwgxwwgxggxfwvwwhwwhwwwxxxwxxwwxwwwwgwwggwwvvgwwwfxwwwwwgwwwvwgxwxwwxwgwhwwwwwwxwgvwwwvwwxgwxwwwwwwwvxggvvgwvxwwwwvvhgvwwwwhgffwwxghfwxvwxwwwwvhwwgwwxxwxvxwwwwwwwvwxwwxgxhwwgwxwhgwwxxwwxxvwwwwvwxwwvvxxwgxwwggxhxwwwwwgvwwwwxfxwxvhxwxxwwwvxxwwwwwwgwxwwhvwxwwwwwgvwwwwwwxxwwxgxwwxwwwwgvvwvvhwwxwgxwwxwwwvwxwgxwwvxxxwxhwgxxxxwxxxgwwwxwhwwxxxwxwxvvwxwgxwxwxxxxxxwxwwxwwxxggwwxgxxwhxgxxwwxvgxgwwwwxhxxxxwwxxvwxwvwwxxwwwvwhwxwwwxvwvxgwxvgwwwxgwxgwwxxxxxxxwwwwvxgxwwwwwxgvwwxxxgwgxwxwhwxxwwxxfwwxggwwxhghwwwxxwxxxghwwwhxxhhfxwvgwgwxwwhxxxxxxxxxxwhvwwwxxgxwxwxxwxwwwxxhxxxvgvwwwwwvvwxwwwwwwwwwwvvwwwxwwhxwwwvwvexvxwgwvxwgvxwxwxuwhxgvwwwwgwwvwwgwxwhwwwwgxxxxfuuwwwgwxvwxwvwwgwxwgvvwwwwwfwgwwxxwhxvvufwgwwwvwwwxxhwxwwwfvvwgwWwxwgwwggwgwxgxxwxwwwgwgvxvwWwxwVgxwwxvvwhxgvvxwwvwwwvxwwwwhwwwwgwxgvxwwxwvvwwgwwwxwhxxwwvwwWWffwwwwgvxwwvguwgvxxxwggWwwxvWggwwwwxfwvxwwwwwwfvvwwvvwxxwxxwguwwvxwvgwxwwvuxxxxxwWgxwggwxxxxwwxxewwwwxxVwwhxxxxwwwfuuwvwwwwwuwwvwwwwWwwxgvwvxxwxwwvxxwxwwugvwwwwgwwwwwvwwxxxhwxxgwvuwwwgwwxxxwwvwwwxwwxwgvwvwxwwwwxgwxxxxxxwwhhUwwxxwwxwhwxxwwggwvgfvwwxxwhXwwgxwwxwwxwwwwgwwvwxwxvwxgwxxugvwgwwxwwwwwvxxxwwwwxvwuvwwxgwxxxwwvwwwwwxxxxwwxwvvwwfvwwvwgfwggwxwgxwxvvwwwxxwxgwvwxxxxxwvwgghwwwxwwggfwvxwxxwwwwwwgxwvwwxxvwwgxwxwwefwuxxwxVwfWxwwxxxwwxxwxwxxwxxwVwggwwwwwegVewwwwwwwwwwwfwwwwgvgfvfvwwwwwwwwffvgxhVWTCwgvwwvfwgETfVfVfwwvdgvvwgvwfwwvffVevwgwvfwdgvvwwwWwwwwwggwwgvwhgvwwwwwgvwfwwwwwwwwwhwgvwffvDuuwvfewwffgwxXvVfwfwwwwwwwwvfwwwwwwwxfwwguwwwwwhgwwfwgfvxgvfewfgWvwxgvwwwwggxwfgegETwgvwfwwgW4EffVewfvwdgvvwgvwwfvwfVfVwwwWfwwgdgvvvwxgwwwwgVefVfVfwwwuwwwffVevgvGuwwwUuuwwvvwuwwwwxGvwvwuwwwUuuwgvwwxvgwwwwfwwvwwwwwwhwfvwuwwwwwxxxwgwfgwfwxgvVfwwgwvvxggwwhfWggxfwgwwwwdgvvwwhgwwdgvvUuuwxwgwwwxWwfwfwwwxwwfwfwxgvxwwfwxxwwwwfwgvwwgvfwgfwgvwwvvwfgwfxWgvwwwwUttwvfewwwwwwwhvVfwwvvwwwwwfwwvwffvvxgwfvwuwwwwxgwfwwwwwwwvfewwvfewwhwxwgwgwvxvvggvgffVeDuuwvfewfVfVwxGvVfwfwwwUttwvfewHgvwwvVfwwvvwvwvwhvgfvfvvwgvfewfgWvwwwWvwvwwgwvxwwfvfewwvfegvwwVvgwwgghwwgWvgwgwgwwwwwvfwwffgwxgfwwguwwwvxgwfwwwwwwwhvVfwwwggwxwwwxvwfvVxgggwwwwdgvvwxXvwwdgvvUuuwgwwhxgvwwhwxwgwvvwhwwgwwxvhwwhwwgwwwffvgwwwWvVfwwwggvwxggvwwfWggxwwfvVfwwgwvvwvwWvgwfvVhwwgVvgwwgvxhwwwwfwwwxwfgwwwwxvgxfwgwxxwwvvwxvvghvgwgwgxgggwwwwwgvxvwwfwgxwwwwfgwxwwwwwwwwwwwwwwwwwxvwwwwwwwgwxwwgvegwwegVwwgvwwxwggvvwwguwwxgwgwwgwwwvwxgwxhwgxfwwgwwwfwwwgwwxxwwwvwwwxwxxxwwwvgwwwwwhggwhwwxxxhvwwgwwxxwgvhwwwwhwwWwvxwgWwgwfvwxwwgwwxxwxwxxwxwxwwxwgvwwwvvgggVggwwxxVVgwwwxguwwxvxwxwwgwxwfwvgwwhxwgwwgxvwwwwwwwwwwwvvwgvwwwwwwwxwgvwwggwwwxwWhwwefwwxuwhwXXfVwfwxxvwwwwwwxxxgwxvwwhwwWwgvhwWgwvwxxwxxwwgxwxgfwwxxwxwwxxwwwwwwggwxvvgwvwgwhhfggvxxwwwxxxxuwwwxxxxWxwwxxwwwwwwvgwwxwxwwvwvwwwwwxwwwxxxwwwwwhxwwwxxwwxhwvwwfggwwwwwvwgwwwxxwWxuwgghvwwwxwwwxwxvxwxxhxxxxxxwwuvgwwwwvvXWgvwhxwggXwxxwwwwwwwwwwwwwxwwwxwwwwwwuwhwxxwvwhgxxxgwxxxxxwxwwwxxxxwvwwwwwwwwWwfggwxhwWwwggvhggwwwxwxwhxxxxwxwhxwxgxwwwgfgwwhxegwvgvfwwXXwVwggxxxxhxvwxxwwxxhgxxwxxwwxwvxwxxwwwWhxxxvxwxgxxxxxxxwwxwxxxxwxxwwwwxvwxxxwwxgxwhxwwwwwwxxxwvxwvwvwvwwwvwwvwvwwvwwwwvwvwwwwwwfwwwxwwvwuwvwvwwvvwwwxwxwwwfvwvwvgwwwwvwgxwhwxwwxfvvvvvfwwvgwvwwwwxvwwwxvvwwvwwwxxxwwxwxxxxxvgvxvwgvwgwwxgwwxxxvwvwfwwwwgwxwwwwvwwghwwvxwwgwvwvwvgvwvgwvwwvgwxgvgvwwwwvgwvwvxwwwxvvwwxwwwwxxwxwwwvvwfvwwwvwvwwwgvxwwvgwgggwvwwwvwvwwxwvgwgwvgggfgfxwxvgwgwfwwwwwwwwwwwxwxvwwxwvfwwwvwwwwwwwxwwwwwwxwwwwwvwwvvwgvxwxwwvxgwwwgvwgwxgwwwxxwwwwwgwwgwwxwwgvwwfvfwvvfwvwgwwfwwwwgvwxxxwvgvwwwwxwgwwxvxwxgvwwwfvvwvvwwwgxxxvxxxwwfwwwwvwwwwxwwxwxgwxwvwwggvwggfwgwxwwgxwwgwwxwgwwwwxxwwwwwwwxxxxwxxxgwwgvgvgwfwggwvwgxxxwxwvxgwwhwgggwwxwxwxxhwxvxfhxwwxvgwvvwvwvwxgwwwwwwwwxwwwwwwwwwwxwvwxhwwwwwxwwwwwvwgwwwvwwwxwxgwwwwgwwwwwvwwfvwxwgwwxgghwwvwxgvwwvwfvwwwwwvgwwwgxwwxxwwwwvhgwwvgwgwwwwwwxxwwgwxfxwwwwwwwwwxwxwvfvxxwvwgwgxwxvwgwfxgwfhhwwvhxwxwwghvwxwxwwuwggxwwxvfwuxwwwgvwvxuvfgxxxwwvwgwvwwwwxxxvuwggvwvgvvvvvgwWuvwwwfwuwgwgvvfeffvwfwwvwwvfwvvxwwwxwwwxxfvwwwfuwwwxwveFwvwwwgxxweefgwvwwwwwxvwxwwwwwxxweFvfvuguvgxwvUuwwggwwwxwxfvvwuwwwxvwhwhwgwwwwwfvwwvvguwgvwgGvwwwwwfwuxwwwefVfvvfvggwWvwwvwwwfwxwwgwwvwfvuwfvuwwggFvvvwwwgwfgwWGfvuwvfgggwwwwWguwwwwggwwxwxwvwgeeVvuufvgxVvugwwgwvhwxwxEuwvxgwwwwevhfxggxxwwxxeudwwWfwvgwwvgfwxggxxwxxvWvxwwgwhxwwxwwwwgwvvxxxwgvuwggfgwwwwwvfVwwwwwwvwgxgveevwwfwwwxxvvwwxwxwveUvefdvvwwxwxwwVwvgwgwxxwvgVuvwwwwvvwvvwwwwxwwwwxwxwvvvwwfvuwwggxggwwgwwgxwxwvwwgwxvxwxvxhwwwwhwwwwwwwwfvwwwwvgwxwxxxwggvvwgwxxwgvwwwwxwwgwwvWgfvwxwxwgvfVgvvwfufwwwweudwwgvwwwvxxhgVvfwvwxvwvwXfhwwvwwggxwUuwvwgWwvwgwhvgegxxgVwwvgwxwvgwxwwwwvfxhwvwgwfwwwwwwgvwvxxvgxxxwVgggwxggwxxwwgvxxwwgxvxwvVgfwvxvxwxwvwvvwwfwwwhwgwwwwxwwwvwwvhwggwwuvgvwxwswwwgvvwgvvwfwVwvwwwwwguxwxwwhfwwwxgxvxxxgwgwgxgwgwgwfwfvwgvwgwufwffvwwggfgwwwwvwwGvugwwvwwGwdhgwwvwwwwxwwwvxfgfvwVewFvtwvgxfgwgwwxwxwwwgvwVwvwwWWwwwxwxwxxvwgVvfgWwuvwgfvhwwwwwxwwxwgvWgvxwwwwxwwxxwwxxxwxvwvgvwwwwgfgwfwwWgwvwfgwugwggwwvwvWuxgwxwwv7vuWWggfhwwvgwwfwwgggwwvwwwVfwwwfvwhggxwvwwwwwvwwggggwgwwwvwwvwwhgwxwwgwxwffwwfvfwWwvwwhvwWvWgwgfwxwxhvwfvwxfxxxxwgwxwxwxwxvxwwwvfggfwwgwfwwwwghhWvwhhvwwwwvxvxwxwwwwwwxxxxfwvwVgfvWuwVuswvwgwgvfxWwwwwwwwwgvxgxwwvggvxwxxwxwwxvvgewfgWvvvwwfffhgxggxxxxxxvwwwwxwwwxwwwxwxxwwwxwwwxwetuwwwwvxgWgvwwWvhwxwxwwwwwwwxxwxwwgggwxxwwgxwwwxxvvvgwwwgvwwgwwwxxgwgxwggwxxxxwvxwxwwwwWWgwwxxxwxgxxvwgwfvVgfvgwwwwewvgwggwfwgfxgvghwvgwwwgwvwwwxgwwwxwwxvxwwwvvfvWvwwwwwvuwwhwvgggfwwwxwuxwwhvwwhgvwwxwxxwwxxwguvgwfhuvwgwwwwgwwgxwgWxwxwxwhgxwhfhWWwxgwwxxxxhxXxwwvwwwwvfvxwwwwxgwgxfwxwwvwwxwwxwwwwxwxwvxwwwwwwwwwgwwxwfwvvgxwvvgfwwwwvgwwvuwxwgvwfxxvwwxxwwwfvvvwwwgwwwwwwwwwwwwwwwvwwxwvwwwwwwwwvgVwwwxewwwxwwxwwvwwwwwxxwwwwxxxxwVvvwwwwxhxxwxwwwwxxgwvwvgwgfwwwwgwuxgwxwwwwwwwwwwxxfvvgwwwgwwxwwwwwvwwgwwxwwvwwwwxxwfwwwwgwxxwxvwwwwwxxwxxwgwwwwwwwwwxxwxwevxwhxvwwwwwwwwxxvwwwwvwxxwgxwxxwxxgvxvxwvxgwxgwwxxxwwwwwwwwwxxwwwwwfwwwwfwwwxxwwwwvxwwwxxvwxwfvwwwwwxxwwwwwxxwwwxwwgvfwvvwxxfvwgwwxxwwgvwxgvwwwwxwwxfvvxwvxwxxwwxxxwwwwwwgvwxgwxwwwxhwwwwvxgxwxwxwwwfvwwwwwwxxwwwxwwxxxwwwwxwxxwwwwxwwwwwwwwwwwwhwwwwwwwhwxffvgxwxxxxwvwwxwwwwwwwxwwxvwggwxxwxxwxxwhwwwwxwwxxfwxxwwwvvwwwwwwwvgxwwwwwwwwwwxwwwwwwxxwwwvefwwwwvwvwgvwwwxwwxxwfwwvvuewwwgwgwvvggwwgxggwwvwwwwwwgwxxwxwwwvwwwwxwxxwxwwwwxxwhxwwwwwxwxhwwwvvfwwwxwwwwwxxvWwxxvwwwwggvwwgxwwxxvgfxxwxwwxwgvwwwwwwwVgfxwwwwvgxwfwwggvvwwwvxvvwguvVwwxgvwwwwvwwwwwwwfwwuwgwwwwwwxwWgggUfwwgvwwwgvugwgvwwwwfvuvvxxwwwwwwwwxwxwvvfxgWxwxwxgwwwXwxgwxwvwggvfxgwwxwwwfgvxxxggwvfvwwUgxvxxhwwvegwwwwwwevvxxwwwwwgwwwwwvhwwvwwwvwwwvxwwwwwwwhxwwxxxwhwwwvwwwwgfxwwwwxwwVwwwwwwxgvgxwwgxwwvxwwwexwwwwgwuvwwwwwwxvuwgxxvwwxxwwwwwfXwwwxwfwXwwwwwxxxwxwWgwwwfwhwwxwxxxgwwwwwxxxwxwwxxxwwwwwwwwxxwwwvwxwwVwfvxwwwwgwxxwwgxxwgvgwwwVxwxxwwwwwwvwgxwxWwwwggggfWxwwwwxgvvwxxwxvvgwwxxwwwxfwwwwuwgwhwwxxxxwxwwwwxxgxwxwwxxwwwxfwwfwwwwxxxxwwxwwxwwxxwwxwwfvvvgwvxwxwxgvwvwvvwwwwfwfgwwwgvfvfwvwwwwwfvxwwXgvwwwWuwgUTUvveggvvwggffvfgwwffgUTfeUwefugSwweffvvgvvgdwwvwwwwwwwwwVexwwwwvvwVeUfffwvvhgvwwwwxfwvxUvvwgfvwwgvhxgwgwvvfwvwvvvxwwhWwvgwwvgwxgwvgwfwwfwwvwxwwvwxhwwhwwwwwgwwwvwvwggvvgEUffvvwWuwwggfUvvVwfwfgEUfvfgVufvdwwvfUewggggSwwewwwwwgvwgwgwggffggvwwgvxx7fvvvwggfwggfffwvuWuWfvvwfwfvwggffvvwwgvwggwvwvvgvvwgfvwwwgwgwwWwgvwfwwhvxwxwwwwfwxwwhwwwvwwgwwwwggwwwguXgwxWvwwgwwwwwWxgxwwuugvggwvfwwvwhwgghwwvgwwwwwwwwwwwVewwwvvwwVefeefgvwgvgxwwwfgwfuuwwhfgwwgvxwxhgwvvvvvwwvvvwvfgwwwvghxwwvfwwwvxWxwwvwwwwxggwwvwwwwwwwvxwwUeugUfffwgvwUuevwx7wgvwwggwfeefwgvwxXwwgvwwwwfwhwwvvvuwvwgwwwvvwvgwggfwwgwWeVtvhwwgwwggfwwwwwwvGeVuxwwfvvwggwvfwgxwvvxxhgvvwwgwgvwxvwwgfwwwgwwwwwwwgWvwwggwwwwwwvwwwfwwwhugvgwxfgwwwhwwwwwfxvhwwvuXgwgufvvwwvxxgwWXwwwwgwxwwwwgvxvgwgxgwgwwugwwwggfwwwgWeVtvxhwwwgwggfxwxwwgwwGeVuwwxwfvvwgvXwwxwwwwwwwvwwhwwvwwwvfwwwwwwwgwwwwwxxgwwwwvvwuxtwfvvwvwxwgvfwvwvwxwwwwxfwvwfwwwwvgwwwxwwwwgwvwwfvwgvwguvvwgxwWwdwwwwwvgwfuvvvwgvxfwWwwwwwwxwwgfuwwWtvwwwgfvwgfgwwgghxwguFwefUwwvwhfvxwwwgwxxwvwfWwuvwwxwwwwfwuwwwvwhxwxxUwgvxfwwvwwwxwwvxwwwwwxwxxwvvwwxgwwgwgxvwwwwxwwGvugwwwufvgwvwvwwvxwxguwwwwfxwwhxwwwwwwvwwhxfuwwxgxgxxwvwvwwwfgwwwgwwgwwwwxxwhwwwwwgugvwfwvwfwhwxfvwwwwwwxxxwfgwwwwwvwwwxxwvwwwwwwwhxwxwwfwwvxvgwwxxwvwwwwgwxwwhuwgwgwwxxgwhgwwwvwwgwhwwgvgwWdvwwwwgfwwwffwwwvwvvhwwgguWvtffvvgwwxwvxgwxwwvfgwgwuvuwfwxwwwwwwwhwvwxvxwwvxxwwxwwwxxxxxxwwwvvgfwwwxhwxxwwwxxhxxgweufvwwHhxwwwxxwxgWwxwhgxfggggWwxxwxwwggxwWGxwxxxwwwxvwwwwwhxxwxwwxxwvxwwwvwfwfwuvvwwwxwguwxwwvwwgxxwffwwxwwvxwxxvwwwwwxxwxwgvwfxvwwxwxwwwhwxwxxxwwwvgwxwvvxwwgwvwxxwwxgwvwxgwWwwxxwwggwxWGwxwgxwhvwwwwxwhxwgwwwwxvwgxwuwwwhwgxxwwwwhxxfvwwwwwwwxwwwwxwwxvxgvwwxwvvwwwwwwwwwwwwfxvwwwwwxwgwwvvgwwwvwwfwwwxwxvwgwwwwwwwvwvwwwwwwwvvwwwwwwwvwvwwxwwwwvwwwwwxwwxwxwxxwwwwwvvwvwvwxhwwwwxwwxvwvwwwwwwwwxwvvwwwwwwwgwwwwgxxwvxwxwgwwhwwwwwwvhwwgwwwwwxwfgwxxvfgwwwhwgwwwwwxwwwfgvwwgvxwwwwwgwwwxvwwggwwxwwwwvvvvwvwwgvghgfwwwwfwfwvwvwwxxwwgwwxwwgwwwxwgwxxxgvvwxwwxxhxxfgwwxxwwhwwxxgwwxwgwwxgwxwvwwvwvvxwwwwwxwgwxwfwvwvwhxxxwwwwwvwwwwvvxxwwwwwwwxwwwwvvwgwxwwwxwwxvwwvwgwwwwvwxhwwwwwxvvwwxwxwwgxxwvxvwxxxxwvwwwwvwwxxxxxxwwwhwgwvxxxwwxwwxwgxwxxxxvhwxhhfwwwwxggxxwxwxwgwxhxwwwvvwwwwwwgvgwvxwwwvwxxwwgxxwxwhvwwgxwvwxgwwwxhwwgwwwxgwvwvwxxwwxhvggwwfwwhwwwxxxwxvgwxwxhvwxwvxwwxxggxwwwgwxwwhxxxwwwwwxwhwgxxvxwwwxxxhxxxhxxswwwfwwxvgxwwfwvwwwwvwwxxfwvwwWvwwvgfgWxwxfvwwvgvgwgwegvwwVwSwvwwwvggwWuxwwfwgfWwfwwvxfxvgwvgwwfwwgwgwhwgvvwvwgwwwwggvvgffvggvxxwxvWuwgwugvxwx5vuwwwwxgwwxwwgwvgufwgxfwwwgfvfWwwfwwgwwwFvffwgfwwvwwwwwwgxgvwvwvxwwwvggffvwxwGdgfggvwvgwVwdwgwwvwgvwhwfhwxwwwwWgfwwwwwfwwwxwxwggwwggwvwwwwvwwwwgfvggwwffxwxfgwwwgxwvwwvwwxgwggWgwwwwgwwxwxwfvggfhwwxwwgufgwxgfwxwwxxxwgguxwwwxwwfwwghxwwwwxwwggwwgxvwwhwwfvWvwgffgwgxxwwwwwwwxwwhwxVwwwxWwwvwvwgwxvgxwwwwwuufgfvwvvhfwvxxwxwVewgwvwxwxxFvtwxwxvwwwvvvvfwUxfvvwwvfvvggwgfwxxwwgwuwwwwvwwwhvwhxwvxwwwxwvwvwwxxTuvwgugwwwxxxwvwwxwxwxwwxwvwvxgWxwxwwwgfgwwewfwwwwfxfwwwgghwxWghgwuvwgwxvVVxxwwwwwwwxgvwgffxguvxwfvegwwwwwwwxwWguwwxwwwxwwxhwhwgwwxxwgwwwwwgwwwwwfwffxhvVgwwxwgxhgwwxxgwvgxhvwwwwwxfvgxxwvgxwwwwwwgwxggwxxxwxwvwwgwwwWWgwvwwwxwwwxxvwvwwwwxgvwxwwxfgwgvvwwwxwwwwwwwxwvwxewvxvvwwwwxwwwwwwwwwxwwxvwwwxwwwwgwfvvwvgvxvwhvwwwxwvguwwwxwwwwxwxvvvwvvgvwwvwwwwwwwwwwwwvgwxwwxwxwwxgwvuvfwvvvwgwwvwxwwxxwvwxgxxwxxxwuvvvwwwfggvvgwvgwxwwvuxwwvwxvwwwwwwfxgxxxxwwfvwvgwwfvwwfvwwgvwxwwwxxxwvvvgVwwwgwwvwwvwhgwhwxxxwwvvwgwwwgvuwwxwwwwxgxwxxgwwwwwxvwxxwwwwwxwwwxvvvwfvwwvwwvwwwgxwxwxwxwxxwxwxwxwwxwwwxwwwwgxxwxxxgxvguwgWwwfwwvwwwwwxwvwwwwwwxwwwxvewvvwwxwwwwwwwxwxwxhwwgvwwxxwxxxwxxwegWwvvvfgvwvvWwfwwxwvwwwwxwwvxvwxxxwwwwxxxfgwevwvwwxggwxwxwxwxwwwggxxwxxxxxxvfwvfvfvuwvwxwwwwwwxwwwwwwwwwwwxwxxxxxxwfgwwvwwvxxwwwwwwwwxgwwxwwwwwxxvwxxwwxfuewvwvwgwgwxwgwxvwwgwwwwxxwxwwxhxwwwwxwgwwwwwwgwgxwxwxhwwwwxwwwxwvwwvvwvwwwwXvgvwwfwvxwwxwwwwwxwwxgwvgeUwxhwwfvwwwxxwvwwwxwxxwxvwfvwwwwwfwwwwxwxwvxwgwwwwwwwwvxfxwhwwwwwwwxxwwwwwwwwwwwwhgwwwwxwwwwwfwwxxwxwwxxxxxXvgwhwwfgwhwgxwxxxxhwxwwwwxwxwwxwxhyxwxhvfvwwwvwvxxvwwwwxxxxxxxvxwgwwxwwwxwwwxxxwwxhwwwwxgwwxwwwwwwfwwfwvxxwgxfwwwwwwwwwwwwwvwgwwwwxwvwwxwxwwwxxxwwxxxvvvwwwwUvuwhwwwwwgwwgwxvvwffwxxxxwxwUefwwwxvwwgxxwwhwwwxwxxwxxwwxxxwwxwfwvwxxwwxxwwgwxwwxwwwxxwwwxwxvwwwhwvwwxxwhwxxxgxwxwwwwgwxxxxxxxxxxwffwwxwwwwwxwxvvxwxxxxxxhxxfwwxxhwwwwwxxxuxwwxwwwwvwwhwxxwvxwvxwwvwwxwwxwvgguwvwgvwgwwwwwwwwwwxxvgwgxgwwvwfggfwwvgwxwxxvxxvxvwwxvgfvwweuwwwxwwwwgwxvwxvwxxxxwxxxwvgwwwwwgxwwggwxwwvwwxwwwxwxwwxxxeuvwxxwxxvffwwwwgvvwgwwvwgwgwggvwhwxwvvwwxxxwxxwwxxgxxgwfwgwwwVvuwxxwwxxwwwxxwwxxwxxfwgxggwgwwvwwxfwwwxhwvvwwwvwwxwwxwgxxhwxwvwwxwwwgvwwgggxvwwxwwwxxxxxxxxgfvwwvvwwwvwwwxwxwhwwxhfxwxxxxxxxxxwwvggfgxfwfwwwgwgwxxwgwwwxwwwxwxwxggffwwvwwwxwwwwxxhxwwwwxwxxxxwxwfwwwxwwwwwwwwvvxwwwxwxwwwxxxxxxxxwxwfwwxgwvxwwwhxwxvhgxxwxwxxwwxxxwwwfvvgxwwwwxvwgffxxwwwxhvxxxwxxwxwxwxxxxvvxwxxwxvxhwwxxxxwwxwwwxxxxxxxwxxvvwwwwgwwwwwwwwwxgvwwwwwvwwxwwwxwwwwwwvvvhvwwfwvwvwwwwwgwwxgvwwgwvwxgwwwwxwwvwvvwwwwgvvwwwwwwxwwwgwwwxwwwxwxwxfvwwwwvgwwwwwwwwvgwwwwwwwgxwwwwxfvxwxwwvhwwwwwgUfvwgwvvwwgUfvvwvwwwwwfffwwwwwwwxvggwwxhwwxwwwwevvwvwxxggwweuwwwxwvwggvwggwgvhwxwggwghwvvhxwxwwvvwvvwwwvwwwwvwvwwgvwwwxwwwwwvwwxwwwwwwxggvvwxeuvwwwwwwwwvwhwwwvgwwgwwxxwwwwwxwgvwxxwwwhwwwvhwwgvwggwwwwwwxwwwwwvwwwwxwwwwwwwwwwvvwwwwgwwwwvwwwwxwwwwwxvwwhvvwwwxxxxwwwwwwwwwwxvwxwwwwxxwxwxvwgwwwwxwwxwgwwwxwwwwwwwxwxgxwwwwxwxvxwwxxwxwwwwwwwwwwxwwxxxxwUffwwfvwwvwwgwgvxxxvwwxwvwxxxwxvvwgwwgwhwxxwhwwwwxhvwxwwgvwxxxxxxxxxgwwwwvwwxhvwxgwwwhwgwvggwgwwgwxwxwwwwxwwvwwwwxwwwwwwgxvxxxwwwgwwxwwwwxwwwwwwwwwwxxvxgwwwwwwvvwvwwwvwwwwwhvgwvvwwgvvwvwvwwgvvvwwgTEwwwwwwwwwwwwwvwvwwxvvwwwwxxxwwxwxwwwgwwgwwwwwwwwwwuwwxxfwwwxwwxxvvgwwwwwvfvwxwwwxwvwwwxwwwwwvhwvvwxvvwwvgwwwwxwvgvwwwvwxwwwwwxwwgwwxwwxxgvgwwwwgvwgvxwwwhxvgwwwwwwxxwvwxxxwwxvvwwwwgfwvwwwwwwwuuwxxxvgvvwwwxfgwwwwxxwwwgvwwxxwwwxvgxgwvvwvgxxgwwwxvwffwgwgxwwwwwwvvvwwwwwxxffvwgwgxxwggwwxxwwwxxwwwxwxxwxwwffvwwwwgwvwwxefuvwwwwxxwwwgvvwxxxxwgwwxwxwxwxwefegwwwwxwwvwhvvxwwwwwwhxvxwxxwxwxxwwwwwwwwvvwvwwxxwwwwwwwwwwwwwxwxxwxwwwxwvgxxxwwhxwxwwwwxxwwwgvwwwxwfwvxwhvxgwwwvxwwxwwhwxwwxxxxwxwxwwwwxxwxxxxwxxwwwxdfwfgwfvwvvvfwgvwwxvegwwvwfvxvwvwwwxvwvggwwwwfwwxvxxggwvevefgefwdeuvfVewefwvfvwwwwgefewfwfuwwwfvwxwwgwwwwwwvxwxwvfvvwwgwwwvfwwEuwvgwfvvvwwwgvxgwfwwfwwuwvWvgwwxwghxwwwfggVvvvfvefwwwwfvwwgwvgwwwxwxwvgwvwuwghwwgwwwgxgwxgwxWgfwxfgwwgwvegwvvvfffWvggwfewvxwwwggwevwfvwxwfvgwwwgugvwwwwwvfwwwvvwfgvwwwvggfgfhwwWvwfvgxvgggwwvgguwwvwwwffwgfwhvwgwwgwvwuVwwwvwfvwwUVevgwgwfwfwwwwgvvwvwwuxwwwvwfgxwgwvwwwwvffwgwgwhfgvgfxvwffwgwwwgfgwwwwuwwhfwgwwwvwwgwghfwvwgwwwVwfwvevwWfvuwvfvvwwwfevgvfwvfvwwwxvwwhwVfvwwwxhwwvvfwvvwwfgwwfvwgffgwwwwWwwggwvvwwwxwgwgwwvwxwwwxxwwgwwxwfvwvfvVftwuvxwVfggvggvwvGwXgTvgwwwugwvwxxfwhWWwwfxxxwwfwwuvwwuwwgfwvVwwwwwgwWwWgVwwwwgwxwwwwhwvvxgxwhwwgxggwwWvxvxgVvwvwfufwwwffvwwfwguvgfxxwggwwwwxvgxwwwxwwwhwwwwwwwxgfwgwwvgefwgvwwggwwfwWhvgwvwwvvggwwhgwwwwvvwxxgxwxhxwvwfuuwwwvwewwwwuxwvggVwgwewvwgvvwvwwgwwwvwwwgwwxwgvxxwwugwwvwhwwgvVugwxvwhgwvvwwxwvvwfxwgwgwxgwgwuwfwwwvxwxwwfwwwgvgwvwxvwvwvxwwxgvwvwwvwwVwwuwuwwwwvwwwfvvvwwwwwwxVwxwwxewwxvwwwwwvwwvvwvwxwuwwwwwwxvwwwvwwffvgwvwwwwwwxevvgxwwxwggvwvwxwwwwwgwwwwvxwvvwvvwgxvvwwgwwfwwwwwvwwxxxwvvvuwwwwwwwwwwxgefgwwwvgwwxwgwvwxvxgwwxwfvwwxvwwwvwxxxwxwxuggvvwvvwvxwwxwgwuwhxggwwghevwwwwwwgwhwwvwxwxwwwuvwwxwxxxwwfwwwwwwwgwvwxwwWvwwwgwgwwxxxxxwgwxwevvxwwvwwgvwwuwwxwwwwwgwwxxxxxxxxxwvwgwwxwwhwwwwwwwwwwxvwwwwvvxxxxwhwwxwxwfVgffvwxwwxxvxwwxwxxxvxwxvxwvxxwvvgwwwhwwxwxvvgwwwxxgvvwwwwxwvwwwwwwwwwwvwwwwxwwwxxxwwxxwxwwxxevvwwuwwxwwvvvwwwxxwwwwxxxwxhwxwxxxvwwxwwwwwvgwgxwwwxwxwxwxxxxufvwvfwgvwwufwxwxfufwwwfwwwwwwwwxvvvwwvwfvwxvxvwwwwvvgeevwfvvwvxwwweewwgvwgfvvwugwvwwxwvwgWvvwwwxwhwveuvxwwvwvwwvvvgvwvwugvvgxwwwwwggfwwwxgvwvxvxwxwhfffvwfewfwwwxfvfwggwwgwwvxxvfvwvwwwxwgxxvxxwgwxxwwxwffvgvwvxgfuwvvvwffwwwwwwevfvwwvggvwewveufvvwvfwugvwfxwwwxwvvxwwgwfffwgwwwvwwwxwxgvwgwxxwvwwgvwwhwvwhgvgwvwxxxggwwxvugggvwfvvwxwffvwwwwwevwvwxwwgvwwwwwwwwgwfgvwwwwggwxvwwvvvwwwwvwwwwwvwwwxwggvwwwvwwxwgwhvxwvwwwwxwxwxfuvwvwfwgvgvwfefgvvwwgvwvwvxxggwwxxvvwwvwWuxxwxwwwxfefvwffvgwwwgeevwwwwwwxvgwWvvwvwwxwgxhvxxxwwxwwwvvvvvgvgwxvgffevwwvwwXwggeewxwwwxwxwwwwfwgxwwwwwwxwvvwuwwwwxXwwggwvvhwvwwwvwwwwxvwwxwxhwxwwxwvxxxxfffwfwgvwxxfvvwxwvwwgwwWvfvvxwxwwwfxxwwvhxxwwxxwxffxwwwvxgwxWvgvwwwxxwwgWvhwwxgwwhwhxwxwwwwwwwguevvwvwwwhxwuvgvwwwwwwvxwwwwgwvwwwggwwwvwgvfxgwwxhxxwvwwwwggvgwwxhwvgwwvwwxwxwwxgxxwwxwwxewwwwwwwwgwvwfxuwfwwwwgxwfwwwwwxwwvxxvgwgwvgwwfwVvgwfwwVwwggwvwvuxvwuwwwgwwhxwwwwwwwwwgwvvxwvwguwwwwwwwwwwwvwwxfvwxwwxxxwwxxWwgwwgwwvwfwgwhxwwwwwxxwwwxxxxWwxwwwwwwwwvufwggvwwxwwvwwwwwwgvVgvvvwxxwfwwxxwwxxxxwgvxwwxwvhwwwvwwwwgwxwxWgvgxxvwxwwwwgwwvxxwwwxhxxxwxxwwvvwwxfvwxxfwwxxwxwwgwxVgvxxwwwwwxxxxxgwwwwwxwgwxxwwwwwwxwvxgxxxhwxxxxxxvwwxhuwhwgwwxffwwevfwvxwxwwwwxwwwwxwgxwxwwxxgvgfgwvwfwwxevvwhxWuwxwwwxxwvwxwxxwxxgxwwvxxwwwwgfxwwwwwxwxwfwggfgwwhxxxxxhvxxwxwwwxffwwwhwwwxvwwgvWwhhwgwwwwxxxxwxwwwxxxwxwwxwvvwwxwvwwvwwwwwhgvwvwwxwwxxxxxwxwxxhwxwxvwgxwxgwvwwwwxwxxxwwwwxxwwxxxxxwxxxwhxwwwwxwwwxwxwwwwwwgxWfwfgwwwwxwyxxxxxvxxwxwwwhwxxwxxhwwhwvwxxxxvxwxgwxwfgwxvwxwwvxwwwvwhvfwwxwxwvgwwgeTvxwwxwxwxxwwwhwvxwgwwhwxwxvwxgwwwwwgvwxwwwfvwwwvwwxwxwxxfvvwwwwgvwxwxwwwwxwwwwvwgxwwxxwwxugxxgvuwwwwwwxgvwwwwwwwwwwwwwwwwwwxhvfwWwwxwwxwxwwxwwwwwxwwxxxwwwwxxvwwwgwwfvvwwwxwvwwwwwwxwwwxwwxwwwwwwwwvxwwwxxwwwWgxwxxgwxwxwxwwwvwwwwgwvwwwwwxwwwwgwwxwwwwwwwwwwwgwwhwwwxxwxvxxxxwvuwfvfuvgvwwvwvwvwwwxwwwwxxwhwxxxwxxfvVvwwWwwwxwxxxxwwxxxxxxxwwwgvwwxwxwwxwwwwwxvxwwwwxxxvxwxxxwwwxwwwwxwxxwwxwgghwxxwwxxxxghwxxvwvwwwwwxxgxwxwxxxwwxwxwxxxxxxwwwwwwwxwwxxxxxxxxxxxvxgwwgwwgvwwwwvwwwwvxxvwwwgwwwwvwwwwvggwxvvwfgvwwwwwwwhgwVwwwwxwwffwfwvwwwvwxvwfxvwwwhgxwvwwwwfvwgwfvvwvvwwgwwwxvgwwwvvwxgwvwxxxwVgvvwfhwvwwwvwwvwWxfwwwxwvwfvwwxwxwgwwwgfvvffvgFuvgwwwwWwwwhwegwxxvwgVuvvwwgwwvgwxfwwwwwxvfgwwhwfvwwwweuvwwwwvvwxwwXWWfvhxwTvgvggvfwwwxwfwgxgvwhwwxxfgfvvfvgvwwxffvwwwgwwwwwwwggwwwwvwwwxxxvwxgwwwhwxwwwTufwwvggxwgwgwgfwwggwhgwwwwgxhWvwgxwxxxxwwxwvvwwfwwvxvwvwgwwxvwxxwvwwgxgwwxxwegvvwwwwwwwgggwgwggwwxvvvgwgwxxwxxxwxwwwwwwwwwwgwxwwwxwxxwxwxwgwwwfwwwvxgwxgxwwhwwxvwwfwwwxxgxwwgvgxxwxwxxwwwwxwwwwwwxxwxxwgxxwxgwwFuvwwwwwwwwewwwxwgwgwxgxxwgxwxxwxxxgwwwwwxxxwxevfwggvvxwxxvgWufxhvwhxwxxwhxgfwwwxgwwxwWvvwvwgwwxwwxvwWvxhwwgxxvwwxwvxwhwwxxgxwwwwvwgxwwgwwwgwxwxwxgwwwwxxxwxwwxhxwwxxxwxwxxtwwwwwwfvwvwwwwwxwvwvwvwfggwwwwwwvwwwwwUvwwwwwgwwvwwgvffvgwegvvxvwhfwgwwwwwvwvwgUgwvuvwwfwwwwxWwxwwxwwvwvwwwfvfwwvwwwUwvfwxxxwwwfwwxgwvghwxxxxgwgVfgxUvwwwggxwxwwwhxwxwvwwwwxwwxvhxwwvgvvwwgvwwwgVwvgwvugvwwfwwvwgvfwwwgvxwwwxEWvwwwwwwvgxxhxxwwvxwgggfwgWvvgwgwvgghwvxwgggfwxgggggwwwhwwfgwxxhwXxwxxwwgwgvvfggwxxvwFWvwhwwvwwxxwxwgvxwwwgwxwwxxgwxwxxwxwVwfgfwgxwvwwgwggWwwwXvwxwwwwwwwwxwwgwxxxhxwxxwwwggfvvgvxfwvwgvwggfvxgwxfvfwwwxwxfwwwxxwwwxxfwVfgvwdvvvvgvwxggfxwwwxxwUwvwxghxxxxxxwxxfwfwwfvxgwvWwwwxwhxxxxxggwxwwwwwwwggwxxxxxwwwxxVevwwwwwvhwhwxhxxxxwwhwgwxxwwxxwxxgwwxxxxxvwwwgwfwwvugwwwwfgvhwwggwggwxwgwwxxwvwwxxwwxxwwwxwwwVxWffvwwwwwwwhgwwwwgwhxgxvgwxwwvxwwxxgwwwxgvwwwgwvgwvgwwwggxwgxvxxwvwxxwxhfgwwxxwxxgwxwwwwwwwwwxxwhxvwxwwxwxxwwgwhxxxufwwfvwxxvfhuWxgwwuwvvxwwwvgvxfwwvxvxwfwvvwfxwweUvvwwwwxxufwxvwvwwvfwwgfwvwwfvwwwwwwwwvwwvguxxwwvwwwgxwwvwvwggwwxwghxxwwxxxwxvvwwwwwwwwgwwwwwwwwwwwvwvwwwxwwwxxxwhxgeWwwxwfwxxwwxvxxggvxwvwxxwwwwwwxxxxegwfvwgvvwvwwfwwuwvwwxhwwvvwwwwwfwvwwwxwxhwwwwxvwwwwvgxvwwwwwwwwwxxgxwxgwwwfwfgxwvwwxwwwwxxxwwwwwxwfgwwwwwwxwwwwwxxwwvvwxwxxwhwwfevwfwfwwfxxwwwwwwgxwVuuvwvwwwwwwwwxxxwxgxeeewwxxwwgxxxwuxwxvvwgwxfwhwxxvxxwvxxwwwwwwfxwwvxwwwxwwwwwxxxwxxwxwwwxwwwwxwwxxxxwwwwxwwwwxwwwxwxfwwfwwxxxwvwguhwxxwxvgxxwxwwvwwwwxwxxwhwxvwxwvwxwwwxxwwgxwvwvwwwwvuwwfwwwgwvwgxwvwwwwwwwfwvwwuwhvwwgvegwfwfvwvwwwwwwwwwxhwfwuvwuwxWwwgvwwwwhxwwxwwwwwvwwwwwwvvwwwxwwwwxwwwwwgwwwwwvvwwwhgwwwvvvfwvwwwwxwwvwwwXwwwwxvwfwggWwhxxxwwwvxxwwwvxvwvwwwwwvxwVgfwwwwvwxwgwgwgwwwwwwvwxvfwvfvvvwwwvvvwgwwwwvwwwwuwwwwxwwvwWgxuwwwggvwwwvguwgwwWwWxgxwxxwvwgwwwwvwwvUwwgvvwwwgxwwwwgwwxhxgwvwxfvuxfwwwgvwvwwffwvgwwwwwwgguWxwwwxwvWxfgwwwxvwwgxwxxwwxxwgwwvwwwwwxwvvwvwwwwwxxwwwwwwwwwwwwgwwwwwxwxxxwvwvwwwwwwgxwwwwvwWwxxwwwwwwgwxwwwxwwwwxxuxxwwwwwgwwwwgwwgewwgwgwxwwxwwwwvwgwwxwxwwVgwwwwxwugwwwwwwxxwwxvwwhwwgwwxxxvwwwxwxuwgwwxwwwvfvwWwwwxwvxxxWwvwwwwfwxxwxwwwwwxwxvwwfxxwxWwwhXxvxxwwwwxwwxwxwxwxhwwwxxxxxwwwwwwwhxwwwwewugwwxwwgwxxxgxwghvxgxxxhwxwxvfxxxwwxwxxwwxxwwwxvwwxwwwwwwuwwwwuwxuwwwgwxwwvvwvwfwxwgwwwwgvwvwwwxwhwwfgwvvwvvvvwvwwvwxfvxwfvgfwuwwwwvxvwwxwxxxwxvxwgwwwwfwgwxwwffvwwvwwvxvxwwwwxwhvwwwxvwwwwwwwwuxwwwxwwwhwwxwvvhgwvwwwxgwwwwwhwxwwwwwxwwhxgvxugwvwwfgwwwvvvwwuvwwvWwwwwwwfwxuwwwvwwwwvwvwhwwxwxvwwxwvvxffvvgwwwwgvwwffxwwwxwwvgvwgxwvwhwXxxxvxwfwwwwWvvxwgwwwxgewwwwwxwffwvwgvwwwvxwvxxxwhwgxugvwwvgwwvwwvvwwvwwxwgwvwwxxwxvvxhxwwwvxvwgwgwvfhwwwwwwwwwwxwwwvwwwwwwwwwXgwwwvwwwwwxwxhxxwvwvwxwgxvwwwwwwwxhvxxwwwxvxwgxfxxwxwhxwxxxwwxwfvuwxxwwwwwwxwxxxfwfwgwvwvxvwwgwhwwwwgxxxwxfgxggvwwwwwxwxxxwvwxxwxwwxwhxxwwwwxxwxxwxwwwwxgwwwwwwwvwwwwwwvwwvxwwwxwwvxgxxwwwwwwhxxxwhwhwwwwxxxwxWxwhgxvghwwwxwxxwhxvwxxxxwwvvwwwxgwwwxwxxggfwhhxgxwwwXwvwvwxxvxwxxwxWwwgwxhxvgxxwwwwvgxxwxwwvwxwgwwxhwwwhgxwxueefvvwfwxwwgwwwvgwwvvewvwwwvwwwwwuvwvvfwwwwvwvwfwwfufvvwgwwvgwgwvwfudvgvgwwwwwgwwgwhwwwxhWgdvwxewwwwvwwfwwfwvwxwvwvwfffgvvvwwwvwwwwwwwxxwfuwVwwvewwwwwwwwvxwwwwwwxwVvgwVwwwxWxwwwwwwwhwgxxfeugvwwggvwfvgwwwwVvwwgwvfuwuvuwvtvwvwwewwgwvgwwwvwwwgxwvwvvwwwvfwvwgwwhwwxxxwfwgwwvfggwwgxgwwgwghwXhwhvwtwwfwwwfwwwwwwVwwvggwwwwwwwvvevdwwvvwggggxwgwwvwwwwwwwvwwwvgfgwvvwwwwgwwxxwgwxxvvwwvWwwxgfxwwwwggwxwwwwxevwwvvgwwfgtwfvewwwxwxwgvwwwwwgvxvvwxwxxhxwwfudfwwwwwwwwxwwwxxgwhxgevgwwwwxhwwxxwxhgxxfxvvvfUvvfvfwwwggwwwwvhwxggvvvwwwgxwwwwwwwwgxwwwwwwxxfwvWwgggxwxwxwWgvxwwxwwwXwgwwxxwwhxxxxxwwffvvwuwwxUvwwgwxvxwwwwxwwwwwxfwxgxxxwxxwhgxxxxxxfwwwffwxwxwvwwwxxxwxhwwxxxwgghfxxgxxgfxxhxxfvvwtvwvfwwwwgwvfwwxgwwwxwwwwxxwxwwwghwxwxwwgxxwvwwgWwwvxwwwXhwhvwxwxxxwgwxxxwgwwxxhwwwwvwwwwwwwxwwvwxwwwwvwwxwxwxwwwwwwwwwvwwwgvwvfwwwwvwvxxvvwgxvwxxgwwvxwvwwwwwwwwgwwwwwwgvwwwwwvxxxwwwxwxwwwwwwvwwwxwwwwhvxwxvgxwgxwxxhwwwwxwgvwwgwwwwvvwxfwvwwwwvxwxvxwwwwwwgvwxwwwwwwwwwhwxxgwvwhwwwwgwwwghxgwvhhvvxwhwvwvfwwvxwfwgwvwwvvwwwwwxwwhxwwvxwwxgwxwwwgvxvwwwhwvvwwwwxhwvwwvxxxwgwxxwwwvwwwvwvxwwwwwxwwxxxwwhxwvxxwgxwxwgwwxwhwvwxxxxwwxxxxwwvvwwwvwgvxwwwgwhwwvwxxggwxwxwwxwxvwgxxxxxwwwhxxwwxxxxxxxxxhxwxvwwwwwwgwvvxxxwwwggxxxwxhgxwwwxwxxwxwxxwghhwwgwxxxxxxwxwwxhgxwxxgwwvxwwhwvwxvvxwxgwwhxwwhxwwwhwxwwxwwwwwwhwwxxwxwxxwxxtwwVwgwVwwwwvfwwwgfuwgVwwvvvxvwwfffwwxfwvxwwfwwwvedxdwvwfvvwfgwvwxwTdugvgvguggwgeevwxVggvgwwxwwxwxwUvhfgffxwwxfgvwwwwxgwvwfVuxfwxuvwwwxVuvwwvvxwxwwxhvwwgvuwgwwwvwvxVfevhwwwwwvwxhhVuvWwggwwwgwgxgwwHgxhwwwWwvVVvwweugUVwwxwuvfwgwwwUhwwwwuvwxxxffgwvwvwwwwwwgffxwxwwfvuwwgWwvgwwvwwhfuwhhwwwwWwwwgwwwwxGwwvwhwwwxwweggWwvwwwxvwwxWevwvwfggfwwvwwfvvxwwwgwxwvwwfwxwwwwxwvvugwwgvgwwwxvwwWfvwwvgvgwwvwwwvvwwwwwgwxwewwggwggwwwwwwwGwvwwevwuvuwvfvgwgvvvwwgwvgwvwwgxeuvxxwwxwwwwwuewfwwwevwxfvvwXwwgwwxxwwvffwxwhwwvhxxvhwgWwxhxwwfvffgvwuwwvxvxFvtwvugvwwwxwvgwgwvwghfwwwgfvwwXxgwwWgewwhweevgxwfxvwWwwfXhfwhxxwwxhxhgfgfwvwxxhwhwhxvvfvwfwvwxffWwwwwwwxxxwwxwvvwwxxxwxxwwwwwgwxxwwwwvgwggwwwwwwVgfwwhwwwxxwwxwgvwxwhwhwwgxwxxwxxwxVfuwgxwwwvwwwfxwxwwgwwfwuwfxwgxwggfwwwwwwgwwwxwwwwwvwwwwwgxwfwuxgWfgxgfwvwwxwxwxwxxwgwwwxwwtwwwwwwwwxwxwwwwwwwwxwwwvwxwgwwwvewwwwwwgwxwwwvwwtvgwgwvxwgwwgvwvvwvvwwwwwwwwwwwwwwwvwvwuwxwxgvevwfwwwwwxwxwxwtvwvvwxwxxfwvwwvvvwwwvdwggwwwwvfwwwfwwwwwwwxwwwxhwfVvwgwgwwwgwwwwwvwwwwxwxxwevwwguvwwxxwwgwwxwxxhxvvwvwfdvwwwwwvwxwvwwfwwwwwwxxxwxwwxwxvvwvvgwwwwwwxwwvxwgwxwwwwwuwwwwwxxxwvwwwwvfwvvhggxwwwwwwxwgvwwxwxwxxxxxxvVvwggwwxhwghwgwvwwwwxwxxwxwwwxwxvwfwvwwfwxggwwwxxwwvwghwwxxxxwgwxxxxxVggVwwwwwxwxxwwwxxwwwwxwxvxwwxxuvvfvwwvwxwwgwwwwvvgwxxwwwwwwxxxxwwwwxwxwvwwwgvwwxhxwwwfxwxgwwwwxgwwwxwwwxxwxevfwwfggwwxwwvxwwxxvwxxxwwwwwwwwxhxwwxhxxxvwwxgxwvxwxwxwwwxwwwwxxwxxwxwxxxswvwvvvfwvvvwfwvhwgvgwwwwfvvvwvvwwfggwwwvwvvgwwvvfvvvvwguwfwvvvVuwvgwgwwwvwwvguwvwcutudVwwvvwuwuwwwwxxwwxxvfewvwevwVewevugwWvvwvwfvxwwwwwwvevvfwwwxgwxwwxwwvfwevdefvwxwwwgvwxwvgwvgXWfwffvfvwwwvwwwwgvxxxvxwwwfwvwvffwgfgwvwwwffwwwwvfvwvvgwvvgwvvwuvvwtvgwwwwwwwxwvvvvwvvwwggWvfuwwwvvvvwwwvwwhwgwhguwwwvvwwvfwwggvwwxgwwvgffvvvevxwwwwfvvgfvwwwwwvwwwwwfvvwwwwvwvvwwwvwwwvgwuvwwwxwwvwvwvwwwwwwvwwwwwwwgwvvwvvhxwvwwvvwwwVvuxfgvwwwftuwvwwwwwgvvwvfvvwhwxwwwvvxwwwxxxxwvvVwfvvuwvwgvgwwgwvfwwwffvvvwwwgwhwxwwhgwwwxxvvfVusggwgwuwwWvwvxgvgwxggwxwwvvvwwwvwvvWgevwvwxhwwwxgvwwvdvvvffevwgwwxwwwhgvwwhwhxvwwwwwwggfXhgwwwfwwwwxggvwwvgfguwwwwWvwwwvvwxwvvfvxwxwxxxwwwxvgwxxxwwwwwfvfvwvwwvwvwvwwwwxwwwwxgxwwwwwwgwwwwwwwwxxxxvevvvwvwvxwgwwgwwvwvvgwwwwwgvvhfvwvwwfxwwhxvwvgufxwwxwwwhxWwxxwwwvwwwxwwwxwgvwwxxvvvwgwwvfwwwvvvwvwhwvxgwwvwwvvvwwwvxwwwwwwxvwgwxvwvwgfdwewwdvfwxwegwvuvwwwwgvgvgWwvwWwwgvxwwxgwwhxvuwwwvvwvxwvgwuwwwwwgwwwwxgwwwgvvwwwwwwwxxwwxwxxwvvfVwgwwgwwgvfwxgwgxwxwwfvxhxwxwxwwwwxxhxvwxwffffwfdgwwwdvffWVuvewwewvgwwgwwgwvwgwwwwwwvfwgwfggxfwwxwxwgwvxgwVgfgvvwvvwwggXwgwwvwhwvvwWwXvwwwgwgvgwwxhhgwxwxxwwuwwwgvffvwwwuffgfwwxgwwVwwwvwgVgxwxwwxwwxxvggwwwwwwwwwwgwggwvwwwwgwwwwxwwhXvwwwwwwgxxgxvwwwwgxWwwwgVvwfxguwvevxwwghwgwwwgwuwwxwwvvgvwwwwwxwxwwxwfffwvvVwuvwwvwwwwwhhwwxwwvvwwxhxxwwhwwxwhwvxxwwwwwuwwwwffvuwwgwvVwxwggwwWghwwwwwhwhwxxwwxxxwggwwxgwvfwvghgwwwvwwwxwgxxxxxxxxxwwgwxxhxxwhwwwwwvfwfvfvvwwwgwfwwvwwwwwwxwwfxwwwhwxhgwwwwgwhwwxxxxxwgwwwwgvgwwwxwggvwwxxhwwxwwxwwwggvgxwwwxxwXwgwwvvfvvwwhugwwwgwwwwgxWgwXwvwwwwxxxhxwwwxxxxwwwhgwwxwxwwxwwWwhxwwwwxwxwvwwwhhwxxwwwwwwxwxwuwwvvvxxwwwvwvwvvwvwwwwvwfwvwvwwwwvvwwwwfwhxxvwfvffwvwvvwwwvvwwvhhwvwfwvwggvxwgfwwwxwxwwxxwwwguvvwwxwwwwgwxwvxxwwwwvwwvfwwwxvwwwxwxwwwgwWfwvwvxgxvwwwwxgwxwfvwxgwfwwwxxwxxwwwwvwwggwwgwvwwgfgfxggvVfvwxgvfvfwwwewvwwgwVvwvgvwwwwwgwguwwwgvwwwwgwwwgxxwxwwfgvwgvwfvufWvwxgwfwwwwgxwhxxwwwxwfvwvgWfwwxwwfvxwwwwxwwwvuwwwvwwxxwwxxwgwxxwxwfwwwwwvvvwgwwvwgwxwwfwxwxwgxvwwvwhwwwvgxxwwwgwxwwwxvfwwwvxwuwwwwwwwxwxwgvuwwwvwwwfwwwwwfhhxhxwwvguvwwvfwvxxWxxwvwwwwwwgwfhwxwxvwhxwwxxwvvwggwwwgwwwgwwwxhwwwvgggfwwwxwwwhxgwvwfgxfxxwxwwgvwvwwWwgwxwgwgxwfxgxwxxggwwgxggxwxxxgwwwxwwfwvwvwwxwwwgvgwwgwwwxwwwgvgvwwwwxgxwxgwwwwxxwwwgwwwwwwwwxwwwgxwxxwxwxgwvwxwvwgxwwwwxwxwwxwvwwwffxwxwwwwwwwhgWwwxwwwwwwxwxwxwwwwwwwxvwxwwvwwwwwxwxwhxwxwxvxvwwwwxggwxxwwxvwvwwwwvwwwxwwwwwwwwwwwxvwwwwxxwwwwvfwwvwwwwwwwvwwvvvwgvwvvuwvwwwwxfwgfwwhxwwgwwwwwvvwwgwwwwwwwvwwwfhwwwwvwxwwwwvvwwvwvxxwwwvvwgwwwwwgwwwwhwwvgwWwxwwvwwwwwwwwgvwgvwwgwWfwgwwvwvwfvwvwwwwwwwWvwwfvwgvwwgwgwgwwwwwvvwwwggwwwgwXvvwghwvwwwwfvvvwhwvVwewgxvgwgwvwwwwwfwxwwwwwwwWuwwwwvgwvwwvwwxxvwwxwwwgvwvwwwwgxhfgvxwxewwwwwwwvuwwgvwwwwvvwwggxgwwvwvwwwwgwwwwwwgwwxwwwwwwgwwgxgwwwgxhfwhwxwwwgwwwwxxwgwgxwwvxgwwhhwxxxvxxvvvxwwxwvwwwggwvvwwgxwwxVxwWwwhwwvwwwhgwwxwwvwwwgwwxwxwgxgwxwwwwwwxwwxwwhxwwwwwhxhvgwwwgwwwxwwvwvwvgwwwwgxwwxfwgxgewwhwwwwwhwwwwwwwxxgwvwwhhwwvwxgxhwwhxwhvwwhwwvvxwgwwwWvvxxxwwvfwxvxwwgvvhwwwxxwxxwwXfgvwxxxwxxgxxwgwgwxvwwxxwxwvwxxwwxxvhwxxwxefvwgfwgwwwvwwgwvwwvwfwvwwfvvxgwwwvvxgfvgvgwwwwfwvwgfwvwvuwwvwgVewWvvwwvfgwwwwffvwuvvwvwwgvwuugwwwwgvwggwuvgwfwvgwfwvwgfgwwfwfwuxwhvgwvvwwwxxvVwvwwgvvwxwgffwfvvwfwuwwwfvgggwwfwvgwwufwvvwgwwwwwxfwgwgwwwwgwvxwgVfWggvvgvgffvwwWegvuvvvvvwuvwwgggvvvwvwwwwwuuvgwwggwvwxgwwwwwwwwvfgvvwWvffhwwvgwwvxgwffwfuwvwwvwgxgwwguwwwXgvwwgwgwwevwwvvwgwgwvwvgffwwwwWwwwwvgvvhvwwwwxwwegvwwwWggwgvxvvvvwwwwwxwwhfgvffwxgevwwwwwwwvwwvvvvwwwwggvwhxwwwwwwvwffvwwvVwwwwwwgWfwwwwuwwgwvvwguvwwxxgvwwvwhvwhwwwvwffvvvwwwxxfuggwwwWwwwhhuuvwwwwxwwwxwgvhhxxhgwwfvwwvfgwwwwwhgfvwxxgwgxxwfwVvvvwwVxwwwvwgwxgxwfxxvwvvwvvwwwwgxwwxhxwwxwwxwwgwwgxvwvhwwwxwwwwfgxwxxwwwwvVwwwvwfwhwwwvvwwwwgwwwwxwgwwwwxxwwwwxxxxwxhvxxwwwwxwhwxwwwwwWxxvghuhxvxfwhwxwxwvgvWggxxwxwwgxxwfvgvgwgwgwgwwwggggWwwwxxggufvgggwuvwxwwwwwwwwgwvxvwhgwghxfwwwwggywwvxxwwgvwwwwwwwgwwfwtwwwfvwwggxuwvfwwvwwwvwxwwwwwwvvwwxvxwfxfwwvxwwvwwwftwvfugwwwwegvwufwwvvxwxxwfwewvwvvxvvwduuvwxwxxxffxwUtgwxggvgvwvvwwvwvwwxgwvffvwwvwwgvwwwwwhwggwwfwvffwwwvgwwfwvxhgvxwxwwewUvwxwwwwwxWgwwwwxxwwwwwfwwwwgfgvggvvwwgvwvwwwuvvwgwfgvfwvwvxwwvwwwxwxvxwwwwwfxvgggvgwwwwwvvvwwwwwgxwwwvvwwgWwvvvwwxwwwxwgxwwxwwfgffvvwgwwwwfgvwwwwguwwwwwugfvvwwwwxvxwwwvvfvwvwvgwwwfwvwwwvwvwvxwxwwvwvgvwgfwwgwwwvwgwvwwwgfgxvwWwwwwwwxgWvfwwwvwwvwfwuvevwxfwwwxwgevufwxwwwwhuwggwwxwwxvvvevwvwwwwxwwvwwxvXxxwgwwwwwgxwxgwwgxxxxwwwwguwgwVvwwwwxfhvgwwggvhwhhwWvdvgHwvxxxwwvxxwHgexxwwwwevgwwwWwxwwvvggXewwwwwggwvfwxwvhwwgvxxwwhwwwwwwxwguvvvvfwwfwxwvgwwwwwvvgwvwwwwwwwvwwxwwhxvwvwwwwvwwxwwwvwxhxvwxxxwxfwwwwhvxxxxwxxxgxfvuwxvWwwwwvxwwwwWgvvgvwxwwvggwfwxwxwxwvvwwwwvwwwvwxwwwxwgwwxwxwvvwwvwwhfgwwxgwxfwwxxwuwwvvgwvgfwxvvvfuvwufvwwvuwwfvvwvwxwwwwvgvvwwwvxwvwwhvgfvvwwwwwevwwwwuvwwgvxffvwxvvvgwxxgvwwwwwxfwwfvuwwwvwwvwwxwxfgwwwwfwxxxfwvwxvwwwwxxwevgwwxxhwwwwwwvxvwffwwwwVfegevvwwwfwxwgvvvwvvfwvwwxwxgvwfwwwwwxwhwwvwhwwfwxwvwwxwwgxwwgvwxxwfwwwxwwwwwwwhxgfvvxhwgxwxxvvwWfuwwwwwfgwwgvxxwvwwxwwxwwwwxwxgwvwwwgwwvxhwwvwwwhfxxwxwwxxwwvhxwxwwxxwxvvwvwwxwfvwvvvfwwwwxxvvxwvwwwxvvvwfwwwxhwvggvwwwVvvxvwwgwwuwhwxevwwwgxvgxxxxxwxxwvvxgwwwwwfwxwwxwwwxvwvwxxwwxxwgwvxxgwwxxwxwVvvvxwxxxwwgwwxxgvwwwwvgxhvwxxwhxwxhwxxwvvgwwwvxxvxwvvwxxwgxwwwxxwvvxwwxxwwwwhvxxwwwfgxwvhxxxwgguxhfgwwwxxgxwgvxxgwwgwwwxxxvwwvxwxxwwwwguwxxwxwwwwxxvwxggxwvwxvwhgwxgxxvxwgwwwwwwxxxwxwxxwwwwxfwfwvvwvwvwwwwvgwvwwwvgwwxvvxgvwwwwwwfwwxvxwwwgefvvvvwvgvgwvwwvwwwwwvwfggwgvwfgwgvgwvvwvwwwwgwggvgwwvgwvwwwvvgwgwwwwwvwwvwxwvwwxxwhwwwfwvxwvwwgwgwwwvxwxwwwgvvwwgwgwwwwwwvwwwvwwwgwwgggvgwwgxwwwxhxwwwwwWwgwhwwwxxwwVewvVvfvuwwEvvfwvvffvwgwggwVewfwvwvwvwfwwfUgvwgwvWVwggwwhWwgvwfvewfwvwfwgWVwvvwwwwvwgWwWWefwvfggGvgwwwWgevfvVHWVwHhfgwvwvffwfvuvgwwvwwwVvugvfufgwgggwggwvwwuwvwwghwgxwgxgwfwgwwwxwfwvvfgfWuxvgwhwvvwugwWGFwgxwwwgwuwvgxgwfwhXVwwWxwwxxwwwwgwwwwwwxwwvwvvgwwxwwwwwwwgwwwwwwxwvxwwwwwxwwwwwvwwwwwwwwvwwwxwggwxwwwhwwwvwwwxwhxxwwxwwwvwwxwwwwvgwwwwwwgwgwhwfwwxwxvwwwwhwvwwgxvxxxxwwxwwwxwwxwwwwwxwwwxwwwvwxvxwwxhwwwxwggvwwwxwxwxvwvfwggwevwwfvvwvWwwvevgggvgwgvwxxgevvxvgwxwxxxwvfgfghhvwxwvgwwvfwvxWgVggWgwxwhugggvxxhfwgwvhvwuggfwxxxvxxwhwwwgwfXwghgxvwwvwfgwwwgxwxwggwWwwxWGwxxwgggvvwgxhhwhgVgvwewwgggwfvXvgveuwwvwwwhwfgxwwwwXgwxwgvxvwwfxhwwxvxgggwwWgvwuvfggvvwfuuwuffwwvwwvwwwffvwwuuwvvwwwxwgwwvwgwwwwwwwfvvwvfwvwfvvvwwuevxwgwuvwxwuwgwvwwgxwwwxwwwfvvwgwwwwvgevwwwxxvwvwxwwxxxvfwwwwwvvwwfwwxxwxwxwgvxwwxxxxxxwevvwvEdvwgwgwvwwffwxwxwwwwxwwgwvfwvgwwvxwvvgwwwwxxwwwVuvvvwwwwfwgvwxwwwwwxwwwxwwwxhvwwwxxxwwhvWvwvwwwwxxwwhwxwwwwwxgwxxwxwvxxhgxwvvwwwxwwxwwwyxwwwwwwwxwwgxwxwxdtufeevvfffffvwvfgvvffwwwvwxvwfvvwwwwwwgwwvgwxdgvvfvvwVvuvwwwvvggwwgwxwgvwwvxgwwwwxwvxwxhwwgwxwxwwwwvwwvwwxxxvgvwwxxwxwwxxwxwwwwvwxxxvwxwwwxxxggwxxwxxwgxwwwwxwwwvwffvvvVfewwwwwwxwwwwvwvwwxwwwxwwwxxxwwwwvwxfvvfwWewwgwxxwwwwxwxxwwwwgxxxwxxxxgwvwhwwwwxxwwxxxwwwwxwwwgxwwxxwxwwwxxxwxxxxxxwwwwgxwxxxwvfvvwffgwwwwwwvwvwvwwwwwwxwwxxgwwxxxwvxwvvgwgwwwwwwfvvwwwwwxxvvwwxwwwwwwxwwwwwwwwgwwwxxvvwwwxwxxxwwxxvvgffvfvvfwvgfwwwvwwwxwwwwwxxvvxwwwwwvwwwwgwvgwwvwxwwxxgghxvwxwxxhwvxxwwwwwvvxwwxwwxwwxwwxvwwxwxwwxxxwxhxvxxxvxfvvwffvgvgvwhggwvwvwwxvwwxgwwvgwvwwvwvxxxgvwwgwwgwwfvvwwwhwwxwwwxxwwwgwwvwxwxxxxxxxxhxxwxwwxwwwxxxfvfvfwvxwwwwvwwgxwwwxxxxwxwxvwwwxwwwwwhxvxxwwxwxxxwxvxwxxxwxwwxxxwwxwxhxxhtgfwfuwVuwweewfvvwwgwfVvgfvwwwwwwwwxwgeuwvxxgwwguwweffwgxgffvgwwwfvgwxwwfevwvwwwhWfevgvxwxwxxwgvvwwwvwwgvxhgvwvwvwxgxfwvwxxxxwfffWvvxwwwwhvfwfwxgxhwwxxwxxxwhwvvwwwgvfEuvfgvwWwwxwwwvvgvvgvgvvfvvwwwxhwhxxwvxwwxgvwwwwxfuvwxwwggfxhwgwwxwxgfvvxwwwwwwxwgvxxwwxxggWefvwwwwwXwwwgvwwwwvwgxxwwwxwxwxxxygxfvuvxfxxwwxwvxwhvxwwwwgxxwwwhfwxxxwUdffewgUdfgvfVVvvvwvVVffvvwwwvgvwwxxfvwwWwvxwxhwxdffuwgxfvuxWuhGeufxggwwvwffgwwwgwwhvxgwwwhggxwgwwxvxgwwwwwwwxwwfvxvwxwwwwxwxwwxxxxxxxxxwvvvxwwwwwwwwwgwxwxhvwxxxwwhwxwxwgVevgwvwfVgewwwgggvwgvwwgwwxwwxwhwwwwwwwxwgxvxxxVuvfwxwhewwggfwWgvxwvwhfxwvwxwwxvxwvxvhwxhwwxWwvwwwwwwwwwwwvvwwwhgxwxxvxxxwxxwxxwxwxwwxwxwxwvwwxxxxxwgwxxxxxxxxxxuggwvewwfwxwvwvvwwewwwfwvvwwwvwwfwwwwvwvwwgwwgvvwwwvwwUfwwgwvvvwwfvwwgvfvwxvgvvwwevwvwwwxwwxwvwwvwwwwwwwwvgwwwwgwwwxxxwwwwwwwxwxwwxwxwwwwwwwwwwwwwxwxwgwwwxxwxgwwxwvwwvevvwgwwvwvwUfwvvxvwewwwwwfwwvvxwvwxxvgvvhwwgwwxwfwwwwwwwwwgwwvwwwgwxwwgvxwwwgwwvxwxgwwxwwwvwwwwwwwgwwxwxwgwwwxxxxvwxxxwwwvxwwxwwxxwvvggxwwwxwwxwwxfugwuUfwVgwvfvwvefwfgfgwugwgxfwvvvvwwwwvwwvuxwwwwwxwwwvuuvvfvgwewwwvvwwwuwwwwwwwvvwwvvfwwwwxwwvwwvvgwwxVwvwwwwxwwwxwwvvwwwwXxxWxgxwwwwwwgvxxxvwwwwwwgxgwwwwxwxxhwgxwwwxwwxwxxwwwxxwvUfvvwwfvvvwwwwvwvxvwWwwwxwwgwwxwwxxvvwgxxwwwxvwxwvvwwwwfwwwvvwwgwwxgvgwxwwvvvwvwwxwwuvwxwwwxfxxgxgwwwxwwgwxwxwwxxxwxwhhgxwwxxwxxxwxxwhxwxwhxwwwxwwwxwxgwwwxxxvxvxwxwwwwwgxwwwwggwwvgwwvggffwwvwvwwwwwvwggwvvwwwwwwxwvgwwfvwwwwfvxwwwvwvxwwwgwvfvwvwwxwvwgwwwwwwwwwgwwvwvxwwxwwwvwwwwvwxwwugxwfwwwwxvwgwxxxxvwvwwwvgffwwwVwwwwgewvxvwvwwwwwwwgvfxvwxvxwgwwwxxwwwwwxxwvxwxwwwgwvwvgwwxwwxwwxvgWwvxwfwvwxwuwxwhwefxvxwgxvxxwwxwxwvwwwxwwwxxvwwgxewxwwxxhwvxxxwwxxvvwwfwwvgwwwwgffvvwwwwxwwgwwwwxwwwxuxwwewwwwwwvwwvvwwwxxxvvvwwwvwwwwwwwwwvxxwwxwwwxwvwxwxxywxxwxvwxwxxxxwwxwvxgffxwuvxgfvxwwwvvwxxxxuxwxxxxwgfwvwxwwxwgwfxxxxvxxvxwwxxxxxwwvwwwxwwxxvxvxwxxwxxxxwxwxwxxvxhxxwxfwwvwuwwvwvwwffwfgwfVwwwwwwfvwwvwwwwfvwWggvwvgvwgxwwuwvwwwvvwfwggwwvxwxwvgwfvfwwwwwwvwwwxfwwvwwwwxwxwwwvwvxwgfwwwvwwwwxxwwgxxxwwxwxxxxxwwwwwxxwfvvwxxwxxxxxxxhxvwxwwwgwwwwwwwwwwgfwvgfwuwgwWwWwwhwwwwwxwxwwxxxVwWwgxwgxxvwwgwwwxwwwwwwwwgwwuwwvWggvvvwwwxwwxwwwwhxxxwxvwwhwwxhvvxwwwxwfwgxhwwxwxwwxxxxwwxwwwxxwxwwwxwxwxwwxxwhxvxgvwwxxwgvxwgwwwwvvvwwwvvwvfwwwwxvVvvwggvfwwwwfwwxwgwgvwgwwggwwgxgwwgvwvxwwwwwwvfwgwwwwwwxwwwwgvvwxxxwxwwwwwwwwxwwwwxwwwwvwwxxxwwwxxwwgwwhxxwwwwgxwwxwwwwwwwxwwwxwxxxwxwxwxwxgxxxggwxwwxwwwhxwWwgggwwwxxwwgwwwwxxxwwvwxwwwwwvwwvwwgxwvwwxwxwwhwxxvwWwwwxvxwxgxwxwwwxxxwxwwhwwxxxxwfxwxwwxxwgwvxvwwwwxxwwwxwxwwwwwwwxwwwgxxxuffwgvgftvvfwffvwwfgufvvwwwfuwwfvwwxwwvfgwwWwxffvwuTewtfwfvwvfwwwwvwvwwvwwvgvvVwuvWwxwwwfvwwwwwwxxxxwwuuwUwvwvwxuwwwwwwxwvwwwwwwxwxuwxxhxugvgwgffwwggwwwgwwxwuwvwvwwxxxwxwxwxvevvfvwvfwwgvwv4ewwxwvvwuvwwxvgwvgxwwgvwxvvvfwwwexwhggwVewwwwwvwxwwwvwwwguwwwwwvwfwwxwwwxgwwvwwhghvwwWwVvwwwwggxwwvfxgwgwxuxwwvwxxxxwwxVvwwwvxwxwwxwwwvfwwwwwxvxggfwxwwwwwxwwxwwwvxwxwwwwgxvwwwwwwwesvfvffvvggwfwvdefugwwxfvwvhxvfevfwgxvwwwghxffvwgwwwwwwcVfvfuvVvwwwwwUvuwwwVwgvxwwgVvevgwwWwwxwwwxwwwvxwvxwwwwwwwwgwgwwwgxxgwgwwwwwvwwwwwwwxwhwxxwxwwfvwwwwgwwwwwwwxgwxwwxwwwwwwwwwvwxxwwwwvwfefvwwwgvwvxxfffTgvxwwxwvwvvwwwwwvvwwwgvwxwxwwevvwwwwwwxxxvgTgwxvwwwgwwgwwwwwxxwwxwxxwgxgvwxwxwvgxvwxxxwgwwwwwxgvxfwxxwxwwwxwgwwwgwwwxgwwvwxxwwxgwxwwwwxwguevvvvxfvwgfwweevwwwwufwwvvwwwwvgvwgewwwwwvwvwvwwevvwvwwfuwwufvwvggwwwvgvwwxfvwgvwwvwwgwwvwwvwwwgvwwwwwwvwxhwwwwxwwwwvwwwwwwwwfwwwxwxxwxxgxwvgwwwwvvwwwwwxfwwxwxwwxxwxxwwwwxwgwWvwwvwwfwwwWwugwwgwwvgwwwvvwwxggvvwxvgwgwwwgwgwwwxwwwwwwxwwwgwfxwwfwxwwwvwxxwxggWwvwvxxvhghgxwgwwfvwwuwwxvwvwwxwwxxwxxwxwxxwwwwwxwwwwwexhvxwwxxxwwwwxhwwxwwwwwwugewgfwwvWvfwweevwxvwwwwwvvvwvwgxwhffvvgvwvwgggxxwvwfvVwfvwgvfvuwwwwwvvvwgwwwvwwwwwwvwWXwwwfxgvwwggWfwwwwwxwwwwwwwgwhfwwfwwgwwgwxxwxwwwxwwxwxxwxwwwwwwxxwxxgwvwwwwxwwwxxxxwxxxxvxxwwwfwwvwvfwwwxvvvwwgvgwwwgvvxwwwwwwxwwwwwxgwxwxwwwwvwvwgwxwhwwwxfwgwvwxwvxwwwwxgwwxwxwwggwxxxwxwwwxwgxwhxwwwxvwxxvxxxggxwxxwxwxwhwwwxxxxwxhwxwxwwxwwwxwgwwxuwwgvgvwwxwwwuwgwggvwffgVwwwwwwwwvwwgwvwwwgwwwvwwwwwxvwwguwwggxwvwwhvvwwwxwgvvxwwwvwwhwvwwvhvwwwwxwwwgxxwwwxwgwwwwwwxxwxwxxxwwwwxwxxwxxwwvxwwvfwwwwwwxewwwwwguvfgWwvwwwxwxwwvxxxwwwxgxwvgxwwwwwxWvwwwWxwwwwxwgvgvwxwgxgxwwwxxxwxxxwwgwvwwwwxxxxxxxxxhwxxwxxwxxywwxxwxwgwwVgvgvwwwwxfffvfWWvgfvvwfvwwwwwxwgxxxwgwwwvfwxwvwwgwwvwvwwxwwwxwxggxwwxxxwwwhwwxxxwwwvwwxwxwgwwwwxxxxxxwxwxxwwxwxxxxwxwxxxgWwwwwwwvwwwxwwfvfwwxwwxxwwhwwwxxwxxxwxxwwxxwWgwxwwxwwgvgwxxxxwwxwwxxxxxwwxwxxxgwwhxwxwxwxxxvxxxxxwwwxwxxxwwwxwufwvfwwufwvguwvwwgvwvwwwuwwwxxgeWvwwwwgwwwxvwxvxxvwwxgwuvwgwvwwxvwwxgvvwxggwvwvwwgwxwxxvwxvxxwhvhwwhxwxvxwxwwwwwxwgxwwgwvvwxwwvwwgvxxwvxxgwxxhxxxxuewgefvvgwwvwvvgwwxwwwgwwewfeWvvvvuwvwwxvwugvwxwwwvvwwwwgwwwwVwgwxhwgxvwvfwvgwwghxwwvhxxxwxwvxgvgvvwuxxwhxvuxxuxwvwwwwwwxxxxwxgxwwhwwvwxwxxwhhxvgwxwwxwxxvxxxwwwvuwgeWuvWwfgvwwwufgvxxwvwwwwwvwwwwxxxvvgvwwefwvwxgwwvxxwxwwwwwwgxwwxwxwwwxwwwwxwxxvxxxxwwxwwxwwxxxxvwxxwwxwgwgwxxxxxxxxhwfeWwvwuwwwwwwwvgvwhxwwxxvvwvwwxwxxxxggxxwvgwwvgwwvwwxwxxxxxwxwwxxvxxvxwxxxwxxwwwxxxwwwxhxwxxwwxxxywxwwxwwwxxxwxxXwvxxhxxxwwxvvVfwvvwfvwwfevwvxwgwvfvwuwwvwwwvvfvvwffwvfwwwggwwwvfwffevfwvwwvwwwwwwvwwwwwwwfvwwwgwwwwwVvwvxwwwwwwxgwvwgwwwvgwvvgwxxwwwwwxxwwxwwxwfwwgwxwwwwwwxwwwwwwwxxxwwxwxfuwvgvvfwwvwwWgwxwwwgwxgwwgfvwwvgvwwxxgvwwwvwwxVfxwwwffwwgvwwwwxwwwwwxwgfwwvvwwgwxxwxxwwgwgvgvxwxwggvwwguwwxwxwvwxwxxxxwgwwwgxwwxwwwwwvwxxxvwwxxxxgwwxgwxwwxxxwxwxxwVuvwefvffvvvvwffwwfgwvwwwwwvffvwwvvggwwggvwwvxwwwvwwwwwvgvvvvwfvwwwwwwegwwgvwvgwwwwvvvwvxvvvwwwwgwwxgwxgvwwgwxgwvgwvhwvwwxwgxwxgwxxxwwgwwwhwwxxvwvwwvwwwwwwwwgvwwxxwwwwhwxxxwxffvgvwwgwwxwxfwwwvwwggxwwgwvhwwgwxxwwgxwxwxxhwfuvwwwwwwwwwwvxwvwxwvwwwwwwwgwwxwwwwxxWvwwwxwwwwwgxwhhxxxxxwxxhxxwxxxgwwwwwxgxxxgwwwxwwxwxwxxxxwxwwwwwvwxxwvwwwwwwxwwwwgwvwwwwwwwwwxgxwwgwvwwxwwwwgfwwvwvwwwxggwwwwxwxxwxvxwwwwxxwwwwxwwxxxwxwxwxxxwwxxxwwwxwxxxxxwxxxxxwwxxxxxxxwwwwwgvwvwvvvwwwwvwwwwwwwwvwwxxwwwhwxxxxwxxxxxwhwwwwwwwwwvxxxwwhxwxwxxxwwwwwxwxxxxxwxxxxwxxxxxxxxxxxxxxxwwwwwgvwggwwvwwwgvwwwwwwwwwwwgwwwxwggwwxxwwxwxxxwwwgwvwwwwwwxgwwwxxwwxxwwwwxxwwwxwwwxxxxwxxwwxwxwwxwwxxxxwxwxxwxxxxxwxxxxwxxxxxxggwwwvwwvwwwwwxxwwwxwxwwwxxwwxxxxwgwwxwwwwwxxxwxxxxxwxxxxxxxwxxwwwxxxxxwxxxxwxwwwxxxxxwxvvxvvxwwvvwfwvfwwxwwuwvfwwwxwwwfgvwxhwwxvvxwvwwfwwuwwwwvwwwwwvwwgvvvuvgwwwwvwvvxwfwwfwwwwfwwxwvwwfwwwwwwxwwwxxwxwwwuwwwvwwwwwvwwwxxwwvwwwxwxxxxgvvwwwwvwfwwwwVgwwwxxvwwvfwvwwgwvwvwexwwwxvxxwwfwwwwwxwvwwwwwwxwxxxxegwwwwgwgxxxwwwwxxexwxwwvfwwwwvwxxvxwxxwwwvvgxvvwxxwwwxwwxwvwwwxxwwwxxxewwwxwxwvwxxwwwwuwwgvvwfwwvwvfwgwwwwvvxwfgwwvwwwwwxwwvwwwxxvfwvuvgwwwwwxvwwgwggxwwwvwvvxwwxwxwwxxwwwxwwwgwxxvxwvwwwwwwwxxwwwwwwwwxxvxwvwwxwxwxwwxwxwwfgwwwwxwvwewwwxxwxwwwvwxwwxwwwxwxwxxvwxvwxxwwwxxewwwwwwwwwxwxxwhwwxxxxvxxwxwxxxxwxwxxwxwxgxwwwwxwxwwwwxxwxvwwvwwwwwwwxvgwgwwvwwvvvfvffwfwwfwwwwwveuufwhgxwwwvhwwwwwwwwwwxvvwgvwwwwgxwwwwwwwfxgwwwwwxxwxfwwfwwxxwxwfwwxwwgxxgwxxwwxxwwwwwwwwwvgwxwwvwwxgxgwgfvwwwwwwgxwwwwwxwwwxvgwwwvwwvvwwwwxxwwwwwwwxgvwwwgwwxgvxxvwwwxwxwwxwwwgxxxwwxwwwxwxwwvxwxxxxxxvvwwgvwwgvvwwUVwvvwwwwwwfwVewwwxwwwwwvwwgwvwwwgwvvwwwvwwxvvwxxwvfwvwwwgwxwwxxwwwwwxwwwwwwxwwwwwwxwwwxwxxwwwwwxwwxxxxxgwwwxvxxxwxxwxwwwwgvwhwwwgvxfwvxxwwwwwwxvwwwwxwwxxgvwwxwxwwxvxxxxxxxwfwxwwxxxwwwwxxxxxxxwwwxxxxxxxwwxxwwwwwxvwwwwvwxvwwWfwwwwwUfgfvvwwxvhwwwvwTeufwwxwwxwwgwwwwwvXwwgvvwvwxvwxwfwvwwwwxvwwwwvwwwwwwwxwwwvwUggfwwhwxwwwxxxwwwwxwwxwwxwwxwwxwxwwwwxwxxwwWwwxwwvwwfxwwwwwewwwwxvwvgwwxxwwwwwwwwwwhvgwwwwfwwwwxwxxgwwwvxwevwwwvwxwxxwhxwvxxwwwwxwxwwxwxwwxxxxxxxxxvfxxwxxxxxwxxwxwwwxwvwwwggwvwwwfwEeufgvwwgwxffwwxwxwxgwuwwxxwwvwwfwwwwvvgvwwggwwxwwgvwwwwwwuwxwxxwwwwwwxxxxwxwxxwxxxxxwxxwwwxwxxwxxwwwvxwwxxxxxxxxwxwwwwgwwgwwwwxxwwxxwwwwxuxxxwxxxxxwwxwVvwwwwwwwwwwxxxgxxxwwxxxxwwxwwxwwxxwxxxgxxwxwxwwxwxxwxwwxxuUwwftfwfwwwfgwwwvwxwvwvWgfgwwwwuvfvvgvvfvwgvwgwgwwwwwwwwfuwwvfevugguvwwuewwwwwvwwwwwwwwvggvgwwvwwwwwwwvgwxwgwgggwwgwwwwwvwwwxwwwwwwvvwwwwxwwxvwhwwwxvwwgwwwwwwwxgwwxwwwxwvfwwxwwxxxwxwhgxwwwwwwvwwwfwvvwgwwgwfgvwgxtfvwwfvhwWvwwvvwuvfwwwwwvwwgwwwwwghwwgwwwwwwfgwwwxvwxwgwwwxwwwxwwgfwwgwwwvwwwxwwWxwwwxwxgxwhWxwwwWwfvwwwxxgwwxwwwwwxwwwuvxxxhwwxgwwxgwxwxgwwvwwwxwwwxvxxwxxwxwxwwwwwhwxxxgwvvvwvgufgwwVvvvwwfvwgwwfWwwvgfweewvwvwvvwwhvwwvxvwvxwwwwwvvwgUvuggwvwVwgvwwwwgvxwvWwgwuvfvgwwxgWVwfwwxwwwwgxxgwwfhwwwwvwwxwwgxgwwwgwxwwwxxxxgfwwwxwwwxxxwgwxwwwxxxxwwgxwvwwwwxwwxwhwwxxwxhwwwwgwxxxwwxwwxxwxxxwwwvfwwfwwWwgvgwffwvwwwgwgwWxvwuwwwvwwvxxwwwvxgwwwxwvgxwxxwwxwwwwgvwwwwvvvgwwfwxwxwvwgxgwwwwwfxwwxxwxwwhxwwwwwwxwxwwgwwwgwwxxwwwwwwwwxxxWwxwxxwwwwwxwwxwwwxwwwggwwwvxxwvwxwwwxwxwxwwxufwwfufwxwwvvvwwgeWegwfwvwxwxwfgfevweeewwwwwwwfwwfwhwxfvwwvvwvguwwwwwxwfvwwxgwwwwwfwwxxwwxwwwvwwxvwwxwwwfwwwxwwwfwwffwwxxxxvxgwxxwhfwxxxwxwwxxvfwfwfwwwwvwwwwwxvgvvwwwwwfgxwwwwwwwwwgxwvxwwwvwgxwvhuWvvwgfwwgwwwxvwwxvwvwxwwgxxwuxxuhwwxfwxwwwwwwwwwxxxxwxxwgwxwwwwxwxxwxwxwwxwxwuwweUvwwvwvwvwvggvfwwvgxwwwwwvVuuvvvwgwwwxvgwvvvvfvwwggwwwxwvuwvwvwwwvwxwwvwwwxfwxwwwwwxxwxxwwwwwwxwwxwxhxxxxwwxwwxwwwgxxwwwwwwwxwwhwwwwxwvwwwwwhxwwwwwwvvwwwwwwwhwwxxvwxwwwvwwwwgwxvxwwxxwwwwxwwwxxxwvxxxwwgxwxxxxxxxwwxxxxwxxwxxwxwxwvxxxwxwhxwwgxgxwwxxxefwwvvwffwgvggvvgwgwxfwwwVfvwvvvvwgwwwwwfwwvfwgwuvwwwwgwwfvwvwgvwwgwvwfwvfvvwwfwwwwwwwxwvwgwwwwvxwwwggwvwwwwxvwwwwwgwxwwwvvwwwgwvwxxxxwwwvvgwxxwwwxwhvwwxxvggvxwwwwwwgwwwwwwwwwwwvwwwxwwxxwxvwxwxxxwwxxwvwwwwwVfwwgwwgwwxvwgwfwxwgwgfgwwgxgvuwvwxwvwgwwwwwgwxwvwwwxwwvwxwvwwwwwwwvwwwwwwvwgxwwfgwwvwxxwwwxwwgwgwxwwfxfxwvggwwwxwwvvxxwwxvgwxgfvwwxwwwvwxwxwxhwwwvwwwvwxxxwxxfwwhxwwwxwgwxxxwwvvhxwvwwwwgvwwfgwvvffvwvgwvVfvwfwwgwwwgvfvwwwwvvfgwhwwwgwgfwgxwwwxwxwvgvfvwwfwxvwwfvggwwggwwwfwwwwvwwwwwwwxvwwwxwwxwgwwwxxwwwwwvwxvgwxhwwhwwxwghwwwvwxxvvgxgwwwxxxwwwxxxxwwwwvwwvwvwwwwwxhwwwxwxwxxwxwwxwfwxxwvgxxwVwwwwgvwwwxwgvwwhgwfvgxwwwwhggwwxwxwwxgwgwwwwwwwhgwwxwxwwwwwwwwwhgxwwxwfgvxwhwwwwwwwhwxvwwxwwwxxwxwxwxxvuwxwxwwwwxwvwwwxwxwxwvfxwxxwwwwwxvwwwwxwwxwvwxwwxwxxxwxwwxhxxtfUffevwwvwvgUuwvevwwwwvwwwvwfvwvefwwwwvevvgvvgxwgffgvfeufevwgvteuwwgxgwwxwwwwvVfvfufwwwxwwvwvwwgxxwwvwvvwgfgwfvggwwvwwwwfwxvvwwvxxxvvwwxwxxfVgwfvufwwwwwhgwuxwxwxwxfvxwwxwvxwxwwxvxfegvgfwWewwwgwwwfgvwwwfwuufwgeEeuvwgvgwuwwguvvvgwwwwxwwwggvvwwxUwvffwwgwwwwgwwvxwwwxwvvugwvfvwvvgwwgvwxgxwwvvwxgwgFfvwfwwxwwwwwguuggwgxwwwwxgvwxwuxwxwxxvgwwwwgwgguuwwwwwwgfwwgxgwgwwwxVxxvgwwwwwwxhwwxwvggxxxxedvUfVUvwffwWvwwefVwwwvwVwwwvgvwUTvvgfefwwwwhvvwvgxxwwwwTfevVvdegwgvwwgwwvwwwwwwwwwfgvvwgxgxwwfvxfuwfwwxxvhxwgvwuwwwwwwxvgvwwvwvwxwwgwwwwwwggwxwwwxwwxwxwvewwvvwwxwwwxwwxwwwvwwxvwgxxxxxxwxwwvxwxwwVVfvwvvffwwwwwvwufwwfwwwwwxuwfvexgwwwwwwvgwwwwxggvwwwgxfvffwgvvwvxwvwwwxxxwwwgwxwgewwwgfwwwfvwVgwwhwxgwwfvxhwwwwxxxwwwwxvwwWxwgwwwghwxwxxxxwwwwgxxwgvwwggxwwwvwxwwwwxwwxwxfxxvwxwxxvvwxwxuwgwvvvwuwvvfvwvvvwwvggwgvvwvwvgwxwwwwwwwwwVfwwvwwvxwwvvvwwfuwwwwwWvgwwwvwwwwvwxwgxgwwvwwwvwuvwwwxxwxxvwwwwxwxwvwvwwVgvwwwxwvxwwhwwwwvgwfvvwwwwxwwwxwwxwwwxwwxvwxwxwwwxwwwwgwgwwwwvggfwwwwwgwfxwwvwWvwwvuwvgwwgvwgwvwvwgwwwwwwwwvhgXwxwwxwxfwwwwwwwxuwxwwwwxxhwWwwwwwxwwfwhwwxwxxgwwwxxxwwwwwxhvwwxxxwxxwvvxwwwwxxxwwwwwxvgwwwwvwgugvvfgfgwgvfwgvfuuvwvwwVwwwgvgwvvvvwfvgwxwwgwvwwwwwwvvgfwwwvwvwwvvwwwwwgwwwvxwwvwgwwwwwwwxwwvwxwwxwwwfwwwwwwwwwwwgwxwwwwxxwwwwwwwxxwwgxwxxxxwvwxwxxwwwgxwxwvhxxxxxhgwggvwwvwwvfwwhxvvwwvugvgwhwWgwvwwwxxxxxwwxwwwhwwwwxwwgvxwggwwwwxxwwwwwwwwxxwxwwhwhwhwvuxxxwwwxwxxwxxwvwxvxxwxwxxwwwxwgwfxxxwwwwwwxxxxvfwgvwveuwuggfwwwxgfwvggfwfwwwwvwwxgwwwwgvfgwvwwggxwvwfvvgfwfvfwvwwwwwvfvwwwwwwvvvvwvwwwwxvxxgvwwxvhwwvwhgvvwwwxvvwwgxwwhvxhxwwwxxxxvxwxwwwwwwwwxwgxxwwwxwwwwwwhxwxwxwxwwwxwwwwxwfwvwwWuwvfwwwvwvwwgwvgvwfvwwfgfwvwgwvgwfguwwwwwwwxwwgwwwwvxxwxfxwgvfwgvfvvfwwxwxwwwxwgfwwwvhwwvwwvwgwvwxxXVvgxvxvwwgwfwwwvxwwxxxhwwwwwxwxxwwwxwwwxwwwxwwwgwvwfxxxxfwwgxgwxwxhxwxxxxwfwvvfgvgvgveffvgfgwgggwevwwwwwgwgwwwwwuwwwgwwwwgwuhwwwwwgwwvfgfvVvuwvwvwvwwvwwfWfggvWveggwwwwwwxgwwvwgwwgxwwgwgwwwxxwwwwvwvwwwgxxwxwxvwwvxwxxwwwxwxxxwwwwxvvwwwwxxxxvwxvvxxwxxxxxwxwxwxwfwwwvgwvwwwwwggwwwwgwgvxwgwvwwwxwvwwwwxwwxgxwgfwwgwwgwwwgvgwgwwgvvvwwwxhgwwwgxgvgvwwxwwwwwgwxgwvwxgxwwwxwwwhxxhxgxwxwwwxxxwwxxxxwwxwwwvwxwxxwxwwwwxwxwwwwwwxgxwvvwwwwxwwwvvvvwwfvxfwwwfwwwwwfvwhfwwvwgvvvgvwwxxwxevwwgwvwwvvvxwwwwwggwfvwwggwwwhwxxxwvwwwwwhwwvgwwwwxwxwwwwxwxxxwwwxxxxxxwwvxfvvwwwwvfuwxvwvwxwxwvfwfvuwvwgwxwgwwxgvxgxwwwwfxwvxvwxvxwwwgwwwwuxxxxxgvwwxvgxvvwwwwxwwwwgwwxxxwwxxxwwxvwxwwwxwxxxxwwxxwxwwwwwgvxwwwvgvwfffwwgwvwvvvvvwvxwvxwxwwxwxwgvwvwwwwwwxwvxwxvwgwwvvwvhwhwvvxwwwwwwvwwxwxwxxxxxwxwxwxxxxxxxwxxwwxxxxwxxxxwwwxxxxxxxxwgvwwwewxwwwwwwvxxwxwwxwxvxwxxwxvwxwwgxxwgwvwwwvwxxwwwwwxwxwvwwwwwxwwwxwxwxxxxxwgxxwxxwxwxwxxwxxxwwwxwxxwxwwwwwwxxwxwwwxxxxwxxvwwwvvwxggvvvwwgfvvvfwettfwvvwvgwvwwwfvvUfwwwwwxwvwwgfvwwwwvxwwwwvfvwwwvwwxwwvwwwwvwwwgwwvwxwxvxxxwwwwwfvvUwxxxwwwxwxxwwxwwwwxxwwwwgxwwxwwwxwxvwwwwwwwwwwwvgfwvwwgfwvvwxvwwgwwvgwxvwwwwxwwwwwwxvgwvuwwwxwwwxwVwvwwwwfwfwxxwwwwwfxwvwwxwwxwwwvwxwwxxwwwxhhwwxxwwwxwfxwxxxxxxwxwxwghvxwggvvxVevvwvwwvVdtffvwvvwxwvwvwwwwwwwgwwvwvwwfwwxvwwvvvwvwwvvwwwvfwwwwwwwwwwwwwwwgwgxwxwxwxwwxwvxwwgxxwwxwwxxxxxxxwhwxxxxwwxvwxwxwxxwwwwxwxwwwwwwwwwxwxwvvwwwvfwwwvxwxwwwwwxwwghxvwxguwxwxwwwwwwwwxxgvwwxwwxxwwwwhxxxxwwwxwxxhhwxxggxwwwxxxwvwxwxxxxwxxxvfwvwvgvvxvWvvgvwwwfvwvfffvfwgvtvwuwwwwwvvwdvvvVfwvwvvvwgwwfwwvgvvfgvvvgwwwwvgfwgwvwfwWuWvwevwgvvfwgWegwffggvwwwwvXvvwvwwwxvwwvwwwwggwwxwgwvwvwxgvwwhwxxwvwhvwgvwwwwgfwvwwgxwxxhhwvvwvwxwvgwwwvxxggwwxwxhwfvgwhxwfgvwwwwwFvfwfwgwvuvwwWwvwwwwwwfwewvwvvvvfgfwvvxwwvwwwwxwwvwvwxwgwwwxhxgwfwhFgvwwwwwfvwxwwwufgwexwxfwwwwwwvwvgwwwxwwwwvwxhwgwwxwxxvwfwwxgvwwwxvwxwwwwgwwwhwwwwxwwhfwxfxwxwwwwvvxxwxxwwvwwwwxgwwwwwwvgwgfvwgwwwwwvVefwvgfgvwwwwvxvgvfuvwwuggvVUvfwgvguxwgwgwgfwugvwfwxvwwwgvvegggGwhwgwfwtwewWuwxvwwfwugvwGwVvhwwvwxwwvwxwwhwvvwxwhxwwxxwxhwvwxxwwxwxwxwgwxwgxwvxwvwvfwwwxwwxxwxgwwxxwxwwxwwwwwwwwwvwghwwwvvxxvegwggwggwwhwwgfvfwwwgwwgxwwggvwwxwwwwvwgfgwgvwxgwxwxwwwwwfwvghwwwxwwvwWwgwxWwwwwxwwxvwwwxwwwwwwwwVwwvxhwwvxvwWwwxwwgxwwxxgxfxxgwvxxxwxxxwwwvwwxxxxxwwwwxgvxxwwwxgxxxxvwwwgwwxwwwxvwxgxwwwgvvwxgwwuvvufvwufeuwvgfwfvvggwwvvvwvwvvfvvuefvvhwxvvgufvwvgwVuxwwwvvwwfvvvvwwwwgwfggwgvvgwwvufvffwfegvwvwfvwvwvwwvwwxwwwvgwgvwwfvwgvfvwwwwwwwwwvvwgwgwxxwwwwxwwwxwwwvwffuwwwwwwgxvvwwxxwwwuvwwgvwxwwxwhwvwwvwwxgvwwvwwfvvwwwggfwfvwgfgvvwwwgwwxvvwwvfgwvwxwvwwwgvwhxwwvvwwwvvgvfwvwwwwwwwfhvgwhwvwwwwgvgwwwwwwvwwxwgvxvvgxwxuwgvwvfwwwxxguvwhwwwwwwwgwvwwwwxxxwgwxwwwwfwwwwwwxwwgwwwwwxhxuxwuwvvwwxgxwgwuxxwwwvwxxvwVwguwffvvufuvfwgvwvwuvfwfwgvVwuwwwvvfvvvvvwgvgwwvwwwfvvwwxwxwvgufwvvevgvvgwfvwwwgvwvwwwwvwgvwwvwgggwxxwxwxgwwwwfwwghvwxvwwwvvxvwvwgwxwxvwwxwwwwwwxxwxxwxxxwwgwwwvwwwwwwwhwwvwvxwwVwxwwwxxhxwxxxgwhxxxxwwvgvwgwvwwwwwwxwwvwwgwwxgwwwwwxwwwvwwwgwwwghwvwxxxvwvgvwvwwwwwxhgwvwxhwuvwwwwxwwgwxwwxwwxgwvvwwxxwwxxwgwxuxxxwwgxwwwwxwwxwwwwxxwwfwwwwxhxwvghwxwxwwxvwxwxgxxwxwxwwwfgvvfgwgwwvffwvggvvgvwgwvwvwwwvwvgvwfwwvuwwgvvwfwwwhwwwwwgWwwvvwvgwWWgwwvvwwwgwwwwvvwwvwwxwvuvwwwwwvwwwwvvwvvwwwwwwwwvwwwxwwwvwwvxxwwxwxxwwwwvwwwwwwwwwwxwxwwwxwxxwwxwwwwxxwfggggvvwxwwvWgvgwwwxvwgwwwgwuwwxwwgwwwwgvvwwwgvxgggwwxwvwwwwgwvxwgwwxxxvwwxwfwwwvwxwwxwwvwvwwxxvwwwwxwxwwwwwxxgxwwxxwwxwxwwwwwwwxwwwwxxwxwwwwwgxvwwwxwwwwwffwguwfggwvguwwvwfwwgwwwxgwvxvvwwgfgwwwwfvgwwwwwwwxgwvwwuwwwwwwvvvuvwwvvwvvwwwwwwwwwggwwwwwxwwwxxwwwvwwwwwvwwwxwwxxwhxwwwwxxwgwhxwwwwxwvwwwxggwwwwwwwwwwxxwwxwwwvgvxwvwvwgwwwvwwwgxwgxgwvvwwwwgwwxwgwwwwxxxwwfvwwwxwwxwwwwxwwwxxwwwxwwxwwxwxwxxhxxwgwwwwwggwxwxxxhxwxwwxhxwxwwfxwwxwxwwwwxwwwxgxvwxxxxxwwwxwwgufwvvwxvggwvvvhwggwvWfwVvegwuwwegvwxwwfvvwvgfwgffwVuvwvgwwwwwvwfvvggvggvvvwwwhwvxgwwgwwwwwgfgwgwgwwxwwgwVwwwwhwxhwwgwvwvwxVwwgwwwwgwwvwwwwwxxwghwxwwxxxwwxxwwwwwwwvwxxxwwxxwwxwwxxxxxxxwxxgvugwgvwgwwvvwWgwxwhwvwwwgWuwgwwgwwwgwgwwhvwwwwgwgvwwgxwxxxwwwxgvwwwhwuxwwwxgwwwvwwwgfxwxxvxwwxgxvxxxxxwxgwwXvhwxxgwxxxwxxwhwwxxxwwxxxxxxxxxwwwwwxwxwxxxwxxxxxxwwxwggvvvgfwggwVvuffWfwVvUgVvvwwwggwggfvuwfvfxxwwggfwxwwwwxwxwwwwwggvvgwvgwwwwVwwwwwgwwgwwwwgwgwxhwxxwwwggxxwwwgxwwvwxxwwwgwxwwxwhxwwxxwwxwwwxxwwxxxwxxwwxwxwwxxxwhxvwwvxwwxwwxxxwvvwwwwwwwwvwwwwwggwfwwwwwvwwxxxxwwwxwwxwwwxxwwwwwwxwxxxxwwxwxwwwxwwwxwxxxxxwwwwxxwwwxxxxwwxxxxxwxxxxwxwxxxxxwwxxwxwxxwxxwvwwxwwxxxxxwxtvwhgvvxwfwgugvwxwwfwwwggvxhfwwwwwwxxxvwwwvwvwwvvwvvvwgwwwhvwwwvwwwvwvgxxwwwwwwxxxwwxwxwwhgdWwfxvwfwwwwwxxwwwwwwwwwxxgfgwfvggwgxwwwwwwwuhwxxwwwwwvxxxxxxuwxxgwwxgvwwfwgwgxgwvwhwvvvvhwwuhfvgwxxxvwhwwxxwvvwvgwvwvwgwwwgwxgfwwxxwwwwwwxwxgxxgxywxwxgdWghwwwwxwvxwhwxxwxwxwxwxwxxxwvvwwvvxxxwgwugwxxxwxwwwxwxwhxwxwxwxwwgdVwwwgvwfwwwwxvwwwxxwwwwwxwxxwxxvffvvvvgwxvwwgwvvxwuguxgwwwwgwwwwwxwxxwwxvwgvwfwwxxgwgxwwwxxvgwwwxwwwwxxwwwwwvwwwwvxwgwxvvxwwxwxwxxxwxxxgdWgwgwgvxwvwwhxxxwwxwwxwxwxgvwvwwhxxwwwugwgwgxxwwwwxxwxwwxxxxwwxvwxvwhwxxwwxwxwwxxxxxxxxhwwxxxxxwxwwgxwxixxxxxxwxufwxwxwevwhgvvwwxwwgewfxwwxggxwwwgwwxxwvvwwvvgggwvvwwgvwxevgwhwwwwwwwwwfwggvxwwxwxfwxxwwVegwwfwwwwwwwxwwgwxwxwggvwwgwvwwfgWxxwwfwwvxxxwwwhvwgfwwvwwwVwxwvwwggwxgxexvxwxxwvwwwwgfvvwxwvxwwwxwvwxxwwXwvwxywxWegwfwwvvxxxwwxfwwxwxwwwxxwxgvwxxwxvxxxwxwxxvuvwggwWegvwwgwffwvvwwgvwxwwxwxwvxwxwwwxwxggVvgwwewvwfwfvvwwxwxvwwwxgvvxwvwvxwwxxgfwvwwfwwxxgvwwwwwxxggwfgwfvggwwwfgxwxxwwxwwWegwwwwfwvwwwxvwwwxxxxxVvvwwvxxwwwwxwxvvxxxwxwwwxvwexxvxwxvxwxwxxxwxxxwxxxwwwxxxwwxxxwxwxxxvwxxxwxwwwwgwwwwwwwwggwwwwgwwxxwxwwwxwxxxxwwwwwfvwwgvwvvwwwgvwvxxwxxxxxxwxwxxxwwwwxgwgwxwwxgxwxxxxwxxxxxwxwwwxwwwxwwwwhwwxxxxxxwwwwwwvwgvwvvwxwwwwwxwwxwxxwxxwwxxwwxwwwwvwxwwwwwwwvwwxwxxwwxxwwwxxxxxxxwwwwwwwwwxwxxwxxwxxvwwwxwwxxwwwxxxxwwwxxwwwgggwgwwwxgwwwwwwwfwwwwwwxwwxwwwwxxxwwggwvgwwwwwxfwvwgwwwwxwxwxxwxxwwxxxxxwwwxwwwwfwwwxwxxxwxxwwxxxxyxxxxwwwxxwxwwggxxwwwwwxwwwwwwxwxwxwxxxxxxxxwxxvvwwwwwwxwwwwwwwwxxwxxwwxxxxxwwwxxxwwxwxxwxxxxxxwxxxxwvwwwwxwwxxwwxgvgxxwwxwxvxwvwwxwwwvwgvxxwwwwvfvwxwwvwwwwvwxwvuwwwxwwvvwwvwwvwwwwgwwwwxxgwwxxwxgugxwvwxwvgwxwgvwwxgwgwvxwvwwwvvwwwwfxxwwwwwxgxggwwvxvwuxxfxhvwuvwxxwgwvwwwvwwxxxxxvwwxxwwxwwwfwwwxwggvwgwwwwwwwgwxxxxxhegwwwwvwxxxwwxwxxxwxwxwvvwwwvxwxwwwwwxwvxwwxxwwxgvwfwxghwgegvvwwwwwxwwwwwxxvvwxxxwfgvwwgwwwfwwxvxwwwxwxwvwxvwgxxwxwxwvvvwxxwxxvxwwgwxwgwuwxwxvvxxwvwwwxwvxxxwwwxuwvvwxxvxxgugwvxgwwwwwxvxwwxxgvwwwwwxwxxwvvxwvxwfxvwwxxhwxxxxxwxwwxxwwxxxxwxuwwxwwwwwwwwvwghvwffwwwwvwxwwwxwvxvfwxgvwfwevwvwwwwgdgvwwgwwvwwvxwwwwvwwwwwxgvvwvgwxwwwxwwwwwwgxxwfwwwgvwwwvvwwwwwgxwwxwxxwwwxgvwwwxwxvvvwwxvwxxwwxxghtgvwwwevvwwwxgwwwxwvwwwxvxwhwwxwwxwwwxxwwwxwwgwwfwgvgwwwxfxwwhwxwwwwwvwxwwxxwgwwxgvxwvwgwxwxwxxwwwwwwxxxvwxxwxxwxwxxwxwxxwxwwwwwwxwwwwvwwveuffggvwvxwfwgwwwxWwfvwxwxfvwvvxwwxwxwwwwwwheefgwvwgvvvvwfwwwgwwVvvwwwwwvwgwwvwwwwwwfvwxwwvvvxxwwwxwwwwwwwxgxxwwwhxwhhwwwwwwwwxxggwwgwxxwxxwxxxxxwxxwgvwwwwwvwhxwwwwgxfxgwwwwxxwwwwxxxwwxxwhwwwxwwfwwxwxvxwxwwxwwwgfwxxxgwwxwwxvwwxxxxwgwwxxwxxxxxxxxxxxwxwwxxwwwxxxxxxxxwwwwwxvvwwvxwvwxfvvwvfwwwwgvgxwwwgvfvfwgvwwxggvfwwwvvgfgwfwwweefhvwwwgevvvwwwwwwwxwuevvWvgwwwwgwxxwwwwxwgwwguwXwgwxxwhwwwxgwvxxwwwwgwxwvwvfwgwwxwxwxwvwvfwgwwwxwxxxwwxvxwguewvwVwxxwwvwwwwxuewvwwxwwwxwwxxxxhfwwwwvvwwwxwfwvwxwgvxWwxvvvvgwwhwxxxxfwvwwxxywwwvyxwwwvvgwwwwxvxwxxwxxwwfvwxxwwgwwwwwxwxvwxxvxxxhxewgwyxwvwwwgvwwfevfWwgfwwwwwvwwwgvxwwwwxxxwwwvffgwweefgwwvwUfvgWfwgwgwwwwwxwwwwggvvgVgwwfwwwwwwwxwxxxxggwxxwfwxxwwwxxwxwxxwwwxxwwwwxwwvxwwwhhwwwwxwxwxxhwwxhwgvvxuxvwvvgwxwwwxwxwxxxwwxwxwxffwxwhwwwvxxwwxwxxwhwwhwwwxwwwxwwwxxwwwxxwwgxxwxxxwxxxxgwxxwwxxxwxwxxwwxywwwxwwxxxwxvgwvgvwwwvwwvwwgvxwvhvvwwwwwxwhwwggwhwhwwwwxfvhhwutvxveuvwffwvwffvxwwgvvwwwwvvgwvvvwfwgwvhwgwwwvhwwwxwvwwvwwwwvvvwxxwwxxwxxfwwhvgwxxvfvgwwvwwwwwwwxwxwxxwwwwwwvxgwxxxxxwgwxxhxwwxwwwvwwwgxwxwewwfhvgwwgghwwwvwxgwwhwhgwgvwwgWwevvwwxwwwgvdxxwgvwwwwvxgwwwxxgxwwwwvwwwwgxxvwfgwwwvwxgvwwxwwxwvvxxxxxxwxxxwxgvgwwwxxxxwgwwxwwwwwwwxwhxxwxxwhwwwxwgwvvgvwggwwwvgwwwwwwgvwvvvwwwgwvvwvxwwwhwwwvvxwwwgvfvwffvwfvvvvvWgvvgwwxgvWwwwwVwgvvvvgfvvgwwgwvwvwfwwwgfgwvxwwvwvwvwwwxwxgwfxwxxwwwhwwwwwgxxxwxxxwwgxxwvxwxwwfgwwwgwwwxwxgwwvxxhwwggwwwxxgxgwwvwxwhxgwxwwwwxwhwwwwxggwxxgvwwwwwxggxwwvwxxwxxxxgxwxwwgwwwwghwwwwwwhwgxgwwxwxWwxvgwwxwggwxxxwxwxwggxxgwvvxvxhgxwwxgwhxwwwwwxwxwxwwxhxwxwwxwxwxwggwxwxgwxgxxwwxxwwxxxwwxxwyvwwwgwxvwwwwwgvwgwvxvwwwxxvwwwvwwwxxxwgwvvwwwvwwwvvwwwwwwwwwvwwwwwwvwgwvgxgwwwxwwxxwxwwwvxwwhvwxxxwxwwwwwwgwwwwwvxwwwwxwwxwwwxwxxxxxxwhvwxgxfwxxwffwwxxwxwxwvwxxxxwxxwvwfwxwwwwwwwxxwwwxvxwwwwwxxxwwwwxwxxxwxwwxxwvxwxxxxxxgwwxxxxxwxxwwwxxvxwxwxxxvvxfwxwwfwgwwvwxvvxxwvxwgwwxwwxwwvvvvfwwwwwwwxgwwvhwwvwwxvwggwwxwxwxxxvwwwxwwfgxxvwxgwwwxxxxxxwxwwwwwxxwxxxwxxxwwxwxwwwvwwwwvxwwwwwwxwwwwxwwwxxxwxwwwwwgwwwxwxgwwwxxxxxxwwxwwxgxvwgvgwxwxghxxxxxwxxwxwhwwwwxxxxxwxxxgwxxwwwxgxwgwwwwwxWgwgwwwwwxgwwwxggvgxwwvvgvvwxwvvvvxgvfgewwgxwgwwwwfwvwvwgwwwwvgwwwxxgvwxwwwwwwwvvxwhwwxwxxwwxxxwxxxgwwwxwwwwwwwwwwwxxxwxwwxwxxxwwgxwwxxxwwwwwwwwvwwwWwxwwgvwhxwwxwwvvhxxxwgvwwxgxvuwgxxxwwvgxwxxgwwxwugxxvwxxwxwwwxxxwxwwxxwwxvwxwgwwwwwxwgxwxwwxwxxuvgwxwxxxxxwwxxyxwwwxxxxxwwgwxxvxgwwxwgxVVwwwgwWfwwggxwwwxwgvvgwxxwwfgwwwwwVvvgwwwwwwxwwgvvwxxwxwwxwxxwxxxwvgwwwxwwwwwwfexwwxxxxwwwwxxxwwgxhxxwwgwwwwwxxwhwwvxwwxwwxxxxxxvxwwwwxwgwxwwwgwxwxwxxwwxxxwxwxxxvewgxwxwxxxxgwhvxxwhgxxxxxwwwwxwwhxwxwwwxxxxwwxwxxwxxxwxxxxwwwwxxhwxwxxwxxwxxevwwuvwwwwwvwwxvwwxwwvvwwwvwwwxwwwwvwwwwwxwvwwvfuwvfwwwvwwgwwwwwwwwwwvvwwvvwgwvwwwgwuvwwwvwwxwwwwgwwwwwwwgwvwvwxwxwfegwwxwwxxwwvwVwwwfgvwwwwxxwxwwuwwwwxxxxwwxxgvwwvgvVwwuwwwfwvxvwxxgggwwvvgwhwvwxwwxwwxwevxxwwwvwwhgvwxwwxvwVwwwvxvwxxxwwwxwwxywgegwwwwwwhxwwwwxwwxxgwwwxwxxxxxxxwfwwwegwvxxwgwxxxwwxwvwxvwxwwxxxwwvuvwvwwwvvwwwwwgvhwwgguguvvvwxxwxxgwxwxxvvgvfwwuwfxhVgwvwhxvwwwvvwwwvxxxwwvwxwwwxwxxxvwwwwwwvxwgwvwwvwxxgwwwwwwwwxwxxxwxxwxxwwgwvxwvvxwwwwgwxxxxxwvxxwwwxxxxxxfugvwvuxvwwxxwxxxwwvwxxwxwxwxwguvwwwwvvwwwwwvxwwwxvwwwwwwvwxwggvvxwxxxxhxwxxxxxxxxxwxxxvwwxwxwwxwxwwwxwxxywxwvwwwvvwvwfggvwvwwgvwgvWwgwwwggwgvwwwwgvXggwwvxwxwfvwwgggfVvuvvgWewwgwgvugvwvwffvWwvwwvvwwwgwgvfwwwwwgwgwwxwwvvfgvxvfWvhwufvxxxwwgwwgxwxwwwxxxxwgvgwvvwwvwwwwwfvfwfvvwwxxwxwxwwxwxvxxwwxwvgwwgxgwfvwxggxvxxhfhwwwxvuvvgwwvvuvgwgxwwwwwwwwgwxvgWwwhxwxwhxvgvwwvgvwxgxxwxwgwhhfxxwxwggxfvwvwxwxwvggxwvwwwwxxxxwwvwvxwxvuvwfwfxxwxfgwXgexxxwwwxwxvxhwxwwvvVwgvwvwwvwgwwvfuvwvvxwwwwwfwwgwwwxxwxwxxwvxxxwfgfeuvwfvvwvwvwfvwwwvwvfwwvwwwVwggfwgwxwwwvxwwxwxwxggwwwvwxgwwwwwwxxwwvwwwxwwxwwxwwwxwxxxwwxwwxwwfwxgwwwwxwxwxxwwwwvxwxwwxwwwhxxwxwxwxwwwwvvxgfwgvwvwwwvxwwwwwwwwvxwwwxxwwxwxgevvgvwfwxwxxwggwxxwxwxwwwxwxxxwxwwxxxxxvvwwxwxxxxwwwvxwxxxxxwxwxxwxxwxxxxwwwwwxxwxvxwxxwxxxxxxxxwwxwwfgwwwwxxwwwfwwxxwxwggwwxwxwwxxwxxgxwwwxwwwwvwvhxwwwwwwwwwwwwxxwwgwwxvwfwwwwxxwwwwfwwwwxxwwvwxxwxwxxxxxxwxxxwwgwxxxwwxwxwxxwxwxwwwxwwwfgwwwwxwwxwvwxxxxxxwhxxxxxwwwwvwgwwxxwxwwwxxxxxxwxxxwxwxxxwwwwwwwxwwxxxxxwxwxxwwwwwxwxyxxwxxwwwwxwwwwwgwwxvwwgwxgvwvwwwxxwgvwwwwvxwwwwwwwwwfwwwwwfwwwwwwwxwvxxwxvxwxwwxwxxxwwxwwwwwvwxxwxxwvwxxxxwxxxxxxwwwwwvxxwxxxwxxxxxxxwwwwvwwxwwwxwwwvwxwxwywxwwxxwxvxwwxwxxxwxwxxwwwwxwwwxwwxwxwwxxxwxxwxxwwxwxxxwxxwxhwxxwxxwwvhwxxwwwxwwwxxwwxwghwgwwxwxwhwwwxxwwwxwwxvwvwwvwwwxwvvwwwvwxwxwxhwwwxxwxhwywwwxxwwwwwxxwwxxxxxhwxxxwxwwwvxxxxwxwwhwywwvxwwwxxwwxwwwvxwwxxxxxwwvwxwwwwwwwwxxxwwxxxwxxxwxxwxxxhwxwxxxxxwxxxxxxxxxwxxxwwxxwwxwwxvwwwwvwwxwxwghwwwhxwwwxvwxvwwvwwwwxxwwxxxwxxwwwxxwwxxwwwxxvwwwxwxwvxxwhxwxxxxxwxxxxwwxxxwwxwghwvvwxxwwxxxwxxwwwxxxxxwwwwxxxxxxxvxwxxxwgwwvwxxxwxxxxxwxxwwxxxxwxxxvwvvgfwwwwvwwvwwwuwwwwwvvwwwwwvxvwwwwvvwvwwggwwwxhwwwwevgfwwvwxwfwwgwgvvwwvwvvuwwwgwwwwwvwxwwwgwvgwwvxwwvwwwwvwgwwwwwwgvwxxhwvwwvxwwxxwwwwfvvwwxwvwwwxvuxwwxxxwxxwwxgvxvwwvwvhewwvwwxwhhxvwwwxxwvvxwxxwxxwwwwwwvxwwwgwgxxwwxwgvvwwxwwxxgwwwxwxwwwhxwwuwxwxxvwxxxxgxxhwgxxwxxxxvxxxwwxxwwwwxwxxxwxwwwvxvwuvwwevugwfwvvxvvvvvwwvgvvwwwwewxxfvfwwvwvvwvuvvgwgwvwgwvvfwgwwwwgwwwwwwwxxxwwwxfwwfwwxwfvwvhhxwvhwvvgwwwwxxxwxxxxwxwwxxxwwxwwwwxwxhwxxwwwxfwwxwxwhwwxwwxgxxgxwwxxxwxxwvvwwgwwwwwwxxxwxwxwwfxwxxxvvwwhwwxxwwwwwxxwwxxwgxwxxxwhxwwwxxwwxxwxxxxxxgwwwwwwwwvwgfxwgxwwwwvwwwvwwwhwufwwgvwxwwwwxwwwggwwwgvvvvwgvfwwfxgwvwgwwwwvdfvvwwxvwxwfwvwwvwwwwxwwwwwvwwwwwvuwhwvwwwxgwxwxwgwvwxxxggfgwxxgxwwvwvuwhwwxgwgwvwwxwwwwwwwwwwxwxwhwwwxxxwvwxwwvwdfvxfwxwwwuwxvvvwvxwwwwwwxxxwwwxwwxwwwwwwxxwwwwxwgxgxwxxgwwgfvvgwvwwhwwxwwwwxvwxwxwxwxxwvxxwwwwwwgwwhxvhwxxgwhwxwwwgwwxwvxxwxvxwwwxwxwwwwxwhgwxxwwwwwwwgwWvwfwvgwwetfWwxwwgwvhwxxwvfwgvgwxwwwgwwwwgVvvwwvwwwwwedfWfwfwwwwwvvwvwxwwgwwwwvwwhwwxwwgwvxwwhwvxxwgwwvwWxxhwwwwwwwwwxxxwvxwWxhwxxwgvwxwwxwxxxxwwwwwwwxxxvwxxwwxxwxwhwfwwgfwwgfwwgwvxxxwxxxxxwxxwxxxxxxgwwxwwvwxwwxxxwxhwxwwvvwhwwwwhxwwwxwwxxwgwwwxxxxxxxxwxwhxxhxhwhxxwxwwwxxwxxxxxwwwxxwwwgwxwxwxwtwgfvwvgvwxvwwgwwwgwgwwwwwwxvuwwwwwwwfvwwxfgwxwgvvfwcVfvwwwewvwwvvvwwvwuvwgwgwgwffwvvvvggwwwwwwwwwwwwwwwgwxxwwwxvwvwwvwwwvgwwwwffwwxwvgwwufgwwwxWwxwvwxwxwwxvwwwvwwffwwwhwwwwwwwwxwxwwWwwvwwwgwxwwwwgwwxwxwxwvvwwwewvwwuvwwwcWwwgxvuwwwgwwwuwwwwwgwxwvwwwwwwwwxxgwxhwxwwvgwxxwwwwwwvwwvvwgwvxvwwwwwgxwwwxxvvvgxwhgwwxxxvwwxwwwwwwxwvvwwwvgxwxgwwwwxwxvxwwwxxwvwxwwvwwwwwwgxwvwwwvwxvxwwwwwhxwwxxvwwwwxgwwwxxghwxfvwvWvwvwggvwgfwwwGvvwwevwffwwvgvxwgUegfgwwwgwwgvgwffwwGvvwewwxwwwxwwwguvwgfvwUegfwvwWuwwfwwwwxwwwxxwwwxwwvgxxwwwfwwwwwfggwwwxwwwwwwfwvvwwxxvxfhhwwwwgwwhxgvggwwwwwwwwwwwxwwgwwwwwwxwgwxhvxwwwxgxxwwwxxxwwwWgwwwgvwwfvwwwwxwuwwwhxwxwfwwwxwwwwxxwWxxwwxwwwwwwwwwxgvgwwwgwwwwgfvwxgXxwwwwxvwxwvwhxwgwxwxxhwwwxwwwxxxwgvwxwwxwxwxxxwxhxxxxxwxwxxwwvxxhgxwwxxgwwgvwwwxxxvwwwfwvffwwxfwgeuwfwfvffwgvvwwwwgwwwwwgfwvwvvwfwxwwVuwwwfTwfefvvuwvfwxwvwwfuwwfwgwVgfuwvevvwfwVvfuvwgwVwwwwwwhgfwgwwggwwfVwvvvwfvwxwvxwgxwVvwwwxxvfwvfuwwvwxvgvvwVvwxxwfvwwwvfwwwxwwwwwwwxwxwvwvwvwfwwvvuvwfVwxwvufvvgvwgwwwwgwxxxguwvxwwvvwwwxxwwgwwwwfffwwwvwwxgwvwfxwxUvvwxvwxxgwxfvwFwxewghggvwwwwwwxwxwguvwwwwvwwwxwwwxxhwxxwwwxvwwxxevwwewwwwxwwvWxhxTfxwxxxxxvwxwwwwxwwvwwwxxggwwggwfgvvwwwfgfuffwwgfvwwwwggwxfvwwxwxxxxxhwfgUvvvwfwtxvvgfUtvgwgwvfgewwwwfvuvwvxegwwwwwggvwwwvwxwwvwvwwwwvwxxfwuwwwwxwwgwxwwxwvwxxwwwwwxxvwxwwuxwwgwwwwwgwfvfwwwwwxxxxwxwxwwvwhwwwwwwxxwxwwhvwevfwxwvwwwgvwvwwwxwxxwxxxxxxxxwvxvwxxxxxxvVwwwwwwwwxvwvvewwwwwwwgwwwxxxwxxxxxxxwgwfwwwwwwwwwxxxhxxhwxwwwwxxxwvxxxxxgwwwxgggxwxwwwgxwxwxxwxwwxuwxgvxxhvwghvwxwgwwfvxwvvwwwxwggwggxgwxvvvvwfwvevvgxvwgfgwggVfwwwfwvxgwwwwxwfvwwwgwwwgfwvvwfwwhwwgwwvgWvwwvwvwwwxvxwwwwwwxwvwwwfwfwwgwxgwwvwwwxxwevvxxxxxxxgvxxfwwxxxfvvwwgvwwwwxxfwxwwwwwwwxvwwwwwxxwvxwffvwhuufhggXxwhwwwwwvwwxggvwwxvwgwxwwwxgwhwxgxXxgggwwwfuvhwvwvwvhvgxwxgxwwhwfwvvgxwgwhwxgwWwWwwhxfgxgwwgwxeefhwwwhwgxxgwwxxxxhxhwxgxxxwxxxxxxxwxxwxwfvuxxvwvwxhxhwwwwxxwxxxwxwwwwxxxwxgxwwxxwuxvwgwxgwvweghwfwwwVvxxwwxggxgvxwvwwwwwVvwxvxwgwgwxuwwvwvfgwwxwwwfvfwggfvhwwwgxhwgvvwwwwwggwxwgvvxwwgwxwwwwwxgwwvwwxxwwWwvxwwwwwxxxxwwgwwwxxwwwgxvwxggxxwxxwxwgxwwxwxxwxxgwhxgwxwwxxxxwxxwhxxwxxxxxfwggfvxwxxwwwwhxwwwgxwxxxxwxwwxxxxgxxwxgwghxgxwfvvwwwwxxwxwxggvhxwxwwxxwxwfxwhggxwwxxxhxwxwxwxxxxwxxxxxxwgvxxxhhxxxxxxxxxwxwvxwhxxxwwwhwxxhgxxxxxxwxxhxwwxwxxxxxyhwwwvwxwvwwwwwuxxvgwwwwwxwhggwwgwhwwwxhxwwxxwwvwvvffgwgvvwxwwwwxwwwxwvwgvwwwwxwgwwwvwxxwxwxxvwvhwggwhwwwwvvvwxxxxwwwvvxxxvwwwwvwwhwwwwxvgvwwgxwxxwwwxgvwwwwwwwgxxxwvwwwwfwgvwwxwwxwgxwwxxxxwwwwwvwwwwugwxwvwwwxwwvwgwwwwxgxwgwxwwxwxwxwvgwwwwfxxxxxwwwwwhvwwxwwxwxwxwxfugfhxgxwwvgxwxwxwxxwwwwxxxxwwwwfffxwfvwevxvwvwvvgwxxxwwgfwvhvgwxwxxxwxxhxwxxxwgfwfvfvgwwgwwwwwwwgwxwxwwvvwwwxgwwwwxwwwxxwwwwgvggwfgwxfwxwxwxhxwxxwgwgvwgxxxxxxxxwwwxwgwwxwwwwxxxwxxxwwxxwwxxxwwxxvgwvgvvwxwwwwgwwvhwxwvwxxwxxwxwxwxxuvgvwwwvxwwvvxxxxwwwwwwvwxwxxxwxxxwwwwxxxwxxxxxxxgxwwxvxxwxxwxwxwxxwwwxwxxwwxwwxxxwxxwxxuwvvvwwvwwvvvvwvgxwwvfwwwvwgwwvwwwvvvwwvvwwwvuxwxvwvwVwfvgwdfwvfegwfwgvwwvvwwwwfgwvvwwggwwvwwwvuwwwwggwwwwwvwxvxwvwwwwvwwvvwwwwwwgwvwxxwwwfwwwwwuvgxwwxxwwwgwwvwwxwwwwguvgwwwwwxwgvxwxxwwxwwwvvwvwwwvwgwvwvvvwwwvwwwdfvvwwwwvwxwvxvgxwwwwwgvwffwwwVwwwfwvwwhwxfwfwhwwwwwwwwwwwwuwwgwwxwgxxwwuwgwxwvgxxvggwxxxwvxwvgxxxwwwwwwgxwgwxxxxxwwfwwwwwwwwwgxxxwxhvxwwwxwwwxwwwxwxxxxxhfwwwwvwwwgwvvgwwfgvvwvwvuwwvgwwwduWfwgwxwvwVwwwwwvwxvwwwgvvvduVfuvwvwfgVuvvvvvwvwwwwgwwvwwwwvwwwwvwvxwfgwvwxwwwwgwwwgwwwwwgxvWwxggxvwvwxxhxwxwwwxwxxxwwwwwvwwwwvwgxxxwwwwwwwwhxxwwxxxxxxxxwgwwwvgwwwwxwwvwwwwwwwwwwvvwhhwwwxvwxwwwhxxwwwvwwwfvwvwwwgwwxwwwuwwxgwwwwxwwwgwwxwwvwwxwgxhwwwxwwwxwwwwvvwxxxwxxwxxwwxxwxxxwwxxwxhwxwfwxwwwxwxxxwwgxwwxxgwxxxxxwwwwxwwwxgwwvwwwxwwgwvwggxwwwgxwvggwwwWfxfuwwwfVfVffvvgwgggvwhfvgvwgvwvffgvwwwwxgugfwWvwwxwxxwvhwgwwwwwguxwgWwxwwwxwxxxgwgugwvwwxxwgvfggwwxwxwwxwxvxwxwvwxxwwwxwwgwvxgwvwwfXwwvhwvwwxwxwvvgwwwgfuwwwXwwwxxxwwwxxgfwwvvgfffegvfwvwwxhvwgwwwxwgfgUxgwwwwxxWwwxxwwxgwwgwwxgwwwwvxwxxxvwxvwxwxwxxwwhwgWgvwvxxvwhwwxxwxwwwwgwxwxwxxxxwwwwgwvvwwwwggvwwwggwxwwwwwxwwxwgvxxxvxxxvgwVvuggwxefgWuefwWfgwgwwwxgwwgwwxwgfwugghvwxgwgwuxwxwxwwxvwwgwwwwxxwwxxxvwwxxwxxxuwwxxxwxxwxwwwwxwxwwwgwvwvxxwxwxvwxwxxwxxWvwwgwxxwwwvwxwwwxxvwwwxwwxxxxxxxxxwxxxwxxxwhwgvvgwgvwxxwwwwhwWgvxxwggvxhwxxwwwxwwxxwxgvwhxhwgxwxwxxwxwwwxxxxwxxxxwwxfvxxxwxxwwwwxwxwxwxxxhvxxxwxwxxwxvwgwxwwwwvwgwwgxvwfgvwvwwfvwwwwwwwwgwwvwwvwwwwxwxgvvwwffvvgevftvewvgvvgwvwvvgwgfwvvetvuwwwwwgwvxfwgwwwwxwwwwwvwhfgwwwwwgwvgwwfwwwvvxwwxxwvvwfevvgvvwwgwwvwvvwgwwwwvwwwggwwxvwwwgwwwwwwvwgvwwwwwwwvwxxwgftvewwwvgggwxwwxftvuwwwwwgwwxwxwwvgwgwvwvggwwwVwwvxwvvxwwWwxwwxvvxwhwwwwfwxwvwwwxwwxguwvxwwwxwxwgvxxxwwwwxvvxgwgvwxxwwwvxwggxwwggwgwewxvwxgxwwvwwvvwfwwwwgwwwwwgwvwvwxwgfgvwvvwvxwxxwwwxwxxwxxvgffuevwwvwwhfgwhfwfwxwwwgWfugvvvwwwwxwwxwvgvwfxgwvvwwwxxwxwwwwxxxwwwxwwwwwvwhgxhxwhxxvxvxxxwwwwxxxwgwxwxwwfwwfvfwwgwwvwwgxxxxwwwwxfwvwxwwxgwvxwwxxxwwwxwxxxwxwfvxgxxwwxxvxvhgvggxwwwvwxwwwwxwwwwwwwxwwwwxwxxwhwxxxxwwwwxhhxwxwxhxxxwwwwxwxxvwhwxxxxwwwxxwwvwhxwwxwxwxwwwwxwxxwwwwwwwvwwwwwwxwvvwwvwwxwwwwvwwwfxwwwwwxwvgwxvwwvvwwwwgwxwxxvxwwxwxwxxwxwwwxwwwxxxwwwxgwxwwvwgxwxwwxwwwxvwwxxxxgxwwwwxwwwxxwwwxxwxwvvwwwwwwwwwggwhxxwxxxxgwxwwxwwxwwxxwxxwxwwxhwxwwxxvwwxxxxxxwwxxwwwwwwwwwwxwwwwxwwwwwwwwvwxwwwwwwvwwwwxwwxvwxwwxwwwwxwwwwwxwwwxwxwxwwwwxxxxxwwwwxwxwwxwwwwxvwwxwwxxvxxwxwwwxwxxxwxwwwxxwwxvxxwwwgwxwwggxxwxxwwxxxwwwwwwxwwwxwwxxxwwxwxwxxwxxxxwxxwwxuxxxwwxxgvwwvxxWWwfgfvwVwxwwwwwwwgwwwwwwwvwvwvxwwvvwwgwwwvwwxVVvwwwwgwgwgwvwwgugfwvfwwwwwxwwegwvgvwwgwvwggwxxxgwwwxwwwhwWwvvvvvhxwgwwwwwvwxxgwwxxvxxwwxwxvwwxvwwvwxwgvxwwxwgwwxxxwwwxwxxxwxwxwxxxgwggxxgxwgxVwwvwwwxxvgwvuwhwwwwvvwwxwwwxxwwhggwvwwwwuxwwvwwhxwfgwwvwvvwwwwwxxwwwvvgxgwwwgxgfwwwgwwwwwxxxwwxwgxxxwvuvgxwxxwxxxxxxxwxxwhwvwwwwxwxwwxwxwxxwxwwwxwwwxgwwwwxgwWwvghgvvxwfgwugguwwwWgwgwwwwwggwvxwwwgxxwvwwvgwwwvvwgwxwwugfwwuxvxwwwuwwwwwwwwwwvxwwwvvwwxwwwxwwwggxwxgwwxhwwgxwvxwWgwgxwwxwxxwxxwwxgwXxfxwwhxwxwwxwxxwwxwhxgxxxxwwxhwwxwxwxwxvwwwxxxwvvwxxgwhwxhwVwwxwwwxwwxxwwwxwwxxxxxywvvxxwgwwvwwuwhxvwwwwwwxxwwwwxxwxxwxwgwwwxwwgxhwxxwxxwxxxxxwxwwhwwxwwxhwvxxxxxxxxwwxxwwxwwwxxwwxxxwwwgfvwvvwvgwwwwxvvwwgwwwwhwffwvhvvwwwxxggwwvfwgxwwgffwvvuvwwwgwwuugvwgwwwxwwwvWvwwvwwgwwwwwwguvgxwwwxwxxwwggfwggwwwwwwggwwvxwxwvfgwxwwxwwwwwxxxvgvwwvvwwwwwwwvwvwxxxxxwfwwvwgxwhwgxvhwvxwwwwwgfgvvvxgwxuvwwxxwwwxwWvwvwwgwxxwuwwxxwwxwfvvvvvwwwxwgwwwwvwgxwwwwxxwwvwwwgwwwxvwwxvwwwwwwwvwwwxwxxxvwvwwwxwxwwvwxvwwwgwwwwvwwxgxvwwvvwwwwwgxxwwwwxxhxxwwwwwwxvxxxwxxxxwwxwwwgwwwwwWwwwwwwwwggxvwwxwggwwvgwwxxgwwwwwwxxxxggvwWwgvwwwwxgvuwwwwvwwwxwfvvwwggxwhxhwwwwwwwwwwxwvgvwvwwwwvwxgwwxwwxggwfgvxwxwxxxwwwxwxwxxfwwwxvvxxwwxxwwvhwxxwwwwwwwwwwwxwwwwwwxwxxxwgwwgxwxxwwxwwwwvvwhwwxwxhwwxwxxxwxxwvvvwhwwxxwwwwwxwwxwwxxwhxwxwwwwxxwwxxwxfwwvwxxgwwfxxwwwwwwwgwwxwwwxwgwvwwxwwwvxxxxwwwxxwxwxwwxwwxxxwwgwwwgvuvvwwvwwgwvwugwwxwvwggVvgwgwvvgvwwwxwwwwwwvfggfvvvvgwwfvwgwfwvfwgffuvwwgufwvvxwwwwffgwwggfwgwwwwwwxvwxgfvuwfvwwwvwvwgwxwwgwxvxxwgvxwwwwwwwwwwugwvxwxwvvwwfwfwvwgwvwwwwxxwxxxwwwhwxwwwxxggvxwwWgwwggvvgxgwvwwwwwwuwwhwvtvWwewvfwwwggwwgwwfwwffvvwwfgwxfxwwfwwwvvuwxwwwwhwxwhwwvxwguxwggwwwwxwwvwvvxvtuWwfgwwwwhwxgfxxgxwxxgwwwxgwxxguwwwwwxwxwwwwwwxvxxwwwxgwxxxwxxwxxxvvvvvgvgvxfwhwwvvwwuhwwwwwgfgwgvxxggwvgxwvfgwwwxwwvxwwvvegvfwvxggwwvwwwfewwwwxvwwvfwwwggxwvxwwwwxwwwvwxwggwwgVvwxwwwxfhvwwwxvvvxxxxwwwxwxwwwwwhxwgwwwxxgxfwgwxwwwxxxxwwxxwvxxxxwwxxfwxwxwwwvwvwwvwwgxxxwxvwugwvvwvwfhwgwvvxxvxwgwgwxwxxwwxxwwvfwwvwxvxwwwwggwwgwfxxxwwwxwxgxxwxxwwwwwwvxhxwwwWwxxwwwvgwxwWxwxwxxxxwxwgwwwxxxxxvwhxwxwwwxwwxwgxwwxxxxxhwwxuwwwwwgwwfwwwwwwgfwvwgfwvwgwvwgvfvwwwwwvvewevgggwwwwwgfgfewfffvfvvggffwwwvwfVfvgwwvwgwvwwwvvwwvgwvffwghgwgfxwvwvwwwwxwgVwwvwvwwvwwvwwwgvwxxwwwwwvvfwwwwxwgxwhxxxxvwxwwwvxwwwwwwhwggxxwwgwwwxwwgxwxxwgwwwxxwwvwxgvwgwwwwxwfwwwvfuvgxwxgwwgwwwvwgwwwwwxwgvfwvwxgwwwxvwwgvwwxxwWwvvxxwwwwggvxffgwgwvvgwwvxvxwugxxwxxhwhwwvxfwvwgwwvuvhwxxxgvwwhwwxxgxwxwwxxwxwwhxhxwwwxwwgwvfvxwxxwxxwwgwwwxwwxwwwgwxxxwvxvxwvxxwgvwwwvfwvxvwwfgwwVvfvvwgwxvwxffwggvwwwgwwwgvwwhwXwwwwwfwvfvvwvvvvwgvfggxWggvfwwwvvwvwwwxfwvfwwwwwwwghvwwgwwvxwwwgwwgwwwggwwwhwwwghugwxWxwwxxwwwwxhvhwwwvwwwxwwvwwwwwwhvxwwwxxwxxwhxwwwxxxxxwxxxwwwwwwwwwwwwgwxwwgwxwvxwvhxxxxhwwgwwwxXhgxxxwfwwwwvxgxxwwfwwxwxWgwhgvwwwgvwwwgxxhxwgwwxwxwwxxxwwxxwwwwxxwxhwxxwwwxxxxwwwwwwwhwhxxxgwwxvxxxwxxwwwxxxvgwwwwwwwxxwvxxxxwxxxwwwwwwvvwxgvgvwwwwwwwvwwwwwwwwwwxgggwvvxwxxfvvwfffWffvwxfggwwwwwwwwfVWvwwxgxxvwvwxgwxxxfvwvegwfwwfvvwvwwvvvxxwxxffggwwxwwwwwwwwxwxxwwwwgwwwxxvxxxwvwwwwvfwwvfwwxvwwwwwwgwwwwwwxxxywwwgwvwfvufwwwwvvwgvwwxxwguuwxwxwxwwhhwwggwxywwwxwyxvefxwwwwwwwwwwxwwwxxvwwxgwxxxfuevwwwwwwwwwgvwwxxwxwwwwxwxwxwxfufwfvffgvwwuffvwwgxwvwwwwxvwUeevvvvxfwwwvwevvwvwwgxxvvwvwwwwvwwxwvwxfWvwgwgwwwxwxvgvwwgxwwxwwwwxxxwywxfgvwggwwwxwxxxwwwwfwwwxwxvxxxwxxxwwvfgwwxgwxwxwwwwwwwxwwxxxwwxxxvvvfwwwwwxwvvwxfvxxwvwwwwwxxvgwwxwwxggwgwxwwxwxggwxwxwwwxwhwxxxxxxxwxwxxwgwggwwwxxwhfvxwxwwxxwwwxwxxxxxvwdvvvwwwvvwwwwgvwwwgwwVwwwvwwvwfwvwwwwwwfwxwfvwwvuvvfwwgwVwfggwvwwvuwvvwwhwwgwwwwgxwvuFgxvwwwwxvwwwwwVvggvwwwwggwvwwwxwwvwgwwxvwxxxwgwwwwwwwvwvwwxwgvvggwwxwwwwwwwwwxhwxwwwwxxwxwwgvwwfgWvwgwwgfwwwwwvwwwxxwfgwwwwxgxxwxxvfgwwgwwffvwwwWvwwwvwxwugvxwhvxwwwwwwxuxgxxxvwwgwwFvgvwgwwwwxgwvvwwwwxwwwwwwwwxxxhxxwwxwwxxxxgvwwwwwwwfxwwVwwwwwgvggwxxxwwwwgwwxhwxwxwwwxvuwwvwwwvwwvfwwwwwwgwfuwwwwvwwvwwwwwwxgwvxxuwvwvwfgvvwvvvwwdvwwwwwwWwwwwwwfvwwgvvwxwwwxvwxwhwwxwwwwwuwwwwwvwxwvfwwwxwwwwgwwwwwxxwxwwxwwxxwxxxxwvwhwvwwwwwwvwwwwxxwwwxxxxwxwwxxwwxxwxwvwvwvwfevwxvvvwwvwwwxwwwwwwwxhwwwwxwxxxwxvvwgwxgwgwwwvvwhhwWvgwwwwhhwwwhxhwwxxvvtwwxxgwwwxwvgvwwxxxxwwxwvwwvwwwuwxvwwxxxxxxxwwxwwxxxuwxxvfwwwxfwwwwfvwwxwwxwwwwwwwxgwhwwxhfewwvvwhvgfwwvVvwwwwvwhfxwxxgxxwfgvwwfwwwxwwwvwwwwwwwxxwgwwwgvwxwvwxxxxxwxgvwwwwwwxwwxVfwgxwwvwwwxwwwxxwxxgxxwwxwwwwxvwxwgwgwvwxfwwxgvuwwwwwwxwwxwwxxwxxhvgwwhwVfgvwwwwwhxxwgvwwwxwvwgxxxvgxwxwwxxxxwxvwgwwwfuwwwgwwxwxxwwxhwxxxxwwyxVfgvxfwwvvvxwwwwwxhxvxwxwxwxwfgxxwxwxwwwfuwxgfgwwwwvxwggwWvwvwvhwwxfwgwwwwxxVuvwwwwgwfwufWfwwhuwfvgwwxwwxwxxggwwxwwwvwwvxWvxxwxxxxyxxxxwvwwxwxwuxwxxxxxvwwxwxwgwwwxwgvwwvxgwvwxwggwwwwwwwwxxxxxxxxxxvfgvhuvvxeuwwhvwxxhfgwhvwwxwwxxhxxwxwfvxwgwxwxwxwwxxxwwwwxwwwxxhxxxxwxxxgwwwgxvwwvvwwgwwxwxwwvwwxwwwwwvvwwwwwwwwwgvwwgVvugeuvfwggVeuxvwwwvwwwwwvwfuwwvwwwwwxvvvxwxxwxwvwwwxvxwwwvwwwxwwxwvwxwwxfwxwfgvwvvwwwwwvfwxwxwwwwwvvwxxxxwwxwwwxwvwvvvwwwwwvwvxvgggxwxwgwwwxgvgwwxwxwwwvewugWvuxfewewvwvxxwwuuwwguvxwxwwvwwxxwwxxxwwgwwwfxwwwwvwvwwwwvwwwwwwwwxwwxxxxxxxvfwvvvxwwwvwvwxwvgvwvvxwvxxwxxwwwxxwvvgvwvwfwwxfwwwwvwvwwgwgfuwwgwwxwxwxxvfwwvvwfgwgwwwvfwvfvwwwwgwxfvuvvfwwwwxfxwvxfwwwwwxwwwvwwvxwwvwwwvwwwwwxwwgvwwwwwxxwwxxwwxxxwvxwvwvvxwxwxxxvwhwxxwwwwxxwxwxwxwwwwxwwvwwwwwwwwwwwwwwwwwxvwgwwwwhxxwwvwwwwvvwvvvwwwwwxwwwwwvwwwxwwwwxxwwuwwgwwwxxxvvwwxgvxxvwvwgxwwxvwwxwxxvwxxwwgwxxxwwwwxxvwwxvwxwwxwxwxxwxxxhwxxxgwwvfxgwwwwgwxfwxxwwwwvwwwwvvwvgvfwwwwwwgwvwwxwvvvvwvwvvwxwwvwvwwwwwffvwwvvvxxxwvwwfwwwvvwxwwxwwwwxgwvwwwghhwgvhxxwwxvwwxwwwwwxxwvgwxwxwwxwvxwwxwwxwwwwvgwxwvxvwwxwxxxvggwwvwwwwxwfwxvvxvxxxvxwxwyxwwwwgwvwwxwvxwwwvwxxxxvxwxwwvxwxxwwvwgwxwvvywxwvwwwwxwxvgwwvwwvvwwvwwwwxvwwwxwwxwfvvvwxvvwwwxvfwfwvvvvwwxwwxwgwwwxwvwxwwvgxxwvxwwxwxxvvwwwxvwwwwxxxxxxxxgxwxwwxwxxwwwwwwwxwwxwxwwxwvwwxxxwxvwwxwwxwwxxxvwwwwxgxvxwgufvwxfxwvgwfvwwxwhgfwwwhvvwwxwwwwwgwxwwwwvwwvwwgvwvvuwvvwwfwwwgffwewgvwffwVwvwvwwguwfvwwxwwvwvxxwxvvwwwvgwwwgVvvggwwwvwwwwwwgwwwvxxxwxwwgwxvxwvxwwxvvewggwwwwwwgvfwwgwxwxwxfwwwwxxxwfwwwfvvvwwwgwxWVgxwwwwvwwwwwwgwwwxwwfwwwxxwxwwxxwwwfwwxwwvVfvwggvvwwvvwfvxvvvwfwvwwwguwvwvxxwwwwwxxvWfwvwxgwxwwvwwhhhwfwxgwfwwxxwxwxwgwwxgwwwwvfwgwfwwwxwwgwefwvvwwfwgxwwgwwwwwwggxfvwwwfvwwwwwggwxwvggggvwxxwfwwwgwwvxwwxwwwwevwXwvxxvgvvwfwwgwwxvwwwffwvgfwvwvwwvwwevwgwxgxwwxxvfvwgggwvwwwgwwwvxwvxfxwvwwvxxwwwwvwwxhxxwwwwxxwwwgwwxvvwwwxwvwwxhwxwxxwxxwwwgwghwxwwwwwwwwwwwvwwgVfvxwxhvhwwwwwxwwwwwwwwwwwwxvfwxvwvwxwxwggwgghfvwwxxvvgwwwxwxwhvgwwwwfwxfuwhxxwwwhxxxwwwwxxxwwxhvwwwwwxwwwwvxwxgwwxwwxxwwxwvwgxwxwwwgwxugwwwvwwvwwwvwwwwvwfwwwwvwWwwwfxwxhwwwxxvwwwwxvfgwgftfvvwgvvfguuwxwfuwwxvwwwduwvgvwwwvwwwwfwwvxwxwwwwxwvwwggwxvwwwwgwwwwwvwwwwxwxwwxxwxxxguvvvwwvwwwwwwwwwhxwwwwwwwwwwwwhwwwxvxhwwwvwwwwwwvfwWwwvfvwwfwwXxwwwgwwWwwwwxxgwwwxwhwxxxxwvwgufwuvtgvwfwufwuxwwwtwvgxwgfvtwwhxxxxxwwxxwxxwvfwwwgwwxxwvwvwxwwxgwvwwwxwxhwxxgwwwwxxxvvwuxwvwwwgwvwwwwvwwwwwwhwxvwxwwwwwxwxwwwwwwwwgwwwwWwxwvggwwwgwvuwwvfgwhwwwwwxwwwwhwwxhwgfvvfwwvuwuwwxvvwwvvvwgwxvwfwfwfvwwgwwwxgxhwwwwgwwwgvxwgwwvwwwxxvvxhwxwwxxxxxxwwxvxxxxxvvwxwwvwwwwwxwwgwwgvgwwgxwwwwwxxgwvxwwwwxwxwxwxwwwwwwwvwwgwwggvxwvwwhwxwwXwxwwxxxxwwxwwxxxxvuwvwvxwuxwwwwuwvhxwgxfwwwwwwxwwwwxwxxwxxhwxwwwxxwxwwwhwxhwwwvwxwwwwgwwxwxwxxgxhwwxwxwwwxgwxwwwwxxwwvwwxvwxwxwhwwwwwwxxxxuvvwxxwwvwwwwwvwwgxwwwxwwwwxwxwwwwhwxwxxxxvwwwxvwhgvwwuwgvwwgvgxwvwwwwgwvwxgvwwxhwwxwvwwxwvwwwgwwwxgxxwwxxwxxwwwwxxfwwwfwwwwvwwgwxxxwgvwwxwwxxwwxwwwwvwwfwwxxwgwwwxwwwwwwyVuwwwxwwxwwwxwxgwxwxxxfvwfwvhwvwgxwgwwwxxwwwxxwvwhwwwwwwxxeuvwwxwxxwxxxxxwxgvwwwwwxvwwwwgwwxwxwxvxwxhwwxxwwvvgvwxgVvwwvxwvvvgwwvwxwwwwgwwwwfuwwwgwggwvvvwxwwvwxweuggvhwxxxxvxwwwgwwwxwwfvwhxxwxxwwwxgwvwwwxxwxxxwwwxxwwxxxwwwxwxwwwwxgwwwxwwwxxxwxxwxwwvgwwwhwvvwgxxufxwxwxxwxvvxxwwxxwwwxxxwwwwwxwxxxxxwxxxwwwwxwwxwwwxxxxwxxxuwwwwgwwgwwvuwwvvgwwgwwwfwgwwwvwxwwvwggvwwwwgvgvwwxfvVwwfvwWvffvfgVgvwgwwDuefwwwuffwgwwwwwwvgffwvwwwhwfwwxfwwwgvwvwwwwwfwwgwwwvwvwwxwwwwwwgwwgwxxxwxfwWwwwwfgvfuwxgwvwwxwwwxwwwwwwwwwwwxwwhwwwxxwxxwxxvWwwwgvgvwvvvwwwVwwwxwfwwwwwxxwwwwwwgwwxfgwgxvxwwwxwgwwgvwwwwvwvvwggVwwgvwfgfwwwgwvWwxxwwhxwgwxwwwxwxwgxgwwwwgwxvvwwwwwwwwgwwwwwwwxwwxwwwwwxwxxxxxfwwwwgvwwwwvxwhwwwwwwxxwwwwwxxxhgwwhhxxwxxxxxwwwwwgwwwxwwwfvvvFewggwwfuvwwxwxvwwxwgvvwwfwwwwwwxxvfvuwwfDuufwwwffVvwwwwwwwXfwwwewwwgwgwxwwwwwwwwxxwwwxgwvvwwgwwwxwxgevwxhwxxwwvwvxxxwwwxxxwwwxwxhghvwgwwvxxwwwfgvvwwwfwwwguwxxwxxwwxxwwxxwxwwwwwwfvvfwwwxxfwwxxgwxxvxgxvfgwgxwwxwxxxxxhwgfwwvxwhvxwwwwXfwwxhgfwwwwvwxxwwxxxgxgxwwwxwwxwwwwgwwxxxxxxvwxwxwxwwwwwwxfwhgwwxxwwxwxxwxwwwxvvxxwwwxxxwxwwxwxxxgxhxxxxxxdwwvvwvwwwggxwwwvwxwxwwvvwwwvwwfxvxhwxgfwxuwvfgvwgvvwxvwwxwxwgvwwwwwWwvwwvWxwwwwwwxwwxwxxwxxvwwwggwwwwwwwwwhwwxvwhvxwwxxwxxxxfwwwvwwgvwvwxxwwwwwwxwwvwwwwwgwxvxwwxxvwwvwwwwgvdwwfwwwxwgwvgvxgfwwwwwwhwwxwwxxxwwwfvgwwvwwvxwwwwwwwxwwxgwwggwwxxgwwxwwwxwwwwvdfvxwwvwwxwwgwwhxwxhxxxwwwxxwxwwxgvwvvwwgxwwwwwxxxwwgxxwwwxwwxwwxxvxwxwxxxxxwwVuvwwgVwvxxuvwwuwwxxxggfvvvvggxvwwwxwwwxfdwvvvvdvgfvwvwxgwwwwxwwwvvvvwwwwwgvxxxxhxwxgggggwggwwggxvvxwwwxwwxxwwxwwwxxxxxwwvwwwwxwwwwwwxwxhxwxxxxwxxxxwfwgvffwxvgwwwwwvxwxxwwwwxxxwwwxwwxxwwwvvugwwwuwgwxwwxwwhuvxwxwwxxwwxwxxgwwvwwxhwwwgwxwwxwxwwxxxxwwxxxvwwwvwwwxwwxwxwwxwwxxxxxxxxxxwxxxvwgvxvgwggvwwwxhvwgwwewxvwwwvvwwgwWwwvxwwvwwwvvuwVgvwwgwuxvwwgwwwwvwwhwwxwvwwwvhwghwxxwwwwhxxwwwxxwwvgWgvvvwwwxwwwwxwhvwwwwwwwwwxxwxwwwwxwwxwgwwwwvvgwgvwewwxwwhwwwwwwwxhvwhwxxxwwwgxwxvgfggwgwwgxwhgxwgwxxwxgxxxxxfvfhvwwxwvwwhvxwwwwxwxwwxwxxwvwwxwwwwwwwwwxwxwwwwxwxwwxhwxxwgwwwvvwewgvgwwewwvwwwwwvwwvwwwwxwwxxwxWvwvfwvvwwwwwvwvwuvxwvwwwwxgxwwwwxxxxwwwvvwwwwwwwwxxxxwwwxwxwxxxwxxxvvgwwxwxxwxwwwxxwwxxwwwwwwwgwwwxwxwwxvwxwxxvxxwxyxwwxxvwgvwxvxxvxwwwxxwxvvxwwxxxxwvwhxwwwwxxxxxxwhxwxwwxwwwxwxxxxxxuwwwwwwxvwwwvwwwwxvwwwwvwwwwwwwwwffgwgwgwwgvwwgvwwVffeefUefvwgvfhfgfwWfevvwwwwwfggfxfwxwxxwwwvwwwwxwwfwwwgwgwxwwwwwwwxxxgfffvwwwwwwghfxwwwgvxwwxxxxwwxxxxwwwwgvefwwvxgwxwwgvxxwwwwwvwgwwxwgwvwhwxxffvwfuwwvVgegexwVffexxxwwgwvVgexvxwwxwxwwhxhhwwwuwwwvxvvwgvwxgxwvwwwxxwwwxwwxxxxxwxxwgggfgfwwfuxwwwwxhxvwxwwwxwwxvvhwvwxxxgvwwwgwwwwwfuwfUwwwwvxwwwgwwxwwwxwwxwxxxxxfUgeewgvgwwUfgwgfwwgvvxwwwwwvwvwwvvxwxfwxxxwwvxwwwwwxwxxwwwgwvxwwwwwxxxwwxxwxxxwxwvxvvwwwxwwfgxgwhwxwwxxxwgwgfwgwuxxghgvxxggvxxwxwxxxwwxxxwxxxxffwvgewwwvwwxwgvxggwwvwwxwxwwxwwwxwxwxwxwxwwxwwvwxwwwxxwwxxxxxwwxxxwxwwxxwwwxwxwwxvwxwxxwwwxxxxwxxwxxwxvvuvwwwxxwwxvxwwwxhgwvxwvxggwwwwvwwvvwwuvwffvwxwwwwwwwwwvwvwwvwvxuwvwwwwvwwwwvwxfwxwxxwwwwwxxxwwggwxvxwvxwxwwvwwxwxwwxxxwwwwxwwwxxwwwwxvvxwwwwwwwxxwwgwwwwvwxwvxwwwwvxwwwwvxwwwvwxxwwwwwhgwwwxwwwwgvwwxxxwxwwwxwvwvwvxxvvwwvxvwwwxxvvgwWwgwwxwwwgwxwwxwxhgwwvxwwxwwwwxwxwwhwgwxxxwxwxwwwvxwvxwxwwwxwwxxvwxwwxwxwwxxwvxvxxwxxvwvxuwvwwwwwwwwhvgwwxwxxvvwvwwxwxxxggwwwwwvvwwwxxgwwwWwgwxwvvwwvwxwwwwvwwwwwwwwwwhwxvwvwwwxwwxwwgxvwwxwwgwxwxwwwgxwvwwxwwwxwwwvwxfxwwwwgwxvxxwwvxxxwvvwwxwwwxwwgvwwxxxxwxwwwxwxvxxxwxxxxxwvwxwwxwxwxxwxxxwwwwxxxwxwwwwwxwwwxwxxwxxwwxvxwwvgxwwxwuvwwwxvxgwwvwwwwwvwwwvvvwgwwwwwvvWwwvvwwwvxwwvvwxwwwvwwwvwwvgvwvwwwwwxwweWwwvwwwfgwwvwwwxvxwwwgWwwwwvgwwvwwxhwwwxxwvwwwhwwvwgxwvwwwvwxwwwwwxwwxwwwvvwwvvvwwgxwvvwxwwxgxwggxhwwwwxxwxhxxvwxwwwwwxwxwxvvxxwvwwwwwgwxhwgwwxxwgxwxwwVwwwxwuwwwwwwwwvxxghxxwxwwxwxxxwwwxxxxwxwxwwwxwxwwxwxxwwwwwwxvgwvvvwxxhwwwwwwvwvvwwwwxwwxvwgvwvwvwwwfuwwvwxwwxwvxfwwxwxwxwwwvxvvwxxguwwxwwwwwxwxxwxwxwwgwwxxxwxwwwxxwwwwwxxwxwwxwwxwxvwwwwxwwwwxxxxwwwwwwwvvwwxhwwwxxwwvwxuwwwxxvwwxxxwvwwxwxwwwxxwvwxwvxgxwwxxvgxwvwwuvxwvhwevwxggwwggwvvwwwuwwwgwvwwwgwgvvxggwwwwxvvhwvvwgvgwvwggfxfwvvfvvwggefwvuwwfwwwwwwfvwgvgwwxhgwwgwwvwxwwwggwwuwwwwwwwwwwxgvwxvxwwhwwxxwwxwwwfvwvwwvwwgwgwxxwwwwwvgwxxwwwwwxgxxhfwxwwwfvwvwwvugVwwvwwwvwwwvwuxuwvwfvwwxwwwwwwxwxwvwwvwfwfwwwwvxwwfwgfgxwxggvwvwwxvxwgwvxwxgxgxxxhxxxxwxvwxwwwwvwxxvwxwwwxxxwgvvvwwxvwwwvwxwxwxwxxxvhxwvwxwxxvhggxwvgvwxxxvgxxwxhxwhwxwwwfvxwgwwwwxwvgVvvVvvwwwwwwwgwwvwvwgwwwwwgwvwxxhgxfwwgvwwvfwwwwhwfVvgewgwhgwuwgwwvwgWwxvwxgwwhvxwgwwwwwwwwwwvvwwvwwwgfggwxwhwwwwxwxxgwwwwwxxxwxxwvxwwwxxxvwwgwvxxxxwwxxwxxxgwxgxxwwwwwwvxwgxwwwwxwfgwwwxwwwwwxxgxwgxhxxxxxxxwxwxhwwwvwxghwxwxWxwvvwxxxwwwwgxwxxwxvwxxxwwvwwxxxxwxxwxhvxwxxxwwwxwwvxwwxxxxwxwwwxwxxxgwxxxxwwxxxwwxxwxxxufvvvwwwwwwwfvgvwwgwwxxvvggwgvgwwwvwwvwwvwxwwfvvvvwfwwwwVuwvgvvwvgwwwwvwwvvwvfwwwwwxgwvwffvwwgwvxhwffwwwvvwvfwvwfvwwgwgfvwvwwggvxwxgfxwwwwxwxxxvwwvwvwwwwwwwwwwwwgxwwwwvwwwwwwvwwxwwxvwxwwwwwwwwgwwwwwwwwwfwwvfwwgxvxgffvwvwwvvwxxwwwvwxwwvgwvvvhvwwwwgvwwwgwwvwvxwwxxxfwgvfwvwgwxwwwvwgwxfwgxfwwVugwwwwxxgwwvwwwfwhgvvwxwxwxwxgxwxhwgwwhwwvxgwgvwvwwgwwxwxvwwwxxfxxxwwwxwwfwwgfwvxxvwwwgwwwxvfvvwwfwxwvwwvwvvwwvwwhwwxvxwfwxvvwwgfwwgwvvvwwwwwwhxxxfvgweuvwwwxwwxwxfwwwwwwgwwwwwxvvvvwgvwwwwwwwxwwwwwwwwgwwwvwwwgwhggxhwhfvwxwwvgxwxxgfwwwwwwfxwxvwwvwwwfwwvwwwgwwwwgwfwwxwwxxwwwxwxxwwxwwwxwxwwwfwwwvxxfvwwgwxxxwwggvvwhgxxwxwxwxwxxxvgwwwwwwvwwxwvwwwxgwxwgwwwwwwgwvxhhvxwwxwxwwvuuvxwwxxxwwxhwwwwwwwxxwxvvwgvwxxwxwwvwwvvwwwwxwgwwwwxxwwwvwwxxxwwswwwwvwvvvvwfvgvgvwwvvwggwvwgwvwvvwwwfgvvggvwwgwVfwwvwwwfvwwfvvvvfvvfuvvwwwwgwfffvufugvffvvfevvEvuwwwwgfvvvffwfvvhfwgvggvwwwwwwwgwgwgwwwvfxwwxwwwvugwwwwfvvxwwwfwwxwvwwedwwvvwwwuuwfwfwxvxwgvfvwwwwwwwwxxwxhwgwxxwfwwgffvvwwvfgVwwggwvfuwggwvgxffgvwxxgwgfUwwwwgwwwfwgxgwwwwgvwfvvwvfgggwvvxgwfwwwfgfwvvwwwwWvgwgxvgvwfvhewWxvggwwwtdvvvghxwweSwwwwgwwwxgxwwwuwWxxxwxxxwwgwxwwxwwwxgwwvwxxxwwfwxwfwwwwxwxxxwxxwwwxwxwxxvwhxfvwwwgvwvWuwvugwfvvwwwdfvxwwwwwVewuugwgwwvwwgvuwwwxvxuwggwwxwfuvufgwSuvwfwwgvvwvguvgwwwwewwwdtvwwwhvvWwwwwgwvvwvwwwwwxwxwvvwxwwvwgwwwgwwhwwwxxwxwwWwuwvwwVvewwwwfvfwwgwwxwwwwvvwwwwvwwgvvxwwwwwgwfwvwwwwwxgwxwgufwvuwxwwufwwgwvfvwfwxwwvvwxwwwwxwxwwxwxhvxwxwxxwwwwwwwwxwxwwfwwwwwwvgxgxwuwxwwhvxwwxwwwxgxgwxgxwvvwwwwwxxwfgwgxwwwxxwxxxvwwgwvwwxxxwwgwwwxwwxwwvhwwwwvwwhwgwwwwwhwxxxwxfwwvwwwvwwtvwwhgwvvwwvvgwvvwwgwwwgvwvwwwwfVvvwwwwwxhewwwWuewwwwuuwwWvwuwvwvvwwgwgwfVewwwwwvgwwwwfwWwvvwwwwwvgwwwwvxgwwfvwgwgwwwxwwwwwxwwwxwxwhxvgwwgwvwwwwwwwwwwwvxwwwwwwwwwxwwwwwwwxxXxgxxwwwwvwwwgewwfwuugfgvgxvvxvhwVgwvvwwwvxwwxfxwxwwwwvwwwxwwwgWwguxuwvwgwxgxwwxwwgwwwwwhwxvwhxwwwwXxywxvxwggwufxvwvhwwvfwwwwxvvwwwxwwxwxxxwxxxwxwwwwwwwwwwxwwwvxwxxwwxwwwwgwwxvwxxwgwuxWxghwxxvgvwvwgwvwwwwvwxufWwgvwwwhxfvwgxvgvwwwwwwwgfwwwxfwwvwwwwwwvwgxewGwwfwxwwVwfgwwwvhgvwxwwxvhhwwwvwxvvxwgwwwvxwxfuwxwxgwxxxwhxvwhwxwxhgwwxxfuwwwxwxxxxxwxxwwwxvxvxxxxwxwxgxgwgfwwwwwxgxgwwxWwvwwxXvwhxxwwwwwxhwxxxxwxxvfxxvxxxxxwXwgxxwwwwgwwxhfxxxxxxwxwhhiwxwwxwxwxxxwxxwwxwwwwxwxhxwxwxfxxwxxxwwxwxwxxxwxxwwxwhhhwxxxvwxwxgewuwwfwwuvwvffgwwwwwvwxgwgvvwuwwfvvvvgwwvvwfwvwwwvwvwwwwfvwevwffVwufvvwvwvwwWvwwwggvvvwffffvxuvgwgwwvwfwvvwwwxvvwvvWfegwwwwvwvwvvvgfwgwwxxvgwfwwxvwwwwxwxvfvvvffvvxvwfvwwwwvvhwvwwwwwwwwwwwxxxwwxwxwvxwxxwxwvgvwgffvwvwvvvwUwwwwvvwwxgvvwwgwvvvgwwwwwwvwwxwwuvwwWuuuwwvfvvgwwgvwhhwvgwvvgvgewwwwwwfvvhvghvwgxvxwwxwVfwfwfwWvgwwgwvwwwwWgwvfxgWwwwxxwwwvgvwwhwwwxhxvwgvfvvVfwgvfWwwwwwuwwgwgwwgwxwwgwgwwWwwxxwwwxxxwwxvuwvffggvwvvgvvwvwxwfwwgwwuvwwwfvfxwxuwvwwwgxwwxevvgevfuuvwvggvwvwgvgvvvxwgwwgvwvvwwffwgwxwwwwvvvwwvwxgwxwgwhwwwvgwvwwvvwvwwwwghwwxwwwwuxwwxxwxwwwwvwxxwxvvvwuvfwvwwwwwfxwwwgwgxwxfwwwwwvwwxxwvxwwwvxhwwvfwvgvuvwwwxvfwgxwWgwwwgwgggwwwwwwwwvxwwwwwxuvwwfvfvwwgwgxuvvXWvwwhwxxwwwwwwvfwwxxwwwgwvxvfxXwwuwwvugwwxwxwwvwwuwxwxxwxxvxxwvxxgwwxxwvxwwwwgvxgvwvwwwwxwwwvwhgvwwvwwwwwggwwgwwwhwxxxuwvvwwwvgvgvfwwvwwwwwwwvvwwwvwvwwgwgwvvwvfwwfwgwvwgwetvffutwgwfwvwwwwwvevvxvgggfvtuwwfwwwwvdwvgfwwwxxwvvwwwvvwwvvvwgwwgwvxwwwgxxwhgvxwxwxwuvuvfwfvwwwwfuwwwgwgxwwwwwwxwwwxwwwxwwwwwgvvvgwwWvwfwwwwxvwvgxwwhvwgwxgwxwgvggguuvfwtvxgvuwwxwwwuwgxwwvfwdwvhwwwxwwwtwvgxwwwvwvvwwxwwwwvwwwwwxwxwuwwxghvgwxxxwwwwvefwgwwgwwuwwgwggwwxwwwwwwwwvvwwwwwwwwwgvwwfvwwwxvfwfwwwxwwvggwwwwwguvwwwwwxwwxwvfvufvvfvwwwvtvwgffwvxwwwwvwvwuwwwwwwwvwvwwwwuwwwgwwwgwwwwxggvvxxwhxwxxggwxwwwwwwvwwgwxwxwwxvwwuwwwwxxwvwgwwwwwwwwwxwwwxwwwwxwwxwxxxwxvgvwwhVwvwgwwwxxwwxwwwxgwwgwxwwwxwwwvwuwfwgxxwwwtwfxhvgwwwwvwgwwwxfwxwxwwvwwwwwwxgxxggvvwwwwgwxwwvwwgwvwgwxxxwwxwwxwwwxwgwwvwxwwwwwxwxwxuxwwwwwuwwfwwvwwwxwvvwwwvgwwwxwVufvgwwxwfwwxwwwwfwVugvwxxwvfwwfewwfwvDddfvwfwwwwfvfvxVwwvgwfVfVwwwwvgvgvwwWxxgwwwwwvwvgwwwwwwvxvgwwWugvgvwxwwwwwwwwwwwxxvwxxwwwwggfVfVgwwgvgvwwwWxwwwwwwwwxxwwwwwwwvvxxwwvgwwvvvwgwxfvfvwgwwwvwwfvvwxwwwvgwwgvgvwwxwwgvwwwxwwwwxwwwwwwxwwVefvxVwwgwwwxwgwwwwXwWWugvwwwWwwvwvwvxxhwxxxgwwwvwhfwgvgvxwxxwgvwwwhwwwxwwwwwwwwwwwwxgwxhhfxwxWfvwxwWxwwwfwxwxxwxwwwxwwwwwwwwxxhXvhwwwwwgggwwWuwfvfvgwxVuffgwwxwvwwwffvwwgwvwwwxwwxxxwwfwDddffvfvvwgfvfvxWgwwwwwwwwvwwwwwwwwwwwwwxxwhgwxxgwvwxwwwwgvvwwwwxwwwggwwwxgxxxfwwwwxxxxwwwxwwwwwwwxxgwwwwxvwwwvvwwwwwxxgwgwxxgxxwxwwwwxwwwxgvxxxgwwxxwwxwfvfvgwwwwwfvvwwwwwhwwwfxxxxwwxghwwxwwxwwxxxwxwwwVufvxWgwgwwwwwxwwwXwWwwwxxwvwxwwwwghwxwxwxxwxvwwwwwvxxgxwxwwwxxwwwxgxwwxwxwxxxxwghfwxxxwwwwwwxwwwxwxxwxgwxwwxwwwwwgwxwxgwxuwwwfwwvwwwwwwwxwwwuwwwwwwfwwuvwvvwwwwwwwvvwwwevvwwwwwvwxfggwwwwtvwvfuvfwwwxwwuvwvfwfxwwxwwwwwwwvvwxwwvwwvwwxhxgwwwwgxwwxwxwwwvwwgvwvvguvvwwxvvwwwwxwgxwwwwwwguwwwxxxfwgwxwgwxwwwxwgwwwxwwwewwwxwwxvgvguwwghwWvgvwwwwxwxxwwwvwwwwwwwwwwwvwgwwwwweuvvggwwwwwwwwfvfxgwfxxgxwfwwxwxxwvvwwxghwwxgvuwgxxgxhwvxwwhxwwwwvxwguvvxwwgwwvfwxexwwwhuwwwwfwwXwwxwggwwxwwwxwwxwvwgwwxvwvwgwVfvxwxwhxwgvgvuwwwxwwvfwwwwxxfufuuvgWgxwxwwwgwWxxwxxvfuwuwvxwxuwwwewgwwxwxwgwwwxwwwwvwwwhwxxwwwxfwwuxxxxxxwwwxwxwwwvwwxwxxwwxwxxvxvxwxwgwxxggwwwvwwwwwwhwxwxxxwvvvwxwwxvwvwwxxwwxwwwwxxwwwvWwxvxxxxvwwfwwwwxxtfgwxvgxwxwwwwwwxgwwxxwxxxxxwvwwwxwxwxwxxwwwwgwwxxwwvwhxwwwxwwwwxxxwwxxxggxwwwwwwxhvxgxwwwwuwgvffwwwgwwwvwxvvewfwwwwwvvvxvwwvVvwvvwwwvwvwuwvvwwwvfvwgefvwvfwwvgdvfffwffvwvwvggwfwwvegwwvvwvwvvdffwvwvgwwwwwgxwwvwxwxwvwwwewvwwwwwwwwwwwxhwwwwgwwwwwwvwwvvwwxxwvvwwvwgxvwwwvvwxfwwhhwgwgwgwwxxwxwwwuwwggwwwwdfwwwvfwgvwvvfvvuwvvvwwwvvtvvwwxwvwwwvwvvvwwwwxggwwvxwfxvwwwwwfwvwgvxwwxvxvwgxxgwgwwwgwwxuwewwwwwxxwwwwwxxwwwvxewwxwwwwxvvxwxwhxvgwvwggwwxvxgwxgwhvwvwwxxxxwvwwwwewwwvvwwwvvgfwvwwvwvwvwvfvvvvgwgwwwwwwwxxwvfwvvvvgvwxfwvwWvhewvxwwwvwfwwwxwvvvvwxwffvxwgggwwwwxgvvwwwwvwhwwwwxwwvwxxwxwwhxwwwxvwxwwwxwxxwwxxwwwwwxwxwvvwwxxxwwwxwwwwwwwwwvgvhvwxwwxxwgxxwwwwwhxvxwhxxwhxvwwxgxwxwxgxxvwwxwwwwwhwwxwxgwgvwwxxxxxgxxvgggxwwwwxwwwxwhxwxxxwxxxwwxgwwhwxvxwxxxxxxhgxxwgwwwwwfvvvwwwxgvwfgwggwvwwwwgfwgwgfvwgWgwwxwxgxwwxgUuwvfwvfffwfuvVgvfvgfwxwwWgwwwfwvvwvgwvvwwgVwuwwvWwvgwwwXgwvxwgvwwwvuwggvwwwwwwwwvxfwwwgwvvwwuvxwvgwwwgxgwwwwvwvvuwwwwvvwwvxwvgwgwwwwvuwwwwxwwvxwwwwxxwwwxwwwggwvwwwgvvwwwwevgwwgwvfwhgwgxggwwfwwwwwwwxxfgvwxwwWvwwwhwgXxwxwgwvggwfxwfgwwwuwhwVvewWWwuwWwwvvwWwwgxvvhVgwggwgxfwuXfxWvwwwwfxgudwwwwhwfwgxxgwgvwwedgwxwxgwwhggwxwxvwwxwwxwxgwwxxwvfwwxxwxfgggxwwfwwxvwxwwwxgwwwgxwxwwwxwwhwgWtwvuvwwwFuvwwwvgvwwvgfWvvvwwwwwvuvwfgwWvxwvwgvvfwwdeggfwwwwwdegvwwvGwwxwvvwvvwvwvwwvwxvwxwwwfgwwvwxwwxxwwwwwxxwxvwvwwwWwtwwwxwwwhwwwGwuwwwhwwwwfgwwwxwwxwwwhWwuwxwxvwwwxwxxwwhvxwwxxgwwvwvvgvgwwwffgwxwgwxwxxwvvxxwxwxxwwvwwxwwwxwxgwwwwwxwwxwwvxgwwfhhgwwgwwxwwvxwwwwxwfvwhwwwwggwhwwwgwvvwgwwxwwwxwwhxgxvxwxwxvwxxwxxwxxwxwxwxwvxwxxwwwwxwvwwvwwxgwwwxwvxhwwxwxvwvgwxgwxeffvvgwfvvxvwwvvgwvwwwvwwvwvvvwvufwvwwwgvwvvwfgwvgwwwxwuegvefuvfuwfgvewvvwgwfwgwwwwWvfuvDuefvwgwwevvffvfwwwwvwwhwwvvvwwvwvvwwVvvgfwggvgxwuwgwffwwgwwwwgfxxwwwwvwgVvuwfwwvwfwwgfwwwwgwxwwwgffvfvvwvvvwgxwwwuxwxwgwfgxwxhwvgwvwgvgvvwwfvfvvVfvwfwvgvvvxwfwegvfwwwwfvwwxfuwvwvwgvwxwwwwwgwgffvvgvwxwvvgvwfxuvewwwWggwfwwwwgwfwwggwgvvwfwgxugwxxwwwwwwvwvvwgxxgvwwwwwwfwvxgwfwevgwgvwxgwggffgvwwxwwgxvwwgvwwwwwvxxwxwwgwwwvwxwfgwWwwvwwgwwghxxgwhwwwwwxvgwguwgvxvVdwwgwwwfvwvwfwwgwgwwwwxggVvuvWvwvvwwwUwwgwwwwwwwxwwvfuwUfeefvwvffvvvwgwgfvxwwwwDuufwvvWwfwwgwwwvvfggwvhgVwgugwwvvuwgwwvwwxfgwvwgxwwwxwwwxwgwwwwvwxwwwWxxwwwgxwxxxWgfwvwvvuuwwxwxwhvwxwxwvgxwxwghwwwwwwwgwxwwgvxWfxhxhvgfwwfwgvxxvxUvvwxwwVwwvwxwxwfvwwxwwgwwwxxvxgwgwWggwgwwxwwxfvwwgvvvwxvxvwwvvgwWfwxgwxwwwhwwwwgvvgwfxfwwgwwwgwwxwwgvvwwxwxxxxwxvfvwgwgwwwfwwgxxwwxxwgwWgwwvwwxxvwwwwgwxwwwwwwgxwwwxwwwwwxwwwxwxxwwwwwhwwgWwxwfwWxxvwvufwwwwwvfwvggwwfugwuwwevwwvfwwwvwwvwvwwvwwvwvwwwvwwwwfevfuvwuwvvwvwwggeuvwwwvwfvvvvwvvvwwgfwvwegwwwwwwvvwwvwvwwwwwwgvwwwvvwfwwvwgwwxwwvwwxwvvwxwxxwwwwwvwvvvwwgwwwfwwvvwwwwwwwwxxwhxwwhwwxwvwwxgvwggvxevvwwwUfwggwwvuvwvwgwvwwwvwwwuwvfwgvwfwxwxvvvwwvwvvwwxwhvgwvxugxvwxwwvvvwwgwwgwxwvwwxxuwwxwxwwwwwvvwxwvwwgwgwwgvgwfwxwxxwvfwgwwwwwwwwwwwxwxwwxwwwvwwwxxvwwxwwvwxxghxvwxwxgxVxwwwvvwwfugwvwwwwwwugwuvwwwwwwwfvwgwwwxwwvvvgfwwwwuwugvvwwwwxwwfwfvwwvwwwwvwvwhWwvfxwwvgwvggxwwwwwvwwgxwwwwwwwwgxwxwvvwwgwwwxgxwxvwwwwvvwvvxxxwxwxwwxewwwxxwwwvwwwxwwwwxwwvxvwwvgwwwwwxwwvxwgwxgxwwwgxxgwgwwvwwwwwwwwxgwwvwgxvwwxwgwwwgwvwxxwxwxwwwwxwxxwxgxvwvwwwgvhxxxxwwwxgxxwxgxwxwxwxwwxxwwxgxwxwxwxxwwwxxwwtwwwwgxwwvwwwvwfvgxwxgfwfvvwwwfwvwwwvwwwwwffgfvvwfvwwwvfvvwfgfwffvvwfgvwwgwfUggUgvvggfvUvvffwvvwwg3uuUhfvgvwvvwwwvwwwwvwwwwwffwfvvggvwwxwwxwffwwwwwvwgvwgxxwwwgxwxwgwffvvfvvwwvvgUggUwffgwwxwwgwfwvwwwwwwvxxwwwgwwgwwwwwwwwgwwwxwgwwwvvwvfwgvwwfvvfwwxgwgwwUwwwwwgwwwUvvfxvwwwwwgxwwxgwwxfvvvwwggwwgfxVwffgxwwffvwwxggxvgwggfgxghfwvwvvvwwwvwvvwwwwfvvwwvwgwgggwwwvwwgxwxfwwUwgxwgxxwwwxwfvvwwwgwwwwwgggggxwxwwgwwhwwxwgwwwwxwvwwxxwwwvwfwwwwvwwwwwvggffvfwfvwwwwVewwfvvgvwffvggxwwgwvxwfvfUvvfvwvvwvw3uuUgfvgwvwwvwfvfvgvwwwwwwwwvwwhwxhwwvvfxwvwwwwvfwwwwffvwgxxhvwgxxwfvvvxwgxxxxwwwwwhxfwxgwfwvwwxwwwxvxxwxwgwwvgwwwwwxwwvvwgwxwxxxwvvgwvgvxvwwwUwwwfxUvvfwvgwwwwwgwwwxxxwgwwgwgwxwwxgwwvvfvvwxxgwxwwxghgfghgfwgwxwgwwwxxhfxvvwhxwxxggwwwwwwwwwgwwxwwUwxwgwghwwwwxgxwwwwxxxwwxxggxwxxwxgwwxwwwwgwvwggwwwwgxxwggxwvwfwwwxgwgvfvvwvwvxwwwwwwwvwwwxxwwwxfvwwwwfwwxwwfvwvwfvvfwvwwwgvwxwwwwxvxwwvggwxwwvwxxwxxfwwwgfwwgwvwwwvwwwwxvwwwfwwwxwxxwxxxfwwvwwwvwfuxvwwwwwxxxwwxwxwxwwxxwhxevgwgDUvffvwfVfwwgvgwxwgvwvwwwwwgfgwxwvxwxxwwwwwxwfvvgwwfvggwVvgwwwwwxwwwhhxfwgxwwwhxxxxwwxhxwwxwwfvwvfwwwvxgxwxwvxwvwwvwwwwxwwwwwgwxgwwwxwxxffgvwvwgvfxwxwwwxwwvghxxwwxwwwxwwxxxwfvwvvUfwwwwwvwxwwwwwwgwvfwvwfwwwvwwxxwwvhwxvfvwvwvgwwgwwwwwwvwwuwwwwwwwxwwxgxxwgvxvwgvvvvwvwxvvwwwgvwwwgwvhxxwxxvhywvvwvvwwwwwvwvwwxvwxxxxxxxfDUfVgwgvwwwwwwvwwwfwwvwwwwghwwxwwxvxwwwwxwvxxvxxvvggwfvxfWfwgwwwvgwhwgxwgvxxfwgxgxgwxwgxhgxxwvwxxxvxwwvvwwwvwwvxxwxxwxxvxwwwxwwwwxxwxxwwvvwvwwwgwwwxwxwxwxwxwvwxswwgwwwwwwvvwWvvvvwwwwvfvxgwxwwwvwWvwwwwwgwgxfWvvwwfvwvVfwwvwfvvgvwxwwwwvxgwwwvwwwvxxwwwwgwuhwxggvwwWvwvwwvwwwgxgwwwwxwvwwwgwwwxxxwwvffwwwgwwxwgwwvvxgwvgwwgwwwxxwwxwwefvwwwwwW5duvwwwvfvwwwwfeggwwwwvgvwvvvxwwwwxgvwgwxxuwxwxvfwwvWwwvwvwxfwwfwWgwhghGuvhxxgwwwhwxvxxwxgvgxxgxgwwwWvwwgwxwvwvwguwWwwwvwwhhxwwxxwxwhwvxwwwwgwgwxwwgvgwvwwVvgxwwghxxwwwwxxxvwwwwgxwxvxxwvvvwwWvgfwgwvwwwfvwgwwxwvwxxwwwwwvwxvwwxwggwwwxxwwxwvVvwwwwgvwwwvwwwvvwhwvwfvxxwwwgwwwxvvhxwxwvxwxfvvwfwwfxwwwhvwwwwxgwhwxgxwwwxwxwxwwwwvvwwwvwuwwxwxwwwwwxwxwwwwxwxV5duwwwgwghwwxxwewfwwwwvxwgwxwwwxwwwxxwwwwgxwgwxwxxvwgvwgwgwxwwgFevxxxggwxwwxgwwgwxwwxhxxvwwwhwvwwwxwwvxxxwuwxwxxxgwxxxxxxwwwwwwxwxwwxvwvwwxwwwxwgvwxwwwwwxwwxfwwvWwgwwwwxggvwwwxwgwwwgwgwwwgwxwwxxwxxhwwwxhxwgwWwwxwwwvwggwxxgwxxxxwwxwxwxwxgwwxwwwgwxxxwxxfvvxgwwwwgwwwggxwwwwxxwwwxwwwwwwgwwwwvxwwwwwwwwxxxxwwwwxxxhwwxxwxghwwwwwggghgwwvfWfwwvvvgggvwvWwwgwWwWwwwggfvvwxwwwxggwgwwwxxxxxwwfgwxwxwwwgfwwwwgvWgxxxxwgwvxxhwvwwxwxwwxxhwxhgwwggxwwgVwwvfwwvwxwwwgWxWhxwwwwwwwwwxxwxxxxwxxxxwgvgwwwwwwgwvwwwwgxwxxwgwwwhwwwxwhgwwvxwxwxwwvgwwxgwfvggwwwwwwwwwwwwwwxxwhwxwwwxxwwwxwxxxwxvxwggwgwwwggwwwwwwxxwhwwhwxxwxxgwxxxxwxxxwwwwxgwvfwxwwxxxwxwwxgxwwxwwxxxxxwwxxxxwxxfxwxwxxwwxwwwwwwwxxxvvwxxwwxwxxwhvwxxxwxvWgvwgfgwvvwwwwwWwgvVwgwwwxgxwwwwwwxxwwwxxxxwwhhgxxxwwwwwgxhhwhgwwwvwWwwhxgxwwwgxwxxxxxwxxwwxxxwwwxwxxvvwwxhwxwxgwxwwgvwwwxxxxwxxvxgxxwxxxxxwxwxwgwxxhwwwwxxxwxxxxxwfxgxxxwvwwfwwvvxwfwwgwwwgwgfwwwfvgwgwvwgugwwwwwxwwxguwwxfuwwwwgwgfwwwwwwwwWwufwfvwhwxwwxgwvgwhxwwfgvwwgwfwwwvfwwwwwwwwwxwwwxvxwxfvwwwxxxxxvfwwvvwwwwwvwvwxwwwwwwugwvwvwwwxwuwwxxwxxwfuvwvWvwvfwwgvgDUvxvwwwvwwwwwfWvvwwwwwvwxxVfwfvwxwgwgwxvUvwgwwgwgwwwxwwwwfwxxwfxgwwugggwfwXwgwwxwwVvgWxwwwwxfwffvvgwwwwwwwvwevgwwwwxvxvwvwgwwxwuxwgwxwxwwwxfgwwwxgwwwwxwwwfwWgwxwwxwxwwfwwvwwwgwwwwwxxwwwxwwgefgvfwvfwwwwfvwwwwwxvvwwwXwwwwvwwwxwhwfhxxwgfvgvwwxwvxwwgwgwfxwwvxwwwwwugwwxxwwwwhwxxxwxVvwgwgwxwwuwvxgxwwWgxvwwwwwvwxxxwwxvvwvwxwwgwwwvxwgwwwwvxwwxwxwwxxxwxfxxeDUvwwvwwwxgfwfxfwgwxwggfvgwwwvwxvxxxgfwwwwxfwxxfggfwggWxwvgwwwgwgxwwwwwwwvwwWVwwwwwxwwXxxgggwwwxwwgwgwwwxwwwxwfvwgwwfxwvwxwxggwxgxwwxxwwwxxghxggxxfwwwwwwxwxwxVwvxxvgwwgvwgwvwwfffxgxwffgwwwvWwvvvwwwwwwwwvhvvwwwvvwwwggffwwvwwggvwvxvfgwwwgwwvvwwxvwxgwvhwgwwgwxvvxwgwxwwvwwgxwvwxwxxvwwvwwwvwxwwxwxwwxwxxxVvxwwvgwwwgfvwwgwwwwwwwwwwwwxwxvwvwwwwwwwxwwwffwgwgwvWvwwwwvWggguwgwfwfwfgggfvvwfwwwwwwwwfVvgvwwffgwwwwxxfwwgvwxwvgxgxwfewwWwwgwUxggfwvwwgxwxwwwwwwwgwwhhWxvggxwwggwwwwwwgxffwWgwwwvwwwwwwwwxxvwwxwxwwwwwvhwfgxvvwxxwwwfWwfxgvxxwxvwxxxwxwwwwxfvfwwwwfuxugwwwwwwvwwxwfgffwgvwwwvwwwfgwvwwxwwwvwxwwxvwwwxwxwugwgvwwvvwwvwwvwvvxfvgvxwwwvxwvxvvwxuuwwwwvwvxwxwwvwwwggwxvvvgvwwwwgwwwwfwgwxwxfwhgxwwxxwwgvfvgvwvwgvwvuxwxgwwuuwxwxwwwwxggfwwgwwvWvwvfwwwgfxwvxgfwfwevWwgwgvwgfvwxgwwwxwWwwwvwwwhvwggwfgvgvvwgghwhwvwwgwfgvfwhWfgvwwxwvgwxwwgwWwwxwwwgfwxgfhwWwxwwwwwhxgxwxvxwwvhwwwxgwwwxxxvgwewWvwxgwxwwwgxxwwwwxwfwxvggwwwxfxwUwgwfwwyuwwwfgevgwvwVvwwgwwwgwgEewfwwwwxxfgwfvwvgvggwffwxwxwwwwgvxvgwwwvwwwgvwgwwgUwvwwwwxVuffgwfwvegwgfvfvwwwwwvwwwvwgfwwUdwffwwwxwwvewwwwxvwvfwvxvwvxwwgxwggvwfwwgwwwvwvewwvwgwxwvhfwwwwwwhwwwxxwgxxvwgwwwvwwvvfvg5dwgvwwwgvxwggWgfvwwWfvwgwgwfwwgvxxwggfwwwxewwwwwwwwgvwwgwwfVgwwxwgwgwwwXgfwgwxvwwvfgwwhwwgwwggxwwwxXfwvwvxwvwvfvwvvvvfvwwgwfwwhhgwxwvxwgwwxwwxxxwwgxxwvxxvxwxvwwvwwwwwwwxvwwxgxwhewvfegevwwxxwwwwwgxgxxwhggxwxwwwfwxvvwxwfwvwgwfegGefggwvTSufwvxwwwVvwvwwvxxwfwvwxwxwgwwwwwvgwvwwwwfuwxwwfUvvwxgwvwvgwwwxwxgwwhwwwxxwwwwvxwwwffuvwvwxWfwwwwwXvgwwwvxwvwwwxxxhxxxhxxxwexvwvxxwvwwxxgwvwwwvvwxxwwwwvwvwwxwgwXvxvwegVvgwgwwEfuwwwxffuvxWvgwwxWwwwwgwwxwwwgxxhwwgwvxwxxxwwgWgwwwwwwwwwgwvxgvwhwwwgwfgwwgxwxxxhvwxwwwwxxgwhwwwgwxwfgvvgwgvwwwxvgwxhwwwwwvwvxhxwwwxwwwwxxxwvwwwwwwvwxwwwxvxgxwxwwwwwwvfvwhhxvxhufxvxwxevxtVeVvvwfvvxVwwwWgfwvwwggggwwwxUvuxwgfwgwxwwwxewwfwwwwwxxfvvwufevgwgwgwxugfgwxwwwwgwgvggfwvfwgfwwwwwwwwwwgwwxxwwVwvwvffvwwewvwefgfvwwwxvwvwwvwwxwxwvxvwvvgwvwwxwvwvwfuuwvwuwgwfwVvuwwggwxgvxhxhgvwwgfwwvxxwwwhwwxwwwwxwwwfffweWvgUWfwvvfwvfvgwvwwwvvwwgwhfWfvgwwwfwwwWvgwevhwhgwWvgxgxwuWfgevfwwvfvwgwwfugwwwwggVgvwwfvwgwfWXwwhhVwwwwwgwfxhhWxxwxffwweuvwfwvwwwwwvdwgwwwxwhwxwwgwgwfxxwvwfxwxgwvwvxfxxwxwwwwxfvvwvwvgwxvwwwwvvgwgwwwgwfwfxvxwwxwwwfgvxgxwwxfwvwwvwxvvvwWvWwffvvWgvvgfWvwwwWwwgwvwffvwfwfwvwwgwvwgvvwwwwvwwwwwfgFWvwFwffvwvwgwwxggwxgwvwWwegwwwwvwwwxxwwvxvhgwhxxwwwwwXvwgvwwvwwvwvwgvwwwwwggxvhgwwwwwgwgvwwxwvvhwwxwfxgwwwwgwwxvxwwwgwwxwgwxwwgwwwwwwwwwwgwwwwwxgwgwwxwwwwwwgxwvvwxUgFvufwwFwfgxwfewwggggvwwwggwwVfegwgxvwwwwwgwhwxwwwgvhwwwvvvwwgwgwgwgwvwgwwwwggxwggxWxwhwgwwwghwgwwwfwwxxhwwwwgwvwwhvxgwwvwwwwXwwggwgwgvWwfxvwwggwxwwxwwwvgwwgwwxwwwwwwwwwxwwwwxwxwvwwwwgvwxwwwwgugwwwwxwvvwwwvwvgWwwwwggfwvgwwxwvwvgwwwwwxwwwwggxwvwwxxgvgwgwvwgvfwwvwwvvgvwwwefuwwwvwvwwwwwwwwgwvuwgxwwwwwwgwwdfwwvvwWvwwwwwwvxwwwwvwwhxxxwwfwwwvwwgvuvwwuvwwwxwwwwwvwgxxxwwwwxwwwvvwwwfwxwvwwvwwgwfvggfggedfWgggwxgwwxhwwwvwxwgvwwwwwwgwwgwxhxwwggxwgvwwwgxwfwwhwfvfwwxxxwwwgwxhvwWxxwxvxxgwgwwxwxxwwvwvvudfWhwvgwxwwxvwwwwwxwxvxwgwxxwvwwwwxxxwvwwxwwwgwwggwvwvwxwwxxwxxxxhwxxxgvwvvwwwvwwwdfwwgWwvuwgwxwwwwwvwwwgwwwwwxwwxvwxwxvvvwgvwuvwwwwwvwwwvwvwuwwwvwwxwwxgxwwwwxwxwwwvwwgwwwwwvwwwvwvxWwwwwgxwwvwwxxxwxxwwxwxwwwxuwwwxwxwwwwwuwgwwvwgvwwxxwwxhxxffwggwvvwgwxwxVvgfgwwgvgggwxxxwfwwwxwwxhxxwwwgwxhwwxwxxvwgwwvwwwgwgxxwfgxxxvvwwxxwvwxwxwxxhwvwwxwxwgwhxwxwhwgwxwxwgxwxvwwwwwwgwwwxwxwwwxxhxwwwxxwxxxwgxwwwwvwwwwvwwxwvwwwxxwwwwxxwvvgvxwxgvwxvvwgggwwwxxggwwwwhgwxwhwwwvxwxgWgvwwwXwwxwxgvwxvwVvvgvwwwxfggvgwhwgwxwwwwWgwvwvxwwvwwwxwxxvxwvxwwwxwfwwwxxgwwwxwfxwwgwxxxwwhwwwxwxxxfwwvwxwwvxwwwfvwwxWwwvwxwwwwvwwwwwwwhwhwwwxhwwgwwgvvgwwgvfwgvxffWvhwxggwwwwwwhvgfxwgxgfgwwxfgggxvhhgwxxwwggfggwhwwwghggwgxwwwgwgxgxwwwgWxxhwwgxwgfgwwgxwgxwxwwvwvffvwxvwwxffgxgvhvwwwvwxvxgwgwwgxwwwwwwwxguvwgwwxwxwwfgWwfxxwwfwgvvwxxxxwwxwwwwwwxwhwwvxgwfwwgwwwwgwvwxfffwwvxxfvwwxxwxwvwwwwwwvwgwwwxwwxvwwgwwxgwxwwwggwwwhwwwwvwxwwwvwwxxwwwxvxwwxxwxwwfwwvwxwwgwwwwwxgvwgxhwxhwwvwxxxxxwwxhxwxwwwwfxvwxgwwxwwwwwgvwgwvwwwwvxwxwwxxvwxxwgxgwxgvggwwxfwvwxxfffvwwwwwgwwwwhggwwxgwwgxgwxxwwwwxwwwwvwvwwxxxxgxgxwwwwgfwxhhhwwwwvvwwhwwxwgvxhwwwgxxxwxxwxwvvwxwxwwhwxhvxwhxwxxwvwwxxwvxvvwwgwxwwgwwxwwwwxxwwwwgwgwwwwfwxwwwwxwwwhxxgwxxtfwguvwgvwwwwwxwgxxgvwwxgvwvgvgwxwxfvwwxvvvgvvwfggwwvgvwwwxwvxxwwgvwvwwvwwvxwwvgxxxxWfwvwwwwwwwgvwvwxwvgxwwwwxvvxvxxxwxxvgwwgfwwwgwxwwvxxxwwwxwvxvwwxxvwxwwwwVfwwwVgwgWugwhwggwwwwguwhwfEdvffvgwwvxgvxxgwwxwxxwffgwvgfgwvwwhgvhwfxxwxwxxxwwvvwwVwvwxwgwwwwxxwxxxwwfVuvvvggwwxwwgwwfvvxwhwxwfxwwwwwwwxxwxxwxxwgvvwwgevwwwwwwwwwwhxgxgwgvwwhwwwwxxxwwwwwxwxfuwwvgvvggwwwwgvwwxgxxwfvvvwvxxwxwwwxwwxhwxvgvwvwgxvxwvxxxwwwwwxwwwwwwwwxwxxxxwfewwgwwwwxVfvwxxxxxvwwwxxvhwhwxxfwvvwxwwvwxxwwhgxxwxxwxwhwfEdvvvwgwgwwwwgwwwwhwxxwgwgwwwxwxwwwwhwwxxxxvfvggVewwwgvxxwwwxxxwgwxxhwxwwwwvwxwxwwxfgwvwwwxwwwvxxhwwxwxwxwwxxxxhwxwxvwvvwwwwxwwwxuxwxwgxvwxwugvvvvvwvUUwwwwwwwwwwwwxgwwvvgvxwvvwwwwxfvwxvfwxwwwvwvwfwwwwwfvwWufwwwwvvvwwwwwwwwvvvwwwgwwxxvxxxvwvvwwfvwvwwvfwvwwgwwwwvxwxwgvweevvwwxwwwwwwwxwwwwgwwwwvxvwxgwwwwxgvvxwwwwwxwwxwxwxwxwxwwwxwwfvww5cwgvwwwwwwgvwfwgwwwvwwwgwwwwxgwXWgwwhwwvhxxwwwwwwxwfwwvgggxwwwwwgwvvwwwwgwgwgxwvwwwwwxwwwgwxwxwwwwhhwhgxhwvgwfvwwwxwgwxgwwwwwwwwxwgwwwwwfgxwwwwwwvwwgxxvwwwfwwwxwwwvwwwxghxwhwxwwwxwwwwvwvwwxwwxwwwxxgvvxvwgwgVUwTdffwgwwwwwgwwgvwwwvfvvgwwwwgxwwwhwxwwwwwvvvvfvvvwwwwwwwhgvwxwgvwwwwwxgwwgxwxvvwwwwwhxwwuuvwggwvwvxuuwvwwhwwxwwvvwfvwghwgwwwgxgwxxwxxxuuwvwwwwwwwwxxfvvwwwwwxwxxxxwwwxwwxwgxvfwfvwUuvwffvvvvwWgwwwvgwwwwhwwgwwxwhwgwwwxwwwxwgxwvwvwxxwwgvwvwgwwvwggggvwxxhgfwwxxxwxwxwwgwvhwwgwwxgxxwhhwgwxfwggvwvwwwwwxwwwwwvvwwwxwxwwxwwxxwxxxwwxwxwwvvhwwxxwxwvwxXuxxvwxvxxwxffvwwwfxwxvwwxgwwgwgxwvwwvxvwwwwxfvwwwwgwwwwxwxwghwgwghvxwvwxxwxwwwvwwwffvxwwwwwhheghwwwwxwwwwwwwxvwwxwwxxwwxvwwwggggwgwxvvvwwwwwxevwwwwwwwxwxwwxwvwfvvwvwxwvwuughwhgwwwxwxwwxxxxggwgfwwvwvwdtVWggwfgwvgfwwwwvxggveffgwwwwwwxxxxxxxwwxgwwwvwfwwwvvwwwfvwwxhxwWwgxwxwwwwwxgxwxgxgxyxwwxwwwxxwvwwdtVWwvxxwwwxwwwxwwwxwwvxwwxxxxxwwwxvvwwgwwwvwxxwxwxxwxxxxgxxwxxxwxxxxwhwwwxwgfwevvvwwwfgfgvhwwwwwwxgwgwwxxxxwwvwwwwwxgwxwvwwxwhwwxxwwxxwwxwxxxwxwwvxwvwwwggwwxxwxxwvwwxxggwwhxwxxxvwwwxwwwwwgxwwxxxwvwwxxxwwxwfgffefggwwwwwwggxwwwwwwwwxvwxwwwxwxxxwwxxxxwhgxxfwwggvxwwxwwgxwwwhxwxxfwxwhwxxxxwxxxxxhwwwvwgwwwwxxwxwxxhwwxvxhhxxwxxxwxwwwwxxxvwwxwwxxxgwwwggwvwvwwvwxwwxwvwxwwwgwwwwgwvxgvwxfwgwgwwwwxwwwwwwwwwwvuwhwwvwxwxwwwwVvvwwwhwwxwwwwxwwwgvvwwwwdfwwwwwxwwgwwvwwwvxxgxwxxxxxxwvwvvwvuwhwxvwwxxwxWvwwwxwxwvwxxxxgfxgvfwwvwgwgwxfwwwwwxwvxwvwfwvedfWgwwvxxwwfwwgxwwxxwwwxwgxwfxgwwxvwxwwxwgxxwxxwgwwfwfwWwwwwfwxxxwxwwwwwvwggwxwxwuwxgxwwwxvxetfWwwxxhwxwgxwxhxwwwvwwwwwwwxwwxvxxgwwwwwwxwwwwwwwxxwvxxwxwhwvwvdfvwgwwwwvwwgfwgwxwxwgwvvwwwwwvwxwxwwxgwwvwvwxwwwvwvvwhwvvwxwwxxxvvwxhwxwhwwxxwwvgwvxvhwhwxwwgwxxxwxhwwxhxvwxwxxwxwwwwwxwwwwxwwxxxwxwwhwufwwfwvwggfxwwwwhwwwxxxwhgvfwgvwwhvxwwxxwxwwwwxgvwxwvwwgwxxhwwwwwxwgwvgwxwwxWxhwhxxxxwhxxwwwwwxgxxxwwwwhwxxwwwwwwxwxxwxxwxwwxwwwwwxwxxxwxxwgwwgxwxwwuvguwgvxgguvfwfwwwfvwwwwwwvwfvwwvwxgwgwgfwhwvwwwwwwwvwwvfwwwwwwwwwwwwwgggwwvvwwvvwvwvxwwwgwwwxvwwwwwvwwvwwvwggwvwxwfwwgvwwxwwffgwwwxxVvwgwxwwwwwwwwwwwvgwwwwwvwwwwwvxvwvwxvggwxxvvwwwwxwgvwgvwgvfwwxVvwvevvvfwvwfWgfwgVwfvwwxfhvfwwhewXwfgxWhfvwxwWxwwfxvgxfwvwwwXwgvwxfwgwwgwwwxghwgxwwwxwxwxgxxfgwgfvwfhvvwwxewhwgvvwwvwxxvwhgwvwwwwxwxxvxwwxxwxwxwxwxwwxvwfwwxwwxwxxwwwwxvwgxwwwffuwvvvwxwfvffvwvwxwwfvvwwwvwggwwwwxhxgwxwvxwvwgwvwwwvwgwwvwwwvwwxvvgwxwwwwwxwgwwxxxwxvwwwwwgwwxgvwxwwgwwwwwvxxwvxgwwwwwwwwxwwvwwxwwwwwxwvwvvvvwwwwwwwvwwwwvgwvfwwwgxwhffwwwwwWwwggwxwgWwxwwhgwgxhxgxxWwgwwwwxwwxwvwxuxwvxwwvxhxuwvwxwwhwvgvwxwwxwwwwwwvxxhwwhwhwxwwwhxgwwwWhvwwxwxwghxvhggwwxwwwwxxwwwwhwwvwvwxwxwxwgxyvgfvwgvwwwgVvwwwffhvwxwwxwgvwgvwwwwxvxufwwffwxwxwfvwgwvxvxwwwfvfwghwwwgwwvgwwwxwvwxwffwwwwwwwwwwwgvwwvxwwwwwwxwvvgwxwwxwvvxwwvwxwwxwwwgxxwxwxwxxxxwgwwxvvwwwwxxwhwwwgwvwxvxvfwxgxwwgwxgwvwVvwwwfvfwwxwvvwwggwxwwxwxwwwwwgvgwgffvvgvwxxwwwwWfwgwwwxxwxwwffhwghvvgwwwxxwwxwxwwwfwxgxvffvwgwwvgwxwhfwwwfhwggxwwgwwxvwxwwwxwwhxwwwfwwwxvxwwwwhwwwgvvwwxwxxxwxwwxwgwwwxwwwwwwwgxgxvxvxwwxxgwwvvxfvwfwgwwvwwwwxxvgvwgvgwwvvxgwvgwgffvwwwwhxgwwwvwwwwvwwwxxwwwvgwwwxwwvxvwwwwxwwvvwxffvvgwwwvvwwwvwwxwwvwwwgwxwfwwxwwxvxgvwxvgwxwwgxfvvwwwwxwxxwxwvwhgxhwwwgxwvvxvwxwwwxwvfwxwwhfvvwfwwxxwwxwxxfgwxxgwxwvgwxufwwffwwwwgxgxwwwwwwfwwxgwwvwwwvwwwvwhgwxxvgxWvwwxwwwwwffwxwwwxxwxwwWfwghwggwxwwvgwwgwxgxhwgwxwWvwwwwxxgwwxwwwxwxgwxgwwwxxwwgxxwwxwxwwwwvgxwwxxwxxwwwwwxxxwvwxwxwwwxwxxvwvxfwgxwvwxwwwgwwxxefwVvvvfuwfgvVvwvhwwgvwwwwwfvwvewwfvxfwvwwwwxwvwwwwwevwgwfwwwwwwgwugwwwwwwwwfvwgvvvwvvvwwxwxwgwwxwwwwxxxgwwfuwvugegwvwwwwwwwfwxwxwwvxfwwfgwwwgwxwwwwwhwgxwwwxwgvvvuwfwwvwwxfgwwxwwwffwwgvwwwwxwxxwxwwwwwwgwfevvgwfvwfVvwffvvwgwwvvwwwvvvwxwvVvwfgwwfvwwfwvwgwwxwwwgvwvwvgwfwxfvwwwwwwvwgwvwvgvxwwwwxhhWwwxwhgwfxxwwwwWxwwhwfwwwxwxvvwwvfgggwwwwwwwwwwwwwwwxfwwwwvwgxwvxwwwwvxwxwwwwxwwwgwwxxwwvwwwwgwewgwwUfxwwxwwwuxwwwfwwwwxwwfvwfevfgvgvvggwfwwvWwwwwwhggwwwwffvxhwwwxgwhxwwwxvvvwvgwwffwwgwwwwwwwvvvvwwwwwwwwwwhxvfvvwxwvwweffwvwwfwwwhuxwwggxwgwwwxhvwwwxxwxwwxwvwwwwwwwxwwufwwuwwfwwwwxwwgwvfvvwxwUwwwwwwgwwwwwwxxwwwwfVffwwfWfwfwwgwwwwvggwwwwgwwgwwwwgwwhwwwgwxwwwwgwwgxvwxwvvwvwvgwwxwgwvxwwwxxggwwxxhxgwwgggvhxvwgwwwxwxxxwwwwwgvwwwwvxwxwwvgwgvgxwxvwfxxwwwwwwwxwxwxwxwwxwxxwwwwwgvwwfwwvwwhwvwwfwwwxgwwwwxwwxxwvwtwvwwwxvwvvwwwvvwwwfgwvgvwwvvvwgwwwgwuwvgvUVwwwwwugwxvwxvwvwGtwwwwwwwhvgwgvwwwwwvwwgvgvwvvfuwxuhvwfwwgwgwwxwugfvuvwgwgwWwgwwvgvwwgwUUwgwwwgwvwfwwwwfVwwwwxwwwwwvvwggwwwwwwwWwwvwvxWwwgxwfwvwvwwfwwwhwvwwuwwwwxwwwwfwgwWwwugvwgwvxg%dwfvwwgvvxwgwfWvwwwvwvwgGwwxfvwvvwwgvgwwwwxwwgwwgwgwvwwghgvfwggvwgwwwvwvxWwwwwwwwfwvhvgfwwwvwfggwwxwwwwegWvwwgwwwxVvwwwggvgWwfwwwvgwwgwxgxwwhwwwwxwguwvvgwwxxvwvgvvgwhWwgwwwwxwwxgwgvgvwwwwwwvwwvvvgvgwwxevwfvvvfwfwfffvwvgwvVwwwwgwFVvgvwwvvwwvwTTvVwgwwvwwgwhwwffwfwwvwvxxfvwvwgwWwwwxuwwfevvvwxgwxwxvwwwgwwxwwxwvwuvxfvwwwftfwwvwgvfvwxxggvvwhvwxgwgwwugwhxwwgwfwwwdvwtwwwvwwguwwwufevwwxgwuwwxwxwvwwgxwwwxwwwwxfwvewwwwwwwhxxUefwwgvwwwwhwwxgWvvxwwwgwwgvwwwgwGxgwvgwwwwxgvgfwvwwwxwwwvwwgggwfwwwwwvxwvxxwxXvwxwxxwghgwxxxxWvgwwgvvWvwwwwxwxegwwwwxvvvvwxwwwwxxwxwwwgwwwhxvxxwwvwxwwwwgxwwwvfggwgtwwgwfwwxwwxwwwxxwxwwwvwwxfwvxtwwwfwwwffffvgwwxwfwxfgwgwwwufvwwWvwWvwfuvxvgggvwwVgvxvhwxfwwhwgvwvgwfvgwegvwgvxfvwxvgvwgVfwxgghwwwwgwxvxwxvxxgwxwwvgvvvwvvwwvWfggwgwwvwvwxwwgfxwwwxwwwwwwxvwwxwxxxwxxvxwxWvvxwvxuwwwgvwvwxvwxvwwwfwwwwxwgvhgvgwwxxwwwwwgwfwvwwfvgwGUgfvvwwGfwgggvffwvgwwwgwwgvvgvVwgwgWVwvgwxwwwwwWxwwvwwwgwwwgwwgwwwgWwfwwwxwxxgvwfwwxgwgwxwgxgWgwgXxxhgxXgVxgwvugwgvwvvvwxwwwwwwwwvgwwwvwwfuwgwwwfhwvwwwwwwxwwgwvxwwwxhwgwxwxwuwvwxxwwwgxwwvxwxxwwwwhhwxwwxxwxwxwvxwxwwxwvfggwfvvwwwfgwwvVUwgggwwwVvggvwudvgvvgvwwxfwwwggwfwfhvfwwgwwxgwwvgfwFuugwhwxwwwuwwWwxvwwvhxgwvwwxgwxwxwfxwwgxgwxwvxvwwgxvgvxwwwwwwfxgxwwwwgwxwghwgxxwhwwvwwvxxwvwwwxwxwxwwwxwwwwxxxwvxwwxgxwwwwxwggwgwfxfvfwwwwxVvwwWgwvwxxxwgwxgfuwvwwwxvHwfwwhwwxhwxwwxgwxhgwwxwwwhgvwwxxxwxgxwxxhwwwgxxgxwxwwgHVwxwxxxxxhwwwwfvwwwwxgwvvxxwhwxxwWxvvxwwwhxwwwxwwhwxgxwxgxgwxwwwxvwgwwwfxxxxwxwwwvxwxxwwwwwwwhxwvwwvvggwwwwgvwxwvwxwvxghfwvxwggwwwxxwwwwwxwxwxgxvfWvwgvwwwwvwgwwwwwxwwwgvwwwxxxwxwwxxwvvwwgwwwwwwwwwvvvwwwwxwvxggwghwxxwwxxwxwvvvhwwxxwgvwxwwwggwwwxwwxwxwxxxxhwwwfwvgvffvwwhuwwwVxgWxwwfwwwwwxwvwwvwvfggwgwwhwWvwwwwgvwxxwwwwgvwggfwwwggwwwwwwwxwwxxwwwvfxwwwwgwxxxxwwxwxwwwwwwwgxwvWggufgwgwgwffwwvwwwwguwwwxgwwwwxwwxxxwxxwxxhxfvvgwgfuwxxwwwwxxwwwwgwwwxwwwwwwxxxvvvxxxgfwwwxwwwwvWVwwxwhwwwwwwwwxxxwwgwvwxwxvxwwxxfxwxhxxvwwwvwvvwvwwwxwxxwwwvxwwxwxxwxwxwwxwwvwwvfvvwxxwwxwwxwxxxgwxwgwxwwwwvhwxwwvvwvwwgxwwwxwwwgxwxxwwwwwwwxwxxwwgvxxxvgfgeefwgwvwgwwwggfwxwxwxwwvuwwwwwugxxxwwwwxxvwwhxwwwwxvWWfwhhwxwxwwxxxwwwxxwhWwwwwwWwxxxhgwwxvvxwwwxgwwwwwwgvxhwwxxwwwwwwwxwxxxwwwwvwgwwwwwxwxxxgwhwwvxgxwwwxwxxwwwvwwgvfwfwwvvvfwwvwwveewvvwwewwwfvvwgxwgwwwxgwfgwwvxfwvwwwweewwgvwewvgwwwxwwwwxxvgxwwvvwvvwvwwwxwwwxvwxwwvfgwvwwwwwvxwxuwwvwgwwwxwwwwwxwwwgwwwwxwxwguwvwwwwgvwwwwwwgwwwgwwgwvwvwxwxxxwxwgvwwwwfwvgwgvgwggwwwxwwUfwwgxwUgvgggwfvwhxggwwwvwwwgwxguwwxfgguwxwxwwhvUfwwwvUvwwxvvfxwwwixwvwwwxwvfwewwwvwhuhwwwvwxwwhwxhfgwgwwxwwgwwwvvwvwggwxvfwwvwgwgwwwwwwxxxwvwwgwvwggwwxwxxwvwwfxvfgwfwwvvfwwwggggvwwwvwvwwvwwggvvvwwxwwxwwwfwwgwfvwwwfwgvwvwwwgvwvuuwwfwwuxwwvwvwgwvvwwxwxgwxggxxwgwxvvwwguevvwwvewvwgwwwwwwwwvwvwwwvwxwwxwvwwwvwvwxvwwvwwwvvwvwhvwxuxvwwxxxwwgwgxwxxxggxvxgwxwwwwuwwwxxwwwwwwxhvwxwxwvwwwwwxwfwgvwvwwvvwxgfwgxvfgwwwwvwxwwxwgufwhfwgugwvfwvwwwwwwvxvwhwwxwgvwfggwwwwwwxwuvwgwvfuxwwgvvwxfgghgwvgwwgwwvxwwxwvxwwxgwwwwwhgvwwgxwwfxwwwwvwxwwwwfxgwxwxgwwwxxwwxwwwwwvwxfwwvwgwwwwgwwwxwwwwwfwxvvxxxwwxxwwwwxgwwwwvugVwfwvwWwuggVfvfwvgggfgvwfwxFwvxfhwwwwwvvwggvwvwwwwvgxwwwgfgvffwvfVvgwvgvggwwwwwwwwvgxxvVfwvgwgwvvwvwwxvwwwwwwvhvVwvwugfwvwgfxfgfgwxvwvwwwvwwfvwwvwxfwwxfvwxwwvfufvvgfvtwvwWefwvwwhggwxvwwwWvuxvgwwwwwgwwwgwfvxxxwwwgwwwgfvvfVuvffegfgvvfFvgvfvgffuwwhwWeffwgfvwfwxwwwggfwggfvwwhwwwvggwwgegffVwvfgGgvvwhwgwgwgxwgGVfggwgwwwxxwgwvvgWWxhXWwwwwxwwuwfwvvfgfewhwgwgvvwwgvwwvwwwwwvvuwwfwxwwwwwvwwhwwwwxvgvwffwwfgguguwwgvwxgwvwvgwvxvwwwwfxgwwwuvfwvxgwwwfvvhfgeffffggvwgVWffggwggvfwvgvfggwfvvgwwwvhwwgggxgwwwwwwwwvfwWwVwfWgwvwvwwwWgVgwgwvwxuwwwfgwuxvgfvwwwwwwvgwhgwwxvwxwwxgwwvvwgvufwwugwggwxvfxwgxwwwVwuxwvwwxwWwxfhxwwxwwwfvvxwvgxvxwvwgwwwwwWgwgwfvwwvxwvwvvxwgxWwwwgxwvxfWVgVwfWffwvwvxWfVgggwfvwwhwwwvfVgwwxvhwwxwwwgwgwgggxwxwwwwgwgwggvVgvxwwfgWwgxhhWvvwwxxvwwwwwuwvxxwxxggvgwxggwwwgwwVuwgwwegwwvwfWwwfxgwwfhwxxwxxvwxvwwwgwgxwwwwvwwvwwguwwxvxxhxvwvwvwvfwwwxwwvgwgwwVvvvwwuwwffwvgwwfvwvgwvwwwwwgwvvvwffwgTUvvxfvgfvwvwwwVuvwxwwwwwwffvwWuwguuvwxvgwwwwwwxwwgfvffvfVvwuwwwwwvggwxvwxwvwgwvwxwfvvwvwewwfgwwwwwvvvxxwvwwxefwwwwxwxdevvwxwxwxwxwvfgvvgxwwwwwwvwvvwgwwwwxwfvuvwwwhfwwvwwvwgwwwgwwwwvwvVfggfvvgvwvvVwvwggVgfvwxfwwf4TwffvwWvwvfwwffvgwVvgugwwhwgwwgwvwxwfwvvgxvvvwwwvxgwWxwxwwgWgfvvvvwgwwhwwwghwwgxgxwhwxghwvvVvwvwwfgwwxxfvvfWvgwwwwwhwfvvvwxwxwwwuvwgwwxwfwxxgwwgvwxwwfxggwWgwwxgxgwvwgwggwwwxwgvggvwxxggfgwwwxwgvwvgwxVvvvgVewwwwvgvwgwwfvvfvvxwgvfwCdvefwwvwwxefgwwwwgxwwfwvefegvxwvwwwxwwwwwwwfvvvwvwhwwvwwwxwwgwvxvfwgwxfvvvfvxxvwwuvwwWvgxwwwuvvwfwwxwwwwwwwxwxxwxwwgewwvwwwxxwvvwwwxxvxvhvwwvwvwfwvxwwwwgwvgwwUvgffvVfvefwwwgwgxffgwwwwgwEuuggwwXwwwhxxwvwwwfggfwwwgwfwfvvgvewxwhgwxxwxgwggwwxwxxwgwwgVhWfhxxwhwwwwxgwggfwgwwxVvWvwgwwfxwwxxvgwxwgxxwwxwvwwhwwwwwxfwwwwxgwgfwxfxwwwwwgvvxgwwwwvxxwwwxvwxwwwwwfwwgefgwwUvUvxwvuwwwwwwwvwwgwvwwgwwvwvvfwwwwwwwwxvgwwuwgwwwxxwwwvwgvvwvwvvvgwgvvwwwXvwwwwwwftvWwwwxwfuggwvwwxwwwwvwwvhUuvvfgwwugfvwwxgwvwwwwwxgwwwwwxwgwffftvWvwwwwguvwwgvwvwxwvwwvwwxxwwwfwwwvwwwwwvwwxwwwwWvwwwvfgfvwweuvgWxggffvvwvwvgwwwxweseFxgwgwvxwxgwwwwwwwgwwwwgwwwgwxFWwwxxfvuwgwvwgxxwxxwwwVvwhxvwwwxgvwgggwvwwvwxxeseFwgxwwwwxwwwvwwxwwwwwwvwwxvwwwxwwwwgwwwxwwgwfxxxwwwwwXwwwwwwwxwgwgwwxxwxvwxwxvxwvvvwwwxgwvwwwwxxgUuwwwwwfwwxxfvwwwwwwwxxwvwwvvgvwwvwwwxvhwvwwwwxwwxxvwwwwwwgvxwxvwwwwwxwwwwwwwwwwwwwwwgvwvgwwgxwwwxxxvwwwxwvwwwxgwvwwvwxxwvwwwxxwwwwxxwwwvxvWwwwwvwwxxuufVwwgxwxwgvwwhwwwwxXwvfwwwwwgwwxvwvwxvggwxxxxwwWwwhwwwwwwxwwwwwxwxxxggwfwgxxwWwwwwvxxwxwxxxxXwwvvxwwwwwhwwwwwxxxvwxwwwwvxwxwxwwwwxwwgxgxvxgvvwwvwxwwwhvwvwwwwwwuwwfewvhwgwfWwvvvugVevwVfgvvgwwwfgwwgwgvxvGfwfvggguwxvwxwwgwWwWfvfgvvvfvgwgVwwwwXhwvgvgwVvVwgwwgfvwgwvgvwwfwgxxwwgwgwwwfxvgvwwwgfwfwvhxwxwwwfwxxwvwwgwwxwhgvwxwwxwwggguwgwwwgggvfgvvfWxxwwwfgvxfxwwxxwwwxwwwwvxwwwvwwggGTvfFfwfwugwWgvwfwWfvvWxggVvWvffvvgWvvwwwwWewWwWwWwxwhwwwwvxwwWgvvhwgvfwvxwgxgxwvWXhExwvvggVwxwwwvggwghXVhwwgwgfuVwwewvxwwVdwWxVwgwvwgxVxvwwhwvgwwvwwwwgfxfvwwwxwhwwwgwwwgxxwxfxgwwhhfwwfxfwxwxgwxwwwwwwxwxgwwxwgwvwwggvvwgfvffvwfUuvuufggvvwgwwewgggvwwwwwwwwgwgwvgwwvwxwggwwfvwvgfwVvuwwwwwWwuxvwggxxgxwwggxgggwhwwvwxwxxgxgwxxwvxgwwxfuwxvwwwwvwxwwwgwwwgvwvxwwxgwxvwxwwwvwwgvxwwxwwwwwvggwxxwxxggxxwhwgwwwxxwwxwwxwwxwwwwwgfffvggfuvwhwgfvfgvGvxwfwwwghwwwwgwxghwvhwwxvwwxwWwgwhwwwXwvvwwwgWwxwxwwggwwfxgHExwgxxguxxxwwwxxgwwxwxxhgwwwwxwhgvwwwvwwwxgxvwwxfwwxwwhXvhwhwwwwwwxwwgwvWvxwwxwgwvxwwuwxxxwgvgwwvwwwxxwwwwwxwfwxwwwugguwwggwgxwgvgwvhwwwvwgwwxwhfvfgvgvxxvgvWvgwggxxfvvxwgfwvgfwvvuwwvfxwwfvvxwwxufgwwwgwvxwwfwvwwwwwwwwwfuewvwwfxxwwvwgwwvxwwwxxfvwwwwwvxVvvxxxxvggwgwwwwwwxwwxvxvgwwwxWeuwwwwgwxxxxvwwwwvwhxxwvgfwvWwfwvgwgwwfvwwgfvgvgffufwxwwguWfvwwgggwwwwxfvwggvwwxwwxwwfgwvwvgfgwwwwhwwwxwgvxxhwwxxhWfgwgwvwwwwvxvxwWwgvwxhxvgwgxvfvwwggfggwxxxwwwvwwwwwwgwwwhgvwwwwwxvxvwvvgwxwvwwwwwxwgvwxgwwxwxwwwggvwvwxwhgxwwWwggwwgwvvwwxxwxwxwwvvxwuwewxgvfgvwgvhwwwvfWvwwwwghwvxfggwwwwxgwwgvxwwwxwxwugfwwwvwwwwwwfwvgwwwwwxwggwwwwwwgxxwwwxxgwwwgwwxxxgvwxwgvwxwVvwwwvwxxxvvxwwwvxwxwxwxxxhhxxgxweuxxwwwwwvwwxvvvgwwxwwexwxxxwwwgwwxvxwxwxhxwxufVvwfvvggwwwxxfwffgvgwwxgwwgWgvvwwwxwwxwwxgxwvvgxwwwwwxxwwgwghwgvwwxxwfwwgwhgggwwwvfggwhwhgxxwwwwwfwxwwxgwxwgvvwxwwgvgwwwwwgwxwxwxwwvwwwwvxwxwwwxwxwwwxwwwvwgwwxxwxwwwwxwuxgvvuwwwxhxxxhwxwwhghwvwxwwtggwvggvuvvfggvvvhvggwwWfgfwgfvvwffwwgfwgwuwuWgwgfvgUvvwugwwwvvhevefvgVgwvwwgwfwwwgwwxwwvgwgwfufwfvguwwgfwwxgwgwwvwxwvvvvufevwvfwwvxvfwxwvwfwxvvggvvwvvwwwwvhwwgfvwwwwgvxwwwhxvwvwvvvwvwwxwfvuxwvggwwwxgwvwvvxvwgwwugvxgwvwwwfvwwgvvwfvxvVevfgfwgvvfvffVgfgffvvggwwfwGUwgvvwgevfwgwWVevgvggfffwWgwxxwwwgvegwwwxwwwWwwvfxxwvwgggxwgVwvgwwvfvhwgwWgVggwgwgwwwgWgxhwvvfwwwwwvfuvgxwwgvvvvggfxwxgwwguwvwvvweWxhwgvgxvwfvwwwxwwwwwwwxwwwwwwxwgxvfvxxwvwwxxxvwhhwwwwvvwwvwvwwxwwgvwwfVvwVvwvvgvfWwvvvgVvvvuggfgwveffvduvgfwvVgvvxvgvfuwwvvWggfwfUvdgVwvxvwgffvwwwvgwwgvwwvvwwwwuwhwwwwwwXWvvwXwwwegwwwxwwuwwwwwxvfgvxuxvwwwwwwwwwwxwgxwvxxwxguwwwwgwwxwvwwwgvwvxxvwwwwwwwvwwwvuwvwwwhhwxwwgwwxwwvwwwvfWgvwVfvgwxvgWvfggwgeevggwxggfvfwwwwvwvGwwwwwggwvvgggwwvwgvwwwwwwgfggwxhgxwwwxwfggxwwwwwwwgwgwWGVwwxvwwwxwwwfwgwwxwvwxgwfhwxwvugvwwwwgwwwwwwghxuwxwgwhwwwwgwwhvwwxwwgwxwgxwxwwwwwwvvwwwxwwxwfwxwggwwwvxgwwwvxxeggwfffwgwwwgVewufwwwVegfggvffwggwwwggVxgwwfvwwWgvwfwfgVvwvxxvwggwVEwfgfWwwwwgfwgwgggwwxgwggVwfwWgwwWwxwxwgvwwvggwhwwwxwwwvwggfwwwvgwwwwwfwwwxgxwwvgvwwwwwwwwwwwgwwxxvxwwwwwwwgwwvfwfwwhfvwxvwvgvwwwwwfwvwwwxhwwvwvxwhgwwwwwwwwggvwwgfwgffgfffgh6EgwfggfvgvwgvHfWUwgwgggwvwwwwWfvfhfgGugwwhxwwwvgwwwwwwwwgwwWhxgfwwhxwvfWGffwvghvGwwwwxwgggufHXVgvwghXwvvgveufgwwwxwwfvwuxfvhwwwwwuvwgxxwwwuxwxwwwxwxhhggwwwgwxfwwxxwwhwxxwwvwwvwWXwwvwgwggwxhhxwxwwwxxwxxwhwwggwvwfwwwfFfgwgwgwwgWggweewWVwxvwwwfewfwgxgwwvwwwffwwWwwfwxwwgwvWgwwGvvwVwwvwxwgwvwfvWgwggvhwwfVvevwxxWxxwxgxwhgvvwwwfwwwwwvwwwwwwwvfvwwwwhvwhxhxwwxwxgvwwwwxggwwwwgxwwgxwgwwgwwwxxwxwwxvwvxwhhwwxxwgxgwwwwwwxgwwwxwwffwvxxxwwwgffwfWfwgwwxvwwxfwWfwwe7vvgwwgwvfvwwxgfxwvxxxwwxxgffggxwwxwwgwwwwvWxwWwxwxxwgvfgh8VxgwxwwhvgwwxggxwwxwxwhhghggvgwwxgwvxgwwxwwxvxvwxxvvwwwwwhwgwwxgwxfwwxwxxxgxwwxgxXwgwxgxxxxxwwwwwggxwhgwwgwwvwvgwxxhgwvwghgvwvwxgvwwwxxwxwxxwxgxxxwwwwwxwwxwxwxxxxwwxxwwwwwwxwxgwvwwwwwwxxwwxwxwwwwxxxxxxxwxgwwwxxwwxxxwwxxxxxgvwwwwwvwxhgwxwgxxxwwwwxvwxwvgxgxgwwwxxvwxhvxwvwxhvxwwwxxwxwxxgwwxwhvxwxwxxgvgwwgwwxxwwwxwxhxxxwwxwxxwwxxvwwgvwwwxxwxxwxwxgxwwxwxxxxxxxvvwwgwwxwwxxxxwwxwxxwxxxxwwxxxxwvwwwxxxwwxxxwxxwxwxxxxxxxwwwxxwxwxxwwxxxwwxwxwwxxwwgvgwgwxwxxxxxxwwxxxwxxxxxhxxxxwwvxwwgvwxxwxxwxxxxxxwxxwxxxwhxxwxwgwgwxxxxwxxxvxhxwwyxxhwhxxxxxwwxgxxxxxxhxwxuggwgvwwwwwgwwwxhvgwwwxgwwwxwxwxxxwvxvwfvwfvvwgffwvwwwwwwwxwgwwgwwwwxwwxwxwxxwxgwwwVwwwfvwgvwfgwwwxvwxwwxwwwxxxwxxxuwwvwwwfvvwvwwgfwvxgwwwwwxwwwwwwwxwxxwxwwwwwxfvgvgfgfwwwxvgwvxxwwxwgwgvwwggwxwwwwwwwwFdwfgwgvvwwgwhggvwwxwgwhgxgwgwvvwwwwxwwwwxxwwxxwwwxhvVvwgwgwwxwhwwwwxwwhwxgwxxxxwwxwwxfwvwvwwxgwgvxwwgwwwwwwggxvvxxxwxxwxwxwwfuwgfvwfWvwfwwvwwwwgwwxxxwxwwfwxwxwxwxxegfuwvvfuuwvgwwgvvwwwwwvgwwhwwfwwwxxwxxwgxwxwwxwwxvwwvfvfwwwwhgfxvwgwxxwwwgxwwwwxxxxxwwvvfwwwvwwxggxuwwvwwwxwhwxwxwwxwxwwwxxwwwxwxwwwgvwvxwwfvgwxfwvxhxwwwwxgwxgwwxxwwxwxwgxxxwxxxxxwgvvvvwwgwwggwWwwvgwwhggWwwxxwwxwwwwxwxwwwwwxxxxxxwwxgfgwwwwwgwwwhwxgwwwwwwwwwxwxxxxxwvgwxxxwxwwwwwwxhwxfvwxgxxxxwxwxwxxwxwghwxwgxwxwxwwwxwwwwwwhwgwxxfggwxxwxxxxfggwwwgwwxwvgwwvxvwwwxwgwwwxxvwwwxwwxwxwwxwxwwvxwwwwvxwwwwhUvvgwwwxwwwxhwxxwwvwwwxwwwxwwxfwvwgwwvvxxwwwwxxxxxxhxwwgxxhxxhgfgfgfgxWgwhxwwwxwgwgxwwxxgxxxxwvwvwwxeffwhuwwwwwxwxhwxggxxxwfggwxvwxxwxxxxxxxxwxxWvwvWwwwxwghxxxwxxwwxxwwwxxUfvxhuwwwwvwvvwwwxwxwgwwwxhwwxwwhvxxyxxwwvwxwhvwwwwwwfwUfvgwwwxwwwxxxxwxyxwvwwwfvvwwxfwwwxhwxxxhwwxxxxwxxxxxgxxxxvgwvwxwxwwwvggwxwxgxxvwwxxxhhxxwwxhwwwwvgwxxxxxxwhxxwwxxhxwxxxWvwwWxwwwwxhwxgghxxwxxwxwxxxwhxxwxxxUfvxxfwxxxgwxwghgwxhxgvwxxgwwwwwwvxxxxxxhxwwfwgxwxwwwxhxxwxxxxxxxxwwwwwxxwwxwwwxxxxxxvxxxwvgxxvwxxvggxxwwwxwwgxwwwxwwwgvwxwvgfwfvvwwwvwggwwwwxxwwwwwwgwwgvwwwwwwwwwxwxwwwwgxwwhwvwgwxvwwxxxghwwgwxxvvwwxxxxggvgvwxwvxwfvwwwhxxxwwwwwwwwwxwxwwxwwxxxwwwwhggwvwxwwwwxfxwxwwwwwxvwgvwwwwwxxhwvwxxwvwxgwfgfwgwwgwwxvwwxwwgxwgvwwvevgwvwfxxxwxwwxgxhxxxxwxxxwfwvvwwghxwvggvwwxvevwwxgxxwvxwxxxxwevvwgwvxwwwwgxxwwxxwxxwvwwvxxxxxxgwxxwwxwwxgwgvwgffgwwwwvwvwwxwgxxwwwwvwwxxxxwxwwfvwfxfwwwwwwvfwvvxxxfvvxgwwxxxxwwxxxxwwxvvxvxxwvwwwwwxwwwgwxwxhxxwwxxwxgwxxwfxgwwwxwwxwwwxwwwxgxwwwwwwwxxwxvfwfvwwwggxxxxxgwxxxwxxwxwwfwwwxwwwxhhwxwxxxxxxgvggwwwvwxxxxwwxwxxxgxxwgxvgwvxwxxvxxxwwwxvwwwgwxhxwwxxvxwxwxxxwxxwwxxwxgwvwxwxxvxxxxxwwxwvwgwxvevwxxwwwvwwxfwxugwvwwvwwwgwggwwwwwwxfvwxwvwfweewgwwwfwwwfwwfwvgwgwgwwvwwwvwwwwwvgwwwWxwwxxwxwhwfuvxwvwwwvwvfwgfwxwfwwwvwwwwvvwxxxwwxxwwhxxxxvwwvfvwwwwwwgvfxvwvwwxwxwxwvwvvvxwwxgwwgXvvwxevwgwgvwVvwwgVfwvgwwgUvwwwwvgwwwwwwgwwxxggxwxwxgvxxwxwwVvgwwvvwUwvwwwvwWgfxegwfvwhxvvfgwwwvgwwwgwgwgwvvwgxwWgwxwxwfgwwgwxgggxwwvVwwwgwgwgxvwxxxwvhxxxxwwxhxvxxxwfwwgvwfvfwgxhwwufwWxwwfwvxvxwwwxxvxgxxwxgwwxxwwxvwwxhevwwgwggwvewvwvwwvwwwxwwvfxwwgwwhwvxwwwxwwfevwgvwwxevxwxvwwvwwwwwgwgwvxxvvfwwwwwwwxggwwWwwwvwgwwfffwwwggwxuxxxvwwwwwwhwvwxwxwwwwfvwwvwvwvwwwvwwwwwwwxfwwxwwwxwwwwwvxwwfgwwwxwgwxgewwwgWwxwgwwgwxxwxwhwhwhxwxwwwxxwuwxwvwgwwwxwxwgwwxxxwwwwxwxvggwhhvxgxwxwwwwwvwvxxvgwwwxxxxxwwwvxgwwxvwxxwxxxxxhwxwxxvhwgwwxxxgxwwwxggwgwwxxxxxwwwwgwxxvwxgwwxwwxwxwwxxwxxwwwwvwwwxxxxwwxwxgwwxwwwwxxwwwwwwffwwwxfvwxxwwwwwvgvwwxxvxwxwxgwwwwwwwgwvwwwwwvvxwwwfwwxxwxvgwwfwwwVuvfwxwwvwwwwwvvwwwwxvwxxxwwwwxvxwgvwwgwvgvgxxgwxxwwvxxwvgvwvxwxvhwwxxxwxxVewwwxfvwwwwwwwxvggxxwgvvwwxxvwxgxwwvhvgxxwgfwgxwgvwwwwwxwvwwwwwxwxwxxxxxxxxfvvwwwvwxwvwgwxwwvhxwvxwvwxwvwxgwwgxwwwwwvwwvwggwwwwwwvwwxxwxwwxwwxwwxxhxwvgwwgvfwwwwxxVefwwwwvwxxwwwwxwvxxwwwwwwwfwwwwwwwwxxgvwwwwwwxwwgwxxxxxwxwxhwxxxxwwwwxvxwwvhwwwwwwgwvwwxwwxwwhvwxvwxwgvwwwwxgwwwxxwwwxwxxxwwxwxwxxfvvwwxxfwwxxvxwgxxxwwfwwxwwvwxwwvwxwwhgxxwwwxwwwwwwxxxwxwxwxxwxxxwxwxxxvxwwwwwwwwywxwxwxwxxxwwywxwwxvvwwwwwgvxwfWwwwgwwxxghwwwwxgwwwwwwggxwxxwwxxffVvgwvwVgwwwwwvwgfvxwhWwxxfvwwvwwwxxwvxwwxwxxwwwxfwvwhwvguwvwwwwwgwwxxwwxwxwwwxwwwwhxxwgfvvfuwvwvvwwvxVfwwwwwvwwxxwvwwwxxwwxxxxwxwwwwxwwwvwwwwgvWwwwvfwvggxxvxwxhwwwwwwxxwwwwhhvwwxxwwxxwxwwvfwvgxvfvwwwwhfvgwwgxgwwwwwwwgwwwwwghxxwxwxxwxxxxwwwwwwwxwfuwvwxwwguwvxwwxxwxxwvwwwxxwwwxvwwwvvvwwwwwwxwwwwgwvhxwvwhxwwxgwxwwxxwwwwxwwwwgwgwwwvwwwVwgwwhgwwgxgwvwwwwwwxwgvwxwxxwfVfewwwWvgxvwwwwwwwwwwwghgvgwwwgxxwwwwxxwwwwwwwwwvwgvwwxvguwwxvwghwwwwhwwxxwwwxwxgwxxVvwfwwwwwwwfvwvgxwwvvgwvwxwgwwwwwwwwxvgvwwwwwgvwwwxxffwwhwwwxwwwwvwwxxwxwwwwwxhxwxxwwfgWwgwwgWxwwwgwgggxxwXwwxxwwwwxxwxwwwxxxxwxwxwxxxxxxxwwxwfwwwwwwxwwwvvxhwwwxwxxxxwxwxxgwwwwwwwwxWwwxwwwvwwwwwxxwwwxwwxwvwwxxwwwxwxwwwwwxwvwxwxxwwwwwwvwvwxwwwxwwwwwwxwvwwwwvwwhhwwvxwxwwwwwxwxvwwwxwwxwwwwgwgvwhwwwhwwxggxwwwvwfvxgghxxwxwwxvwvwvvwgxwgvwxwwvgwwgwwwxxwwxwxxwwwwwwxxwxwxwxwxwgwwxwwWwwvwxwxwgwwxxxxwxwwxxwxxxxwgwwwwwwvwwxwwvgvgxxwwvwwxxwwwwxxxxxxxwwgwxwwxxwwwgwxvxwgwxgfxxxxwxwxxwwhwwwwwxwxfvvwwwwvwwxwwgwwwvwwgwwwvwxxwwwwwwwwwvxhwvgvwwgwwwwwgwxxxvfxxwwfvxwvhwxwxwvwvfwwwwwwwwgvwwwvgwwwxwwvxwxwwxxwwvxwwwxwggvwwxwgwwwwwxgvwwvwgxwxwwwgwwwxxxwxvxwgxwxwwgvxwxxxxwwvwwwxvwwwwgxxxwwwwwwvxwhxwxxwgwxvxwgwhvgxxwxwwxxwxwwhxwxxxwwxxxwhfvvwxwwwxwwwgwwvxwwxwwxwwwxgwxxxwxxxwwwgxwvxwhwhwwwwxxxwwxxwwxgxwwwxwwwwxxxwwwxwwxwxwwxvwxxwxwwwvxwxxxxxwwwxxvwwxxxwwwwwhwwxwxwvvvvhwfxwVvwwvhghhwxwwwxwhwwhxgwwxxwxwvwwgfvxwwvfgwhgvxwwgwwwwvgvxwgfgxWwxwwwxvxxxwwwxgwwwgggwwWwxhwwgwwwwxxwgwvxwwxxxwgvwxwxhxxxwhggxgwwugvwWwgwwxxwwxgwwvhxwwxwxwwhwxxxwxxxxxVvuxghvwhWfwwwxxGvwgwggguwhxwwvWwxwwwWxxghwxxxhxhxhxghwggxwwwwwgwwwwgwWWwxxwwggwvxfgwwwxxgwxggwwhxxwxwxgxxxxhxxgvvwwwxfwwwxxgwxhwhgwwxwxxwvwxxxxwxwxxwxxxxwWwwWwwvwxwwwwwwxxxxxwxwwxwwvxwwxwxwxwwwxxxwghwwwxwgwwwwgwvVvwgvwWwhwgwwuwwwxwxwxgwxwfwwwwwxwwwvxwwfwwvghwwwwwwxuwwfwxwxwwxwvxwxwxxwwxwXwwvgxwuvhwwxxggwgwxxxggxfwvxxwwhxxwxxxvwwxxwxwxwgxwxwwvwxvxwwwvwwwgxwwwwxwwwwwwxwwvxwgxxxwxxwxxgWvgxwxwwwhxxgwwgxwwhxxwhwwvwwxxwwXwgWwxxwxxxxgxxwwwwwxwwwgxwwxvggwwwgxwwggxxwgwwvwwwgwxwxwxwwwwwwuhxwxwwXgWwwwxgxhxgwgxgxxgxwxxxxwxwwxvxxwxxgwwgxwwwwvwwwxwwwxwxwxwxxxwxxwwvxxxxxwxxxxxxwxxwxxxwxwwwwxwxxwwwwxwwwwwwxwwxxwxwxwwwxxxxwgwgwwwwhwwwxwwxwwwwxxxwwxfvwwxwwwwvwvwwwvwxwxxxwxxxwxxxxwwxwgvxgwwwxxwxwxxxgwwwxxwxwwywwwvwvwxxxxhwwwwwxxxwxvwxxxwxgwxwwwwxxwhxxwwwwxxwgwwwxxwxwxxfvvwwwwwxxwxxwwxwwxwvwwwwwxxxxxwgwgwwwwhwwxxxxwwxwwwwwfvvxxxwwwwvvwwwwvxwxxxwxxxwwxgwwwwwwwwwxwxwxxxxxxwwwwwwxxwwxxxwwwwxxxxwwwwxxxwxwxxxxwxgwxwwwwxwwhxxxxwxxxxxxxwgwwwxwwxwwfvvwwwwwwxhwwwwxwxwxxxwwxxxxxxxwxxwwwwxxwxwwxxwxwxxxwxwxxxxwwxxxxwxwvwwVvvfxfwwwwvwvwxwgvvwxwwwwwwwwwwwwwwwwwxvxwwvwfwfvwwvwggxwwwwwgwfwwgwwvvvwxvvvwwwwxwwxwwwwvvwvwwgwvgvwwwvvwwwwwwwwwxxgwxgwwvwxxwwvvwfwgwfwwwxwwvwgwwwwvvvvwvxwhwwgwwwgwTvxhVexwfvgfwwVwwWwfwwwgwwggvwgxwwghvxhwwxxwwxxywwfwwvFwvggwgvfxwvwwxwwvvwwgwwvwvwwwgvvgwwxwxwwxwxxxwhvgvwwwwwggwwxwwwwwwxwxxwxgxwgxwhwxgwgxxxhwvwvwvvvgfwxwggvwxwwwxgwwwwvwxwfwxwwwwxwwxxgvfvwvvwwgxwgxwvvwuxwxfvvwgwwwgwvxxwwwvwvfwvuvwwfuwgwwwwwxWwwwvxvvxwwhwwvwgxwwwxwwxwgvwvwvgwwgwwfgvwvwxwwwwgxwxwvxxwxxwxwwwwwxfvvfvwwwwwvvvvwxwwxwwxwwwwwxxxwwgwwwwfwwgwxgwwwvwwxwwwwwfwwxxwxxxgvxxxxwwwwxwvvwffxvwwwwvwgvwxwxxvwggxgxhhhxwxxwxhwwxxwgwwwgwvwwwwxgxwwfvgxwwwwxgwvxxxxxgxxxwxxxwwwvxwgwwwwwgxwwwwxxwwwxwvgxgwwwgwxwwwwxxwWgvwgxwhwwwxwxgxxwxxgggvggfwgwwfvwwgwvxwwwwwxxwxWwwgwwwwwxxwwwwwxxwxwwwxxxgwwwgvwwwwgwwgwwwgwwwwxwhgwvgxwwgxxxxwwxxxxWgfgwhfvwwxxvgfghxhxwwwwvvwwwwxxxxxxhwwgwwgwwgvwwwxwghxwwxxgwwxhwwvwxwwwwxwwxgxxxxhwxxxgvvgfwgVgvggwggxwwwxxwhhxwxgwwwvhwxxxwwxwwhvwwxxxxxxwxwfgggvvwwvvwwxxxwxhxwwwwxxxwxgwhwwxxwhxxwxwxxwxgfwvgwwwgxvvwwwwxwxxxwxwwwxwxwxxxxxwgxxxxgwxxwwgvwwxWgwgxxgwvxwhgxwxxxxwxxxxggvfvwxwwwwwwwgvvwwgxwwxxwxvwwwxxxwxxwxxxxxxwgwxgvxwvxggwwxxxxxwwwwwxhgwxxxxxxwwwwxwxwwfvwwwvwxwwwwwxwwwxwxxwwxwwxwwxxwxxxggggvwVwvgxxxggwxghxxhxxxxwxwghxxhxxxxxxgwxVwggggwwxwvwhwwgxxxxwgxwwwxwxxwxxxxwwwxxxxxgxxwwwgxwwxwxwxxxxxxxxwxxhwwxxwxwxvvwwhhxxxxxxxxxvgxvvhgwxwwwwwvvwxwvwfvxfwwwwwvxwwwwvwwwxwvwwwvvwwvwxwfvwfvwfwwwwxwwgwwgvwwvvwwwwwxwxxxwwwuvxgvgwwwvwwvwfwwwwvxxwwxvfwwwvxxxwvxhwwxxxwvhwwvwwwvwvuwvxwwxvhgwvwwhwwwwvwgxwvwwxxevwxggfggwwwggVwwfwgxvwgxgVvfVvgfgwwwwwxghwxwxxggwxfwvwuwwwgwwvwwfgxwwwvvVvgewggwxwgwvxwfwxwhvxwxgwxwggwvfvwwxxwvwwxwxgwxxgvvwwwwhwhxxxgwwxWxwxxxxxvvvwgwwwwwvwugvxwgwxwwwgwuwwwxwvvxwwwwwgefwwwwwwxuwwvwwvvvxxwgwwgwwwxwxwwwwwxwwxxwuwwvuwwwwxvgwxvxvxwwxvvgwvwwvwgwxxxxwxwxwgwvfwwgvxwwfvwgwwwxxvwgwWwxvxxwxxwgxwwwwwvxwwwwwwwwwwwxwwwwxvxwwvwwwwwwxgwgwxggxwxgwgfvvxwwwwwwwxgxgxwxhxwwgwhvxwwxxgxhwxxwxxvvxgwgvgwhwwxgxxwwxwxxxhxwxwhwwvwwgwwwwwxgxxxxxvwxwxgwwwwxhxxhfxwxxxxxxxwxxhwwwwxxxwxxxxxxxxxxwwxgwwwwwxvwxwxvhxwwgxwwxxwxxwwuwxwgwvgwhfvwgwgwwvwwxwwgxwwwvwgvwwvwwxxvwxwwfvwfvwvgfwwgxwwwwvwvwfgwvguwxwwwwgvwwxwvfwwwwgwggwwgwwwxwwgwwVwwxwwgVwwwxxwwxvvwwwwwvwwvwwvfwwgvwxwxwwwvwwwxwgwgwwwwwwwxeuwwgvvWwwxGvwwfwvvgwhxVvvwwxwWwwxxWfwxwxhgxgwghvwwwwwxxhwVwuwwwxwxwxwgwgwwwwwwwvgxwvwfwwgvvwvhvwWvfxwxwwvxxwfwwwwgxwxwwgwwWwwwewwxxxghxwxwwwwwxwwvgxwvfwwwwvxwxwvwwwwwgwwwgwvwfwwwwxvwvwWwwwfxwgvwxwfwvxxwwwxxwwwxxxxgxxxwfwvvvwxwwuwvwwwwxwvvwxugvwwwwgwwvwvwwxwwwWgwvwgwwwwfwgwwxwxwwxvVgwwxwhxwwggxffwxwwgwwwvwwwwwwwvwwgxxwvwwxwwwwwxxvwgwwxgwwxwvxghwxxxwwvvwxxwxxwwgwxxwwwxxgxwuwxwWwxvwxhxwwwwwwwwwwxwxwgxgwwxxwwwwwwxwxwhxwxWgxwxxxhwwwxggxgwwxwwwXwxxexxxxxgwgxxxwhwxwwgwwvwwxwwwxxwwxxwxVwwwwvxxwvxwxvxxxwxgwwxxvgvwgwgxwwwwwwfwwwwxvgvwhfvxwwwvvwwwxuwgwvgvwgvvwwwwgvwwwwwwwwwxwwwgvwwvwwugvwwwwxwwwuxwvvwxxwgvggxwxwwwfwwwghwwwwfhwwwwwwwgxwvxwxxwxvgvvwwwwxuwwgwwvxwhvwxgwwwwwugvwwvxwwwxxgwwggxxwwgwgwgvwwwwgwwGvwwwwwwxwwwwwwvvwxwwxwxxwwxwxwwXxwxxwwwwwwwfwwvxwhwwwwxHwvgxwwwvvxwguwxgvwvwwxggxxwxxxwwwwwwwwwghvwxwwxwvgxhwwvwxwwgwxhwxxxxvwfwwwwxwwwwwgwwwwxwwwwxvxvxwwgwvxwxgxwwxxvwwxwgvwfhwwwwwwwwvvxvwxvxwggxxwwxwxxwghvwwxxxwvgvwwvwwwwwugvwvvwxwgwwgwgwvxwuxxwwwhwxxxwxwxvxxwhwwwwvxwwwxuwxgwxwxgwxwwhwxhwwxxgxwxxxxfvxugvwwwwxxvwvwxhwxwwxxxwxwxhwwgwxwwwwwwxgxwwxxgwwxwxggxwghxxwwxwxhxhxxxxxxwgwvvwwwwvxwwwggwxwwxxwxwxvwwxxwxgxwwwxxxxhwhxwgwwxuxwxxXxxxxvwxxxxgwxxxwgxuwvvxwxxwxwxxwwxvwxwvxxxxwxwgxufwwhvwxwwxxxxwxxgwwwwwwxwgwxwxfwwwwwxfwxxwfvvvwfvwxwwwxwwwwwwvwxwxgffgwwwfwwwvwwhwwwxwvwWfvwvwgwwvwwwwxwvWvvgvvgwgxxxwvwwwxxefvvwewwwwwwwfvwwwwwwxxxwwxUvvwvgwwxxwvvgwwwfhwxwxwwgfvxffvwgwfvwxvhvgwxwxxwfvxwwxwwwfwxxwwxxwwwxxwwgFdgwwffwwwwwvvwgwwgwwwxxwfvwwgwgwxxwxwwhgwgxgwxxwhwgvxwvwwvwwwwvvwwgxxxxwffvxxvxxxxxwgwxxwwwgxwwfvgwvwwgwwxxwwvgwwhwfwwwwxwvwgwwwWwwxxwwwwuwxxwwwwxvuvxwgfxwwwxvgwwwxxwgvxwwwwxwxxwwuwwwwvwfwwwxvvwwxxvvxxxwfvvwvwwgwxxwwwwwwwwwwwwwxvwwfvgwwwfvwwwgvvvxxwgwvxxxgwxxwxxxfwwvwwvwwwwuxwwwvwwwwxwxwwwxwgwwxwgwxxwwgxwwwvWfwwwhxvwwgwxwwwxxxxwvwxwhxxxwwxxgwwxxvvvwwwwwhwxwgwwwxxwwxxwgwhhxvwxwxwwwgwxxxwxxgvwfwwwwxxxwwwvwxwwxwgwxwgxxwxxhhwwwwwxwxxvwwwwwxwwwgvvxhvwwwxxwxwwxxvwwxwwwwxwxhvxwwwwwwxwwwwxwvvwxvwwxwwwwxwwxxvwxwwvxxxxwwxwvfwxwvwwxwwwwwxwwwwvvxxwwwxxwwwgxwwwxxwhvwwwwvwwxwvwwwgwwgwxwwwxwwwwgvgwwxxggvwwxwwwxxxghwwwxwwgfvwxwxggwwwwwwvhwwwvvxwwvwvvwxwhwwxgxwwgvwwwwwhxgxgxgvhwwgwwxvvgwwwgwwxxwgwgwhwwwxxxwwvwxxxgxxxwxwwwwwxxwwxwwgwxwxvxwwgxwwwxwgxxwhxghwxwwgxwhhfxxwggwwwwwwxxwwwfxwvxgxwwgxhhvwxxwxxwwxvxwhwxwxwxwwwhxwwgxgwwwwgvvgwwxwwwwwwxwwxxwwwvxgxxwxwwxwwvwwwwgxwgwwwvxwwwwwwwwwvvvwxxvgwxwwxxvgwwwwwwfvghwxfwvwwvwgwwwwvwxgvwwwwxwgxgwwvgwfwwwgwxxxgvwxwhxwxvvhwwxgwwxfgvwwgxwxwwwxwwxgxggwxwwxhxvxwwxwwwhwwwxwgvwwxhwwwwxwwvxhxwxgwhxfwwwwgvwwwgwhwwhggwxwxwxvwwwxxxwxxxwwxxhgxxxxwwwwgwwwxxxxwwwwwffwwhgwwhxxxwwxhwgxxxxwwxxxxhwwxxxgxwwwwhxwwxwxghfxxwwxxgxxxwxwxxxwwxxxwvhwwwwxxxxgvwwwxwxxxwxxwxwuwhwgxVvxvggwwwwgwwufwgfwgwwwwwgwwwxwwwwwwgwxwwxvxhwwwvwgewuwwwgvvwwfvwwwvwgwwwuWfwwgvxwgwwwvwfvxggwwwuwwxwwwwgwgwwwgwgwwfwffwgWxwvwwwwfxwwwwwwwxwxwfwxwwxxwwxwxxgvvwgfwwuwwwdgvfwwxgvwguwwwwwwwwuwgxhwwxxwhwfwxwxwwwggwvxvgWggwgwwvgvxffgwgfwwwgwxWfwwugwwwWvwwwfgwwvwxwwhxXvxxggwxgxgvwwwgwfvwwvgwWwgvwvwhXegwgwgwvwffwwwwhwwHxgwwwwxxxhwxwxgxwwwwvwvvwwwwwhvgxwwxwvxxxxgxgvxxvvxgvhwhxxxwxwwfwvwwwxggwgwgfwwwwggggwwxwwgvwvxwxgvgwwwwfhvwwwwwxvxWgwggwwwguwwwvxvwwvwxwxvwwwxxvxxwxwwxxwxwwxwxwvfwgwwwgwvxuwwwwwfwwhWvdgvfwwhvvvwvhgwwwwwuwxgwhwxxvwvwwgwxwwvwwwxwfwwxwXvxwwvxwxwvxxxwwxwxgxxxwfwvwguwvwwvwxxwxxwwwwuwgwxwwwwwwwxxwwWwvwxvwwwxwwwxwwwxxVwwgwxhwwhgwwxXwxwxhxWWxxhvxwhxwwwgvxvwxxgvxxxwxwgwwggWhwgwwgxgwwwwwxwwxwgwgxxwhwgwwxxwwwwwhxwhhxwxxwwxxxxxwwvgwvxXxxvwvxwgxxwwwxwvwwvxhwwxwwvvwwhxxxhxwxfwwxxwgwgwvvwhvwwxwwwvwxwwwwwwwwwwwfgwwgwwwxwwwxxwwwwvwxwwxwxwwwwwwUUwwwwWwvvwwxwwwwxwwxwwwwwvugwwwwwxwwxxxwwxwgwwgggvvgwwwwwwwfwxwxwxwvwwwxwxwxvwxwwwxwxvfwwUfevwwvvwwvwxgwxwwxwxvwvwewvwxwvwwxxwxwwvwvwwwwwuwuwwwwxfgwxwxwgwwxwxuwuwwwwxwwvwxwxwwxwxxwwUUwwggfWvgfwXwWwwwwxxwwxgxgfgegvwWWgxvwwwwxwxhhhvwwvfuwwwwwwwxwwwfwwxwwwwwxwwwvxwwxxxxwxwxxwUvgwgwWwgfwxvfgwxwgwgwwwwxhwewxvwwxxfwwwwwxwxvwfwwwgvwxgwwwwwwwwvxxwxxwwvgwwwwxxwxwxxxwxxwxwvggweuefgwwexwvvxgwwwwxwvwwwgxwgwwwwxxwgwxgxxggxwwwwwwhwwwxwxvwwwwwggwwwxwxxxwxwxxxwwxwxxwgvgvuwvwxwwwwgxxgvgvwxwwvwxwwvxxwxwxwwwvgewwwwgwxwxwwvvxxwwwvxxxxwwwxxwwwwxxxxwxwwxxxxwwxxguvwgwWxxvgxwwwwxvwhxgxxxwwwfvwvghwxvgwwwwhgxwxxhvxwwxwxxxwwvwxwwwwxxwxxwwwxxxwxxwxwwwxwwxxwuwgvwwwwwwwwwhwwxvwxvwwwwxwwhgxwgxwwwyvwgwwwwwxwwwwwwvxwghvxwwhvwwfWwxwwwgvxwhwxwfvfewwvvfwggwwgfvwxxvhwwxwvgwuwwgwgwxwguwxwxwxwgwwwgwwwwvwxwwwWggxwvgwwxxwxfwwwwwxxvvwxxwwfVfwvuwgwvwwwgwwwwwwwwwxxwguvvwwxxwgxwwwxvwwwwwwgwwwwxxwfggwxwggvxwxxwvWwwxwwwxhhwxwxhwxwxxxwwvfwxwfgwwwgwwwggvvvwgxgxxwwwgvvwxwgxvxxwwwwwwwxwxxwxwvgvwwwwwgwwwxgvvgxxxvwxxwwxggvwwxwwxwwvwxxxxxxwxxwwvvewwwfwwwxwxwwfwgxwwxwxwwxwwuwwwwxwwuxxxwwxwwwwfwvwxwwxwwwwxhxwwxwgggwWvgwwwwvwxxxxwxxggfvWvfwvwwwxwfuvhwwwwwxwwwfwwwwvxwxwvwwhxxxxxwwwwwvwwxxwvWvwxxwwxwgvvvwgxwxxxwvwghwhwxxwfuvxvwwvwxxwwfxwwwwxwwwwwxvwwxwxwfgwwwwwwwwwwwxwwwgwwwwWvgwxxwvxxwwWvfwwwwxxxwwwxxwwwxwwgwfxwxwwvwxhwwgwvgwxxxxwwwwwwwxxwxwgwwxwgxxwwxwxxwhxxwwwwwwxxxwxxwwhfxwwxxxwwxwxvwhwwwwvwwwwwwwuwxxwwwwxgwwxxxvwvgxggxgvxvwwwwxwxgwwwxwxwxxwwxwgwxvwxgwwxxwvxwxgwwwwwfwwgwwgvwwwgfgwwhxgxxwwwgwgwghgwvxwwwwwxxxxxwwwwxwfVvwgwwwghwWgwwwwwwwxxxwxxgwwxwwwxgwfxwwwxxxxwwwWwWwvwgwwxwwggWvxwhxxxwxwwxgwwwgwxwhhxxxxxwgvwwfvwWfgvfXwWgggwgwwwwhxgwgwwgwxhfwhwxhwxxhxxwxxwwhvvgwhggwfXwgWfgwwwxhghhxwgxxxwWwwwwhwwxxvwwggxxwwxxhxhvxwgwwwvwgvxwwhgwwwwwxgxgxhwwwxwvwxwxxxxgxxxxwxgxxhgvwwgvgwxgwwwwgwwxwgwwwwgwgwxwgxxwxvxwxwxxxxxxgwxwvgwxgwvgwwgwvvwgwxxxwvwxxgwwxgwxxwhxxxxxwvhwhwwxvwvxwgwWxwwhwhxwgwwwwgxwxwxxwxvxwxhhxvxxwxxggwwwvvxwwvvgwxuhwghwhxwwxvxwwxhwxwxxwwwwwxxxhxhwwwwwgwwwwwwwxxwwwvxxwhxwwxxhwvxwxxxwxwvwwhwwxwxxxxxwwfwwgwfhwwvwxwhgwwwxwxgwxxvxwxWwxxxxxhxwxwwxghxxwgvxwwghwxvwwxWgWwgwxxhhxxwwhxgxwxwxwxwxxwxxgxxhwxhgxwwwvwxwxgxgwwwwwxxxwwxwxxhhhwxwwxwhxxhwwwxxwwvwxxvwwhxxxxwwwxxxwxxxxfgwwwxxxxwxxwxxwwxxvwxwwvvfxwwwxwwwvvfxxwvwxwvxwxwwxxwgxwwwwwxxxwxwvwxwvvwxgxxxwvwwwxvxwxwvvwfeugxwwvxxxwwwwxwwxxwwgvwxwwvvwxhwxxxwfvfxwwxxwvwhwxwwgfvwwxwhxVwwwgxvwfgwhwwxxgwxxxgwgwxwwwvvfxxgwwwwxgwwxfvufxwWvxxxxwwvgwxwwxxgwgxwwWwwfxxxwwwwxwxxxwxxwxwxxwwfugggwxwwwwgwwfxgwvwwwxwwwxgvwxgwhwxhwwwwwwwwhfeuwxxxwxwxxwwwxxxxwwvwwwwgxxvvvwgwwvxgwwwwwxxxwwhxxvwwvwxvgwxwvwxxwvgxwhxgwwgxwgwvwwxxwwwxxxxxxxwwwwxvwxvwxxxgwgxwvXxwgxwxxxxwxxwxxwwxwxfugxxWvxhwxwwwxxxwhvwxwwwvwfwxxwwwvwwwxggwgxxwxxxwgxwwwhxvwxxxxxwwwwwwxxxwxwxfwxwwwxxxvxwwhwwwwvwwwwwwwwwwwvguxvfwwwwwwwxugggfwgwwxgwwgwwfuwgvwwwwgwgfwvwwwwvwwwwwuwwwfvwwfwwxvwhfwvwwuVvwwwwwwwvxghxwgwwxwwWvwwxwwxxxwfwwwwgwxwxwwfwvwxxwxwxxwwvfwwvwwgvwvgvwwvgewwxgwhvvwuwwwwxvwwwWxdgvfxwgvwgwwwgwwfwVwgwwWvwwwxwggvwwgwgxxXgvwgvvfwvvgxxwguwgugwwvwgxfwwxgvwwwwvfwwfwwgvwwgvxWxwwwxvgvvwvgwWxwGwwxgugwfwwggxgxwxwwwwwwwwwwwxgwuvxwxfwgwwwxwuXhwwvxgxWwxxgvwwgxxwwgxxxxwwwwwfxvwVxxwxvwvxwxwxwxxwwgvwwfwwxgwwxwxxwwwwvwvwwwgwuwwwwvvxwxwwgggfvgwwwhwwwwxwxxwwfvgvwgewwfwwxwwgfxxvwwwwwuwdgvfwwxxwxvuwwwwwwwwgwgwhwwwxvwwwwwwxxwvwxwWwwxwwwxxwwxwxvxwvwxvxwvxvwguxxxwxwwwxwgwuuwvwwxfwwwwwwwwwwuvwwxwxvwggwvwwxwvwhwwxwggxwwwxwgvwhgxwwxhgwwxgggwwwwwhvvxgwxgwwxxxwfwfxhhxxwgwhwxgvwgvhwgwwwxxwwwgvwxWWvwxwxhwxXxxwwwwxxwwwvxhxwwgwhwhvwwwfgwwgwgxhxhxgwxwvwvwxxxwgvwgwwvwgwgwfwewxhgwwvxuxxgxgxxwwgwhwgxwxwwgwwwxwwwvwwwwggwwxwvwxwxxwgwgwwwgwwgwvvwwwwwxgvwwvwwwvwwvwfwwwwwwxvwwwwwvwhxxwwwxxwwwwxwwgwhwwwwvfvxxxxhxxuwxxfwwxwxXvwwvgwwwgvwwwwwvwwwgwxvwwwhxwwwWgwwxwwwvuxgwxhhgwxwXwWgVxwwwgvXwgwwwfhwxgxgguxxxwwuhvvvwxfvxxWvxxxwxxwxxwwwxgvwwwxwwwwwwwwxwxwxgxvxgxVwwwwwwwxwwwwhgxwxWhgxwwhxvwxwwhwwwxwxxfwwxxxwwwxwwvvwxgwwxwxwvwwxxwhwwxwxxwwwwwwvwhxwggwvwxgwwhgxfwvxggwxWfwxwvwxwwwxgwwgwgvxxxwwwwwxxguwvxvwwgwwvwxWwwxhvwwhvxxwgxwvwgvwwwwwuwwvxvwwwuvwhvwwwvwwwwwwgvgwWwwWvgxxfvvwxwxxwWuxwxhwwxgwgxxwwxwxxwxwwxwxwgxgxwwguXvgwwwwxwwxvwwgvxwwwwwgwxwWwhwwxwvwxxwwvfwvxwhgwxgxwwvwwgwwwxxxxwxxxxwxwxxxxwwxxwwwhwwwwwwvwvvhxXwwwgwxxxhwwxwxgwwwgxwhwhWvWwgxhxvhggwgvwvxwgvxxxgxxwwwxxxwwwwwwwwxxwxwwgxvwxxwxxwwwwxxvxggxxxwxgwxwwxhhwxwwwxvwwfvwwwwxwwvwwwwgxwwwwxgvvwwxwwwhxgwwwwxvxwgggwwgfwgwfxvwxwxgwxxwxxwwwgxvwgfwvwwxxxfwwhwgwwwxwxwwwfvgfxgfvxwgxgwgxgwxxxwwfwwvwvwxwxwhWwxxxxxwxwwxgwgwfggwxwwhwxwwwwgxwxwwgwuwvwWfwxwgvWwvwwxxxxxguxVevwgvxwwgwWgwwwXxwxxxwgffvwhxwgfxhwvvwwxxvwxxwwwggwgwfGvwvwxwwhgwwwxwwwwxwwwwfwghgwgxgxwxxgfwgwwwgwxwhwgwvwxfwwhwxxwvwxwxgwxhxxwgwwggwxwxxwgxvwxxwwwxwwwxwwgwvxhgvhwxfwgvxxwwxgxvwwwgwwvxxxxwgwxxwgxgwxxgvxwwgwxwxxwwwgvwgxwxwgwvwfhvvxwvxxxwwxwxxxxvwgwvvvffxwwhwfwwxwxwvwgwwwxvxwwxwxhxxxxvwwhxwxxvxwgvgwgwwwhxwgwwxxxwxxvwvvwxgwwfhxxwxwxwwwxwwxwxfxfhgwwxxwwwxfvfxxxwxwwwwgwxwwwvwxwxvgvwwwwwwwvhgxxwwwxxxwvwhwwxxwxgwwhxwxhxwwhgxwvwfxvxgggxxwxxwwfwxwxwwwwwxxxxggxwwgfgxxhxxxwwxhxwwxwxvwwwxxxxxxxhxwwwwwwxxxxwwxgwghwxhwhwwhgwxxgwwwhwwwxxwwwxwhxwxwwxvvwxwxxxxwhtwwxgvwwwgvgvwwwwfVfwgwvwwxwgvxxfvvwfVfwwggWuwwwxxvwvwVegfevvgwvxwgwgfwgfwgwggfegwvvvwvwtgwwffvwgwgdWvfwwwwwwxwgvwxvgwwvvgVfwwwwwwwxwxghxwwwwfvvwwwxvvwxwxxxxwwffegwvvwwwgxWfgwfvwgguVegwgWvvvwuwwwwvxwxwwdvwfwwgwwwwvwwwxgxgVexwgvwgwvwVewwgvvvwgggwwwgvwvvwwfvvwxHggvwwgwvtvhwxwxwwwwgwgwwwwwwfgwwgvxx7vvwgwgwgwwwwwvvguwwgxwwvwggwgwggvwwxgwwwgvvvwwwvwgxggvwwfwggxWxwwwwwxXxwwxxuwwwxwxggwhegwwgggwvwwxgxxwwwvgwwgvwWggxvgvxwxwwghegvwwwghvwgxwwwwwwgvwhxwwwwgVfwwwwgwvxxxxvgvwgwfvvwwwxwwwwxgwwxxwffevvgwgvwuwwwwffgvvwgdwgfwwwvwwwwxVxgwwwwuVegwwgewwwvwwwxxfvvwfvvwwwgvwwuwwgwxgxwwvfvvwxxwxxgxwxwvwwxgwwwwwwwxwuwuwtgwwxvgwdgufvwvwwwwvwwwwvwwwwgwwwwxwvxvxwwwgvgwvwwwwwxXvvwgwggguwwwxwggwwxxwxxwxVxwxxvwhhfWwgwvwwvvxxxwwwvgwwgvwgwwhwgwxgxwxwgxwhfWvwgwVhvgwwgxxwwwfvvwHwwxxtvhwxwxwwwxwhvVvwwxxxxwwxxwwwhufvgwxwwwxxwwwxwhvVwwwwxwvwvwwwwwxxxwhufwwwwwxvwwwwwwwvxvxwxvgwgwwxwwwgwwwggwwwwvwwwgvwxwwhwwhuhwgwwxgxxxxgggwwfUwvwwwwwvxwhgwgwggwwXwwwwwwgwwgwwwxvgwwwfwxwgwwwxxxwvwwwxgVvwwwhvgfgWwgwwxgwxwwwggwwvwhwgwxwggwwxxwvxxwwhhgvuxwwwvwvhvuwxxgwvhgwwxwwgwxxwwwxhwwgwxwwxwwwxgfuwggvvgwwxwwxwVfvwwvgxvwgwxwWfwxwxwwwgxxWvgXwwwwwhvxxwwwWfgvwgwgwvfwwvgwggVxhWgwwfwxxxgWwgWgwwwwwwgwgwgwgfwxggwxwVwxwfgwwwxwgwxxwxWvwgxxwhwgwwgwwwhxxwxwxhwXwxwgxxxxwwWwwwwggvhwgwgfwgwwwxwwwwwwwgwxwwxxwxwxgxxwwxxwxwxVvwwwgwxwwxfgggvgxwwgxwwvxgwwxxgwhgwwwxxwvwwgwfhwvxvwfhwfgwwgwwwxxgewwwwwgxxwvwxxxwwwvxwhwvwwwWwwvxxxwxgvgwxwgwxxwwggwwgwgwxwxxwvWwxvwxwwxwwwvxwxhxwxwwwwxwwxwwxwwxwwfxwwwwgwwwwwxggwxwwwwfgwwwgwxxgwvXwxwgxxwxhgwfwhxxxwxhgwwvxwhxwggxxxgwwggwgfvxwxwgwwvVwxxxWwwxgxxvgggxxvxxgxwgwggxwhwwxwvwwxwwxxxwwwhgxxwxxhwxxwwxxxxxwvxwfwxxxxxxwwxwwxxwgwxwwwwwvwhxhwxxxwxwwxwxvxwxwxwvwwwwxwwwwxxwwwwwwwwxxgvvwggwffvgwwwwxxxwwgwwwwwwwxwxxxxvwgvvwwgvwwwwwxwwvwgwwwwwxxvvwfgwfwvwwxwwxhwwxgxwgwwwxwxxwwvxwVegfgxwxggxxwwxxwfwwwxxxhwwxxxxvwfvfwggvfhgggwwwwxvwxxvwgxwgfhvhfwxxxxxgvxxxxygfwvvwxvwvwfxfwvfwgwwvxxwwwwwxwwxxweefwgfwwwgffwwwguwvxwwxxwwgvwxxgwxgvwxxxxxwxwxwwwgvvwwwxwvwwxxwwxwgxwxwxxgfgvvgfwwwwvwwwwwwxxxxwwxwxxwxxxxwvvgvwwwwfvwxwwwwxwxwwgwwxxxxxwxfwwwwvwwwwwxxwwxhwwwxgwxxwxxxguwwvwwwxwxxwwgvwwwxxxwwxfwwgwwxxhwwwwgwxxwxxfVgefgwgwwxxwxwgwwwwxwwxxxhgwvwwxxxxwwwxwwwxxwxwwvwwxxxhxwxxwvvxxxxxxxwxwxwxxwwwwwxxxwwxxwxwxwwwwxwwwwxwxxwwwwxvwgwvwwwhvgvwwUwvwwxxxwwwggvwxwxvvxwgvvvwgwfwwwwwwwwxwwfwwwwwwwwwwwwwwxwwxwxxwxwwwvxwxwwhwwgggwxxwxxwwwxwxvwwwwwwwwwwxxvwwwwwgwxwwxwxwxxxwwwxwgwwwwwggvvwgwgfvwwfvwwxhxwwxxwxxxwwwwxxxxxgfvwgggDfevggwgfvwvhxwXggwgwwwwfVVwwxvwwxwxwwhxwgxwxwfwvvgvwwwwwvwxhwgxxwwwwxxxxxfwwwwxfVVwxgwwgwwwghwwvwwvwwwgwwwxghwxvwgwhVewwwwwwwxUvwvwxwwwxwxxxxxvfgwfwwwvvwwfwwwvwwwwwxwwxwgwxxxxxwxgvgwvwwwwxxwwwxxgwxwwxxxxwwvvxwxvwwwwxwhwwxvxwxwwwggvvwgxwgvwwwfwxwxvwxxxxxwxxxwxxxwDefwxvwwfgwwwgxxvwxgggwwxxxgvxwxxhwxwxwxwwxwxwwhxxwxwwxxxwwwxxxwxxfxwwxxwwwvxxxwvwwxgxwxwwxwwxxwwwwwuwxwwwvxwwxxwwwwvgwwwxxxwfgxgwwxxwwwwgwvxwgvwwxxwuWwgxxxxwgwwvxgxwwwgxwgxhgwxwwwwwxwvvgvwvwwwwwxwxwxwxuvwwwfgwwwvvwvwwvxwUwfgxwxwwwwwvvxwwxxxxgxhwwwxxwwwwxvgwWvwvwwVwxwxxwgwwwxwxgwwwxxxxwxxgwxwxwffwwgwweggghfvwfgggxwxxgwgxxxxwgwwwxwwwxxwvhwxxxxwxxwwxgfwwvfwvvwxwvxwvvwxwvvwwwxgwwwwxwwxwgxxxxxxwUffgxwwwgfwgwvvwgVgxxxxwwwwhwuwwwxxvwwwxwwxwxgxxxxwwwwxwhvwevwggwwwwwwxwxxwwxwxxxwwwxxggWwwwwvuwgvxwgfgwhwxxxxwxvvxwhwxxwxwxgxxwfvwwwxwxwxfwwxvxwwgvwxxyxxwvwvWvhwgxwuwwxwwWvvwwwxhwxxxxwefwwwvgwwvgwfwvwxxwxhxxxxvwwvxwxwxxwxgxxxxxxwVVvxwwxuwvxvvwwwfwgwxxwwwwwvwwwxwgwxxwxxwhhwxwxwwwvxwxvwxwwwgvxxwwwxxxxxxwxwxxwxuwvgvwwwwwwwwxxwwwwwxwwxwxwgxxwwwwxgwwxwgwwxwwxxwvwwwxwwwwvwwwwwxwfgxwwwwwxxwgwwwvvwgfwwwwgvwwhwwfuwghwfgwfvvwgwwvfwwwwxwwxwxggwgwdVwwwfuwwefwgwwwvwxwwgvwwfvwhxwvegvvwwfvwwwwvewwwwvwwwvwffgfewwxxwhwwvwwwwwwwwgggVwfwffgwgvwwxfwwwwvwvwxxwwfwwwvwgvwxwfvgwxwxwxwxwwgxgwvwwvwvxhwwhwxwhgwxxwxVvvfwwwgwwwwwwwwwgxhgfgxwxwwwdVvwVuwvwvvwwwvwwvwxwxwfvvxvxwewwwwwvxgffwwvwwggxwvwwwvgwxgvvwVwVgwwwwwvwgfwywwwwgvgxgvwwwfwwfwwwwwfwwugvgxwfwwxhwwvwwwwwwwwxxvugvfwvwevwxwwwwvfwwvwxvwwwxfvwwwvwwwwwxxxxxwgwwveuwgxvxwVdwwwwwwwxvxwwvwhxwwwwwwwxwwxwhUdvwwwwgvxwxxwgxwwxvgxwwxwwwwwxwgwwxwWwvwvwwwxvwhwwwfwxwxwwxwxfwwwxxwxxwwwxxgxvgwwwvwwgxwgvwwwxwwwhxwxgxwxwwwwfwwgxgxxxwxxwwgxhwhgwwevwwxwvxwxxxwggwwwxwgwxwxwwxxxxxxggxvwwwgwwwwwwxwwvvwxfuwwxwwxhgwxfVwwxwxxwwwwwwgvwwgwwxxxwhwwvwxxwwggvwwfwwxwvhwvwfgvwgvwwwwwwwwwwxvwwfgfvvgwwxxgvfgxxwxxwxwwwwgwwgvxwxxxwwwwwwwwwxgvvwgvwwffwuxwxgwwwfwwxxwgwvwxwwwxxgxxxfwwwwVwvwwwfwhgwwwhvxwwwxfvvwxxwwwwgUgwfggwwgvvxxxUfvfwgxgwwxgWewehwwxwgvhgVwvxxghgwxwwwgfwwvwxffvgxhxwwghxwwxwwxxxwwwxwxwxVegfxwxwxwxwVwgxwwwwwwwgxxvwwgvwxgwWxxwwxwwxvuxgwwwwxwUVvwgwxwwxfxxxxwxwxxugwwwwwwwfvvwgwfxwxxwwxwxwxwwwwgxxxwxhwwvwxxxwgvwxxwxwxwwwxgvwxxxwxwvwwxwwxwwwwwxxhwfwxwwwwfvvxhvwxxxvwxwxwxxUfvfwwxwwffvgwxwgxxxxwgxwxXxwxxgggwwxgwgxxxxwxxxxxwwwwxwwwwxwxwxxxxxxxxwxwxwgwwgwxvwfwwwwxwwwwxwxwxfxwwxxhuwwwWwggwwwfwgvugwxgwwxwfffwwwwxwgwfwwwxgvWgwgwwgxwxWvfggVvwggvvgvwhgEtvwWxwgfvvwvwWgghWfwwWwvfwwWwggwwwggwwwwwggwwwxfWgwfwvvfWvgvwhwwvxwwxwvvwwwwgwxxwxvgwxvgwwfwwvvwwfwvffvwghwVgwwwwxwwvvhvgwxxwggwgxwwxwwwegvwwevwfWUvuuwgVwwgwxffgggwwfwfvwffwvgwxGUvgxgwwwxxxwgVexwWwVguvvvwggWwgwgxgwgvHxGXdvfwvvfWwwwghxvxWgghhfgwxghvwwvFvwfvwwvwvxwWUwgwgwfwwwgwwvwxxxwwvwxwhhvwxxxwwhxxwgfvvwgggvgwwvwvwWwWXgewgwWwwwgfwwwgwxwghwwxwgvvwxgwfwwvwvxvfgvvgfvweuvwvFfvffwWvxwxwvgvwgwwvwxwwwxxxwwxxfWwvfgvgfvvgwwwwufvwggvgvvxwwgxwvwvhwhgwwwwxxwxwxhhwxwhgWwwwgwfxwwwxwgxfuwwwwxggvwxvxwxwxxvwwwwgwwvwwxwwwfvxggwwwwwwwwxvwwxwwgwwvwwxvxwwwwwwwvwwwwwwwwwvwVfvfxwfvwwwwhfVvwxwvWfwghwwgwxwwwwgxwwwwvxwhhwwwxxgwwvffwwfgwWWwwfwgxwhfwWHXVwgwwXvwxxxwggwgxgwhvwxXhghggHxgwWvwxxvwxwxwwxwwfxwwwgwwxwwwxxxwxwwwwwxwwxxwwwvwxwwwwvwvwgvvwwvxxWfvwgxwhwwgwwxwwwwwWxWwxuvwwwwwwxxwwgwwxwwxwwwvxxxwxwwwwwwwwwVggggvwwwwwgwwwwxwwwhxwfwvwxxxxfgwwwxgvxwwwwwwwwvwfwwxwwuwwwwxxxwgwwxwxwfvwwvwwwwwvguwxwwuwwfwvvgwxXxwwxwxxxxvwfxgwwguwxwhgGvwwxgwwwxfggwfxxxxwxwxwwwxxxxwxfvfwwgvWwwxvwvwwgwxxxgwxxuvwggewxwxxxwwwvwxxwxxwxffvwvwgwwvxvhwuwwwvwwwxxgvgwwxuxwgwwwxdfgvgdwgxxxwwwwvwwvhwwwwwwwgggwxwwxwwwwwXxhwwwwfwwxvwwwgxwvwuwghxxxwgwwxgwwxwxxvgfwwwwwwxxxxvvwWxwgwxxxwwwwwwxvxwxxxxvvwwwwwwwwwwwwwwgwvxwwwxwxxxwxwvwwwwwgwxwwwxwxxwxgwxxwwwwwwtvwwgxwwwwxfwwvxwwwxvvwxhghxhxxxwwwxxxfGWvwvwwxxwxwvwwgxxwfwxxxwgxwxwxxxwgxxxwwwvwwwwxghwgxgwxwwxwwwwwwwwgxhwwwwvwwwwgxwwwwwwxwwxwwxxxxgwxxxxufwwwwwggwvgwwvwgfvwwwwwwwwwwwwwvhwvvxfwvxxfuvwfwuvgwvevvwvvwvgwwwvWwvxwvgvwvwvfwvwwwfwwwfxwgwgvwwhvxxvfvvwvwwgvwfvwuggwfwwxfvwwggwxwfvxufwwwwgvvwwwvwwxwgwufvwvuegvwwwxwwwvfwfwwegvfwwwgwuvwvxfgwwWwfvwwgvvhvwWgxuuwwwfvxfWvvwxgfvVwfwvffwwwwggXvwwwwfwwwhxWvvwwwwhvgwfxwhwfevvggwwwwvxwXvWvuwwwxgvwgghvwvfwxwwhggwhhggggWgwwwxhxgxgwwgVvwvvvwvvwwwwxfevwwggwwwwxvhgwgvwwxwwwwUvhwwwwxwwwwwwwxwwfffvwvwgwweevvwwgfgwwxwwwwewwvxwgVvwgwfwewvwgwwwwvvfwuxfvgxwwgfwwwwwfuwwwwwwwgggvwwfwvxwwwvxggwhhvgfwewvfgvwfwgfvvgwvvwfgwfvxgwfvvwwxwwvhwxwwgwggvwwwwwwgvwwwwwgwwxwvuwvxwewwwwgwvwxwgwwwwwvwvxxxwwwwfvwwwwxxwwxwwwwwwvvwvwgwvwvgvwvwwwxwvgxvwwwxxhwwxwxxxfwwwfffwwwgfwwgxwfuvwhhwwfwwfxgwwvwwxwxwwWgWgxxwwxxwxxwwxxxvvvwwxwhxwwhxgwgvwvvWhvxhgvwwwxgxwvxhwhwwwwxwwhxwwwxxwuwwhwgwXxgWgvwwgwggxwwgvwwwwxfxxxwggwwxwxxwwxwxwwxwwfwgwggfwxwwxgvvwwwvwwwwwxwvwwxgvggxwwxwwwwvwwwgwvgxxwgwvwgwwwvwWwvwwwwvwxwwwxwwgvgvfwwwwwgxwwvwfgwfvwhewvwwwwvvwxxwgvwwvewgwwvvxwwxxwwxvxxvwgvwwgwvvxffvwfwxvfwwwwwwwfwvwxwwwxxxwxxxxgwfewgwfvgxwfvgxxwwgwxwwwwgwwxwvxwhxwwxwwgwggewvWfgwwfwxhVgwwxwwfvwwwvxhgwwxwxvwwwfwvxvwxwgxgxwgfwvwgxwfwwXewwfwwxwvhgwvwWhfvwwxwwhxxhxwhhhhghgxxvxwhgfvvwwfvwwwvvwwhgwgwwwwgwwvwxxhwwwxxxxxwwfgvwxxhfwhwgfgwwwwwggXVwfwwwffwwxhxxwwewxhwxvwwvwwgwxhgwwgwwwwWvwwwgxgfwwxwxwhwwwvwfwxwwxxwxxxfggwwwxwwwxwwwgxwwgwwwxwwxwwwxwxxhwxxxwwwxwwgwwwwwwwwwwxxxfgwwwwwwxwwxxxwxxwwwvwwxwwxwwxwwwxwxwwxxxwwgwxXvwwwWwwgwwxfvgvxwwXxwwgxwwxwwxxxxxxxxwxwxxgwgVwwhvwgwxwxwwwgwXXhgwwhwxvxxxhxwwwwfghwxvwwwvxvwvwwxxvxwwwwwgxxwvwxxgwvxxwxxgxxxgvgwwxxgxwxvxwwwwxxxhvwwgwvvwxxexwwxvxgxvxwgwwwwwwxwwxwgwxwwwxgwfwwwwxwwwxxxwwgwwwwvxwgvwwgvwhwwwxwhxwvwxvwfwxwvwwwwgwwwxwwwwxxvxwxgwwgvgvwwfwwvxwvwwwwwwxwwxfvwgwwWugfwwxwgwwwwwxwvwwffwwxxgxxwwxxhfvwUvfvffvvxgvwfggwwhxxwxxgfwgwwwwwxhwwwwxgxxxxxwxvgxVugvwgxwfwgxwxwxwvxwwwxxxwwxgwxfffwwfvwwxhwggwwwxxwxwwwhvwwxwwwwxxxwwxxxxxvvweUgwxwwwwwxwwwfwxwxxvgwvwwwvwwxxwwxxwwwxxwwxxxwxxxxxxwgwwgwxwxxxwwxxwwxxxwwwxxxwwwwwwwwvgwwxwwwxxxxxwwwwwvwwgxfwxwxxgwxxxwwwwxxyxxxxUffwvwwgxwwxwwxxxwwxwxwwwgxvxxwxxwhvxwwwwwxxwxxvwxwwxwwwxwgwxxxwxxwxgxwvwvvhwgxwxgxwwwwxxxxxwxwxxvvwvwwwgwxwwwfwwxwwwwxgwwwwwwwwwwwwwwxwvwwwwwwgwgwvwwwwwwwwwwwwgxgvwwvgvwwwwxfwvwvgwwwxgvxwwvwfUfwwwwgwwvwxwfvxwweewwwwwwxwvwxwwwwwxfvwwgvvvvfxxwwwwwwhwwwwxwwvwwvwxwvwwwxwwwwvvwwgwwwwgwwwwwgwxxwxwwwxwgwwwxwwwxgwxxwwwxxxwwwwwwwwwwwxwwxwwwwwwwwwxxwhhgwwwwwwhwwwxgwxwwwxgwwxgwxwUewgvwwwgxwwfvggwwwvxxwgxwfvxxwxwvxwxwwgwvwwwggwwwwwhgwxgwgxgxwxxggwwvwwxwwwwxwgwwxgwvwwggwgwwwwwwgvwwxwwxxwgwxvvwwvwxxxwvwxxxwxgfwvfwvgwwxwfwgxwvwwxwwwwxhwwwwwwxxxxxxwwwvwfewwwgxvwgfhwwgxeewvxvvwxwxvgxxwwwwxweuvxwvwwxwwwxwwwxfhwvxgwxxxwwgwxxwwwxxwvwxgwvgwwwwwwwxwwwwxwwxwwwwxwxwxxgxwxwgwwwgwxwwwwxhxwwwwhhgwxxxxwgwxwwhxxxwxxwxhhwwwxxwxfwxwhvwwxwggfwwwxwxwxwwwwwwwxxxwwwxxvwgxgwwxwwwwxxvwxwgxwwxwwwwxggwwuwhwwwfwfwwwwgxxfwgwfwgxxwgwfwwxghwfwwwwwxwwwwwfwwuwvwvwwwfwfwwfwxxwwxhgwgwxxwwxwwxwvwwxwwhxxxxwwWvwwwgwwwwxggwfwwwvwxwwwwwwxwwwVgvwwxwxxxwxxgwwgvggwvwwwwwWgwwwwwxwwwwwwvwwwwxwxxxxxxxwfwxhUfwwfgUgwxWgwwwwwxWwxuwgwwxxwwgxwxxxwwxxxxxwxxxUwwwwwUgwxVwwvgwwxxgxwwgxhggwgxhvwwvwgwgxxxgxyxwxxwwgwWwwfvvwwwfwwwxwgxhwxxxxwxwwwwxwwwxgxwwxxxxxwxwwwwvgvwwwwgwwwwxxxwgwwwwwwwwgwxwwggWwwwxxvxwxxvwgwwffxvwvxvwwWwwwxwgwxwwxfwwvwwwwxxgxwxwwggwwwfvwwwxvwgxhwwwhwwvxwwwwxwxhxwxxwxxxxxwxxwwvvwwwwwgwwwwwwwwwwwwxwxxwwwwwxxxwxwxxxxxxwhgwwwwxwwwxwvxgvwgwxxxxwxxwxxwxgfgwfwxuvwwxgwhghxvxxwwwwfgwwxxxXwxxxxxxxxgVfwggwwvwwXwwWwhwxwxhwWhghwwwwhxxxwwhxgwxxxhwxxwxxwwgxggwwxxwwwxghhwxxwxxwxxxwwwxxxwfxwgwhwwxwwhwwxwwxxxxwxvxvxwwwwwxwwxwwwhvgwwfxxwwvvwwxxwwwwVvwxwvwwwgwwwwwwWwwwwwwwxxwwwfwwxxwwgwwgwwwwxwwwwwxwwwxwfwwwwxggwwwwvxwwxwvwwvwwwxwvwwxxwxvwwvvxwwwxvwwXwwvwwwwfxwwfwgvwwwxxxwwwwwxxWfwwgvvUggfxwwwwwwxxgwxEeufggwwwxxxxxxwwwwxxwxxwwwwvwwwxwwewwwxxgvwwxxxxxxxxxwxgxxxxgwUfgfxvwxwwwvxwwxwxgwwwgwwwwxxwxxxwvwxwhwwxwwxevwwxxffxxwvwwfwvxwwvwvgwwvwwwwvwwwxxuxxxwxvhwwwxwwwxxxwxwwwwwxwxxwwwwwxwwwwxxwxxxwxwxwwxxxwvwvwwwwxwwwxwxxwgwuwxwxwxwxTeufwvxwwhxwvxxxuwwwxxwxwxxxxxwwxwwxwwwwxxxxvxxwwwxwxwwxwwwxwwwxxxwwwwwwwxxwwwwwwwwwvvwwwgwwwwwwvxwxwvwwwwfwwwwwvxwxwgxgewwvvgwwwwwwwvwwwvwwvvwwwwwgwwggwwwgvvwxwgwwvvvwwwwvvxwfgwwwwwwwwwvwgwgxwvxwwwxuwwgwwwxwvxwvwwwxwwfwfgvWguxwwwxvwwwwwwWxvwgvhvwwvvxwwVwwgvwwgwwwfgwggxwggwwxwwxwwfwwwWvvwwvwwhwwxgxwgxwwwwvwwwwfgwfwwwVxwgffwwvwwWwhxxgxwvvwgVhwxwxgwvwxwwwwwxxwwewxffvxwxxgwvwvwwvxwUxwxxwwwvxvxxxwxwwgvvwfvgwwwvgvfxvhxwxwxvwxwxwxwffgvwwxWwgwwwwwwxwwvgvxwwwwvwwwvxwwxwwwvwwvwwwfwwwxwxwwwwwwwwfwwwwwwvvvvwgwwgwxxwwxuwwwwwxhxwxwwxwwwwxxvwwwxwwvvwxvwwwwfwvwvwwwgxxgwgwwwwwxgwwwvwwgwxfghvgxwvwwgwvwgwwwxwxwvwwwxxwvgwgwwwxwwwxwwxgwhxxxxgwwxwxxwxgxwwxwwhwgvwxxwfvwwwxwxhwwxgxgxvwywwwwxggxxxgwvwwxxgwwwwwwwxwxwwWwxhwfxxxwxgxvxhghwfwwwgxwgwxwxxvwwgxxxxxxwwgvwwwwwxvwwwwvgxxwwwxfgwxwwwwvwwwwwxhwvwwwwvxvwvgxvwwwwwwwxwwxwwxwwwwvgwxwwxxwwwgxwwvwwwwwwwwgvwvvxwwwwxwwwwvxwgxgwwxwwxwvxwwvxgwgvwxwwwwgwwvxwxwwxgwxvwwwwgwwwwhvwgvxwwhwwwwwvxwgwvvxwwhxvwwvgvvgxvwwwwwgvwwwhgxwwwwwgwwwxwgwgwvwwxwxxxwwxxxwwwwwgvwwxhvwgwwxxxwwxfhxvggxwgvwwwxggwwhwwxywxgxvxwxwwwvvwvxwwwwwxfxwxwwvwwwwxwwxxxwwxwwwxwxwwwwwhwwghxvxwxwwgwwwwwxgvvxwwwwxwhgwxwwxwwxwgwwwwwwwxggxwwvwwwwvwxxxwwxwxxwwxwwxwwwvxwgwgvwwwwxgvxxwxxwxwxxwwwwwwwwgwvgwwxgwwwvvxwwxwwhxxwgvvxvxvxvwgwwxwwwwwxxxwwwxxwgxwwwxwwwwwgxwxwwxwhwwxwwwxxxwwxxwxwxxxxwwxvgwxgwwxwwxwhxvxxxwxywxxhwxwxwhxgxwwxxxxxxxwxwwwgwwwxxgxvxwwxgwxxxxxwwxxxxxwxxxxwxwwxvgvxxwxwxwwwwwxwwwwgvwwwxwxxuvfvvwwwwwwgwgwwwwxwwwvvwgfvvwwwvwwwwwwxwwwxxUvfwvwgwwwwwvgvwwwhwwwxwxwwfvvVwvwwwwxwhvwwwwwwwwwwwVvvwvgwwwwwgwwvfwwwgvwwwwgvwuvvgvuwwwVwwwwWwhxwwwuwwvvgwvvwwwwwgvwwgwvwwxvwwwwffvvUvvgwwgWxwWgwxwwvwgwwwvwwtvxgfvgwgfwgwuwWwvfxwwwwxxwwVvwwwgwwvwwwwwwwwwwwxwxwwxxwfwfFwvfwgwgwwWwgwwwwwwxxwgxwwgwwwwwwgxxwgxhxgxwhhxwxxxwxgwWfwvvwwgwxwwwfuwxgwwwwwxgwwfvgwwwghwfgvwxwggwgxxwhwwwfggwevvwgwwfwgwuvvwwhwwwxwgxwxwghwwxwhwgWwwgwwhwfxwgwwxwwwgwwwwfvwwwwhwwwgwwggxVvuvwwgwvwxhwwxwhwxxhwwvfvewwvfwwghwvvvwwwgwxgwxfvwwggwgwhwxxwwwwwxxxwwxwwwfvwwgwwggwwwwxvxgwxxgvvwwwwwwxwwwxgwwwwwxwwhxgwwhgwwwfxgxwwxxwxxwwvwfxxwxvwwwgwwwxwwwwwxwxxxxwgwffuvwwwwxxxvwxxgwwwwxxwxxxxfgvwwgwwwhxxgwxghhhwhgxwwffwxgggWxxgwxxwxwwxwgwvxxxxxxxwhwXwwgxxwhxwxxhxxxxwwxfvwwwwwwwxwxxxfwwwwwwxgwxwwwxgwggxWwwxgfgwgwwwxwwwwxgwwxwwwvgxgwgwxxxgwwgxwwwWwxxxwwWuwwhwvxwvwwwwhxvwfwwwwwwvwwvwwgwwwwxwxvgxwwwwfggwwwwwxgvxwxwwwvgwwwwwwvwxfvuwwwxwwxxgwwxwuwxwvvwwwwwwugwvvxWvvwwwwxwgxwxxwxxwwwwwxWwxwxwwwuwwvvvvfuxwvwffvvvxwvvwwwwvwwwwwwwxwvvwwwxwxggvgwgwwvwwwgwxwwxwwfgwgwwgwvwwxwvwwwwwwwxwwwwwhfwhxxwxwwvwxwwwwhwwvwwgwwxgwgwvwwwwxhxxxxxwvwwgxvhxgxwwvvwfvxwffwwxwvvwwvwwfewwwwwxxwwvxxfwfxvxwghwxwwvwvwfvgvvvhguvwwfxwwwxwwxvvwwXwwwgwvwwxwwxwwwwXwxfwxfwwwwvvWwwwwxffwxhgwxwvxwhwvxvwvwwgwuwwvwwwwwwwwwwvgvwgxwwwvxvwwgxxwxwxxwxxgwwwwwvxwxgfwxvwvwwwwwvwwgwhwwgxxwwhxvxxhwwwvwwvxvxwwwuwwwgxwvxwxvwvwwwxfwwwxxwwwvwwwgvxwwwwwhvwwvwhvxxxgwwwxxwxwwgwxxwxxxxxwxwhgwvwwxwxwhwxwwvwwXxwhwgwxwxwhxwxxxwwxwhxxxwwWwwxwxxvwwwwwwvwhxxvgxvfhwhxxxwxfgwwxwhvvwgwxwwxwxxwwxwwxwxwugvwxxwwxxggwwxwhwwhxxtwwwgwggggwwwVgwwwwwfwwwwxfwwwfgwxvgwwwwgvwwxxggwxFwfhWggwggfwfWgvwgwwgwgwwwgvwwUtwgwwgvfgwwggfwwvwvhwwwgwhwwgwxwggxvgwfuwfgwxgwgvwwxwwgfwwwgfvxhxhwwwwwhwwxxxhfwfgvwwwwxvwwwfvgxwgfwgvwxxgvxwwvwwwgvwwwwxwwhxwwwwxVwvwvfwwvevfwwwgWewgwwwuvwwwfgwwWfwgwxxxUvgwhwwxgwgxwwgvwwWwwvgwwvwwhFfuvwwvWgfwhhxvwgwwggwhwgxghwfgwHwhhwGhewwwwwWvfvvvfwxwxwggfgvwgwwwwxhwwxxffwwxxxwwxgxwwwgxhgwxwwwwvWfvvWgxwwwxxvwwgwhwgwxWgwgvvvgwwhwXwwvxWgVxwwvhgwvgwwwwwwxwwfuwewgvxvgvwgwgwUdwxwwwVvwwwvuwxxgwwgxxxwxwxxfgwffffvxwhxWfvgXwwwwwwwwxxwfvwwgxwwgwwwxhwwxwxXgxxwhwxwwgwwxvvwhhwwxxwwwwgxxvwvwgwxwvwwxwwWwxwwhwwwwwwxwvwwgxwwwwwwwggwwwwfwwwxwvwxwxwwwwwwvwwwxwwxwwffwwgvwwxwwwvwgwwgwxhxxwvWwwwwwxwwWwwwwvXfwhxxxxwxwwwVUgwgxwxwxhgxvGgwVxhhgwxwxwwwwwwXwhhgxWXfgwwgxwwXvwhwwvxgvwwwwwxwxxxfgwwwgxgxxwxwxwgxwwxwwfwxxwxwwgxxwxxwgwwxwwwvwggggwwggwwwwwxxhwgwvwgxhwwwvxxewwwwwwwwwwwwwwwwgvwwxxwwxvwwwwwgwwwwwuwwwxxwwwwxwwxwwwxxwwfffwvvvwwxwwwxxwxxxfvwxvgvgvwvuwwvwwwwwwxwwwwvwhwxwwgxxwwwxxvvffvufwwwwgvwwwwxxwvvwwxwhwxvwwwwxwwwvwvgwffvxfwwwwwwfwwwwxwxxxvWvwwxxgvwwwhxxwwUvvgwVwxwwwvwwwgwwwxwxwxwfvfVxgwgvxxxwxxwgVwwwgvwxxxxvfvvwvwfwwwwwwxwvwwwvwvwwxwwxwgvwgvwwwwwwwvvwvUvVgfWfWxuxwwwfwghxwwgfwwfxvfwwfwvwwwgwWwwgxWwwxxhwvvhwwvgxxwxwwwwwxxxvuwwwxxxywwwwwxvgfwwwfwwxwxxgwxxwwgwxxvwgxwxwwwxvgwgwwwwxxxwxxfvwwwxxxxxvwwxvvwwxvwwxxxwfwvwvwwwwgwwvvwfgvxwwvwwwwwwwwwwewwwwwwvwwxxxwxwwwwxxxxxwwwxxxxgwwwvxxhwgWgfxwvwxxxwwxwhhxwxwxwxwvwvxgxwwuvxgxfgxxxwgwwwxwwwwxwgwwxwwwwhxxxxwvxwxgxwwwwxwxwvwwxwwgggxwxhvvwvwxxfwvwwwwwwwwgwxwxwtwfvfvfwvwvhwgewgfWwwwxvgvwwwwgwfvwwvwwgwwwgwwwwwgwxxWvUgfvefwUtwvgvvgwgvfwvvfwwgwgvwvgvvwwwvfwwwwwgfwwwvWwwxwwxwwfvwwefvggwfvwwwwfwgwvvvwwXwwugwvvwwvvwwwwwuvwwwwxwxxxwwxxvvgfvfwvvuwvwfvwvvWwwxhwwvvwwwuwuwwwgwvwwwwwwwwwwfguwvfevgggfufwwfgwwgvwWfvwwwwgfevufwvWwwxggggfgvwwwwgwwxgxwvgvwUftfwfwwvfgGfgwfhgggwgwWxhhgvfvvwfvggwgGhUuwwgXxggggwwwgvWfvfvwegfwwwgvgguwwgwgwwxwgwWfwwwwwvxgwwxgwgxwwvwwwwxwwffuewgvvhfWwfwVgwwvggWwgxwwwvwwwwwwuwWffwwvvwvwxwvwwvgvfufwVvwgwvwvVvvwwvwwwwwwewwduuvufvwwwwvvvwxgwwgxxwwxwfgfwfwuvvwvwwwwwgvwhfvfvwgvhgWvvuwwwwgwfwgwwwwXwwwgwwwxwwhvwwwwwwwgwvfhgwwugwgwwvgwfwwwfwwgwggwvgwwgwwwwwfwvwvwvwvfvvwgwwxwvwwvwgwwwvvwvwwvwwwfwwxxgwwwwxwvgwvvfvwfwvvffwvwgwhfwwwxwvVwwxwwggvvwxwwhwxwXwhgwvxwwgxhwxwxvgefvvWvgUwwwXwwwvwwwgwhWfwgXwXvgvwgwgwfwwXXfhwwwVxgwwwwWwfwwwfvvhvwwfwwwggggvggwwwgvwwwgvvwxxvxxgfwwwwwwwwgwwvwwxwgvVwgwwwwvwvxwgfgwwgwwwgxxhwvwwwfggvwfxxuwwwgwvwwwwggevvgwwvwggwwwwgwwwwwwwvgxwwwwgxwwgxxfvwwgxwxfvwwhfexfwwweWvewwwwwwgwwvwgwxvgwvvwfwwwvwwwvvfgwwwxhwwgwwxggwgvgfewvwwewwggvwffwgVwwwwwwwxwgwwwwgwVvwgvwvxwwwwxvvwwfgfffwwwfffwwfwwgwwWwwwwwgVVfvwwwwwgxgwxfvwwwwgxwxevwgwVewvVfgwvvwhgfgxwwvfgvwwfwgwgwvgxwvvwwwwwggwwhwhvwwgxvxggfvwvfggeWgegwvWwwWwxxgWWgwWxXgfwghxhwwgwwwwhhvwwwwwhwVwwvhVxvffwgfvvfvwwvwhggwghwgfwwwvwxwvvwwxxwxwwWhwwgwvwwwgwwgxxfgWfwwvWvffwwgwfgwwfxgWVfWfexfffgwwwxwwwwwgwwfxggfwwxwgwwwfewvwevvxwgfgwvxvfxwxgwvgxhxwwgwxwVxwxvwwwhxvwfvwewfgvwwvwxwfwvwwwvgwwggvwwvfwwwwwxwwxwxxwxxxhwwvwxwgwwxwxfwfwvgwvwgwwgxwwwwwxwvwwgxgwwwwxwwwvwwhvxhgwwwwwwvfwwwwwwwwwxwgwgggwwgwwwwwvwwwwwwwxggwwxwwVffwfwvvwwgvfggwxwwhgxxxwvxwwghwwxxhWwxwghhwgxwwwgwewwwwwWfwwggvwggwgxhhwwgwwhwvwwwxwwxwggwvhxwgxwhwxgwwfwgvwwwgwwxgWvwwwwwwgwxhwxwwwwXgwwxffwxwwhwwwvvwwwhgvwwxgwwgwwvhggxwvwwwwhgwwwxwwghxwfxwwwvwxwvwwwxxwvwgvwvwwwwwwxwwwgwgwwwwwgwwwwwgvwxwxxwwfwtgewwwwgwwvwwwwxwvvwwwwggwggvvvwwgvwwgvwxwwgwxxwgwwwVwxggwxwfwvwvwggvvwxxggwgfwwvxgxwxxwwwfvvvuvwgvvwwwgvvvwgwvwwfvufwfwwwwxwwxxgwvgweVwwfgwwuwwtguwwgwwgwxwxggfWvfvwwwwxhwgvwwwwgwwxwxwgfwvfwgvwwxwxWxwwwwwxgxhXgxggvwwggwgxxwxxhwgvgfxXxVxxxwxxgVfvuvggxwvuwfwfgVwgwwgWvwvwwwxgwvwwvwwwwwwvwwwwgVwwxwwwvwgwgwWgGxxwgxgwwwwvwwwwwwwgwwxvwwvwvwwgewvxxwwwvgfwgwxxxwwwwvhwgxvxxwwxwwwxwwvvffvwfwvxwwwvxwwxgwxwwvwwvwwwvwwxxxxwwxxwxxxvvvwwxwwxwwxhxwxwxwwxvvvvgxxxwwxwwxgwxvxfvwwwxwwwwwxwwgxxgwwvwwwxxwwxfwxgevfvvvwvxwwgfwfxwxGxwwxvxwwwxwxwxwwxxvwwwwxwxwfgwvwvwGwxxhhwxwwWhxVwxwwwwxvggwvxxxwwwwwxhwxwvvvwvwwgwwxwwxwwwggwxwwxvwwwwwxxxgxwwwxwfwwywwwxgwwxwxwwxwxwwvvwwwwwwfwwwwgwwuxwfwuwwwwwwwwvwwwwwvwwwgwvwgxgvvwwwvxxhgwwggwwwwfwwwwwwvwvwvgggwfvuwwwfwwvwxgwwwhvwxuxwwxxwwwwuwwwwfvwwwwwwwwvxwwvwhgwvwxvxwvwxvvwvvwvwwwwwxwwvwwvwgvwwwuwvwwvgwvwwwxgwwxgwwwwvxvWwvwwwvwwwwgxvwwgwxvvwwvxwwvWwwwWvwwxfwwwwwwguwxwwwvwwwgxwwwgwhwwgwwwxwwwwfggxvwwwwgwwgwwWwwxuwvwgXwwxggwxvwwgwwwvwwxwuwwwwwfwwxwwwwgwwwwwwwwxwvwwwwwhwwwwwwwwwwgwvwwwvvwvxwxuwxfxvwvwwwwxwwugwwwwuxwwgggvwwwwwwvwwwwxwwwwwwwwguxwgvwwwwwwvwwwvwwxwwwgwwfwwuwwwwvwgggwwwwwwwxxwvvxghwwxxgwxfwuwwwvwwgWwwxgvwwwwxwwfwvwuwwgwwwWvvwwuwwwwwwwuhwwxwfwwxhuwwxvwwwwwxuwwxwgxwwwgwvvxxwvwxwxvwwxwxwwwwxwxxxxwwwxwhxwwwwwwwwwwgwhwwwwxxxvwfghxvwxxwwxwwxwhxxxwwWxwhvwwXwwxxxwwxwxwxwxwWwwwwwxxwgwwwxwwwwwwwwWwwwwwwxxhwgwwxwwwwwxvwwwwwwvwwgwgguwxfXwwwxuwgwwwvwwwwvwwwxvvwvwwwwxwwwwfuwWgvwwgwwgxwxwffwwffwggvwfwwwgfwvxwgvwvwwgwwwgwwfwwgfvxvwwvFgfgwwWwwwwwggwgxgfvwwwguvxgVegvfwggvwxwvwvwxgvwwwwvuwxwwwhwxvvwwwwvwgwxwgevWwvggxGwxwwwwwwwfvhvwvwwwfwugxvGfwwwwxwwuvvxxggwfgwwvwwFfwxwxgwvwwxxwweuggwvwfugxwxfwwwwvggvxwxwwfwwwwghwvwwgwgvgwgxwxgwwgxxwvFgvgvwFxxwfwfwhvgfxhxVxxwxgvwgfffwgwgguwwwwwuwxwvfwfwwwggvxxwxxxxxwwvwhwwxvwgxvwwwwWgfwfwVwwwwwwvwgwgxghGxvxwwwwvvvugwggtwwvwwwfhwhvwwwwxwwfwfWwwvgwUfvfwwxwwgxvgfvwxwxfuwxwwhxxxXxggUgWfwwvvwwwVfwgwwwWwwwgwffwwwXvwxvwxwwwwhwgxhwgxgwwwwwhwwfwvgwwwfwxwgwWvwwwwxwxwwvxxhghwvwxxwxvwwvxwgwwwwwwwfwfhxxwwxvwwwwwgwwwwwxvvxgfVwwwwwwwxWfwgxxxgxwwwxhvfvwwxwxwxxghggwgwwwxwhgxwvfwwgwwgxxxwwwwxWwxxwgwhxxwwwgwxwwgWwgxwwggwwxwwwwgwwwwgvxwwwwxggwwwgxxgggvwhxwwxxwxxxwwwhhgwxwwgwwhwxwwwhwWwhxwwgxwfwwxgggwwwvwwgwxwxwwgwvwwevvwvvgwwwvhvgvggwvwvgwwwwfwwfwwwgffwwwwvwwWwvwwwwgvwxWwfwhTcggwwwfwvWwfvwgxffwvgwwWvvwfWwffwvwvwwwvvwwgfggvgwxvxgwvwwwgffgwhwwwwxffvwwwwffwxwxgvwwvwwwwwvhvewwwxxwxxxwfvvvfgvgwwwwwwvwwxgwfvxwwwvvewvvgwvhwhvwwvvvwgwxxwgwwfffwwfvwgfvVfuvwTewhwwwvwwgxwwhffdffWwgwwxwwxtvvwWwWwwxxxxwVegwgfvwfwwxgfhvgwvwwhvgwgXWwVweuwVw7wxwhwhwwfugg8hewhhwhwvwgVewfffvwvxxwwuwwwgwwWwwxhwvwwvwwvvwwxwwvwxxgvwwwxxwwwwwwwfwfvwgvHgwwwvuwgvwgGWfwwwwwvvwvxwwwwggxhhwvwwwfwwvgvgvwvvwwwfUuwvgvwvxVfwwfvwvfwxxhwVfwfwvxwwfeevggxwwwwxwWgvwuvffvwwwwvwvwgWvfvgwxwxxwfwfwwggwwwxghghxxwhhvwxgwggwwvvwwwwwwwwwuuwwwxwwwhwwwvwwfwvvwwxxvxxwwwgxwvvwevwuwvwvhwvwwwwwwvwvvwwwgwvwxwwwwxgwwgwwwgwwxvxvvgevxvgwvwwxxuwgwhxgGvwxhwfgwwxgwxgwxwwwWwgxvwwxhwvffwvhvfGwxhhvvxvgXHewghwhwwWwwffgfvwxgwXvwwghghvvvwffwgwfwvwwwwwwwwxwwwxwwwxvwwxxvwwwxxwwxwvxxwwwxxxwxwwxvxwxwwwwgwwwxwhwvwwwwgwwwggwvwwwvwvxfwwvvwwwwwuwwwvwwwwwwvwgwfwwwxwwwfvxvwvwwwwvwwwwwfgwfwwwwwxxwxwwwwwwfwwwgwvwvwgffwwvvwwwgwwwwewvvwvwwwwwxfggwwwwwxwwwwvxwwvwwgwgvufffvvwvwwhxxwvgwwwwgwwwhgvgvxwwxwgwvvwfvuvvwvxwwxffVgwvvvxxxwwvwwwvwwwxwwwfwwvgwvwwwxgvwevwgVfwgwwwvwvwxwfgwwwwgwxxfvvwwggwwwxxgwfvwwvxgwwwxxhwvwwxwwwhvwgwxwfvvwwwxgwxhxxwWvvvgWwhwgxxwwfwwwwwvwwxfvvvxwWwwwxwwfwvwwwwwxgwxxxvvwvwwfxwwfvwwxwgxwwxgwgwwvffvwgwwvwwvwfwxgxhgWwwwwvgwvwvwwwxvvwwwvwwwwwwwwvwwggwwhxfvwvwxwhwvwwwwgxxxxxvwVwwwvhxfwfvgwxwxxgvvwwxwwxxwwwwwwxwwxxxxvwwwwvvwwwwwgwvwvxvwhwgwxgwgwxwwgwwxvfgwfwwgwxxwvxvwfvxwwfwvwwgxwxvxwwxwwxxxwwwxwwwwgfgwwgfvwxgwwwvwvwxxxxvvwxhWxxwwxhxwxxwxhVgvvxxwgxwhxhwhwvghxwwgwxwxwwXhXvhxgxwxwhggxxwwwgxwwxwwxvwvvwxWxwxxhwwxwxwwwxwwwvwwxxwwxwwxwxwvxxgwvwwwvwxwfvxwxwwxxwwwxvwgwwwxvwwwwxwwwwwgwwwxxwwwvwwgwvwwxwgvwxgvvwggfwwwWwvvxwwwwwwwvvwvwwwvfvfwwwwwwxwvvwwwwwwwwvuvfwfvwfxxwfwwwvxwwfwvggwxxwfugvVvwwVffvwwVvvxwggvVguwvEvvxwgexxgwgfwwfeudwVuxwwwwVvuwugvwwxxxwwwVuvxxwdwgwvwwvwxxwgwgwxgvwvwwvvxwggwvvwwwwwwwgwwwvvvwgwgwwwgwvwvwxwxxfewggwwwwwxwwwwwwwwxwgwwwwwwwgwwwwggggxgwgwwwwvxwxwhvwxwxvwwgwgwwggxwwvwwwwwwfgweuvwfuxgwwfduhgwwwwwwxwwVfuuxvwwvwxwvguxvwxgggxwwgfvgwxwwggwwwwwgwWvwgwhWWxgwghVVxvxwwgxgfgegtgfhghffuWffuewwxwvggwwwwvxwfwwwvwxgvwvxwwwwwxfwwgvuwwgwwvwwvwgwwxwwwwvfgvgfwwwfxwwgwwwwwxwfwwvvwvfwxwxxwvwwwwwwwwgxvwwwvwvwwVuuxVuwwgEvwvxwvuxwWggeVuwxXxxhwuwwgxXhfWhfvwwwVvugwgdwwwwxwvuwvgwhVVwxvfwwuwwgwwwwwxgfwxhxgwwwgxwvwwxwwwwwwwxxfwvwwhwhwwxxvwwwxxxxwwwwxwxwwvwwwwwwwwxwwwxwwxggwhxxgwwwwwvwxwwhwvxghwwvwwgxwhfwxuvuvvwfugxgwvhwwvwvvwgvwwwwwwgwvvwvgxwwxwxgwwgwwWvfhvwvwxwxwwvxwxwvvvughwwwwgvguwewxhwguvwwfgvgVfugwggwwwwwvvwwwwwvgvvgwwwgvwwwwwwvwwwwwgvwwvvwfgvwwxvfvwwgxfguwwwvwvvvfwwwvwgwwwwwwwwwwwwwxvxwxxgfuvwwwwxxxwvwwxxwxxfvuwveVefgvwvvwvVgwwwwwwwxwvffwwwgvxwgwvxxxwfffuxvwgfvgxwwwwxxwxwwxwwvwgwwvwwhwxxxxwxxxvwvggwwwwgwwxxwvxvwxwwwwwvwgwwvvxwwxwhxxwxxwhwgxxwwwwxwxxwwxwwhVuvgvgwfwfwwwwevwvfvwwwwwxwxvgggwxwxvefvgwwwxwwvwwwxxvxwxwwwxwxxxwxwwgwwwfwvwwxvwwwwwwxxgvvwwwxxwxwxxxwfvfwwxwxwxxwxwwxxwxwwxxxwxefVgfugVwvvwwfwfvxvfwwwxxxgvvwwwwxwxwwwvxwggxxhgfegwvgwwwwwwwwxwvwwwxxxwwwgwwxxwxwghwwxxwwgvvwwwwvwxxwwwwxxwwxxwwxvgwwwwwxwxxgwwxxxvxwwxwgwwwxufvvfwfvwxvgfvfwwfvwvgwwwwwgwxuwwwwwwxwwxwwwwvwwfvvvguwvwvgvwwwxxxwwvwwgwwwggwvwvxwvxfgvgvgwxggwwwwfwwvwwxwxwvxwwwVfwwwwwwvwxxgvwxxxxwxxxwxxxffvfggvwwggwvuwvfwvwwhgvuvwwvwwvvvfvwvwwwwvwwwwwwwgvwexwwgvvvwwwvvwwgwggxgwxwwgxvvwvwwwxwwgwxxwwxwxvwwvuwwfvuxwwvwxhwwxwwwwwwwwxxwwwwxxvufwwwwxwxwgxvwwxhvgxvxxwwwxwxguvvwfwvvwgwvgvgwwwuvwvwgxwvwwwwwxwvWxwxwwwxwuvvwvvvwvwxvvvwwxwxhwwfwwwggwwwwvwgwwwxuwwwgvwgwwggvwgvwxuwvxwfggwwwwwxxxwxfwxxwxwxwxxxfgvgwwwwwwxwvgwwxwwwggxwwwwxhwwxwwxwwwxxxwghvwwfvvwvvvgwwuvwxwwwvfwfwwwwwwwvwwwvvvwxxwwgwwwwwwxwwvvwwwwwwxwvwwwvwwwwwwwwxxwxwwwwvxwwxwwhwwgxwwfvvwwwwvwwwwvwfwwggwgwwwwxxxgxvxwwxwgxwxwwvwwwvwwwvxwhwwxxwxxxwxxwxxwxwgxwvwxwwwvvwvvfwwwwwwwgxwfvwxwwwwwvxwxxwxwvwxwvfvwvwwvwwxwwxwwfwwwfwwxwwxxwgxwwxxxxxwwxvwgvwvwwwwwxwgwvwwwxxwwwwxvwxwxwwxxhwxxyyxxwvwwwVewwVvvffwvggwwwwwWwufwfwwgwwvwwxwwxwxwwhhxwwwwwwxwwfwwwxwgvwgwwvwwwwwxxWfwuwxxwwxxxwxxxwxwxxxxxwwwxwwwwwvxwhxvwwwwwgxxxwxwxwxwwwwwwwwwwxvwhwxvxvwvwxgvxxxwxxxwwwgfwuwvvwfwfwwgwffwwxwwxwwwxwwwxwwwxwvwwwwwwwxwffwxhwxvwxwwxwwwwxwwxwwwwgwxfvwgwwwxxwxwxxwxwxxxxfwwwwxxwxxwxhxxxwxxxgwxxxwxWfwugfgfvwwvwffWWwgxgvxwwwwxxxxxxxwwxxxwwwgwgwwxwwwwvwxxxwxvwwxwwwxwxwwxxxxxvwwwgwxwhwhvuwwxwxwvwxwxxxxxxxxwwwwxxwwxxwxxwxxwufwwvwwvwwwwwwwfwfvvxwwwwwwwxwwwvwwwwwwwwwxwvvwvwwgvwwwwwwwgwwwwwwvvwwvvwwvvwxxwxwwxwgwwxwwwwwwwwwwwvwwgwxwwgwvwwwwxxxxwwwwffwwwwwwxwwwwwwvvxxvxxwwxxxwwwwgvwewvwvwwVxwwexvxexwfwwfeuwwgvwvxwgvwwwwvwvwxwgvwewwwgxvwwvvwwwexxxwxwwvxgvfvxwwgwwxxwwwwwwwxwwvxwwwfwvwwwwwxvwfwvwxxvwfwuxhwwwvwwxwxwvhwxvwwwwvwxwvxgxxwxwwxwxvwxxxwxwvwwgVegUvvffwgVewwffgxvwwvwfwgfwwwwxwwwffwvgfvgwwwvvvvxxwwwgwwxxxxhvwgfwweevVWfwwxeevwwwxevwwewwxvwvwxxxxffvwwgwxwwwwwxwwxxwvwwxwxwxwwxxxwxxwffuwwwgVwVwxxwwwewgwvwVxwvvvwwwwwgwwwwvwxwwwgxxwwwwwwwxewuwwwvxwwwehvxwwwxwwvgxxwwxwwwwxgfwwxhwwvfwfwvxfxwwxfwvxfhwvxhxvgwwxgwwwxwvwwxxwwxgvvwxxwxwwwwxggxwwwwvwwwvwwvwwwvwwxwwwvwwvxwvxfvwvfxvwvwvwvvwvwwxwwuvwwwxvwwvgwvwgvvwwwwxwwxxwwwwwwvwvwgwxwwwwwwwxxwxwxwxgwvxwwhwwxwxxxwxxxwwwwwvwgwwggvVwwwvvfwvwvvwwwfhvvwwhwxwwwwvwxxvwwwwevwvwwwwwvgguwwyvvvvxwxxwwxxwwwxwwwwwxvwwwxgwwxwfgwwwxwxxwwwxwvxxvwwwwvxvwwwwwxwxxwxwxwwvwfwwwwwvgvufxwwvwwxxwwvwwwxxwwxwwwwwxwwxwwwwwxxwwwwwwxwwxxxwwwxxwxxxfwwWwvwwgwwxwgwvvwwwwxxxwwxgxxwwxwwwwxwwwxxxwxwxwgvvwgvgwevgwwwWwvwvfwwvxvggwxwwwwwwwwwwxxwwxwevwwxwwvwwwxwfxwwxwwwwxwwwxwwwxwwwwgwgwwxwhwwwwwwxxxxxxxxwxxxwwwxxwwxxxwxwvfwwwvwwvvvwwwwfwwfwwwwvwwwxwwwwgwwgvxwwwgwxvvvfvwvxwVefvvgvvvwwxxvgvfvwvwwwwxgwgwxwwwwvwvxvwwxWgguwhgwwxwwwgvwxxwxxwffwwwwwwxvwgwgxwwhwxxwwfvxwxxxwwxwvvwwwvwwwfwwwwxwwfwvwvgwfwfwwfggwhwwwgwwuuwwWgwuwwwxxwgwvwvgwgwwwxxwfwfwwvgfvgvvgxggwwwwwxfwwxwxwwfwwvgwgwhwwwwWwuxwxgwxwwxwxgwxwxvwvfghhwxxgwgwwwwfxgwhwwwhvxwwwwwwvvvvwwwwwvwvfvwwwxgwvvwgwwgfgwwwxwvgvwxhxwwxwwxwvwwwwwwwwxwwwvwwwwgwwxwfvxxfwxxxvwwwwxwwwwxvvwxxwgwwxgfwfwwxvwwwvvxwvvwxvwwxwwxwxxwvwxhxwwwvwwwxxwwwwvwwfxghfwwwxwvwwxfxxwxwxwwhwxgwwvxfwxvvwwwwwgvwwxffvvffvvgwwwxfvwwwwhwwvxxggwgwxwwwwfwfwwwwwvwwxwwfgwwxxxgwwwwwwgwwwwwwvvxwwwfgxwxgvxwgvgwvvwwvwvwwwxwwwwwvwfwxwwwwwxxwwhxxwgxxxgwwwxvwwwwwwwwxwxwxwvwwxwxxxwwwggxwwgxxtvfvggvvvgvvvvwvvwwvvvwwxfwvgvfwxwvwwwvwfwwvwfwvggvwfwfvwwuwvwwwwxwvvwvvwwwvwwgwxwwwvwwxwwvwfvwwwwgwwwwwwwgxwwwfhwxwwxxwfxxxhxxwgwwwwvwwwwwwwugxwwwwwxxwxwwwxwxxxxvvwwvfvwvgwxgvwwfVgvggwvvdwwwxwvwwgxvwwgwwwvgwwwWgwwwWxwvwwgfwvvuxvwwwvwwwwwvxwwxhwwwxwwgwwxwwwvwwxuwwvfvwwwwwfwuwxwwvwxwwgvwwgwwwwwwxxhxwwwvxxwxvwxwvwwwwwvxwxwwwvwwewxvwwwxxwxwxvxxwxwwxxwwwwvvffdwuwxvvwwgfdwwgvvwgwxwUvvvvwwwwvvwvxwwxwweuuvwwwwwxvwwwwwwwwwwwvvwwwwvwwwxxwwwxxxwvwwwdfwvvuwwwwwdfwvwwwwuwwwxxWgvuvwwxwxxxxwwxwxxwwwwxewwfwwwxwvwwwwwwxvxwxwxwwxxwxwwxxwfvuggwvvvwwwxvfwwwwvvwwwwwwvgffwwgwhwxwwvwxwwwwxwwwwxxwvwwvwvwxvwhvgvvfgxvvgwvwwwvwvxwxxxxwwwxwwxwxwwxwuvwwwwwvwwwwvwwwgwxwwuwxvwxxwhxxxxxxxxxwxxwwwwwwxxwwwwwwvwwwxwuwxwxwxxxxwwwxwwwxuwwuwwwvwwvfuvwvwvgwwwwwvwwxwxwwwfwwwvwgwwguvwvgfuwwvwvwwwwwWwwwwwxvwvwwvwgwwwvwwvvwwwwwvvvvwwwvwvwgxVwfwwxxwwwwwwwuvgwwwxwvwwwxhwhwxfwvwwxvwfVvwxgFfvgxguuwgxwvwwwwgwgvwwgvvwwgxwwwggxgwvwwwwwWwhfwwwxvwwwvxwfwwwxwvwxwxwwgwxwwwgvwvxwvwvwwwxxwwwwwhwwvwxxxvwwwxwxwxwxvwwxwwwwxwwfwhfgwwwwvvwwwvfggwwxfVwwwwwwwhgwwwwwxxxwwuwvvvwfvwxwvwwvwwxuwwwwwwwwwwfvwwwwxxvvwwvwwwhgwgwwwwfgvWwwwwwwgxvwwwwwvwwwwwwwxwgvxwwwxxvwgwxwwgwxwvwwgvwxxxvwwxxwxgwgwwwfuwwxWwwwxeewgxwwwgwxwwvugWwwxwwxxwwwwxwwwwwxwgwvwwvxwwwfwwwgwwwwxwxwxxwwwwwwwwuxwxxvxwwwvwwxfwxxfvWwwvfwwgxxxwxxxxvwwwxwxvwxwwxwxwvwgvwwwwwxxxwwxxxvwxgwuwwgwwgvvfffwwgwvvffgvfwwgvwvvwvgwwwvwwwwwwwvwwwwwxwwwwgwvVevgggvwwffgvgvwwgwvwwwwwvvvwwwwwwwfvwwvwxwwvgvwgwvwvfwvwxwgwwwvwwvwxwwgwwxwwgvwxwWwWwxwxwvwwwwwvvwwwwwwwwwwxxwxwxwwwwwvwwwvgwgvxxwwwvxwwvvgwffgvwfgvvvfw6egvgwfvffvgvvwgwwgwwwvvgwwwfvxfvwwwvxxxwffggvwwggwwwgvwvxwwwwwvwgvwwgwwwwwvgvwvwwhfhvwwxggvxwvvxwfvvwwgwwwfvxgvxgwwxwxvwvwWwWxxwwxxhwwwxfwgwwwvxxxwwwgwwvwgvgvxwwvwvwwwwxwwxvhwwwxxxxwvxvwwxffgwffwwGvwevuwgfgwgvwUeugwwwwvggwvwwvwvvxwgvwwwwgvvwwwwvggvgvwwevuwtwwgfvvwxwxwwwwvwvwwwxwwwwvvwwwwwxwxwwwwwwwvwwwwwwwgwgwvvwfgwwgvgwvwwwwgxfvwxwvgxhwwwxxhwxvwwxwxwwwwwwxgwgwxgxwxxhxwvxwxgvwwxhxhwgwwxwvggwvgwUeugwwwwfffvwwvwvgwGwwgvvwxwwxxvwwwxwwwwxwgwgwxwxwwxgvgwwwwxwwwwvwvwfgvwgvwwwwgvwgtwxwxwwxwgxwgwhwxwwwwxwwwwvwxwvxgwxwwxgwhwwhfwwxwwxwxhwwxwwwxwwwxhwgxxxwxwwwwwxwwwwwxwxhwvgwxwhxxwwxgwhggwxxewvvggwfwvwwwxgxwgvwgxwwwfwvwwvwwwwwwxwxvfwxfvwwwxwvwwwxwhgwxvwvwwvxwxwgwwvvwgwguwxwxwwwwgwwxwwwxwxwxxgwvvuwwwwxgwgwwxwxxwxxxxwwwvwxVeewgwwgvwxfwxhwvvxgxgVvvvwvwvwvgwwxwxwxxwvxwvVvwwgfvvvxgwxxwwxvwwwwwwxwxxxgwvvvwwxxwwwxwxwgxgwwfxxwxwwwxxwvxwwwvxwxwxwwxxwgxxxxxwgwxxxwvwxvgwvvggvwwvxwvwvwwwwxfwwgvggwwxwfwvgwvwwwwwgvwwwxwxxwhvwwxwgwvxxxvvwgvgffwwxwxwvwwwwwwwwwwwwwvwxgwwwwwgvxwxxxwxwgwxxxxxxgewvvwwevgVvgxgwwxwxwwxggwvwwxgwwxwwxgwvvwxwwwgwwxwxwwxwwgxgvwxxwxwxfvwfwvhxwxvwwwwwxwxvvxxwxwwwxwwgvwxwwwxxxfwwgwwwwwwwwvwwwxwxgwwwggwwwwwwwwwwwwwwwwhhfwwwwwwxvxxwwwwxxxwwwxwwwwxvwwxwwvxwxxxwwvvwwwxwwwxwxwxwwwxfvwwgvvwvwgvvwwwfwxvwwwwvwggwwvxwxxwwxghgwxvvwwwwgwwhwxxxwwhgxgwwwwxwhwxxxxhwgwwwwxxwxxgwwwwxwwxxwxxxwwwwfggvwwwwwgwwwxxwwwwwxwxxxhwwwwvwxwwwwghxvwwxwwxwxgwwgwwvwwwxxxxxwwgwxxxwwxxxxxwwwwgghwxwxvwxxxxxxggvfwwvgwxxwwwwvgvxxwwxgwwwxwgwwwwxxxwghwxxvvwxgxwwwxwgwhwwxhxwvwwxhxxwxwxvwwwwwwxxxwwxgxxxyxxxxvxxwwwxhwxwwwxxxxdfwgwwwwwvvvfgwwvwwwgwwwgwwwwwwwgwwwwwvuwwwxgwxwgwwvgvwwwwvwwwwwwwwwgvwwwxwvwwwxwxwwwwvwvwxxxxwwwvvwvvwvwwwgwwwwwwxxwwwgxxhxxuwxxwwxxfhwwwvwwvwwwwfwxwwwgwxxwxwwxxxxwwxgvwwgwwwfwvvdvwvfwwgwwggfwwwgwgvgwwvfwwwwvwwwwwvgvwwhgwgvvwwvwgwwwvwwwvwwvwxxwxfwwgxxvwwwvwwwxxxwxxwwwxwxgwxfxwwwwgwgvdwvwgwxwwgwwwwwxxgwwgxwvwwxwwwvgxxwxwwxwwwwwxvxwvwwgxwxxwwwwwwxwwxwxwwxgvwwwegwWfuuvwwwFvwwwgvwwwwWguvwgwwxwwwwwvwwwwwxxxgVfvwwvgwwvwwgwwwgwwwxhwwxvwwwgwwwwxxxwgwxwwxwwvwewuVwvxugFgvvxwxghwwuVwvvxwwxxwvwxhxxwxxxxxVgwwwvwwwwwvvxwwwxwxxwgwwxwxwxxxwhxwwwxwxxxxwwxgffvufwwwwwwvwwffwgwWwgvgwwgwxhwwwfwwwhwxwwwggwxghxwxxwgwwgvgwwwvwvwwwwvvgwxxhwwwxwgwwxgwhwwxvwxwxwvxwwxwwwxvgwwvuwxxwwwxvvwwwXxwwwxxwxwxwxxxxxwwwxwxxxwwgxxwwwxwvwwwxxxwxwgwwwwxwxwxxxxxvwwwxxuvwvvwwwwgxvvwxvwxwVwwwgvwwvxgwwwvvwvwwwwxxwwgWwwvwvvwwwwxwwwvwvvwxxwwxwvxwvwwwwvwwwwwwxvwwwxwwxxhxwgwwvwvwwwwwwxxxvwxxxwxxxwwwwvgvvgwwvwwgxwwxwuwwxwgwfuwguwwxvwwwwwwxwvwwvwvwwvxwwwwxwwwwxwvvwvwwwwxxwwvxwwwwwwwwvvwxvvvwxxwwwxwxxwvwvxwwwxwxwwxxwwwxxhxwwwwwwvveWwhwwxgvwwwwvwwwwwvwxwwwwvwgwwwxxwwwxxwxwxwxwwxwwwvwwgggwxghwxwwwwfwwwxxxuwvwwxxwwxxhhwxxwvwwxwxxxwxwxvWwwfgwwvwwwwwwwwgwwwxwvvwwwxwxxxwwwgxvvwwwvwwwhwwxxxxwxwwxwwxwwwwxwwwwxwwwvxwwxwvwxgxwxwxxwxwxwwxwxwvxwhxxwxxvwwwwxxxvwwwwwggvwwwwgwwwwwwwwwgxwwfvvwvwgwwwwwwwxhvvgvwwwwwxxwxwwvwwwwwhwvvxwvwvwwwgvwwgwwwwwwwwwwwgwwxfwgxxwxggvxxwwwwwxwwxxxvwwxxxwvwwwwgwwvxWwvwwwvwwgwwwwvwwgfwwwwwwgwwxwwwwwxwwvwwxxgxgvwwwwwwwwwwhwxvgwwwxwxxwgwwxwwwxwvwgxxxxwfwwwwxwwwwwxwxxwwxwwgvxxxxxwxwwxwwwxwwwwwwwwwwwwgwwwwwwfwxvfvgwwwwfwggwwxgxwvwwwwxwwwwwwwwxwxwwvxwgxwwgwwwxwvwwwwxwvgwwxxwwwwxvwwggwvwwxwwwwhwxxxwwhwwxwwwxwwxxwxxwwxwfvvwvvxfwgvgfwxvgwxwwfwwwvwwgxwxxwxwwwwxwxxwxwvwwvwwwwwwwwwwwwwwggvgwwwwwwxxwwxxvxgwwwxxxxwwgxwxxwxxwwxvwwxwxxwxxxxxwvwwwxxwwwxwwwxxwgxxxwxvxxxwuwxvwxwvfvwweuwwghwWvfwwwwfwwfwWgwwvwgwuwxWgxwwgwgwwfvwwwwwwwgvvwwxwxwxwwwwwvgwvwwwxwWwxwxwwvvgwfvwgvwwvWwwwwwwvxwvxvwvvwgwgwwvwxxxhwwwhwvwvwwxxhxgxwvwwxwwwvwwxhxwwwxfvwgfwggwwwvfwxGvwwVwuwfwwvfwwWwwwuwvwfwgwwwvxwwwwwwxgwwwxgwgxwgwwgvwfwvwwwwwgwwvwfxwwwwwwwwwghwwgxgxwwwgwwwwwwxwxvgxwxwxwxxwxwgvwwxxwxwvwwxxwwxwwwxxxwvvwwwxwhxwgwxwwxvwxwxwwxwwxvwwgwwwwxVvvwgwwwgwvwwwfwvvwxVgwgxxwwvvwwgxwwXVwwwwfgwvwvwwwwxwwwwwwwvxugvwwxwvwwxxxgwwwxxewwvgxguVwwxwxwWwwwvgWwgwxwwwwhxwwxxxxwwxxxxwwwwwxwwwgwxxxwvwwwewwxxwgwwwwwxxvxvwwwwwgVwwgwwWfwwfwwwwxwgwvwwwxwvwggxfwwwwwgwxwwxxgwgwxgvwgvwwxxwwwxwgvvxxgwxxxvwwfwxwwwxwxxvxwvwwxwwxvwwxxhwvhxwgxxwxwwwxxhxxwhxxwxxwgxghvxxxwwxxgxwxwxuUvwfugvvvvvwvuwwwgwvgfwwfuvwvvvvvwwvwvwwwvfvwwgvvwgfeuwvuwwwvVvwgwwwxwfwvguwwvvwgwxvwvvvwwwwxwwwwwvvwgwwvwvwwwuvwwvwwwfvfuvwwwgwwvwwwvwwwwwwhveewWvvwvxxwgwwwgwxxwwfvwwvwxwwwxhwwxwwxvwwwfefwwvwwfewvgwwfgfvwwWfgwwvxgffvvvguwfwuvuwffwvfxwwgwgvvfwwWvwwwwvfgvwwwxvfwwxwxgvvvwwvwwwwvwwwwghuwwwwwwgfvvwwwfgxxxwwfuvgWwgwvwwxwffvuvwwwxwvwwwwvvvvwuvfwwvwwxwwwxgwxwWxvwxxwwwwwwxuwwwwvxewxvxwwvvvuwvggvfvxgwuwvfwfxvwwwgwvvfvwxvvxgwxxwvvfwwvwxgwvwwwwvefvgvvwwwwwwwwwgwwwwwwwwwwvgwwgwxvwxwwwwvhfgwwvwwxgxvvvwvfxxxxxwwwwWwvwwwwwxwvvwgfvwxWgwwxwvwwfvvwwwhwxxwvwgxgwwxwhvwgvWwwwwxwwwxwxxwwwwefgwvuwwggwfwhVfvwwvwfwvwwwfevwwfvwvvffwgxwwwvwwxwvxxxxgwfvwgvgvwffvxwwvvwwwggvwxwwwvvvwxvwgxxgwwvwwxwxwwxvwvevvgvwwwvwwwxxgwgvwgwWwxwgwfwgxwxvwxuxvwwxxxwgvvvgvwwwwwvgwxgvwwwwvwxxvwwwwvxxxxvwwxxytfwvgvwfuwugvwvvwxwvfwfwwvvvvfwwwwgwvvfwvvwfgvuwwwfvwwwwwwfvfvwvvwwwfuwxwwwwffvuwwxxvwgwwwwvwgwwwwwvwwwfwwgvwwwvwwwwwxxwwwwgwwfwwwwxWfwwwwwwxxxwwwtuvvvgxwudwwxxvwhwwxwgvwgwwgwhxxwwwxxwxwwgwgwvwwGuvfvwwwfwvwwwwuuwgvggwFuvfuwggvvwvWvuwgfgwvvWwvvwwwvwwxwwwwxwxgwwwvxwvwwwxwwvwwwWxtwwwxwxWwtxfvwgvvvxwvvfxwxvughfuwwwwwxgvwfwwxwwhxxwxwxwxwxxwwxwwwwwxxxxxwwwwwxxwxwxwwxxwgxwghwwwxfwugfwWvfgwvwvgvwwUwvuvwwgWvffwVfugwxhgwvvxwwwwxwwwwvwvvuwfvvwwwuwwwwwvwwwwgwvwwwxvwwxwwxxxwwwwxwwgwwUwwgvwwwgwvvwwwwwgwgxwfvvvgwhxwwxvwwwvwhwxxwwwfwwxxwxxwwxwwwwwxwwxwwxwwxwvxgxwxwwwxxvfwvvwwdewfwwwwfugwfwgvfwvwwxutvfwwwwwHgwwwvwwvwggwwwwxwwwwwhwwwwgwwwwwwwwxwwwwwvwggwwwxwgxuwwvxxxwwxxxwvwwwvwxwhxhwxxvfwvwwvwwxwvwwxxxwwxwxwwxwgwxwxwxwwxwwxwxwwwvvwxwwxwxwwxgxwxwxhwxuwvWvewwgvwevvhgwwegwvwwfwgvgwvvxgvwggwfwwwvwgwwvwfwgvvvvgvwxvwwwvgwwwwwvwgwvwvwgxvwwffwwwwwwwwwwwwwwwgvguwgwwuvwgfwwwwvvwxwwfgvwwwvxxwwwxxxwwwgvxxvwvgwvxxhwwwwxwwwwxgwwxwxwwgwgwxxvwxVwvwwgwwvuvwvgwfwwvWgwgevwvvwwxVvwvwffuwvwggfhvxfgxgwwwwwwxwWxwwwwvgwwwvwwwwfvwvwgwwwwvwwwvxwwwxxwhhvhvwwwwwvwvvvwwwwwwwwghwwgwwxggwwwxwxvwxxwwwhwwwwxxgwwwwwgxwhvwwgwxxxxwvwwxwwxwvwwfvwguvwwwwuvwwfvwfvwvvwwwwwwxhegfgwvwwwwwwgwwwwgwwwfxwvwwfwwxvwfvvwwvvwwwxuwgwwvwxvwwwwxvwxwhxvxxxwxxwwwwwwwfxwwvxwfvgWwwwxwxxwvgwwxxwwxxwwwxhvwxwwwhwxwxgwwxxwwwgwvhwwxxwxwxwwxwwwxvwhwvhwxvufwwvgwwwwwwvwwVfwwWvxvfwwwgwggwwgxwwwwwwwwvhwXxwwwwwwwvgwwwxvwwwwxwwwgwgxwvwwwwwxwwhxwwvwwxxwxxxxwgwwxvxhwwxwwgwwfwxxxgvwxwwxwwxxwuxwwxxhwxwxwgwwwhxxxwwwxxxwxxxxxwxwuxxwvvfvvgvgvvwwvfwvwwfwwwwvvfvvwvwwwvvvwwwwggtwwwvwvwvwwwwvwvwwwggwuwwwwxwwwvxxwwvwgwvtwxwwvwwfwwwvwxvwvvxwwwxxxxxwfVwwwggwxwwwwwxwhxwwwgwxwwxxwxxxvvvvwvwvvuvvtvfwfvwvwvwvvwgvvdvwwwwfwuvwwgvwwwvvwwwwwwwxwxwwwwwwwWvwfgwvwwwwxwWwxwgwvgwvwwwwxxvwwwwxwwwxwxwwvwfwtwwwwwwwwwwfwwwwwvvxwxgxxwwwxvvWwwgwwvwxwwwwwxvwwvgwwwxwxxxwvvwwuuwWgwvvwwwwvwwhvwwwgwwwfuwwwxwwwvuwwvwvwvwwvvwvwvwvwuxwwwwwwwxwvwwvwwwxwxwxwwwxxwxvvvgvfwwwwxxwwxwwxwwwwvewwwvwwwgwxwhwhxwwxwwvgwgwwxggxxxvwwxwwxwwwxwwxwxxgxxwwwwwxgwxvvvwvuuvvvgvwwwgwwwvuuuvWvwwwgwwwwwwwxwxwwwxwwgwwvvvvwwxwwwwwwgxwwwxxwufwwgwwxwwwxwwwvwwwvwwwwxwvvwwghvwxxxxwvxwwwxgxwxwwhxwvvwxwwwwwxwwwxwwxwwxxxwwwxxwwwuvgwwwwwwwvwfvwwwwwwvwxwwgwwwwwvwwwwwwwvwwvxxvwxxvvwwwgvvwgwwgwwwwxwfwwvwwwwxwwwwwwwxxwwvwxwvwvvxwgwgwwxxvvwwwwxxwwwxxxxwvwwwvwwwwwwwxwvwvwwxxwwxwxwgwvwfvfwgwwwwvvgvwwvwwgwwwwwwwffwwwwwvvwgeuvwwgwwvwwxxgwfvxwwgvwvxwwgvwwwhwxgwwwvwwvwwwwwxwwvwwwgxhwwxwwwwwvwwwvwwwxVvuwxxwwwwwwwwwwwwwxwwwwxxxgwxgwwwwwwvwxwxwwwwxwvwxxwxwxwfvwvVuvgguuwwwwvwggvwvwwvwxgguvwwwwxvwwvuwwwwxwxwfvwwvgwvvwhwvwwwwwwwvwwvwvwwwxwwxxxxwwwwwwWfuvufwuwwwxvvwxxxwgwufwugwwvxuwwwxxwfwvvwgwwwvfvxwxwwwwggvxxxwvwwxwwwfvvwfvgwwwvwwgfuvvwgvfwvwwxwwfgvwwwwxhwvwwwxvwwvwwxgwvwwwwxwvvwwvwxghwwwwxwwwvwvwwwxxvxwwxwxgxwhgvwvvwwwwxxwugwhwwxgxxxwwxwwwxxwwfwxwvxgvwwgwwwwwxxxwhxxxvwwuwwwfvvuwwwwvgfwwvWwgwwwwwgvwgWvuwvwgwwwgwwwggvwwwwwgxxwwwwgwgfwwwvwgewwgvgvwwfvwxgxwgvwwwwwwwgwwwwxwwxgwwuffwwgwvuwwwwuxwfvgwwwwwwwwwxxwwwxwwwvwwwwwwwwwxwwgxwwwxwwxxwxwhxvxhhwxgwvvgVgvvFewfvfewWgwgvwWwvwxgguvwwvvwwVvwgfgvvwgwxwwwwvwxwxwxwgwwwwwgwvwgwwwwxxwwgwgfxwghwvwvwwxwxxxhwwggwwwwxxxwxwxwxxwwwgvfgwvvwwwwwwfvgxwwwxwwwvvxxxwxwwwwxwwwxwxwgxwwgxvwwwxwhwxwxwxwwxxxwxwwwwghwxxwxwvwxwWvxwwwUddwgwgvvwwwwvvwgwvwwvffgwwwgwvwwgxxvwvwWwfffgfvwwwwgwvwvwggxxwwwwwwwwxwwwwwwwwwxwwhwwwwwfvwwgwwwwwgxxxgxxwxhwggvwwwhwxwxwwxwxwgxhxvvxgwwvwgwxxwxwwwxxxxxxwxxwwxxwxxxwXxwxwxwggUddvVvvwwwWwvvwwggvgwwwvvwvwvwwwxwxwwwwwwwwwwwwwxwwwxwwvwxwwwwwwvvwwxwwwggxwhgwwgwxwwwwwvwwguwxxwxwxwwgvwwwhgwwxwwxxhwgxhxwxxxhxvwwxxwxxxwxwwxxhgwgxxxxwxxwwwxxgwxxxwwxvvvwvwwwwwxwxwwwwfwvvwvwvwwwgwwuwwwwxwvwwgvwwwwwwwvwgwwwxwwwwgvvgwwhxvwwuwwxxwwwwwwwxfwxwxxwwgwvxxxxgvxwwxwvwwwxxwwxvxxxxwvwWxxwwxwxwwwvwvwfwfguwwwWwGfvwgxwxwwVvvfwtgwwxxxfvwwwvvwxwggwvwgwgxwwxwwwwxwwwwvggwgxwwxwwwgwxxfwwwvwvwgugwwxwvwwxwxxxxxvfwvwwwxxuwwwxwxwwwwwwgxxwwxwxwwwwwwgvwxxwggWxxwwxfwvwwvwwuwwwWwwxwuwwwwvwxwvfwxwwvwgwvvwxwwwwwwwxwvwwvxwwwwxwwwwwwwxxxxvwwwwgxxvvvgwwwxwxvwwwwwxwwvvwwxxwwwwxvwwhwwwwwwwwxxgwwwwxwgfwvvfGwwxxgvwvwwfwwxhwwvvxxwwxxvxwwvwwxwwxwwwwwgwwvxwwwwxwxvwwwwwwwwxvvvxwxwwwwwwwwwxwwgxwwwwwwhwwxxxvwxwxvfwxwwxwwxxxwwwwwwxxxwxwwxxwxxwwxwwvuwvuvwggvgwvwwgwvwgwgwgvvwvwgwwvwwwuwvvwfwwwwvgxwwwwvwgwwvwvwwwwwwwwxwwxwwwwwgwvwwvvwwhxwwuwwwwwxwxxwwwuvwwwhxwvwwxwwwwwwvvxwvvgwwwxxwwxvxvwwgwggwwvvwVvvvwwgwvwfxfwwwwwgwvwvvuvwewuuwwfvwwwvwvfwwgwvvwvwwvggvwwwgwxvwvwvwwwuwwwwwgwxwxgwwwwwxwwxwwgwwwwuwwxwxvwxvwwwwwxhwwwwwwwvxwxwwwvxxwxwvxfwwxwwwhxwwwwwwvwwvwfwwfgxwwvewvgvwwvwxgwwvxwvwwgvuwwwgwxxggwwwwwwwwvwxxvwwwvwwwghwwxwvwwwwwgwxwgvwwgvwxhwvvgvgvwwvvwwwxxwxxwwwwwwwxwwwxxxxvxxwwvvgwxxwxxxxwhxwwxwwxxxvwggfgfwwxgwwgwxuvwwgwvwwxwgwwhhwwwvwwwgvgfwwwxvwvxwwwwvwwwwvxwwxvwwvwxgwxwwwwwwwwwvwwxuxhwwwwxwwwwxxwwwwxhwxxwwwxxwwwwwxwwwwxxwxxwwhvxwuwwwvwvvvwxvUfwwfvfwwwwvfvvwfvvwwwvfuvwvuvvfvvfgvwfuwvwwwwwwxWuuwfgftwggvwwwgfwuwfwvwvvwwvwvwuxxvWxwxwgwwwvvxvuvwfvvfvwfwxxhwgvgwwwwxxwvwghxxghvwwvwwuufwXwwwwwwwXwwwfuuwwwxwwxwxwhwxwxwwvwvwgGtfwewwfevfw7uewgwfgvgfwfuFwvwfvwwffwvwwfvgwwfvVewxvwvwwwwwwwwwwwwwwvwewgwxxgwwfvWhcwwwwwgxwvwhwfvwHxdgvwxWvvxfwwwwegwvwvwxgvVgxwWxxxwgwfvwwwwvwwwwwwxwwxwxxwvgwghwwwgvwuhXxfwwfxvwwwxxwxwwwwvwxwxwwwxwwvwwgFfvwwwffvvwVeugVvvgvvxwxgvwvwwwwwwwwxwfgvvwwhwwxwghvfvvwuwvvvwxxwvvvwvwgwxwwvvvvwwhwxwwwwwwwwxxxwxwffwwwvvvwgwfvvvwgvwhwgwvwgvhvwwvwxgwxXxggxvwvgwxgwwvwwwwxxxwxxwgwwwwxwwxwgxwwxwxxwwwwvwxwfweewVgvxvweugeg7gwwgwfvwvwwvwwgwwwwwwwgxwVgwwwwwwwfwwwwwvwVvxxwgwxwvgXxdgxwxwguwwxwwwwwwwwwxwhwwvfwwvwvwwvwxwwwwxwwvwwxwwwxwwxwwgwxwxwwxwwwwwgwxxghwwxxxwxwxxwgxvwxgwvgwwwvhwwwxgxwwwwwgwvxwuwwwvwwwwgwwwxgwwwvwwwwvxwvvvfwwgvfwwvwwwwfwgxvwwwwwvwwvfgvwwwwwwvwwwwvwfwwwvxwgwwwwxgwxxwwwvwwvwwwwggfwgwwwwwwvfwwfvwwvxfvxwwwwxwwxwvwwwwxxxwwwwwwwfvwwwxxwwhwwxwwwwwxxxxvwwvwETwgwwwuuwwgwgvvvwwwwwwwggfvvffwwgwwxvfwwwgwvfvgwvwwvvvgxwwwwgwwwwxxwwwwwwwwwwwwwgvgxgxxxwwwwxxxwhgwwwwxwuuwwggfxxfxwwgwwxwfwwgwwwxwxwwxwwgxwwwxwwwwxwwwwwxwwxxwwwwxwwwwwwwwgwxwwwgxwwxwwxwwwxxxwvvgwvvvwfwfwwvvwwwwwwfwvwwwgVeUuuwwvvvfuuwgxxxwwwwwgfwwfxvwwwwwwwxwwwwxwxfuuwwgvwwwwwxwwwxxwwwxvvfwwvwvxwfwwwwvwvxwhxwwvwvvxvwwwxxxxxwwwwwxvxxxvxfwfggxwxwxwwxvwxxwxxgxwwxxxxwxxxxxxxxxxwhxvwxwfwfvvffvwwxwwwvwwwxwwwwxxwwUuuwgvXvwwwxwxvwvwvvwwxfxwwwwwvvxwwwxgwwxwwwwxxxwwvwvvwxxwgvwwwwwwVewxxwvvfwwwvxvwgxgvwxwwxwxgwxxwwwvwwxwvxwwxwxwwxxxwhwvxwxxxwwwfxxxgxwwwwwvvxgwvwwvufwwvvggwwvvwwvwvvwvvvgvwwgvgwwvvwgfwfwwwgwwwwvuwvwwvwvwwwwwgvxwwvwwwfwwfwfwwwwwwgvxfvfwwgfwgvwwvwwxwwwwgwwxffgwwxwwwwvwxwwxwwvwxxwvvxwxwwwvwwwxwwfvwVevvfvgwwfvwvfwtvfwvvvwvwwwwwvgwwwxwvvgvvgfvwwwwvwxwwwvgwwvwwgxwxwwwwxxwvvwwwwwwwwwwvwwxwgfxwwwwwvgwxvwxwwhwwhfxwgxwxwwwwxwwwwwwxxxxwwwwwwwwxvxwxwwxxwxwvvwfvwfwvwwvwvwwwfvvuwwvwwwwwvwwvgwvwwgvvvxwxwgwvwwvvwuwvwxfwwfvwvwuvxwxwxwhwvvwwwxwwxwgwfwwvwxfvwwgvxwxxvgvwghwwhhvxxwwwwwxwwwwwwxxwwxxwvwxxhwvwwxwxxgwxwxvwwfwvwwgwvxwvvvwvuwfvwwgfwwwxgwwfwhgwwwwwgwfwgwwwxvwwwvwwwwwvwwwwvgwwwvxwwxxhwwwwwwvxwxwwxhwwhwxgwxwxxvgwxxwwvwwxwhxxxxxxxvwwxwwwxwwwwxxwwvwxeffgwgggwvwwwwvweuvwwvgvvwvwvwvvvfvwuwvwvvvwvWfwfwvwfvwwwwwwvvvvfevvfvvwvwwggvwvfwgwfwwwvwwgUvvwvvwwvvwgvvwwgggvwxwwwwfvvvwgwwxwvvWfwvvwfwwgwwwvwfgwgvwwgxfwvgwgxwwxxvwxwwwgvvvgvxwwfvwwgwwwwWwvxwguwgwwgwwwwwwwwfvwwwgxwvwxxwggvwwgvgvgwvwvvwvfVufvfgeuvwwwwvvFewwxguvwwwxUefVgggvvWguwwwwwwgwwwfgwgggwwwwwgfxgWewwwwwwxffwwvxwwVgwwwvgvwfxWwfwwxgxwwwvhwffvgevxfvgVxgwvwxfwwvwfgxgxwwfwvxfffxhvwwwxwwwvwxxwfxwwgfwwhWggwwwwvwwwxwwxwwwwxvwvwxwwxwwwvxwxwgvvwwvVvuvwwwvevvWfvfwwwfvffvwwgxvvfwvwwwwDuufwwwwwwwwvwgfwugvfvfvfvffvwgfuwxwwwUwxwvggwwwggfwwvvvxxfwvwwwwvfwvwwvwgggwwwwxgvwggxxvuwvgwwwwxwwguwwfwgwgfwwguvvwxvwwwwvvwwhxwgvwxxgvwuwwwwwwgwxwwwwgghxgwwxxuxvfWwfwwwfwfwxwgDeufwwvfvwgvwwveuvgxwwgwxwvwxxxwggWwgwgwwwwwxwfwggwwggfxwwwwwwwxgWwwgfwgwwvwwgWvwwwvxghwfggwwwwxfuwvwvxxwxwwwgvwgVvxwgvwwwwwvwwwxgwwwugwwvwwxxxwwxwxwxwxwwwwwwwxwgwxwwgxwwwxwxwwwxwxwwxxvuvxVvwwwxugggwwgwxwwxwwwwwxxvwwwxwvgwwwxxxvfwwwvvwgfwwwwwgwwwuwvvwwwvwwwwwwwxwwxwwxwguwwwgxwwhwwhxxwwxxwvwgwxxxwxvvgvvfwvwvwxwwwwwwxwvwwwwvwxxxxvgvwWuwwffwwuxgwwwwwwvwxwxgWvvwxgwwxgwwxwwwefffwwvvvwwvwwxxwxxxxwvwvgwwvwxwwwxwgwxxxxxwwevwuwxwwwgwxvwwwwwWvwwwxwxxxwwvwvxwxwvwwwwwwwxxwwwxwxxwxwxwxwwxwxxwxgwwwxxwvwvwwuwwwvwwwwvvwwwvxxwwwxvwwwxwvgxuwhgvwWwwwwhvwhwgwgvwwxwfwwxwvwgwwwwwwvwwwhwxwfwwxwwxwwwwwwxxwwwxxxwxfuvwfvwwwwwwwwuwwwwxwwxxwwxwxwwwgxxwvfvfufwvgvwwgvgwvwxwwxwwwgwwwxwwxwwwwwhwwxvwwvwugxwvvwxxgxhwwwwwxwwwwwvwvghwwxwwvvffevxwhxxvvvxgwxxxxxwwxxxwxxxxxwwwwvgvwwvwwxxxxxxwwxxxwxxwxxuvvwvvuwwvfxvhuWufwfwxwwxxwvxvvwwvwwxvgwgwwwwwwwwxgwwwwwwwwxwvxxxxgxwvfwwwwwwwwwwwvwwwwxwwwwwwxgwwvwgwxwwxwxwxwvwwxwhxxwwwxxvwwvvwUVwgxwgwfvwxgvxwxxxfvvwwxwxxxguVxgwgwvwwwwwwwxhwxwwwvvxxxxxxxwwxxwxwvfwwwwgwwhwwxvwwxwxxwwxxwxwwwxxwwwwwwwxwxwwwwwxxxwwxwxxxxwxvwvvwwvwwwwwwvgwgwhvvvwgxwwwxgwwxuwvfwvwwvvgvxfvxwvwugwwfwwgwvxwxvevvwwwwUfuwwwxwvwwgwvwwwwwffwxxxxwxxwxwxvwffwwvwgvvhvwwwwwxgxxwxxxxxxxwxxhwxwwgwgwwwgvwwxxWwxwwwhwwhvwxxgxwwwxxxxxwhxwgvvwwwwwwxxwwhxwwvwwwwwxwwwxxwwwUuvfwgxvvwghwxxwxXwwggxhxwwxxwwxxxwxvwhwxxxvxwxwvwxxtwwwxwwwwwwexwwwxwwwwwwwxxwxwxwxwwwwgvvwwwfvvvwwwgfwwwgxgwwgwvxwwvwwgdvxwxwwxgwwwvvwgvwgfgxwwxwgxxwfwwxwwxxxwhwwxwxvewwwwvwwwwwwwfvwvggwwwwwwwfwwxxvwxxwxxxwwwvwwhgdwwvwVgwxwwwwwvgwwwwvwxvgwwvxxvfuvwgwwvuvwwwwwwvgwxwwewvxwwwwwgwwwxwhwxwxxwxxxvffugwvfxwxwxwwwfhwgwwxxwwwwxwxxxxhwxwvwwwgwwgxxwvwwgvwxxwwwvwwxxgwhxxxwgwwwxgvwwwxwwwwwuxfgwwwwwvgwwxwwwxxxwwxxxwxyvgwwgwwwwvvwwFfvhhwxwwwxwxvwwwwxwwwxxxxwwvggwwwvwvwgwwwwwfgwwwxvxwxwwxxxxxwhxxxwwfuvgwxwxwwwwxxvwwvfgxhwwxxxxwvxwxxwhwwxwxxgVggwvdwwgvwgwxwvxwxwwxxxxxwxxxwxgvwxhwwwwwwwvvgwxwhwwexgwwxwxwwwxwxwwxxwwwwwwfUfxwxwwvwxwwxwxxxwxwwwwwxwwxxxwwwxwwxwwwxxgvwxxxwwxwxxwwwwxxvvwwwwwwwwxwwwwwgwwvwxwwwvwvwwwwwwxwwwwgeevwffwvfgeevwvwvwwgwwvwfwwwvvwwwwwxwwwwvggvwwwwwwwwwwwxgwwwwwwwvwwwwwweewvwgwwvwwgfwxwvwvxxwvxwwwxwwwwgvwwvwwwwgfwwvwwvwwwxvwvwwwvwwfvwwvwwwwuuvwwwgwwvffuvwwwwfxgxvwwwfwwgvwvwwvvwgxfwxwxwwvvwwwwwxwvwwwwwwgxwwxfxxxwwwwwwvxwvxxvvwxwwvwgvwwwwwfgwgwwwwhwxwxwwwxwxwxxwvvvwwwwwwvvwwwwwwwxwwwwgwwwwwxvxwwfvwwvgwwwwwwwwwvwwwwxgwwwxgwvwwvwwvxhxwxwxwwfwwwxwwxwwwwwxwwwwwwwwxxwwxgwwwwwwxwvwvxhwwxwxwwvwwwwvwxhwwwwvwwwxhwwwgwgwwvggwfwxwwvxwwwvwxwwwfvwwwwwvwhxwwwwwgwgwwwxwvwhwwwxwwwwwwwhxvxveuwwgwgwwwvxgwwwwwwhwxwhwwwwwwwwwvxvwvwgwwfwwfwwwwwwxwwwxwwwwwwwwwwwxwxwwxwwwgvwwxwxxxwwwwwwwvwwwxwwwgxwwwwwwwwwwwxxxwwvwxwxvgwwxwwvwfxgwwvwwxxwxfgwvwxwwwgxwvxgvwwwgVwwwwwwwwwwxwwwwwxxxwwxxwwwwxwgwwwwwwwwgxwwwwwvgvxwxxxxwwwwwwwwxvwwxwwxxwxwwwxxwxwxwvwvhWwvwxgEVvxxwvxwwwwxwxwwhwwhwghfgwwwwxxwwwuwxwwwwxwwwwwwwxwwxwxxwwwxwxhwwwwwwwwxwwhxxxxgxwxxxwwwwxwxxwwxxwwfxxwwxxwwxwxwwwwwwwwxwfxwwfxwwvwwwxwwvwwwwwwwwwwvxwwwwfwxxvwuwxwwVwwgvwwwwwwfVvgwwxxxwgvvxwhxwgwwwxxwgvwwwwwwxwwgwwwwxxwxwgxwxwhwvfwvxwxwvgwwwwwwwxxwxfwxxxxxxwwwwwwxwxwwwwwxgwwwwwwwxxxwwxwwwwvwffvWxxxwwxxwwWwxwxxwhhyxwxxxwxxxwwxwwwwwxwwwxxwtwwwwfwwwxvwwvvvwvwwwwfwwgwwvhwwhwwwugwwwwgwhxwvvwwgvwwvfwvwwgfgwvwwvvvxwwwffuwwvvxgvwxwghvxwwwwwfwugvevwWfvuxwgwwxwevwgwwfvwwvvwwxwxwwwWfvwxxwwhwwWvwvxvvwgwwffwwxgwgvwwwxwxwwvwwxxvwwxxxwxxwwwxxwvwugvvwvvUdvwwFvwvuwvguvwwwvVvggwxfwwwxwwwwxwvwwwwggwgvxwvgwgwwvgfwwxwggwuwvwvwvwgwvwwwwgwwwwgwwxvwwwvfwwvxwwwwgvevwhwWwgwwwwwwwhvxwwxwwwxxxwxgwxxgvwwwwvwwvwxwwwgxvwgxwwwwwvxxxwwxwxxwvgvhvgwwgwwwwEugwfwwfvvvwwgwxggwxgwxwgwfxwwwwxgwwvvvgfgvvvfvvwvfvwfvvwwwwgwwwgwgwvuwwwvxwwwwvxwwWwgwhxwvvwWvwwfFgugxwggvWwwgwHxWgdwwwgvhgwxxxwhggwwfxxwwwwwVvwwwwwvxhgvvwwwhwWwgxegwwhwwwwwgvwvwwxvwgwxxwwwxwgwwvgwgvwWevWwwwfvvhxxgwwgwgwxwwwwwwwwwwxxvxwxxxwgWgxxwvwwvgvwwgwvwwuxvgwwvwvvwwgwwxwwwwvwvvvwgwwwvwwwwvugvwgggwfxxwwwwwWWhVxgwwhwwwwwwwwxxxvwwwwgxwwwhWvwwgwwwwhwgfvwwwxhgwwwvxwwgwwxgxwgwhgwgwgwvwwwxwwwgvwxvvxwwwwwxwxwwwwwwxgxxfewwwvfwwvwwwxwwvwxvfwfvuwwwwxwvvwxxwxxxvvwvwwwwvWvxwwwwVwwwwxwwxxxgwwhxxwwvvvwwwwwwwwxwfvvwwhwwVvvwwwwxwxxgwwxxxxwxwwgxvwwvgwwfexgxhwuwxvgwwxxwwwwgwxxxxxwfvwwgxhfvgwwvwvwvxxxvwwuwxhvvvwwwwgwwvwvvwvxwwgwwwxwwvuvwwwfwvxwvvwxxxwwwxwxxxxwwwxwxxxvwwxwvvvwwwwxwxwxvwwwxwwwxxwwwxvxxxwwwwxfvwwwwwwwxwwvvgwwfhxwvwwwxwwxwvwwxxxfvwwwxvwxwwwxwwvwwxwgxVwvwwwgwwwwxwwwxxwxuwVvwwxwhwwwwffgwwxxvwwxvgvwwvwxxxwfwugwxwxwxUvvgwuhwwxxxxvgwwvxwxxwxhvwvhwwwxxvwwgxwxxwgwwvxvwxfuwgwxxwwxxxfvwwwwwvwwwxwxfvwwxwvwxwwwwgwvvwvxwwxwxwxxwwwwwwwxxwxwvwwxwwxwwVfvwwwxwwwvgwwxwwhgxwxggxwxwwwxwwwwvgwwwwwwxgwxxwwwwwxxxwwxuUfwwwwvwxwfwfvvwvwvwvwwwwvwfwwwwgwuxewwwwUvfvwvvVvwwexvwwwwwVuwwwwvwgvvvvwdvwwvwvwgvwwvvwwvwwvuvwfvwgvvwwwfwgwuwwwxwxwggxwwwgwxhFwxwwwwxxwffvuuwwwwwxevxwvwxwxggVwxvxwwvwfwwwwwxwxwxwvwgwvwVvwwwgvggwwfxvdvgxwvwVvgwwwwxgffvxgwvwwwgwxewgwwvwgwvvgwfvgwwwxhwfggxwvwvwwwwwfxxewfgwxwwwxwvvwwVvwwwvuvgwwwvdvxwgwgwxhgwwwwhghhwwwwxxgwxwwvwwwwwxwhxghgwffwwxwghfxxwwxxgxhwxxgxwhwxxvvwwvvwvgwwfxwwwvvfffwwwgwwwfgvwwwwwwxxwxwxwtwwwvuxVfwgwxvwvvwvwfwdwwvwgvwwwwwwvxxgwwwwwwwwwwxxhhwwwwvfwwwvfgvwwwgefvugwwwwwgxwxwfvvgxhxxwxwwwwwwgxwgwwwwxxfvvwwwvwwxwwxdvwwwwvwwxxxwxvwwvwxwwgggwwgwvxwwhxxxxxwVvwfwxvvugwwwwfuwwwwvwuwwgwuvwwwxwxWhvwwwwwwxwxwxwvwwvwwwfwwwwwgvgfgwwwvwwwwgxxxgwxghgxwxgxxgwwxwwwwxgwwxxXxvwwewgwewwwvxwxfxxxwxwxxxwwxxwwwvwwgwxewxwgwxwguwxvvxwxwxxxxxwgwxwwwxxwwuwwgvwwvwwfwgfwxwfwfgwwwwwwwgvwwvvvwwwwwwwvwwvwvwgvffffvvvuwgvwhwfwvvwvgvwgwvfvuvguwwwxwwvwxxhwwgwwwxgwwwxguwhwgwwxfgwwwxVvwxwwwxxwwwwxgwwhfgwxxwxgwwgxwvwvvfwffwfwwxvfxwwwwhvwwwwwwwwwwgwwxxwwxwwxgwwwxgfwgwgvwwvffgfvvxwgvvwwwwwvwvvgvvxwfvwxhwwgwwwwWvxwwgwgwwvvwwvwgwgxwwfVwfwwvwwwgwwhwvuxvwwghxxwxgwwwgvggfvwvwwxVuwxxWvwwxhwxxwxggfxvgwwxxwwxwwwhxwhwgwvxwwxwwxxxxxgxwwxwwwwxwwwvxxxwhwwxwwwwwgwgwwgewvxgwwwwwwwvwgvvwxwwwxxwxwwwwwfvfvVvwxwwxvwgwwwwwgwwwxfwuwxxwwwxwwxwwwxxxwwxxgwwwwwwfgvwgwvgxxwvxvwwvghvwwxxgxwwwwxwwxxgwgwwxfxxwwgvwwwwwwwwwwwwwggggxxXfwwwwwwxwxxxxhwxvwwwxwwwvwgwWwvvwwwgvvwwwgwggvxxxwwwwwwxwxxgxvwxxxwvvwwwwgwwvwggwwwhgwwfwwwwgwvwgwxxwwxgwhxxxgwxwwvgwwwvhwxghxxgvwwWxhhwwwgwwhxhwvvwxxxwxwxwgwwxxvwwxwwwwhwwwwhvwhwvwvxwwxgwuwwvfwwwvwwwwwwvwwwvwxvgvgvwwwvvwwvgvwwhwwwwvgxwwwwwwwwwvwwwwwwxxwwwffwxxfvwwwxwwwwwgvwwxwwwhvwxxxwwwwgvwwwwwwwwwwwwwxxxwwxxgfxwxxwwwwxxvgwwTEvwwxwvvwwgvwwwwxwvwvvwwwwgvwwwwwwwwwvgvwgwwwwwvwwwxwwxxwwgwhwwgwwxxgwxhxxwgffxwwfxwwxwwwwwwxwxwwwhvvxwxxxwxwwwxwvxwwwwwxwwwwwwhwwhxwxxgwwxxwwvxwwvwwwgvvwwwWuxwwwwwwwxwxwxwwxwxxxxvvvgvvWuxfwwwwwwvxwwwwwwwwwwwwwxxgffwVevvvgvwwvwwwwwwvxxxwxxgwvwwwhxwwwxwxwwxwwvwvwgvvwwwwxwgwwxxxwwxwwgvxwxwxhwxwvvgfvvgvwgwgwxwxwwwgfxwwwwxwwwxwwwwxxwxwwvvwvwvwwfvxwwwwxwgvgxxwwxxxxwwwxwwVuffggwwwwwwwwwgxwxxwwxwxxhvxxxxwxwwwwwxwwwxxwwwwxxxxwwxxwwxwwwwwvwwwvwwwwvwxwvwggwvwwwvwwwwwwwwwwfwwwuWVuwfwgffxwwgvvwwwwwgVtvwvvvwvxvvfwwwvwxvwwvwwxgwvwxwvwxgwwwvvvwwxvgwwxwwwhwxhvwxxxxwVtwuvwwvwwwvvvwxxggxxxwwwwvwwwxwwwxvwxwxwvwfwgwVvvgwgxfwwxwwfgvvwvwwfwwvuwwwwgwvwwwxwwwwwxxvfvvwvdugwvvgwwwwWggvfxgxgeuvwggeuwxwwvgwwwwxvgwhxugvwwvffvwwwwvwwwwfwvvxwwwxwvwwvwwwwxwwxwfuvggWufwgxxxgggvvgxgxwgwwwwwvwvwxwgxxxxxwwvwwfwwvgwgwwfvwwfwwgwxwwwwwwwvwxvvxVgffvvvwwvvvwgffwgwwggwwwwvwwwwwwwwxxvwwwwwwwwwgwwwwwwxhwwwwwwxwwwxvwwgxwxvwwvwxgwxwxwwwhwwfwuwfwWwvwwwwwvwgwwxgwxgvwgwgwvxwxwwwwwwwxgxwVgvwwWgvgwgggvwvvwxwxvwwwxxxxxwxwvwwxwwwgetugwgfwwwxwwwvggwwhgxgxVwhwxwhwhgwxgxwhwwwwxxvwvwwgvgwwwvwwvwxwwwwwxwgxwxwxwxxwwwvxxxwxxxxwwwwxvxwwxwxwwwgxgxxgwxwxxxxwxwxxwhwxxwuwxgvwfWwxuwwgwxxfwvvwfvvwhwxvwvwwwxevwwwwwhvwgevvwvgfwwffwvwwfvgwwwwwwwwvvvwwwwwVffhwgwwxwxgwwgfvfwwfvwwxfwfgwwwwghxwvwwwvwwxxfwwwwxxxgwfwfwwwvvwwwwwwwxxwgxxxwhxhfwxwwwxwwwxxwxxwgvwxgwwufxvfvvvwexhwgvwgwhfwwvwwwfvvwvuwwwwvwwwwgvwxvgwgwwxwwwwvvwgfvvxwxvwxvxwwwxxgvvvwgvwwwwwvxvxgwwxxwgvwwfwfwwvgweuvxvwwwwwWwwxwxhwfvwwxgxwxxxxxxgwgggWvwxwwwvxgwhhgwgxgwxxxwwvwxxgxwxwwwgvwwwvwvwvvxVfwfwwwwxwwwwwxvwxvvwgwggfwwwwwVgvgwgwxwwxxwwxwwwxwghxxfwwwvfwwxggwgwvgwxxxxwgwwwxwwwxwxwwwxwxhxxwxwxxxwvwgwwwwwhxwgwxwXxghxwwxwxxwggxxwxwhxxwvwhvgvvwfuxxwwvwwwxxgxwwwwwwwxwwwwxwwxwxxgwvwwgwwxwwvwvwwgwgggwwxwxwxxwxxxggwxxxffuwwwvwwgwggwwhxxhwghxgwxxxxxxxwwwxwxxwxwxwwxwwvwwwxxwxWgwxxxxwwhxwwwxwxxxxvwwwwwwwxvgvwwwvvwvwwwwwwgvwwxxwvwwvwwxwwwwwwwxwwgwgwwwxxwwwxxxwwwwhwfwwwvwwwvwwwvvwwwwgvwwxxwwwwfwwwvwwxgvvwwwvxxhwwxxxxwwwwxgxwwgwvvwwxwwUVwwwwwxxwwvxxwxxvgwwwwwgxwwvwwxwwwvwvvxvvwwwgwwgvxxwxwgwwwwwxwwxgwxxwwwwxxwxfwxwwvwwwxvxxxxgwxwwwwgxwwwxwvwwvxxxvvvwwggfvwwwxxwfwwxwwwxwvfvgvxwwwwwxxfwvwwxvxwwwffwwwfwwfxwwwwwxgxxxVewwwgwwxxwxvwfwxwfwwfwwxgxvwwxxwwxxwwwwxxxwwgwwwwwwgwwwwxxwxxwxxxwxxwwwvxxwwwwwwwwwwwwwwwxwxxweuufxxxwxwxgvxvwwgwwwwwwxxxxwwwhgxwwwwwwxxwxxwwwwxwwgwwxwwwxwwwxwwvwwvxwwwwxvxwwwxwvfgwxwwxwgvwwxwwwwgwvwxvwwwwwvwwwwwwwwwgwgwxwvwwwxwxxxgwxwxgwwwxwxxwxwwxwvgwxvwwwggwwwwwfxxxwwxwxwwwwwgvwvwwvwgxwvwxwwwvfvvvwgwwvwvwwwwwvxwwxwwwxwwgwxvxwxwwghfwwwwgwvwwwgvwwwgxgvwvwwwwxwxwwvwwwgxwxwxwxwwwwxxvxgxvxwxwxwwwgxxwggxwhfxwwxwxwwwxwwwwwvwvwwvgwwwwwwwxwxwxwwwgwwxwwgvxwxwwwwvfvwgwvwwwwwwgwhxvxwvvwwxxxwvwvxvxwxwwfvvwwwwgwxwxwgwwgwxxxwwwgwgxwxxwxwwwgxxxgwwvvwwxwxwwwhxxxxwgxvwxhwxxwwwwwwwwwvwwgvwwvxwwwgwxhwxxwxwxvwwwwwwxwwwwxgvxgxvwvgvvvwwwgxwwxxwxxwvxwwwxwxwwvwvxxwxxxwxxxxxxxwwwwxxxwwwwxwxvwxwwwxwwgxvvvxwVwxwvwxwgwwwwwxwwvgvwxxwxxxwwwwgevwwwvwwgvwwwwvwwwvvwfvgvxwfwwvwwgwgwfvwwwWwwgvwwvwwvwwvwwxwgwwwwwxvgwwwwwxfwwwwxwxhwwvwwvgwwvxwwwfwwwfgxwwwwwwwwwvvgwxwwxhwwfxwwwwgwwwwfgwwwfgwfgwwfwwwewxvgvwvwwvvwxhwwxwxgxxwxvwwwwwwwvwwwwwvWguggxwVffvfxvwvxvvwgvwwvwwxgxgxvxgxvwwwwvxwwwwwxwwggxwgxwhxwwwwgwwfgxwwhxwxhvgxwxvwwvwgwwwxffxxgxwxvwxwxxwvvwwxxxgywghwxwwvvwwwxwwxwwvwvwwwwwwwxwgwwwxwwwxfwwxvwwwwwwgvwwwwwwWvwwxwxwvwwuwwwvwwvwgwxxggxwwfgwwgwwxwwwwfwwhxxvxwUxwfvwwwwwxhwgwwwwxgxxwgxwxwwwggvxwwWxwwWgxwxwxxfgvfwwxwxwxxxwxwwgwvgwwwfwwwwwwwxvwgvvwwvvwgwwwvwwxWwxwxgxwxwwwxxxwxxvwwwwwgvvuwwgvhvvwwhVhwxvxwgwwwxwwwwwgwwvwwwwgwwwvwwgwwwvxwxwgwwwwvwwxgxwxgxxwwwwwwwxwwwxxwwwwxxxxhwxwwwxwvxwxwgwwxwxwwxvwwxgwwhwgxxwufvwvwvwvvwvwwgvwxwwvvxwvgvegvwxwfvvxvwwwxvvhwxfvfvvvvvwgvvWvwgwwwwwwguwwvwwVvvfevgeevgvxvfvwwwgwgwwwwevvwveffxwfVuxvggvvwwxwxxxwgvvwwfxwwwwwxvwwgwwwgwxxxvffvfvvwfvwfhfvvxgwwgxwxfgxwxxhgwwgwxwxhwwgwWxxwwxwwwvwgwwwfvwvgggwwwwxwWfwwfwuwUfuuvvgwvwwwgfwgwgxvwxwxgwvhxwwfwwfwwgwvwwwgxwwwvwvxgwfvvfwvwfxgwvwxxvwwwvwwwxhxfxgxvefeuvvgvwwgxgvgwwwwwwxwvvvgwhwgwxgxwwwxgxgwXhxgwwwfvwvwvxwxxwxwwwgwwwwwxwhgvhgwgwVxxgxxxgwWwxxvevwvgvwwwwvwwwgwwvxwxwwwvwwgewvgwvfxwwgvxgxxxwwhuwffvvvvwvwfvhvgwvxwwwwwwwwwxfvvwevwvwwwgwwggxwxwwwxwxwxfwVVfUwvfwvvgfvwvgwwxxxxwxvggwwWwwwwwxwwhwgwwgwxwwgxwwUgvgevgwgwvwgggvvgwwwwwwxwxxxxhwwwhgwwwxhgwgwxxxwwwgwwwxxwvfffvvgvvwvwwgvgwwvvvwxwwwxhguvggwwvwxwgwxwwwgxwgwwwxwfwwwgwwwwwwvvwwwwwxwgwwxwwgwwgwvvhxgxxwxxwggxwxvWvwggwvgxwxwwwwwxwxgxvwwxxgwwXwgwwxwxxwwgwwxwxhxwvwwwgxfwxxxxxwgwfwgwxwxxxxxwxhwxwhxwwhwxxvwvwwwwwvvwvxwgvwvwwwgwwvwwuuwvwwwwxvwgvegwwvwvfwvvwwwwwgwffwvvwwwvwwwggwwwgwwwwfwwvfxwwwvwfwwwwwwvwwwvwwwwwgwwwwwwwwwwwwwxxxwwwhxxuwfvwvwwwxwwwvxwwuvwwwwwxgxwwgwwgwxwwwxWwxwwwfwwwwwwvvwvwVgfwwwvUwwwgwvvwewxwvfvwwhwwwewxwwwgwwwwwwxwwwXwwwwwxwwgvvguwvwwvwWwgwgwxvWwwXxvwugxxwwvwwwwwwwwwvwxwwvwWwwwgWxwwwwwwxwxwwwwxwvxxwwwxxwgxwxhwxwxgwggxuxwwwwxwxxwxwxwwxxxWwwwxwwwwfwwwvwwgwwwwwwvWxwwwwwwwvwwhwwxwwgwwxvwuvwwwfwgwwggvwwgwfgwwwwwwwggwwgwvwwxwxxxgvwwwuwxgwwwgWwwwwvgwxhwwxvwwwwwxwwwwwxxwwwfxwxwwxwwwwWwwgwwwhxvwxuwgxgwwwgwxxwxxvwxxxwghvwfwvwvvwxxwvfwvwwWvwxfwgxwwwwwwwwwwVwwwxwxhxgwwvwwwwhwwwwvfvvvwWxvuxfxxwwxxxugwwwwwwwwwxxxwwwuxwhgxxwwwvgxwwwwgwwwxxxxxwwxxxhwwwhwxwwwwwvvxxwvwxxwwwwwxwxwxwxxxxxsgwwgfwffwwwwvffwwgvfgwgvwfvvvwvvwwwvwvfwwwwwxVvfwwgvvwwffwvwvVdfffwgwwfvwxwgvwgfgvfvwfuwwwwwvwwwfwvwwwwwwVuwvvwvfvwfgvwwwwvfwwwxwwwfwxvxxwTvvwwfxxwgwxxwwgvvvwuwgvwwwvgggwfwwxwxvxwgewvxwwwxxxvwwxfhhwxxwffgvVuwugwwWuwwffwwwvgvESvwwwwwWvwwgwwvtuxxwwgfvwwgwgwfwwgxwvfwwgwwgwwfgwgfwwffxwxWvvwgwfwwgggwwwwgwwwWfguwwgvvxwwwvfwwwxfvwwxwxgfugggwfwwxgxwxfufwwxgxwhxxwgvggfhgxxwxxwwwwwvwwwwwxwwwwffgvwwwxvxxxxwwvwwwwxwwwxvxwvgxwxvwwwVvvhgwWvwwwwxfWgwgvwwgwxvgxwVewgvxfuwxxVuwwwwxvwvwwwfgfWfvwwvwffvwfgfwgfvfwwwVvwwwvwwfwwwwwwgwwwwwxwvvfggfwfvvgww5vewxgvgvvwxxxwvwwvgwxgggvwwxgwguwwWxwwwwVgefwwxFevgwxwwwvwxwvgwwfwgwvgvxwvvxwgwwwhfwfxxwwhwwwwxwwfgwgwvxgvggvxFUfghwwffgvgxwfvvxgwxvgwwwwxxxwwwwXVwwwwwwwgwwvgwwwgxvwwwgWwvwwwwggvwvxwwwvwwwvgwvwwgwwwwwwvvfdvwxgwvwwwwwxvVfhfxgwfwwwvwgwwgwfhfvvxvwwxxhxxhwvwgwwwwxwgvwWfgvxxWvvwwwwwxxwxwhwxgwxxuxwwhxwwxwwwvwxxwwvwvwwvwhwwfwwweuwwwwxwwwxwwwvwwwwwxwwxxxwvwwwfwwxxxwwxxgvwvwxwxxxxwvvggwwwwwwwxwwxwwwwwfwwwxxwxxxwwwgvwvwwwvgwgguwwwvwwwxxwwwxvffwwvwgfwwwwwwwgwwfwwxvvwwvvwwwvxxvwxwvwfvwwwvvxxggwwgxwwwvwwwwxxwvghwwwvwwgxwwwwwvwxxwxxfxwxxwwwvvwfwxhvwwwhwwwgwwwwvwvvxxxxxxvwgVvuwxwwwxwwwwxwwxwwwxxxwwfwfgwwvgwwwxxwvwxgvvgwwvwxxxwgxfvfwggfgwxwwxwxxwwxwxwwwwwwwxxhxxhhwwxvgfwwwwwvwvwxxxvxxxxwuuvwxxxxwxwwvgvwwvvxwwxwwvfxwhxwwwxvwwwvxwxwwwwwwxxxxxwggffwwxwwwwgwwxwxxxwwwxwxxvwxxwxxfwxxwvwxwxwwxxxwxwwxxxwwhwwwwwwwvvwvuxvffwvuggffwwwxwvwuwuhgvwwgwvwwvwwgwwweUWWgvvvfvfUwwwwwwwvgwwwwfgvwwwweuwwvxxwwwwgwtwvfvwgwevwwevwwwfxgwwwwwevfvwgwgwwwwuxgwxxxwxwvfvwvvvVvvwwvwwxgvwwwwwwwwgwvwwwxxwxxxwwwxwwvvwwvfwvWvwfufEfwvwwwwfvwwvtgwvTdveevgwfvwvgxxwwffvwvwvwwWwgwwtxwwwvwwwwwgwxgVvvwxVvvgwwwwwwVwwxfwxwwuuvfvvwfvfVhwvvwxwwexwgwwwVguxwwgwgxwvwxxwxwwwwxgwgwvgfuwgvwwxvwwhgwxgxwgxwwwgwwwxwxvwwwwwwwxgexvgvvVuvevuwvgfwwwvvxfwwvxwwvuwwwxwwwxgwwwguwfewuvfvwvwvgwuwvgggwwwwwwwwwvvvwwvgvwwwwwwgvwufgFvtwwwvgwwWgvvvxVwhwggxxxgwuwvwwvwvwWgehwwxgwwwhhgwgwVvuvxwvvxwfwwwgwxwwwwgfxwxxvwvwggfwwwwvwwugwwwwvxvwwVfufewwhfVwvwxwwvwwxewgGwwvwwgwwwwvwxggwwxfwwxggwxwwfwwfvuwfwwwwwfvwvwvgwgwwwwwvwxwwwwvwwwwwwvwwwuvxweuvgwwehxwgwxvhhevhghwxwvwvvghfhxvvfwxwwgvwwwwgwfewwwwwwxgfwwxwxxwvwxxwgwwWwvwwgufvvgwvwfvwwfvvwfvwvwwwwvwvgwwwfgwwwwwvwwwwxfwxvxfwVewWegwwfeugwggvvefwwfvwwwvxgwvgfvwwgwgwfvvvuvwwwwwwwgxfvvvwgewfwwvwvwwfWwwwwWwxvwhwwuwwwvvwxwxggwwwhxxwgwwwfWwfwwwvwvwwwgwwwwwwgwwxwxwvvwwwwxxgwgwxvwxxxwxxxxgfvwVevvfvvuuwgwgfwfwuwfuwwwwxwVgwwfwggwvwgxvgwwwwwwwwgxvwwwfwwwwfgeggVvgwuwvwwwwhwwvwvwwxgwegvghgwwvwgwwwwgvvwwhgvxwvxwwxvgffuvfgvuwgvgfvwwwwwWwwwgvvwxxwwxwxwhgxxXxfwwwwwwwwwwWvvgwvgevxghxwxwxxwwxxWxfxgwwwwwxxwhxvwxvxvugwgfgvwvvfwuwvvgwwggvwxwwgvwvWvwgwvwwgvwwhhxvwxuvwvfwvfffwugvvvvwwwwWvwwwwgWwwfwwwwwxxwgvwwwfxvwxgvwwfvwfwvvfgwuwwffwggwwhfwwWxghwgwwwwgwhxgxwwwhxhgwgwwwggwxfwgvwwghufvgwwwwvwvgwxXfwWvvwwgwwwvgwwwxvxwwxxxXwfwxwxgxxwffvvvfggvwvxxffvvwgwwfvwgwwwwvWwwhxgwwwwxhwwwxwwWxwxwwwffwwgfgffwwwgwvvwwwwxWgghfwxxxwvwxwvwwwwwgggwwwwwwwgwwxfwwwwhwwvwggwwxxwxwxwhwvwwxvwxhxwxwxvwvxxwwxxxhwwwxwwvwhwwgghwvxwwwwwhviwwwwwxwhhvxhwwxwwgwwwwwgxwwgvgxwwwwwwxuwwgxwwvwwwgwgwwxvvxxxwwwxwgvwgvwwwwwwwwwgvvxxwVwvwwwvvwwgwwwxxwxwwwwxffwwwxuwwwwwwwxxwgfuvgwwwwxwwgwvxwwxwxwxgwwvwwwxwwwwwwgxxgwwxwvwwxxgwgwwwxwwvvvvguvwwvgwvvxvuxxwwwwwvewWvwwwwwwggxxvxwxgvwwwwgwwxwwwwwxwwwwwwvxvwvwgvegwwvxwwwvwwgxwxxwgwvgfuvwxxwwvvxxVxgvwgwwxgwwxwwxwwxxwwgwwxxwwwxxxwxxxwgwvwwwxxwxxwwwxxwwxwwwuwvwxwwxgwwwxwwwxxwxwwwgvxxwwwwwwwxxgwwvwgvvwwwwwwwxxwfvvxgwgwxxwxwwwxxwwwwwwwwxgvwgwxxhvwwwwwwwvwxwwxwwwvvwhhfwxwwwwwwgxwxxxwwwwxghWxwxwxwxvwghwwwwwwwwxwwgwvvgwwuwwxvwwwwwwxxwxxwwxwwwwvxgwwwxwxwxwwwwwwxxhxxwwwxwxwvvvwgvWxwxwwwgwwfwxwwwwwvwvxwxwxxgxxxwxwxvxxwxvgwxxwxvxwwvwvwxxxxxgwgvvwwvwwxwwwwwvvwwuwvvwwxwuwwvwwwwxgwvfwvwuwwvwgvwgwwwwwwwgwwwvvvwwwvwgwuvwwuwwwwwwwgvwwwwwwwwwwwwwwgwfwhhvwwwWvwwwwxwvwvwwwvwvwxvxvwwxwvwwwwvwwwvwgxvwwwwwwxwwxwxvxwvwvwwvwxwvfvwwuwwwwfwwvvwgwwxxffwwvvfvwwgxxvwwwwwxwwgxwwwgwgwgwuvwfwwggxwffvvvxvwxvxgvwwwwwwxxwwvwxgwwwwvwvwwggxwwvwwwwwxghwxwwwxhxxwxxgxvwwxwwwwXwxfwvvvwxwwgwvwxvwxwvwwwwwwwwwwwxwgwvvwwvwwwvvwvhwwvxvwwgwvvvwwwwwgvgxwwvuwwvvwwwvvxwwwwvxwewwwwwwvwwwxgVwxwvwwgxwwwffhvxgwwwwwgwvvxhwfgwffwwxwwwwvwhvxwwwwxwwwxwxvwgwwxghWxuxwvvwwwwwfxgwwwwxgwxxwxxxwwwwwwvxhwwwuxwvggxwwxwwwwwhwxvwvwwgwvxvwwwxvwwwwggwvfwvvwwghwwuhwxvwgvwwxxgwwwwwxwwxwxwxwwxxwwxgxwwwgwwwxwwxxwwxwxfxxxwwwwwwwwvvwxxvwxxfgwxgvxvfwwgvwwvfwwgvwgwvvwwwvwwvvwwwxwwggfwvvwxxxxwffffwVuwwgwwvvgwFfguvwvwvwgwfvwwwguwwwwwvfdfgwwwfgwwwxwvfewxwgvwwwwwxWvwwxxxvvgwwevwWwwvxwxwgwwxwwxxxwwfgwgwvgwvwwwgfvgwvwwwwgxwwvvvwwwwwwxwwvwxxwxwxwxfxgvwwWggvghwxwFfvgwwwvwVwwwuwwvuwwwvxwwvftvgwxxxwxxugxvgwvwwfwvwWwwvgwfWxwxexvuwhfgfvvwgwwwxxgxwwwfwwxhxvwfxgxwwvffvwwwwvxwxxfvwWwfwhxgwvvuwwxxwxxxwxvWwwhxwwwgwwwvwwxwxwxwwgvgxxwvwfxfxwwwwxwxwxvwwwgwfxwwwwxvuwxwwwwwxwwwwfwwwwwggwxwwxwwwwwvwwwVwvwxhwwwwxwuwwwwvwxvwwwvvfgfggwwVwwwwwvwwgwwwwwwxuffgwgXggxxwwWwfwwWwwwwxwwwwwxxwhwxfxwhwfVvvwwwVwwwwvwwxgwxfxxwwxwwffwgwwwgxwwgwwwgxwhWxggwwuwvwxgwuwwxwwxgwwwxwwxwwfwgvwhgvxxgvvXxwgxwvhxvwwvxwhwwwxwwwfxwwwwwwwwxwwwgwxwwvwwWvgwvvhxVwvhwxxwwwwwwwwxwwxwwvwgwwxxwgvwhwxwgxhwhgwwxwwxxwvxvxxwgvxvvwwwxxxwwwxwwwwwwfwxwwwwWxgwwxxwwxxvwwwwwwwtvvwvfgvxvwfwwvvwwwvgwwwwwvvwvufwwxwvwffwgwwwwxxwgvvvffVvwfxvvvgwwvwvwffuvwwgvufwufvvvvugvwfvwxwwwwxwwwwwgvugffvwwfgfvuvvevwwwwvwwwwgeevfvhwwwfhevwfvgwgxgwwfufvvvwxxwxvwwwvvgwwwwxgevvgevggwhwwwwwwxxxxgwwwwxwwgvvvVevuVfvwwwgeVgfvevvgvgwwwwwefvvvwwuwwvwUdvvwwwgvwvxgwwvvvwvgffwwvfvvvffwwwxwvwvggfvggvvvgvweugwwwwvwgwgfwvwvwwwgwvfvvvvvfwvwxwxwvvwwwwwWwxwwwwwvvvwggwgfwwxgvvwfwhxvgwwwwvwfvgwwfvvggwgwwgwggwewggwxwuvvfwgxvwwwwxwwvgwwwwvhxwfvvwwUtwvxgwvwugwwvwvvwvvxxxggwffvwwwwhgwvvwwwgugwwxwwuvuwevevfwvwvvvfwwgwvgvwwgwvwvvvwvvuxwwwwwwuwwwvwwvvwfvwvvefwvwwxVWfvvvwgwWwgwhhwFvuvvgwGxgwxxwwuwwxGWehhwwvvwUvvwfwfWvwwwgwwwWgvwwvwwwuwwvvwgwwwxxwvwwwfvwvwwwgfwfvvvwgwvwwxgvffuwwgwfwggxxxgVffgwwwwwgxxhWwwwwxgwwwwwfwvvfvvvvfwwgwfgwvgwwgwwfgvgwvgvfwvvvwgwwwwvhvvwwwwwwwwwvuwwwwvWwwgwhvuwwgwgWeggxwwwwfgwVwwwwxwvgwwwwwwwvxwwwwuwvwvxwwhwwwvwgxwvggwxggWvvvwwgwwxewvwwhwwwwwwwwwwwwwvwwwwwvuwgvvxvgwwvwwwwvwwwvfwwwgwwvufwgwgutuwfwvwfwvwvvwwwwwwguwvwvwvgwwvwwwvvwwwwvvgvxfvwvvgfvvwwfwvxwwgvxvwwwwgfwxxgxxwwwwvgvvwvwwwwwfvwxwwfgwxxxwuwwwgfvxwwwwxxwxwvwwwxvwgwvxwfghwwfwuvwwwvvgvwwvwevwwuxgevvwgwwwwwwwwgwwwgwvwvxwvfwwwgfwfwwffxwgwvggwvwgvwxuwfwewwgfwxgxxwvgWwguwgvvvgfvwxxwfwxwxfxwwvvgwwwxxxgwWxwvvwvxwhgffuwwwgxgwxwwwwwwwhvxwxwwxwvxwhwxxvwwwwwwwvfvwwguwwvwwxwfvwvvwxwfvwwxxwwvgvtuvvwvwfgfwhwwvwwxwwvvwwwvwwwwhwxwxwwvvwwuwxvxwwvvxwhwwxwvvwwwwwxwxgwvxgxwxxfxxvwvwwfwwwwwvgwvxxxfwvwxxwhxgfxxgwwxvvwwwwgxwwvwxvvufxwwwwwvvwxvwxwwwxgwxwggwwVvwwxwvwvvfgwWwhwxxgwwxwwxxhxwwwgwwwwxxwwevvxwwxwwwwxwwxxxxwvgxwgvxhwxvwwwwhwwxwxwgwvwwxxwwwwwxwwwwxwwxxgxgwxxwxvggwwwvwvvwwxwwvgwwwwgvwxvwvwwwvwvgwwvwgwxvxwwwgetwwVewguuvwVewgfvwgvvwwgwVvfufvvvgvwwvwgeVvvwwwgffwwfwWgwxwvwwvwvwwwwxwwwwwwwwxwwwwwwwxxgvwxwxxxwwwvevgvfwvgffvuvwwgvfwvwgxffvvwwgvwxwxgwwvwuwxXggxgxwgwwvvwvwwwvwwwwwgefvwvwwwvfvwwgfvfwwgwwwwvvvwvwgvgvvwfvfvwwwfwvwgvwgfuwgvwffvWVvvgwwwwvwfFxgXTgvvwvwgWvwvwggdvwgVwWgUwWgewgwvwwwwwxwwwwxvwwwwwfwwvwwwgwwwwwwxwwxwgwwgwwxwwvwwxgvwgwfvwgfvwggvwgVehgghwwhwgwwevwgwvwxwhvXwgXvwvhwwwwwwxfwwwwwwwwvgvvgxgwwgvwgwwwwvvwxwwwxwwwwwxwhvxxwwgwgvffwVvewgwvwxwfVfvwfVvgvxxwwhgvgwvwwgfugwwwwwvvwwwwwhvwwfwxwwwxwgvwwwwwgwgwwvvwwhwwwwwwwxxxgvwwwwwxxgxwgwvwxgwwwwWvvwgwwggwvfwxwGWxwfgggvwgwwwwxgXfhvguxwgwgwfvWvwfuuvvwwwgwwwwwwgwwwvgwwwgwxwvwwguwwxwwgwxxwwvgwwwwgxfxwvxwgfvwvWwgugwgwwuvgfVwgGEwhgvwwwuhwgwwvgWVwwwxgwvwwgwxxxwxwwxwxhwwwwwxwgwwwwwxxxxxwxxhwxvwwwxwwwvwvvgvwvwwxwwexxwvwwwxggvhwgwxvfwxvxvwwwwhfwvgwxWfwvgwwwwhvwxxwwxxxwxvwwxwwwvwwgxwwwhwwwxxwxxwwxxxwwxgvwxxwwxwwwwxwwxwvwwwwwwwwwxxwwwxwwwxxwgwwwgvvvxwvhxvgxwwwxxxwvwwwhwvwwwxwgvwwvwxxwwwwwxwxwxxwwxwxgvwvvwwxwxwwwxwxxvwwwvwwwwwwwwwwxxvwxwwxxxwxvwwwwxxwwxwwxxxwwwwgwwxxxxwxxwxwxwwwwwxwxxxwwwwwxwwxwxxxxwxxxwvwgwwwvgwvxwxxxxxxwwwwvwwwwwwvxwxxwwxxxxxxwxxwxwxwxxwwwwwwxxwxxxwvwwvwwwxxwwwwxwwxvxwxwwwwvwwwwwwwgwxwwxxwwwwxwxwwwwwxwwwwwwxwxxwxwwwwwvwxwhwvxxwxxxxwwwwwxwwwxgwxxwwwwxxxvwxxwwwwwvwxwwwvwxwxxxwvwwxxwwxwxvwwwwwwwvwxxwxxxwwwxxxxxvvwwwwwwwxxxwwgxwwxwxwwxwvxwwxwwwvwxwvwwwwvwwwwxwwwwxxwwxwwwwwwxxwwwwwxwwwvwxwwwxxxxvwwwvwwwwvxwwxwwwxwxxwwvwwxwxwwwwxwwxxxxvgwwwwxwwwwxxwwxxgxwgxwwwxwwvwwwwxwwwxxxwxxxxxvwwwwwwwwxwxxwxxxwwwwwvvgggwwefwwwvwgwwwwgwwwxwwwxwwxwvxwxVvwvfvvwffvvvggwgvwwxwwwwxwvwwwwwwwgwwwwfxxwWwwwwfvgfwwvwvwgwwgvhgwwxxwgwxwwwvxxxxxxugvwvwvevvwvvxwvwwgwwxwxxwwxwwxwxxwgfgwvwwwvVvvwuvwwVwxwwxxwwwwwwgwwvxhwwxvvxxwwxwxxwxwfwwvvweevuwvwwwgwxgwfwwwwxwwwwwwwxwwwwggwwxxxwxxxvfvwwuvwvvwffwwwwwwgxvwwxxwwxxxxxxxxwxwfvwfgwxwwwwwxwgvwvxwxwwwwxwxxxxxxxxxgwwffwwwfwwvfwwwgwwgvwwwwwxwxwxvwwxwwwvxxxvfwwvvggeefwwwwwfwvWgwwwvxvwwxwxwxxxxxwwxxwwwwwvwfvvwgfwwwxxwwwwxxwwxxxwxxwxwwwfvvwwvwwxwxwwxgvxwwxxwxxxxxwwxwwxxxxhwwwvVvwwfwwfuvwwvwxgwwwgwwwxggxwwxwwwwwxxxxxxeevvwwwwwvwgwwwWewwwxwwwwwxwxxxxxwwvwxxwxxxVuvwwgwwvgvwxxxxxwwwxxwwxwxxwwwvgwwwwggwwxwwvxwxxwxxxwxxxxwwxxxwwvwwwvvxwxwwwwxvxwvxgxgwxwwwwxxhwwwxwvwfwxfwwxxwvwxxwvxxwwwwwwwxgvwvwwwvvwxxwvgwxxwxwwwxwwwwwwwxgvwwvwwwxwgxxxwvwwgxgwwwwxwxwwgwwxwwvwwvwwwwwwxxwwxxwwwwwxwwwxxwwxwwwwxxwwwwwxxwvwwxwwxgwwxwwxxwwxwwwwwwwvwvwxxwxwwwwxxxwvwgwwwxfwxwxwwwxxwxwwwxwhwxxwxxwwwwxxxvwxgwxxwvwwwwwxwwgxxxxwwvwwwwwxxxwxwvwwwxwwwwxvwwwwxxwwwwwwwwwxwwxwxxxwwwxwxxwvwxxwwwvvvwgwwwwwvvwwwwvwwxwxvwwwwvvxxwvwuvwwvvwwvwvfwwgwwvvwxfvwwwvwvgwwwvwxwwwwwwwwvwvwwvwvwwvwgvwwwwwwwwgwvwxvxwgwvvwvvvfvwwwwwwvwgxwfwggwwwwvwwxwwxxwwxxvfvvwwfwwwwewwwvxwwuwwgvwgwwwwvvwwvwwwxwvwxwwxwvwwvvwvgwvwvwwvxgfxfvwwvxxvhwvgfgxwwvwfuwwvvxwuwgwwwvwwwwvwxxwwgxgvwwwwvwwwwvgwwxwvgvwwxfwwwwwxwvxwwxxwwwvvwvwvvwwefvwwvfwvwwwwwwxwxxwvwxwwwegwvvwvfvwwhvfwwwxwxgwgwxwwwwxwwxvwwwxxwwwwvvvuvwwgwvvwvwwwwwwWggWwwxxxxwwxwwwxxxxvvwwwxwwwXwwxwwwwgvvwwwxwwwwwvwxxxgwwwxvxxxxxwvyfwgvwugwwvwwwwwgwwfgxvwwwwhwwvxwxwvvwgwvwwwwwvwgwhxvwvxwwwwwwwgxwwwxwwwxwwwwgwwwxwuvfwwgxxwgxvwwwwwwwxwxxwxwxwwxwvwxwgxwvwwwwwggVwwwwwwwvhwxwwvxwwwwwfVwvwxwguwfgwwgvgwguwvwgwwwwwxwwwwwvwwwwxfvwwfvwwwuwwvfweVwfgwwfwghvxgwffwvwwwuvwgfwwwwwuvxwgvfwuwwwwxefvgvvfvwxwwwxguvwwxhuwxwwxwxwwwvvvvwwvvfwwwfgwwgvwWfwwxvvxwwwxwwgwgxwfhxffwvvgwwwtvvwwhUgwwfvwvfhwxvfwWvwuugwwwwxxufgwvgxxxhvgffvwwwwxwwwvfwwhgxgxhwgwwvwwwhwwwwwxwxhxfwwwwxwevevgvwwfwwxwfgvgvwfwwvwwwxxhwxwwwxhxvwwwvvvwwxvwwfwwwwwXXhUgwwvhxwvwwxxvxxwxwhxuXwwvwgxvvugwfwwuwvwwdfwwWwfuwwwwwgvuvwwxvvxwxwwwxxuevffwfvvwWVwwXewgwxwwxgwwwhxwvwwwwwxWhwxxgxgwwwgvwwwwwuvhwwvwxwxgwwxwwwwwwxwxxxwfgwfwwwwwwvwgxXxfwvghwwxwwwxxwhxHgwxfvvvvwwwguvvvxxggfgvvgwwxwfwwwxxxxwwxxwxgghxgxwfwwgwggfvwwxwwvhHhfwwwWwwwhhxwwwXhvWvvvgwwuwfvxwxwwwwxwwgXwfgvggwwxxxxhxWwwwxvgwwwxxwvwwxYwxvwhwxwwxgwhwxwxxXhwwwwuwwwwwgwfwvwwxwwwgwwwgwvwxwgvxwvfgvtfwwwwvwvwvuvwwwwwwwwwvwwgwwwwwvwwwwxwxwwvvwvvuwwwgvfvuwxxvvxvwxwwwvwwxwwwwwwwwxwxwvwwwvwwfvvwwxvwgwxxgwwfvxwwwwwxwxwwwwwxxwwwfwggvewwwwwxvwwwvdgwwwxwvwxxwwwwwwwgvwwxgvwwwwxwwxwxxxwfVueefgvvwwvwweuffwwxwwwwwwvvwwwwwxhxwwvwwwwwxxxwxwwwgwwwwxfvvwxwwwwwwxwvvxwwfvvwwgwwwxxxwwgxwwwwxxvweufgvwwgwgwgwwwwwwgwwwwgwgvwgwwgwwwwgxwwgxwwwwhwwwxvfwwvuwvxwwwwwvuwwxxwwwwwwwgvvwgvxxxvvvwxxxxxwwwvwwwwwfvvwwvxvwxwwxwwvwxxfvvwgvxxwwwxwxwxwxwhvwwevVvuvvhwwwVfuwhvxwxxwvwhxwwwxwwxwwwwxwxwwwxwwVvuwevgXvxwwxxxvgxgwwwwwwwwxvxwwwxwwwxxwwwwxxwwxwxvwwwwvgxfvxvwvwxwxwwwwwxwfvvwxwwxwwxxwwwxxwxwxweufgvwwhwwwwxgwvwwgwxxxhxhwwwwvgwwhwwxwwgwwwwwwgvgwgwxwVvuwvvgvxwwwxvgVwwwwwwxwwvxwwwwxwwwxxxwwxwxxxxwwwxwwwwwwxxwwwwxwWgxwwxwwwxxwwwwwwxxvvwgwwwwwxxxvwwuxfvvwwxwwvwwwvwhuvwuwwvwwwgvugxxwvwxxvvvwwxvgvwxxxhvwvwvvvvwwfvwxwxfwxuvxxvvwvvxwwxwwxwwwwxvwwxwxxwxxvwvXvwwfwwwevwwwwvvvxvwxgvxwwvwxwwxvwuwwwhxuvwguxgwwgvxwwvhwwwxxgvxwxxxxxgwwwfvxwuwxwvwgwxwxwvwxxwxxvwwwwxxwfxwxwwwwxwwwgwwwwxxwxwxxxgvwwxvwvvwvvvvwvwwwxwwxwvvwwxvvwxwxxxwwwwwwfwxvvwggwvwwxwwwhwwxwxxwxvwwwxvvwwxvhwwwvwwwwwvxhwwxxxwxwwvvwxxwwwxwwwgwxvxwwxxxwxxxxxxwwxwvwwwfuwxwwxwxfvwwwxxwwxxvwxxwxxxhwxvvwwggvwwxwwvwxgwwvwxxxxhxxwxwwwwxwxwgxhwhwwwwwxwvwggxwxgwwhxxxwxxhgxvvxwwgvwxxxxwxxvwwxwgwwvwwwxwgWgwwgwwwvvwhwwwxvwwwwxwwWegwfwegvwwwwWevvWwvvgvwxwvgvwvxvvwwwwvxwxwwwxwxwgfwwWwwvgwwgfwgggvvwwvwwwwwwxxxxxwvfvwwwwggvvUffwgwwwwwwwwgvxwwxwwwwxxxwxxwwfVvvggwfgwgxwgUwwgxwfwvwwwwggwvwwfxwwwwhwxxxwhufwghwufvwffgvxwxwwwvxxwwvvwxgxwwxwxvwxxwxwwffvwwwwfwwxwffgfwvxwvwwwwwwwwxxvxwwxwxwxxxxffwvwwwxwwxwwxxgwwwwwxwwvwwwxwvwvwwwxwwxvhvwxxwgfvwgwvWwwwxgegwgxwVwfwxwwwwwwwgwwxwxxeUgwgwwffwweVWghwxgwgxxwgwwwhwwxwwxwwxwvvwwwwfvwUuvwxwxwwgwwwwxxwxwxwwUfvwwwwwxxwxwhfwwwxhwwwwgxwwwxxwwxxxffwwwwWggxVffwxwwvwgxxwwwwxxwwwwxwxxxxxxwfVvfwwxwhxxgwvgwxwwwwwhvgxxwxwxgwwxwffvwxwxwwwwwwwxwxwxxwxwwxxwwwwwwwwwxwgvwxfwwwhwwgxxxxxwxxxwxvwwxvwwwxwvwwgxwvwwwwwwwwwwwvwwwgvxwwwxxwgwwxxwwwwfwxgwwwwxwwwxwxwwwgwwwwxwwwwwxwwxxwwwwwwwwwwwxgwvwxxwwwwxxwxvwwvwwvwwwwwxwxxwxxvwwxvwxxgwxxvwwwwwwxwxwwxwwwwwvwwwwxwwvwvwwwwwwwwxxxwwvwxxxwwwwwwwwxwwwwwxxwxwwxvwwwgxxxwwwwxwwwwwwxwwwwvwwwwwwwwxxxwwwxwxvwwwwwwxxwwwxxxxxxxwwwwvwxvwwxwwxxwxxwvvwwwwwxwwwxxwxwxxwwxxwwgwxwwvwwgxxwvwwxwxxxxwwxxwxwxxvhwxwwwwwwxxxxxwxwxwwwvvwfvvwVfwvvwxgfvwfwvwwwufwvvwwwfvvwwwgwvwxuvgevwvfvffgwWuwxvvwwwvwwweUwvwwwuvvwxwxWwwtvwvvewxfvgxWwvwwwxvwgwvwfvfvxfvwxhuwgVvwgvwwwwwwwhwwwvxwwvwwwwwwgxwxwxwxwwwwvxuvwwuwwffwwWwwGvwwfvvwwvwwuwwfvwfvugwxwvuwwhwwwxgwwxwwwwwvwvefwfwtwwwwwwxwxwwgwgVuuwwfvwwvwwwwvvxvwwgxvhxfxwwtfvWfwggfxvvwwxXfwwwvxwwgwhwvvwxwvwwvwgfuuwgUvwwgwgwwwwwvwxhwwWuwwhvwwhwewwvhvwgwxuwxffwvevwwvfxwWvvvwwwxxvgxwvffvwxvvxwxwxwgwxwufwfgvvfgvvwwxvwvwgwffwgwvvwwwwgvgwwwwxwxgxwwwvwfwvvwwxwfwwwwxwwgvvwxwxhwwwwxwwhwwxUvvwvfwwxhwwxgwxwXvwwhwxhwfxxwxhwxXxxvwwgfggvfvugwfwggwwwugxwwvwhwgwwwhgvxvwweffwevvgwhwwvwwwxgvwGxvwvXwwxXgvhxwWxwwwhwgvfuvwwfwwwwwxwwwwxWxvgwxgvvxxwggwghwwxfwwwvwvwwxwxxvxggwwxxhxvxxxwwvwwwwgwwhUvwwfwwwwgxwwxwuuvgxvwgwvfxhfuwvfgwvxffwwvWwgwxxvwwfwwwwwxwwxxxxxvwwfwwwwvwfUwwwvgxwwwxfxwwxxxxvxwxggfwwwwxwwwwfxxhvwxwxgwwxwxhwuwxUvgvvvwexfwfwwwgxvwvxwhfwwwgwgwwwwxxxxfwvvwwfwwwvwgvwwwwhwvwxxwwxwvhwxxhwxxwwxwwUvwwwvxwhfwvwwwggxwgwxxwwwwwxxfwxwfvvgwxwgwwhxxwwwwwxvxxwhwwxvxgywxxvwwfwwvvvxwfffwfggwxwwwwwxxwxwxxxwwfvvvwwwvwgxXvwwxgwwwxxxxwxxywxwfgwfxwxwwwwwxwwhwxwxhxwwxxxwxxgwwwwvwwwwxxhxxhxwxxwwwxxxxxwxhwxwxwwfvwwwwwwgwwwgwwwxWxwwwwxxwxwxxxxxwvggwuwgvwwxvxwxxhxxwvxxxxxxxxxwhxxxwwwgwgwvwxwxwvwwxwxwhxwwwxhxwxxxxwxxwxvwhvgwxwwxwghwxxxxxxxxvvwwwxwwwgvxwuvwwxfxfwwwwvvvwwwgfwwevwvwfxvwwwwwwxxxwvvfwwwwxwxvwwhhxwwwgfwwwvvwwvwvwvxwxvwwvwfwwfwwgwwwwwwvwwvwxwwwxwwxxxuvwvvwvxwxxwxwwwxxwxvwwwfwwvwwvhewwgwgvwwweuvfvwwwwwwxwwuwwwgwggwwwvxxwxwvugwvgvhhxwxwhwxxwwwxwwwvvwwwwwxwwwxfwwgwvxwvwwxwxxwvvwwwvwwwxwhhxwgxxvvxwgwhwxwxwxwwwvvvuxvwvvwwxgxwvvvwvvwwwwxxxwvxuwwwgxwxwxwwvvfwggwwxxwwwxvwwgwwvwwwwwxxhwxvvwwwwwwxwxgfwwwwwwxxhxxxxxwxgwwwgwxvgwwgxxxxgxwxvvvwxwvwwxvvxwxwxxvwwwwwhwxxgxxwvwwwwwwvxxwwxxwwwxwxvwwwwxxxxwwxwxxxggwwgwvwwwxxwhxwxxxwxwwwxxxwxwxxxwxxwxhgwwvxxwxwxewxwwxxxxxxwwwxwwxvwwxfwwwwwwwwxwvvwwvxgwuwwwxxxvwwwgwgwwwxxxwvxgwxwxxxxwwwwwwwxfwwwwwwwwwwwwuwxxwxxxwxwwwxhxwxhxxxvxwxwwxwwxvwwwxwuwwwgvxwxxwvxwwxwxwxvxvxgxwxvwgwgfwwwwwwwgvXwxwvvwwvxgxxwxxxxxwwwxwwwwxhxwwxvxwxxxwwxxxxxhwxxxwxfwwwwwwxxxxxxwxuwwxwxwxwxxwxxwxwwvxwvvwwwuwwwwwwxxuwwxvxxwwwxhwwxxwvxwwxxhwxwwxxwwwxxwxwvxgxxwwhxxxwvxgwxxwxxwxwxxxxxxwxxxwxwxwvxwxxxxhwxwxxhxxxxxwwvvxuwxwvxxwxxxuwwxwxxwxxwwwwwwxxxxvxgxxwxxwxxvxxxwxwwxyvxgxxwxxwwxxwxwyuvwvwwvwwwwgvvwxwgwvxwwwgwgwwvgwwvwhwguwvfwwwvwwwvwgvWxwgfvwwffuwvwwwxgwwvfwwxuxwwxwxxgvxwwwggwgwfwfxxwvvwwvvwxwxwwgvxwwwwgguwwwwgwwwvfwwxvghwxwvwxwgwwxwhwwhxgvfwwwvwxwwwxVvwxfwvvvwwxwxwfvwvwwgwwffwwvxwwwwwwfwwwwgwfwwvwwvevvwwwXxewhwxwffvwwvwwwvwvwwwWhxuWhvhwwwfvwgggvwwwvfwvwgvwgwxvwvwwwxvxxvvwwgwvwwwxwvwvwwwwwwvvwxwwvxvwfWwxfvvwwfwxwvvwvxvwwgwxwxwwhxwwwvwwwwvwgfwwgwwvwwxwfvgwxwgwwwwwgWwwvggwfvvvwvffxgVwwgwxxwwxwvwwwwwwwwwxwwhvwxwhxvxwwwwvxgwwvgfvwwwwxgvwhxwvwgwxwgwvgwgwxhggxvwxgwwwgwxxgwxfhhwggwvxwwgwwwwwxhxgwwwwwgwwwwVvwxxvfwwxwwwwwwwxhxxxwwxwwxxWwwwwxwxwgfwhxvwwgwxvvwhewXwxwwwwxvwxgwxwxvwwwgwwwvxxwwgwvwwwwwwwwwwwfgxwxgxwgxwvxwwwvwwwwwwxwhwwhxwwwwwvwwwwxwxWhfxxfxxwvwwxwxwywwwwwxgwfwwvwwwvwwwwxfffvwwxvvwwvwwwxxvvwuvwvvwhvwwvvwwwwwwgwwwwvvewvgwwvwwgwwgxxxvwgefwvwwvwwvvwwwwxwvwvfwwxwwxvvwwvxwwwxvvvvwwwwwwvxwvgwwwgwxxwxewggwgwwhvvgwwxxhxvxxxxwwvwwwfgwuvwxfwwewxwwwvvwwwwxwwfwwvvwwvwvwvxxfwhxhwgwxvgwwwfwwwvgvwwwxxvwvwvvwwwhvhwhwvhghvxxwwufwvvwwwxvvwwwxvwwvwvfwxwgxwwwxwgwhwwwwwvwwwwwwwwwuxgwwxwwwwwwgwxwvwgwwhwxwwwwwgwvxwwwwwgvwvwwxvwwvwvwwwwwxwvwvgwvxwvwwwxxwxxwvwewwvwwvwuvvwwvxxwvgwgxwwwhwwxxwxxwxhxwwwvfwwwwwxwvfwwwwxxgwfuwwwwWwxxwwwwwwXfwxxxwefhwgvxwwxwfxxwwgwxxxxwxwwwgwwwwxxxwvxxwgxwwxwwfwvwgwgwwwfgwwhgvxgxvvvwwggxwwwwxxxxxvvxwhwwwwxvxwwvwwgxwwxwvhggwwxxxwwxwxhvvvwwwwwgwxxxvwvwxvfwgwxwwwwXwwwwxwwwwxwwwwwvvxwfgxxwgwwxwxwxwxwgWfwwxwwxgxwwwvegwwvfgwwfvwvfwvvwwvvvwwwvwfvvuwvwwfvwwvuwggtewwuvwwwuwwwxxvvwxwwvfffvvwVvfwxgwwwwWwvwwwwxwxuwxwguvvvwfvvvvvwwvxwwwevxvfvvvwwwfwgxxxwuwwvgvwwgwfvfwwvwxxVvwwgwwgxwwwvxwxvwwvuwWuvwwfuwwgevwxuwxwwfgvvguuwxwwfvgfwwwwwwwwwwwwwwUvuwxvwwvgwwwwxwfvwhxvvefvxwwwvwwhhvwtwwwxhvggwwwwuvvgvwwfvwwwxgfvvgwfwwwwwgvvwxwfxxvwwwwxvwwgwfefwwwwxuxwxugevwgxwvwxwwvhgxtxhxehwgggwwfxvvvwggvwgvvvfwvwwwxuvxwwffvgxvvgwxxxxxdfvwwwuwvwwxvwevxvvugxxfgvwgvwwhxhwxxwwvwvfwwwvvxwwwxwvvwwwwxwxgwxwwxwxxxvxwevvwwwwwwxwxxgvvwxwwwhughwvXxxxwwvwxxwgwuwwwwwvwwxwwfwvuxwvwwwxwwfwvwwgwwwwwxxxwvUvvwwwwhvwhxweuvxxwxxwwwwvgWwxWhvgwwwwwwwgwvfuuwxwwxxxwvvxwwxxwghxxhgvhwuwwgwxxwwxvvwgxwwxxwvgwwxgxxxwwxgwwhxvwxxxxffwwwwwvffwwwgvwvwwfvwgwwwvwwxwvwxwwwfvwwwxwwgwwwgTvvwwveuvvwwgwevwgwwwgvWwgvwvgvevwwgguwwwwgvvvwxwwgXwgvwvgewwvvwwvggwfvwwwwxuggwwwfvvwwwwwwvwxwwwwgvuwwxxxgwvwvfvfwwwgvwgwvwwvvwWwxwgwxgwwwwxwgvwxwwxxwxxwwwwggxvxxwgwwwVewvvgfuvggfVvfevwvgwwffvWwwwVwvwwvwvwvfwwwvwWevgwwxwwwhfwwxwfvwgwwxgvWffgwwwwwwwwwwgwGWdwwxxggvgwwfwwWxtwvvwhxfwvwwxvwvvgwfuvwwwwwvwwwgvgvfvwWwwwvwwhggvwxvwuwwwgwwxvwgwwhwWwwxwwxgwgvwgwhxwgvfvvwwWWVxgggwvwwxwwgxVvwgvvvwwhwhwguwxwfwwVewwwwvwgwgfvwxvwwxugwgwwvwgvwwwvvwxxgfvwxhwhwgwgwUvgwvgwwgwgwwwwvgfVwhwwwxWwwvffvgxxwgwvwwxwwgfwxwwgwwwxwxgvwwwxugwwgwgxvwvwwwXhewwxwxxwwgxghewwhxxxwwxvggfwwVvwgwxwwwgwvwvwwhHfwwhwwwwwxwwxgxwwxXvgvwwxhvxxgwvvwwvgfvwwfvwvwwfwgvfvvGgwwwgfwwvwvxxxhhhwwwgwxxgwwwxxhwwwwggwWwgwxwgfgvwgxWHewwWvwwwwwwxhhgwxwwgfwvwwwgXvwxwugvfwwfvwwwhgwvwgvwgWVxhwwxxxwxgwxgggwgexxxxhwwgwgvvwwwhwuwgwgwwgwggggwwwxxvxwxgwwvwVuwxggwfvwwwwwgVvvvwwwwwwwxvwwvwwgvhwwwxxffvuguuwwfwwwwwwwvgvwwwvvwvfvgwvvxwwwwxxfwvwufvwwwwwwgwwvwwwvwuwvgguwwxxwxvvvfvufwwwwwwwwxwwwwwgevwxgxwwxxwwxxxxugfgevuvgvwwwgvvwgxuwwxwwugvvgvwvvvwwxwwwwxxxwwwwxxxxegvvfvfvvwxvwwxfxwwwwxwvewgwwxwxwxwwwxxwxwxxxuuevvufUwwwxwwwvxvwvvvvwwxfxwwwxwxxfffuwgwfxvgwvwwwxwxxwwgwwwwwwwxxwwxxvwvwvvvwwxwwuwwwwvgwggvvwwwxxwwxwxwvfvvfffwwwwwwwwwwwwvwwvvwwwhxwxwwxwwxhwwfwweuuwwwwwwxwwwwxxvvwxxxxxwwgwxxwxfvvvwwwwxxwwxwwwwwxxxxxwxxwxxxwxwxxxxwvfvfuufwgwgwwwwwwwwwvxwxwggvvwwwxwxwwxxxwwxxxxvfvvwwwvgvwwvxvwwwwwwwwwwvwwwwhwxwwwwhxwfuuvxwgwwxwwxwwxwwvvxwvxwxwwxxwxxxxxxxxhxxxxwwwwwvvwxwxwwxwxxxxwwxgwvxwwgwxxwxxuvvgwvwvvwwwvwwwwvwwwwwwwwgwwwwwvxfuwwfvvvvvvwwxvhwvvwwvxvwxvvwwwwwvwwwwwwwwxxvwwvvwfvwwvwgwwwvwwgwwwwwvwxhvwwwxwwgwvvwvgwxxWwwwxwwxwwvvuwxwwwxwxwwwwwxuwvwgvfVvvvwvvvvwwxuwwxwwwvvgvwgwwwwgwwwwxwwwxwwvvwefwvvfvwwwWwwhwwwWggwWxvvwwvuvgwwwgxewvwxwxwvgxwxvfvwvwvwwwgvfwwwwwwwwxvwwvvxxwhxvxwwwwwxwxvfvuvVwvwwwwvxvwwxxwfxwwwwvwwwwwwxvvwxvwwwwwwfwwgwgxvwwgwxwwwwxxwxxwwxwfvwvfwvvwwwgwwhgwwwwxwwvwvwwhwxwwwwxgxwgxgvwxwwvvvwvwgwwffwwwgwxwggwwwvwhxxxwhfvgwvvwwwwvgwwwwwwwwwxgwwxwwfwwwxvwxwhwwwhvwxwWvvvwvwwxgwwwwxvgwwhwwxgwhwxxhvwwxwwxwwwwwvWxwwvwggwwhhwgxwwgwxwfxxwwwxwgwwgvvvwwwvgwvgwwvxgvwwwgxwhvwvwwwwxwwgxvwwwwwvxwwwwwwwwhgevwvwwwhxgxxwxxxxwxwwxuwwwwwwwwwwwwxwwvvwwwwwwwwvvwwwxwgwfwwwfgvuvwvfvvwxwxwwwwwwwwfwegwvfgfgwxwwwwwgwxwxwwwwvvwwwwfvwwwwwwwwfvvxwwwwwvwwwwwwwxxwwgwxwxxxwggwwwUuugwwwwvwwfvvwxvwfwwgwwwwwwxwwxwwwxwwxxgwvgxwwwufwwwwwwgggwwwvfgfwwgvewwwwwwwxxffwvhwxhwxxwwwvgvwgggdtVWxvwgwwhfxxgWwgfxxvdtVWgwgxwwwwxvwggxwwwwhxvgwfvgwvwwwUueggvwwgvwwwwgvxwxwwwwxwvgxwxxxwwddVWhfwgwxwwwwfxvwfxhxvwwwwwWwxwwxvwwwvvwwxwxhwwwggwwwwwwwvwwwgvwwxfvwwwwwwwwfvwwwwwwxwxwwwwwxwxwwghvwvUuegvvvvfvfxwvwvwxwxvwwhxwxxxwwwwwwwwwxwxwvgwwwgxeufgwfgwwgwxggwwwggeufgwwvxwxwwgghwxhgwxwxwweufgwwwwvwwgwwwwwwwwxwwxxgwfxvwwgwwwxxwxxxxwxgxwwwwwwfvvwwwvxxUuewhvwgwwwwwwwwwwxwwxxxwvwwxxxxwwwwxdtVVhvwgwwwwwxvvfhwvgwxwgwxwwwwwwwwwwwwghwwwWhfwweufgwwwwvwwgwwwwwwwxwwwwxwxgvwwgwgwwwwwxhhwxwxxxwxvwwwwvxwvwxxhvwwwxxxwwwwwgxfxwxwvwxxwvvvwwwvvfvuwvgvwwwwwxwguwvxwwwuwwwwvwwwwvfvvxuevwguwvuvwvwfwwvuuwgwgwfwdwvwfwwwvwhvgxwwvgwdfwgvvwvvwwwvuwwwwuwuvvwwwwwwwwxwxffwwggfwwxwxgwwgwwfwfwxxffewwwwwxwwwwxwvvvwweVwwVvuwvvwvwvvvdxvwvvwuwwvwgvvxwwvvxwfwwxwwxxvgvvwvwgwvwfvvxfwwgghvwwwwxugwwwwwwxwwwxxgvwwxvxuevvwuuwwxwwwvvvxuvegwwxefvwwgwwwwwwwxwvfwgwggwegwfgghdwfgfwuwfwwwxwxwwwwwwwuxuwwxefxgwwgfggfwvvuwwwwuwvvwwwwxwwwwwgwxweVgvgfvwwwvwvwgvwfxxhxvwvvwwxxwvwwwxvxxwxwwwwwwvfuwwwwwwvgwxwvxvxwwwxwvwwxxxxwxgwwxwfvxwwgxxhvwxwwxghuxwWwwwwwgvxxwwvvwvfwwvvvgwwvwfwwwvwVwwwwxvvvwvvwwwwwxgxwwwvvfvwwwwWwwWwvwhwwXXegxwhwwuvwgvwxxwwvxxhxwvwxfwvvhvwgxwgvvwwvhguwwhwwwwvwxxwxwwxvxwwwvxwxwwghxvwwiwuxwwxvwwxvwxwxxwwwwxeuwwvwgwxwgwwwwwvwuxvvhvvwxeuwvwwxxwvgwvwwvgxxvVgwwwwwxwxwxwwwfffwwwxwwvwwxfgwwwwvxxwwwwwxwvfwwuvwwwxwxxwwwwgxxuxvvxvhvxVvwvwwvwwwvwvwwvvwwwfvvwwxwxxvvwvwwwhvvwwwggwvvwwvwxwxxwvuxgwwwwwwvwwxfvwxvuwxxwxxxxwgwwwwxvwvfxwwxxxxwwuwgwwwxvwxwwXwwvxwwwxvwxfwuuwwwvxxwgwxwwwxhwggwvwwxxvuuwgfxxwvwxxwhfwwwwxxwxxvwxgvgwghwxwwwxwwwvwwwxwwgwwwxhxwvwwxgxxwxwwxxxxwhwxxgwwwvwxvvwxwwxxwxgwwwwwgvwxxvvwwgwwxxwvvfwfxxwxxxxxwxwwwhxwwgvhwxxwwvwvwxxgwvwxwvxwwxxxwxxgwxxxggxwvxvvwhwwxwxwwxwvwwwwwwwwxgwwwwxwxwwwwwwxwwwwxwwwvvwwfvxwfgwfwewxwwwwwfwwvggvfvgwfxwwxvwwwwwwgeTvuvUuwugwgVvuwwvwgwvvwwhwwwgwvwwwvvxwwwgfwgwwwxwgvefuwwgUvwgxxvwvgwwvwgvwfwuvwvvxwwwgwwxwgxxwggfvvwwwxWwwwwvxwwwgxwwxwgwVwwwwwwwwggwwvwwwwwwwwwwvvvwgwfwVfeuvwftuuwvgEfgvvwwfvwwvwgxwwwxwwwgwwwwxwwwwgwfwfggwxvgvvwugvwfwwWgewwwvXwewwwwgvwwwfwwvvwgvwwwWfvgwvwvwwxwxwwgfxwxwvwwhgxguwwhfwfwwwggvgwvvwvwwvwxwggwwwvwwfwwhwxggvwgwgwgghVwwwwgxfXffvWvfUwwwwvwwwwwwxwvvwwfwwgwwwwwwxwgveuftwwvVvxwwwwvgwxwxwgvwfgfgfwxvwvgwvwwwwgxwxeuvxwwwwuwwgwgwvgwxwWwggxhwVwfwwxgvwfwxvwwwvwxvwxwxxxwxfgtxwfwxggvwhgvxhwvgxfwvwvuwwwwxxwgwxwxxwxgwewgwwwwXggwvhxwGfWvWwevwwgwvwgwwvxwvfwgwxgwgwxxwwwfxwuwWxxhwvwwxwgxgvxwxgwWvvwwwwwwvwwgwfwwgwgwxwwwxwwxgvwgwwxwwhXffwwwWhwXUfGwvdvwvxwvxxgwwgwwwxwvwwwwxwxxwVuwfxhwwxhgVwxvwgxwWffuXwgevwwwwvfxwwwwwvxwwxwwwwgwfwuwwhhvvwvvwwwgVvgFugwwvuvvwwvgxwwwwwxwwxwxvvggvwgwwwwwwwwwwwgvvvuwgwwvvwvwwwwwxwwwffuwwwwwwhxewwwwwxwgwvwwvwghwwvvvvvwvwxxwvvwwwwwxwxvvwvxxxvfuwwwvwwwvwwvwwwvxevvwwfwxxxvwwwwwwwxvfuwwgvVwwvvfwvwwwwwwxvfvwwwwwwvwxvvggwxwwwxwvvwwwwwwxwxvwwxgwwxxwweUvvwvvwwwxwvwwwwwwxhgxvvvwgvwwwwxxvvggwwuvwxweuvfgwwxwxwwwwwwxwxxweevvwuvuwxwwwwxwwwxwwwvwgwwxwxwxwwwwgwxwwuwwwvwgwwwwfvvfwwxwvvwvwwxwvgwwxwxvfvwwwwwwwxewwwgxvxxxxxvfgwwwxxxwvvxxxxxwwwvwvxxvwwwwxwxffvxxwwxxwxwxwwevuwwvwxxwxxxwwxwwxwwwxxxwwvwwwxwxegvvwwwwwxvgwwwvwxxfuvwxwxwwxwxxwgvffwgvwvwwxxxxwxxxwwwwxwwxxwwwwxxwfvvwwwvxwwwvwwxxxxhwwxxwwwxxwwxwwwvwvwwxwwwggwxwwwxxwxwxwgwvvvgwwwwwwgvwwgwvvwwwwvwwwwwvffwvvfwvwwwwgwggfVvwwwgwwwwVewevvvgvuwwevevvgwvwvvgwwwwwevfwvfvVwfgwgggwwwgwgwwwwwVewvvwfwxwfvvwwwwwwwwwxxhvvwuwvgvvwwxgwvgwfvgwxwwgwvvvwvfwFgwwwhwvvwwwvwhxwwxvwwghgwxfxgwwwgwgwwwgGVwvufwVgvggfwvfwwwwwgwwggwxweevwvwugwuwvwwVwwwwwvwwwwfwwvvfwwwwwwgvfghvwgwwwwgwggwvwwwfgegwGgTGwuhvwwwwgvwwwwgwxwwxvuugfgfWvfvfwgggwvwvwxvwwwxwwwwwfxwwWwgwvwwwwwwwwvwfwwwwwwgwwwvVXgExgfhvwwvwwgwWxwwwxxxwghgwwwgvvvfvwvvwfwwwwwwwwvWfvvvwfvvwwVwvwgwwwwwwwxvvwxuwgvwwxxwgvwvvgvgvvwwwvwevvwvvwVvWwwxwXvwwwwgwwwwgwwvwwwwgggwwgwxwwwvgwwwgvwvwvgwwxwxwwwwwxgwghxwuwvwWgeXgfwwhhvwfwgwxwwfwwfwgWVxgwhwwvwwxgxwggwwgxwwfxWwgffvgwvwwwwwwxxwwfvvgvvwWwgvwwwgggwwxwgxxxhxwwvwfxwwgwwwxwgwwwvvfwvxxwxwwgwvwfwgWUgXvXwgvwhwxgfhwxxwxwwhwgwvwwgfwvuwvwvgwwxxxxwxvvweggFwgwhgxwxwwwgwwwxxgwwwwgwwwhvgufvwxvwwwwfgxwxxxWwvwwvvgwwvwwwgvxwwxxggvgwwwWvuxvwwxwwwvfwwwwwwwwwwfwwwwwwwwwfuwwwvwwwevxwxwwwwwwwwwfefudwwwwwwwweuvwvvwwwwfwfvwwTvwvvwvvwwwgwvhugwgvwhwwwwwwvvwgvfuvwwwwwweuwwwwwwwwwwevwwfwwwwxwdwwwxwwvwwwvvgevwwwgwvwxwvgwxwgvvwvxwwuwWxwwfxwwwwwxxwggwWwwggxwWfVvuwwggwgwwVduwwvwgwvggwwwxeuugvwfvgvwwwuwvgwwgxwwwwwgwfwvwgwwwwxwwgvvgugvwxWhuwwvwwhvwvwwwwwwwgxwwVhewvwvvwgwvwevwwvwgvffwwwgwwwwwwguwvxxuwwgwvgfwwwxxwwxgvgguvvwwwwvgvwgwwewwwwxwwwwwwheevwwvxwggVggwgwvgwxgfwwVwwwwggvfuuwgwwveuxvwwwxwwevgwgfwwwuwwgwhxwwvvfwevTvugwfwwwgvwwvwxvhfvvwwwwwwwgwwgwwxwwxgwxhvgvgxgwvvwxfwvxvwwdxwgxgxfvvxxxxxwhvwwwhgwwgxfwhwuvwwwwegwwvfxwwvwwxxwvWffuvwgxwwxhWfhwgwwwgxgWgwfwgvwwvwexvxwwWfvwwwhvwwwvfwwxxuwXwwxwwwwhgwwwwggWfwwwgwwwvwgggvvwwwggwwgvhffuvwwwwghXfWfgwxgghwfwwwevvvwxuwvvwvfwwvwwwvwgvVtuwxwwwwhWgwxwwxwxgwwxxfvwwwwwgwffvggggwwwwwvgwVxwxwwwwxvwwwggwWvvwg ================================================ FILE: examples/games/dibley.txt ================================================ DIBLEY ~~~~~~ Dibley is cat who likes to explore! Unfortunately he sometimes gets trapped. The challenge is to clear a path so Dibley can escape. Playing the game ~~~~~~~~~~~~~~~~~ The object is to get our feline hero Dibley to the exit and hence move on to explore the next level. On the way he will meet obstacles, turnstiles, moveable blocks of various shapes and sizes and black holes. The blocks can be pushed (one at a time) into the black holes, after which Dibley can pass over. Turnstiles can have one, two, three or four arms, and spin around if nothing blocks the way. Click on the menu option 'Demo' to see Dibley in action. Move Dibley using the cursor keys or by clicking/tapping on the 'Paw-Pad'. 'Save Game' makes the current game, and your position in it, the default when starting the program. In this release there are 27 levels. The first few may seem pretty easy but it does get more challenging. The difficulty is not in incremental order but try Level 8 for starters! Designing your own levels ~~~~~~~~~~~~~~~~~~~~~~~~~~ Select an object to be placed by clicking with the mouse and click again on the square to place it in. Don't drag, unless you want to paint an area. For larger blocks (ie greater than 1 x 1) click on one of the red blocks and you will asked for a size. Up to a massive 15 x 15 is allowed. Some hints when designing your own levels. * Do not place a turnstile so that one of its arms may come to rest over a black hole. * Save each level with an incremental number so one may link to the next automatically. * Restrain Dibley's movements with scenery on the left and right sides (not needed top & bottom) otherwise Dibley will 'wrap around' - then again you could make use of this feature! * The 'Lock' option allows you to enter a password so that your level may be locked to prevent alteration without the password. * It's a good idea to save the game before playing. For the filename use a two-digit number less than 100. Ideally the numbers should be incremental but its not essential. * After you've done some designing you will probably test it by clicking Play. You can play a while then re-enter the designer and make changes but click 'Restart' before you do so that your new level will return to it's starting point. Note however that if you test your game all the way to the exit any changes will be lost. So save first. By Paul Marshall 2001 - revised January 2017 www.DarkwoodDesigns.co.uk Modifications by R.T.Russell richard@rtrussell.co.uk" Cat graphic used is from www.clipartsgram.com/cool-cat-clipart-24233 ================================================ FILE: examples/general/banner.xml ================================================ BBC BASIC for Windows http://www.bb4w.com/ An implementation of the BBC BASIC Programming Language for Windows PCs en-gb Mon, 16 Nov 2009 17:35:20 GMT Copyright: (C) Richard T. Russell 2009 15 R.T.Russell logo http://www.bbcbasic.co.uk/rtrlogo.gif http://www.rtrussell.co.uk/ Default text for BANNER.BBC This program demonstrates a horizontally-scrolling banner across the bottom of the window Default text for BANNER.BBC You are seeing this message because the BBC's RSS feed could not be accessed Default text for BANNER.BBC This program demonstrates a horizontally-scrolling banner across the bottom of the window Default text for BANNER.BBC You are seeing this message because the BBC's RSS feed could not be accessed Default text for BANNER.BBC This program demonstrates a horizontally-scrolling banner across the bottom of the window Default text for BANNER.BBC You are seeing this message because the BBC's RSS feed could not be accessed ================================================ FILE: examples/general/bbcbasic.txt ================================================ BBC BASIC is the programming language originally specified and adopted by the British Broadcasting Corporation for its groundbreaking Computer Literacy Project of the early 1980s. It was designed to be simple enough to be used by a complete beginner yet powerful enough to cope with the demands of the very largest and most complex programs, and that remains true today. During the intervening years BBC BASIC has been extended and ported onto at least seven different CPUs and more than thirty different platforms. BBC BASIC for SDL 2.0 is an advanced cross-platform implementation which will run on Windows™, Linux® (x86), Mac OS-X®, Raspberry Pi, Android™, iOS™ and in a browser. It supports a number of major enhancements over early versions. These include data structures, an EXIT statement, PRIVATE variables, long strings, event interrupts, an 'address of' operator, byte variables and arrays, a line continuation character, indirect procedure and function calls, array slicing and improved numeric accuracy. BBC BASIC incorporates an assembler, making it practical to write programs which use machine-code for time-critical routines. Programs can also call Operating System API functions, both from BASIC and from assembler code. BBC BASIC for SDL is the Copyright © 2026 of R.T.Russell. The program and other materials are provided 'as is' and without any guarantee as to their quality or suitability. Although they are thought to be free from serious bugs, and it is highly unlikely that they could do any harm to other software or systems, there is NO warranty that they will not and their use is at your own risk. The supplied example programs and libraries remain the Copyright © 2001-2026 of R.T.Russell and others, but you may incorporate them in whole or in part within your own programs so long as any copyright notice is retained. ================================================ FILE: examples/general/ceefax.car ================================================ CEEFAX 100 Sun 01 Oct 18:26/55 ppppp `ppppp `ppppp #s#h||||j#ssh||||j#s#h|||| BBC j ,lj ,.j ,lj s j0/` |||jpssjjpj||j   (.//// (.//// (.//// ,,,,,,,,,,,,,,,,,,,,,,<,,,,,,,,,,,,,,,,NEWS HEADLINES...1015REGIONAL NEWS U.K. NEWS........1025ENGLAND....104WORLD NEWS.......1035SCOTLAND...105,,,,,,,,,,,,,,,,,,,,,,5WALES......106BUSINESS.........1145N.IRELAND..107POLITICS.........115=,,,,,,,,,,,,,,,,HEALTH...........1165 GLOBAL NEWS EDUCATION........1175AFRICA.....108SCIENCE & NATURE.1185ASIA.......109TECHNOLOGY.......1195EUROPE.....110ENTERTAINMENT....1205L.AMERICA..111SPORT............1215MIDDLE EAST112WEATHER & TRAVEL.1225US & CANADA113,,,,,,,,,,,,,,,,,,,,,,-,,,,,,,,,,,,,,,,Brought to you by BBC BASIC for SDL 2.0Brought to you by BBC BASIC for SDL 2.0#######################################h,,lh,,lh,,l`0p `0`0 p p`pp`0 p`pp j %zj %zj }~j5 ju>! tjupj50jup j %jj %jj 'kju`j5k40"jupjuu`p "###"###"###//-,,--.-..,/,-,,-,,,-,,//h,,lh,,lh,,l p `0pp0pp0p `p0 j %zj %zj }~ `j5j5z% j5 j %jj %jj 'k zz5z5j5pju? "###"###"###///,,,.,,.,-.,,-,.////////h,,lh,,lh,,l pp0p p`pp`0 `p p p`p0 j %zj %zj }~ p0tj5 j5 z5tj5 j %jj %jj 'k p0"juju0j5"ju? "###"###"###///,,.,/,-,,-,.,-.,/,-,.//h,,lh,,lh,,lpp0pp0pp0pp`0 `p p p`p0 j %zj %zj }~p0 j5j5j5 z5tj5 j %jj %jj 'kpz5p0z5j5ju0j5"ju? "###"###"###//,,.,,.,,.-.-,.,-.,/,-,./h,,lh,,lh,,l p `0pp0p `pp`pp j %zj %zj }~ `j5z5 jupjup j %jj %jj 'k zz5j5pjup`p "###"###"###///,,,.,-.,,-,,-,,////////h,,lh,,lh,,lp p `0pp0pp0p `p p p`p0 j %zj %zj }~t j5z%p0 z5tj5 j %jj %jj 'k"`j5j5p00j5"ju? "###"###"###//,/,--.,-.,,.,.,-.,/,-,./h,,lh,,lh,,l `pp`pp`pp`0pp0pp0 j %zj %zj }~ jujupju?j5"!z5 j %jj %jj 'k j5j5 j5j5x4j5 "###"###"###/////-.,-./-.,-.,,.,-.////h,,lh,,lh,,l `pp`pp`0pp0 j %zj %zj }~ jujupj5z5 j %jj %jj 'k j5`pj5j5 "###"###"###////////-.,-,,-.,-.///////h,,lh,,lh,,l `pp`0p`pp`pp`pp`pp j %zj %zj }~ jupj5ju?j5jujup j %jj %jj 'k jupjuj5juj5 jup "###"###"###////-,,-,,-.,-,,-./-,,////h,,lh,,lh,,lp `pp`ppp`pp`pp`0pp0pp0j %zj %zj }~ juj55jupju?j5"!z5j %jj %jj 'kp`j5j5 jupj5j5x4j5"###"###"###//,,--.,-./,-,,-.,-.,,.,-.h,,lh,,lh,,l ppp0p`p0`p0`0 pp0`pp j %zj %zj }~ jj5j5j5j5 p0jup j %jj %jj 'k  j5ju?ju?ju0p0jup` "###"###"###///,/-.,-,.-,.-,.,,.-,,-//h,,lh,,lh,,lp`0pp `p`pp`pp`pp`p0`ppj %zj %zj }~j5p`tj5juj5juj5juj %jj %jj 'kz5p !juj5j5j5ju?j5"###"###"###//,,.,,//-,-.,-.,-.,-,.-.,s{%s{%#+%s?j5j5ssj5#jws1ssjws1/,.%/,.%/,.%/,/*-.%,,/*%/ /*-,$,,/(,.% s{%s{%#+%sj7k5 j5##j5##jws1 /,.%/,.%/,.%/ *-.%/,,*% / *%/,,(,.% s{%s{%#+%pjws1sj5 "k7!p /,.%/,.%/,.%/ /*-,$/ /*-,$*% / / s?jw{%#/s1#}j5j5#!s"k7!j7k5#/,/*-.%/,//,$/,'*-.%/,$/ / *% /*-.%/ / s{%s{%#+%ssj7#!jws1#j7#!ss /,.%/,.%/,.%,,/*-,$/*-,$/ /*-,$/,, BBC##jwsj7#juz5#j7k5 #j7c1op? / *-,*-,*%*%/ /*-.%/,$/,/*-.% / s1#"!s1s"!sj5#j}xjwsj7k5k7/,$/ / / /,$/"- / / /*%/ /*%!/*-,*%*%*% s{%s{%#+%ssjw{5#jw{5## /,.%/,.%/,.%,,/*% /,/*%+$ / <,,4<,,4<,,4|h4 h4|($ 5b(55b(55j5n5{5s{5k5j5k5{5s1 -,,%-,,%-,,%/*%/,$/.%/.%/*%/*%/,$,.%`ppp`ppp`ppp ppppppppppppppppppppppp j 4jj 4jj tz||,||h|<,|4|| ||h|<,, j 4kj 4kj ?o jwss1zubss *,,.*,,.*,,. ,,,,,,,,,,,,,,,,,,,,,,, Home Prev Next Auto ================================================ FILE: examples/general/example.csv ================================================ #######.## ,##.## , ### ,##.## , Item, Each, Qty, Total, ,,,, Drawers,=25.95,=1,=B3*C3, Labels,=17.49,=1,=B4*C4, Glue stick,=1.62,=5,=B5*C5, Pouches,=13.5,=1,=B6*C6, Mailers,=2.1,=3,=B7*C7, ,,,, Grand total,,,=D3:D7, VAT @ 17.5%,,,=D3:D7*.175, ,,,, Amount due,,,=D9+D10, ================================================ FILE: examples/general/mode7dem.car ================================================ MICRONET Starnet (C) 811211087a 0p  Videotex emulation frame test   Videotex emulation frame test The following sequence of frames provides pattern tests for Videotex emulations. They start simple and progress to more complex combinations of ESCAPE codes. I will give an example line followed by an indication of how it should look. Some of these indications may be approximate (e.g. using a - instead of the graphic,or ! instead of5). These examples comply with the Prestel terminal spec. and have been checked onterminals with dedicated Videotex display hardware. They can be regarded as definitive.  PgDn to continue  PgDn to continue MICRONET Starnet (C) 811211087b 0p  Videotex emulation frame test   Videotex emulation frame test Character definitions.These are examples of the less standard Videotex characters: _ - Hash symbol # - British pound sign ` - Long dash. Same position as - but about the same width as letter H. | - Double vertical bar. About the same height as the letter H. ^[] - Up, left and right arrows. ~ - Divide sign (Horizontal line with 2 dots). \{} - 1/2, 1/4, 3/4.  - small block. Should be about the same dimensions as the letter H but smaller than the graphics block.  PgDn to continue  PgDn to continue MICRONET Starnet (C) 811211087c 0p  Videotex emulation frame test   Videotex emulation frame test Foreground text colours.Later on I will use single letter abbreviations for the colours: Red (R) Green (G) Yellow (Y) Blue (B) Magenta (M) Cyan (C) White (W) Black (K) is not available as a foreground colour. Each line starts as alphanumeric white (which is what this should be).  PgDn to continue  PgDn to continue MICRONET Starnet (C) 811211087d 0p  Videotex emulation frame test   Videotex emulation frame test Foreground graphics colours.Blast through characters (with bit 2^5 clear) should be the same as text characters. ,,,,,,,,, RED ,,,,,,,,, ,,,,,,,,, GREEN ,,,,,,,,, ,,,,,,,,, YELLOW ,,,,,,,,, ,,,,,,,,, BLUE ,,,,,,,,, ,,,,,,,,, MAGENTA ,,,,,,,,, ,,,,,,,,, CYAN ,,,,,,,,, ,,,,,,,,, WHITE ,,,,,,,,, General form should look like: --------- NAME ---------  PgDn to continue  PgDn to continue MICRONET Starnet (C) 811211087e 0p  Videotex emulation frame test   Videotex emulation frame test NEW BACKGROUND and BLACK BACKGROUND. NEW BG sets the background colour to the current foreground colour. BLACK BG sets the background colour to black. Both are effective immediately in the character where the code sits.    KKWWRRGGYYBBMMCCWWKKRRGGYYBBMMCCWWKKKKKK --W ON R-- --R ON W-- --R ON K--,,W ON R,, ,,R ON W,, ,,R ON K,,Should look like: --W ON R-- --R ON W-- --R ON K-- RRRRRRRRRRRRRRWWWWWWWWWWWWWWKKKKKKKKKKK  PgDn to continue  PgDn to continue MICRONET Starnet (C) 811211087f 0p  Videotex emulation frame test   Videotex emulation frame test FLASH and STEADY.The foreground component of a character swaps period- ically between its normal pattern and a SPACE. The background component is unaffected. STEADY cancels FLASH. This is flashing. This is steady. Flashing white/red on steady red BG. ,,, THIS IS ALL FLASHING ,,, ,,,, Should look like (all flashing): --- THIS IS ALL FLASHING --- ----  PgDn to continue  PgDn to continue MICRONET Starnet (C) 811211087g 0p  Videotex emulation frame test   Videotex emulation frame test SEPARATED and CONTIGUOUS graphics. In separated graphics the 6 cells of the graphics character are separated from each other by a small BG colour border. Contiguous is the default case where the cells fill the character. - a character of 6 separated cells  - the contiguous version completely fills the character AAAAAAaaa Should look like: AAA AAA   aaa  CCC CCC SSS SSS CCC SSS SSS C=Contiguous S=Separated  PgDn to continue  PgDn to continue MICRONET Starnet (C) 811211087h 0p  Videotex emulation frame test   Videotex emulation frame test CONCEAL.This code conceals characters following it on the line. The complementary function 'REVEAL' is a command at the user terminal. All characters under conceal are displayed as spaces.CONCEAL is disabled by a subsequent foreground colour code. --VISIBLE----CONCEALED----VISIBLE--,,VISIBLE,,,,CONCEALED,,,,VISIBLE,,Should look like: --VISIBLE-- --VISIBLE-- --CONCEALED-- Reveal on your local terminal should reveal the --CONCEALED-- section.  PgDn to continue  PgDn to continue MICRONET Starnet (C) 811211087i 0p  Videotex emulation frame test   Videotex emulation frame test DOUBLE and NORMAL HEIGHT.These can cause more than their fair share of problems! If a line contains a double height code anywhere then the line contents will completely define the look of that AND the following line. Any characters in the following line are completely ignored (including double height codes). This has important consequences for dynamic frames which I will ignore at the moment. When double height is in operation the 1st line contains the upper half of the (stretched) character and the 2nd line contains the lower half. ....  PgDn to continue  PgDn to continue MICRONET Starnet (C) 811211087j 0p  Videotex emulation frame test   Videotex emulation frame test In a line containing a double height code, normal height characters are displayed on the 1st line with corresponding spaces on the 2nd. The background colour of the 2nd line always follows the first (even before the first double height code). Normal Double NormalNormal Double Normal Double NormalNormal Double Should look like: Normal Double Normal Normal Double Double Double RRRRRRRRRRRRRRRRRRRRRRWWWWWWWWWWWWWWWRR ^^^^^^ Single double height word  PgDn to continue  PgDn to continue p112 BBCSDL 112 Sun 17 May 17:05/50  Videotex emulation frame test   Videotex emulation frame test HOLD and RELEASE graphics. Normally control characters display as spaces but the Hold Graphics mode allows a limited range of attribute changes without intervening spaces:  WWWWWYYYYYCCCCCGGGGGMMMMMRRRRRBBBBBKKKK A change in alpha/graphics mode clears the held graphics character: | WWWWWYYYYYCCCCCGGGGGKKKKKKKKKKKKKKKKKKK And so does a change in double-height:  WWWWWYYYYYCCCCCGGGGGKKKKKKKKKKKKKKKKKKK PgDn to continue PgDn to continue p113 BBCSDL 113 Sat 16 May 10:15/08  Videotex emulation frame test   Videotex emulation frame test Full Level One Facilities.The FLOF extensions support alphanumerics and graphics black foreground colours, and dual character sets. These modes must be enabled using VDU 23,18,3,1,0;0;0; Black (K) on white background Black (K) on green background ,,,,,, BLACK ON CYAN ,,,,,, The ESC character toggles between the primary and secondary character sets, every row begins in the primary set. Here the secondary set is Cyrillic: [\to demonstraciq Rossijskogo teksta]  PgDn to continue  PgDn to continue P295 ؠ샠󓚖Ǡ󕎑󓚖Ǡ󕎑󑙕堠󖘓󑙕堠󖘓嗚àǠˠϠӠנ۠ߠ胪劊PRESTEL 190818a  0p    x4  5  j/o j h~e~} 5  ?y?/u ~5  `57~vo4~!  z5%*s~!  `|~r/e!  h%  z?!  x?!   `p~/!  |~/!  ?# To see our  ?! gallery of Prestel  ?!  pictures,just keep  ?!  pressing 8  #####!  PRESTEL 1908181a  0p   Construction Industry   Construction Industry   ppxp0  pp<,o#k#k#k#k#k####|p  ######7############{w####  5 5j ##  5 puz  5   j kj    z   j5 j5  w{ ////// 5j pppppp uz 5 5  5j  j j uz 5 5 5j 7##########?///o/5j AKER5 `p0?///o 7k  #####k5 h~zpu5 j 5j |||| j5///o?o?5 j.////-Courtesy of National Building Agency PRESTEL 1908182a  0p        5 5  5 ppp     5     5  5 5 5 j 5 5 5 j  5 |5h|   / ?  'k o'oo?*k5 'k "/ "!" ?! +?! +?! +5  /#    Courtesy of Mills & Allen PRESTEL 1908183a  0p  75j 55jjj#57% 7k 5jj#55jj+ 7!  7kj 5-njj 55k =n 7kj 55jb#57!  ##"#!##"" !## !" !""#!##"#!#! "!  `~}0 xt 4 j,=n,,=n,5  j j|}~||}~|5 5jupppppp h}jh,lj/?o/h|||j5 ======5jjj|~j#7k#jj5=====55555555 +?!jjjj{j5555555           COURTESY OF NORWICH UNION *1908184 PRESTEL 1908184a  0p "k#`p`p0pp`p0pp`p0p0x0 pp`p0pz  j j h,55j*,45jj 55 j =ABS() ACS A function returning the arc-cosine in radians (0-PI) of its numeric argument =ACS() ADVAL ADVAL(0) returns the state (0-2^n−1) of the n buttons on a joystick device =ADVAL(0) ADVAL(1) returns the current position (0-65535) of the joystick x-axis =ADVAL(1) ADVAL(2) returns the current position (0-65535) of the joystick y-axis =ADVAL(2) ADVAL(3) returns the current position (0-65535) of the joystick z-axis =ADVAL(3) ADVAL(−1) returns the number of free bytes (0-255) in the keyboard buffer =ADVAL(-1) ADVAL(−5) returns the number of free bytes (0-16) in the channel 0 SOUND queue =ADVAL(-5) ADVAL(−6) returns the number of free bytes (0-16) in the channel 1 SOUND queue =ADVAL(-6) ADVAL(−7) returns the number of free bytes (0-16) in the channel 2 SOUND queue =ADVAL(-7) ADVAL(−8) returns the number of free bytes (0-16) in the channel 3 SOUND queue =ADVAL(-8) AND An operator giving the Boolean or bitwise AND between two numeric operands = AND AND= A compound assignment performing a Boolean or bitwise AND on a numeric variable AND= ASC A function returning the numeric value (0-255) of the 1st character in a string =ASC() ASN A function returning the arc-sine (−PI/2 to +PI/2) of its numeric argument =ASN() ATN A function returning the arc-tangent (−PI/2 to +PI/2) of its numeric argument =ATN() BGET# A function returning one byte (0-255) from the specified open file channel =BGET# BPUT# [1] A statement writing one byte (0-255) to the specified open file channel BPUT #, [2] A statement writing a string, optionally followed by LF, to an open file BPUT #,[;] BY A qualifier for the DRAW, FILL, MOVE and PLOT statements and the GET$ function CALL [1] A statement to call a machine-code function, optionally passing parameters CALL {,|||} [2] A statement to load a tokenised code module, run it, and then discard it CALL CASE Introduces a switch clause, vectoring execution on a numeric or string value CASE | OF CHAIN A statement to load and run a tokenised program, replacing the current program CHAIN CHR$ A function returning a single-character string of its numeric argument (0-255) =CHR$() CIRCLE A statement to draw a solid or outline circle, with centre x,y and radius r CIRCLE [FILL] ,, CLEAR A statement to remove all currently defined variables, arrays and structures CLEAR CLG A statement to clear the graphics viewport to the graphics bkgnd colour/action CLG CLOSE# [1] A statement to close the file open on the specified channel CLOSE # [2] A statement to close all currently-open files CLOSE #0 CLS A statement to clear the text viewport to the text background colour CLS COLOUR [1] COLOUR col Sets the text foreground colour to palette entry col COLOUR [2] COLOUR 128+col Sets the text background colour to palette entry col COLOUR [3] COLOUR col,phy Sets palette entry col to the physical colour phy (0-15) COLOUR , [4] COLOUR col,R,G,B Sets the palette entry col to the RGB colour (each 0-255) COLOUR ,,, COS A function returning the cosine of the radian angle supplied as its argument =COS() COUNT A function returning the number of bytes PRINTed since the last newline (CR) =COUNT DATA A statement followed by a list of constant data values to be read using READ DATA |{,|} DEF [1] A statement introducing a user-defined procedure, with optional parameters DEF PROC[([RETURN]|||{,[RETURN]|||})] [2] A statement introducing a user-defined function, with optional parameters DEF FN[([RETURN]|{,[RETURN]|})] DEG A function returning the value in degrees of its argument in radians =DEG() DIM [1] A statement declaring a numeric or string array DIM |({,}) [2] A statement declaring a data structure with the specified members DIM {{,}} [3] A statement declaring a data structure based on a prototype structure DIM = [4] A statement declaring an array of identical data structures DIM {([,]){,}} [5] A statement declaring an array of data structures based on a prototype DIM {([,])}= [6] A statement reserving a block of memory on the heap or on the stack DIM [LOCAL] [7] A function returning the number of dimensions of an array =DIM() [8] A function returning the size (maximum subscript) of an array dimension =DIM(,) [9] A function returning the size (in bytes) of a structure =DIM() DIV An operator giving the integer quotient of the first operand by the second = DIV DIV= A compound assignment performing an integer division of a numeric variable DIV= DRAW A statement to draw a line from the graphics cursor to specified coordinates DRAW [BY] , ELLIPSE A statement to draw a solid or outline ellipse with centre x,y and radii a,b ELLIPSE [FILL] ,,, ELSE A statement to specify the action taken if an IF or ON condition is not met END [1] A statement to close files, terminate a program and exit to immediate mode END [2] A function returning a pointer to the first unused location in the heap =END ENDCASE A statement which terminates a CASE clause ENDCASE ENDIF A statement which terminates a multi-line IF clause ENDIF ENDPROC A statement which restores context and returns from a user-defined procedure ENDPROC ENDWHILE A statement which terminates a WHILE loop ENDWHILE ENVELOPE A statement to define a pitch and/or ADSR envelope for use by SOUND ENVELOPE ,,,,,,,,,,,,, EOF# A function returning TRUE if the file's pointer is at the end of the file =EOF#() EOR An operator giving the bitwise exclusive-OR between two numeric operands = EOR EOR= A compound assignment performing a bitwise exclusive-OR on a numeric variable EOR= ERL A function returning the line number at which the most recent error occurred =ERL ERR A function returning the error code number of the most recent error =ERR ERROR A statement to throw an error, with a specified error number and string ERROR , EVAL A function returning the numeric or string result of evaluating an expression |=EVAL() EXIT [1] Exits a FOR..NEXT loop and jumps to the statement after the matching NEXT EXIT FOR [] [2] Exits a REPEAT..UNTIL loop and jumps to the statement after the UNTIL EXIT REPEAT [3] Exits a WHILE..ENDWHILE loop and jumps to the statement after the ENDWHILE EXIT WHILE EXP A function returning e (2.71828183) raised to the power of the numeric argument =EXP() EXT# A function returning the length of the file opened on the specified channel =EXT#() FALSE A function returning the constant numeric value zero =FALSE FILL [1] A statement to perform a 'flood fill' starting at the specified coordinates FILL [BY] , [2] An optional qualifier of the CIRCLE, ELLIPSE and RECTANGLE statements FN [1] Calls a user-defined function by name, with optional parameters |=FN[({,})] [2] Calls a user-defined function by pointer, with optional parameters |=FN()[({,})] FOR A statement to introduce a FOR...NEXT loop (always executed at least once) FOR = TO [STEP ] GCOL [1] GCOL [mode,]col Sets the graphics foreground colour and optional mode GCOL [,] [2] GCOL [mode,]128+col Sets the graphics background colour and optional mode GCOL [,] GET [1] A function returning a byte from the keyboard buffer, waiting if empty =GET [2] A function returning the character at the specified text column and row =GET(,) GET$ [1] A function returning a byte from the keyboard buffer as a length-1 string =GET$ [2] A function returning the character at the specified text coords as a string =GET$(,) [3] A function reading a string from a file (up to a CR, LF or NUL terminator) =GET$# [4] A function reading a string from a file up to a specified terminator =GET$# TO [5] A function reading a string from a file of the specified length in bytes =GET$# BY GOSUB A statement to call a subroutine starting at a specified line number GOSUB |() GOTO A statement to jump directly to a specified (possibly calculated) line number GOTO |() HIMEM [1] A statement to set the first memory address above the top of the heap HIMEM= [2] A function returning the first memory address above the top of the heap =HIMEM IF [1] A statement to take a specified action if an integer condition is non-zero IF THEN {:} ELSE {:} [2] A statement to introduce a multi-line conditional clause IF THEN[;] INKEY [1] A function returning TRUE if a specified key is currently depressed =INKEY() [2] A function returning a byte from the keyboard, waiting a specified cs time =INKEY() INKEY$ A function returning a string from the keyboard, waiting a specified time =INKEY$() INPUT A statement to input a line and assign the value(s) to specified variable(s) INPUT [LINE][TAB(X[,Y])][SPC()]['][[,|;]]|{,|} INPUT# A statement to input from an open file and assign values to specified variables INPUT #,|{,|} INSTALL A statement to install a BASIC library module (it is loaded above HIMEM) INSTALL INSTR A function returning the position (if any) of a substring within a string =INSTR(,[,]) INT A function truncating to an integer, towards minus infinity (floor function) =INT LEFT$ [1] A function returning the leftmost n characters (bytes) of a string =LEFT$(,) [2] A function returning all but the last character (byte) of a string =LEFT$(string) [3] A statement replacing the leftmost n bytes of a string with a new string LEFT$(,)= [4] A statement replacing all but the last byte of a string with a new string LEFT$()= LEN A function returning the length of a string in bytes (not characters, if UTF-8) =LEN() LET An optional keyword introducing a numeric or string assignment statement [LET] = LINE [1] A statement to draw a straight line between two pairs of coordinates LINE ,,, [2] A modifier causing the INPUT statement to read including commas and spaces LINE INPUT [TAB(X[,Y])][SPC()]['][[,|;]]{,} LN A function returning the natural (Napierian) logarithm of its numeric argument =LN LOCAL A statement to declare variables, arrays and structures 'local' to a FN or PROC LOCAL |||{,|||} LOCAL DATA A statement to save the DATA pointer, so it may be restored later LOCAL DATA LOG A function returning the common (base-10) logarithm of its numeric argument =LOG LOMEM [1] A statement to set the address of (pointer to) the base of the heap LOMEM= [2] A function returning the address of (pointer to) the base of the heap =LOMEM MID$ [1] A function returning part of a string, given the start and optional length =MID$(,[,]) [2] An assignment statement replacing part of a string with a new string MID$(,[,])= MOD [1] An operator giving the integer remainder after division by the 2nd operand = MOD [2] A function returning the square-root of the sum-of-the-squares of an array =MOD() MOD= A compound assignment calculating the integer remainder after a division MOD= MODE [1] A statement initialising a specified screen mode MODE [2] A function returning the current screen mode number, or −1 if user-defined =MODE MOUSE A statement to return the current position and button status of the 'mouse' MOUSE ,, MOUSE OFF A statement to hide the mouse pointer MOUSE OFF MOUSE ON A statement to select a particular mouse pointer shape and enable it MOUSE ON [] MOUSE RECTANGLE A statement to confine the mouse pointer within a specified rectangle MOUSE RECTANGLE OFF|,,, MOUSE TO A statement to move the mouse pointer to the specified coordinates MOUSE TO , MOVE A statement to move the graphics cursor to absolute or relative coordinates MOVE [BY] , NEXT A statement to indicate the end of one or more FOR...NEXT loops NEXT [{,}] NOT A function returning the Boolean or bitwise inversion of its numeric argument =NOT OF A mandatory part of the CASE statement, must be the last thing on the line CASE | OF OFF [1] A statement to hide the text caret (cursor) OFF [2] A qualifier used with MOUSE, MOUSE RECTANGLE, ON, SOUND & TRACE statements ON [1] A statement to jump to a specified line number depending on a numeric index ON GOTO {,} [ELSE |{:}] [2] A statement to call a line-numbered subroutine depending on a numeric index ON GOSUB {,} [ELSE |{:}] [3] A statement to call a named procedure depending on a numeric index ON PROC[({,})]{,PROC[({,})]} [ELSE {:}] [4] A statement to show the text caret (cursor) ON [5] A statement to cancel an ON CLOSE, ERROR, MOUSE, MOVE, SYS or TIME action ON [LOCAL] OFF ON CLOSE A statement to specify the action taken if the window is closed ON CLOSE [LOCAL] {:}:RETURN ON ERROR A statement to specify the action taken if a trappable error occurs ON ERROR [LOCAL] {:} ON MOUSE A statement to specify the action taken if a mouse button is clicked ON MOUSE [LOCAL] {:}:RETURN ON MOVE A statement to specify the action taken if the window is moved or resized ON MOVE [LOCAL] {:}:RETURN ON SYS A statement to specify the action taken if an OS event is notified ON SYS [LOCAL] {:}:RETURN ON TIME A statement to specify the action taken if the periodic timer fires ON TIME [LOCAL] {:}:RETURN OPENIN A function which opens a file for reading (only) and returns a channel number =OPENIN() OPENOUT A function which creates a new (empty) file and returns a channel number =OPENOUT() OPENUP A function which opens a file for update (R/W) and returns a channel number =OPENUP() OR An operator giving the Boolean or bitwise OR between two numeric operands = OR OR= A compound assignment performing a Boolean or bitwise OR on a numeric variable OR= ORIGIN A statement to set the coordinates of the current graphics origin ORIGIN , OSCLI A statement to pass a 'star' (OS) command to the Command Line Interpreter OSCLI OTHERWISE A part of the CASE clause specifying the action if no WHEN condition is met OTHERWISE []{:} PAGE [1] A statement to set the address of (pointer to) where a program is loaded PAGE= [2] A function returning the address of (pointer to) the current program =PAGE PI A function returning the constant numeric value Pi (3.14159265...) =PI PLOT [1] A statement to carry out a plotting operation identified by a numeric index PLOT ,, [2] A statement to plot a solid rectangle 1/8 of the character width and height PLOT [BY] , POINT A function returning the logical colour (palette index) at given coordinates =POINT(,) POS A function returning the horizontal position of the text caret (cursor) 0=left =POS PRINT A statement to evaluate and print a list of expressions, with formatting PRINT {[TAB([,])][SPC(]['][,][;][~][|]} PRINT# A statement to write numeric or string values to a file in 'internal' format PRINT#{,|} PRIVATE A statement to declare variables, arrays and structures private to a FN or PROC PRIVATE |||{,|||} PROC [1] Calls a user-defined procedure by name, with optional parameters PROC[({,})] [2] Calls a user-defined procedure by pointer, with optional parameters PROC()[({,})] PTR [1] A function returning a pointer to a string, array, structure or FN/PROC =PTR(|||FN[()]|PROC[()]) [2] A statement to set the pointer to a string, array, structure or FN/PROC PTR(|||FN[()]|PROC[()])= PTR# [1] A function returning the current pointer of the specified open file =PTR# [2] A statement to set the pointer of the specified open file PTR#= QUIT A statement to exit to the OS (or calling process) with an optional exit code QUIT [] RAD A function returning the value in radians of its argument in degrees =RAD READ A statement to read one or more values from one or more DATA statements READ |{|} READ# A statement which is synonymous with INPUT# READ#,|{,|} RECTANGLE [1] A statement to draw an outline or filled axis-aligned rectangle RECTANGLE [FILL] ,,[,] [2] A statement to copy the contents of a rectangle to a specified location RECTANGLE ,,[,] TO , [3] A statement to move the contents of a rectangle to a specified location RECTANGLE FILL ,,[,] TO , [4] A statement to swap the contents of a rectangle with a specified location RECTANGLE SWAP ,,[,] TO , REM A statement containing a remark or comment, the rest of the line is ignored REM any text REPEAT A statement introducing a REPEAT..UNTIL loop (UNTIL conditionally jumps here) REPEAT REPORT A statement to print the most recent error message (or a copyright string) REPORT REPORT$ A function returning the most recent error message as a string =REPORT$ RESTORE [1] A statement to set the DATA pointer to the beginning or to a specified line RESTORE [|()] [2] A statement to set the DATA pointer relative to the current line RESTORE + [3] A statement to restore the DATA pointer to the value saved by a LOCAL DATA RESTORE DATA [4] A statement to restore the error handler to that saved by ON ERROR LOCAL RESTORE ERROR [5] A statement to restore LOCALs, PRIVATEs and formal parameters of an FN/PROC RESTORE LOCAL RETURN [1] A statement to return from a subroutine, optionally to a specified line RETURN [|()] [2] A statement to return from an ON CLOSE/MOUSE/MOVE/SYS/TIME event handler [3] In a DEF FN or DEF PROC, indicates that a parameter is also used for output RIGHT$ [1] A function returning the rightmost n characters (bytes) of a string =RIGHT$(,) [2] A function returning the last character (byte) of a string =RIGHT$(string) [3] A statement replacing the rightmost n bytes of a string with a new string RIGHT$(,)= [4] A statement replacing the last byte of a string with a new string RIGHT$()= RND [1] A function returning a pseudo-random signed 32-bit integer =RND [2] A function returning a pseudo-random number from 0.0 to 0.9999999999 =RND(1) [3] A function returning a pseudo-random integer in the range 1 to n =RND() [4] A function repeating the last returned random number, in RND(1) format =RND(0) [5] A function seeding the random number generator, and returning that seed =RND() RUN [1] A statement to run the current program from the start RUN [2] A statement synonymous with CHAIN RUN SGN A function returning the sign, or signum, (−1, 0 or +1) of the argument =SGN() SIN A function returning the sine of the radian angle supplied as its argument =SIN() SOUND A statement to make a sound, optionally using an envelope SOUND ,,, SOUND OFF A statement to silence any playing sound(s) SOUND OFF SPC Used in an INPUT or PRINT statement, outputs the specified number of spaces INPUT|PRINT SPC() SQR A function returning the square-root of its numeric argument =SQR() STEP An optional part of the FOR statement, specifying the increment value FOR = TO [STEP ] STOP A statement to stop the program and exit to immediate mode, doesn't close files STOP STR$ A function returning the decimal string representation of its numeric argument =STR$() STR$~ A function returning the hexadecimal representation of its numeric argument =STR$~() STRING$ A function returning a concatenation of multiple copies of the same string =STRING$(,) SUM [1] A function returning the sum of all the elements of a numeric array =SUM() [2] A function returning a concatenation of all the elements of a string array =SUM() [3] An operator giving the modulo-2^64 integer sum of two numeric operands = SUM SUMLEN A function returning the sum of the lengths of the elements of a string array =SUMLEN() SWAP [1] A statement swapping the values of two numeric variables of the same type SWAP , [2] A statement swapping the values of two string variables SWAP , [3] A statement swapping two arrays or structures SWAP ,|SWAP , [4] An optional qualifier of the RECTANGLE statement RECTANGLE SWAP ,,[,] TO , SYS [1] A statement to call an Operating System API function by name SYS {,|} [TO ] [2] A statement to call an Operating System or Library function by pointer SYS {,|} [TO ] [3] A function returning the pointer to a named Operating System API function =SYS() TAB [1] Used in an INPUT or PRINT statement, outputs spaces up to the given column INPUT|PRINT TAB() [2] Used in an INPUT or PRINT statament, moves the text caret to the col & row INPUT|PRINT TAB(,) TAN A function returning the tangent of the radian angle supplied as its argument =TAN THEN [1] Specifies the action if the condition is true in a single-line IF statement IF THEN {:} [ELSE {:}] [2] When at the very end of an IF statement, introduces a multi-line IF clause IF THEN[;] TIME [1] A statement to set the elapsed-time clock to a value in centiseconds TIME= [2] A function returning the current value of the elapsed time clock in cs =TIME TIME$ A function returning the current date and time as DoW.DD Mon Year,HH:MM:SS =TIME$ TINT A function returning the 24-bit colour at the given coordinates (&BBGGRR) =TINT(,) TO [1] A mandatory part of the FOR statement, specifying the final value FOR = TO [STEP ] [2] An optional part of the MOUSE and RECTANGLE statements [3] Specifies an optional terminator character in the GET$# function [4] Delimits the range of indices in an array slice, first TO last ({,} TO []) [5] An optional part of the SYS statement specifying where the result is stored SYS |{,|} [TO ] TOP A function returning a pointer to (address of) the first byte after the program =TOP TRACE [1] A statement to control whether line numbers are printed when executed TRACE ON|OFF [2] A statement to print line numbers if less than the specified value TRACE|() TRACE STEP A statement to enter or exit single-step mode (when debugging) TRACE STEP [ON|OFF] TRUE A function returning the constant integer value −1 =TRUE UNTIL A statement which terminates a REPEAT loop, and exits the loop if non-zero UNTIL USR A function calling a machine-code program and returning its integer exit value =USR() VAL A function returning the numeric value of a string, or zero if not a number =VAL() VDU A statement to send one or more values (8 or 16-bits) to the output stream VDU {,|;}[;][|] VPOS A function returning the vertical position of the text caret (cursor) 0=top =VPOS WAIT A statement to wait for a specified number of centiseconds (or 1 ms if zero) WAIT [] WHEN A part of the CASE statement specifying the action on a certain value or values WHEN {,}|{}:{:} WHILE A statement introducing a WHILE...ENDWHILE loop, giving the condition to loop WHILE WIDTH [1] A statement specifying the line length (in bytes) before an automatic CRLF WIDTH [2] A function returning the line length before an automatic CRLF (0 if never) =WIDTH [3] A function returning the width (in graphics units) of a string =WIDTH() ================================================ FILE: examples/sounds/skaters.tun ================================================ ; LES PATINEURS (The Skaters' Waltz) by Emile Waldteufel ; Transcribed for Z80 Music by R.J.Stickley, August 1985 ; Introduction - Andante K3#=5 SV448E+.B24B SV448E.24E TV19$E+F+G+A+B+C++ V29$GABC+D+E+ TV19D++$$D++C++B+A+G+F+E+$$E+F+G+A+B+C++ V2F+$$FEDCB-A-G-$$GABC+D+E+ TV19D++$$D++C++B+A+G+F+E+F+G+A+B+C++D++C++B+A+G+F+ TV2F+$$FEDCB-A-G-A-B-CDEFEDCB-A- TV19E+F+G+A+B+C++D++C++B+A+G+F+E+F+E+F+E+F+E+F+E+F+E+F+E+F+E+F+E+36$ TV29G-A-B-CDEFEDCB-A-G-B-G-B-G-B-G-B-G-B-G-B-G-B-G-B-36$ TV19D#+E+18G+9E+F+E+F+E+F+E+F+E+F+ V218$D%+ V3$B V4$E TV19E+F+E+F+E+F+E+F+E+F+E+F+ V236C.E18F SV372E. V4A-. TV19E+F+E+F+E+F+E+F+E+F+E+F+ V272F. SV336E.E. V4A-.A-. TV19E+F+E+F+E+F+E+F+E+F+E+F+ V236D.F18G SV372E. V4B-. TV19E+F+E+F+E+F+E+F+E+F+E+F+ V272G. SV336E.E. V4B-.B-. TV19E+F+E+F+E+F+E+F+E+F+G+A+ V236E.A18G SV372A.V4C. TV19A+B+A+B+A+B+A+B+A+B+A+B+ V236G18F36A-18B- SV372A. V4D. TV19E++F++E++F++E++F++E++F++E++F%++F#++G++ V236C.B-. SV3A.E. V4E.D. TV19A++F++A++F++A++F++E++C++E++C++E++C++ SV272A. V3E. V4A-. TV19A+F+A+F+A+F+E+C+E+C+E+C+ V236C.C. SV4A-A- TV1100A.$ SV3E.$ V4A-.$ ; No.1 - Espressivo K3#=3 TV180C.E40F80F.F. SV240$AA$AA$GG$GG V380$.$.40$EE$EE V4A-EECEEB-DDE-DD TV180D.F40G80G.G. SV240$GG$GG$AA$AA V3$EE$EE$$$$$$ V4B-DDE-DDCEECEE TV180B.A40C80E.D40C SV2$AA$AA$AA$AA V3$FF$FF$FF$FF V4F-CCF-CCB-DDB-DD TV180C.B-. SV240$GG$GG V3$EE$EE V4E-DDE-DD TV180A.40A$$ V2$EEE$$ V4A-CCC$$ TV180C.E40F80F.F. SV240$AA$AA$GG$GG V380$.$.40$EE$EE V4A-EECEEB-DDE-DD TV180D.F40G80G.G. SV240$GG$GG$AA$AA V3$EE$EE$$$$$$ V4B-DDE-DDCEECEE TV180B.A40C80E.D40C SV2$AA$AA$AA$AA V3$FF$FF$FF$FF V4F-CCF-CCB-DDB-DD TV180C.B-. SV240$GG$GG V3$EE$EE V4E-DDE-DD V180A.40A V3$EEE V4A-CCC TV120E+A+F+A+ V240C+C+ TV120E+A+F+A+E+A+F+A+E+A+F+A+ V240C+C+C+C+C+C+ SV3$AA$AA V4A-EEE-EE TV140E+20G+$G+$ V240D+20D+$D+$ SV340$GG V4B-EE TV140E+20G+$G+$ V240D+20D+$D+$ SV340$GG V4E-EE TV120E+B+F+B+E+B+F+B+E+B+F+B+ V240D+D+D+D+D+D+ SV340$BB$GG V4G-EEE-EE TV140E+20A+$A+$ V240C+20C+$C+$ SV340$AA V4A-EE TV140E+20A+$A+$ V240C+20C+$C+$ SV340$AA V4E-EE TV120E+A+F+A+E+A+F+A+E+A+F+A+ V240C+C+C+C+C+C+ SV3$AA$AA V4A-EEA-EE TV140E+20G+$G+$ V240C+20E+$E+$ SV340$GG V4G-EE TV140E+20G+$G+$ V240C+20E+$E+$ SV340$GG V4G-EE TV120G+A+G+A+G+A+G+A+G+A+G+A+ V240B#D+#BD+#B#D SV3$GG$GG V4G-FFG-FF TV120G+A+G+A+G+A+G+A+G+A+G+B+ V240C+E+C+E+D+E+ SV340$GG$GG V4CEEE-EE TV120E+A+F+A+E+A+F+A+E+A+F+A+ V240C+C+C+C+C+C+ SV3$AA$AA V4A-EEE-EE TV140E+20G+$G+$ V240D+20D+$D+$ SV340$GG V4B-EE TV140E+20G+$G+$ V240D+20D+$D+$ SV340$GG V4E-EE TV120E+B+F+B+E+B+F+B+E+B+F+B+ V240D+D+D+D+D+D+ SV340$BB$GG V4G-EEE-EE TV140E+20A+$A+$ V240C+20C+$C+$ SV340$AA V4A-EE TV140E+20A+$A+$ V240C+20C+$C+$ SV340$AA V4E-EE TV120AE+BE+AE+BE+AE+BE+ V240G%GGGGG V3$CC$CC SV4A-G%GA-GG TV120AD+BD+AD+BD+AD+BD+ V240FFFFFF% SV3$AA$AB V4DFFDFF% TV120C+E+C+E+C+E+D+E+D+E+D+E+ V240EAEGEG V3$CC$G-G- SV4EAAE-EE TV120C+E+C+E+C+E+ V240AEA SV3$AA V4A-EE TV140A+20E+A+F+A+ V240$C+C+ SV4A- TV120E+A+F+A+E+A+F+A+E+A+F+A+ V240C+C+C+C+C+C+ SV3$AA$AA V4A-EEE-EE TV140E+20G+$G+$ V240D+20D+$D+$ SV340$GG V4B-EE TV140E+20G+$G+$ V240D+20D+$D+$ SV340$GG V4E-EE TV120E+B+F+B+E+B+F+B+E+B+F+B+ V240D+D+D+D+D+D+ SV340$BB$GG V4G-EEE-EE TV140E+20A+$A+$ V240C+20C+$C+$ SV340$AA V4A-EE TV140E+20A+$A+$ V240C+20C+$C+$ SV340$AA V4E-EE TV120E+A+F+A+E+A+F+A+E+A+F+A+ V240C+C+C+C+C+C+ SV3$AA$AA V4A-EEA-EE TV140E+20G+$G+$ V240C+20E+$E+$ SV340$GG V4G-EE TV140E+20G+$G+$ V240C+20E+$E+$ SV340$GG V4G-EE TV120G+A+G+A+G+A+G+A+G+A+G+A+ V240B#D+#BD+#B#D SV3$GG$GG V4G-FFG-FF TV120G+A+G+A+G+A+G+A+G+A+G+B+ V240C+E+C+E+D+E+ SV340$GG$GG V4CEEE-EE TV120E+A+F+A+E+A+F+A+E+A+F+A+ V240C+C+C+C+C+C+ SV3$AA$AA V4A-EEE-EE TV140E+20G+$G+$ V240D+20D+$D+$ SV340$GG V4B-EE TV140E+20G+$G+$ V240D+20D+$D+$ SV340$GG V4E-EE TV120E+B+F+B+E+B+F+B+E+B+F+B+ V240D+D+D+D+D+D+ SV340$BB$GG V4G-EEE-EE TV140E+20A+$A+$ V240C+20C+$C+$ SV340$AA V4A-EE TV140E+20A+$A+$ V240C+20C+$C+$ SV340$AA V4E-EE TV120AE+BE+AE+BE+AE+BE+ V240G%GGGGG V3$CC$CC SV4A-G%GA-GG TV120AD+BD+AD+BD+AD+BD+ V240FFFFFF% SV3$AA$AB V4DFFDFF% TV120C+E+C+E+C+E+D+E+D+E+D+E+ V240EAEGEG V3$CC$G-G- SV4EAAE-EE TV120C+E+C+E+C+E+ V240AEA SV3$AA V4A-EE TV140A+$$ V2C+$$ SV3A$$ V4A-$$ ; Coda TV180C.E40F80F.F. SV240$AA$AA$GG$GG V380$.$.40$EE$EE V4A-EECEEB-DDE-DD TV180D.F40G80G.G. SV240$GG$GG$AA$AA V3$EE$EE V4B-DDE-DDCEECEE TV180B.A40C80E.D40C SV2$AA$AA$AA$AA V3$FF$FF$FF$FF V4F-CCF-CCB-DDB-DD TV180C.B-. SV240$GG$GG V3$EE$EE V4E-DDE-DD TV180A.40A V3$EEE V4A-CCC ; No.2 - Risoluto K2# TV120FAD+F+ TV140B+$A+ SV2$AA V4DFF TV140$5A+35A++40$ SV2$AA V4A-FF TV180C. SV240$AA V4EGG TV140C20GAC+E+ SV240$AA V4A-GG TV140B+$A+ SV2$AA V4EGG TV140$5A+35A++40$ SV2$AA V4A-GG TV180D. SV240$AA V4DFF TV140D20FAD+F+ SV240$AA V4A-FF TV140B+$A+ SV240$AA V4DFF TV140$5A+35A++40$ SV2$AA V4DFF TV180C. SV240$AA V4CFF TV140C5C+35C++40$ V2$CC SV3$AA V4CFF TV180E#. V240$CC SV3$BB V4CG#G TV140E#5E+#35E++#40$ V2$CC SV3$BB V4CG#G TV180F. V240CCC SV3AAA V4F$C TV140F20FAD+F+ V240C SV3A V4F- TV140B+$A+ SV2$AA V4DFF TV140$5A+35A++40$ SV2$AA V4A-FF TV180C. SV240$AA V4EGG TV140C20GAC+E+ SV240$AA V4A-GG TV140B+$A+ SV2$AA V4EGG TV140$5A+35A++40$ SV2$AA V4A-GG TV180D. SV240$AA V4DFF TV140D20FAD+F+ SV240$AA V4A-FF TV140B+$A+ SV240$AA V4DFF TV140$5A+35A++40$ SV2$AA V4DFF TV180C. SV240$AA V4CFF TV140C5C+35C++40$ V2$CC SV3$AA V4CFF TV180E#. V240$CC SV3$BB V4CG#G TV140E#5E+#35E++#40$ V2$CC SV3$BB V4CG#G TV180F.40F$$ V2CCCC$$ SV3AAAA$$ V4F$CF-$$ TV15C++35B+5C++35B+5C++35B+ V240G+G+G+ SV3$BB V4G-GG TV15C++35B+5C++35B+5C%++35B&+ V240G+G+G+ SV3$BB& V4G-GG TV15B+35A+5B+35A+5B+35A+ V240F+F+F+ V3$DD SV4A-FF TV15B+35A+5B+35A+5B+35A+ V240F+F+F+ V3$DD SV4A-FF TV15B+35A+5B+35A+5B+35A+ V240G+G+G+ V3$CC SV4EGG TV15B+35A+5B+35A+5B+35A+ V240G+G+G+ V3$CC SV4A-GG TV15B+35A+5B+35A+5B+35A+ V240F+F+F+ V3$DD SV4DFF TV15B+35A+5B+35A+5B+35A#+ V240F+F+F+ V3$DF#- SV4DFF TV15C++35B+5C++35B+5C++35B+ V240G+G+G+ SV3$BB V4G-GG TV15C++35B+5C++35B+5C%++35B&+ V240G+G+G+ SV3$BB& V4G-GG TV15B+35A+5B+35A+5B+35A+ V240F+F+F+ V3$DD SV4A-FF TV15B+35A+5B+35A+5B+35A+ V240F+F+F+ V3$DD SV4A-FF TV15B+35A+5B+35A+5B+35A+ V240G+G+G+ V3$CC SV4EGG TV15B+35A+5D++35C++5D++35C++ V240G+G+G+ V3$CC SV4A-GG TV15E++35D++5E++35D++5E++35D++ V240FFF V3$DD SV4DFF TV140D+$$ SV4D$$ TV15C++35B+5C++35B+5C++35B+ V240G+G+G+ SV3$BB V4G-GG TV15C++35B+5C++35B+5C%++35B&+ V240G+G+G+ SV3$BB& V4G-GG TV15B+35A+5B+35A+5B+35A+ V240F+F+F+ V3$DD SV4A-FF TV15B+35A+5B+35A+5B+35A+ V240F+F+F+ V3$DD SV4A-FF TV15B+35A+5B+35A+5B+35A+ V240G+G+G+ V3$CC SV4EGG TV15B+35A+5B+35A+5B+35A+ V240G+G+G+ V3$CC SV4A-GG TV15B+35A+5B+35A+5B+35A+ V240F+F+F+ V3$DD SV4DFF TV15B+35A+5B+35A+5B+35A#+ V240F+F+F+ V3$DF#- SV4DFF TV15C++35B+5C++35B+5C++35B+ V240G+G+G+ SV3$BB V4G-GG TV15C++35B+5C++35B+5C%++35B&+ V240G+G+G+ SV3$BB& V4G-GG TV15B+35A+5B+35A+5B+35A+ V240F+F+F+ V3$DD SV4A-FF TV15B+35A+5B+35A+5B+35A+ V240F+F+F+ V3$DD SV4A-FF TV15B+35A+5B+35A+5B+35A+ V240G+G+G+ V3$CC SV4EGG TV15B+35A+5D++35C++5D++35C++ V240G+G+G+ V3$CC SV4A-GG TV15E++35D++5E++35D++5E++35D++ V240F+F+F+ V3$DD SV4DFF TV140D+20FAD+F+ SV440D$$ TV140B+$A+ SV2$AA V3$FF V480D. TV140$5A+35A++40$ SV2$AA V4A-FF TV180C. SV240$AA V4EAA TV140C20GAC+E+ SV240$AA V4A-GG TV140B+$A+ SV2$AA V4EGG TV140$5A+35A++40$ SV2$AA V4A-GG TV180D. SV240$AA V4DFF TV140D20FAD+F+ SV240$AA V4A-FF TV140B+$A+ SV2$AA V3$FF V480D. TV140$5D+35D++40$ SV2$AA V3$FF V480C#. TV180G. SV240$GG V3$DD V480B-. TV140G5D+35D++40$ SV2$G#G V3$F%F V480B&-. TV180A. SV240$AA V3$F#F V480A-. TV140A5A+35A++40$ V2$CC SV3$AA V4A-GG TV1160D+40$$ V2$AAA$$ V3160D40$$ SV4DF-A-D-$$ ; No.3 - Espressivo K3# TV180C++.E+. V240$CC$CC SV3$AA$AA V4A-EEA-EE TV180E+.D#+. V240$EE$D#D SV3$AA$AA V480F.F. TV180B+.D%+. V240$D%D$DD SV3$AA$GG V480F%.E. TV180D+.C+. V2E.E. SV340$AA$AA V4A-EEA-EE TV180B40C+D+G+.20F+ SV240$BB$D+D+ V3$$$$BB V4DFFB-FF TV180F+.E#+. V240$FF#E#E SV3$BB$BB V4CGGCGG TV180B40C+D+C++.20B+ V240$DD$DD SV3$BB$BB V4DFFB-FF TV180A+.G+. V240$DD$DD SV3$BB$BB V480E.E#. TV140B+A+F+E+D#+D%+ V2$CC$DD SV3$AA$BB V480F.G. TV115C+D+C+35B#40C+E+D+F V2$EE%$F V3$CA#-$D SV480A40A#80B40D TV1100A10AC+ V240$CC SV3$AA V4E. TV180B.A.40A$$ V2$DD$CCC$$ SV3$GG$AAA$$ V480E.40A-EEE$$ TV180C++.E+. V240$CC$CC SV3$AA$AA V4A-EEA-EE TV180E+.D#+. V240$EE$D#D SV3$AA$AA V480F.F. TV180B+.D%+. V240$D%D$DD SV3$AA$GG V480F%.E. TV180D+.C+. V2E.E. SV340$AA$AA V4A-EEA-EE TV180B40C+D+G+.20F+ SV240$BB$D+D+ V3$$$$BB V4DFFB-FF TV180F+.E#+. V240$FF#E#E SV3$BB$BB V4CGGCGG TV180B40C+D+C++.20B+ V240$DD$DD SV3$BB$BB V4DFFB-FF TV180A+.G+. V240$DD$DD SV3$BB$BB V480E.E#. TV140B+A+F+E+D#+D%+ V2$CC$DD SV3$AA$BB V480F.G. TV115C+D+C+35B#40C+E+D+F V2$EE%$F V3$CA#-$D SV480A40A#80B40D TV1100A10AC+ V240$CC SV3$AA V4E. TV180B. V240$DD SV3$GG V480E. TV180A.40A20C++$C++$ V240$CCC$$ SV3$AAA$$ V4A-EEE$$ TV120C++B+E#+$40F+ V2$DD SV3$BB V4DFF TV140F+20C++$B+$ V240$DD SV3$BB V4DFF TV120B+A+D#+$40E+ V2$CC SV4EAA TV140E+20B+$A+$ V240$CC SV4EAA TV120A+G+A#$40B V2$DD SV3$GG V4B-EE TV140B20G+$F+$ V240$DD SV3$GG V4E-EE TV120D#+F+E+$40C+ V240$CC SV3$AA V4A-EE TV140C+20C++$C++$ V240$CC SV3$AA V4A-EE TV120C++B+E#+$40F+ V2$DD SV3$BB V4DFF TV140F+20C++$B+$ V240$DD SV3$BB V4DFF TV120B+A+D#+$40E+ V2$CC SV4EAA TV140E+20B+$A+$ V240$CC SV4EAA TV120A+G+40G20G+F+ V240D SV3B V4E$$ TV140F20F+F%+40F% V2D SV3A V4E$$ TV120E+E+40E+G V220EE40EE SV320GG40GG V420EE40EE TV120A$C++$C++$ V220E V3C SV4A TV120C++B+E#+$40F+ V2$DD SV3$BB V4DFF TV140F+20C++$B+$ V240$DD SV3$BB V4DFF TV120B+A+D#+$40E+ V2$CC SV4EAA TV140E+20B+$A+$ V240$CC SV4EAA TV120A+G+A#$40B V2$DD SV3$GG V4B-EE TV140B20G+$F+$ V240$DD SV3$GG V4E-EE TV120D#+F+E+$40C+ V240$CC SV3$AA V4A-EE TV140C+20C++$C++$ V240$CC SV3$AA V4A-EE TV120C++B+E#+$40F+ V2$DD SV3$BB V4DFF TV140F+20C++$B+$ V240$DD SV3$BB V4DFF TV120B+A+D#+$40E+ V2$CC SV4EAA TV140E+20B+$A+$ V240$CC SV4EAA TV120A+G+40G20G+F+ V240D SV3B V4E$$ TV140F20F+F%+40F% V2D SV3A V4E$$ TV120E+E+40E+G V220EE40EE SV320GG40GG V420EE40EE TV140A20$A40A V2E20$E40E V3C20$A-40A- SV4A20$A-40A- ; No.4 - Amabile K2# TV180F+.40C+D+F+ V2$DD$DD SV3$AA$AA V480D.F. TV180B.B. V240$DD SV3$BBFGB V480G.40F-G-B- TV180G+.40D#+E+G+ V2$EE$EE SV3$GG$BB V480E.G. TV180C+.C+. V240$EE SV3$C+C+G#AC+ V480A.40G#-A-C TV180A+.40E#+F+A+ V2$CC$CC SV3$AA$AA V480F.F. TV180D+.40C+D+F+ V2$DD$DD SV3$BB$BB V4B-FFB-FF TV180E+.40D#+E+A+ SV2$B&B$C+C+ V3$GG$AA V480E.40A- TV180D+.40D+$$ SV2$AAA$$ V4DFFF$$ TV180F+.40C+D+F+ V2$DD$DD SV3$AA$AA V480D.F. TV180B.B. V240$DD SV3$BBFGB V480G.40F-G-B- TV180G+.40D#+E+G+ V2$EE$EE SV3$GG$BB V480E.G. TV180C+.C+. V240$EE SV3$C+C+G#AC+ V480A.40G#-A-C TV180A+.40E#+F+A+ V2$CC$CC SV3$AA$AA V480F.F. TV180D+.40C+D+F+ V2$DD$DD SV3$BB$BB V4B-FFB-FF TV180E+.40D#+E+A+ SV2$B&B$C+C+ V3$GG$AA V480E.40A- TV180D+.20A-DFAD+F+ SV240$AA V4DFFD$$ TV120A+B+A+F+D+G+F+D+BE+D+A SV240F+D+BAGF TV120C+C+40C+C+ V220GG40GG SV320AA40AA V420A-A-40A-A- TV120A+B+A+G+AF+E+E+40E+E+ V2$$$20AA40AA V3$$$20CC40CC SV4$$$20AA40AA TV120A+B+A+G+AF+D+D+40D+D+ V240$$$20AA40AA V3$$$20FF40FF V4$$$20DD40$$ TV120A-DFAD+F+ TV120A+B+A+F+D+G+F+D+BE+D+A SV240F+D+BAGF TV120C+C+40C+C+20C+D+C+F+E#+A+ V220G#G40GG V320CC40CC SV420E#E40EE TV120G#+G+40G+G+20C+F+E#+A+G#+C+ V2E#+E+40E+E+ V320CC40CC SV420CC40CC TV140F+20$F+40F+20A-DFAD+F+ V240C20$C+40C+ SV3A20$F40F V4F20$F-40F- TV120A+B+A+F+D+G+F+D+BE+D+A SV240F+D+BAGF TV120C+C+40C+C+ V220GG40GG SV320AA40AA V420A-A-40A-A- TV120A+B+A+G+AF+E+E+40E+E+ V2$$$20AA40AA V3$$$20CC40CC SV4$$$20AA40AA TV120A+B+A+G+AF+D+D+40D+D+ V240$$$20AA40AA V3$$$20FF40FF V4$$$20DD40$$ TV120A-DFAD+F+ TV120A+B+A+F+D+G+F+D+BE+D+A SV240F+D+BAGF TV120C+C+40C+C+20C+D+C+F+E#+A+ V220G#G40GG V320CC40CC SV420E#E40EE TV120G#+G+40G+G+20C+F+E#+A+G#+C+ V2E#+E+40E+E+ V320CC40CC SV420CC40CC TV140F+20$F+40F+ V240C20$C+40C+ SV3A20$F40F V4F20$F-40F- TV140A+.20A+40A+ V2C+.20C+40C+ SV3E.20E40E V4E-.20E-40E- TV180F+.40C+D+F+ V2$DD$DD SV3$AA$AA V480D.F. TV180B.B. V240$DD SV3$BBFGB V480G.40F-G-B- TV180G+.40D#+E+G+ V2$EE$EE SV3$GG$BB V480E.G. TV180C+.C+. V240$EE SV3$C+C+G#AC+ V480A.40G#-A-C TV180A+.40E#+F+A+ V2$CC$CC SV3$AA$AA V480F.F. TV180D+.40C+D+F+ V2$DD$DD SV3$BB$BB V4B-FFB-FF TV180E+.40D#+E+A+ SV2$B&B$C+C+ V3$GG$AA V480E.40A- TV180D+.40D+$$ SV2$AAA$$ V4DFFF$$ ; Coda K3# TV120E+E+40E+E+ V220DD40DD SV320BB40BB V420GG40GG TV120D+BD+F+B+F+ V280F+. V3B. SV4A. TV180E+. V220EE40EE SV320BB40BB V420GG40GG TV120D+BD+F+B+F+ V280F+. V3B. SV4A. TV120E+$10B++A++G++F++20E++$ V2E V3D SV4G TV110B+A+G+F+20E+$10D+C+BA20G$40$$ SV4$$10D+C+BA20G$40$$ SV1E-$$ V2E-$$ V3E-$$ V4E-$$ TV180C.E40F80F.F. SV240$AA$AA$GG$GG V380$.$.40$EE$EE V4A-EECEEB-DDE-DD TV180D.F40G80G.G. SV240$GG$GG$AA$AA V3$EE$EE V4B-DDE-DDCEECEE TV180B.A40C80E.D40C SV2$AA$AA$AA$AA V3$FF$FF$FF$FF V4F-CCF-CCB-DDB-DD TV180C.B-. SV240$GG$GG V3$EE$EE V4E-DDE-DD TV180A.40A$$ V2$EEE$$ V4A-CCC$$ TV180C.E40F80F.F. SV240$AA$AA$GG$GG V380$.$.40$EE$EE V4A-EECEEB-DDE-DD TV180D.F40G80G.G. SV240$GG$GG$AA$AA V3$EE$EE V4B-DDE-DDCEECEE TV180B.A40C80E.D40C SV2$AA$AA$AA$AA V3$FF$FF$FF$FF V4F-CCF-CCB-DDB-DD TV180C.B-. SV240$GG$GG V3$EE$EE V4E-DDE-DD V180A.40A V2$EEE V4A-CCC TV120E+A+F+A+ V240C+C+ TV120E+A+F+A+E+A+F+A+E+A+F+A+ V240C+C+C+C+C+C+ SV3$AA$AA V4A-EEE-EE TV140E+20G+$G+$ V240D+20D+$D+$ SV340$GG V4B-EE TV140E+20G+$G+$ V240D+20D+$D+$ SV340$GG V4E-EE TV120E+B+F+B+E+B+F+B+E+B+F+B+ V240D+D+D+D+D+D+ SV340$BB$GG V4G-EEE-EE TV140E+20A+$A+$ V240C+20C+$C+$ SV340$AA V4A-EE TV140E+20A+$A+$ V240C+20C+$C+$ SV340$AA V4E-EE TV120E+A+F+A+E+A+F+A+E+A+F+A+ V240C+C+C+C+C+C+ SV3$AA$AA V4A-EEA-EE TV140E+20G+$G+$ V240C+20E+$E+$ SV340$GG V4G-EE TV140E+20G+$G+$ V240C+20E+$E+$ SV340$GG V4G-EE TV120G+A+G+A+G+A+G+A+G+A+G+B#+ V240B#F+BF+BF+ SV3$GG$GG V4G-FFG-FF TV140C++20$C++40C++ V240E+20$E+40E+ SV340G20G40G V4C20$C40C TV140$20E+A+F+A+ V240$20C+$C+ TV120E+A+F+A+E+A+F+A+E+A+F+A+ V240C+C+C+C+C+C+ SV3$AA$AA V4A-EEE-EE TV140E+20G+$G+$ V240D+20D+$D+$ SV340$GG V4B-EE TV140E+20G+$G+$ V240D+20D+$D+$ SV340$GG V4E-EE TV120E+B+F+B+E+B+F+B+E+B+F+B+ V240D+D+D+D+D+D+ SV340$BB$GG V4G-EEE-EE TV140E+20A+$A+$ V240C+20C+$C+$ SV340$AA V4A-EE TV140E+20A+$A+$ V240C+20C+$C+$ SV340$AA V4E-EE TV120E+A+F+A+E+A+F+A+E+A+F+A+ V240C+C+C+C+C+C+ SV3$AA$AA V4A-EEA-EE TV140E+20G+$G+$ V240C+20E+$E+$ SV340$GG V4G-EE TV140E+20G+$G+$ V240C+20E+$E+$ SV340$GG V4G-EE TV120G+A+G+A+G+A+G+A+G+A+G+B#+ V240B#F+BF+BF+ SV3$GG$GG V4G-FFG-FF TV140C++20$C++40C++ V240E+20$E+40E+ SV340G20G40G V4C20$C40C TV120C+C+C+$C+$ V2CCC$C$ TV120C++B+E#+$40F+ V2$DD SV3$BB V4DFF TV140F+20C++$B+$ V240$DD SV3$BB V4DFF TV120B+A+D#+$40E+ V2$CC SV4EAA TV140E+20B+$A+$ V240$CC SV4EAA TV120A+G+A#$40B V2$DD SV3$GG V4B-EE TV140B20G+$F+$ V240$DD SV3$GG V4E-EE TV120D#+F+E+$40C+ V240$CC SV3$AA V4A-EE TV140C+20C++$C++$ V240$CC SV3$AA V4A-EE TV120C++B+E#+$40F+ V2$DD SV3$BB V4DFF TV140F+20C++$B+$ V240$DD SV3$BB V4DFF TV120B+A+D#+$40E+ V2$CC SV4EAA TV140E+20B+$A+$ V240$CC SV4EAA TV120A+G+40G20G+F+ V240D SV3B V4E$$ TV140F20F+F%+40F% V2D SV3A V4E$$ TV120F%+E+40E20E+E&+40E&20E&+D+40D V220D SV3G V4E TV180C.E40F80F.F. SV240$AA$AA$GG$GG V380$.$.40$EE$EE V4A-EECEEB-DDE-DD TV180D.F40G80G.G. SV240$GG$GG$AA$AA V3$EE$EE V4B-DDE-DDCEECEE TV180B.A40C80E.D40C SV2$AA$AA$AA$AA V3$FF$FF$FF$FF V4F-CCF-CCB-DDB-DD TV180C.B-. SV240$GG$GG V3$EE$EE V4E-DDE-DD TV180A.40A V2$EEE V4A-CCC ; Grandioso TV180$C+.E+40F+ V280$C.E40F SV380$40A-AA$AA V480$40A-EECEE TV180F+.F+. V2F.F. SV340$GG$GG V4B-EEE-EE TV180D+.F+40G+ V280D.F40G SV3$GG$GG V4B-EEE-EE TV180G+.G+. V2G.G. SV340$AA$AA V4CEECEE TV180B+.A+40C+ V280B.A40C SV3$C+C+$AA V4FAAF-FF TV180E+.D+40C+ V280E.D40C SV3$AA$AA V4B-DDB-DD TV180C+.B. V2C.B-. SV340$GG$GG V4E-DDE-DD TV120A$10A+B+C++D++20E++$ SV2A V3E V4A- TV110B+A+G+F+20E+$40G+ V2$$D+ SV3$$B V4$$E TV120A+$10A+B+C++D++20E++$ V2E+ SV3A V4A- TV110B+A+G+F+20E+$40G+ V2$$D+ SV3$$B V4$$E TV120A+$5D++35C++5D++35C++ V220E+$ SV380A. V4A-. TV15D++35C++5D++35C++5D++35C++ V240A+A+A+ V380F+. SV4F. TV15D++35C++5D++35C++5D++35C++ V240A+A+A+ V380E. SV4E. TV15D++35C++5D++35C++5D++35C++ V240A+A+A+ V380C. SV4C. TV15D++35C++5D++35C++5D++35C++ V240A+A+A+ SV380A. V4A-. TV15D++35C++5D++35C++5D++35C++ V240A+A+A+ SV380F. V4F-. TV15D++35C++5D++35C++5D++35C++ V240A+A+A+ SV380E. V4E-. TV15D++35C++5D++35C++5D++35C++ V240A+A+A+ SV380C. V4C-. TV15D++35C++40$$ V2A+$$ SV3A-$$ V4A-$$ TV180$20$.C++ V280$20$.E+ V380$20$.A SV480$20$.A TV140C++$$ V2E+$$ V3A$$ SV4A$$ TV180$20$.A V280$20$.C SV380$20$.A V480$20$.A- TV180A.A.40A V280C.C.40C SV380A-.A-.40A- V480A-.A-.40A- 250$ ================================================ FILE: examples/sounds/tofair.tun ================================================ [ [ "Come to the Fair" - Music: Easthope Martin, Lyrics: Helen Taylor. [ Arranged and coded by R.J.Stickley 3 June 1983. [ K2&=130 V1W2V2W5V3W5V4W3 PA TV124F TV1D+.12E+24F+ V2B.12C+24D+ SV3B-B V4B--F PB TV148A+24G+ V248A24G SV3EB V4E-G TV148F+24B V248F24B SV3DF V4D-D TV148F+24E+ V248G24C+ SV3CG V4C-E TV148D+24B V248F24D SV3FB V4F-F TV124D+.12C+24B V2E%. SV3GB& V4G-G TV148C+. V224$GA V3$E&F SV448F-. TV124B V2F SV3B- V4B-- [ The sun is a shining to welcome the day, heigh ho! come to the fair. [ The folk are all singing so merry and gay, heigh ho! come to the fair. [ All the stalls on the green are as fine as can be, with trinkets and [ tokens so pretty to see, so it's come then, maidens and men, to the fair [ in the pride of the morning. [ So deck yourselves out in your finest array, [ With a heigh ho! come to the fair. PC TV124$F TV1BBB V2$FF SV348B- V4B-- TV124BC+B V2$E%E% SV348C V4C- TV124AFF V2$FF SV3F V4F- TV1F.$12$ V224$GA SV348E V4E- PD TV148B. V224B-FF SV348D. V4D-. TV1F+. V224FAA SV3D+. V4D. TV124E+D+C+ V2GFE SV3C+48F V424CFF- TV1B.12$24F V224F.$12$ V324D.$12$ SV424B-12B-- PE TV124B,B,B, V2D,D,E%, SV3B-,C,C#, V4B--,C--,C#--, TV1BC+B V2F48G SV324D48E% V424D-48E%- TV124AFF, V2CB-B%-, SV3FGG#, V4F-G-G#-, TV124FGA V248C. SV324AFE& V4A-F-E&- PF TV148B. V224B-FF SV348D. V4D-. TV1F+. V224FAA SV3D+. V4D. TV124E+D+C+ V2GFE SV3C+48F V424CFF- TV1B.12$ V224F. V324D. SV424B-12B-- PG TV112BC+ TV124D+D+D+ V2$BB SV348B24A V448B-24A- TV124D+C+B V248E%. SV3G. V4G-. TV124C+C+C+ V2$FE% SV348A24G V448A-24G- TV124C+BA V248E&. SV3F#. V4F#-. TV124BBB V2$E%D SV348G24F% V448G-24F%- TV124BAG V248C#. SV3E%. V4E%-. TV124AAAA V2$DDC# SV348F24$E% V448F-24$E%- PH TV124B%C#+ V2B%-C# SV3E%A- V4E%-A-- TV148D+. V224DAA SV348D. V4D-. TV1B. V224B-GG SV348E%. V4E%-. TV124AFG V2A-C#A- SV348A-. V4A--. TV124AFG V2B-DB- SV348B-. V4B--. TV124AFG V2B%-48D SV3G-. V4G--. TV124AC+A V248F24F SV348C. V4C-. TV148G. V224$DC SV3CDE% V4C-D-E%- PI TV124F.12F V224CE&C SV348F. V4F-. TV124BBB V2DDE% SV3B-CC# V4B--C--C#-- TV1BC+B V2F48G SV324D48E% V424D-48E%- TV124AFF V2CB-B%- SV3FGG# V4F-G-G#- PJ TV124FGA V248C24E SV348A24F V448A-24F- TV148B. V224B-DD SV348D.V4D-. TV148F+.F+12F+$ V224FAAFG12F$ SV348D+.C+12C+$ V448D.C12C$ TV124E+D+C+ V2AFE SV348F24F- V448F-24F-- TV124D+.12E+24F+ V248B. SV324B-D+ V4B--F PK RB TV148A+24G+ V248A24G SV3EB V4E-G TV148F+24B V248F24B SV3DF V4D-D TV148F+24E+ V248G24C+ SV3CG V4C-E TV148D+24B V248F24D SV3FB V4F-F TV124D+.12C+24B V2E%. SV3GB& V4G-G TV148C+. V224$GA V3$E&F SV448F-. TV124B V2F SV3B- V4B-- [ [ The fiddles are playing the tune that you know, heigh ho! come to the fair. [ The drums are all beating, away let us go, heigh ho! come to the fair. [ There'll be racing and chasing from morning till night, and roundabouts [ turning to left and to right, so it's come then maidens and men to the [ fair in the pride of the morning. [ So lock up your house, there'll be plenty of fun, [ And it's heigh ho! come to the fair. V1W4V2W6V3W6V4W6 PL TV124$F TV124BBB V212$BC+D+E+F+ V324B-FF V4B-DD TV124BC+B V212G+A+B+C++D++E%++ V324G-E%E% V4G-CB- TV124AFF V212F++E++A+F+C+A V324F-CC SV4FAA TV124FGA V2FFF SV3EC+C+ V4EAA V1W6V2W5V3W5V4W3 PM TV148B. V224B-FF SV348D. V4D-. TV1F+. V224FAA SV3D+. V4D. TV124E+D+C+ V2GFE SV3C+48F V424CFF- TV1B.12$24F V224F.$12$ V324D.$12$ SV424B-12B-- V1W6V2W6V3W6V4W4 PN TV124$12B,B,24B, V2$12F,F,24F, V3$12B-,B-,24B-, SV448B-. TV124$12B,B,24B, V2$12E%,E%,24E%, V3$12C,C,24C, SV448C. TV124$12A,A,24A, V2$12F,F,24F, V3$12C,C,24C, SV448F. TV124F. V224$FA V3$CC SV448E-. PO TV148B. V224B-FF SV348D. V4D-. TV1F+. V224FAA SV3D+. V4D. TV124E+D+C+ V2GFE SV3C+48F V424CFF- TV124B$ V224F$ V324D$ SV424B-$ V1W5V2W5V3W5V4W5 PP TV112BC+ TV124D+D+D+ V2$12GABC+ V324$FF SV448B. TV124D+C+B V2$E%E% V3$CC SV4G. TV124C+C+C+ V2C+12FGAB V324$E%E% SV448A. TV124C+BA V2$DE V3$B-C SV448F#. TV124BBB V2B12E%FGA V324$DD SV448G. TV124BAG V2$C#C# V3$B&B& SV448E%. TV124AAAA V2$DDC# SV348F24$E% V448F-24$E%- V1W2V2W6V3W6V4W4 PQ RH RI TV124B%C#+ V2B%-C# SV3E%A- V4E%-A-- TV148D+. V224DAA SV348D. V4D-. TV1B. V224B-GG SV348E%. V4E%-. TV124AFG V2A-C#A- SV348A-. V4A--. TV124AFG V2B-DB- SV348B-. V4B--. TV124AFG V2B%-48D SV3G-. V4G--. TV124AC+A V248F24F SV348C. V4C-. TV148G. V224$DC SV3CDE% V4C-D-E%- TV124F.12F V224CE&C SV348F. V4F-. TV124BBB V2DDE% SV3B-CC# V4B--C--C#-- TV1BC+B V2F48G SV324D48E% V424D-48E%- TV124AFF V2CB-B%- SV3FGG# V4F-G-G#- PS RJ RB TV124FGA V248C24E SV348A24F V448A-24F- TV148B. V224B-DD SV348D.V4D-. TV148F+.F+12F+$ V224FAAFG12F$ SV348D+.C+12C+$ V448D.C12C$ TV124E+D+C+ V2AFE SV348F24F- V448F-24F-- TV124D+.12E+24F+ V248B. SV324B-D+ V4B--F TV148A+24G+ V248A24G SV3EB V4E-G TV148F+24B V248F24B SV3DF V4D-D TV148F+24E+ V248G24C+ SV3CG V4C-E TV148D+24B V248F24D SV3FB V4F-F TV124D+.12C+24B V2E%. SV3GB& V4G-G TV148C+. V224$GA V3$E&F SV448F-. TV124B V2F SV3B- V4B-- [ [ For love making too, if so be you've a mind, heigh ho! come to the fair. [ For hearts that are happy are loving and kind, heigh ho! come to the fair. [ If "Haste to the wedding" the fiddles would play, we warrant you'll dance [ to the end of the day; come then maidens and men to the fair in the pride [ of the morning. The sun is a shining to welcome the day, with a heigh ho! [ come to the fair, maidens and men, maidens and men, come to the fair [ in the morning. Heigh Ho! come to the fair! V1W5V2W5V3W5V4W5 PU RC TV124$F TV1BBB V2$FF SV348B- V4B-- TV124BC+B V2$E%E% SV348C V4C- TV124AFF V2$FF SV3F V4F- TV1F.$12$ V224$GA SV348E V4E- V1W2V2W5V3W5V4W3 PV RD TV148B. V224B-FF SV348D. V4D-. TV1F+. V224FAA SV3D+. V4D. TV124E+D+C+ V2GFE SV3C+48F V424CFF- TV1B.12$24F V224F.$12$ V324D.$12$ SV424B-12B-- V1W6V2W6V3W6V4W7 PW RE TV124B,B,B, V2D,D,E%, SV3B-,C,C#, V4B--,C--,C#--, TV1BC+B V2F48G SV324D48E% V424D-48E%- TV124AFF, V2CB-B%-, SV3FGG#, V4F-G-G#-, TV124FGA V248C. SV324AFE& V4A-F-E&- V1W2V2W5V3W5V4W3 PX RF TV148B. V224B-FF SV348D. V4D-. TV1F+. V224FAA SV3D+. V4D. TV124E+D+C+ V2GFE SV3C+48F V424CFF- TV1B.12$ V224F. V324D. SV424B-12B-- V1W6V2W2V3W2V4W3 PY RP TV112BC+ TV124D+D+D+ V2$12GABC+ V324$FF SV448B. TV124D+C+B V2$E%E% V3$CC SV4G. TV124C+C+C+ V2C+12FGAB V324$E%E% SV448A. TV124C+BA V2$DE V3$B-C SV448F#. TV124BBB V2B12E%FGA V324$DD SV448G. TV124BAG V2$C#C# V3$B&B& SV448E%. TV124AAAA V2$DDC# SV348F24$E% V448F-24$E%- V1W2V2W5V3W6V4W6 PZ RH TV124B%C#+ V2B%-C# SV3E%A- V4E%-A-- TV148D+. V224DAA SV348D. V4D-. TV1B. V224B-GG SV348E%. V4E%-. TV124AFG V2A-C#A- SV348A-. V4A--. TV124AFG V2B-DB- SV348B-. V4B--. TV124AFG V2B%-48D SV3G-. V4G--. TV124AC+A V248F24F SV348C. V4C-. TV148G. V224$DC SV3CDE% V4C-D-E%- PA TV124F.12F V224CE&C SV348F. V4F-. TV124BBB V2DDE% SV3B-CC# V4B--C--C#-- TV1BC+B V2F48G SV324D48E% V424D-48E%- TV124AFF V2CB-B%- SV3FGG# V4F-G-G#- TV124FGA V248C24E SV324AFE V424A-F-E- TV148B. V224B-DD SV348D.V4D-. TV148F+. V224FAA SV348D+. V448D. TV124F+E+D+ V2$GG SV348C+. V4C. TV148E+. V224ABC+ SV3FGA V4F-G-A- TV124E+D+C+ V2$FF SV348B. V4B-. TV148D+. V2E. SV324EFG V4E-F-G- TV124D+C+B V2$GG SV3A. V4A-. TV148C+. V224F#GA SV3DE%F# V4D-E%-F#- TV124C+BA V2$GG SV348G. V4G-. TV124BC+B V248C. SV3E%24C V448E%-24C- TV148A24G V2$FE% SV348F24G V448F-24G- TV124FGA V248C24E& SV3AGF V4A-G-F- TV148B. V224B-DD SV348D.V4D-. V1W5V2W5V3W5V4W3 PE TV148F+. V224FAA SV348D+. V448D. TV148F12F$ V224$G12G$ SV348C+12C+$ V448C12C$ TV124E+D+C+ V224E+D+F+ SV348F24A V448F-24A- PF TV1 48B+. V2 24D+.12E+24F+ V3 24B+.12C+24D+ V4 24B--F$ TV1 48B+. V2 48G+24B+ V3 48E+24G+ V4 24E-E$ TV1 48B+. V2 48B. V3 48B-. V4 48B--. TV1 24B+ V2 48B+. V3 48F. V4 48D. TV1 24D+ V2 24B+ V3 24F V4 24D ================================================ FILE: examples/starcmds.txt ================================================ Command Description Informal syntax *BYE Exit the interpreter and return to the calling program. Synonymous with *QUIT. OSCLI "BYE" *CD Print the current working directory. If followed by a name, acts as *CHDIR. OSCLI "CD" [+ " """ + name$ + """"] *CHDIR Change the current working directory (folder) to a different drive and/or path. OSCLI "CHDIR """ + directory$ + """" *COPY Copy a file, the extensions default to .bbc (add a trailing dot if none). OSCLI "COPY """ + srcfile$ + """ """ + dstfile$ + """" *DEL Delete the specified file, the extension defaults to .bbc (add a dot if none). OSCLI "DEL """ + file$ + """" *DELETE Synonymous with *DEL. *DIR List the disk directory, optionally specifying the directory and/or filename. OSCLI "DIR" [+ " """ + afsp$ + """"] *. Synonymous with *DIR. *DISPLAY Display an image (BMP, GIF, JPG, PNG) optionally specifying posn, size and key. OSCLI "DISPLAY """ + file$ + """ " [+ STR$(x%) + "," + STR$(y%) + "," + STR$(w%) + "," + STR$(h%) [+ "," + STR$~key%]] *DUMP List the hex contents of a file, optionally specifying the start and length. OSCLI "DUMP """ + file$ + """ " [+ STR$~start% [+ " +" + STR$~length%]] *ERA Synonymous with *DEL. *ERASE Synonymous with *ERA and *DEL. *ESC Enable or disable the abort/error action of the ESCape or Back key (ERR = 17). OSCLI "ESC ON|OFF" *EXEC Accept console input from the specified file rather than from the keyboard. OSCLI "EXEC """ + file$ + """" *FLOAT Select the floating-point precision used by indirection (|) and data files. OSCLI "FLOAT 40|64|80" *FONT Select the required font file (TTF or OTF), size and, optionally, attribute(s). OSCLI "FONT """ + font$ + """," + STR$(points%) [+ ",BIUQ"] *FX Ignored except for *FX 15,n and *FX 21,n which flush the specified buffer. OSCLI "FX " + STR$(number%) [+ "," + STR$(buffer%)] *FX19 Force a screen refresh, synonymous with *REFRESH (with no parameters). *GSAVE Save the output window, or a specified rectangle, to a BMP-format image file. OSCLI "GSAVE """ + file$ + """ " [+ STR$(x%) + "," + STR$(y%) + "," + STR$(w%) + "," + STR$(h%)] *HELP Print the name and version number of BBC BASIC. OSCLI "HELP" *HEX Set hexadecimal conversion (& and ~) and shifts (<< and >>>) to 32 or 64 bits. OSCLI "HEX 32|64" *INPUT Redirect console input to come from the specified input channel (0 = keyboard). OSCLI "INPUT " + STR$(channel%) *KEY Redefine a function or cursor key to return the specified string (or not). OSCLI "KEY " + STR$(keynum%) [+ " """ + string$ + """"] *LIST List the specified internal format (tokenised, .bbc) program file. OSCLI "LIST """ + progfile$ + """" *LOAD Load a file into memory at the specified hex address and maximum length. OSCLI "LOAD """ + file$ + """ " + STR$~address%% + " " + STR$~maxlen% *LOCK Set the specified file to 'read-only' status, the extension defaults to .bbc. OSCLI "LOCK """ + file$ + """" *LOWERCASE Enable or disable accepting keywords, hex and E-format numbers in lowercase. OSCLI "LOWERCASE ON|OFF" *MD Create a new directory (folder) with the specified relative or absolute name. OSCLI "MKDIR """ + directory$ + """" *MDISPLAY As *DISPLAY but read the image data from memory rather than from a file. OSCLI "MDISPLAY " + STR$~address%% + " " [+ STR$(x%) + "," + STR$(y%) + "," + STR$(w%) + "," + STR$(h%) [+ "," + STR$~key%]] *MKDIR Synonymous with *MD. *OSK Enable or disable the On Screen Keyboard (effective only in Android and iOS). OSCLI "OSK ON|OFF" *OUTPUT Redirect console output to go to the specified output channel (0 = screen). OSCLI "OUTPUT " + STR$(channel%) *QUIT Synonymous with *BYE (and with the QUIT statement). OSCLI "QUIT" *RD Remove (delete) the directory with the specified relative or absolute name. OSCLI "RMDIR """ + directory$ + """" *REFRESH Enable or disable automatic screen refresh, or force an immediate refresh. OSCLI "REFRESH [ON|OFF]" *REN Rename a file, the extensions default to .bbc (add a trailing dot if none). OSCLI "REN """ + oldname$ + """ """ + newname$ + """" *RENAME Synonymous with *REN. *RMDIR Synonymous with *RD. *RUN Run an external command or executable program, optionally not waiting. OSCLI "RUN " + command$ [;] */ Synonymous with *RUN. *SAVE Save an area of memory to the specified file, the extension defaults to .bbc. OSCLI "SAVE """ + file$ + """ " + STR$~start%% + " +" + STR$~length% *SCREENSAVE Synonymous with *GSAVE. *SPOOL Copy subsequent console output to the specified file, or terminate spooling. OSCLI "SPOOL" [+ " """ file$ + """"] *SPOOLON Append all subsequent console output to the specified file. OSCLI "SPOOLON """ + file$ + """" *STEREO Set the position on the stereo stage −127..+127 of the specified SOUND channel. OSCLI "STEREO " + STR$(chan%) + "," + STR$(pan%) *SYS Select what events will result in an ON SYS (or ON MOUSE) interrupt. OSCLI "SYS " + STR$(num%) *TEMPO Set the units (centiseconds) of the duration parameter of the SOUND statement. OSCLI "TEMPO " + STR$(num%) *TIMER Set the periodicity, in milliseconds, of the ON TIME interrupt. OSCLI "TIMER " + STR$(num%) *TV Ignored, for compatibility with BBC Micro programs. *TYPE Print the specified text file to the screen, the extension defaults to .bbc. OSCLI "TYPE """ + file$ + """" *UNLOCK Set the specified file to 'read/write' status, the extension defaults to .bbc. OSCLI "UNLOCK """ + file$ + """" *VOICE Assign the specified 'voice' ('waveform' or 'stop', 0-7) to a SOUND channel. OSCLI "VOICE " + STR$(chan%) + "," + STR$(wave%) *| A comment; anything following the '|' up to the end of the line is ignored. The OSCLI form of the command must be used if the parameters include variables. Directory and file names must be quoted if they include a space or punctuation. ================================================ FILE: examples/vducodes.txt ================================================ VDU code Description Notes VDU 0 NUL, do nothing, it is ignored. VDU 1,c Send a character directly to the printer, if it has been enabled with VDU 2. Not currently implemented in BBCSDL VDU 2 Enable the printer, subsequent console output goes to the screen and printer. Not currently implemented in BBCSDL VDU 3 Disable the printer, reverses the effect of VDU 2. Not currently implemented in BBCSDL VDU 4 Restore the normal 'print at text caret' mode, reverses the effect of VDU 5. VDU 4 text has an opaque background VDU 5 Cause text to be written at the current graphics position, except in MODE 7. VDU 5 text has a transparent background VDU 6 Enable output to the screen, reverses the effect of VDU 21. VDU 7 Send a Ctrl+G character to the console, which may result in a short 'beep'. Not currently functional in BBCSDL VDU 8 Move the text caret one character in the negative X direction (normally left). Average width if proportional-spaced VDU 9 Move the text caret one character in the positive X direction (normally right). Average width if proportional-spaced VDU 10 Move the text caret one row in the positive Y direction (normally down). 'Line feed' VDU 11 Move the text caret one row in the negative Y direction (normally up). VDU 12 Clear the text viewport to the current text background colour & home the caret. Equivalent to CLS VDU 13 Move the text caret to column 0 in the current row (normally the left edge). 'Carriage return' VDU 14 Enable auto-paging mode, scrolling pauses until or is pressed. VDU 15 Disable auto-paging mode, reverses the effect of VDU 14. VDU 16 Clear the graphics viewport using the current background GCOL action & colour. Equivalent to CLG VDU 17,n Set the text foreground (n < 128) or background (n >= 128) logical colour. Equivalent to COLOUR n VDU 18,m,n Set the graphics foreground or background logical colour and plotting action. Equivalent to GCOL m,n VDU 19... Set the colour palette, i.e. the mapping between logical and physical colours: VDU 19,n,p,0,0,0 Set logical colour n to physical colour p in the standard palette. VDU 19,n,-1,r,g,b Set logical colour n to the specified RGB colour (each 0-63). VDU 19,n,16,R,G,B Set logical colour n to the specified RGB colour (each 0-255). Equivalent to COLOUR n,R,G,B VDU 19,n+128,A,R,G,B Set logical colour n to the specified ARGB colour (A = alpha, 0-255). VDU 20 Set the text and graphics colours, and the colour palette, to their defaults. VDU 21 Disable the VDU drivers until a VDU 6 is received, other output is discarded. VDU 22,n Select the specified display mode and reset VDU variables to their defaults. Equivalent to MODE n VDU 23... A multi-purpose command, VDU 23 is always followed by exactly 9 more bytes: VDU 23,n,a,b,c,d,e,f,g,h Redefine character n (32-255) to the specified 8x8 dot pattern. VDU 23,0,10,s,0;0;0; Set the start line of the text caret (0 = top). VDU 23,0,11,e,0;0;0; Set the end line of the text caret. VDU 23,0,18,w,0;0;0; Set the width of the text caret in pixels. VDU 23,1,0;0;0;0; Hide the text caret (cursor). Equivalent to OFF VDU 23,1,1;0;0;0; Show the text caret (cursor). Equivalent to ON VDU 23,7,m,d,0;0;0; Control how the screen scrolls. See the main documentation VDU 23,16,x,y,0;0;0; Control how the text caret moves after a character is output. See the main documentation VDU 23,18,3,0,0;0;0; In MODE 7, disable black text & mosaics, and alt character sets. VDU 23,18,3,1,0;0;0; In MODE 7, enable black text & mosaics, and alt character sets. VDU 23,22,w;h;cx,cy,n,bg Select a custom display mode (size, number of rows & cols etc). See the main documentation VDU 23,23,t;0;0;0; Set the thickness in pixels when drawing lines and curves. VDU 24,l;b;r;t; Set a graphics viewport: left, bottom, right and top respectively. Coordinates are graphics units VDU 25,p,x;y; A general-purpose plotting command, where p = code, x & y = coordinates. Equivalent to PLOT p,x,y VDU 26 Initialise the text and graphics viewports, home the caret & graphics position. VDU 27,n Send the code n to the screen without interpreting it as a control character. VDU 28,l,b,r,t Set a text viewport: left, bottom, right and top respectively. Coordinates are row and column numbers VDU 29,x;y; Move the graphics origin to the specified graphics coordinates. Equivalent to ORIGIN x,y VDU 30 Home the text caret (in VDU 4 mode) or the graphics position (in VDU 5 mode). Default is the top-left corner VDU 31,x,y Move the text caret (cursor) to the specified coordinates. Equivalent to PRINT TAB(x,y); VDU 127 Delete the character to the left of the caret and backspace to this position. Works in both VDU 4 and VDU 5 modes ================================================ FILE: include/BBC.h ================================================ /******************************************************************\ * BBC BASIC for SDL 2.0 (32-bits or 64-bits) * * Copyright (c) R. T. Russell, 2000-2023 * * * * BBC.h constant, variable and structure declarations * * Version 1.34b, 20-Feb-2023 * \******************************************************************/ // Constants: #define STACK_NEEDED 512 #ifdef PICO extern void *libtop; #define ACCSLEN 1024 // Must be the same in bbcsdl.h and bbccon.h #else #define ACCSLEN 65536 // Must be the same in bbcsdl.h and bbccon.h #endif // Sentinels: #define CALCHK 0xC3414C43 #define DIMCHK 0xC4494D43 #define FNCHK 0xC64E4348 #define FORCHK 0xC64F5243 #define GOSCHK 0xC74F5343 #define LDCHK 0xCC444348 #define LOCCHK 0xCC4F4343 #define ONCHK 0xCF4E4348 #define PROCHK 0xD0524F43 #define REPCHK 0xD2455043 #define RETCHK 0xD2455443 #define WHICHK 0xD7484943 // Tokens: #define TAND -128 #define TDIV -127 #define TEOR -126 #define TMOD -125 #define TOR -124 #define TERROR -123 #define TLINE -122 #define TOFF -121 #define TSTEP -120 #define TSPC -119 #define TTAB -118 #define TELSE -117 #define TTHEN -116 #define TLINO -115 #define TOPENIN -114 #define TPTRR -113 #define TPAGER -112 #define TTIMER -111 #define TLOMEMR -110 #define THIMEMR -109 #define TABS -108 #define TACS -107 #define TADVAL -106 #define TASC -105 #define TASN -104 #define TATN -103 #define TBGET -102 #define TCOS -101 #define TCOUNT -100 #define TDEG -99 #define TERL -98 #define TERR -97 #define TEVAL -96 #define TEXP -95 #define TEXTR -94 #define TFALSE -93 #define TFN -92 #define TGET -91 #define TINKEY -90 #define TINSTR -89 #define TINT -88 #define TLEN -87 #define TLN -86 #define TLOG -85 #define TNOT -84 #define TOPENUP -83 #define TOPENOUT -82 #define TPI -81 #define TPOINT -80 #define TPOS -79 #define TRAD -78 #define TRND -77 #define TSGN -76 #define TSIN -75 #define TSQR -74 #define TTAN -73 #define TTO -72 #define TTRUE -71 #define TUSR -70 #define TVAL -69 #define TVPOS -68 #define TCHR -67 #define TGETS -66 #define TINKEYS -65 #define TLEFT -64 #define TMID -63 #define TRIGHT -62 #define TSTR -61 #define TSTRING -60 #define TEOF -59 #define TSUM -58 #define TWHILE -57 #define TCASE -56 #define TWHEN -55 #define TOF -54 #define TENDCASE -53 #define TOTHERWISE -52 #define TENDIF -51 #define TENDWHILE -50 #define TPTRL -49 #define TPAGEL -48 #define TTIMEL -47 #define TLOMEML -46 #define THIMEML -45 #define TSOUND -44 #define TBPUT -43 #define TCALL -42 #define TCHAIN -41 #define TCLEAR -40 #define TCLOSE -39 #define TCLG -38 #define TCLS -37 #define TDATA -36 #define TDEF -35 #define TDIM -34 #define TDRAW -33 #define TEND -32 #define TENDPROC -31 #define TENVEL -30 #define TFOR -29 #define TGOSUB -28 #define TGOTO -27 #define TGCOL -26 #define TIF -25 #define TINPUT -24 #define TLET -23 #define TLOCAL -22 #define TMODE -21 #define TMOVE -20 #define TNEXT -19 #define TON -18 #define TVDU -17 #define TPLOT -16 #define TPRINT -15 #define TPROC -14 #define TREAD -13 #define TREM -12 #define TREPEAT -11 #define TREPORT -10 #define TRESTOR -9 #define TRETURN -8 #define TRUN -7 #define TSTOP -6 #define TCOLOUR -5 #define TTRACE -4 #define TUNTIL -3 #define TWIDTH -2 #define TOSCLI -1 #define TCIRCLE 1 #define TELLIPSE 2 #define TFILL 3 #define TMOUSE 4 #define TORIGIN 5 #define TQUIT 6 #define TRECT 7 #define TSWAP 8 #define TSYS 9 #define TTINT 10 #define TWAIT 11 #define TINSTALL 12 #define TPRIVATE 14 #define TBY 15 #define TEXIT 16 #define FUNTOK TLINO // first function token #define TOKLO TPTRR #define TOKHI THIMEMR #define OFFSIT TPTRL-TPTRR // Non-token statements: // * star command // = return from function // ( label // : separator // [ assembler // Bit names: #define BIT0 0x01 #define BIT1 0x02 #define BIT2 0x04 #define BIT3 0x08 #define BIT4 0x10 #define BIT5 0x20 #define BIT6 0x40 #define BIT7 0x80 // Flag bits: #define ESCFLG BIT7 // ESCape key pressed #define ESCDIS BIT6 // ESCape key disabled (*ESC OFF) #define ALERT BIT5 // Pending event interrupt #define FLASH BIT4 // MODE 7 flash update needed #define PHASE BIT3 // MODE 7 flash phase #define PAUSE BIT2 // In debug paused state #define SSTEP BIT1 // Single-step requested #define KILL BIT0 // Program wants to terminate // Special 32-bit 'pointer' type for BASIC's heap: #define STRIDE sizeof(void *) / sizeof(heapptr) typedef unsigned int heapptr ; // Structures and unions: typedef struct tagPARM { size_t i[16] ; double f[8] ; } PARM, *LPPARM ; // A variant holds an 80-bit long double, a 64-bit long long or a string descriptor. // n.b. GCC pads a long double to 16 bytes (128 bits) for alignment reasons but only // the least-significant 80-bits need to be stored on the heap, in files etc. // When a long double is 64-bits rather than 80-bits (e.g. ARM) it will be necessary // to force the type word (.i.t or .s.t member) to a value other than 0 or -1. typedef union __attribute__ ((packed)) __attribute__ ((aligned (4))) tagVAR { #if defined __arm__ || defined __aarch64__ || defined __EMSCRIPTEN__ || defined __ANDROID__ double f ; #else long double f ; #endif struct { long long n ; short t ; // = 0 } i ; struct { heapptr p ; // Assumed to be 32 bits unsigned int l ; // Must be unsigned for overflow tests in 'math' short t ; // = -1 } s ; struct { double d ; short t ; // unused (loadn/storen only) } d ; } VAR, *LPVAR ; // String descriptor: typedef struct __attribute__ ((packed)) __attribute__ ((aligned (4))) tagSTR { heapptr p ; // Assumed to be 32 bits int l ; } STR, *LPSTR ; typedef struct tagRND { unsigned int l ; unsigned char h ; } RND, *LPRND ; // Structure for linked list of string free space struct node { struct node *next ; char *data ; } ; typedef struct node node ; // Base address for 32-bit offsets into heap: #if defined(__x86_64__) || defined(__aarch64__) #define zero userRAM #define TMASK 31 #define STYPE 16 #define ATYPE 40 #else #define zero (void*) 0 #define TMASK 15 #define STYPE 24 #define ATYPE 4 #endif // Register globals: #ifdef __llvm__ extern signed char *esi ; // Program pointer extern heapptr *esp ; // Stack pointer #else #ifdef __i386__ register signed char *esi asm ("esi") ; // Program pointer register heapptr *esp asm ("edi") ; // Stack pointer #endif #ifdef __arm__ register signed char *esi asm ("r10") ; // Program pointer register heapptr *esp asm ("r11") ; // Stack pointer #endif #ifdef __x86_64__ register signed char *esi asm ("r12") ; // Program pointer register heapptr *esp asm ("r13") ; // Stack pointer #endif #ifdef __aarch64__ register signed char *esi asm ("x27") ; // Program pointer register heapptr *esp asm ("x28") ; // Stack pointer #endif #endif // Data locations (defined in bbdata_xxx_xx.nas): extern unsigned char errnum ; // Error code number extern char *accs ; // String accumulator extern char *buff ; // Temporary line buffer extern heapptr *onersp ; // ON ERROR LOCAL stack pointer extern heapptr vpage ; // Value of PAGE extern heapptr errlin ; // Pointer to error line extern heapptr curlin ; // Pointer to current line extern heapptr errtrp ; // Pointer to ON ERROR handler extern heapptr timtrp ; // Pointer to ON TIME handler extern heapptr clotrp ; // Pointer to ON CLOSE handler extern heapptr siztrp ; // Pointer to ON MOVE handler extern heapptr systrp ; // Pointer to ON SYS handler extern heapptr moutrp ; // Pointer to ON MOUSE handler extern heapptr libase ; // Base of libraries extern heapptr datptr ; // DATA pointer extern heapptr lomem ; // Pointer to base of heap extern heapptr pfree ; // Pointer to free space extern heapptr himem ; // Pointer to top of stack extern const char *errtxt ; // Most recent error message extern int stavar[] ; // Static integer variables extern heapptr dynvar[] ; // Linked-list pointers extern heapptr fnptr[] ; // Pointer to user FuNctions extern heapptr proptr[] ; // Pointer to user PROCedures extern node *flist[] ; // String free-lists extern STR tmps ; // Temporary string descriptor extern unsigned char liston ; // *FLOAT/*HEX/*LOWERCASE/OPT extern unsigned char lstopt ; // LISTO value (indentation) extern unsigned int vcount ; // Character count since newline extern unsigned char vwidth ; // Width for auto-newline extern int link00 ; // Terminating link in @ list extern heapptr vduptr ; // @vdu{} structure pointer extern heapptr vdufmt ; // @vdu{} structure format extern unsigned char evtqw ; // Event queue write pointer extern unsigned char evtqr ; // Event queue read pointer extern void *sysvar ; // Start of @ variables linked list extern unsigned short tracen ; // TRACE maximum line number extern unsigned char flags ; // BASIC's Boolean flags byte extern RND prand ; // Pseudo-random number extern unsigned char fvtab[] ; // Table of 'fast' variable types extern char modeno ; // MODE number extern size_t memhdc ; // SDL Renderer extern heapptr cmdadr, diradr, libadr, usradr, tmpadr ; extern int cmdlen, dirlen, liblen, usrlen, tmplen ; // Defined in bbcsdl.c: extern char *szCmdLine ; // @cmd$ extern char *szLoadDir ; // @dir$ extern char *szLibrary ; // @lib$ extern char *szUserDir ; // @usr$ extern char *szTempDir ; // @tmp$ extern const char szNotice [] ; extern void *userRAM ; // Alignment helper types: typedef __attribute__((aligned(1))) int unaligned_int; typedef __attribute__((aligned(1))) intptr_t unaligned_intptr_t; typedef __attribute__((aligned(1))) unsigned int unaligned_uint; typedef __attribute__((aligned(1))) unsigned short unaligned_ushort; typedef __attribute__((aligned(1))) void* unaligned_void_ptr; typedef __attribute__((aligned(1))) char* unaligned_char_ptr; typedef __attribute__((aligned(1))) VAR unaligned_VAR; // Helper macros to fix alignment problem: #ifdef PICO static inline int ILOAD(void* p){ return (intptr_t)p&3 ? *((unaligned_int*)p) : *((int*)p); } static inline void ISTORE(void* p, int i){ if ((intptr_t)p&3) *((unaligned_int*)p) = i; else *((int *)p) = i; } #else #define ILOAD(p) *((unaligned_int*)(p)) #define ISTORE(p,i) *((unaligned_int*)(p)) = i #endif #define TLOAD(p) *((unaligned_intptr_t*)(p)) #define TSTORE(p,i) *((unaligned_intptr_t*)(p)) = i #define ULOAD(p) *((unaligned_uint*)(p)) #define USTORE(p,i) *((unaligned_uint*)(p)) = i #define SLOAD(p) *((unaligned_ushort*)(p)) #define SSTORE(p,i) *((unaligned_ushort*)(p)) = i #define VLOAD(p) *((unaligned_void_ptr*)(p)) #define VSTORE(p,i) *((unaligned_void_ptr*)(p)) = i #define CLOAD(p) *((unaligned_char_ptr*)(p)) #define CSTORE(p,i) *((unaligned_char_ptr*)(p)) = i #define NLOAD(p) *((unaligned_VAR*)(p)) #define NSTORE(p,i) *((unaligned_VAR*)(p)) = i ================================================ FILE: include/SDL2_gfxPrimitives.h ================================================ /* SDL2_gfxPrimitives.h: graphics primitives for SDL Copyright (C) 2012-2014 Andreas Schiffler Additions for BBC BASIC (C) 2016-2020 Richard Russell This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. Andreas Schiffler -- aschiffler at ferzkopp dot net Richard Russell -- richard at rtrussell dot co dot uk */ #ifndef _SDL2_gfxPrimitives_h #define _SDL2_gfxPrimitives_h #include #ifndef M_PI #define M_PI 3.1415926535897932384626433832795 #endif #include "SDL2/SDL.h" /* Set up for C function definitions, even when using C++ */ #ifdef __cplusplus extern "C" { #endif /* ----- Versioning */ #define SDL2_GFXPRIMITIVES_MAJOR 1 #define SDL2_GFXPRIMITIVES_MINOR 0 #define SDL2_GFXPRIMITIVES_MICRO 1 /* ---- Function Prototypes */ #ifdef _MSC_VER # if defined(DLL_EXPORT) && !defined(LIBSDL2_GFX_DLL_IMPORT) # define SDL2_GFXPRIMITIVES_SCOPE __declspec(dllexport) # else # ifdef LIBSDL2_GFX_DLL_IMPORT # define SDL2_GFXPRIMITIVES_SCOPE __declspec(dllimport) # endif # endif #endif #ifndef SDL2_GFXPRIMITIVES_SCOPE # define SDL2_GFXPRIMITIVES_SCOPE extern #endif /* Note: all ___Color routines expect the color to be in format 0xAABBGGRR */ /* assuming a little-endian CPU (or 0xRRGGBBAA for a big-endian CPU) */ /* Pixel */ SDL2_GFXPRIMITIVES_SCOPE int pixelColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int pixelRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Horizontal line */ SDL2_GFXPRIMITIVES_SCOPE int hlineColor(SDL_Renderer * renderer, Sint16 x1, Sint16 x2, Sint16 y, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int hlineRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 x2, Sint16 y, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Vertical line */ SDL2_GFXPRIMITIVES_SCOPE int vlineColor(SDL_Renderer * renderer, Sint16 x, Sint16 y1, Sint16 y2, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int vlineRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y1, Sint16 y2, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Rectangle */ SDL2_GFXPRIMITIVES_SCOPE int rectangleColor(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int rectangleRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Rounded-Corner Rectangle */ SDL2_GFXPRIMITIVES_SCOPE int roundedRectangleColor(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 rad, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int roundedRectangleRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 rad, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Filled rectangle (Box) */ SDL2_GFXPRIMITIVES_SCOPE int boxColor(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int boxRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Rounded-Corner Filled rectangle (Box) */ SDL2_GFXPRIMITIVES_SCOPE int roundedBoxColor(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 rad, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int roundedBoxRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 rad, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Line */ SDL2_GFXPRIMITIVES_SCOPE int lineColor(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int lineRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* AA Line */ SDL2_GFXPRIMITIVES_SCOPE int aalineColor(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int aalineRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Thick Line */ SDL2_GFXPRIMITIVES_SCOPE int thickLineColor(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint8 width, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int thickLineRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint8 width, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Circle */ SDL2_GFXPRIMITIVES_SCOPE int circleColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int circleRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Arc */ SDL2_GFXPRIMITIVES_SCOPE int arcColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Sint16 start, Sint16 end, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int arcRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Sint16 start, Sint16 end, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* AA Circle */ SDL2_GFXPRIMITIVES_SCOPE int aacircleColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int aacircleRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Filled Circle */ SDL2_GFXPRIMITIVES_SCOPE int filledCircleColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 r, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int filledCircleRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Ellipse */ SDL2_GFXPRIMITIVES_SCOPE int ellipseColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rx, Sint16 ry, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int ellipseRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rx, Sint16 ry, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* AA Ellipse */ SDL2_GFXPRIMITIVES_SCOPE int aaellipseColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rx, Sint16 ry, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int aaellipseRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rx, Sint16 ry, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Filled Ellipse */ SDL2_GFXPRIMITIVES_SCOPE int filledEllipseColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rx, Sint16 ry, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int filledEllipseRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rx, Sint16 ry, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Pie */ SDL2_GFXPRIMITIVES_SCOPE int pieColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Sint16 start, Sint16 end, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int pieRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Sint16 start, Sint16 end, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Filled Pie */ SDL2_GFXPRIMITIVES_SCOPE int filledPieColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Sint16 start, Sint16 end, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int filledPieRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Sint16 start, Sint16 end, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Trigon */ SDL2_GFXPRIMITIVES_SCOPE int trigonColor(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 x3, Sint16 y3, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int trigonRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 x3, Sint16 y3, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* AA-Trigon */ SDL2_GFXPRIMITIVES_SCOPE int aatrigonColor(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 x3, Sint16 y3, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int aatrigonRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 x3, Sint16 y3, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Filled Trigon */ SDL2_GFXPRIMITIVES_SCOPE int filledTrigonColor(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 x3, Sint16 y3, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int filledTrigonRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 x3, Sint16 y3, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Polygon */ SDL2_GFXPRIMITIVES_SCOPE int polygonColor(SDL_Renderer * renderer, const Sint16 * vx, const Sint16 * vy, int n, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int polygonRGBA(SDL_Renderer * renderer, const Sint16 * vx, const Sint16 * vy, int n, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* AA-Polygon */ SDL2_GFXPRIMITIVES_SCOPE int aapolygonColor(SDL_Renderer * renderer, const Sint16 * vx, const Sint16 * vy, int n, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int aapolygonRGBA(SDL_Renderer * renderer, const Sint16 * vx, const Sint16 * vy, int n, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Filled Polygon */ SDL2_GFXPRIMITIVES_SCOPE int filledPolygonColor(SDL_Renderer * renderer, const Sint16 * vx, const Sint16 * vy, int n, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int filledPolygonRGBA(SDL_Renderer * renderer, const Sint16 * vx, const Sint16 * vy, int n, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Textured Polygon */ SDL2_GFXPRIMITIVES_SCOPE int texturedPolygon(SDL_Renderer * renderer, const Sint16 * vx, const Sint16 * vy, int n, SDL_Surface * texture,int texture_dx,int texture_dy); /* Bezier */ SDL2_GFXPRIMITIVES_SCOPE int bezierColor(SDL_Renderer * renderer, const Sint16 * vx, const Sint16 * vy, int n, int s, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int bezierRGBA(SDL_Renderer * renderer, const Sint16 * vx, const Sint16 * vy, int n, int s, Uint8 r, Uint8 g, Uint8 b, Uint8 a); SDL2_GFXPRIMITIVES_SCOPE double _evaluateBezier(double *data, int ndata, double t); /* Characters/Strings */ SDL2_GFXPRIMITIVES_SCOPE void gfxPrimitivesSetFont(const void *fontdata, Uint32 cw, Uint32 ch); SDL2_GFXPRIMITIVES_SCOPE void gfxPrimitivesSetFontRotation(Uint32 rotation); SDL2_GFXPRIMITIVES_SCOPE void gfxPrimitivesSetFontZoom(Uint32 zoomx, Uint32 zoomy); SDL2_GFXPRIMITIVES_SCOPE int characterColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, char c, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int characterRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, char c, Uint8 r, Uint8 g, Uint8 b, Uint8 a); SDL2_GFXPRIMITIVES_SCOPE int stringColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, const char *s, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int stringRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, const char *s, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Richard Russell's additions */ SDL2_GFXPRIMITIVES_SCOPE int thickEllipseColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rx, Sint16 ry, Uint32 color, Uint8 thick); SDL2_GFXPRIMITIVES_SCOPE int thickEllipseRGBA(SDL_Renderer * renderer, Sint16 xc, Sint16 yc, Sint16 xr, Sint16 yr, Uint8 r, Uint8 g, Uint8 b, Uint8 a, Uint8 thick); SDL2_GFXPRIMITIVES_SCOPE int thickArcColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Sint16 start, Sint16 end, Uint32 color, Uint8 thick); SDL2_GFXPRIMITIVES_SCOPE int thickArcRGBA(SDL_Renderer * renderer, Sint16 xc, Sint16 yc, Sint16 rad, Sint16 start, Sint16 end, Uint8 r, Uint8 g, Uint8 b, Uint8 a, Uint8 thick); SDL2_GFXPRIMITIVES_SCOPE int thickCircleColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Uint32 color, Uint8 thick); SDL2_GFXPRIMITIVES_SCOPE int thickCircleRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Uint8 r, Uint8 g, Uint8 b, Uint8 a, Uint8 thick); SDL2_GFXPRIMITIVES_SCOPE int filledPolyBezierColor(SDL_Renderer * renderer, const Sint16 *x, const Sint16 *y, int n, int s, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int filledPolyBezierRGBA(SDL_Renderer * renderer, const Sint16 *x, const Sint16 *y, int n, int s, Uint8 r, Uint8 g, Uint8 b, Uint8 a); SDL2_GFXPRIMITIVES_SCOPE int aaFilledEllipseColor(SDL_Renderer * renderer, float cx, float cy, float rx, float ry, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int aaFilledEllipseRGBA(SDL_Renderer * renderer, float cx, float cy, float rx, float ry, Uint8 r, Uint8 g, Uint8 b, Uint8 a); SDL2_GFXPRIMITIVES_SCOPE int aaFilledPolygonColor(SDL_Renderer * renderer, const double * vx, const double * vy, int n, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int aaFilledPolygonRGBA(SDL_Renderer * renderer, const double * vx, const double * vy, int n, Uint8 r, Uint8 g, Uint8 b, Uint8 a); SDL2_GFXPRIMITIVES_SCOPE int aaFilledPieColor(SDL_Renderer * renderer, float cx, float cy, float rx, float ry, float start, float end, Uint32 chord, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int aaFilledPieRGBA(SDL_Renderer * renderer, float cx, float cy, float rx, float ry, float start, float end, Uint32 chord, Uint8 r, Uint8 g, Uint8 b, Uint8 a); SDL2_GFXPRIMITIVES_SCOPE int aaArcColor(SDL_Renderer * renderer, float cx, float cy, float rx, float ry, float start, float end, float thick, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int aaArcRGBA(SDL_Renderer * renderer, float cx, float cy, float rx, float ry, float start, float end, float thick, Uint8 r, Uint8 g, Uint8 b, Uint8 a); SDL2_GFXPRIMITIVES_SCOPE int aaBezierColor(SDL_Renderer * renderer, double *x, double *y, int n, int s, float thick, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int aaBezierRGBA(SDL_Renderer * renderer, double *x, double *y, int n, int s, float thick, Uint8 r, Uint8 g, Uint8 b, Uint8 a); SDL2_GFXPRIMITIVES_SCOPE int aaFilledPolyBezierColor(SDL_Renderer * renderer, double *x, double *y, int n, int s, Uint32 color); SDL2_GFXPRIMITIVES_SCOPE int aaFilledPolyBezierRGBA(SDL_Renderer * renderer, double *x, double *y, int n, int s, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /* Ends C function definitions when using C++ */ #ifdef __cplusplus } #endif #endif /* _SDL2_gfxPrimitives_h */ ================================================ FILE: include/SDL2_gfxPrimitives_font.h ================================================ /* ---- 8x8 font definition ---- */ /* ZLIB (c) A. Schiffler 2012 */ #define GFX_FONTDATAMAX (8*256) static unsigned char gfxPrimitivesFontdata[GFX_FONTDATAMAX] = { /* * 0 0x00 '^@' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 1 0x01 '^A' */ 0x7e, /* 01111110 */ 0x81, /* 10000001 */ 0xa5, /* 10100101 */ 0x81, /* 10000001 */ 0xbd, /* 10111101 */ 0x99, /* 10011001 */ 0x81, /* 10000001 */ 0x7e, /* 01111110 */ /* * 2 0x02 '^B' */ 0x7e, /* 01111110 */ 0xff, /* 11111111 */ 0xdb, /* 11011011 */ 0xff, /* 11111111 */ 0xc3, /* 11000011 */ 0xe7, /* 11100111 */ 0xff, /* 11111111 */ 0x7e, /* 01111110 */ /* * 3 0x03 '^C' */ 0x6c, /* 01101100 */ 0xfe, /* 11111110 */ 0xfe, /* 11111110 */ 0xfe, /* 11111110 */ 0x7c, /* 01111100 */ 0x38, /* 00111000 */ 0x10, /* 00010000 */ 0x00, /* 00000000 */ /* * 4 0x04 '^D' */ 0x10, /* 00010000 */ 0x38, /* 00111000 */ 0x7c, /* 01111100 */ 0xfe, /* 11111110 */ 0x7c, /* 01111100 */ 0x38, /* 00111000 */ 0x10, /* 00010000 */ 0x00, /* 00000000 */ /* * 5 0x05 '^E' */ 0x38, /* 00111000 */ 0x7c, /* 01111100 */ 0x38, /* 00111000 */ 0xfe, /* 11111110 */ 0xfe, /* 11111110 */ 0xd6, /* 11010110 */ 0x10, /* 00010000 */ 0x38, /* 00111000 */ /* * 6 0x06 '^F' */ 0x10, /* 00010000 */ 0x38, /* 00111000 */ 0x7c, /* 01111100 */ 0xfe, /* 11111110 */ 0xfe, /* 11111110 */ 0x7c, /* 01111100 */ 0x10, /* 00010000 */ 0x38, /* 00111000 */ /* * 7 0x07 '^G' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x18, /* 00011000 */ 0x3c, /* 00111100 */ 0x3c, /* 00111100 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 8 0x08 '^H' */ 0xff, /* 11111111 */ 0xff, /* 11111111 */ 0xe7, /* 11100111 */ 0xc3, /* 11000011 */ 0xc3, /* 11000011 */ 0xe7, /* 11100111 */ 0xff, /* 11111111 */ 0xff, /* 11111111 */ /* * 9 0x09 '^I' */ 0x00, /* 00000000 */ 0x3c, /* 00111100 */ 0x66, /* 01100110 */ 0x42, /* 01000010 */ 0x42, /* 01000010 */ 0x66, /* 01100110 */ 0x3c, /* 00111100 */ 0x00, /* 00000000 */ /* * 10 0x0a '^J' */ 0xff, /* 11111111 */ 0xc3, /* 11000011 */ 0x99, /* 10011001 */ 0xbd, /* 10111101 */ 0xbd, /* 10111101 */ 0x99, /* 10011001 */ 0xc3, /* 11000011 */ 0xff, /* 11111111 */ /* * 11 0x0b '^K' */ 0x0f, /* 00001111 */ 0x07, /* 00000111 */ 0x0f, /* 00001111 */ 0x7d, /* 01111101 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0x78, /* 01111000 */ /* * 12 0x0c '^L' */ 0x3c, /* 00111100 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x3c, /* 00111100 */ 0x18, /* 00011000 */ 0x7e, /* 01111110 */ 0x18, /* 00011000 */ /* * 13 0x0d '^M' */ 0x3f, /* 00111111 */ 0x33, /* 00110011 */ 0x3f, /* 00111111 */ 0x30, /* 00110000 */ 0x30, /* 00110000 */ 0x70, /* 01110000 */ 0xf0, /* 11110000 */ 0xe0, /* 11100000 */ /* * 14 0x0e '^N' */ 0x7f, /* 01111111 */ 0x63, /* 01100011 */ 0x7f, /* 01111111 */ 0x63, /* 01100011 */ 0x63, /* 01100011 */ 0x67, /* 01100111 */ 0xe6, /* 11100110 */ 0xc0, /* 11000000 */ /* * 15 0x0f '^O' */ 0x18, /* 00011000 */ 0xdb, /* 11011011 */ 0x3c, /* 00111100 */ 0xe7, /* 11100111 */ 0xe7, /* 11100111 */ 0x3c, /* 00111100 */ 0xdb, /* 11011011 */ 0x18, /* 00011000 */ /* * 16 0x10 '^P' */ 0x80, /* 10000000 */ 0xe0, /* 11100000 */ 0xf8, /* 11111000 */ 0xfe, /* 11111110 */ 0xf8, /* 11111000 */ 0xe0, /* 11100000 */ 0x80, /* 10000000 */ 0x00, /* 00000000 */ /* * 17 0x11 '^Q' */ 0x02, /* 00000010 */ 0x0e, /* 00001110 */ 0x3e, /* 00111110 */ 0xfe, /* 11111110 */ 0x3e, /* 00111110 */ 0x0e, /* 00001110 */ 0x02, /* 00000010 */ 0x00, /* 00000000 */ /* * 18 0x12 '^R' */ 0x18, /* 00011000 */ 0x3c, /* 00111100 */ 0x7e, /* 01111110 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x7e, /* 01111110 */ 0x3c, /* 00111100 */ 0x18, /* 00011000 */ /* * 19 0x13 '^S' */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x00, /* 00000000 */ 0x66, /* 01100110 */ 0x00, /* 00000000 */ /* * 20 0x14 '^T' */ 0x7f, /* 01111111 */ 0xdb, /* 11011011 */ 0xdb, /* 11011011 */ 0x7b, /* 01111011 */ 0x1b, /* 00011011 */ 0x1b, /* 00011011 */ 0x1b, /* 00011011 */ 0x00, /* 00000000 */ /* * 21 0x15 '^U' */ 0x3e, /* 00111110 */ 0x61, /* 01100001 */ 0x3c, /* 00111100 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x3c, /* 00111100 */ 0x86, /* 10000110 */ 0x7c, /* 01111100 */ /* * 22 0x16 '^V' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x7e, /* 01111110 */ 0x7e, /* 01111110 */ 0x7e, /* 01111110 */ 0x00, /* 00000000 */ /* * 23 0x17 '^W' */ 0x18, /* 00011000 */ 0x3c, /* 00111100 */ 0x7e, /* 01111110 */ 0x18, /* 00011000 */ 0x7e, /* 01111110 */ 0x3c, /* 00111100 */ 0x18, /* 00011000 */ 0xff, /* 11111111 */ /* * 24 0x18 '^X' */ 0x18, /* 00011000 */ 0x3c, /* 00111100 */ 0x7e, /* 01111110 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ /* * 25 0x19 '^Y' */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x7e, /* 01111110 */ 0x3c, /* 00111100 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ /* * 26 0x1a '^Z' */ 0x00, /* 00000000 */ 0x18, /* 00011000 */ 0x0c, /* 00001100 */ 0xfe, /* 11111110 */ 0x0c, /* 00001100 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 27 0x1b '^[' */ 0x00, /* 00000000 */ 0x30, /* 00110000 */ 0x60, /* 01100000 */ 0xfe, /* 11111110 */ 0x60, /* 01100000 */ 0x30, /* 00110000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 28 0x1c '^\' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xc0, /* 11000000 */ 0xc0, /* 11000000 */ 0xc0, /* 11000000 */ 0xfe, /* 11111110 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 29 0x1d '^]' */ 0x00, /* 00000000 */ 0x24, /* 00100100 */ 0x66, /* 01100110 */ 0xff, /* 11111111 */ 0x66, /* 01100110 */ 0x24, /* 00100100 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 30 0x1e '^^' */ 0x00, /* 00000000 */ 0x18, /* 00011000 */ 0x3c, /* 00111100 */ 0x7e, /* 01111110 */ 0xff, /* 11111111 */ 0xff, /* 11111111 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 31 0x1f '^_' */ 0x00, /* 00000000 */ 0xff, /* 11111111 */ 0xff, /* 11111111 */ 0x7e, /* 01111110 */ 0x3c, /* 00111100 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 32 0x20 ' ' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 33 0x21 '!' */ 0x18, /* 00011000 */ 0x3c, /* 00111100 */ 0x3c, /* 00111100 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ /* * 34 0x22 '"' */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x24, /* 00100100 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 35 0x23 '#' */ 0x6c, /* 01101100 */ 0x6c, /* 01101100 */ 0xfe, /* 11111110 */ 0x6c, /* 01101100 */ 0xfe, /* 11111110 */ 0x6c, /* 01101100 */ 0x6c, /* 01101100 */ 0x00, /* 00000000 */ /* * 36 0x24 '$' */ 0x18, /* 00011000 */ 0x3e, /* 00111110 */ 0x60, /* 01100000 */ 0x3c, /* 00111100 */ 0x06, /* 00000110 */ 0x7c, /* 01111100 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ /* * 37 0x25 '%' */ 0x00, /* 00000000 */ 0xc6, /* 11000110 */ 0xcc, /* 11001100 */ 0x18, /* 00011000 */ 0x30, /* 00110000 */ 0x66, /* 01100110 */ 0xc6, /* 11000110 */ 0x00, /* 00000000 */ /* * 38 0x26 '&' */ 0x38, /* 00111000 */ 0x6c, /* 01101100 */ 0x38, /* 00111000 */ 0x76, /* 01110110 */ 0xdc, /* 11011100 */ 0xcc, /* 11001100 */ 0x76, /* 01110110 */ 0x00, /* 00000000 */ /* * 39 0x27 ''' */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x30, /* 00110000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 40 0x28 '(' */ 0x0c, /* 00001100 */ 0x18, /* 00011000 */ 0x30, /* 00110000 */ 0x30, /* 00110000 */ 0x30, /* 00110000 */ 0x18, /* 00011000 */ 0x0c, /* 00001100 */ 0x00, /* 00000000 */ /* * 41 0x29 ')' */ 0x30, /* 00110000 */ 0x18, /* 00011000 */ 0x0c, /* 00001100 */ 0x0c, /* 00001100 */ 0x0c, /* 00001100 */ 0x18, /* 00011000 */ 0x30, /* 00110000 */ 0x00, /* 00000000 */ /* * 42 0x2a '*' */ 0x00, /* 00000000 */ 0x66, /* 01100110 */ 0x3c, /* 00111100 */ 0xff, /* 11111111 */ 0x3c, /* 00111100 */ 0x66, /* 01100110 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 43 0x2b '+' */ 0x00, /* 00000000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x7e, /* 01111110 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 44 0x2c ',' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x30, /* 00110000 */ /* * 45 0x2d '-' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x7e, /* 01111110 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 46 0x2e '.' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ /* * 47 0x2f '/' */ 0x06, /* 00000110 */ 0x0c, /* 00001100 */ 0x18, /* 00011000 */ 0x30, /* 00110000 */ 0x60, /* 01100000 */ 0xc0, /* 11000000 */ 0x80, /* 10000000 */ 0x00, /* 00000000 */ /* * 48 0x30 '0' */ 0x38, /* 00111000 */ 0x6c, /* 01101100 */ 0xc6, /* 11000110 */ 0xd6, /* 11010110 */ 0xc6, /* 11000110 */ 0x6c, /* 01101100 */ 0x38, /* 00111000 */ 0x00, /* 00000000 */ /* * 49 0x31 '1' */ 0x18, /* 00011000 */ 0x38, /* 00111000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x7e, /* 01111110 */ 0x00, /* 00000000 */ /* * 50 0x32 '2' */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0x06, /* 00000110 */ 0x1c, /* 00011100 */ 0x30, /* 00110000 */ 0x66, /* 01100110 */ 0xfe, /* 11111110 */ 0x00, /* 00000000 */ /* * 51 0x33 '3' */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0x06, /* 00000110 */ 0x3c, /* 00111100 */ 0x06, /* 00000110 */ 0xc6, /* 11000110 */ 0x7c, /* 01111100 */ 0x00, /* 00000000 */ /* * 52 0x34 '4' */ 0x1c, /* 00011100 */ 0x3c, /* 00111100 */ 0x6c, /* 01101100 */ 0xcc, /* 11001100 */ 0xfe, /* 11111110 */ 0x0c, /* 00001100 */ 0x1e, /* 00011110 */ 0x00, /* 00000000 */ /* * 53 0x35 '5' */ 0xfe, /* 11111110 */ 0xc0, /* 11000000 */ 0xc0, /* 11000000 */ 0xfc, /* 11111100 */ 0x06, /* 00000110 */ 0xc6, /* 11000110 */ 0x7c, /* 01111100 */ 0x00, /* 00000000 */ /* * 54 0x36 '6' */ 0x38, /* 00111000 */ 0x60, /* 01100000 */ 0xc0, /* 11000000 */ 0xfc, /* 11111100 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x7c, /* 01111100 */ 0x00, /* 00000000 */ /* * 55 0x37 '7' */ 0xfe, /* 11111110 */ 0xc6, /* 11000110 */ 0x0c, /* 00001100 */ 0x18, /* 00011000 */ 0x30, /* 00110000 */ 0x30, /* 00110000 */ 0x30, /* 00110000 */ 0x00, /* 00000000 */ /* * 56 0x38 '8' */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x7c, /* 01111100 */ 0x00, /* 00000000 */ /* * 57 0x39 '9' */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x7e, /* 01111110 */ 0x06, /* 00000110 */ 0x0c, /* 00001100 */ 0x78, /* 01111000 */ 0x00, /* 00000000 */ /* * 58 0x3a ':' */ 0x00, /* 00000000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ /* * 59 0x3b ';' */ 0x00, /* 00000000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x30, /* 00110000 */ /* * 60 0x3c '<' */ 0x06, /* 00000110 */ 0x0c, /* 00001100 */ 0x18, /* 00011000 */ 0x30, /* 00110000 */ 0x18, /* 00011000 */ 0x0c, /* 00001100 */ 0x06, /* 00000110 */ 0x00, /* 00000000 */ /* * 61 0x3d '=' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x7e, /* 01111110 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x7e, /* 01111110 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 62 0x3e '>' */ 0x60, /* 01100000 */ 0x30, /* 00110000 */ 0x18, /* 00011000 */ 0x0c, /* 00001100 */ 0x18, /* 00011000 */ 0x30, /* 00110000 */ 0x60, /* 01100000 */ 0x00, /* 00000000 */ /* * 63 0x3f '?' */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0x0c, /* 00001100 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ /* * 64 0x40 '@' */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0xde, /* 11011110 */ 0xde, /* 11011110 */ 0xde, /* 11011110 */ 0xc0, /* 11000000 */ 0x78, /* 01111000 */ 0x00, /* 00000000 */ /* * 65 0x41 'A' */ 0x38, /* 00111000 */ 0x6c, /* 01101100 */ 0xc6, /* 11000110 */ 0xfe, /* 11111110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x00, /* 00000000 */ /* * 66 0x42 'B' */ 0xfc, /* 11111100 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x7c, /* 01111100 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0xfc, /* 11111100 */ 0x00, /* 00000000 */ /* * 67 0x43 'C' */ 0x3c, /* 00111100 */ 0x66, /* 01100110 */ 0xc0, /* 11000000 */ 0xc0, /* 11000000 */ 0xc0, /* 11000000 */ 0x66, /* 01100110 */ 0x3c, /* 00111100 */ 0x00, /* 00000000 */ /* * 68 0x44 'D' */ 0xf8, /* 11111000 */ 0x6c, /* 01101100 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x6c, /* 01101100 */ 0xf8, /* 11111000 */ 0x00, /* 00000000 */ /* * 69 0x45 'E' */ 0xfe, /* 11111110 */ 0x62, /* 01100010 */ 0x68, /* 01101000 */ 0x78, /* 01111000 */ 0x68, /* 01101000 */ 0x62, /* 01100010 */ 0xfe, /* 11111110 */ 0x00, /* 00000000 */ /* * 70 0x46 'F' */ 0xfe, /* 11111110 */ 0x62, /* 01100010 */ 0x68, /* 01101000 */ 0x78, /* 01111000 */ 0x68, /* 01101000 */ 0x60, /* 01100000 */ 0xf0, /* 11110000 */ 0x00, /* 00000000 */ /* * 71 0x47 'G' */ 0x3c, /* 00111100 */ 0x66, /* 01100110 */ 0xc0, /* 11000000 */ 0xc0, /* 11000000 */ 0xce, /* 11001110 */ 0x66, /* 01100110 */ 0x3a, /* 00111010 */ 0x00, /* 00000000 */ /* * 72 0x48 'H' */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xfe, /* 11111110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x00, /* 00000000 */ /* * 73 0x49 'I' */ 0x3c, /* 00111100 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x3c, /* 00111100 */ 0x00, /* 00000000 */ /* * 74 0x4a 'J' */ 0x1e, /* 00011110 */ 0x0c, /* 00001100 */ 0x0c, /* 00001100 */ 0x0c, /* 00001100 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0x78, /* 01111000 */ 0x00, /* 00000000 */ /* * 75 0x4b 'K' */ 0xe6, /* 11100110 */ 0x66, /* 01100110 */ 0x6c, /* 01101100 */ 0x78, /* 01111000 */ 0x6c, /* 01101100 */ 0x66, /* 01100110 */ 0xe6, /* 11100110 */ 0x00, /* 00000000 */ /* * 76 0x4c 'L' */ 0xf0, /* 11110000 */ 0x60, /* 01100000 */ 0x60, /* 01100000 */ 0x60, /* 01100000 */ 0x62, /* 01100010 */ 0x66, /* 01100110 */ 0xfe, /* 11111110 */ 0x00, /* 00000000 */ /* * 77 0x4d 'M' */ 0xc6, /* 11000110 */ 0xee, /* 11101110 */ 0xfe, /* 11111110 */ 0xfe, /* 11111110 */ 0xd6, /* 11010110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x00, /* 00000000 */ /* * 78 0x4e 'N' */ 0xc6, /* 11000110 */ 0xe6, /* 11100110 */ 0xf6, /* 11110110 */ 0xde, /* 11011110 */ 0xce, /* 11001110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x00, /* 00000000 */ /* * 79 0x4f 'O' */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x7c, /* 01111100 */ 0x00, /* 00000000 */ /* * 80 0x50 'P' */ 0xfc, /* 11111100 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x7c, /* 01111100 */ 0x60, /* 01100000 */ 0x60, /* 01100000 */ 0xf0, /* 11110000 */ 0x00, /* 00000000 */ /* * 81 0x51 'Q' */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xce, /* 11001110 */ 0x7c, /* 01111100 */ 0x0e, /* 00001110 */ /* * 82 0x52 'R' */ 0xfc, /* 11111100 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x7c, /* 01111100 */ 0x6c, /* 01101100 */ 0x66, /* 01100110 */ 0xe6, /* 11100110 */ 0x00, /* 00000000 */ /* * 83 0x53 'S' */ 0x3c, /* 00111100 */ 0x66, /* 01100110 */ 0x30, /* 00110000 */ 0x18, /* 00011000 */ 0x0c, /* 00001100 */ 0x66, /* 01100110 */ 0x3c, /* 00111100 */ 0x00, /* 00000000 */ /* * 84 0x54 'T' */ 0x7e, /* 01111110 */ 0x7e, /* 01111110 */ 0x5a, /* 01011010 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x3c, /* 00111100 */ 0x00, /* 00000000 */ /* * 85 0x55 'U' */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x7c, /* 01111100 */ 0x00, /* 00000000 */ /* * 86 0x56 'V' */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x6c, /* 01101100 */ 0x38, /* 00111000 */ 0x00, /* 00000000 */ /* * 87 0x57 'W' */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xd6, /* 11010110 */ 0xd6, /* 11010110 */ 0xfe, /* 11111110 */ 0x6c, /* 01101100 */ 0x00, /* 00000000 */ /* * 88 0x58 'X' */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x6c, /* 01101100 */ 0x38, /* 00111000 */ 0x6c, /* 01101100 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x00, /* 00000000 */ /* * 89 0x59 'Y' */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x3c, /* 00111100 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x3c, /* 00111100 */ 0x00, /* 00000000 */ /* * 90 0x5a 'Z' */ 0xfe, /* 11111110 */ 0xc6, /* 11000110 */ 0x8c, /* 10001100 */ 0x18, /* 00011000 */ 0x32, /* 00110010 */ 0x66, /* 01100110 */ 0xfe, /* 11111110 */ 0x00, /* 00000000 */ /* * 91 0x5b '[' */ 0x3c, /* 00111100 */ 0x30, /* 00110000 */ 0x30, /* 00110000 */ 0x30, /* 00110000 */ 0x30, /* 00110000 */ 0x30, /* 00110000 */ 0x3c, /* 00111100 */ 0x00, /* 00000000 */ /* * 92 0x5c '\' */ 0xc0, /* 11000000 */ 0x60, /* 01100000 */ 0x30, /* 00110000 */ 0x18, /* 00011000 */ 0x0c, /* 00001100 */ 0x06, /* 00000110 */ 0x02, /* 00000010 */ 0x00, /* 00000000 */ /* * 93 0x5d ']' */ 0x3c, /* 00111100 */ 0x0c, /* 00001100 */ 0x0c, /* 00001100 */ 0x0c, /* 00001100 */ 0x0c, /* 00001100 */ 0x0c, /* 00001100 */ 0x3c, /* 00111100 */ 0x00, /* 00000000 */ /* * 94 0x5e '^' */ 0x10, /* 00010000 */ 0x38, /* 00111000 */ 0x6c, /* 01101100 */ 0xc6, /* 11000110 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 95 0x5f '_' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xff, /* 11111111 */ /* * 96 0x60 '`' */ 0x30, /* 00110000 */ 0x18, /* 00011000 */ 0x0c, /* 00001100 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 97 0x61 'a' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x78, /* 01111000 */ 0x0c, /* 00001100 */ 0x7c, /* 01111100 */ 0xcc, /* 11001100 */ 0x76, /* 01110110 */ 0x00, /* 00000000 */ /* * 98 0x62 'b' */ 0xe0, /* 11100000 */ 0x60, /* 01100000 */ 0x7c, /* 01111100 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0xdc, /* 11011100 */ 0x00, /* 00000000 */ /* * 99 0x63 'c' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0xc0, /* 11000000 */ 0xc6, /* 11000110 */ 0x7c, /* 01111100 */ 0x00, /* 00000000 */ /* * 100 0x64 'd' */ 0x1c, /* 00011100 */ 0x0c, /* 00001100 */ 0x7c, /* 01111100 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0x76, /* 01110110 */ 0x00, /* 00000000 */ /* * 101 0x65 'e' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0xfe, /* 11111110 */ 0xc0, /* 11000000 */ 0x7c, /* 01111100 */ 0x00, /* 00000000 */ /* * 102 0x66 'f' */ 0x3c, /* 00111100 */ 0x66, /* 01100110 */ 0x60, /* 01100000 */ 0xf8, /* 11111000 */ 0x60, /* 01100000 */ 0x60, /* 01100000 */ 0xf0, /* 11110000 */ 0x00, /* 00000000 */ /* * 103 0x67 'g' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x76, /* 01110110 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0x7c, /* 01111100 */ 0x0c, /* 00001100 */ 0xf8, /* 11111000 */ /* * 104 0x68 'h' */ 0xe0, /* 11100000 */ 0x60, /* 01100000 */ 0x6c, /* 01101100 */ 0x76, /* 01110110 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0xe6, /* 11100110 */ 0x00, /* 00000000 */ /* * 105 0x69 'i' */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ 0x38, /* 00111000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x3c, /* 00111100 */ 0x00, /* 00000000 */ /* * 106 0x6a 'j' */ 0x06, /* 00000110 */ 0x00, /* 00000000 */ 0x06, /* 00000110 */ 0x06, /* 00000110 */ 0x06, /* 00000110 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x3c, /* 00111100 */ /* * 107 0x6b 'k' */ 0xe0, /* 11100000 */ 0x60, /* 01100000 */ 0x66, /* 01100110 */ 0x6c, /* 01101100 */ 0x78, /* 01111000 */ 0x6c, /* 01101100 */ 0xe6, /* 11100110 */ 0x00, /* 00000000 */ /* * 108 0x6c 'l' */ 0x38, /* 00111000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x3c, /* 00111100 */ 0x00, /* 00000000 */ /* * 109 0x6d 'm' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xec, /* 11101100 */ 0xfe, /* 11111110 */ 0xd6, /* 11010110 */ 0xd6, /* 11010110 */ 0xd6, /* 11010110 */ 0x00, /* 00000000 */ /* * 110 0x6e 'n' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xdc, /* 11011100 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x00, /* 00000000 */ /* * 111 0x6f 'o' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x7c, /* 01111100 */ 0x00, /* 00000000 */ /* * 112 0x70 'p' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xdc, /* 11011100 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x7c, /* 01111100 */ 0x60, /* 01100000 */ 0xf0, /* 11110000 */ /* * 113 0x71 'q' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x76, /* 01110110 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0x7c, /* 01111100 */ 0x0c, /* 00001100 */ 0x1e, /* 00011110 */ /* * 114 0x72 'r' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xdc, /* 11011100 */ 0x76, /* 01110110 */ 0x60, /* 01100000 */ 0x60, /* 01100000 */ 0xf0, /* 11110000 */ 0x00, /* 00000000 */ /* * 115 0x73 's' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x7e, /* 01111110 */ 0xc0, /* 11000000 */ 0x7c, /* 01111100 */ 0x06, /* 00000110 */ 0xfc, /* 11111100 */ 0x00, /* 00000000 */ /* * 116 0x74 't' */ 0x30, /* 00110000 */ 0x30, /* 00110000 */ 0xfc, /* 11111100 */ 0x30, /* 00110000 */ 0x30, /* 00110000 */ 0x36, /* 00110110 */ 0x1c, /* 00011100 */ 0x00, /* 00000000 */ /* * 117 0x75 'u' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0x76, /* 01110110 */ 0x00, /* 00000000 */ /* * 118 0x76 'v' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x6c, /* 01101100 */ 0x38, /* 00111000 */ 0x00, /* 00000000 */ /* * 119 0x77 'w' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xc6, /* 11000110 */ 0xd6, /* 11010110 */ 0xd6, /* 11010110 */ 0xfe, /* 11111110 */ 0x6c, /* 01101100 */ 0x00, /* 00000000 */ /* * 120 0x78 'x' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xc6, /* 11000110 */ 0x6c, /* 01101100 */ 0x38, /* 00111000 */ 0x6c, /* 01101100 */ 0xc6, /* 11000110 */ 0x00, /* 00000000 */ /* * 121 0x79 'y' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x7e, /* 01111110 */ 0x06, /* 00000110 */ 0xfc, /* 11111100 */ /* * 122 0x7a 'z' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x7e, /* 01111110 */ 0x4c, /* 01001100 */ 0x18, /* 00011000 */ 0x32, /* 00110010 */ 0x7e, /* 01111110 */ 0x00, /* 00000000 */ /* * 123 0x7b '{' */ 0x0e, /* 00001110 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x70, /* 01110000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x0e, /* 00001110 */ 0x00, /* 00000000 */ /* * 124 0x7c '|' */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ /* * 125 0x7d '}' */ 0x70, /* 01110000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x0e, /* 00001110 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x70, /* 01110000 */ 0x00, /* 00000000 */ /* * 126 0x7e '~' */ 0x76, /* 01110110 */ 0xdc, /* 11011100 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 127 0x7f '' */ 0x00, /* 00000000 */ 0x10, /* 00010000 */ 0x38, /* 00111000 */ 0x6c, /* 01101100 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xfe, /* 11111110 */ 0x00, /* 00000000 */ /* * 128 0x80 '' */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0xc0, /* 11000000 */ 0xc0, /* 11000000 */ 0xc6, /* 11000110 */ 0x7c, /* 01111100 */ 0x0c, /* 00001100 */ 0x78, /* 01111000 */ /* * 129 0x81 '' */ 0xcc, /* 11001100 */ 0x00, /* 00000000 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0x76, /* 01110110 */ 0x00, /* 00000000 */ /* * 130 0x82 '' */ 0x0c, /* 00001100 */ 0x18, /* 00011000 */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0xfe, /* 11111110 */ 0xc0, /* 11000000 */ 0x7c, /* 01111100 */ 0x00, /* 00000000 */ /* * 131 0x83 '' */ 0x7c, /* 01111100 */ 0x82, /* 10000010 */ 0x78, /* 01111000 */ 0x0c, /* 00001100 */ 0x7c, /* 01111100 */ 0xcc, /* 11001100 */ 0x76, /* 01110110 */ 0x00, /* 00000000 */ /* * 132 0x84 '' */ 0xc6, /* 11000110 */ 0x00, /* 00000000 */ 0x78, /* 01111000 */ 0x0c, /* 00001100 */ 0x7c, /* 01111100 */ 0xcc, /* 11001100 */ 0x76, /* 01110110 */ 0x00, /* 00000000 */ /* * 133 0x85 '' */ 0x30, /* 00110000 */ 0x18, /* 00011000 */ 0x78, /* 01111000 */ 0x0c, /* 00001100 */ 0x7c, /* 01111100 */ 0xcc, /* 11001100 */ 0x76, /* 01110110 */ 0x00, /* 00000000 */ /* * 134 0x86 '' */ 0x30, /* 00110000 */ 0x30, /* 00110000 */ 0x78, /* 01111000 */ 0x0c, /* 00001100 */ 0x7c, /* 01111100 */ 0xcc, /* 11001100 */ 0x76, /* 01110110 */ 0x00, /* 00000000 */ /* * 135 0x87 '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x7e, /* 01111110 */ 0xc0, /* 11000000 */ 0xc0, /* 11000000 */ 0x7e, /* 01111110 */ 0x0c, /* 00001100 */ 0x38, /* 00111000 */ /* * 136 0x88 '' */ 0x7c, /* 01111100 */ 0x82, /* 10000010 */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0xfe, /* 11111110 */ 0xc0, /* 11000000 */ 0x7c, /* 01111100 */ 0x00, /* 00000000 */ /* * 137 0x89 '' */ 0xc6, /* 11000110 */ 0x00, /* 00000000 */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0xfe, /* 11111110 */ 0xc0, /* 11000000 */ 0x7c, /* 01111100 */ 0x00, /* 00000000 */ /* * 138 0x8a '' */ 0x30, /* 00110000 */ 0x18, /* 00011000 */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0xfe, /* 11111110 */ 0xc0, /* 11000000 */ 0x7c, /* 01111100 */ 0x00, /* 00000000 */ /* * 139 0x8b '' */ 0x66, /* 01100110 */ 0x00, /* 00000000 */ 0x38, /* 00111000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x3c, /* 00111100 */ 0x00, /* 00000000 */ /* * 140 0x8c '' */ 0x7c, /* 01111100 */ 0x82, /* 10000010 */ 0x38, /* 00111000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x3c, /* 00111100 */ 0x00, /* 00000000 */ /* * 141 0x8d '' */ 0x30, /* 00110000 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ 0x38, /* 00111000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x3c, /* 00111100 */ 0x00, /* 00000000 */ /* * 142 0x8e '' */ 0xc6, /* 11000110 */ 0x38, /* 00111000 */ 0x6c, /* 01101100 */ 0xc6, /* 11000110 */ 0xfe, /* 11111110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x00, /* 00000000 */ /* * 143 0x8f '' */ 0x38, /* 00111000 */ 0x6c, /* 01101100 */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0xfe, /* 11111110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x00, /* 00000000 */ /* * 144 0x90 '' */ 0x18, /* 00011000 */ 0x30, /* 00110000 */ 0xfe, /* 11111110 */ 0xc0, /* 11000000 */ 0xf8, /* 11111000 */ 0xc0, /* 11000000 */ 0xfe, /* 11111110 */ 0x00, /* 00000000 */ /* * 145 0x91 '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x7e, /* 01111110 */ 0x18, /* 00011000 */ 0x7e, /* 01111110 */ 0xd8, /* 11011000 */ 0x7e, /* 01111110 */ 0x00, /* 00000000 */ /* * 146 0x92 '' */ 0x3e, /* 00111110 */ 0x6c, /* 01101100 */ 0xcc, /* 11001100 */ 0xfe, /* 11111110 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0xce, /* 11001110 */ 0x00, /* 00000000 */ /* * 147 0x93 '' */ 0x7c, /* 01111100 */ 0x82, /* 10000010 */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x7c, /* 01111100 */ 0x00, /* 00000000 */ /* * 148 0x94 '' */ 0xc6, /* 11000110 */ 0x00, /* 00000000 */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x7c, /* 01111100 */ 0x00, /* 00000000 */ /* * 149 0x95 '' */ 0x30, /* 00110000 */ 0x18, /* 00011000 */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x7c, /* 01111100 */ 0x00, /* 00000000 */ /* * 150 0x96 '' */ 0x78, /* 01111000 */ 0x84, /* 10000100 */ 0x00, /* 00000000 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0x76, /* 01110110 */ 0x00, /* 00000000 */ /* * 151 0x97 '' */ 0x60, /* 01100000 */ 0x30, /* 00110000 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0x76, /* 01110110 */ 0x00, /* 00000000 */ /* * 152 0x98 '' */ 0xc6, /* 11000110 */ 0x00, /* 00000000 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x7e, /* 01111110 */ 0x06, /* 00000110 */ 0xfc, /* 11111100 */ /* * 153 0x99 '' */ 0xc6, /* 11000110 */ 0x38, /* 00111000 */ 0x6c, /* 01101100 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x6c, /* 01101100 */ 0x38, /* 00111000 */ 0x00, /* 00000000 */ /* * 154 0x9a '' */ 0xc6, /* 11000110 */ 0x00, /* 00000000 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x7c, /* 01111100 */ 0x00, /* 00000000 */ /* * 155 0x9b '' */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x7e, /* 01111110 */ 0xc0, /* 11000000 */ 0xc0, /* 11000000 */ 0x7e, /* 01111110 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ /* * 156 0x9c '' */ 0x38, /* 00111000 */ 0x6c, /* 01101100 */ 0x64, /* 01100100 */ 0xf0, /* 11110000 */ 0x60, /* 01100000 */ 0x66, /* 01100110 */ 0xfc, /* 11111100 */ 0x00, /* 00000000 */ /* * 157 0x9d '' */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x3c, /* 00111100 */ 0x7e, /* 01111110 */ 0x18, /* 00011000 */ 0x7e, /* 01111110 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ /* * 158 0x9e '' */ 0xf8, /* 11111000 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0xfa, /* 11111010 */ 0xc6, /* 11000110 */ 0xcf, /* 11001111 */ 0xc6, /* 11000110 */ 0xc7, /* 11000111 */ /* * 159 0x9f '' */ 0x0e, /* 00001110 */ 0x1b, /* 00011011 */ 0x18, /* 00011000 */ 0x3c, /* 00111100 */ 0x18, /* 00011000 */ 0xd8, /* 11011000 */ 0x70, /* 01110000 */ 0x00, /* 00000000 */ /* * 160 0xa0 '' */ 0x18, /* 00011000 */ 0x30, /* 00110000 */ 0x78, /* 01111000 */ 0x0c, /* 00001100 */ 0x7c, /* 01111100 */ 0xcc, /* 11001100 */ 0x76, /* 01110110 */ 0x00, /* 00000000 */ /* * 161 0xa1 '' */ 0x0c, /* 00001100 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ 0x38, /* 00111000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x3c, /* 00111100 */ 0x00, /* 00000000 */ /* * 162 0xa2 '' */ 0x0c, /* 00001100 */ 0x18, /* 00011000 */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x7c, /* 01111100 */ 0x00, /* 00000000 */ /* * 163 0xa3 '' */ 0x18, /* 00011000 */ 0x30, /* 00110000 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0x76, /* 01110110 */ 0x00, /* 00000000 */ /* * 164 0xa4 '' */ 0x76, /* 01110110 */ 0xdc, /* 11011100 */ 0x00, /* 00000000 */ 0xdc, /* 11011100 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x00, /* 00000000 */ /* * 165 0xa5 '' */ 0x76, /* 01110110 */ 0xdc, /* 11011100 */ 0x00, /* 00000000 */ 0xe6, /* 11100110 */ 0xf6, /* 11110110 */ 0xde, /* 11011110 */ 0xce, /* 11001110 */ 0x00, /* 00000000 */ /* * 166 0xa6 '' */ 0x3c, /* 00111100 */ 0x6c, /* 01101100 */ 0x6c, /* 01101100 */ 0x3e, /* 00111110 */ 0x00, /* 00000000 */ 0x7e, /* 01111110 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 167 0xa7 '' */ 0x38, /* 00111000 */ 0x6c, /* 01101100 */ 0x6c, /* 01101100 */ 0x38, /* 00111000 */ 0x00, /* 00000000 */ 0x7c, /* 01111100 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 168 0xa8 '' */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x30, /* 00110000 */ 0x63, /* 01100011 */ 0x3e, /* 00111110 */ 0x00, /* 00000000 */ /* * 169 0xa9 '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xfe, /* 11111110 */ 0xc0, /* 11000000 */ 0xc0, /* 11000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 170 0xaa '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xfe, /* 11111110 */ 0x06, /* 00000110 */ 0x06, /* 00000110 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 171 0xab '' */ 0x63, /* 01100011 */ 0xe6, /* 11100110 */ 0x6c, /* 01101100 */ 0x7e, /* 01111110 */ 0x33, /* 00110011 */ 0x66, /* 01100110 */ 0xcc, /* 11001100 */ 0x0f, /* 00001111 */ /* * 172 0xac '' */ 0x63, /* 01100011 */ 0xe6, /* 11100110 */ 0x6c, /* 01101100 */ 0x7a, /* 01111010 */ 0x36, /* 00110110 */ 0x6a, /* 01101010 */ 0xdf, /* 11011111 */ 0x06, /* 00000110 */ /* * 173 0xad '' */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x3c, /* 00111100 */ 0x3c, /* 00111100 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ /* * 174 0xae '' */ 0x00, /* 00000000 */ 0x33, /* 00110011 */ 0x66, /* 01100110 */ 0xcc, /* 11001100 */ 0x66, /* 01100110 */ 0x33, /* 00110011 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 175 0xaf '' */ 0x00, /* 00000000 */ 0xcc, /* 11001100 */ 0x66, /* 01100110 */ 0x33, /* 00110011 */ 0x66, /* 01100110 */ 0xcc, /* 11001100 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 176 0xb0 '' */ 0x22, /* 00100010 */ 0x88, /* 10001000 */ 0x22, /* 00100010 */ 0x88, /* 10001000 */ 0x22, /* 00100010 */ 0x88, /* 10001000 */ 0x22, /* 00100010 */ 0x88, /* 10001000 */ /* * 177 0xb1 '' */ 0x55, /* 01010101 */ 0xaa, /* 10101010 */ 0x55, /* 01010101 */ 0xaa, /* 10101010 */ 0x55, /* 01010101 */ 0xaa, /* 10101010 */ 0x55, /* 01010101 */ 0xaa, /* 10101010 */ /* * 178 0xb2 '' */ 0x77, /* 01110111 */ 0xdd, /* 11011101 */ 0x77, /* 01110111 */ 0xdd, /* 11011101 */ 0x77, /* 01110111 */ 0xdd, /* 11011101 */ 0x77, /* 01110111 */ 0xdd, /* 11011101 */ /* * 179 0xb3 '' */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ /* * 180 0xb4 '' */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0xf8, /* 11111000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ /* * 181 0xb5 '' */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0xf8, /* 11111000 */ 0x18, /* 00011000 */ 0xf8, /* 11111000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ /* * 182 0xb6 '' */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0xf6, /* 11110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ /* * 183 0xb7 '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xfe, /* 11111110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ /* * 184 0xb8 '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xf8, /* 11111000 */ 0x18, /* 00011000 */ 0xf8, /* 11111000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ /* * 185 0xb9 '' */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0xf6, /* 11110110 */ 0x06, /* 00000110 */ 0xf6, /* 11110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ /* * 186 0xba '' */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ /* * 187 0xbb '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xfe, /* 11111110 */ 0x06, /* 00000110 */ 0xf6, /* 11110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ /* * 188 0xbc '' */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0xf6, /* 11110110 */ 0x06, /* 00000110 */ 0xfe, /* 11111110 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 189 0xbd '' */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0xfe, /* 11111110 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 190 0xbe '' */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0xf8, /* 11111000 */ 0x18, /* 00011000 */ 0xf8, /* 11111000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 191 0xbf '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xf8, /* 11111000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ /* * 192 0xc0 '' */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x1f, /* 00011111 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 193 0xc1 '' */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0xff, /* 11111111 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 194 0xc2 '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xff, /* 11111111 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ /* * 195 0xc3 '' */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x1f, /* 00011111 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ /* * 196 0xc4 '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xff, /* 11111111 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 197 0xc5 '' */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0xff, /* 11111111 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ /* * 198 0xc6 '' */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x1f, /* 00011111 */ 0x18, /* 00011000 */ 0x1f, /* 00011111 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ /* * 199 0xc7 '' */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x37, /* 00110111 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ /* * 200 0xc8 '' */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x37, /* 00110111 */ 0x30, /* 00110000 */ 0x3f, /* 00111111 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 201 0xc9 '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x3f, /* 00111111 */ 0x30, /* 00110000 */ 0x37, /* 00110111 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ /* * 202 0xca '' */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0xf7, /* 11110111 */ 0x00, /* 00000000 */ 0xff, /* 11111111 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 203 0xcb '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xff, /* 11111111 */ 0x00, /* 00000000 */ 0xf7, /* 11110111 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ /* * 204 0xcc '' */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x37, /* 00110111 */ 0x30, /* 00110000 */ 0x37, /* 00110111 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ /* * 205 0xcd '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xff, /* 11111111 */ 0x00, /* 00000000 */ 0xff, /* 11111111 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 206 0xce '' */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0xf7, /* 11110111 */ 0x00, /* 00000000 */ 0xf7, /* 11110111 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ /* * 207 0xcf '' */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0xff, /* 11111111 */ 0x00, /* 00000000 */ 0xff, /* 11111111 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 208 0xd0 '' */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0xff, /* 11111111 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 209 0xd1 '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xff, /* 11111111 */ 0x00, /* 00000000 */ 0xff, /* 11111111 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ /* * 210 0xd2 '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xff, /* 11111111 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ /* * 211 0xd3 '' */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x3f, /* 00111111 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 212 0xd4 '' */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x1f, /* 00011111 */ 0x18, /* 00011000 */ 0x1f, /* 00011111 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 213 0xd5 '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x1f, /* 00011111 */ 0x18, /* 00011000 */ 0x1f, /* 00011111 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ /* * 214 0xd6 '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x3f, /* 00111111 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ /* * 215 0xd7 '' */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0xff, /* 11111111 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ /* * 216 0xd8 '' */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0xff, /* 11111111 */ 0x18, /* 00011000 */ 0xff, /* 11111111 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ /* * 217 0xd9 '' */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0xf8, /* 11111000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 218 0xda '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x1f, /* 00011111 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ /* * 219 0xdb '' */ 0xff, /* 11111111 */ 0xff, /* 11111111 */ 0xff, /* 11111111 */ 0xff, /* 11111111 */ 0xff, /* 11111111 */ 0xff, /* 11111111 */ 0xff, /* 11111111 */ 0xff, /* 11111111 */ /* * 220 0xdc '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xff, /* 11111111 */ 0xff, /* 11111111 */ 0xff, /* 11111111 */ 0xff, /* 11111111 */ /* * 221 0xdd '' */ 0xf0, /* 11110000 */ 0xf0, /* 11110000 */ 0xf0, /* 11110000 */ 0xf0, /* 11110000 */ 0xf0, /* 11110000 */ 0xf0, /* 11110000 */ 0xf0, /* 11110000 */ 0xf0, /* 11110000 */ /* * 222 0xde '' */ 0x0f, /* 00001111 */ 0x0f, /* 00001111 */ 0x0f, /* 00001111 */ 0x0f, /* 00001111 */ 0x0f, /* 00001111 */ 0x0f, /* 00001111 */ 0x0f, /* 00001111 */ 0x0f, /* 00001111 */ /* * 223 0xdf '' */ 0xff, /* 11111111 */ 0xff, /* 11111111 */ 0xff, /* 11111111 */ 0xff, /* 11111111 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 224 0xe0 '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x76, /* 01110110 */ 0xdc, /* 11011100 */ 0xc8, /* 11001000 */ 0xdc, /* 11011100 */ 0x76, /* 01110110 */ 0x00, /* 00000000 */ /* * 225 0xe1 '' */ 0x78, /* 01111000 */ 0xcc, /* 11001100 */ 0xcc, /* 11001100 */ 0xd8, /* 11011000 */ 0xcc, /* 11001100 */ 0xc6, /* 11000110 */ 0xcc, /* 11001100 */ 0x00, /* 00000000 */ /* * 226 0xe2 '' */ 0xfe, /* 11111110 */ 0xc6, /* 11000110 */ 0xc0, /* 11000000 */ 0xc0, /* 11000000 */ 0xc0, /* 11000000 */ 0xc0, /* 11000000 */ 0xc0, /* 11000000 */ 0x00, /* 00000000 */ /* * 227 0xe3 '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0xfe, /* 11111110 */ 0x6c, /* 01101100 */ 0x6c, /* 01101100 */ 0x6c, /* 01101100 */ 0x6c, /* 01101100 */ 0x00, /* 00000000 */ /* * 228 0xe4 '' */ 0xfe, /* 11111110 */ 0xc6, /* 11000110 */ 0x60, /* 01100000 */ 0x30, /* 00110000 */ 0x60, /* 01100000 */ 0xc6, /* 11000110 */ 0xfe, /* 11111110 */ 0x00, /* 00000000 */ /* * 229 0xe5 '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x7e, /* 01111110 */ 0xd8, /* 11011000 */ 0xd8, /* 11011000 */ 0xd8, /* 11011000 */ 0x70, /* 01110000 */ 0x00, /* 00000000 */ /* * 230 0xe6 '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x7c, /* 01111100 */ 0xc0, /* 11000000 */ /* * 231 0xe7 '' */ 0x00, /* 00000000 */ 0x76, /* 01110110 */ 0xdc, /* 11011100 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ /* * 232 0xe8 '' */ 0x7e, /* 01111110 */ 0x18, /* 00011000 */ 0x3c, /* 00111100 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x3c, /* 00111100 */ 0x18, /* 00011000 */ 0x7e, /* 01111110 */ /* * 233 0xe9 '' */ 0x38, /* 00111000 */ 0x6c, /* 01101100 */ 0xc6, /* 11000110 */ 0xfe, /* 11111110 */ 0xc6, /* 11000110 */ 0x6c, /* 01101100 */ 0x38, /* 00111000 */ 0x00, /* 00000000 */ /* * 234 0xea '' */ 0x38, /* 00111000 */ 0x6c, /* 01101100 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x6c, /* 01101100 */ 0x6c, /* 01101100 */ 0xee, /* 11101110 */ 0x00, /* 00000000 */ /* * 235 0xeb '' */ 0x0e, /* 00001110 */ 0x18, /* 00011000 */ 0x0c, /* 00001100 */ 0x3e, /* 00111110 */ 0x66, /* 01100110 */ 0x66, /* 01100110 */ 0x3c, /* 00111100 */ 0x00, /* 00000000 */ /* * 236 0xec '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x7e, /* 01111110 */ 0xdb, /* 11011011 */ 0xdb, /* 11011011 */ 0x7e, /* 01111110 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 237 0xed '' */ 0x06, /* 00000110 */ 0x0c, /* 00001100 */ 0x7e, /* 01111110 */ 0xdb, /* 11011011 */ 0xdb, /* 11011011 */ 0x7e, /* 01111110 */ 0x60, /* 01100000 */ 0xc0, /* 11000000 */ /* * 238 0xee '' */ 0x1e, /* 00011110 */ 0x30, /* 00110000 */ 0x60, /* 01100000 */ 0x7e, /* 01111110 */ 0x60, /* 01100000 */ 0x30, /* 00110000 */ 0x1e, /* 00011110 */ 0x00, /* 00000000 */ /* * 239 0xef '' */ 0x00, /* 00000000 */ 0x7c, /* 01111100 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0xc6, /* 11000110 */ 0x00, /* 00000000 */ /* * 240 0xf0 '' */ 0x00, /* 00000000 */ 0xfe, /* 11111110 */ 0x00, /* 00000000 */ 0xfe, /* 11111110 */ 0x00, /* 00000000 */ 0xfe, /* 11111110 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 241 0xf1 '' */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x7e, /* 01111110 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ 0x7e, /* 01111110 */ 0x00, /* 00000000 */ /* * 242 0xf2 '' */ 0x30, /* 00110000 */ 0x18, /* 00011000 */ 0x0c, /* 00001100 */ 0x18, /* 00011000 */ 0x30, /* 00110000 */ 0x00, /* 00000000 */ 0x7e, /* 01111110 */ 0x00, /* 00000000 */ /* * 243 0xf3 '' */ 0x0c, /* 00001100 */ 0x18, /* 00011000 */ 0x30, /* 00110000 */ 0x18, /* 00011000 */ 0x0c, /* 00001100 */ 0x00, /* 00000000 */ 0x7e, /* 01111110 */ 0x00, /* 00000000 */ /* * 244 0xf4 '' */ 0x0e, /* 00001110 */ 0x1b, /* 00011011 */ 0x1b, /* 00011011 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ /* * 245 0xf5 '' */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0xd8, /* 11011000 */ 0xd8, /* 11011000 */ 0x70, /* 01110000 */ /* * 246 0xf6 '' */ 0x00, /* 00000000 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ 0x7e, /* 01111110 */ 0x00, /* 00000000 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 247 0xf7 '' */ 0x00, /* 00000000 */ 0x76, /* 01110110 */ 0xdc, /* 11011100 */ 0x00, /* 00000000 */ 0x76, /* 01110110 */ 0xdc, /* 11011100 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 248 0xf8 '' */ 0x38, /* 00111000 */ 0x6c, /* 01101100 */ 0x6c, /* 01101100 */ 0x38, /* 00111000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 249 0xf9 '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x18, /* 00011000 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 250 0xfa '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x18, /* 00011000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 251 0xfb '' */ 0x0f, /* 00001111 */ 0x0c, /* 00001100 */ 0x0c, /* 00001100 */ 0x0c, /* 00001100 */ 0xec, /* 11101100 */ 0x6c, /* 01101100 */ 0x3c, /* 00111100 */ 0x1c, /* 00011100 */ /* * 252 0xfc '' */ 0x6c, /* 01101100 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x36, /* 00110110 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 253 0xfd '' */ 0x78, /* 01111000 */ 0x0c, /* 00001100 */ 0x18, /* 00011000 */ 0x30, /* 00110000 */ 0x7c, /* 01111100 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 254 0xfe '' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x3c, /* 00111100 */ 0x3c, /* 00111100 */ 0x3c, /* 00111100 */ 0x3c, /* 00111100 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ /* * 255 0xff ' ' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ }; ================================================ FILE: include/SDL2_rotozoom.h ================================================ /* SDL2_rotozoom.c: rotozoomer, zoomer and shrinker for 32bit or 8bit surfaces Copyright (C) 2001-2012 Andreas Schiffler This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. Andreas Schiffler -- aschiffler at ferzkopp dot net */ #ifndef _SDL2_rotozoom_h #define _SDL2_rotozoom_h #include /* Set up for C function definitions, even when using C++ */ #ifdef __cplusplus extern "C" { #endif #ifndef M_PI #define M_PI 3.1415926535897932384626433832795 #endif #include "SDL2/SDL.h" /* ---- Defines */ /*! \brief Disable anti-aliasing (no smoothing). */ #define SMOOTHING_OFF 0 /*! \brief Enable anti-aliasing (smoothing). */ #define SMOOTHING_ON 1 /* ---- Function Prototypes */ #ifdef _MSC_VER # if defined(DLL_EXPORT) && !defined(LIBSDL2_GFX_DLL_IMPORT) # define SDL2_ROTOZOOM_SCOPE __declspec(dllexport) # else # ifdef LIBSDL2_GFX_DLL_IMPORT # define SDL2_ROTOZOOM_SCOPE __declspec(dllimport) # endif # endif #endif #ifndef SDL2_ROTOZOOM_SCOPE # define SDL2_ROTOZOOM_SCOPE extern #endif /* Rotozoom functions */ SDL2_ROTOZOOM_SCOPE SDL_Surface *rotozoomSurface(SDL_Surface * src, double angle, double zoom, int smooth); SDL2_ROTOZOOM_SCOPE SDL_Surface *rotozoomSurfaceXY (SDL_Surface * src, double angle, double zoomx, double zoomy, int smooth); SDL2_ROTOZOOM_SCOPE void rotozoomSurfaceSize(int width, int height, double angle, double zoom, int *dstwidth, int *dstheight); SDL2_ROTOZOOM_SCOPE void rotozoomSurfaceSizeXY (int width, int height, double angle, double zoomx, double zoomy, int *dstwidth, int *dstheight); /* Zooming functions */ SDL2_ROTOZOOM_SCOPE SDL_Surface *zoomSurface(SDL_Surface * src, double zoomx, double zoomy, int smooth); SDL2_ROTOZOOM_SCOPE void zoomSurfaceSize(int width, int height, double zoomx, double zoomy, int *dstwidth, int *dstheight); /* Shrinking functions */ SDL2_ROTOZOOM_SCOPE SDL_Surface *shrinkSurface(SDL_Surface * src, int factorx, int factory); /* Specialized rotation functions */ SDL2_ROTOZOOM_SCOPE SDL_Surface* rotateSurface90Degrees(SDL_Surface* src, int numClockwiseTurns); /* Ends C function definitions when using C++ */ #ifdef __cplusplus } #endif #endif /* _SDL2_rotozoom_h */ ================================================ FILE: include/SDL_net.h ================================================ /* SDL_net: An example cross-platform network library for use with SDL Copyright (C) 1997-2016 Sam Lantinga Copyright (C) 2012 Simeon Maxein This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. */ /* $Id$ */ #ifndef _SDL_NET_H #define _SDL_NET_H #ifdef WITHOUT_SDL #include typedef uint8_t Uint8; typedef uint16_t Uint16; typedef uint32_t Uint32; typedef struct SDLNet_version { Uint8 major; Uint8 minor; Uint8 patch; } SDLNet_version; #else /* WITHOUT_SDL */ //#include "SDL.h" //#include "SDL_endian.h" //#include "SDL_version.h" typedef SDL_version SDLNet_version; #endif /* WITHOUT_SDL */ #include "begin_code.h" /* Set up for C function definitions, even when using C++ */ #ifdef __cplusplus extern "C" { #endif /* Printable format: "%d.%d.%d", MAJOR, MINOR, PATCHLEVEL */ #define SDL_NET_MAJOR_VERSION 2 #define SDL_NET_MINOR_VERSION 0 #define SDL_NET_PATCHLEVEL 1 /* This macro can be used to fill a version structure with the compile-time * version of the SDL_net library. */ #define SDL_NET_VERSION(X) \ { \ (X)->major = SDL_NET_MAJOR_VERSION; \ (X)->minor = SDL_NET_MINOR_VERSION; \ (X)->patch = SDL_NET_PATCHLEVEL; \ } /* This function gets the version of the dynamically linked SDL_net library. it should NOT be used to fill a version structure, instead you should use the SDL_NET_VERSION() macro. */ extern DECLSPEC const SDLNet_version * SDLCALL SDLNet_Linked_Version(void); /* Initialize/Cleanup the network API SDL must be initialized before calls to functions in this library, because this library uses utility functions from the SDL library. */ extern DECLSPEC int SDLCALL SDLNet_Init(void); extern DECLSPEC void SDLCALL SDLNet_Quit(void); /***********************************************************************/ /* IPv4 hostname resolution API */ /***********************************************************************/ typedef struct { Uint32 host; /* 32-bit IPv4 host address */ Uint16 port; /* 16-bit protocol port */ } IPaddress; /* Resolve a host name and port to an IP address in network form. If the function succeeds, it will return 0. If the host couldn't be resolved, the host portion of the returned address will be INADDR_NONE, and the function will return -1. If 'host' is NULL, the resolved host will be set to INADDR_ANY. */ #ifndef INADDR_ANY #define INADDR_ANY 0x00000000 #endif #ifndef INADDR_NONE #define INADDR_NONE 0xFFFFFFFF #endif #ifndef INADDR_LOOPBACK #define INADDR_LOOPBACK 0x7f000001 #endif #ifndef INADDR_BROADCAST #define INADDR_BROADCAST 0xFFFFFFFF #endif extern DECLSPEC int SDLCALL SDLNet_ResolveHost(IPaddress *address, const char *host, Uint16 port); /* Resolve an ip address to a host name in canonical form. If the ip couldn't be resolved, this function returns NULL, otherwise a pointer to a static buffer containing the hostname is returned. Note that this function is not thread-safe. */ extern DECLSPEC const char * SDLCALL SDLNet_ResolveIP(const IPaddress *ip); /* Get the addresses of network interfaces on this system. This returns the number of addresses saved in 'addresses' */ extern DECLSPEC int SDLCALL SDLNet_GetLocalAddresses(IPaddress *addresses, int maxcount); /***********************************************************************/ /* TCP network API */ /***********************************************************************/ typedef struct _TCPsocket *TCPsocket; /* Open a TCP network socket If ip.host is INADDR_NONE or INADDR_ANY, this creates a local server socket on the given port, otherwise a TCP connection to the remote host and port is attempted. The address passed in should already be swapped to network byte order (addresses returned from SDLNet_ResolveHost() are already in the correct form). The newly created socket is returned, or NULL if there was an error. */ extern DECLSPEC TCPsocket SDLCALL SDLNet_TCP_Open(IPaddress *ip); /* Accept an incoming connection on the given server socket. The newly created socket is returned, or NULL if there was an error. */ extern DECLSPEC TCPsocket SDLCALL SDLNet_TCP_Accept(TCPsocket server); /* Get the IP address of the remote system associated with the socket. If the socket is a server socket, this function returns NULL. */ extern DECLSPEC IPaddress * SDLCALL SDLNet_TCP_GetPeerAddress(TCPsocket sock); /* Send 'len' bytes of 'data' over the non-server socket 'sock' This function returns the actual amount of data sent. If the return value is less than the amount of data sent, then either the remote connection was closed, or an unknown socket error occurred. */ extern DECLSPEC int SDLCALL SDLNet_TCP_Send(TCPsocket sock, const void *data, int len); /* Receive up to 'maxlen' bytes of data over the non-server socket 'sock', and store them in the buffer pointed to by 'data'. This function returns the actual amount of data received. If the return value is less than or equal to zero, then either the remote connection was closed, or an unknown socket error occurred. */ extern DECLSPEC int SDLCALL SDLNet_TCP_Recv(TCPsocket sock, void *data, int maxlen); /* Close a TCP network socket */ extern DECLSPEC void SDLCALL SDLNet_TCP_Close(TCPsocket sock); /***********************************************************************/ /* UDP network API */ /***********************************************************************/ /* The maximum channels on a a UDP socket */ #define SDLNET_MAX_UDPCHANNELS 32 /* The maximum addresses bound to a single UDP socket channel */ #define SDLNET_MAX_UDPADDRESSES 4 typedef struct _UDPsocket *UDPsocket; typedef struct { int channel; /* The src/dst channel of the packet */ Uint8 *data; /* The packet data */ int len; /* The length of the packet data */ int maxlen; /* The size of the data buffer */ int status; /* packet status after sending */ IPaddress address; /* The source/dest address of an incoming/outgoing packet */ } UDPpacket; /* Allocate/resize/free a single UDP packet 'size' bytes long. The new packet is returned, or NULL if the function ran out of memory. */ extern DECLSPEC UDPpacket * SDLCALL SDLNet_AllocPacket(int size); extern DECLSPEC int SDLCALL SDLNet_ResizePacket(UDPpacket *packet, int newsize); extern DECLSPEC void SDLCALL SDLNet_FreePacket(UDPpacket *packet); /* Allocate/Free a UDP packet vector (array of packets) of 'howmany' packets, each 'size' bytes long. A pointer to the first packet in the array is returned, or NULL if the function ran out of memory. */ extern DECLSPEC UDPpacket ** SDLCALL SDLNet_AllocPacketV(int howmany, int size); extern DECLSPEC void SDLCALL SDLNet_FreePacketV(UDPpacket **packetV); /* Open a UDP network socket If 'port' is non-zero, the UDP socket is bound to a local port. The 'port' should be given in native byte order, but is used internally in network (big endian) byte order, in addresses, etc. This allows other systems to send to this socket via a known port. */ extern DECLSPEC UDPsocket SDLCALL SDLNet_UDP_Open(Uint16 port); /* Set the percentage of simulated packet loss for packets sent on the socket. */ extern DECLSPEC void SDLCALL SDLNet_UDP_SetPacketLoss(UDPsocket sock, int percent); /* Bind the address 'address' to the requested channel on the UDP socket. If the channel is -1, then the first unbound channel that has not yet been bound to the maximum number of addresses will be bound with the given address as it's primary address. If the channel is already bound, this new address will be added to the list of valid source addresses for packets arriving on the channel. If the channel is not already bound, then the address becomes the primary address, to which all outbound packets on the channel are sent. This function returns the channel which was bound, or -1 on error. */ extern DECLSPEC int SDLCALL SDLNet_UDP_Bind(UDPsocket sock, int channel, const IPaddress *address); /* Unbind all addresses from the given channel */ extern DECLSPEC void SDLCALL SDLNet_UDP_Unbind(UDPsocket sock, int channel); /* Get the primary IP address of the remote system associated with the socket and channel. If the channel is -1, then the primary IP port of the UDP socket is returned -- this is only meaningful for sockets opened with a specific port. If the channel is not bound and not -1, this function returns NULL. */ extern DECLSPEC IPaddress * SDLCALL SDLNet_UDP_GetPeerAddress(UDPsocket sock, int channel); /* Send a vector of packets to the the channels specified within the packet. If the channel specified in the packet is -1, the packet will be sent to the address in the 'src' member of the packet. Each packet will be updated with the status of the packet after it has been sent, -1 if the packet send failed. This function returns the number of packets sent. */ extern DECLSPEC int SDLCALL SDLNet_UDP_SendV(UDPsocket sock, UDPpacket **packets, int npackets); /* Send a single packet to the specified channel. If the channel specified in the packet is -1, the packet will be sent to the address in the 'src' member of the packet. The packet will be updated with the status of the packet after it has been sent. This function returns 1 if the packet was sent, or 0 on error. NOTE: The maximum size of the packet is limited by the MTU (Maximum Transfer Unit) of the transport medium. It can be as low as 250 bytes for some PPP links, and as high as 1500 bytes for ethernet. */ extern DECLSPEC int SDLCALL SDLNet_UDP_Send(UDPsocket sock, int channel, UDPpacket *packet); /* Receive a vector of pending packets from the UDP socket. The returned packets contain the source address and the channel they arrived on. If they did not arrive on a bound channel, the the channel will be set to -1. The channels are checked in highest to lowest order, so if an address is bound to multiple channels, the highest channel with the source address bound will be returned. This function returns the number of packets read from the network, or -1 on error. This function does not block, so can return 0 packets pending. */ extern DECLSPEC int SDLCALL SDLNet_UDP_RecvV(UDPsocket sock, UDPpacket **packets); /* Receive a single packet from the UDP socket. The returned packet contains the source address and the channel it arrived on. If it did not arrive on a bound channel, the the channel will be set to -1. The channels are checked in highest to lowest order, so if an address is bound to multiple channels, the highest channel with the source address bound will be returned. This function returns the number of packets read from the network, or -1 on error. This function does not block, so can return 0 packets pending. */ extern DECLSPEC int SDLCALL SDLNet_UDP_Recv(UDPsocket sock, UDPpacket *packet); /* Close a UDP network socket */ extern DECLSPEC void SDLCALL SDLNet_UDP_Close(UDPsocket sock); /***********************************************************************/ /* Hooks for checking sockets for available data */ /***********************************************************************/ typedef struct _SDLNet_SocketSet *SDLNet_SocketSet; /* Any network socket can be safely cast to this socket type */ typedef struct _SDLNet_GenericSocket { int ready; } *SDLNet_GenericSocket; /* Allocate a socket set for use with SDLNet_CheckSockets() This returns a socket set for up to 'maxsockets' sockets, or NULL if the function ran out of memory. */ extern DECLSPEC SDLNet_SocketSet SDLCALL SDLNet_AllocSocketSet(int maxsockets); /* Add a socket to a set of sockets to be checked for available data */ extern DECLSPEC int SDLCALL SDLNet_AddSocket(SDLNet_SocketSet set, SDLNet_GenericSocket sock); SDL_FORCE_INLINE int SDLNet_TCP_AddSocket(SDLNet_SocketSet set, TCPsocket sock) { return SDLNet_AddSocket(set, (SDLNet_GenericSocket)sock); } SDL_FORCE_INLINE int SDLNet_UDP_AddSocket(SDLNet_SocketSet set, UDPsocket sock) { return SDLNet_AddSocket(set, (SDLNet_GenericSocket)sock); } /* Remove a socket from a set of sockets to be checked for available data */ extern DECLSPEC int SDLCALL SDLNet_DelSocket(SDLNet_SocketSet set, SDLNet_GenericSocket sock); SDL_FORCE_INLINE int SDLNet_TCP_DelSocket(SDLNet_SocketSet set, TCPsocket sock) { return SDLNet_DelSocket(set, (SDLNet_GenericSocket)sock); } SDL_FORCE_INLINE int SDLNet_UDP_DelSocket(SDLNet_SocketSet set, UDPsocket sock) { return SDLNet_DelSocket(set, (SDLNet_GenericSocket)sock); } /* This function checks to see if data is available for reading on the given set of sockets. If 'timeout' is 0, it performs a quick poll, otherwise the function returns when either data is available for reading, or the timeout in milliseconds has elapsed, which ever occurs first. This function returns the number of sockets ready for reading, or -1 if there was an error with the select() system call. */ extern DECLSPEC int SDLCALL SDLNet_CheckSockets(SDLNet_SocketSet set, Uint32 timeout); /* After calling SDLNet_CheckSockets(), you can use this function on a socket that was in the socket set, to find out if data is available for reading. */ #define SDLNet_SocketReady(sock) _SDLNet_SocketReady((SDLNet_GenericSocket)(sock)) SDL_FORCE_INLINE int _SDLNet_SocketReady(SDLNet_GenericSocket sock) { return (sock != NULL) && (sock->ready); } /* Free a set of sockets allocated by SDL_NetAllocSocketSet() */ extern DECLSPEC void SDLCALL SDLNet_FreeSocketSet(SDLNet_SocketSet set); /***********************************************************************/ /* Error reporting functions */ /***********************************************************************/ extern DECLSPEC void SDLCALL SDLNet_SetError(const char *fmt, ...); extern DECLSPEC const char * SDLCALL SDLNet_GetError(void); /***********************************************************************/ /* Inline functions to read/write network data */ /***********************************************************************/ /* Warning, some systems have data access alignment restrictions */ #if defined(sparc) || defined(mips) || defined(__arm__) #define SDL_DATA_ALIGNED 1 #endif #ifndef SDL_DATA_ALIGNED #define SDL_DATA_ALIGNED 0 #endif /* Write a 16/32-bit value to network packet buffer */ #define SDLNet_Write16(value, areap) _SDLNet_Write16(value, areap) #define SDLNet_Write32(value, areap) _SDLNet_Write32(value, areap) /* Read a 16/32-bit value from network packet buffer */ #define SDLNet_Read16(areap) _SDLNet_Read16(areap) #define SDLNet_Read32(areap) _SDLNet_Read32(areap) #if !defined(WITHOUT_SDL) && !SDL_DATA_ALIGNED SDL_FORCE_INLINE void _SDLNet_Write16(Uint16 value, void *areap) { *(Uint16 *)areap = SDL_SwapBE16(value); } SDL_FORCE_INLINE void _SDLNet_Write32(Uint32 value, void *areap) { *(Uint32 *)areap = SDL_SwapBE32(value); } SDL_FORCE_INLINE Uint16 _SDLNet_Read16(const void *areap) { return SDL_SwapBE16(*(const Uint16 *)areap); } SDL_FORCE_INLINE Uint32 _SDLNet_Read32(const void *areap) { return SDL_SwapBE32(*(const Uint32 *)areap); } #else /* !defined(WITHOUT_SDL) && !SDL_DATA_ALIGNED */ SDL_FORCE_INLINE void _SDLNet_Write16(Uint16 value, void *areap) { Uint8 *area = (Uint8*)areap; area[0] = (value >> 8) & 0xFF; area[1] = value & 0xFF; } SDL_FORCE_INLINE void _SDLNet_Write32(Uint32 value, void *areap) { Uint8 *area = (Uint8*)areap; area[0] = (value >> 24) & 0xFF; area[1] = (value >> 16) & 0xFF; area[2] = (value >> 8) & 0xFF; area[3] = value & 0xFF; } SDL_FORCE_INLINE Uint16 _SDLNet_Read16(void *areap) { Uint8 *area = (Uint8*)areap; return ((Uint16)area[0]) << 8 | ((Uint16)area[1]); } SDL_FORCE_INLINE Uint32 _SDLNet_Read32(const void *areap) { const Uint8 *area = (const Uint8*)areap; return ((Uint32)area[0]) << 24 | ((Uint32)area[1]) << 16 | ((Uint32)area[2]) << 8 | ((Uint32)area[3]); } #endif /* !defined(WITHOUT_SDL) && !SDL_DATA_ALIGNED */ /* Ends C function definitions when using C++ */ #ifdef __cplusplus } #endif #include "close_code.h" #endif /* _SDL_NET_H */ ================================================ FILE: include/SDL_stbimage.h ================================================ /* * A small header-only library to load an image into a RGB(A) SDL_Surface*, * like a stripped down version of SDL_Image, but using stb_image.h to decode * images and thus without any further external dependencies. * Supports all filetypes supported by stb_image (JPEG, PNG, TGA, BMP, PSD, ... * See stb_image.h for details). * * (C) 2015-2021 Daniel Gibson * * Homepage: https://github.com/DanielGibson/Snippets/ * * Dependencies: * libSDL2 http://www.libsdl.org * stb_image.h https://github.com/nothings/stb * * Usage: * Put this file and stb_image.h somewhere in your project. * In *one* of your .c/.cpp files, do * #define SDL_STBIMAGE_IMPLEMENTATION * #include "SDL_stbimage.h" * to create the implementation of this library in that file. * You can just #include "SDL_stbimage.h" (without the #define) in other source * files to use it there. (See also below this comment for an usage example) * This header implicitly #includes and "stb_image.h". * * You can #define SDL_STBIMG_DEF before including this header if you want to * prepend anything to the function signatures (like "static", "inline", * "__declspec(dllexport)", ...) * Example: #define SDL_STBIMG_DEF static inline * * By default, this deactivates stb_image's load from file functions via * #define STBI_NO_STDIO, as they use stdio.h and that adds a dependency to the * CRT on windows and with SDL you're better off using SDL_RWops, incl. SDL_RWFromFile() * If you wanna use stbi_load(), stbi_info(), stbi_load_from_file() etc anyway, do * #define SDL_STBIMG_ALLOW_STDIO * before including this header. * (Note that all the STBIMG_* functions of this lib will work without it) * * stb_image.h uses assert.h by default. You can #define STBI_ASSERT(x) * before the implementation-#include of SDL_stbimage.h to avoid that. * By default stb_image supports HDR images, for that it needs pow() from libm. * If you don't need HDR (it can't be loaded into a SDL_Surface anyway), * #define STBI_NO_LINEAR and #define STBI_NO_HDR before including this header. * * License: * This software is dual-licensed to the public domain and under the following * license: you are granted a perpetual, irrevocable license to copy, modify, * publish, and distribute this file as you see fit. * No warranty implied; use at your own risk. * * So you can do whatever you want with this code, including copying it * (or parts of it) into your own source. * No need to mention me or this "license" in your code or docs, even though * it would be appreciated, of course. */ #if 0 // Usage Example: #define SDL_STBIMAGE_IMPLEMENTATION #include "SDL_stbimage.h" void yourFunction(const char* imageFilePath) { SDL_Surface* surf = STBIMG_Load(imageFilePath); if(surf == NULL) { printf("ERROR: Couldn't load %s, reason: %s\n", imageFilePath, SDL_GetError()); exit(1); } // ... do something with surf ... SDL_FreeSurface(surf); } #endif // 0 (usage example) #ifndef SDL__STBIMAGE_H #define SDL__STBIMAGE_H // if you really think you need here instead.. feel free to change it, // but the cool kids have path/to/include/SDL2/ in their compilers include path. #include #ifndef SDL_STBIMG_ALLOW_STDIO #define STBI_NO_STDIO // don't need STDIO, will use SDL_RWops to open files #endif #define STBI_NO_THREAD_LOCALS #include "stb_image.h" // this allows you to prepend stuff to function signatures, e.g. "static" #ifndef SDL_STBIMG_DEF // by default it's empty #define SDL_STBIMG_DEF #endif // DG_MISC_DEF #ifdef __cplusplus extern "C" { #endif // loads the image file at the given path into a RGB(A) SDL_Surface // Returns NULL on error, use SDL_GetError() to get more information. SDL_STBIMG_DEF SDL_Surface* STBIMG_Load(const char* file); // loads the image file in the given memory buffer into a RGB(A) SDL_Surface // Returns NULL on error, use SDL_GetError() to get more information. SDL_STBIMG_DEF SDL_Surface* STBIMG_LoadFromMemory(const unsigned char* buffer, int length); // loads an image file into a RGB(A) SDL_Surface from a seekable SDL_RWops (src) // if you set freesrc to non-zero, SDL_RWclose(src) will be executed after reading. // Returns NULL on error, use SDL_GetError() to get more information. SDL_STBIMG_DEF SDL_Surface* STBIMG_Load_RW(SDL_RWops* src, int freesrc); // Creates an SDL_Surface* using the raw RGB(A) pixelData with given width/height // (this doesn't use stb_image and is just a simple SDL_CreateSurfaceFrom()-wrapper) // ! It must be byte-wise 24bit RGB ("888", bytesPerPixel=3) ! // ! or byte-wise 32bit RGBA ("8888", bytesPerPixel=4) data ! // If freeWithSurface is SDL_TRUE, SDL_FreeSurface() will free the pixelData // you passed with SDL_free() - NOTE that you should only do that if pixelData // was allocated with SDL_malloc(), SDL_calloc() or SDL_realloc()! // Returns NULL on error (in that case pixelData won't be freed!), // use SDL_GetError() to get more information. SDL_STBIMG_DEF SDL_Surface* STBIMG_CreateSurface(unsigned char* pixelData, int width, int height, int bytesPerPixel, SDL_bool freeWithSurface); #if SDL_MAJOR_VERSION > 1 // loads the image file at the given path into a RGB(A) SDL_Texture // Returns NULL on error, use SDL_GetError() to get more information. SDL_STBIMG_DEF SDL_Texture* STBIMG_LoadTexture(SDL_Renderer* renderer, const char* file); // loads the image file in the given memory buffer into a RGB(A) SDL_Texture // Returns NULL on error, use SDL_GetError() to get more information. SDL_STBIMG_DEF SDL_Texture* STBIMG_LoadTextureFromMemory(SDL_Renderer* renderer, const unsigned char* buffer, int length); // loads an image file into a RGB(A) SDL_Texture from a seekable SDL_RWops (src) // if you set freesrc to non-zero, SDL_RWclose(src) will be executed after reading. // Returns NULL on error, use SDL_GetError() to get more information. SDL_STBIMG_DEF SDL_Texture* STBIMG_LoadTexture_RW(SDL_Renderer* renderer, SDL_RWops* src, int freesrc); // Creates an SDL_Texture* using the raw RGB(A) pixelData with given width/height // (this doesn't use stb_image and is just a simple SDL_CreateSurfaceFrom()-wrapper) // ! It must be byte-wise 24bit RGB ("888", bytesPerPixel=3) ! // ! or byte-wise 32bit RGBA ("8888", bytesPerPixel=4) data ! // Returns NULL on error, use SDL_GetError() to get more information. SDL_STBIMG_DEF SDL_Texture* STBIMG_CreateTexture(SDL_Renderer* renderer, const unsigned char* pixelData, int width, int height, int bytesPerPixel); #endif // SDL_MAJOR_VERSION > 1 typedef struct { SDL_RWops* src; stbi_io_callbacks stb_cbs; int atEOF; // defaults to 0; 1: reached EOF or error on read, 2: error on seek } STBIMG_stbio_RWops; // creates stbi_io_callbacks and userdata to use stbi_*_from_callbacks() directly, // especially useful to use SDL_RWops with stb_image, without using SDL_Surface // src must be readable and seekable! // Returns SDL_FALSE on error (SDL_GetError() will give you info), else SDL_TRUE // NOTE: If you want to use src twice (e.g. for info and load), remember to rewind // it by seeking back to its initial position and resetting out->atEOF to 0 // inbetween the uses! SDL_STBIMG_DEF SDL_bool STBIMG_stbi_callback_from_RW(SDL_RWops* src, STBIMG_stbio_RWops* out); #if 0 // Use STBIMG_stbi_callback_from_RW() like this: SDL_RWops* src = ...; // wherever it's from STBIMG_stbio_RWops io; if(!STBIMG_stbi_callback_from_RW(src, &io)) { printf("ERROR creating stbio callbacks: %s\n", SDL_GetError()); exit(1); } Sint64 origSrcPosition = SDL_RWtell(src); int w, h, fmt; if(!stbi_info_from_callbacks(&io.stb_cbs, &io, &w, &h, &fmt)) { printf("stbi_info_from_callbacks() failed, reason: %s\n", stbi_failure_reason()); exit(1); } printf("image is %d x %d pixels with %d bytes per pixel\n", w, h, fmt); // rewind src before using it again in stbi_load_from_callbacks() if(SDL_RWseek(src, origSrcPosition, RW_SEEK_SET) < 0) { printf("ERROR: src not be seekable!\n"); exit(1); } io.atEOF = 0; // remember to reset atEOF, too! unsigned char* data; data = stbi_load_from_callbacks(&io.stb_cbs, &io, &w, &h, &fmt, 0); if(data == NULL) { printf("stbi_load_from_callbacks() failed, reason: %s\n", stbi_failure_reason()); exit(1); } // ... do something with data ... stbi_image_free(data); #endif // 0 (STBIMG_stbi_callback_from_RW() example) #if SDL_MAJOR_VERSION > 1 // loads an image file into a RGB(A) SDL_Surface from a SDL_RWops (src) // - without using SDL_RWseek(), for streams that don't support or are slow // at seeking. It reads everything into a buffer and calls STBIMG_LoadFromMemory() // You should probably only use this if you *really* have performance problems // because of seeking or your src doesn't support SDL_RWseek(), but SDL_RWsize() // src must at least support SDL_RWread() and SDL_RWsize() // if you set freesrc to non-zero, SDL_RWclose(src) will be executed after reading. // Returns NULL on error, use SDL_GetError() to get more information. SDL_STBIMG_DEF SDL_Surface* STBIMG_Load_RW_noSeek(SDL_RWops* src, int freesrc); // the same for textures (you should probably not use this one, either..) SDL_STBIMG_DEF SDL_Texture* STBIMG_LoadTexture_RW_noSeek(SDL_Renderer* renderer, SDL_RWops* src, int freesrc); #endif // SDL_MAJOR_VERSION > 1 #ifdef __cplusplus } // extern "C" #endif #endif // SDL__STBIMAGE_H // ############# Below: Implementation ############### #ifdef SDL_STBIMAGE_IMPLEMENTATION // make stb_image use SDL_malloc etc, so SDL_FreeSurface() can SDL_free() // the data allocated by stb_image #define STBI_MALLOC SDL_malloc #define STBI_REALLOC SDL_realloc #define STBI_FREE SDL_free #define STB_IMAGE_IMPLEMENTATION #ifndef SDL_STBIMG_ALLOW_STDIO #define STBI_NO_STDIO // don't need STDIO, will use SDL_RWops to open files #endif #include "stb_image.h" typedef struct { unsigned char* data; int w; int h; int format; // 3: RGB, 4: RGBA } STBIMG__image; static SDL_Surface* STBIMG__CreateSurfaceImpl(STBIMG__image img, int freeWithSurface) { SDL_Surface* surf = NULL; #if SDL_VERSION_ATLEAST(2, 0, 5) // SDL 2.0.5 introduced SDL_CreateRGBSurfaceWithFormatFrom() and SDL_PIXELFORMAT_RGBA32 // which makes this code much simpler. Uint32 format = (img.format == STBI_rgb) ? SDL_PIXELFORMAT_RGB24 : SDL_PIXELFORMAT_RGBA32; surf = SDL_CreateRGBSurfaceWithFormatFrom((void*)img.data, img.w, img.h, img.format*8, img.format*img.w, format); #else // older SDL2 version without SDL_CreateRGBSurfaceWithFormatFrom() Uint32 rmask, gmask, bmask, amask; // ok, the following is pretty stupid.. SDL_CreateRGBSurfaceFrom() pretends to use // a void* for the data, but it's really treated as endian-specific Uint32* // and there isn't even an SDL_PIXELFORMAT_* for 32bit byte-wise RGBA #if SDL_BYTEORDER == SDL_BIG_ENDIAN int shift = (img.format == STBI_rgb) ? 8 : 0; rmask = 0xff000000 >> shift; gmask = 0x00ff0000 >> shift; bmask = 0x0000ff00 >> shift; amask = 0x000000ff >> shift; #else // little endian, like x86 rmask = 0x000000ff; gmask = 0x0000ff00; bmask = 0x00ff0000; amask = (img.format == STBI_rgb) ? 0 : 0xff000000; #endif surf = SDL_CreateRGBSurfaceFrom((void*)img.data, img.w, img.h, img.format*8, img.format*img.w, rmask, gmask, bmask, amask); #endif // SDL_VERSION_ATLEAST if(surf == NULL) { // hopefully SDL_CreateRGBSurfaceFrom() has set an sdl error return NULL; } if(freeWithSurface) { // SDL_Surface::flags is documented to be read-only.. but if the pixeldata // has been allocated with SDL_malloc()/SDL_calloc()/SDL_realloc() this // should work (and it currently does) + @icculus said it's reasonably safe: // https://twitter.com/icculus/status/667036586610139137 :-) // clear the SDL_PREALLOC flag, so SDL_FreeSurface() free()s the data passed from img.data surf->flags &= ~SDL_PREALLOC; } return surf; } SDL_STBIMG_DEF SDL_Surface* STBIMG_LoadFromMemory(const unsigned char* buffer, int length) { STBIMG__image img = {0}; int bppToUse = 0; int inforet = 0; SDL_Surface* ret = NULL; if(buffer == NULL) { SDL_SetError("STBIMG_LoadFromMemory(): passed buffer was NULL!"); return NULL; } if(length <= 0) { SDL_SetError("STBIMG_LoadFromMemory(): passed invalid length: %d!", length); return NULL; } inforet = stbi_info_from_memory(buffer, length, &img.w, &img.h, &img.format); if(!inforet) { SDL_SetError("STBIMG_LoadFromMemory(): Couldn't get image info: %s!\n", stbi_failure_reason()); return NULL; } // no alpha => use RGB, else use RGBA bppToUse = (img.format == STBI_grey || img.format == STBI_rgb) ? STBI_rgb : STBI_rgb_alpha; img.data = stbi_load_from_memory(buffer, length, &img.w, &img.h, &img.format, bppToUse); if(img.data == NULL) { SDL_SetError("STBIMG_LoadFromMemory(): Couldn't load image: %s!\n", stbi_failure_reason()); return NULL; } img.format = bppToUse; ret = STBIMG__CreateSurfaceImpl(img, 1); if(ret == NULL) { // no need to log an error here, it was an SDL error which should still be available through SDL_GetError() SDL_free(img.data); return NULL; } return ret; } // fill 'data' with 'size' bytes. return number of bytes actually read static int STBIMG__io_read(void* user, char* data, int size) { STBIMG_stbio_RWops* io = (STBIMG_stbio_RWops*)user; int ret = SDL_RWread(io->src, data, sizeof(char), size); if(ret == 0) { // we're at EOF or some error happend io->atEOF = 1; } return (int)ret*sizeof(char); } // skip the next 'n' bytes, or 'unget' the last -n bytes if negative static void STBIMG__io_skip(void* user, int n) { STBIMG_stbio_RWops* io = (STBIMG_stbio_RWops*)user; if(SDL_RWseek(io->src, n, RW_SEEK_CUR) == -1) { // an error happened during seeking, hopefully setting EOF will make stb_image abort io->atEOF = 2; // set this to 2 for "aborting because seeking failed" (stb_image only cares about != 0) } } // returns nonzero if we are at end of file/data static int STBIMG__io_eof(void* user) { STBIMG_stbio_RWops* io = (STBIMG_stbio_RWops*)user; return io->atEOF; } SDL_STBIMG_DEF SDL_bool STBIMG_stbi_callback_from_RW(SDL_RWops* src, STBIMG_stbio_RWops* out) { if(out == NULL) { SDL_SetError("STBIMG_stbi_callback_from_RW(): out must not be NULL!"); return SDL_FALSE; } // make sure out is at least initialized to something deterministic memset(out, 0, sizeof(*out)); if(src == NULL) { SDL_SetError("STBIMG_stbi_callback_from_RW(): src must not be NULL!"); return SDL_FALSE; } out->src = src; out->atEOF = 0; out->stb_cbs.read = STBIMG__io_read; out->stb_cbs.skip = STBIMG__io_skip; out->stb_cbs.eof = STBIMG__io_eof; return SDL_TRUE; } SDL_STBIMG_DEF SDL_Surface* STBIMG_Load_RW(SDL_RWops* src, int freesrc) { STBIMG__image img = {0}; int bppToUse = 0; int inforet = 0; SDL_Surface* ret = NULL; Sint64 srcOffset = 0; STBIMG_stbio_RWops cbData; if(src == NULL) { SDL_SetError("STBIMG_Load_RW(): src was NULL!"); return NULL; } srcOffset = SDL_RWtell(src); if(srcOffset < 0) { SDL_SetError("STBIMG_Load_RW(): src must be seekable, maybe use STBIMG_Load_RW_noSeek() instead!"); // TODO: or do that automatically? but I think the user should be aware of what they're doing goto end; } if(!STBIMG_stbi_callback_from_RW(src, &cbData)) { goto end; } inforet = stbi_info_from_callbacks(&cbData.stb_cbs, &cbData, &img.w, &img.h, &img.format); if(!inforet) { if(cbData.atEOF == 2) SDL_SetError("STBIMG_Load_RW(): src must be seekable!"); else SDL_SetError("STBIMG_Load_RW(): Couldn't get image info: %s!\n", stbi_failure_reason()); goto end; } // rewind src so stbi_load_from_callbacks() will start reading from the beginning again if(SDL_RWseek(src, srcOffset, RW_SEEK_SET) < 0) { SDL_SetError("STBIMG_Load_RW(): src must be seekable!"); goto end; } cbData.atEOF = 0; // we've rewinded (rewound?) // no alpha => use RGB, else use RGBA bppToUse = (img.format == STBI_grey || img.format == STBI_rgb) ? STBI_rgb : STBI_rgb_alpha; img.data = stbi_load_from_callbacks(&cbData.stb_cbs, &cbData, &img.w, &img.h, &img.format, bppToUse); if(img.data == NULL) { SDL_SetError("STBIMG_Load_RW(): Couldn't load image: %s!\n", stbi_failure_reason()); goto end; } img.format = bppToUse; ret = STBIMG__CreateSurfaceImpl(img, 1); if(ret == NULL) { // no need to log an error here, it was an SDL error which should still be available through SDL_GetError() SDL_free(img.data); img.data = NULL; goto end; } end: if(freesrc) { SDL_RWclose(src); } else if(img.data == NULL) { // if data is still NULL, there was an error and we should probably // seek src back to where it was when this function was called SDL_RWseek(src, srcOffset, RW_SEEK_SET); } return ret; } #if SDL_MAJOR_VERSION > 1 SDL_STBIMG_DEF SDL_Surface* STBIMG_Load_RW_noSeek(SDL_RWops* src, int freesrc) { unsigned char* buf = NULL; Sint64 fileSize = 0; SDL_Surface* ret = NULL; if(src == NULL) { SDL_SetError("STBIMG_Load_RW_noSeek(): src was NULL!"); return NULL; } fileSize = SDL_RWsize(src); if(fileSize < 0) { goto end; // SDL should have set an error already } else if(fileSize == 0) { SDL_SetError("STBIMG_Load_RW_noSeek(): SDL_RWsize(src) returned 0 => empty file/stream?!"); goto end; } else if(fileSize > 0x7FFFFFFF) { // stb_image.h uses ints for all sizes, so we can't support more // (but >2GB images are insane anyway) SDL_SetError("STBIMG_Load_RW_noSeek(): SDL_RWsize(src) too big (> 2GB)!"); goto end; } buf = (unsigned char*)SDL_malloc(fileSize); if(buf == NULL) { SDL_SetError("STBIMG_Load_RW_noSeek(): Couldn't allocate buffer to read src into!"); goto end; } if(SDL_RWread(src, buf, fileSize, 1) > 0) { // if that fails, STBIMG_LoadFromMemory() has set an SDL error // and ret is NULL, so nothing special to do for us ret = STBIMG_LoadFromMemory(buf, fileSize); } end: if(freesrc) { SDL_RWclose(src); } SDL_free(buf); return ret; } #endif // SDL_MAJOR_VERSION > 1 SDL_STBIMG_DEF SDL_Surface* STBIMG_Load(const char* file) { SDL_RWops* src = SDL_RWFromFile(file, "rb"); if(src == NULL) return NULL; return STBIMG_Load_RW(src, 1); } SDL_STBIMG_DEF SDL_Surface* STBIMG_CreateSurface(unsigned char* pixelData, int width, int height, int bytesPerPixel, SDL_bool freeWithSurface) { STBIMG__image img; if(pixelData == NULL) { SDL_SetError("STBIMG_CreateSurface(): passed pixelData was NULL!"); return NULL; } if(bytesPerPixel != 3 && bytesPerPixel != 4) { SDL_SetError("STBIMG_CreateSurface(): passed bytesPerPixel = %d, only 3 (24bit RGB) and 4 (32bit RGBA) are allowed!", bytesPerPixel); return NULL; } if(width <= 0 || height <= 0) { SDL_SetError("STBIMG_CreateSurface(): width and height must be > 0!"); return NULL; } img.data = pixelData; img.w = width; img.h = height; img.format = bytesPerPixel; return STBIMG__CreateSurfaceImpl(img, freeWithSurface); } #if SDL_MAJOR_VERSION > 1 static SDL_Texture* STBIMG__SurfToTex(SDL_Renderer* renderer, SDL_Surface* surf) { SDL_Texture* ret = NULL; if(surf != NULL) { ret = SDL_CreateTextureFromSurface(renderer, surf); SDL_FreeSurface(surf); // not needed anymore, it's copied into tex } // if surf is NULL, whatever tried to create it should have called SDL_SetError(), // if SDL_CreateTextureFromSurface() returned NULL it should have set an error // so whenever this returns NULL, the user should be able to get a useful // error-message with SDL_GetError(). return ret; } SDL_STBIMG_DEF SDL_Texture* STBIMG_LoadTexture(SDL_Renderer* renderer, const char* file) { return STBIMG__SurfToTex(renderer, STBIMG_Load(file)); } SDL_STBIMG_DEF SDL_Texture* STBIMG_LoadTextureFromMemory(SDL_Renderer *renderer, const unsigned char* buffer, int length) { return STBIMG__SurfToTex(renderer, STBIMG_LoadFromMemory(buffer, length)); } SDL_STBIMG_DEF SDL_Texture* STBIMG_LoadTexture_RW(SDL_Renderer* renderer, SDL_RWops* src, int freesrc) { return STBIMG__SurfToTex(renderer, STBIMG_Load_RW(src, freesrc)); } SDL_STBIMG_DEF SDL_Texture* STBIMG_CreateTexture(SDL_Renderer* renderer, const unsigned char* pixelData, int width, int height, int bytesPerPixel) { SDL_Surface* surf = STBIMG_CreateSurface((unsigned char*)pixelData, width, height, bytesPerPixel, SDL_FALSE); return STBIMG__SurfToTex(renderer, surf); } SDL_STBIMG_DEF SDL_Texture* STBIMG_LoadTexture_RW_noSeek(SDL_Renderer* renderer, SDL_RWops* src, int freesrc) { return STBIMG__SurfToTex(renderer, STBIMG_Load_RW_noSeek(src, freesrc)); } #endif // SDL_MAJOR_VERSION > 1 #endif // SDL_STBIMAGE_IMPLEMENTATION ================================================ FILE: include/SDL_ttf.h ================================================ /* SDL_ttf: A companion library to SDL for working with TrueType (tm) fonts Copyright (C) 2001-2013 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. */ /* This library is a wrapper around the excellent FreeType 2.0 library, available at: http://www.freetype.org/ */ #ifndef _SDL_TTF_H #define _SDL_TTF_H // #include "SDL.h" #include "begin_code.h" /* Set up for C function definitions, even when using C++ */ #ifdef __cplusplus extern "C" { #endif /* Printable format: "%d.%d.%d", MAJOR, MINOR, PATCHLEVEL */ #define SDL_TTF_MAJOR_VERSION 2 #define SDL_TTF_MINOR_VERSION 0 #define SDL_TTF_PATCHLEVEL 12 /* This macro can be used to fill a version structure with the compile-time * version of the SDL_ttf library. */ #define SDL_TTF_VERSION(X) \ { \ (X)->major = SDL_TTF_MAJOR_VERSION; \ (X)->minor = SDL_TTF_MINOR_VERSION; \ (X)->patch = SDL_TTF_PATCHLEVEL; \ } /* Backwards compatibility */ #define TTF_MAJOR_VERSION SDL_TTF_MAJOR_VERSION #define TTF_MINOR_VERSION SDL_TTF_MINOR_VERSION #define TTF_PATCHLEVEL SDL_TTF_PATCHLEVEL #define TTF_VERSION(X) SDL_TTF_VERSION(X) /* This function gets the version of the dynamically linked SDL_ttf library. it should NOT be used to fill a version structure, instead you should use the SDL_TTF_VERSION() macro. */ extern DECLSPEC const SDL_version * SDLCALL TTF_Linked_Version(void); /* ZERO WIDTH NO-BREAKSPACE (Unicode byte order mark) */ #define UNICODE_BOM_NATIVE 0xFEFF #define UNICODE_BOM_SWAPPED 0xFFFE /* This function tells the library whether UNICODE text is generally byteswapped. A UNICODE BOM character in a string will override this setting for the remainder of that string. */ extern DECLSPEC void SDLCALL TTF_ByteSwappedUNICODE(int swapped); /* The internal structure containing font information */ typedef struct _TTF_Font TTF_Font; /* Initialize the TTF engine - returns 0 if successful, -1 on error */ extern DECLSPEC int SDLCALL TTF_Init(void); /* Open a font file and create a font of the specified point size. * Some .fon fonts will have several sizes embedded in the file, so the * point size becomes the index of choosing which size. If the value * is too high, the last indexed size will be the default. */ extern DECLSPEC TTF_Font * SDLCALL TTF_OpenFont(const char *file, int ptsize); extern DECLSPEC TTF_Font * SDLCALL TTF_OpenFontIndex(const char *file, int ptsize, long index); extern DECLSPEC TTF_Font * SDLCALL TTF_OpenFontRW(SDL_RWops *src, int freesrc, int ptsize); extern DECLSPEC TTF_Font * SDLCALL TTF_OpenFontIndexRW(SDL_RWops *src, int freesrc, int ptsize, long index); /* Set and retrieve the font style */ #define TTF_STYLE_NORMAL 0x00 #define TTF_STYLE_BOLD 0x01 #define TTF_STYLE_ITALIC 0x02 #define TTF_STYLE_UNDERLINE 0x04 #define TTF_STYLE_STRIKETHROUGH 0x08 extern DECLSPEC int SDLCALL TTF_GetFontStyle(const TTF_Font *font); extern DECLSPEC void SDLCALL TTF_SetFontStyle(TTF_Font *font, int style); extern DECLSPEC int SDLCALL TTF_GetFontOutline(const TTF_Font *font); extern DECLSPEC void SDLCALL TTF_SetFontOutline(TTF_Font *font, int outline); /* Set and retrieve FreeType hinter settings */ #define TTF_HINTING_NORMAL 0 #define TTF_HINTING_LIGHT 1 #define TTF_HINTING_MONO 2 #define TTF_HINTING_NONE 3 extern DECLSPEC int SDLCALL TTF_GetFontHinting(const TTF_Font *font); extern DECLSPEC void SDLCALL TTF_SetFontHinting(TTF_Font *font, int hinting); /* Get the total height of the font - usually equal to point size */ extern DECLSPEC int SDLCALL TTF_FontHeight(const TTF_Font *font); /* Get the offset from the baseline to the top of the font This is a positive value, relative to the baseline. */ extern DECLSPEC int SDLCALL TTF_FontAscent(const TTF_Font *font); /* Get the offset from the baseline to the bottom of the font This is a negative value, relative to the baseline. */ extern DECLSPEC int SDLCALL TTF_FontDescent(const TTF_Font *font); /* Get the recommended spacing between lines of text for this font */ extern DECLSPEC int SDLCALL TTF_FontLineSkip(const TTF_Font *font); /* Get/Set whether or not kerning is allowed for this font */ extern DECLSPEC int SDLCALL TTF_GetFontKerning(const TTF_Font *font); extern DECLSPEC void SDLCALL TTF_SetFontKerning(TTF_Font *font, int allowed); /* Get the number of faces of the font */ extern DECLSPEC long SDLCALL TTF_FontFaces(const TTF_Font *font); /* Get the font face attributes, if any */ extern DECLSPEC int SDLCALL TTF_FontFaceIsFixedWidth(const TTF_Font *font); extern DECLSPEC char * SDLCALL TTF_FontFaceFamilyName(const TTF_Font *font); extern DECLSPEC char * SDLCALL TTF_FontFaceStyleName(const TTF_Font *font); /* Check wether a glyph is provided by the font or not */ extern DECLSPEC int SDLCALL TTF_GlyphIsProvided(const TTF_Font *font, Uint16 ch); /* Get the metrics (dimensions) of a glyph To understand what these metrics mean, here is a useful link: http://freetype.sourceforge.net/freetype2/docs/tutorial/step2.html */ extern DECLSPEC int SDLCALL TTF_GlyphMetrics(TTF_Font *font, Uint16 ch, int *minx, int *maxx, int *miny, int *maxy, int *advance); /* Get the dimensions of a rendered string of text */ extern DECLSPEC int SDLCALL TTF_SizeText(TTF_Font *font, const char *text, int *w, int *h); extern DECLSPEC int SDLCALL TTF_SizeUTF8(TTF_Font *font, const char *text, int *w, int *h); extern DECLSPEC int SDLCALL TTF_SizeUNICODE(TTF_Font *font, const Uint16 *text, int *w, int *h); /* Create an 8-bit palettized surface and render the given text at fast quality with the given font and color. The 0 pixel is the colorkey, giving a transparent background, and the 1 pixel is set to the text color. This function returns the new surface, or NULL if there was an error. */ extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderText_Solid(TTF_Font *font, const char *text, SDL_Color fg); extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderUTF8_Solid(TTF_Font *font, const char *text, SDL_Color fg); extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderUNICODE_Solid(TTF_Font *font, const Uint16 *text, SDL_Color fg); /* Create an 8-bit palettized surface and render the given glyph at fast quality with the given font and color. The 0 pixel is the colorkey, giving a transparent background, and the 1 pixel is set to the text color. The glyph is rendered without any padding or centering in the X direction, and aligned normally in the Y direction. This function returns the new surface, or NULL if there was an error. */ extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderGlyph_Solid(TTF_Font *font, Uint16 ch, SDL_Color fg); /* Create an 8-bit palettized surface and render the given text at high quality with the given font and colors. The 0 pixel is background, while other pixels have varying degrees of the foreground color. This function returns the new surface, or NULL if there was an error. */ extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderText_Shaded(TTF_Font *font, const char *text, SDL_Color fg, SDL_Color bg); extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderUTF8_Shaded(TTF_Font *font, const char *text, SDL_Color fg, SDL_Color bg); extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderUNICODE_Shaded(TTF_Font *font, const Uint16 *text, SDL_Color fg, SDL_Color bg); /* Create an 8-bit palettized surface and render the given glyph at high quality with the given font and colors. The 0 pixel is background, while other pixels have varying degrees of the foreground color. The glyph is rendered without any padding or centering in the X direction, and aligned normally in the Y direction. This function returns the new surface, or NULL if there was an error. */ extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderGlyph_Shaded(TTF_Font *font, Uint16 ch, SDL_Color fg, SDL_Color bg); /* Create a 32-bit ARGB surface and render the given text at high quality, using alpha blending to dither the font with the given color. This function returns the new surface, or NULL if there was an error. */ extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderText_Blended(TTF_Font *font, const char *text, SDL_Color fg); extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderUTF8_Blended(TTF_Font *font, const char *text, SDL_Color fg); extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderUNICODE_Blended(TTF_Font *font, const Uint16 *text, SDL_Color fg); /* Create a 32-bit ARGB surface and render the given text at high quality, using alpha blending to dither the font with the given color. Text is wrapped to multiple lines on line endings and on word boundaries if it extends beyond wrapLength in pixels. This function returns the new surface, or NULL if there was an error. */ extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderText_Blended_Wrapped(TTF_Font *font, const char *text, SDL_Color fg, Uint32 wrapLength); extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderUTF8_Blended_Wrapped(TTF_Font *font, const char *text, SDL_Color fg, Uint32 wrapLength); extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderUNICODE_Blended_Wrapped(TTF_Font *font, const Uint16 *text, SDL_Color fg, Uint32 wrapLength); /* Create a 32-bit ARGB surface and render the given glyph at high quality, using alpha blending to dither the font with the given color. The glyph is rendered without any padding or centering in the X direction, and aligned normally in the Y direction. This function returns the new surface, or NULL if there was an error. */ extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderGlyph_Blended(TTF_Font *font, Uint16 ch, SDL_Color fg); /* For compatibility with previous versions, here are the old functions */ #define TTF_RenderText(font, text, fg, bg) \ TTF_RenderText_Shaded(font, text, fg, bg) #define TTF_RenderUTF8(font, text, fg, bg) \ TTF_RenderUTF8_Shaded(font, text, fg, bg) #define TTF_RenderUNICODE(font, text, fg, bg) \ TTF_RenderUNICODE_Shaded(font, text, fg, bg) /* Close an opened font file */ extern DECLSPEC void SDLCALL TTF_CloseFont(TTF_Font *font); /* De-initialize the TTF engine */ extern DECLSPEC void SDLCALL TTF_Quit(void); /* Check if the TTF engine is initialized */ extern DECLSPEC int SDLCALL TTF_WasInit(void); /* Get the kerning size of two glyphs */ extern DECLSPEC int TTF_GetFontKerningSize(TTF_Font *font, int prev_index, int index); /* We'll use SDL for reporting errors */ #define TTF_SetError SDL_SetError #define TTF_GetError SDL_GetError /* Ends C function definitions when using C++ */ #ifdef __cplusplus } #endif #include "close_code.h" #endif /* _SDL_TTF_H */ ================================================ FILE: include/bbccon.h ================================================ /******************************************************************\ * BBC BASIC Minimal Console Version * * Copyright (c) R. T. Russell, 2000-2025 * * * * bbccon.h constant definitions * * Version v0.50, 22-Sep-2025 * \******************************************************************/ // System constants : #define YEAR "2025" // Copyright year #define VERSION "v0.50" // Version string #ifdef PICO #define ACCSLEN 1024 // Must be the same in bbcsdl.h and bbccon.h #define DEFAULT_RAM PAGE_OFFSET+0x20000 // Initial amount of RAM to allocate #else #define ACCSLEN 65536 // Must be the same in bbcsdl.h and bbccon.h #define DEFAULT_RAM PAGE_OFFSET+0x2000000 // Initial amount of RAM to allocate #endif #if PICO_SOUND == 3 #define PAGE_OFFSET ACCSLEN + 0x1C00 // Offset of PAGE from memory base #else #define PAGE_OFFSET ACCSLEN + 0x1300 // Offset of PAGE from memory base #endif #define MINIMUM_RAM PAGE_OFFSET+0x20000 // Minimum amount of RAM to allocate #if UINTPTR_MAX == UINT32_MAX #define MAXIMUM_RAM 0x10000000 // Maximum amount of RAM to allocate #else #define MAXIMUM_RAM 0x100000000LL // Maximum amount of RAM to allocate #endif #if (PAGE_OFFSET < 0x10000) && (defined(__x86_64__) || defined(__aarch64__)) #error "PAGE must be at least 64K above memory base on 64-bit platforms" #endif #define MAX_PORTS 4 // Maximum number of port channels #define MAX_FILES 8 // Maximum number of file channels #define MAX_LINE_LEN 2304 // At least 252*RECTANGLE + 4 #define AUDIOLEN 441 * 4 // Length of audio block in bytes #define SOUNDQE 4 // Number of bytes per sound entry #define SOUNDQL 5*SOUNDQE // Number of bytes per channel #define MAX_TEMPO 10 // Maximum (slowest) *TEMPO setting // Bit names: #define BIT0 0x01 #define BIT1 0x02 #define BIT2 0x04 #define BIT3 0x08 #define BIT4 0x10 #define BIT5 0x20 #define BIT6 0x40 #define BIT7 0x80 // Bits in [vflags]: #define IOFLAG BIT0 // Insert/overtype #define EGAFLG BIT1 // EGA-compatible modes (*EGA [ON]) #define CGAFLG BIT2 // CGA-compatible modes (*EGA OFF) #define PTFLAG BIT3 // VDU 2 active #define HRGFLG BIT4 // VDU 5 active #define VDUDIS BIT5 // VDU 21 active #define UFONT BIT6 // User font selected #define UTF8 BIT7 // UTF-8 mode selected // Bits in _flags byte: #define ESCFLG 0x80 #define ESCDIS 0x40 #define ALERT 0x20 #define FLASH 0x10 #define PHASE 0x08 #define PAUSE 0x04 #define SSTEP 0x02 #define KILL 0x01 // BASIC tokens: #define TOK_ELSE -117 #define TOK_THEN -116 #define TOK_LINENO -115 #define TOK_FN -92 #define TOK_WHILE -57 #define TOK_CASE -56 #define TOK_WHEN -55 #define TOK_ENDCASE -53 #define TOK_OTHERWISE -52 #define TOK_ENDIF -51 #define TOK_ENDWHILE -50 #define TOK_CALL -42 #define TOK_DATA -36 #define TOK_DEF -35 #define TOK_FOR -29 #define TOK_GOSUB -28 #define TOK_GOTO -27 #define TOK_IF -25 #define TOK_LOCAL -22 #define TOK_NEXT -19 #define TOK_ON -18 #define TOK_PROC -14 #define TOK_READ -13 #define TOK_REM -12 #define TOK_REPEAT -11 #define TOK_RUN -7 #define TOK_UNTIL -3 #define TOK_EXIT 16 #define TOKLO -113 // first token with left and right forms #define TOKHI -109 // last token with left and right forms #define OFFSIT 64 // offset from 'right' to 'left' form // Special 32-bit 'pointer' type for BASIC's heap: typedef unsigned int heapptr ; // Structures: typedef struct tagPARM { size_t i[16] ; double f[8] ; } PARM, *LPPARM ; typedef struct tagFCB { unsigned char p ; // pointer unsigned char o ; // offset (0-256) unsigned char w ; // written (0-256) signed char f ; // bit0: offset<>0, bit7: written<>0 } FCB, *LPFCB ; typedef struct tagRND { unsigned int l ; unsigned char h ; } RND, *LPRND ; extern unsigned char colmsk ; // Mask for maximum number of colours extern unsigned char vflags ; // VDU drivers flags byte extern signed char scroln ; // Scroll counter in paged mode extern char modeno ; // MODE number extern unsigned char cmcflg ; extern char sclflg ; extern char reflag, sysflg ; extern unsigned char bbcfont[] ; extern unsigned short ttxtfont[] ; extern char **keystr ; // Pointers to user *KEY strings extern unsigned char flags ; // BASIC's Boolean flags byte extern unsigned char tempo ; extern heapptr timtrp, clotrp, siztrp, systrp, moutrp ; extern heapptr curlin ; // Pointer to current line extern heapptr breakpt ; // Pointer to breakpoint start extern heapptr breakhi ; // Pointer to breakpoint end // extern int datend[] ; // End of initialised variables extern int stavar[] ; // Static integer variables extern FILE *exchan ; // EXEC channel extern FILE *spchan ; // SPOOL channel extern char *accs ; // String accumulator extern char *buff ; // Temporary string buffer extern char* path ; // File path buffer extern signed char *envels ; // Envelope storage (16 x 16) extern short* waves ; extern int hwo ; extern void* filbuf[] ; extern FCB fcbtab[MAX_FILES] ; // Table of FCBs extern unsigned char *keyptr ; // Pointer to *KEY string extern char* usrchr ; // User-defined characters (indirect) extern char* keybdq ; // Keyboard queue (indirect) extern int* eventq ; // Event queue (indirect) extern unsigned char vduq[] ; // VDU queue (different from asm version) extern unsigned char queue ; // VDU queue status extern unsigned char kbdqr ; // Keyboard queue read pointer extern unsigned char kbdqw ; // Keyboard queue write pointer extern unsigned char sndqr[4] ; // Sound queue read pointers extern unsigned char sndqw[4] ; // Sound queue write pointers extern signed char eenvel[4] ; // Sound envelope numbers extern unsigned char escale[4] ;// Envelope scalers extern unsigned char epsect[4] ;// Envelope pitch section extern unsigned char easect[4] ;// Envelope amplitude section extern unsigned char epitch[4] ;// Envelope pitch (frequency) extern unsigned char elevel[4] ;// Envelope level (amplitude) extern unsigned char ecount[4] ;// Envelope count extern unsigned char soundq[4*5*SOUNDQE] ; extern unsigned int sacc[4] ; // Sound DDS accumulators extern unsigned char voices[4] ;// Voice (waveform) for each channel extern short smix[8] ; // Stereo mix for each channel extern unsigned char evtqr ; // Event queue read pointer extern unsigned char evtqw ; // Event queue write pointer extern unsigned char flags ; // Interpreter flags byte extern int timoff ; // TIME offset extern unsigned int lastick ; // To test for TIME wrapping extern RND prand ; // Pseudo-random number extern int iMsg ; // Event message number extern int wParam ; // Event wParam value extern int lParam ; // Event lParam value extern unsigned char tempo ; // SOUND tempo extern unsigned char farray ; // @hfile%() number of dimensions extern unsigned int fasize ; // @hfile%() number of elements extern unsigned char keyexp ; // *KEY expansion counter extern unsigned char optval ; // I/O redirection extern unsigned char liston ; // *FLOAT/*HEX/*LOWERCASE/OPT extern unsigned int vcount ; // Character count since newline // Declared in bbccon.c: extern void *userRAM ; // Base of user memory extern void *progRAM ; // Default LOMEM extern void *userTOP ; // Default HIMEM extern const char szVersion[] ; // Initial announcement extern const char szNotice[] ; // Copyright string extern int bChanged ; // Display refresh required extern unsigned int platform ; // OS platform extern unsigned int palette[256] ; ================================================ FILE: include/bbcsdl.h ================================================ /******************************************************************\ * BBC BASIC for SDL 2.0 (64-bit) * * Copyright (c) R. T. Russell, 2000-2022 * * * * BBCSDL.H constant definitions * * Version 1.29a 03-Apr-2022 * \******************************************************************/ // System constants : #define ACCSLEN 65536 // Must be the same in BBC.h #define PAGE_OFFSET ACCSLEN + 0x21C00 // Offset of PAGE from memory base #define XSCREEN 2048 // Width of screen output texture #define YSCREEN 2048 // Height of screen output texture #define MAX_PORTS 4 // Maximum number of port channels #define MAX_FILES 8 // Maximum number of file channels #define MAX_LINE_LEN 2304 // At least 252*RECTANGLE + 4 #define MARGINL 1000 // Default left margin (mm * 100) #define MARGINR 1000 // Default right margin (mm * 100) #define MARGINT 1000 // Default top margin (mm * 100) #define MARGINB 1000 // Default bottom margin (mm * 100) #define SCREEN_WIDTH 640 // Initial width #define SCREEN_HEIGHT 500 // Initial height #define AUDIOLEN 441 * 4 // Length of audio block in bytes #define SOUNDQE 4 // Number of bytes per sound entry #define SOUNDQL 5*SOUNDQE // Number of bytes per channel #define MAX_EVENTS 512 // Maximum SDL events to queue #define MAX_TEMPO 10 // Maximum (slowest) *TEMPO setting // User-defined message IDs: #define WM_APP 0x8000 #define WMU_REALLOC WM_APP+4 // Change size of memory allocation #define WMU_WAVEOPEN WM_APP+5 // Open the audio output device #define WMU_WAVECLOSE WM_APP+6 // Close the audio output device #define WMU_TIMER WM_APP+26 // Change the timer periodicity // Custom user-event IDs: #define EVT_VDU 0x2000 // Send a VDU command #define EVT_COPYKEY 0x2001 // Handle 'copy key' actions #define EVT_TINT 0x2002 // Get RGB pixel value #define EVT_DISPLAY 0x2003 // *DISPLAY command #define EVT_PIXELS 0x2004 // Read back pixels #define EVT_CARET 0x2005 // Get text caret coordinates #define EVT_FONT 0x2006 // Open a font #define EVT_CHAR 0x2007 // Get character at text x,y #define EVT_WIDTH 0x2008 // Get width of a string #define EVT_REFLAG 0x2009 // Update refresh flag #define EVT_SYSCALL 0x200A // Call in GUI thread context #define EVT_QUIT 0x200B // Terminate with exit code #define EVT_MOUSE 0x200C // Get mouse position/buttons #define EVT_MOUSETO 0x200D // Move mouse pointer #define EVT_OSK 0x200E // En/disable On Screen Keyboard #define EVT_OSWORD 0x200F // OSWORD call #define EVT_TIMER 0x2010 // Set new timer period #define EVT_FSSYNC 0x2011 // Sync filesystem (Emscripten) #define EVT_RUNJS 0x2012 // Run Javascript (Emscripten) // Bit names: #define BIT0 0x01 #define BIT1 0x02 #define BIT2 0x04 #define BIT3 0x08 #define BIT4 0x10 #define BIT5 0x20 #define BIT6 0x40 #define BIT7 0x80 // Bits in [vflags]: #define IOFLAG BIT0 // Insert/overtype #define EGAFLG BIT1 // EGA-compatible modes (*EGA [ON]) #define CGAFLG BIT2 // CGA-compatible modes (*EGA OFF) #define PTFLAG BIT3 // VDU 2 active #define HRGFLG BIT4 // VDU 5 active #define VDUDIS BIT5 // VDU 21 active #define UFONT BIT6 // User font selected #define UTF8 BIT7 // UTF-8 mode selected // Bits in _flags byte: #define ESCFLG 0x80 #define ESCDIS 0x40 #define ALERT 0x20 #define FLASH 0x10 #define PHASE 0x08 #define PAUSE 0x04 #define SSTEP 0x02 #define KILL 0x01 // BASIC tokens: #define TOK_ELSE -117 #define TOK_THEN -116 #define TOK_LINENO -115 #define TOK_FN -92 #define TOK_WHILE -57 #define TOK_CASE -56 #define TOK_WHEN -55 #define TOK_ENDCASE -53 #define TOK_OTHERWISE -52 #define TOK_ENDIF -51 #define TOK_ENDWHILE -50 #define TOK_CALL -42 #define TOK_DATA -36 #define TOK_DEF -35 #define TOK_FOR -29 #define TOK_GOSUB -28 #define TOK_GOTO -27 #define TOK_IF -25 #define TOK_LOCAL -22 #define TOK_NEXT -19 #define TOK_ON -18 #define TOK_PROC -14 #define TOK_READ -13 #define TOK_REM -12 #define TOK_REPEAT -11 #define TOK_RUN -7 #define TOK_UNTIL -3 #define TOK_EXIT 16 #define TOKLO -113 // first token with left and right forms #define TOKHI -109 // last token with left and right forms #define OFFSIT 64 // offset from 'right' to 'left' form // Special 32-bit 'pointer' type for BASIC's heap: typedef unsigned int heapptr ; // Structures and unions: typedef struct tagPARM { size_t i[16] ; double f[8] ; } PARM, *LPPARM ; typedef struct tagFCB { unsigned char p ; // pointer unsigned char o ; // offset (0-256) unsigned char w ; // written (0-256) signed char f ; // bit0: offset<>0, bit7: written<>0 } FCB, *LPFCB ; typedef struct tagRND { unsigned int l ; unsigned char h ; } RND, *LPRND ; // Variables declared in bbcsdl.c: extern SDL_Renderer *memhdc ; extern SDL_Window *hwndProg ; extern SDL_Rect ClipRect ; extern int bChanged ; extern unsigned int platform ; // SDL version and OS platform extern unsigned int palette[256] ; extern SDL_Texture *TTFcache[65536] ; extern short *chrmap ; extern unsigned int zoom ; // VDU variables declared in bbcdata.nas or bbcdat.s: extern int origx ; // Graphics x-origin (BASIC units) extern int origy ; // Graphics y-origin (BASIC units) extern int lastx ; // Current x-coordinate (pixels) extern int lasty ; // Current y-coordinate (pixels) extern int prevx ; // Previous x-coordinate (pixels) extern int prevy ; // Previous y-coordinate (pixels) extern int textwl ; // Text window left (pixels) extern int textwr ; // Text window right (pixels) extern int textwt ; // Text window top (pixels) extern int textwb ; // Text window bottom (pixels) extern int pixelx ; // Width of a graphics 'dot' extern int pixely ; // Height of a graphics 'dot' extern int textx ; // Text caret x-position (pixels) extern int texty ; // Text caret y-position (pixels) extern TTF_Font *hfont ;// Handle of current font extern SDL_Rect *hrect ;// Pointer to clipping rect extern unsigned short forgnd ; // Graphics foreground colour/action extern unsigned short bakgnd ; // Graphics background colour/action extern unsigned char cursa ; // Start (top) line of caret extern unsigned char cursb ; // Finish (bottom) line of caret extern unsigned char txtfor ; // Text foreground colour index extern unsigned char txtbak ; // Text background colour index extern signed char modeno ; // Mode number (can be -1) extern unsigned char colmsk ; // Mask for maximum number of colours extern unsigned char vflags ; // VDU drivers flags byte extern signed char scroln ; // Scroll counter in paged mode extern int sizex ; // Total width of client area (pixels) extern int sizey ; // Total height of client area (pixels) extern int charx ; // Average character width (pixels) extern int chary ; // Average character height (pixels) extern int prchx ; // Average character width (printer) extern int prchy ; // Average character height (printer) extern int prntx ; // Horizontal printing position extern int prnty ; // Vertical printing position extern unsigned char cursx ; // Cursor (caret) width extern unsigned char lthick ; // Line thickness extern unsigned char cmcflg ; extern signed char tweak ; // Character spacing adjustment // Other variables declared in bbcdata.nas or bbcdat.s: extern char sclflg ; extern unsigned char bbcfont[] ; extern unsigned short ttxtfont[] ; extern char **keystr ; // Pointers to user *KEY strings extern unsigned char flags ; // BASIC's Boolean flags byte extern SDL_AudioDeviceID hwo ; extern char reflag, sysflg ; extern unsigned char tempo ; extern int panx, pany ; extern int offsetx, offsety ; extern heapptr timtrp, clotrp, siztrp, systrp, moutrp ; extern heapptr curlin ; // Pointer to current line extern heapptr breakpt ; // Pointer to breakpoint start extern heapptr breakhi ; // Pointer to breakpoint end // extern int datend[] ; // End of initialised variables extern int stavar[] ; // Static integer variables extern SDL_RWops *exchan ; // EXEC channel extern SDL_RWops *spchan ; // SPOOL channel extern char* accs ; // String accumulator extern char* buff ; // Temporary string buffer extern char* path ; // File path buffer extern signed char *envels ; // Envelope storage (16 x 16) extern short* waves ; extern void* filbuf[] ; extern FCB fcbtab[MAX_FILES] ; // Table of FCBs extern unsigned char *keyptr ; // Pointer to *KEY string extern char* usrchr ; // User-defined characters (indirect) extern char* keybdq ; // Keyboard queue (indirect) extern int* eventq ; // Event queue (indirect) extern unsigned char vduq[] ; // VDU queue (different from asm version) extern unsigned char queue ; // VDU queue status extern unsigned char kbdqr ; // Keyboard queue read pointer extern unsigned char kbdqw ; // Keyboard queue write pointer extern unsigned char sndqr[4] ; // Sound queue read pointers extern unsigned char sndqw[4] ; // Sound queue write pointers extern signed char eenvel[4] ; // Sound envelope numbers extern unsigned char escale[4] ;// Envelope scalers extern unsigned char epsect[4] ;// Envelope pitch section extern unsigned char easect[4] ;// Envelope amplitude section extern unsigned char epitch[4] ;// Envelope pitch (frequency) extern unsigned char elevel[4] ;// Envelope level (amplitude) extern unsigned char ecount[4] ;// Envelope count extern unsigned char soundq[4*5*SOUNDQE] ; extern unsigned int sacc[4] ; // Sound DDS accumulators extern unsigned char voices[4] ;// Voice (waveform) for each channel extern short smix[8] ; // Stereo mix for each channel extern unsigned char evtqr ; // Event queue read pointer extern unsigned char evtqw ; // Event queue write pointer extern unsigned char flags ; // Interpreter flags byte extern int timoff ; // TIME offset extern int lastick ; // To test for TIME wrapping extern RND prand ; // Pseudo-random number extern int iMsg ; // Event message number extern int wParam ; // Event wParam value extern int lParam ; // Event lParam value extern unsigned char tempo ; // SOUND tempo extern unsigned char farray ; // @hfile%() number of dimensions extern unsigned int fasize ; // @hfile%() number of elements extern unsigned char keyexp ; // *KEY expansion counter extern unsigned char optval ; // I/O redirection extern unsigned char liston ; // *FLOAT/*HEX/*LOWERCASE/OPT extern unsigned int vcount ; // Character count since newline // Declared in bbcsdl.c: extern size_t iResult ; // Result from user event extern int nUserEv ; // Number of pending user events extern int OSKtime ; // On-screen keyboard timeout extern SDL_sem *Sema4 ; // Semaphore for user event wait extern SDL_mutex *Mutex ; // Mutex to protect event queue extern void *userRAM ; // Base of user memory extern void *progRAM ; // Default LOMEM extern void *userTOP ; // Default HIMEM extern const char szVersion[] ; // Initial announcement extern const char szNotice[] ; // Copyright string extern int bChanged ; // Display refresh required extern SDL_Joystick *Joystick ; // Handle to joystick extern SDL_TimerID UserTimerID ; extern int bBackground ; // BBC BASIC in the background extern int useGPA ; // Use SDL_GL_GetProcAddress ================================================ FILE: include/begin_code.h ================================================ /* Simple DirectMedia Layer Copyright (C) 1997-2014 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. */ /** * \file begin_code.h * * This file sets things up for C dynamic library function definitions, * static inlined functions, and structures aligned at 4-byte alignment. * If you don't like ugly C preprocessor code, don't look at this file. :) */ /* This shouldn't be nested -- included it around code only. */ #ifdef _begin_code_h #error Nested inclusion of begin_code.h #endif #define _begin_code_h #ifndef SDL_DEPRECATED # if (__GNUC__ >= 4) /* technically, this arrived in gcc 3.1, but oh well. */ # define SDL_DEPRECATED __attribute__((deprecated)) # else # define SDL_DEPRECATED # endif #endif /* Some compilers use a special export keyword */ #ifndef DECLSPEC # if defined(__WIN32__) # ifdef __BORLANDC__ # ifdef BUILD_SDL # define DECLSPEC # else # define DECLSPEC __declspec(dllimport) # endif # else # define DECLSPEC __declspec(dllexport) # endif # else # if defined(__GNUC__) && __GNUC__ >= 4 # define DECLSPEC __attribute__ ((visibility("default"))) # elif defined(__GNUC__) && __GNUC__ >= 2 # define DECLSPEC __declspec(dllexport) # else # define DECLSPEC # endif # endif #endif /* By default SDL uses the C calling convention */ #ifndef SDLCALL #if defined(__WIN32__) && !defined(__GNUC__) #define SDLCALL __cdecl #else #define SDLCALL #endif #endif /* SDLCALL */ /* Removed DECLSPEC on Symbian OS because SDL cannot be a DLL in EPOC */ #ifdef __SYMBIAN32__ #undef DECLSPEC #define DECLSPEC #endif /* __SYMBIAN32__ */ /* Force structure packing at 4 byte alignment. This is necessary if the header is included in code which has structure packing set to an alternate value, say for loading structures from disk. The packing is reset to the previous value in close_code.h */ #if defined(_MSC_VER) || defined(__MWERKS__) || defined(__BORLANDC__) #ifdef _MSC_VER #pragma warning(disable: 4103) #endif #ifdef __BORLANDC__ #pragma nopackwarning #endif #ifdef _M_X64 /* Use 8-byte alignment on 64-bit architectures, so pointers are aligned */ #pragma pack(push,8) #else #pragma pack(push,4) #endif #endif /* Compiler needs structure packing set */ #ifndef SDL_INLINE #if defined(__GNUC__) #define SDL_INLINE __inline__ #elif defined(_MSC_VER) || defined(__BORLANDC__) || \ defined(__DMC__) || defined(__SC__) || \ defined(__WATCOMC__) || defined(__LCC__) || \ defined(__DECC) #define SDL_INLINE __inline #ifndef __inline__ #define __inline__ __inline #endif #else #define SDL_INLINE inline #ifndef __inline__ #define __inline__ inline #endif #endif #endif /* SDL_INLINE not defined */ #ifndef SDL_FORCE_INLINE #if defined(_MSC_VER) #define SDL_FORCE_INLINE __forceinline #elif ( (defined(__GNUC__) && (__GNUC__ >= 4)) || defined(__clang__) ) #define SDL_FORCE_INLINE __attribute__((always_inline)) static __inline__ #else #define SDL_FORCE_INLINE static SDL_INLINE #endif #endif /* SDL_FORCE_INLINE not defined */ /* Apparently this is needed by several Windows compilers */ #if !defined(__MACH__) #ifndef NULL #ifdef __cplusplus #define NULL 0 #else #define NULL ((void *)0) #endif #endif /* NULL */ #endif /* ! Mac OS X - breaks precompiled headers */ ================================================ FILE: include/close_code.h ================================================ /* Simple DirectMedia Layer Copyright (C) 1997-2014 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. */ /** * \file close_code.h * * This file reverses the effects of begin_code.h and should be included * after you finish any function and structure declarations in your headers */ #undef _begin_code_h /* Reset structure packing at previous byte alignment */ #if defined(_MSC_VER) || defined(__MWERKS__) || defined(__WATCOMC__) || defined(__BORLANDC__) #ifdef __BORLANDC__ #pragma nopackwarning #endif #pragma pack(pop) #endif /* Compiler needs structure packing set */ ================================================ FILE: include/dr_mp3.h ================================================ // MP3 audio decoder. Public domain. See "unlicense" statement at the end of this file. // dr_mp3 - v0.4.0 - 2018-12-16 // // David Reid - mackron@gmail.com // // Based off minimp3 (https://github.com/lieff/minimp3) which is where the real work was done. See the bottom of this file for // differences between minimp3 and dr_mp3. // USAGE // ===== // dr_mp3 is a single-file library. To use it, do something like the following in one .c file. // #define DR_MP3_IMPLEMENTATION // #include "dr_mp3.h" // // You can then #include this file in other parts of the program as you would with any other header file. To decode audio data, // do something like the following: // // drmp3 mp3; // if (!drmp3_init_file(&mp3, "MySong.mp3", NULL)) { // // Failed to open file // } // // ... // // drmp3_uint64 framesRead = drmp3_read_pcm_frames_f32(pMP3, framesToRead, pFrames); // // The drmp3 object is transparent so you can get access to the channel count and sample rate like so: // // drmp3_uint32 channels = mp3.channels; // drmp3_uint32 sampleRate = mp3.sampleRate; // // The third parameter of drmp3_init_file() in the example above allows you to control the output channel count and sample rate. It // is a pointer to a drmp3_config object. Setting any of the variables of this object to 0 will cause dr_mp3 to use defaults. // // The example above initializes a decoder from a file, but you can also initialize it from a block of memory and read and seek // callbacks with drmp3_init_memory() and drmp3_init() respectively. // // You do not need to do any annoying memory management when reading PCM frames - this is all managed internally. You can request // any number of PCM frames in each call to drmp3_read_pcm_frames_f32() and it will return as many PCM frames as it can, up to the // requested amount. // // You can also decode an entire file in one go with drmp3_open_and_read_f32(), drmp3_open_memory_and_read_f32() and // drmp3_open_file_and_read_f32(). // // // OPTIONS // ======= // #define these options before including this file. // // #define DR_MP3_NO_STDIO // Disable drmp3_init_file(), etc. // // #define DR_MP3_NO_SIMD // Disable SIMD optimizations. #ifndef dr_mp3_h #define dr_mp3_h #ifdef __cplusplus extern "C" { #endif #include #if defined(_MSC_VER) && _MSC_VER < 1600 typedef signed char drmp3_int8; typedef unsigned char drmp3_uint8; typedef signed short drmp3_int16; typedef unsigned short drmp3_uint16; typedef signed int drmp3_int32; typedef unsigned int drmp3_uint32; typedef signed __int64 drmp3_int64; typedef unsigned __int64 drmp3_uint64; #else #include typedef int8_t drmp3_int8; typedef uint8_t drmp3_uint8; typedef int16_t drmp3_int16; typedef uint16_t drmp3_uint16; typedef int32_t drmp3_int32; typedef uint32_t drmp3_uint32; typedef int64_t drmp3_int64; typedef uint64_t drmp3_uint64; #endif typedef drmp3_uint8 drmp3_bool8; typedef drmp3_uint32 drmp3_bool32; #define DRMP3_TRUE 1 #define DRMP3_FALSE 0 #define DRMP3_MAX_PCM_FRAMES_PER_MP3_FRAME 1152 #define DRMP3_MAX_SAMPLES_PER_FRAME (DRMP3_MAX_PCM_FRAMES_PER_MP3_FRAME*2) // Low Level Push API // ================== typedef struct { int frame_bytes, channels, hz, layer, bitrate_kbps; } drmp3dec_frame_info; typedef struct { float mdct_overlap[2][9*32], qmf_state[15*2*32]; int reserv, free_format_bytes; unsigned char header[4], reserv_buf[511]; } drmp3dec; // Initializes a low level decoder. void drmp3dec_init(drmp3dec *dec); // Reads a frame from a low level decoder. int drmp3dec_decode_frame(drmp3dec *dec, const unsigned char *mp3, int mp3_bytes, void *pcm, drmp3dec_frame_info *info); // Helper for converting between f32 and s16. SDL_STBIMG_DEF void drmp3dec_f32_to_s16(const float *in, drmp3_int16 *out, int num_samples); // Main API (Pull API) // =================== typedef struct drmp3_src drmp3_src; typedef drmp3_uint64 (* drmp3_src_read_proc)(drmp3_src* pSRC, drmp3_uint64 frameCount, void* pFramesOut, void* pUserData); // Returns the number of frames that were read. typedef enum { drmp3_src_algorithm_none, drmp3_src_algorithm_linear } drmp3_src_algorithm; #define DRMP3_SRC_CACHE_SIZE_IN_FRAMES 512 typedef struct { drmp3_src* pSRC; float pCachedFrames[2 * DRMP3_SRC_CACHE_SIZE_IN_FRAMES]; drmp3_uint32 cachedFrameCount; drmp3_uint32 iNextFrame; } drmp3_src_cache; typedef struct { drmp3_uint32 sampleRateIn; drmp3_uint32 sampleRateOut; drmp3_uint32 channels; drmp3_src_algorithm algorithm; drmp3_uint32 cacheSizeInFrames; // The number of frames to read from the client at a time. } drmp3_src_config; struct drmp3_src { drmp3_src_config config; drmp3_src_read_proc onRead; void* pUserData; float bin[256]; drmp3_src_cache cache; // <-- For simplifying and optimizing client -> memory reading. union { struct { double alpha; drmp3_bool32 isPrevFramesLoaded : 1; drmp3_bool32 isNextFramesLoaded : 1; } linear; } algo; }; typedef enum { drmp3_seek_origin_start, drmp3_seek_origin_current } drmp3_seek_origin; typedef struct { drmp3_uint64 seekPosInBytes; // Points to the first byte of an MP3 frame. drmp3_uint64 pcmFrameIndex; // The index of the PCM frame this seek point targets. drmp3_uint16 mp3FramesToDiscard; // The number of whole MP3 frames to be discarded before pcmFramesToDiscard. drmp3_uint16 pcmFramesToDiscard; // The number of leading samples to read and discard. These are discarded after mp3FramesToDiscard. } drmp3_seek_point; // Callback for when data is read. Return value is the number of bytes actually read. // // pUserData [in] The user data that was passed to drmp3_init(), drmp3_open() and family. // pBufferOut [out] The output buffer. // bytesToRead [in] The number of bytes to read. // // Returns the number of bytes actually read. // // A return value of less than bytesToRead indicates the end of the stream. Do _not_ return from this callback until // either the entire bytesToRead is filled or you have reached the end of the stream. typedef size_t (* drmp3_read_proc)(void* pUserData, void* pBufferOut, size_t bytesToRead); // Callback for when data needs to be seeked. // // pUserData [in] The user data that was passed to drmp3_init(), drmp3_open() and family. // offset [in] The number of bytes to move, relative to the origin. Will never be negative. // origin [in] The origin of the seek - the current position or the start of the stream. // // Returns whether or not the seek was successful. // // Whether or not it is relative to the beginning or current position is determined by the "origin" parameter which // will be either drmp3_seek_origin_start or drmp3_seek_origin_current. typedef drmp3_bool32 (* drmp3_seek_proc)(void* pUserData, int offset, drmp3_seek_origin origin); typedef struct { drmp3_uint32 outputChannels; drmp3_uint32 outputSampleRate; } drmp3_config; typedef struct { drmp3dec decoder; drmp3dec_frame_info frameInfo; drmp3_uint32 channels; drmp3_uint32 sampleRate; drmp3_read_proc onRead; drmp3_seek_proc onSeek; void* pUserData; drmp3_uint32 mp3FrameChannels; // The number of channels in the currently loaded MP3 frame. Internal use only. drmp3_uint32 mp3FrameSampleRate; // The sample rate of the currently loaded MP3 frame. Internal use only. drmp3_uint32 pcmFramesConsumedInMP3Frame; drmp3_uint32 pcmFramesRemainingInMP3Frame; drmp3_uint8 pcmFrames[sizeof(float)*DRMP3_MAX_SAMPLES_PER_FRAME]; // <-- Multipled by sizeof(float) to ensure there's enough room for DR_MP3_FLOAT_OUTPUT. drmp3_uint64 currentPCMFrame; // The current PCM frame, globally, based on the output sample rate. Mainly used for seeking. drmp3_uint64 streamCursor; // The current byte the decoder is sitting on in the raw stream. drmp3_src src; drmp3_seek_point* pSeekPoints; // NULL by default. Set with drmp3_bind_seek_table(). Memory is owned by the client. dr_mp3 will never attempt to free this pointer. drmp3_uint32 seekPointCount; // The number of items in pSeekPoints. When set to 0 assumes to no seek table. Defaults to zero. size_t dataSize; size_t dataCapacity; drmp3_uint8* pData; drmp3_bool32 atEnd : 1; struct { const drmp3_uint8* pData; size_t dataSize; size_t currentReadPos; } memory; // Only used for decoders that were opened against a block of memory. } drmp3; // Initializes an MP3 decoder. // // onRead [in] The function to call when data needs to be read from the client. // onSeek [in] The function to call when the read position of the client data needs to move. // pUserData [in, optional] A pointer to application defined data that will be passed to onRead and onSeek. // // Returns true if successful; false otherwise. // // Close the loader with drmp3_uninit(). // // See also: drmp3_init_file(), drmp3_init_memory(), drmp3_uninit() drmp3_bool32 drmp3_init(drmp3* pMP3, drmp3_read_proc onRead, drmp3_seek_proc onSeek, void* pUserData, const drmp3_config* pConfig); // Initializes an MP3 decoder from a block of memory. // // This does not create a copy of the data. It is up to the application to ensure the buffer remains valid for // the lifetime of the drmp3 object. // // The buffer should contain the contents of the entire MP3 file. SDL_STBIMG_DEF drmp3_bool32 drmp3_init_memory(drmp3* pMP3, const void* pData, size_t dataSize, const drmp3_config* pConfig); #ifndef DR_MP3_NO_STDIO // Initializes an MP3 decoder from a file. // // This holds the internal FILE object until drmp3_uninit() is called. Keep this in mind if you're caching drmp3 // objects because the operating system may restrict the number of file handles an application can have open at // any given time. SDL_STBIMG_DEF drmp3_bool32 drmp3_init_file(drmp3* pMP3, const char* filePath, const drmp3_config* pConfig); #endif // Uninitializes an MP3 decoder. SDL_STBIMG_DEF void drmp3_uninit(drmp3* pMP3); // Reads PCM frames as interleaved 32-bit IEEE floating point PCM. // // Note that framesToRead specifies the number of PCM frames to read, _not_ the number of MP3 frames. SDL_STBIMG_DEF drmp3_uint64 drmp3_read_pcm_frames_f32(drmp3* pMP3, drmp3_uint64 framesToRead, float* pBufferOut); // Seeks to a specific frame. // // Note that this is _not_ an MP3 frame, but rather a PCM frame. SDL_STBIMG_DEF drmp3_bool32 drmp3_seek_to_pcm_frame(drmp3* pMP3, drmp3_uint64 frameIndex); // Calculates the total number of PCM frames in the MP3 stream. Cannot be used for infinite streams such as internet // radio. Runs in linear time. Returns 0 on error. SDL_STBIMG_DEF drmp3_uint64 drmp3_get_pcm_frame_count(drmp3* pMP3); // Calculates the total number of MP3 frames in the MP3 stream. Cannot be used for infinite streams such as internet // radio. Runs in linear time. Returns 0 on error. drmp3_uint64 drmp3_get_mp3_frame_count(drmp3* pMP3); // Calculates the seekpoints based on PCM frames. This is slow. // // pSeekpoint count is a pointer to a uint32 containing the seekpoint count. On input it contains the desired count. // On output it contains the actual count. The reason for this design is that the client may request too many // seekpoints, in which case dr_mp3 will return a corrected count. // // Note that seektable seeking is not quite sample exact when the MP3 stream contains inconsistent sample rates. drmp3_bool32 drmp3_calculate_seek_points(drmp3* pMP3, drmp3_uint32* pSeekPointCount, drmp3_seek_point* pSeekPoints); // Binds a seek table to the decoder. // // This does _not_ make a copy of pSeekPoints - it only references it. It is up to the application to ensure this // remains valid while it is bound to the decoder. // // Use drmp3_calculate_seek_points() to calculate the seek points. drmp3_bool32 drmp3_bind_seek_table(drmp3* pMP3, drmp3_uint32 seekPointCount, drmp3_seek_point* pSeekPoints); // Opens an decodes an entire MP3 stream as a single operation. // // pConfig is both an input and output. On input it contains what you want. On output it contains what you got. // // Free the returned pointer with drmp3_free(). float* drmp3_open_and_read_f32(drmp3_read_proc onRead, drmp3_seek_proc onSeek, void* pUserData, drmp3_config* pConfig, drmp3_uint64* pTotalFrameCount); SDL_STBIMG_DEF float* drmp3_open_memory_and_read_f32(const void* pData, size_t dataSize, drmp3_config* pConfig, drmp3_uint64* pTotalFrameCount); #ifndef DR_MP3_NO_STDIO SDL_STBIMG_DEF float* drmp3_open_file_and_read_f32(const char* filePath, drmp3_config* pConfig, drmp3_uint64* pTotalFrameCount); #endif // Frees any memory that was allocated by a public drmp3 API. SDL_STBIMG_DEF void drmp3_free(void* p); #ifdef __cplusplus } #endif #endif // dr_mp3_h ///////////////////////////////////////////////////// // // IMPLEMENTATION // ///////////////////////////////////////////////////// #ifdef DR_MP3_IMPLEMENTATION #include #include #include #include // For INT_MAX // Disable SIMD when compiling with TCC for now. #if defined(__TINYC__) #define DR_MP3_NO_SIMD #endif #define DRMP3_OFFSET_PTR(p, offset) ((void*)((drmp3_uint8*)(p) + (offset))) #define DRMP3_MAX_FREE_FORMAT_FRAME_SIZE 2304 /* more than ISO spec's */ #ifndef DRMP3_MAX_FRAME_SYNC_MATCHES #define DRMP3_MAX_FRAME_SYNC_MATCHES 10 #endif #define DRMP3_MAX_L3_FRAME_PAYLOAD_BYTES DRMP3_MAX_FREE_FORMAT_FRAME_SIZE /* MUST be >= 320000/8/32000*1152 = 1440 */ #define DRMP3_MAX_BITRESERVOIR_BYTES 511 #define DRMP3_SHORT_BLOCK_TYPE 2 #define DRMP3_STOP_BLOCK_TYPE 3 #define DRMP3_MODE_MONO 3 #define DRMP3_MODE_JOINT_STEREO 1 #define DRMP3_HDR_SIZE 4 #define DRMP3_HDR_IS_MONO(h) (((h[3]) & 0xC0) == 0xC0) #define DRMP3_HDR_IS_MS_STEREO(h) (((h[3]) & 0xE0) == 0x60) #define DRMP3_HDR_IS_FREE_FORMAT(h) (((h[2]) & 0xF0) == 0) #define DRMP3_HDR_IS_CRC(h) (!((h[1]) & 1)) #define DRMP3_HDR_TEST_PADDING(h) ((h[2]) & 0x2) #define DRMP3_HDR_TEST_MPEG1(h) ((h[1]) & 0x8) #define DRMP3_HDR_TEST_NOT_MPEG25(h) ((h[1]) & 0x10) #define DRMP3_HDR_TEST_I_STEREO(h) ((h[3]) & 0x10) #define DRMP3_HDR_TEST_MS_STEREO(h) ((h[3]) & 0x20) #define DRMP3_HDR_GET_STEREO_MODE(h) (((h[3]) >> 6) & 3) #define DRMP3_HDR_GET_STEREO_MODE_EXT(h) (((h[3]) >> 4) & 3) #define DRMP3_HDR_GET_LAYER(h) (((h[1]) >> 1) & 3) #define DRMP3_HDR_GET_BITRATE(h) ((h[2]) >> 4) #define DRMP3_HDR_GET_SAMPLE_RATE(h) (((h[2]) >> 2) & 3) #define DRMP3_HDR_GET_MY_SAMPLE_RATE(h) (DRMP3_HDR_GET_SAMPLE_RATE(h) + (((h[1] >> 3) & 1) + ((h[1] >> 4) & 1))*3) #define DRMP3_HDR_IS_FRAME_576(h) ((h[1] & 14) == 2) #define DRMP3_HDR_IS_LAYER_1(h) ((h[1] & 6) == 6) #define DRMP3_BITS_DEQUANTIZER_OUT -1 #define DRMP3_MAX_SCF (255 + DRMP3_BITS_DEQUANTIZER_OUT*4 - 210) #define DRMP3_MAX_SCFI ((DRMP3_MAX_SCF + 3) & ~3) #define DRMP3_MIN(a, b) ((a) > (b) ? (b) : (a)) #define DRMP3_MAX(a, b) ((a) < (b) ? (b) : (a)) #if !defined(DR_MP3_NO_SIMD) #if !defined(DR_MP3_ONLY_SIMD) && (defined(_M_X64) || defined(_M_ARM64) || defined(__x86_64__) || defined(__aarch64__)) /* x64 always have SSE2, arm64 always have neon, no need for generic code */ #define DR_MP3_ONLY_SIMD #endif #if (defined(_MSC_VER) && (defined(_M_IX86) || defined(_M_X64))) || ((defined(__i386__) || defined(__x86_64__)) && defined(__SSE2__)) #if defined(_MSC_VER) #include #endif #include #define DRMP3_HAVE_SSE 1 #define DRMP3_HAVE_SIMD 1 #define DRMP3_VSTORE _mm_storeu_ps #define DRMP3_VLD _mm_loadu_ps #define DRMP3_VSET _mm_set1_ps #define DRMP3_VADD _mm_add_ps #define DRMP3_VSUB _mm_sub_ps #define DRMP3_VMUL _mm_mul_ps #define DRMP3_VMAC(a, x, y) _mm_add_ps(a, _mm_mul_ps(x, y)) #define DRMP3_VMSB(a, x, y) _mm_sub_ps(a, _mm_mul_ps(x, y)) #define DRMP3_VMUL_S(x, s) _mm_mul_ps(x, _mm_set1_ps(s)) #define DRMP3_VREV(x) _mm_shuffle_ps(x, x, _MM_SHUFFLE(0, 1, 2, 3)) typedef __m128 drmp3_f4; #if defined(_MSC_VER) || defined(DR_MP3_ONLY_SIMD) #define drmp3_cpuid __cpuid #else static __inline__ __attribute__((always_inline)) void drmp3_cpuid(int CPUInfo[], const int InfoType) { #if defined(__PIC__) __asm__ __volatile__( #if defined(__x86_64__) "push %%rbx\n" "cpuid\n" "xchgl %%ebx, %1\n" "pop %%rbx\n" #else "xchgl %%ebx, %1\n" "cpuid\n" "xchgl %%ebx, %1\n" #endif : "=a" (CPUInfo[0]), "=r" (CPUInfo[1]), "=c" (CPUInfo[2]), "=d" (CPUInfo[3]) : "a" (InfoType)); #else __asm__ __volatile__( "cpuid" : "=a" (CPUInfo[0]), "=b" (CPUInfo[1]), "=c" (CPUInfo[2]), "=d" (CPUInfo[3]) : "a" (InfoType)); #endif } #endif static int drmp3_have_simd(void) { #ifdef DR_MP3_ONLY_SIMD return 1; #else static int g_have_simd; int CPUInfo[4]; #ifdef MINIMP3_TEST static int g_counter; if (g_counter++ > 100) return 0; #endif if (g_have_simd) goto end; drmp3_cpuid(CPUInfo, 0); if (CPUInfo[0] > 0) { drmp3_cpuid(CPUInfo, 1); g_have_simd = (CPUInfo[3] & (1 << 26)) + 1; /* SSE2 */ return g_have_simd - 1; } end: return g_have_simd - 1; #endif } #elif defined(__ARM_NEON) || defined(__aarch64__) #include #define DRMP3_HAVE_SIMD 1 #define DRMP3_VSTORE vst1q_f32 #define DRMP3_VLD vld1q_f32 #define DRMP3_VSET vmovq_n_f32 #define DRMP3_VADD vaddq_f32 #define DRMP3_VSUB vsubq_f32 #define DRMP3_VMUL vmulq_f32 #define DRMP3_VMAC(a, x, y) vmlaq_f32(a, x, y) #define DRMP3_VMSB(a, x, y) vmlsq_f32(a, x, y) #define DRMP3_VMUL_S(x, s) vmulq_f32(x, vmovq_n_f32(s)) #define DRMP3_VREV(x) vcombine_f32(vget_high_f32(vrev64q_f32(x)), vget_low_f32(vrev64q_f32(x))) typedef float32x4_t drmp3_f4; static int drmp3_have_simd(void) { /* TODO: detect neon for !DR_MP3_ONLY_SIMD */ return 1; } #else #define DRMP3_HAVE_SIMD 0 #ifdef DR_MP3_ONLY_SIMD #error DR_MP3_ONLY_SIMD used, but SSE/NEON not enabled #endif #endif #else #define DRMP3_HAVE_SIMD 0 #endif typedef struct { const drmp3_uint8 *buf; int pos, limit; } drmp3_bs; typedef struct { float scf[3*64]; drmp3_uint8 total_bands, stereo_bands, bitalloc[64], scfcod[64]; } drmp3_L12_scale_info; typedef struct { drmp3_uint8 tab_offset, code_tab_width, band_count; } drmp3_L12_subband_alloc; typedef struct { const drmp3_uint8 *sfbtab; drmp3_uint16 part_23_length, big_values, scalefac_compress; drmp3_uint8 global_gain, block_type, mixed_block_flag, n_long_sfb, n_short_sfb; drmp3_uint8 table_select[3], region_count[3], subblock_gain[3]; drmp3_uint8 preflag, scalefac_scale, count1_table, scfsi; } drmp3_L3_gr_info; typedef struct { drmp3_bs bs; drmp3_uint8 maindata[DRMP3_MAX_BITRESERVOIR_BYTES + DRMP3_MAX_L3_FRAME_PAYLOAD_BYTES]; drmp3_L3_gr_info gr_info[4]; float grbuf[2][576], scf[40], syn[18 + 15][2*32]; drmp3_uint8 ist_pos[2][39]; } drmp3dec_scratch; static void drmp3_bs_init(drmp3_bs *bs, const drmp3_uint8 *data, int bytes) { bs->buf = data; bs->pos = 0; bs->limit = bytes*8; } static drmp3_uint32 drmp3_bs_get_bits(drmp3_bs *bs, int n) { drmp3_uint32 next, cache = 0, s = bs->pos & 7; int shl = n + s; const drmp3_uint8 *p = bs->buf + (bs->pos >> 3); if ((bs->pos += n) > bs->limit) return 0; next = *p++ & (255 >> s); while ((shl -= 8) > 0) { cache |= next << shl; next = *p++; } return cache | (next >> -shl); } static int drmp3_hdr_valid(const drmp3_uint8 *h) { return h[0] == 0xff && ((h[1] & 0xF0) == 0xf0 || (h[1] & 0xFE) == 0xe2) && (DRMP3_HDR_GET_LAYER(h) != 0) && (DRMP3_HDR_GET_BITRATE(h) != 15) && (DRMP3_HDR_GET_SAMPLE_RATE(h) != 3); } static int drmp3_hdr_compare(const drmp3_uint8 *h1, const drmp3_uint8 *h2) { return drmp3_hdr_valid(h2) && ((h1[1] ^ h2[1]) & 0xFE) == 0 && ((h1[2] ^ h2[2]) & 0x0C) == 0 && !(DRMP3_HDR_IS_FREE_FORMAT(h1) ^ DRMP3_HDR_IS_FREE_FORMAT(h2)); } static unsigned drmp3_hdr_bitrate_kbps(const drmp3_uint8 *h) { static const drmp3_uint8 halfrate[2][3][15] = { { { 0,4,8,12,16,20,24,28,32,40,48,56,64,72,80 }, { 0,4,8,12,16,20,24,28,32,40,48,56,64,72,80 }, { 0,16,24,28,32,40,48,56,64,72,80,88,96,112,128 } }, { { 0,16,20,24,28,32,40,48,56,64,80,96,112,128,160 }, { 0,16,24,28,32,40,48,56,64,80,96,112,128,160,192 }, { 0,16,32,48,64,80,96,112,128,144,160,176,192,208,224 } }, }; return 2*halfrate[!!DRMP3_HDR_TEST_MPEG1(h)][DRMP3_HDR_GET_LAYER(h) - 1][DRMP3_HDR_GET_BITRATE(h)]; } static unsigned drmp3_hdr_sample_rate_hz(const drmp3_uint8 *h) { static const unsigned g_hz[3] = { 44100, 48000, 32000 }; return g_hz[DRMP3_HDR_GET_SAMPLE_RATE(h)] >> (int)!DRMP3_HDR_TEST_MPEG1(h) >> (int)!DRMP3_HDR_TEST_NOT_MPEG25(h); } static unsigned drmp3_hdr_frame_samples(const drmp3_uint8 *h) { return DRMP3_HDR_IS_LAYER_1(h) ? 384 : (1152 >> (int)DRMP3_HDR_IS_FRAME_576(h)); } static int drmp3_hdr_frame_bytes(const drmp3_uint8 *h, int free_format_size) { int frame_bytes = drmp3_hdr_frame_samples(h)*drmp3_hdr_bitrate_kbps(h)*125/drmp3_hdr_sample_rate_hz(h); if (DRMP3_HDR_IS_LAYER_1(h)) { frame_bytes &= ~3; /* slot align */ } return frame_bytes ? frame_bytes : free_format_size; } static int drmp3_hdr_padding(const drmp3_uint8 *h) { return DRMP3_HDR_TEST_PADDING(h) ? (DRMP3_HDR_IS_LAYER_1(h) ? 4 : 1) : 0; } #ifndef DR_MP3_ONLY_MP3 static const drmp3_L12_subband_alloc *drmp3_L12_subband_alloc_table(const drmp3_uint8 *hdr, drmp3_L12_scale_info *sci) { const drmp3_L12_subband_alloc *alloc; int mode = DRMP3_HDR_GET_STEREO_MODE(hdr); int nbands, stereo_bands = (mode == DRMP3_MODE_MONO) ? 0 : (mode == DRMP3_MODE_JOINT_STEREO) ? (DRMP3_HDR_GET_STEREO_MODE_EXT(hdr) << 2) + 4 : 32; if (DRMP3_HDR_IS_LAYER_1(hdr)) { static const drmp3_L12_subband_alloc g_alloc_L1[] = { { 76, 4, 32 } }; alloc = g_alloc_L1; nbands = 32; } else if (!DRMP3_HDR_TEST_MPEG1(hdr)) { static const drmp3_L12_subband_alloc g_alloc_L2M2[] = { { 60, 4, 4 }, { 44, 3, 7 }, { 44, 2, 19 } }; alloc = g_alloc_L2M2; nbands = 30; } else { static const drmp3_L12_subband_alloc g_alloc_L2M1[] = { { 0, 4, 3 }, { 16, 4, 8 }, { 32, 3, 12 }, { 40, 2, 7 } }; int sample_rate_idx = DRMP3_HDR_GET_SAMPLE_RATE(hdr); unsigned kbps = drmp3_hdr_bitrate_kbps(hdr) >> (int)(mode != DRMP3_MODE_MONO); if (!kbps) /* free-format */ { kbps = 192; } alloc = g_alloc_L2M1; nbands = 27; if (kbps < 56) { static const drmp3_L12_subband_alloc g_alloc_L2M1_lowrate[] = { { 44, 4, 2 }, { 44, 3, 10 } }; alloc = g_alloc_L2M1_lowrate; nbands = sample_rate_idx == 2 ? 12 : 8; } else if (kbps >= 96 && sample_rate_idx != 1) { nbands = 30; } } sci->total_bands = (drmp3_uint8)nbands; sci->stereo_bands = (drmp3_uint8)DRMP3_MIN(stereo_bands, nbands); return alloc; } static void drmp3_L12_read_scalefactors(drmp3_bs *bs, drmp3_uint8 *pba, drmp3_uint8 *scfcod, int bands, float *scf) { static const float g_deq_L12[18*3] = { #define DRMP3_DQ(x) 9.53674316e-07f/x, 7.56931807e-07f/x, 6.00777173e-07f/x DRMP3_DQ(3),DRMP3_DQ(7),DRMP3_DQ(15),DRMP3_DQ(31),DRMP3_DQ(63),DRMP3_DQ(127),DRMP3_DQ(255),DRMP3_DQ(511),DRMP3_DQ(1023),DRMP3_DQ(2047),DRMP3_DQ(4095),DRMP3_DQ(8191),DRMP3_DQ(16383),DRMP3_DQ(32767),DRMP3_DQ(65535),DRMP3_DQ(3),DRMP3_DQ(5),DRMP3_DQ(9) }; int i, m; for (i = 0; i < bands; i++) { float s = 0; int ba = *pba++; int mask = ba ? 4 + ((19 >> scfcod[i]) & 3) : 0; for (m = 4; m; m >>= 1) { if (mask & m) { int b = drmp3_bs_get_bits(bs, 6); s = g_deq_L12[ba*3 - 6 + b % 3]*(1 << 21 >> b/3); } *scf++ = s; } } } static void drmp3_L12_read_scale_info(const drmp3_uint8 *hdr, drmp3_bs *bs, drmp3_L12_scale_info *sci) { static const drmp3_uint8 g_bitalloc_code_tab[] = { 0,17, 3, 4, 5,6,7, 8,9,10,11,12,13,14,15,16, 0,17,18, 3,19,4,5, 6,7, 8, 9,10,11,12,13,16, 0,17,18, 3,19,4,5,16, 0,17,18,16, 0,17,18,19, 4,5,6, 7,8, 9,10,11,12,13,14,15, 0,17,18, 3,19,4,5, 6,7, 8, 9,10,11,12,13,14, 0, 2, 3, 4, 5,6,7, 8,9,10,11,12,13,14,15,16 }; const drmp3_L12_subband_alloc *subband_alloc = drmp3_L12_subband_alloc_table(hdr, sci); int i, k = 0, ba_bits = 0; const drmp3_uint8 *ba_code_tab = g_bitalloc_code_tab; for (i = 0; i < sci->total_bands; i++) { drmp3_uint8 ba; if (i == k) { k += subband_alloc->band_count; ba_bits = subband_alloc->code_tab_width; ba_code_tab = g_bitalloc_code_tab + subband_alloc->tab_offset; subband_alloc++; } ba = ba_code_tab[drmp3_bs_get_bits(bs, ba_bits)]; sci->bitalloc[2*i] = ba; if (i < sci->stereo_bands) { ba = ba_code_tab[drmp3_bs_get_bits(bs, ba_bits)]; } sci->bitalloc[2*i + 1] = sci->stereo_bands ? ba : 0; } for (i = 0; i < 2*sci->total_bands; i++) { sci->scfcod[i] = (drmp3_uint8)(sci->bitalloc[i] ? DRMP3_HDR_IS_LAYER_1(hdr) ? 2 : drmp3_bs_get_bits(bs, 2) : 6); } drmp3_L12_read_scalefactors(bs, sci->bitalloc, sci->scfcod, sci->total_bands*2, sci->scf); for (i = sci->stereo_bands; i < sci->total_bands; i++) { sci->bitalloc[2*i + 1] = 0; } } static int drmp3_L12_dequantize_granule(float *grbuf, drmp3_bs *bs, drmp3_L12_scale_info *sci, int group_size) { int i, j, k, choff = 576; for (j = 0; j < 4; j++) { float *dst = grbuf + group_size*j; for (i = 0; i < 2*sci->total_bands; i++) { int ba = sci->bitalloc[i]; if (ba != 0) { if (ba < 17) { int half = (1 << (ba - 1)) - 1; for (k = 0; k < group_size; k++) { dst[k] = (float)((int)drmp3_bs_get_bits(bs, ba) - half); } } else { unsigned mod = (2 << (ba - 17)) + 1; /* 3, 5, 9 */ unsigned code = drmp3_bs_get_bits(bs, mod + 2 - (mod >> 3)); /* 5, 7, 10 */ for (k = 0; k < group_size; k++, code /= mod) { dst[k] = (float)((int)(code % mod - mod/2)); } } } dst += choff; choff = 18 - choff; } } return group_size*4; } static void drmp3_L12_apply_scf_384(drmp3_L12_scale_info *sci, const float *scf, float *dst) { int i, k; memcpy(dst + 576 + sci->stereo_bands*18, dst + sci->stereo_bands*18, (sci->total_bands - sci->stereo_bands)*18*sizeof(float)); for (i = 0; i < sci->total_bands; i++, dst += 18, scf += 6) { for (k = 0; k < 12; k++) { dst[k + 0] *= scf[0]; dst[k + 576] *= scf[3]; } } } #endif static int drmp3_L3_read_side_info(drmp3_bs *bs, drmp3_L3_gr_info *gr, const drmp3_uint8 *hdr) { static const drmp3_uint8 g_scf_long[8][23] = { { 6,6,6,6,6,6,8,10,12,14,16,20,24,28,32,38,46,52,60,68,58,54,0 }, { 12,12,12,12,12,12,16,20,24,28,32,40,48,56,64,76,90,2,2,2,2,2,0 }, { 6,6,6,6,6,6,8,10,12,14,16,20,24,28,32,38,46,52,60,68,58,54,0 }, { 6,6,6,6,6,6,8,10,12,14,16,18,22,26,32,38,46,54,62,70,76,36,0 }, { 6,6,6,6,6,6,8,10,12,14,16,20,24,28,32,38,46,52,60,68,58,54,0 }, { 4,4,4,4,4,4,6,6,8,8,10,12,16,20,24,28,34,42,50,54,76,158,0 }, { 4,4,4,4,4,4,6,6,6,8,10,12,16,18,22,28,34,40,46,54,54,192,0 }, { 4,4,4,4,4,4,6,6,8,10,12,16,20,24,30,38,46,56,68,84,102,26,0 } }; static const drmp3_uint8 g_scf_short[8][40] = { { 4,4,4,4,4,4,4,4,4,6,6,6,8,8,8,10,10,10,12,12,12,14,14,14,18,18,18,24,24,24,30,30,30,40,40,40,18,18,18,0 }, { 8,8,8,8,8,8,8,8,8,12,12,12,16,16,16,20,20,20,24,24,24,28,28,28,36,36,36,2,2,2,2,2,2,2,2,2,26,26,26,0 }, { 4,4,4,4,4,4,4,4,4,6,6,6,6,6,6,8,8,8,10,10,10,14,14,14,18,18,18,26,26,26,32,32,32,42,42,42,18,18,18,0 }, { 4,4,4,4,4,4,4,4,4,6,6,6,8,8,8,10,10,10,12,12,12,14,14,14,18,18,18,24,24,24,32,32,32,44,44,44,12,12,12,0 }, { 4,4,4,4,4,4,4,4,4,6,6,6,8,8,8,10,10,10,12,12,12,14,14,14,18,18,18,24,24,24,30,30,30,40,40,40,18,18,18,0 }, { 4,4,4,4,4,4,4,4,4,4,4,4,6,6,6,8,8,8,10,10,10,12,12,12,14,14,14,18,18,18,22,22,22,30,30,30,56,56,56,0 }, { 4,4,4,4,4,4,4,4,4,4,4,4,6,6,6,6,6,6,10,10,10,12,12,12,14,14,14,16,16,16,20,20,20,26,26,26,66,66,66,0 }, { 4,4,4,4,4,4,4,4,4,4,4,4,6,6,6,8,8,8,12,12,12,16,16,16,20,20,20,26,26,26,34,34,34,42,42,42,12,12,12,0 } }; static const drmp3_uint8 g_scf_mixed[8][40] = { { 6,6,6,6,6,6,6,6,6,8,8,8,10,10,10,12,12,12,14,14,14,18,18,18,24,24,24,30,30,30,40,40,40,18,18,18,0 }, { 12,12,12,4,4,4,8,8,8,12,12,12,16,16,16,20,20,20,24,24,24,28,28,28,36,36,36,2,2,2,2,2,2,2,2,2,26,26,26,0 }, { 6,6,6,6,6,6,6,6,6,6,6,6,8,8,8,10,10,10,14,14,14,18,18,18,26,26,26,32,32,32,42,42,42,18,18,18,0 }, { 6,6,6,6,6,6,6,6,6,8,8,8,10,10,10,12,12,12,14,14,14,18,18,18,24,24,24,32,32,32,44,44,44,12,12,12,0 }, { 6,6,6,6,6,6,6,6,6,8,8,8,10,10,10,12,12,12,14,14,14,18,18,18,24,24,24,30,30,30,40,40,40,18,18,18,0 }, { 4,4,4,4,4,4,6,6,4,4,4,6,6,6,8,8,8,10,10,10,12,12,12,14,14,14,18,18,18,22,22,22,30,30,30,56,56,56,0 }, { 4,4,4,4,4,4,6,6,4,4,4,6,6,6,6,6,6,10,10,10,12,12,12,14,14,14,16,16,16,20,20,20,26,26,26,66,66,66,0 }, { 4,4,4,4,4,4,6,6,4,4,4,6,6,6,8,8,8,12,12,12,16,16,16,20,20,20,26,26,26,34,34,34,42,42,42,12,12,12,0 } }; unsigned tables, scfsi = 0; int main_data_begin, part_23_sum = 0; int sr_idx = DRMP3_HDR_GET_MY_SAMPLE_RATE(hdr); sr_idx -= (sr_idx != 0); int gr_count = DRMP3_HDR_IS_MONO(hdr) ? 1 : 2; if (DRMP3_HDR_TEST_MPEG1(hdr)) { gr_count *= 2; main_data_begin = drmp3_bs_get_bits(bs, 9); scfsi = drmp3_bs_get_bits(bs, 7 + gr_count); } else { main_data_begin = drmp3_bs_get_bits(bs, 8 + gr_count) >> gr_count; } do { if (DRMP3_HDR_IS_MONO(hdr)) { scfsi <<= 4; } gr->part_23_length = (drmp3_uint16)drmp3_bs_get_bits(bs, 12); part_23_sum += gr->part_23_length; gr->big_values = (drmp3_uint16)drmp3_bs_get_bits(bs, 9); if (gr->big_values > 288) { return -1; } gr->global_gain = (drmp3_uint8)drmp3_bs_get_bits(bs, 8); gr->scalefac_compress = (drmp3_uint16)drmp3_bs_get_bits(bs, DRMP3_HDR_TEST_MPEG1(hdr) ? 4 : 9); gr->sfbtab = g_scf_long[sr_idx]; gr->n_long_sfb = 22; gr->n_short_sfb = 0; if (drmp3_bs_get_bits(bs, 1)) { gr->block_type = (drmp3_uint8)drmp3_bs_get_bits(bs, 2); if (!gr->block_type) { return -1; } gr->mixed_block_flag = (drmp3_uint8)drmp3_bs_get_bits(bs, 1); gr->region_count[0] = 7; gr->region_count[1] = 255; if (gr->block_type == DRMP3_SHORT_BLOCK_TYPE) { scfsi &= 0x0F0F; if (!gr->mixed_block_flag) { gr->region_count[0] = 8; gr->sfbtab = g_scf_short[sr_idx]; gr->n_long_sfb = 0; gr->n_short_sfb = 39; } else { gr->sfbtab = g_scf_mixed[sr_idx]; gr->n_long_sfb = DRMP3_HDR_TEST_MPEG1(hdr) ? 8 : 6; gr->n_short_sfb = 30; } } tables = drmp3_bs_get_bits(bs, 10); tables <<= 5; gr->subblock_gain[0] = (drmp3_uint8)drmp3_bs_get_bits(bs, 3); gr->subblock_gain[1] = (drmp3_uint8)drmp3_bs_get_bits(bs, 3); gr->subblock_gain[2] = (drmp3_uint8)drmp3_bs_get_bits(bs, 3); } else { gr->block_type = 0; gr->mixed_block_flag = 0; tables = drmp3_bs_get_bits(bs, 15); gr->region_count[0] = (drmp3_uint8)drmp3_bs_get_bits(bs, 4); gr->region_count[1] = (drmp3_uint8)drmp3_bs_get_bits(bs, 3); gr->region_count[2] = 255; } gr->table_select[0] = (drmp3_uint8)(tables >> 10); gr->table_select[1] = (drmp3_uint8)((tables >> 5) & 31); gr->table_select[2] = (drmp3_uint8)((tables) & 31); gr->preflag = (drmp3_uint8)(DRMP3_HDR_TEST_MPEG1(hdr) ? drmp3_bs_get_bits(bs, 1) : (gr->scalefac_compress >= 500)); gr->scalefac_scale = (drmp3_uint8)drmp3_bs_get_bits(bs, 1); gr->count1_table = (drmp3_uint8)drmp3_bs_get_bits(bs, 1); gr->scfsi = (drmp3_uint8)((scfsi >> 12) & 15); scfsi <<= 4; gr++; } while(--gr_count); if (part_23_sum + bs->pos > bs->limit + main_data_begin*8) { return -1; } return main_data_begin; } static void drmp3_L3_read_scalefactors(drmp3_uint8 *scf, drmp3_uint8 *ist_pos, const drmp3_uint8 *scf_size, const drmp3_uint8 *scf_count, drmp3_bs *bitbuf, int scfsi) { int i, k; for (i = 0; i < 4 && scf_count[i]; i++, scfsi *= 2) { int cnt = scf_count[i]; if (scfsi & 8) { memcpy(scf, ist_pos, cnt); } else { int bits = scf_size[i]; if (!bits) { memset(scf, 0, cnt); memset(ist_pos, 0, cnt); } else { int max_scf = (scfsi < 0) ? (1 << bits) - 1 : -1; for (k = 0; k < cnt; k++) { int s = drmp3_bs_get_bits(bitbuf, bits); ist_pos[k] = (drmp3_uint8)(s == max_scf ? -1 : s); scf[k] = (drmp3_uint8)s; } } } ist_pos += cnt; scf += cnt; } scf[0] = scf[1] = scf[2] = 0; } static float drmp3_L3_ldexp_q2(float y, int exp_q2) { static const float g_expfrac[4] = { 9.31322575e-10f,7.83145814e-10f,6.58544508e-10f,5.53767716e-10f }; int e; do { e = DRMP3_MIN(30*4, exp_q2); y *= g_expfrac[e & 3]*(1 << 30 >> (e >> 2)); } while ((exp_q2 -= e) > 0); return y; } static void drmp3_L3_decode_scalefactors(const drmp3_uint8 *hdr, drmp3_uint8 *ist_pos, drmp3_bs *bs, const drmp3_L3_gr_info *gr, float *scf, int ch) { static const drmp3_uint8 g_scf_partitions[3][28] = { { 6,5,5, 5,6,5,5,5,6,5, 7,3,11,10,0,0, 7, 7, 7,0, 6, 6,6,3, 8, 8,5,0 }, { 8,9,6,12,6,9,9,9,6,9,12,6,15,18,0,0, 6,15,12,0, 6,12,9,6, 6,18,9,0 }, { 9,9,6,12,9,9,9,9,9,9,12,6,18,18,0,0,12,12,12,0,12, 9,9,6,15,12,9,0 } }; const drmp3_uint8 *scf_partition = g_scf_partitions[!!gr->n_short_sfb + !gr->n_long_sfb]; drmp3_uint8 scf_size[4], iscf[40]; int i, scf_shift = gr->scalefac_scale + 1, gain_exp, scfsi = gr->scfsi; float gain; if (DRMP3_HDR_TEST_MPEG1(hdr)) { static const drmp3_uint8 g_scfc_decode[16] = { 0,1,2,3, 12,5,6,7, 9,10,11,13, 14,15,18,19 }; int part = g_scfc_decode[gr->scalefac_compress]; scf_size[1] = scf_size[0] = (drmp3_uint8)(part >> 2); scf_size[3] = scf_size[2] = (drmp3_uint8)(part & 3); } else { static const drmp3_uint8 g_mod[6*4] = { 5,5,4,4,5,5,4,1,4,3,1,1,5,6,6,1,4,4,4,1,4,3,1,1 }; int k, modprod, sfc, ist = DRMP3_HDR_TEST_I_STEREO(hdr) && ch; sfc = gr->scalefac_compress >> ist; for (k = ist*3*4; sfc >= 0; sfc -= modprod, k += 4) { for (modprod = 1, i = 3; i >= 0; i--) { scf_size[i] = (drmp3_uint8)(sfc / modprod % g_mod[k + i]); modprod *= g_mod[k + i]; } } scf_partition += k; scfsi = -16; } drmp3_L3_read_scalefactors(iscf, ist_pos, scf_size, scf_partition, bs, scfsi); if (gr->n_short_sfb) { int sh = 3 - scf_shift; for (i = 0; i < gr->n_short_sfb; i += 3) { iscf[gr->n_long_sfb + i + 0] += gr->subblock_gain[0] << sh; iscf[gr->n_long_sfb + i + 1] += gr->subblock_gain[1] << sh; iscf[gr->n_long_sfb + i + 2] += gr->subblock_gain[2] << sh; } } else if (gr->preflag) { static const drmp3_uint8 g_preamp[10] = { 1,1,1,1,2,2,3,3,3,2 }; for (i = 0; i < 10; i++) { iscf[11 + i] += g_preamp[i]; } } gain_exp = gr->global_gain + DRMP3_BITS_DEQUANTIZER_OUT*4 - 210 - (DRMP3_HDR_IS_MS_STEREO(hdr) ? 2 : 0); gain = drmp3_L3_ldexp_q2(1 << (DRMP3_MAX_SCFI/4), DRMP3_MAX_SCFI - gain_exp); for (i = 0; i < (int)(gr->n_long_sfb + gr->n_short_sfb); i++) { scf[i] = drmp3_L3_ldexp_q2(gain, iscf[i] << scf_shift); } } static const float g_drmp3_pow43[129 + 16] = { 0,-1,-2.519842f,-4.326749f,-6.349604f,-8.549880f,-10.902724f,-13.390518f,-16.000000f,-18.720754f,-21.544347f,-24.463781f,-27.473142f,-30.567351f,-33.741992f,-36.993181f, 0,1,2.519842f,4.326749f,6.349604f,8.549880f,10.902724f,13.390518f,16.000000f,18.720754f,21.544347f,24.463781f,27.473142f,30.567351f,33.741992f,36.993181f,40.317474f,43.711787f,47.173345f,50.699631f,54.288352f,57.937408f,61.644865f,65.408941f,69.227979f,73.100443f,77.024898f,81.000000f,85.024491f,89.097188f,93.216975f,97.382800f,101.593667f,105.848633f,110.146801f,114.487321f,118.869381f,123.292209f,127.755065f,132.257246f,136.798076f,141.376907f,145.993119f,150.646117f,155.335327f,160.060199f,164.820202f,169.614826f,174.443577f,179.305980f,184.201575f,189.129918f,194.090580f,199.083145f,204.107210f,209.162385f,214.248292f,219.364564f,224.510845f,229.686789f,234.892058f,240.126328f,245.389280f,250.680604f,256.000000f,261.347174f,266.721841f,272.123723f,277.552547f,283.008049f,288.489971f,293.998060f,299.532071f,305.091761f,310.676898f,316.287249f,321.922592f,327.582707f,333.267377f,338.976394f,344.709550f,350.466646f,356.247482f,362.051866f,367.879608f,373.730522f,379.604427f,385.501143f,391.420496f,397.362314f,403.326427f,409.312672f,415.320884f,421.350905f,427.402579f,433.475750f,439.570269f,445.685987f,451.822757f,457.980436f,464.158883f,470.357960f,476.577530f,482.817459f,489.077615f,495.357868f,501.658090f,507.978156f,514.317941f,520.677324f,527.056184f,533.454404f,539.871867f,546.308458f,552.764065f,559.238575f,565.731879f,572.243870f,578.774440f,585.323483f,591.890898f,598.476581f,605.080431f,611.702349f,618.342238f,625.000000f,631.675540f,638.368763f,645.079578f }; static float drmp3_L3_pow_43(int x) { float frac; int sign, mult = 256; if (x < 129) { return g_drmp3_pow43[16 + x]; } if (x < 1024) { mult = 16; x <<= 3; } sign = 2*x & 64; frac = (float)((x & 63) - sign) / ((x & ~63) + sign); return g_drmp3_pow43[16 + ((x + sign) >> 6)]*(1.f + frac*((4.f/3) + frac*(2.f/9)))*mult; } static void drmp3_L3_huffman(float *dst, drmp3_bs *bs, const drmp3_L3_gr_info *gr_info, const float *scf, int layer3gr_limit) { static const drmp3_int16 tabs[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 785,785,785,785,784,784,784,784,513,513,513,513,513,513,513,513,256,256,256,256,256,256,256,256,256,256,256,256,256,256,256,256, -255,1313,1298,1282,785,785,785,785,784,784,784,784,769,769,769,769,256,256,256,256,256,256,256,256,256,256,256,256,256,256,256,256,290,288, -255,1313,1298,1282,769,769,769,769,529,529,529,529,529,529,529,529,528,528,528,528,528,528,528,528,512,512,512,512,512,512,512,512,290,288, -253,-318,-351,-367,785,785,785,785,784,784,784,784,769,769,769,769,256,256,256,256,256,256,256,256,256,256,256,256,256,256,256,256,819,818,547,547,275,275,275,275,561,560,515,546,289,274,288,258, -254,-287,1329,1299,1314,1312,1057,1057,1042,1042,1026,1026,784,784,784,784,529,529,529,529,529,529,529,529,769,769,769,769,768,768,768,768,563,560,306,306,291,259, -252,-413,-477,-542,1298,-575,1041,1041,784,784,784,784,769,769,769,769,256,256,256,256,256,256,256,256,256,256,256,256,256,256,256,256,-383,-399,1107,1092,1106,1061,849,849,789,789,1104,1091,773,773,1076,1075,341,340,325,309,834,804,577,577,532,532,516,516,832,818,803,816,561,561,531,531,515,546,289,289,288,258, -252,-429,-493,-559,1057,1057,1042,1042,529,529,529,529,529,529,529,529,784,784,784,784,769,769,769,769,512,512,512,512,512,512,512,512,-382,1077,-415,1106,1061,1104,849,849,789,789,1091,1076,1029,1075,834,834,597,581,340,340,339,324,804,833,532,532,832,772,818,803,817,787,816,771,290,290,290,290,288,258, -253,-349,-414,-447,-463,1329,1299,-479,1314,1312,1057,1057,1042,1042,1026,1026,785,785,785,785,784,784,784,784,769,769,769,769,768,768,768,768,-319,851,821,-335,836,850,805,849,341,340,325,336,533,533,579,579,564,564,773,832,578,548,563,516,321,276,306,291,304,259, -251,-572,-733,-830,-863,-879,1041,1041,784,784,784,784,769,769,769,769,256,256,256,256,256,256,256,256,256,256,256,256,256,256,256,256,-511,-527,-543,1396,1351,1381,1366,1395,1335,1380,-559,1334,1138,1138,1063,1063,1350,1392,1031,1031,1062,1062,1364,1363,1120,1120,1333,1348,881,881,881,881,375,374,359,373,343,358,341,325,791,791,1123,1122,-703,1105,1045,-719,865,865,790,790,774,774,1104,1029,338,293,323,308,-799,-815,833,788,772,818,803,816,322,292,307,320,561,531,515,546,289,274,288,258, -251,-525,-605,-685,-765,-831,-846,1298,1057,1057,1312,1282,785,785,785,785,784,784,784,784,769,769,769,769,512,512,512,512,512,512,512,512,1399,1398,1383,1367,1382,1396,1351,-511,1381,1366,1139,1139,1079,1079,1124,1124,1364,1349,1363,1333,882,882,882,882,807,807,807,807,1094,1094,1136,1136,373,341,535,535,881,775,867,822,774,-591,324,338,-671,849,550,550,866,864,609,609,293,336,534,534,789,835,773,-751,834,804,308,307,833,788,832,772,562,562,547,547,305,275,560,515,290,290, -252,-397,-477,-557,-622,-653,-719,-735,-750,1329,1299,1314,1057,1057,1042,1042,1312,1282,1024,1024,785,785,785,785,784,784,784,784,769,769,769,769,-383,1127,1141,1111,1126,1140,1095,1110,869,869,883,883,1079,1109,882,882,375,374,807,868,838,881,791,-463,867,822,368,263,852,837,836,-543,610,610,550,550,352,336,534,534,865,774,851,821,850,805,593,533,579,564,773,832,578,578,548,548,577,577,307,276,306,291,516,560,259,259, -250,-2107,-2507,-2764,-2909,-2974,-3007,-3023,1041,1041,1040,1040,769,769,769,769,256,256,256,256,256,256,256,256,256,256,256,256,256,256,256,256,-767,-1052,-1213,-1277,-1358,-1405,-1469,-1535,-1550,-1582,-1614,-1647,-1662,-1694,-1726,-1759,-1774,-1807,-1822,-1854,-1886,1565,-1919,-1935,-1951,-1967,1731,1730,1580,1717,-1983,1729,1564,-1999,1548,-2015,-2031,1715,1595,-2047,1714,-2063,1610,-2079,1609,-2095,1323,1323,1457,1457,1307,1307,1712,1547,1641,1700,1699,1594,1685,1625,1442,1442,1322,1322,-780,-973,-910,1279,1278,1277,1262,1276,1261,1275,1215,1260,1229,-959,974,974,989,989,-943,735,478,478,495,463,506,414,-1039,1003,958,1017,927,942,987,957,431,476,1272,1167,1228,-1183,1256,-1199,895,895,941,941,1242,1227,1212,1135,1014,1014,490,489,503,487,910,1013,985,925,863,894,970,955,1012,847,-1343,831,755,755,984,909,428,366,754,559,-1391,752,486,457,924,997,698,698,983,893,740,740,908,877,739,739,667,667,953,938,497,287,271,271,683,606,590,712,726,574,302,302,738,736,481,286,526,725,605,711,636,724,696,651,589,681,666,710,364,467,573,695,466,466,301,465,379,379,709,604,665,679,316,316,634,633,436,436,464,269,424,394,452,332,438,363,347,408,393,448,331,422,362,407,392,421,346,406,391,376,375,359,1441,1306,-2367,1290,-2383,1337,-2399,-2415,1426,1321,-2431,1411,1336,-2447,-2463,-2479,1169,1169,1049,1049,1424,1289,1412,1352,1319,-2495,1154,1154,1064,1064,1153,1153,416,390,360,404,403,389,344,374,373,343,358,372,327,357,342,311,356,326,1395,1394,1137,1137,1047,1047,1365,1392,1287,1379,1334,1364,1349,1378,1318,1363,792,792,792,792,1152,1152,1032,1032,1121,1121,1046,1046,1120,1120,1030,1030,-2895,1106,1061,1104,849,849,789,789,1091,1076,1029,1090,1060,1075,833,833,309,324,532,532,832,772,818,803,561,561,531,560,515,546,289,274,288,258, -250,-1179,-1579,-1836,-1996,-2124,-2253,-2333,-2413,-2477,-2542,-2574,-2607,-2622,-2655,1314,1313,1298,1312,1282,785,785,785,785,1040,1040,1025,1025,768,768,768,768,-766,-798,-830,-862,-895,-911,-927,-943,-959,-975,-991,-1007,-1023,-1039,-1055,-1070,1724,1647,-1103,-1119,1631,1767,1662,1738,1708,1723,-1135,1780,1615,1779,1599,1677,1646,1778,1583,-1151,1777,1567,1737,1692,1765,1722,1707,1630,1751,1661,1764,1614,1736,1676,1763,1750,1645,1598,1721,1691,1762,1706,1582,1761,1566,-1167,1749,1629,767,766,751,765,494,494,735,764,719,749,734,763,447,447,748,718,477,506,431,491,446,476,461,505,415,430,475,445,504,399,460,489,414,503,383,474,429,459,502,502,746,752,488,398,501,473,413,472,486,271,480,270,-1439,-1455,1357,-1471,-1487,-1503,1341,1325,-1519,1489,1463,1403,1309,-1535,1372,1448,1418,1476,1356,1462,1387,-1551,1475,1340,1447,1402,1386,-1567,1068,1068,1474,1461,455,380,468,440,395,425,410,454,364,467,466,464,453,269,409,448,268,432,1371,1473,1432,1417,1308,1460,1355,1446,1459,1431,1083,1083,1401,1416,1458,1445,1067,1067,1370,1457,1051,1051,1291,1430,1385,1444,1354,1415,1400,1443,1082,1082,1173,1113,1186,1066,1185,1050,-1967,1158,1128,1172,1097,1171,1081,-1983,1157,1112,416,266,375,400,1170,1142,1127,1065,793,793,1169,1033,1156,1096,1141,1111,1155,1080,1126,1140,898,898,808,808,897,897,792,792,1095,1152,1032,1125,1110,1139,1079,1124,882,807,838,881,853,791,-2319,867,368,263,822,852,837,866,806,865,-2399,851,352,262,534,534,821,836,594,594,549,549,593,593,533,533,848,773,579,579,564,578,548,563,276,276,577,576,306,291,516,560,305,305,275,259, -251,-892,-2058,-2620,-2828,-2957,-3023,-3039,1041,1041,1040,1040,769,769,769,769,256,256,256,256,256,256,256,256,256,256,256,256,256,256,256,256,-511,-527,-543,-559,1530,-575,-591,1528,1527,1407,1526,1391,1023,1023,1023,1023,1525,1375,1268,1268,1103,1103,1087,1087,1039,1039,1523,-604,815,815,815,815,510,495,509,479,508,463,507,447,431,505,415,399,-734,-782,1262,-815,1259,1244,-831,1258,1228,-847,-863,1196,-879,1253,987,987,748,-767,493,493,462,477,414,414,686,669,478,446,461,445,474,429,487,458,412,471,1266,1264,1009,1009,799,799,-1019,-1276,-1452,-1581,-1677,-1757,-1821,-1886,-1933,-1997,1257,1257,1483,1468,1512,1422,1497,1406,1467,1496,1421,1510,1134,1134,1225,1225,1466,1451,1374,1405,1252,1252,1358,1480,1164,1164,1251,1251,1238,1238,1389,1465,-1407,1054,1101,-1423,1207,-1439,830,830,1248,1038,1237,1117,1223,1148,1236,1208,411,426,395,410,379,269,1193,1222,1132,1235,1221,1116,976,976,1192,1162,1177,1220,1131,1191,963,963,-1647,961,780,-1663,558,558,994,993,437,408,393,407,829,978,813,797,947,-1743,721,721,377,392,844,950,828,890,706,706,812,859,796,960,948,843,934,874,571,571,-1919,690,555,689,421,346,539,539,944,779,918,873,932,842,903,888,570,570,931,917,674,674,-2575,1562,-2591,1609,-2607,1654,1322,1322,1441,1441,1696,1546,1683,1593,1669,1624,1426,1426,1321,1321,1639,1680,1425,1425,1305,1305,1545,1668,1608,1623,1667,1592,1638,1666,1320,1320,1652,1607,1409,1409,1304,1304,1288,1288,1664,1637,1395,1395,1335,1335,1622,1636,1394,1394,1319,1319,1606,1621,1392,1392,1137,1137,1137,1137,345,390,360,375,404,373,1047,-2751,-2767,-2783,1062,1121,1046,-2799,1077,-2815,1106,1061,789,789,1105,1104,263,355,310,340,325,354,352,262,339,324,1091,1076,1029,1090,1060,1075,833,833,788,788,1088,1028,818,818,803,803,561,561,531,531,816,771,546,546,289,274,288,258, -253,-317,-381,-446,-478,-509,1279,1279,-811,-1179,-1451,-1756,-1900,-2028,-2189,-2253,-2333,-2414,-2445,-2511,-2526,1313,1298,-2559,1041,1041,1040,1040,1025,1025,1024,1024,1022,1007,1021,991,1020,975,1019,959,687,687,1018,1017,671,671,655,655,1016,1015,639,639,758,758,623,623,757,607,756,591,755,575,754,559,543,543,1009,783,-575,-621,-685,-749,496,-590,750,749,734,748,974,989,1003,958,988,973,1002,942,987,957,972,1001,926,986,941,971,956,1000,910,985,925,999,894,970,-1071,-1087,-1102,1390,-1135,1436,1509,1451,1374,-1151,1405,1358,1480,1420,-1167,1507,1494,1389,1342,1465,1435,1450,1326,1505,1310,1493,1373,1479,1404,1492,1464,1419,428,443,472,397,736,526,464,464,486,457,442,471,484,482,1357,1449,1434,1478,1388,1491,1341,1490,1325,1489,1463,1403,1309,1477,1372,1448,1418,1433,1476,1356,1462,1387,-1439,1475,1340,1447,1402,1474,1324,1461,1371,1473,269,448,1432,1417,1308,1460,-1711,1459,-1727,1441,1099,1099,1446,1386,1431,1401,-1743,1289,1083,1083,1160,1160,1458,1445,1067,1067,1370,1457,1307,1430,1129,1129,1098,1098,268,432,267,416,266,400,-1887,1144,1187,1082,1173,1113,1186,1066,1050,1158,1128,1143,1172,1097,1171,1081,420,391,1157,1112,1170,1142,1127,1065,1169,1049,1156,1096,1141,1111,1155,1080,1126,1154,1064,1153,1140,1095,1048,-2159,1125,1110,1137,-2175,823,823,1139,1138,807,807,384,264,368,263,868,838,853,791,867,822,852,837,866,806,865,790,-2319,851,821,836,352,262,850,805,849,-2399,533,533,835,820,336,261,578,548,563,577,532,532,832,772,562,562,547,547,305,275,560,515,290,290,288,258 }; static const drmp3_uint8 tab32[] = { 130,162,193,209,44,28,76,140,9,9,9,9,9,9,9,9,190,254,222,238,126,94,157,157,109,61,173,205}; static const drmp3_uint8 tab33[] = { 252,236,220,204,188,172,156,140,124,108,92,76,60,44,28,12 }; static const drmp3_int16 tabindex[2*16] = { 0,32,64,98,0,132,180,218,292,364,426,538,648,746,0,1126,1460,1460,1460,1460,1460,1460,1460,1460,1842,1842,1842,1842,1842,1842,1842,1842 }; static const drmp3_uint8 g_linbits[] = { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,3,4,6,8,10,13,4,5,6,7,8,9,11,13 }; #define DRMP3_PEEK_BITS(n) (bs_cache >> (32 - n)) #define DRMP3_FLUSH_BITS(n) { bs_cache <<= (n); bs_sh += (n); } #define DRMP3_CHECK_BITS while (bs_sh >= 0) { bs_cache |= (drmp3_uint32)*bs_next_ptr++ << bs_sh; bs_sh -= 8; } #define DRMP3_BSPOS ((bs_next_ptr - bs->buf)*8 - 24 + bs_sh) float one = 0.0f; int ireg = 0, big_val_cnt = gr_info->big_values; const drmp3_uint8 *sfb = gr_info->sfbtab; const drmp3_uint8 *bs_next_ptr = bs->buf + bs->pos/8; drmp3_uint32 bs_cache = (((bs_next_ptr[0]*256u + bs_next_ptr[1])*256u + bs_next_ptr[2])*256u + bs_next_ptr[3]) << (bs->pos & 7); int pairs_to_decode, np, bs_sh = (bs->pos & 7) - 8; bs_next_ptr += 4; while (big_val_cnt > 0) { int tab_num = gr_info->table_select[ireg]; int sfb_cnt = gr_info->region_count[ireg++]; const drmp3_int16 *codebook = tabs + tabindex[tab_num]; int linbits = g_linbits[tab_num]; do { np = *sfb++ / 2; pairs_to_decode = DRMP3_MIN(big_val_cnt, np); one = *scf++; do { int j, w = 5; int leaf = codebook[DRMP3_PEEK_BITS(w)]; while (leaf < 0) { DRMP3_FLUSH_BITS(w); w = leaf & 7; leaf = codebook[DRMP3_PEEK_BITS(w) - (leaf >> 3)]; } DRMP3_FLUSH_BITS(leaf >> 8); for (j = 0; j < 2; j++, dst++, leaf >>= 4) { int lsb = leaf & 0x0F; if (lsb == 15 && linbits) { lsb += DRMP3_PEEK_BITS(linbits); DRMP3_FLUSH_BITS(linbits); DRMP3_CHECK_BITS; *dst = one*drmp3_L3_pow_43(lsb)*((int32_t)bs_cache < 0 ? -1: 1); } else { *dst = g_drmp3_pow43[16 + lsb - 16*(bs_cache >> 31)]*one; } DRMP3_FLUSH_BITS(lsb ? 1 : 0); } DRMP3_CHECK_BITS; } while (--pairs_to_decode); } while ((big_val_cnt -= np) > 0 && --sfb_cnt >= 0); } for (np = 1 - big_val_cnt;; dst += 4) { const drmp3_uint8 *codebook_count1 = (gr_info->count1_table) ? tab33 : tab32; int leaf = codebook_count1[DRMP3_PEEK_BITS(4)]; if (!(leaf & 8)) { leaf = codebook_count1[(leaf >> 3) + (bs_cache << 4 >> (32 - (leaf & 3)))]; } DRMP3_FLUSH_BITS(leaf & 7); if (DRMP3_BSPOS > layer3gr_limit) { break; } #define DRMP3_RELOAD_SCALEFACTOR if (!--np) { np = *sfb++/2; if (!np) break; one = *scf++; } #define DRMP3_DEQ_COUNT1(s) if (leaf & (128 >> s)) { dst[s] = ((drmp3_int32)bs_cache < 0) ? -one : one; DRMP3_FLUSH_BITS(1) } DRMP3_RELOAD_SCALEFACTOR; DRMP3_DEQ_COUNT1(0); DRMP3_DEQ_COUNT1(1); DRMP3_RELOAD_SCALEFACTOR; DRMP3_DEQ_COUNT1(2); DRMP3_DEQ_COUNT1(3); DRMP3_CHECK_BITS; } bs->pos = layer3gr_limit; } static void drmp3_L3_midside_stereo(float *left, int n) { int i = 0; float *right = left + 576; #if DRMP3_HAVE_SIMD if (drmp3_have_simd()) for (; i < n - 3; i += 4) { drmp3_f4 vl = DRMP3_VLD(left + i); drmp3_f4 vr = DRMP3_VLD(right + i); DRMP3_VSTORE(left + i, DRMP3_VADD(vl, vr)); DRMP3_VSTORE(right + i, DRMP3_VSUB(vl, vr)); } #endif for (; i < n; i++) { float a = left[i]; float b = right[i]; left[i] = a + b; right[i] = a - b; } } static void drmp3_L3_intensity_stereo_band(float *left, int n, float kl, float kr) { int i; for (i = 0; i < n; i++) { left[i + 576] = left[i]*kr; left[i] = left[i]*kl; } } static void drmp3_L3_stereo_top_band(const float *right, const drmp3_uint8 *sfb, int nbands, int max_band[3]) { int i, k; max_band[0] = max_band[1] = max_band[2] = -1; for (i = 0; i < nbands; i++) { for (k = 0; k < sfb[i]; k += 2) { if (right[k] != 0 || right[k + 1] != 0) { max_band[i % 3] = i; break; } } right += sfb[i]; } } static void drmp3_L3_stereo_process(float *left, const drmp3_uint8 *ist_pos, const drmp3_uint8 *sfb, const drmp3_uint8 *hdr, int max_band[3], int mpeg2_sh) { static const float g_pan[7*2] = { 0,1,0.21132487f,0.78867513f,0.36602540f,0.63397460f,0.5f,0.5f,0.63397460f,0.36602540f,0.78867513f,0.21132487f,1,0 }; unsigned i, max_pos = DRMP3_HDR_TEST_MPEG1(hdr) ? 7 : 64; for (i = 0; sfb[i]; i++) { unsigned ipos = ist_pos[i]; if ((int)i > max_band[i % 3] && ipos < max_pos) { float kl, kr, s = DRMP3_HDR_TEST_MS_STEREO(hdr) ? 1.41421356f : 1; if (DRMP3_HDR_TEST_MPEG1(hdr)) { kl = g_pan[2*ipos]; kr = g_pan[2*ipos + 1]; } else { kl = 1; kr = drmp3_L3_ldexp_q2(1, (ipos + 1) >> 1 << mpeg2_sh); if (ipos & 1) { kl = kr; kr = 1; } } drmp3_L3_intensity_stereo_band(left, sfb[i], kl*s, kr*s); } else if (DRMP3_HDR_TEST_MS_STEREO(hdr)) { drmp3_L3_midside_stereo(left, sfb[i]); } left += sfb[i]; } } static void drmp3_L3_intensity_stereo(float *left, drmp3_uint8 *ist_pos, const drmp3_L3_gr_info *gr, const drmp3_uint8 *hdr) { int max_band[3], n_sfb = gr->n_long_sfb + gr->n_short_sfb; int i, max_blocks = gr->n_short_sfb ? 3 : 1; drmp3_L3_stereo_top_band(left + 576, gr->sfbtab, n_sfb, max_band); if (gr->n_long_sfb) { max_band[0] = max_band[1] = max_band[2] = DRMP3_MAX(DRMP3_MAX(max_band[0], max_band[1]), max_band[2]); } for (i = 0; i < max_blocks; i++) { int default_pos = DRMP3_HDR_TEST_MPEG1(hdr) ? 3 : 0; int itop = n_sfb - max_blocks + i; int prev = itop - max_blocks; ist_pos[itop] = (drmp3_uint8)(max_band[i] >= prev ? default_pos : ist_pos[prev]); } drmp3_L3_stereo_process(left, ist_pos, gr->sfbtab, hdr, max_band, gr[1].scalefac_compress & 1); } static void drmp3_L3_reorder(float *grbuf, float *scratch, const drmp3_uint8 *sfb) { int i, len; float *src = grbuf, *dst = scratch; for (;0 != (len = *sfb); sfb += 3, src += 2*len) { for (i = 0; i < len; i++, src++) { *dst++ = src[0*len]; *dst++ = src[1*len]; *dst++ = src[2*len]; } } memcpy(grbuf, scratch, (dst - scratch)*sizeof(float)); } static void drmp3_L3_antialias(float *grbuf, int nbands) { static const float g_aa[2][8] = { {0.85749293f,0.88174200f,0.94962865f,0.98331459f,0.99551782f,0.99916056f,0.99989920f,0.99999316f}, {0.51449576f,0.47173197f,0.31337745f,0.18191320f,0.09457419f,0.04096558f,0.01419856f,0.00369997f} }; for (; nbands > 0; nbands--, grbuf += 18) { int i = 0; #if DRMP3_HAVE_SIMD if (drmp3_have_simd()) for (; i < 8; i += 4) { drmp3_f4 vu = DRMP3_VLD(grbuf + 18 + i); drmp3_f4 vd = DRMP3_VLD(grbuf + 14 - i); drmp3_f4 vc0 = DRMP3_VLD(g_aa[0] + i); drmp3_f4 vc1 = DRMP3_VLD(g_aa[1] + i); vd = DRMP3_VREV(vd); DRMP3_VSTORE(grbuf + 18 + i, DRMP3_VSUB(DRMP3_VMUL(vu, vc0), DRMP3_VMUL(vd, vc1))); vd = DRMP3_VADD(DRMP3_VMUL(vu, vc1), DRMP3_VMUL(vd, vc0)); DRMP3_VSTORE(grbuf + 14 - i, DRMP3_VREV(vd)); } #endif #ifndef DR_MP3_ONLY_SIMD for(; i < 8; i++) { float u = grbuf[18 + i]; float d = grbuf[17 - i]; grbuf[18 + i] = u*g_aa[0][i] - d*g_aa[1][i]; grbuf[17 - i] = u*g_aa[1][i] + d*g_aa[0][i]; } #endif } } static void drmp3_L3_dct3_9(float *y) { float s0, s1, s2, s3, s4, s5, s6, s7, s8, t0, t2, t4; s0 = y[0]; s2 = y[2]; s4 = y[4]; s6 = y[6]; s8 = y[8]; t0 = s0 + s6*0.5f; s0 -= s6; t4 = (s4 + s2)*0.93969262f; t2 = (s8 + s2)*0.76604444f; s6 = (s4 - s8)*0.17364818f; s4 += s8 - s2; s2 = s0 - s4*0.5f; y[4] = s4 + s0; s8 = t0 - t2 + s6; s0 = t0 - t4 + t2; s4 = t0 + t4 - s6; s1 = y[1]; s3 = y[3]; s5 = y[5]; s7 = y[7]; s3 *= 0.86602540f; t0 = (s5 + s1)*0.98480775f; t4 = (s5 - s7)*0.34202014f; t2 = (s1 + s7)*0.64278761f; s1 = (s1 - s5 - s7)*0.86602540f; s5 = t0 - s3 - t2; s7 = t4 - s3 - t0; s3 = t4 + s3 - t2; y[0] = s4 - s7; y[1] = s2 + s1; y[2] = s0 - s3; y[3] = s8 + s5; y[5] = s8 - s5; y[6] = s0 + s3; y[7] = s2 - s1; y[8] = s4 + s7; } static void drmp3_L3_imdct36(float *grbuf, float *overlap, const float *window, int nbands) { int i, j; static const float g_twid9[18] = { 0.73727734f,0.79335334f,0.84339145f,0.88701083f,0.92387953f,0.95371695f,0.97629601f,0.99144486f,0.99904822f,0.67559021f,0.60876143f,0.53729961f,0.46174861f,0.38268343f,0.30070580f,0.21643961f,0.13052619f,0.04361938f }; for (j = 0; j < nbands; j++, grbuf += 18, overlap += 9) { float co[9], si[9]; co[0] = -grbuf[0]; si[0] = grbuf[17]; for (i = 0; i < 4; i++) { si[8 - 2*i] = grbuf[4*i + 1] - grbuf[4*i + 2]; co[1 + 2*i] = grbuf[4*i + 1] + grbuf[4*i + 2]; si[7 - 2*i] = grbuf[4*i + 4] - grbuf[4*i + 3]; co[2 + 2*i] = -(grbuf[4*i + 3] + grbuf[4*i + 4]); } drmp3_L3_dct3_9(co); drmp3_L3_dct3_9(si); si[1] = -si[1]; si[3] = -si[3]; si[5] = -si[5]; si[7] = -si[7]; i = 0; #if DRMP3_HAVE_SIMD if (drmp3_have_simd()) for (; i < 8; i += 4) { drmp3_f4 vovl = DRMP3_VLD(overlap + i); drmp3_f4 vc = DRMP3_VLD(co + i); drmp3_f4 vs = DRMP3_VLD(si + i); drmp3_f4 vr0 = DRMP3_VLD(g_twid9 + i); drmp3_f4 vr1 = DRMP3_VLD(g_twid9 + 9 + i); drmp3_f4 vw0 = DRMP3_VLD(window + i); drmp3_f4 vw1 = DRMP3_VLD(window + 9 + i); drmp3_f4 vsum = DRMP3_VADD(DRMP3_VMUL(vc, vr1), DRMP3_VMUL(vs, vr0)); DRMP3_VSTORE(overlap + i, DRMP3_VSUB(DRMP3_VMUL(vc, vr0), DRMP3_VMUL(vs, vr1))); DRMP3_VSTORE(grbuf + i, DRMP3_VSUB(DRMP3_VMUL(vovl, vw0), DRMP3_VMUL(vsum, vw1))); vsum = DRMP3_VADD(DRMP3_VMUL(vovl, vw1), DRMP3_VMUL(vsum, vw0)); DRMP3_VSTORE(grbuf + 14 - i, DRMP3_VREV(vsum)); } #endif for (; i < 9; i++) { float ovl = overlap[i]; float sum = co[i]*g_twid9[9 + i] + si[i]*g_twid9[0 + i]; overlap[i] = co[i]*g_twid9[0 + i] - si[i]*g_twid9[9 + i]; grbuf[i] = ovl*window[0 + i] - sum*window[9 + i]; grbuf[17 - i] = ovl*window[9 + i] + sum*window[0 + i]; } } } static void drmp3_L3_idct3(float x0, float x1, float x2, float *dst) { float m1 = x1*0.86602540f; float a1 = x0 - x2*0.5f; dst[1] = x0 + x2; dst[0] = a1 + m1; dst[2] = a1 - m1; } static void drmp3_L3_imdct12(float *x, float *dst, float *overlap) { static const float g_twid3[6] = { 0.79335334f,0.92387953f,0.99144486f, 0.60876143f,0.38268343f,0.13052619f }; float co[3], si[3]; int i; drmp3_L3_idct3(-x[0], x[6] + x[3], x[12] + x[9], co); drmp3_L3_idct3(x[15], x[12] - x[9], x[6] - x[3], si); si[1] = -si[1]; for (i = 0; i < 3; i++) { float ovl = overlap[i]; float sum = co[i]*g_twid3[3 + i] + si[i]*g_twid3[0 + i]; overlap[i] = co[i]*g_twid3[0 + i] - si[i]*g_twid3[3 + i]; dst[i] = ovl*g_twid3[2 - i] - sum*g_twid3[5 - i]; dst[5 - i] = ovl*g_twid3[5 - i] + sum*g_twid3[2 - i]; } } static void drmp3_L3_imdct_short(float *grbuf, float *overlap, int nbands) { for (;nbands > 0; nbands--, overlap += 9, grbuf += 18) { float tmp[18]; memcpy(tmp, grbuf, sizeof(tmp)); memcpy(grbuf, overlap, 6*sizeof(float)); drmp3_L3_imdct12(tmp, grbuf + 6, overlap + 6); drmp3_L3_imdct12(tmp + 1, grbuf + 12, overlap + 6); drmp3_L3_imdct12(tmp + 2, overlap, overlap + 6); } } static void drmp3_L3_change_sign(float *grbuf) { int b, i; for (b = 0, grbuf += 18; b < 32; b += 2, grbuf += 36) for (i = 1; i < 18; i += 2) grbuf[i] = -grbuf[i]; } static void drmp3_L3_imdct_gr(float *grbuf, float *overlap, unsigned block_type, unsigned n_long_bands) { static const float g_mdct_window[2][18] = { { 0.99904822f,0.99144486f,0.97629601f,0.95371695f,0.92387953f,0.88701083f,0.84339145f,0.79335334f,0.73727734f,0.04361938f,0.13052619f,0.21643961f,0.30070580f,0.38268343f,0.46174861f,0.53729961f,0.60876143f,0.67559021f }, { 1,1,1,1,1,1,0.99144486f,0.92387953f,0.79335334f,0,0,0,0,0,0,0.13052619f,0.38268343f,0.60876143f } }; if (n_long_bands) { drmp3_L3_imdct36(grbuf, overlap, g_mdct_window[0], n_long_bands); grbuf += 18*n_long_bands; overlap += 9*n_long_bands; } if (block_type == DRMP3_SHORT_BLOCK_TYPE) drmp3_L3_imdct_short(grbuf, overlap, 32 - n_long_bands); else drmp3_L3_imdct36(grbuf, overlap, g_mdct_window[block_type == DRMP3_STOP_BLOCK_TYPE], 32 - n_long_bands); } static void drmp3_L3_save_reservoir(drmp3dec *h, drmp3dec_scratch *s) { int pos = (s->bs.pos + 7)/8u; int remains = s->bs.limit/8u - pos; if (remains > DRMP3_MAX_BITRESERVOIR_BYTES) { pos += remains - DRMP3_MAX_BITRESERVOIR_BYTES; remains = DRMP3_MAX_BITRESERVOIR_BYTES; } if (remains > 0) { memmove(h->reserv_buf, s->maindata + pos, remains); } h->reserv = remains; } static int drmp3_L3_restore_reservoir(drmp3dec *h, drmp3_bs *bs, drmp3dec_scratch *s, int main_data_begin) { int frame_bytes = (bs->limit - bs->pos)/8; int bytes_have = DRMP3_MIN(h->reserv, main_data_begin); memcpy(s->maindata, h->reserv_buf + DRMP3_MAX(0, h->reserv - main_data_begin), DRMP3_MIN(h->reserv, main_data_begin)); memcpy(s->maindata + bytes_have, bs->buf + bs->pos/8, frame_bytes); drmp3_bs_init(&s->bs, s->maindata, bytes_have + frame_bytes); return h->reserv >= main_data_begin; } static void drmp3_L3_decode(drmp3dec *h, drmp3dec_scratch *s, drmp3_L3_gr_info *gr_info, int nch) { int ch; for (ch = 0; ch < nch; ch++) { int layer3gr_limit = s->bs.pos + gr_info[ch].part_23_length; drmp3_L3_decode_scalefactors(h->header, s->ist_pos[ch], &s->bs, gr_info + ch, s->scf, ch); drmp3_L3_huffman(s->grbuf[ch], &s->bs, gr_info + ch, s->scf, layer3gr_limit); } if (DRMP3_HDR_TEST_I_STEREO(h->header)) { drmp3_L3_intensity_stereo(s->grbuf[0], s->ist_pos[1], gr_info, h->header); } else if (DRMP3_HDR_IS_MS_STEREO(h->header)) { drmp3_L3_midside_stereo(s->grbuf[0], 576); } for (ch = 0; ch < nch; ch++, gr_info++) { int aa_bands = 31; int n_long_bands = (gr_info->mixed_block_flag ? 2 : 0) << (int)(DRMP3_HDR_GET_MY_SAMPLE_RATE(h->header) == 2); if (gr_info->n_short_sfb) { aa_bands = n_long_bands - 1; drmp3_L3_reorder(s->grbuf[ch] + n_long_bands*18, s->syn[0], gr_info->sfbtab + gr_info->n_long_sfb); } drmp3_L3_antialias(s->grbuf[ch], aa_bands); drmp3_L3_imdct_gr(s->grbuf[ch], h->mdct_overlap[ch], gr_info->block_type, n_long_bands); drmp3_L3_change_sign(s->grbuf[ch]); } } static void drmp3d_DCT_II(float *grbuf, int n) { static const float g_sec[24] = { 10.19000816f,0.50060302f,0.50241929f,3.40760851f,0.50547093f,0.52249861f,2.05778098f,0.51544732f,0.56694406f,1.48416460f,0.53104258f,0.64682180f,1.16943991f,0.55310392f,0.78815460f,0.97256821f,0.58293498f,1.06067765f,0.83934963f,0.62250412f,1.72244716f,0.74453628f,0.67480832f,5.10114861f }; int i, k = 0; #if DRMP3_HAVE_SIMD if (drmp3_have_simd()) for (; k < n; k += 4) { drmp3_f4 t[4][8], *x; float *y = grbuf + k; for (x = t[0], i = 0; i < 8; i++, x++) { drmp3_f4 x0 = DRMP3_VLD(&y[i*18]); drmp3_f4 x1 = DRMP3_VLD(&y[(15 - i)*18]); drmp3_f4 x2 = DRMP3_VLD(&y[(16 + i)*18]); drmp3_f4 x3 = DRMP3_VLD(&y[(31 - i)*18]); drmp3_f4 t0 = DRMP3_VADD(x0, x3); drmp3_f4 t1 = DRMP3_VADD(x1, x2); drmp3_f4 t2 = DRMP3_VMUL_S(DRMP3_VSUB(x1, x2), g_sec[3*i + 0]); drmp3_f4 t3 = DRMP3_VMUL_S(DRMP3_VSUB(x0, x3), g_sec[3*i + 1]); x[0] = DRMP3_VADD(t0, t1); x[8] = DRMP3_VMUL_S(DRMP3_VSUB(t0, t1), g_sec[3*i + 2]); x[16] = DRMP3_VADD(t3, t2); x[24] = DRMP3_VMUL_S(DRMP3_VSUB(t3, t2), g_sec[3*i + 2]); } for (x = t[0], i = 0; i < 4; i++, x += 8) { drmp3_f4 x0 = x[0], x1 = x[1], x2 = x[2], x3 = x[3], x4 = x[4], x5 = x[5], x6 = x[6], x7 = x[7], xt; xt = DRMP3_VSUB(x0, x7); x0 = DRMP3_VADD(x0, x7); x7 = DRMP3_VSUB(x1, x6); x1 = DRMP3_VADD(x1, x6); x6 = DRMP3_VSUB(x2, x5); x2 = DRMP3_VADD(x2, x5); x5 = DRMP3_VSUB(x3, x4); x3 = DRMP3_VADD(x3, x4); x4 = DRMP3_VSUB(x0, x3); x0 = DRMP3_VADD(x0, x3); x3 = DRMP3_VSUB(x1, x2); x1 = DRMP3_VADD(x1, x2); x[0] = DRMP3_VADD(x0, x1); x[4] = DRMP3_VMUL_S(DRMP3_VSUB(x0, x1), 0.70710677f); x5 = DRMP3_VADD(x5, x6); x6 = DRMP3_VMUL_S(DRMP3_VADD(x6, x7), 0.70710677f); x7 = DRMP3_VADD(x7, xt); x3 = DRMP3_VMUL_S(DRMP3_VADD(x3, x4), 0.70710677f); x5 = DRMP3_VSUB(x5, DRMP3_VMUL_S(x7, 0.198912367f)); /* rotate by PI/8 */ x7 = DRMP3_VADD(x7, DRMP3_VMUL_S(x5, 0.382683432f)); x5 = DRMP3_VSUB(x5, DRMP3_VMUL_S(x7, 0.198912367f)); x0 = DRMP3_VSUB(xt, x6); xt = DRMP3_VADD(xt, x6); x[1] = DRMP3_VMUL_S(DRMP3_VADD(xt, x7), 0.50979561f); x[2] = DRMP3_VMUL_S(DRMP3_VADD(x4, x3), 0.54119611f); x[3] = DRMP3_VMUL_S(DRMP3_VSUB(x0, x5), 0.60134488f); x[5] = DRMP3_VMUL_S(DRMP3_VADD(x0, x5), 0.89997619f); x[6] = DRMP3_VMUL_S(DRMP3_VSUB(x4, x3), 1.30656302f); x[7] = DRMP3_VMUL_S(DRMP3_VSUB(xt, x7), 2.56291556f); } if (k > n - 3) { #if DRMP3_HAVE_SSE #define DRMP3_VSAVE2(i, v) _mm_storel_pi((__m64 *)(void*)&y[i*18], v) #else #define DRMP3_VSAVE2(i, v) vst1_f32((float32_t *)&y[i*18], vget_low_f32(v)) #endif for (i = 0; i < 7; i++, y += 4*18) { drmp3_f4 s = DRMP3_VADD(t[3][i], t[3][i + 1]); DRMP3_VSAVE2(0, t[0][i]); DRMP3_VSAVE2(1, DRMP3_VADD(t[2][i], s)); DRMP3_VSAVE2(2, DRMP3_VADD(t[1][i], t[1][i + 1])); DRMP3_VSAVE2(3, DRMP3_VADD(t[2][1 + i], s)); } DRMP3_VSAVE2(0, t[0][7]); DRMP3_VSAVE2(1, DRMP3_VADD(t[2][7], t[3][7])); DRMP3_VSAVE2(2, t[1][7]); DRMP3_VSAVE2(3, t[3][7]); } else { #define DRMP3_VSAVE4(i, v) DRMP3_VSTORE(&y[i*18], v) for (i = 0; i < 7; i++, y += 4*18) { drmp3_f4 s = DRMP3_VADD(t[3][i], t[3][i + 1]); DRMP3_VSAVE4(0, t[0][i]); DRMP3_VSAVE4(1, DRMP3_VADD(t[2][i], s)); DRMP3_VSAVE4(2, DRMP3_VADD(t[1][i], t[1][i + 1])); DRMP3_VSAVE4(3, DRMP3_VADD(t[2][1 + i], s)); } DRMP3_VSAVE4(0, t[0][7]); DRMP3_VSAVE4(1, DRMP3_VADD(t[2][7], t[3][7])); DRMP3_VSAVE4(2, t[1][7]); DRMP3_VSAVE4(3, t[3][7]); } } else #endif #ifdef DR_MP3_ONLY_SIMD {} #else for (; k < n; k++) { float t[4][8], *x, *y = grbuf + k; for (x = t[0], i = 0; i < 8; i++, x++) { float x0 = y[i*18]; float x1 = y[(15 - i)*18]; float x2 = y[(16 + i)*18]; float x3 = y[(31 - i)*18]; float t0 = x0 + x3; float t1 = x1 + x2; float t2 = (x1 - x2)*g_sec[3*i + 0]; float t3 = (x0 - x3)*g_sec[3*i + 1]; x[0] = t0 + t1; x[8] = (t0 - t1)*g_sec[3*i + 2]; x[16] = t3 + t2; x[24] = (t3 - t2)*g_sec[3*i + 2]; } for (x = t[0], i = 0; i < 4; i++, x += 8) { float x0 = x[0], x1 = x[1], x2 = x[2], x3 = x[3], x4 = x[4], x5 = x[5], x6 = x[6], x7 = x[7], xt; xt = x0 - x7; x0 += x7; x7 = x1 - x6; x1 += x6; x6 = x2 - x5; x2 += x5; x5 = x3 - x4; x3 += x4; x4 = x0 - x3; x0 += x3; x3 = x1 - x2; x1 += x2; x[0] = x0 + x1; x[4] = (x0 - x1)*0.70710677f; x5 = x5 + x6; x6 = (x6 + x7)*0.70710677f; x7 = x7 + xt; x3 = (x3 + x4)*0.70710677f; x5 -= x7*0.198912367f; /* rotate by PI/8 */ x7 += x5*0.382683432f; x5 -= x7*0.198912367f; x0 = xt - x6; xt += x6; x[1] = (xt + x7)*0.50979561f; x[2] = (x4 + x3)*0.54119611f; x[3] = (x0 - x5)*0.60134488f; x[5] = (x0 + x5)*0.89997619f; x[6] = (x4 - x3)*1.30656302f; x[7] = (xt - x7)*2.56291556f; } for (i = 0; i < 7; i++, y += 4*18) { y[0*18] = t[0][i]; y[1*18] = t[2][i] + t[3][i] + t[3][i + 1]; y[2*18] = t[1][i] + t[1][i + 1]; y[3*18] = t[2][i + 1] + t[3][i] + t[3][i + 1]; } y[0*18] = t[0][7]; y[1*18] = t[2][7] + t[3][7]; y[2*18] = t[1][7]; y[3*18] = t[3][7]; } #endif } #ifndef DR_MP3_FLOAT_OUTPUT typedef drmp3_int16 drmp3d_sample_t; static drmp3_int16 drmp3d_scale_pcm(float sample) { if (sample >= 32766.5) return (drmp3_int16) 32767; if (sample <= -32767.5) return (drmp3_int16)-32768; drmp3_int16 s = (drmp3_int16)(sample + .5f); s -= (s < 0); /* away from zero, to be compliant */ return (drmp3_int16)s; } #else typedef float drmp3d_sample_t; static float drmp3d_scale_pcm(float sample) { return sample*(1.f/32768.f); } #endif static void drmp3d_synth_pair(drmp3d_sample_t *pcm, int nch, const float *z) { float a; a = (z[14*64] - z[ 0]) * 29; a += (z[ 1*64] + z[13*64]) * 213; a += (z[12*64] - z[ 2*64]) * 459; a += (z[ 3*64] + z[11*64]) * 2037; a += (z[10*64] - z[ 4*64]) * 5153; a += (z[ 5*64] + z[ 9*64]) * 6574; a += (z[ 8*64] - z[ 6*64]) * 37489; a += z[ 7*64] * 75038; pcm[0] = drmp3d_scale_pcm(a); z += 2; a = z[14*64] * 104; a += z[12*64] * 1567; a += z[10*64] * 9727; a += z[ 8*64] * 64019; a += z[ 6*64] * -9975; a += z[ 4*64] * -45; a += z[ 2*64] * 146; a += z[ 0*64] * -5; pcm[16*nch] = drmp3d_scale_pcm(a); } static void drmp3d_synth(float *xl, drmp3d_sample_t *dstl, int nch, float *lins) { int i; float *xr = xl + 576*(nch - 1); drmp3d_sample_t *dstr = dstl + (nch - 1); static const float g_win[] = { -1,26,-31,208,218,401,-519,2063,2000,4788,-5517,7134,5959,35640,-39336,74992, -1,24,-35,202,222,347,-581,2080,1952,4425,-5879,7640,5288,33791,-41176,74856, -1,21,-38,196,225,294,-645,2087,1893,4063,-6237,8092,4561,31947,-43006,74630, -1,19,-41,190,227,244,-711,2085,1822,3705,-6589,8492,3776,30112,-44821,74313, -1,17,-45,183,228,197,-779,2075,1739,3351,-6935,8840,2935,28289,-46617,73908, -1,16,-49,176,228,153,-848,2057,1644,3004,-7271,9139,2037,26482,-48390,73415, -2,14,-53,169,227,111,-919,2032,1535,2663,-7597,9389,1082,24694,-50137,72835, -2,13,-58,161,224,72,-991,2001,1414,2330,-7910,9592,70,22929,-51853,72169, -2,11,-63,154,221,36,-1064,1962,1280,2006,-8209,9750,-998,21189,-53534,71420, -2,10,-68,147,215,2,-1137,1919,1131,1692,-8491,9863,-2122,19478,-55178,70590, -3,9,-73,139,208,-29,-1210,1870,970,1388,-8755,9935,-3300,17799,-56778,69679, -3,8,-79,132,200,-57,-1283,1817,794,1095,-8998,9966,-4533,16155,-58333,68692, -4,7,-85,125,189,-83,-1356,1759,605,814,-9219,9959,-5818,14548,-59838,67629, -4,7,-91,117,177,-106,-1428,1698,402,545,-9416,9916,-7154,12980,-61289,66494, -5,6,-97,111,163,-127,-1498,1634,185,288,-9585,9838,-8540,11455,-62684,65290 }; float *zlin = lins + 15*64; const float *w = g_win; zlin[4*15] = xl[18*16]; zlin[4*15 + 1] = xr[18*16]; zlin[4*15 + 2] = xl[0]; zlin[4*15 + 3] = xr[0]; zlin[4*31] = xl[1 + 18*16]; zlin[4*31 + 1] = xr[1 + 18*16]; zlin[4*31 + 2] = xl[1]; zlin[4*31 + 3] = xr[1]; drmp3d_synth_pair(dstr, nch, lins + 4*15 + 1); drmp3d_synth_pair(dstr + 32*nch, nch, lins + 4*15 + 64 + 1); drmp3d_synth_pair(dstl, nch, lins + 4*15); drmp3d_synth_pair(dstl + 32*nch, nch, lins + 4*15 + 64); #if DRMP3_HAVE_SIMD if (drmp3_have_simd()) for (i = 14; i >= 0; i--) { #define DRMP3_VLOAD(k) drmp3_f4 w0 = DRMP3_VSET(*w++); drmp3_f4 w1 = DRMP3_VSET(*w++); drmp3_f4 vz = DRMP3_VLD(&zlin[4*i - 64*k]); drmp3_f4 vy = DRMP3_VLD(&zlin[4*i - 64*(15 - k)]); #define DRMP3_V0(k) { DRMP3_VLOAD(k) b = DRMP3_VADD(DRMP3_VMUL(vz, w1), DRMP3_VMUL(vy, w0)) ; a = DRMP3_VSUB(DRMP3_VMUL(vz, w0), DRMP3_VMUL(vy, w1)); } #define DRMP3_V1(k) { DRMP3_VLOAD(k) b = DRMP3_VADD(b, DRMP3_VADD(DRMP3_VMUL(vz, w1), DRMP3_VMUL(vy, w0))); a = DRMP3_VADD(a, DRMP3_VSUB(DRMP3_VMUL(vz, w0), DRMP3_VMUL(vy, w1))); } #define DRMP3_V2(k) { DRMP3_VLOAD(k) b = DRMP3_VADD(b, DRMP3_VADD(DRMP3_VMUL(vz, w1), DRMP3_VMUL(vy, w0))); a = DRMP3_VADD(a, DRMP3_VSUB(DRMP3_VMUL(vy, w1), DRMP3_VMUL(vz, w0))); } drmp3_f4 a, b; zlin[4*i] = xl[18*(31 - i)]; zlin[4*i + 1] = xr[18*(31 - i)]; zlin[4*i + 2] = xl[1 + 18*(31 - i)]; zlin[4*i + 3] = xr[1 + 18*(31 - i)]; zlin[4*i + 64] = xl[1 + 18*(1 + i)]; zlin[4*i + 64 + 1] = xr[1 + 18*(1 + i)]; zlin[4*i - 64 + 2] = xl[18*(1 + i)]; zlin[4*i - 64 + 3] = xr[18*(1 + i)]; DRMP3_V0(0) DRMP3_V2(1) DRMP3_V1(2) DRMP3_V2(3) DRMP3_V1(4) DRMP3_V2(5) DRMP3_V1(6) DRMP3_V2(7) { #ifndef DR_MP3_FLOAT_OUTPUT #if DRMP3_HAVE_SSE static const drmp3_f4 g_max = { 32767.0f, 32767.0f, 32767.0f, 32767.0f }; static const drmp3_f4 g_min = { -32768.0f, -32768.0f, -32768.0f, -32768.0f }; __m128i pcm8 = _mm_packs_epi32(_mm_cvtps_epi32(_mm_max_ps(_mm_min_ps(a, g_max), g_min)), _mm_cvtps_epi32(_mm_max_ps(_mm_min_ps(b, g_max), g_min))); dstr[(15 - i)*nch] = (drmp3_int16)_mm_extract_epi16(pcm8, 1); dstr[(17 + i)*nch] = (drmp3_int16)_mm_extract_epi16(pcm8, 5); dstl[(15 - i)*nch] = (drmp3_int16)_mm_extract_epi16(pcm8, 0); dstl[(17 + i)*nch] = (drmp3_int16)_mm_extract_epi16(pcm8, 4); dstr[(47 - i)*nch] = (drmp3_int16)_mm_extract_epi16(pcm8, 3); dstr[(49 + i)*nch] = (drmp3_int16)_mm_extract_epi16(pcm8, 7); dstl[(47 - i)*nch] = (drmp3_int16)_mm_extract_epi16(pcm8, 2); dstl[(49 + i)*nch] = (drmp3_int16)_mm_extract_epi16(pcm8, 6); #else int16x4_t pcma, pcmb; a = DRMP3_VADD(a, DRMP3_VSET(0.5f)); b = DRMP3_VADD(b, DRMP3_VSET(0.5f)); pcma = vqmovn_s32(vqaddq_s32(vcvtq_s32_f32(a), vreinterpretq_s32_u32(vcltq_f32(a, DRMP3_VSET(0))))); pcmb = vqmovn_s32(vqaddq_s32(vcvtq_s32_f32(b), vreinterpretq_s32_u32(vcltq_f32(b, DRMP3_VSET(0))))); vst1_lane_s16(dstr + (15 - i)*nch, pcma, 1); vst1_lane_s16(dstr + (17 + i)*nch, pcmb, 1); vst1_lane_s16(dstl + (15 - i)*nch, pcma, 0); vst1_lane_s16(dstl + (17 + i)*nch, pcmb, 0); vst1_lane_s16(dstr + (47 - i)*nch, pcma, 3); vst1_lane_s16(dstr + (49 + i)*nch, pcmb, 3); vst1_lane_s16(dstl + (47 - i)*nch, pcma, 2); vst1_lane_s16(dstl + (49 + i)*nch, pcmb, 2); #endif #else static const drmp3_f4 g_scale = { 1.0f/32768.0f, 1.0f/32768.0f, 1.0f/32768.0f, 1.0f/32768.0f }; a = DRMP3_VMUL(a, g_scale); b = DRMP3_VMUL(b, g_scale); #if DRMP3_HAVE_SSE _mm_store_ss(dstr + (15 - i)*nch, _mm_shuffle_ps(a, a, _MM_SHUFFLE(1, 1, 1, 1))); _mm_store_ss(dstr + (17 + i)*nch, _mm_shuffle_ps(b, b, _MM_SHUFFLE(1, 1, 1, 1))); _mm_store_ss(dstl + (15 - i)*nch, _mm_shuffle_ps(a, a, _MM_SHUFFLE(0, 0, 0, 0))); _mm_store_ss(dstl + (17 + i)*nch, _mm_shuffle_ps(b, b, _MM_SHUFFLE(0, 0, 0, 0))); _mm_store_ss(dstr + (47 - i)*nch, _mm_shuffle_ps(a, a, _MM_SHUFFLE(3, 3, 3, 3))); _mm_store_ss(dstr + (49 + i)*nch, _mm_shuffle_ps(b, b, _MM_SHUFFLE(3, 3, 3, 3))); _mm_store_ss(dstl + (47 - i)*nch, _mm_shuffle_ps(a, a, _MM_SHUFFLE(2, 2, 2, 2))); _mm_store_ss(dstl + (49 + i)*nch, _mm_shuffle_ps(b, b, _MM_SHUFFLE(2, 2, 2, 2))); #else vst1q_lane_f32(dstr + (15 - i)*nch, a, 1); vst1q_lane_f32(dstr + (17 + i)*nch, b, 1); vst1q_lane_f32(dstl + (15 - i)*nch, a, 0); vst1q_lane_f32(dstl + (17 + i)*nch, b, 0); vst1q_lane_f32(dstr + (47 - i)*nch, a, 3); vst1q_lane_f32(dstr + (49 + i)*nch, b, 3); vst1q_lane_f32(dstl + (47 - i)*nch, a, 2); vst1q_lane_f32(dstl + (49 + i)*nch, b, 2); #endif #endif /* DR_MP3_FLOAT_OUTPUT */ } } else #endif #ifdef DR_MP3_ONLY_SIMD {} #else for (i = 14; i >= 0; i--) { #define DRMP3_LOAD(k) float w0 = *w++; float w1 = *w++; float *vz = &zlin[4*i - k*64]; float *vy = &zlin[4*i - (15 - k)*64]; #define DRMP3_S0(k) { int j; DRMP3_LOAD(k); for (j = 0; j < 4; j++) b[j] = vz[j]*w1 + vy[j]*w0, a[j] = vz[j]*w0 - vy[j]*w1; } #define DRMP3_S1(k) { int j; DRMP3_LOAD(k); for (j = 0; j < 4; j++) b[j] += vz[j]*w1 + vy[j]*w0, a[j] += vz[j]*w0 - vy[j]*w1; } #define DRMP3_S2(k) { int j; DRMP3_LOAD(k); for (j = 0; j < 4; j++) b[j] += vz[j]*w1 + vy[j]*w0, a[j] += vy[j]*w1 - vz[j]*w0; } float a[4], b[4]; zlin[4*i] = xl[18*(31 - i)]; zlin[4*i + 1] = xr[18*(31 - i)]; zlin[4*i + 2] = xl[1 + 18*(31 - i)]; zlin[4*i + 3] = xr[1 + 18*(31 - i)]; zlin[4*(i + 16)] = xl[1 + 18*(1 + i)]; zlin[4*(i + 16) + 1] = xr[1 + 18*(1 + i)]; zlin[4*(i - 16) + 2] = xl[18*(1 + i)]; zlin[4*(i - 16) + 3] = xr[18*(1 + i)]; DRMP3_S0(0) DRMP3_S2(1) DRMP3_S1(2) DRMP3_S2(3) DRMP3_S1(4) DRMP3_S2(5) DRMP3_S1(6) DRMP3_S2(7) dstr[(15 - i)*nch] = drmp3d_scale_pcm(a[1]); dstr[(17 + i)*nch] = drmp3d_scale_pcm(b[1]); dstl[(15 - i)*nch] = drmp3d_scale_pcm(a[0]); dstl[(17 + i)*nch] = drmp3d_scale_pcm(b[0]); dstr[(47 - i)*nch] = drmp3d_scale_pcm(a[3]); dstr[(49 + i)*nch] = drmp3d_scale_pcm(b[3]); dstl[(47 - i)*nch] = drmp3d_scale_pcm(a[2]); dstl[(49 + i)*nch] = drmp3d_scale_pcm(b[2]); } #endif } static void drmp3d_synth_granule(float *qmf_state, float *grbuf, int nbands, int nch, drmp3d_sample_t *pcm, float *lins) { int i; for (i = 0; i < nch; i++) { drmp3d_DCT_II(grbuf + 576*i, nbands); } memcpy(lins, qmf_state, sizeof(float)*15*64); for (i = 0; i < nbands; i += 2) { drmp3d_synth(grbuf + i, pcm + 32*nch*i, nch, lins + i*64); } #ifndef DR_MP3_NONSTANDARD_BUT_LOGICAL if (nch == 1) { for (i = 0; i < 15*64; i += 2) { qmf_state[i] = lins[nbands*64 + i]; } } else #endif { memcpy(qmf_state, lins + nbands*64, sizeof(float)*15*64); } } static int drmp3d_match_frame(const drmp3_uint8 *hdr, int mp3_bytes, int frame_bytes) { int i, nmatch; for (i = 0, nmatch = 0; nmatch < DRMP3_MAX_FRAME_SYNC_MATCHES; nmatch++) { i += drmp3_hdr_frame_bytes(hdr + i, frame_bytes) + drmp3_hdr_padding(hdr + i); if (i + DRMP3_HDR_SIZE > mp3_bytes) return nmatch > 0; if (!drmp3_hdr_compare(hdr, hdr + i)) return 0; } return 1; } static int drmp3d_find_frame(const drmp3_uint8 *mp3, int mp3_bytes, int *free_format_bytes, int *ptr_frame_bytes) { int i, k; for (i = 0; i < mp3_bytes - DRMP3_HDR_SIZE; i++, mp3++) { if (drmp3_hdr_valid(mp3)) { int frame_bytes = drmp3_hdr_frame_bytes(mp3, *free_format_bytes); int frame_and_padding = frame_bytes + drmp3_hdr_padding(mp3); for (k = DRMP3_HDR_SIZE; !frame_bytes && k < DRMP3_MAX_FREE_FORMAT_FRAME_SIZE && i + 2*k < mp3_bytes - DRMP3_HDR_SIZE; k++) { if (drmp3_hdr_compare(mp3, mp3 + k)) { int fb = k - drmp3_hdr_padding(mp3); int nextfb = fb + drmp3_hdr_padding(mp3 + k); if (i + k + nextfb + DRMP3_HDR_SIZE > mp3_bytes || !drmp3_hdr_compare(mp3, mp3 + k + nextfb)) continue; frame_and_padding = k; frame_bytes = fb; *free_format_bytes = fb; } } if ((frame_bytes && i + frame_and_padding <= mp3_bytes && drmp3d_match_frame(mp3, mp3_bytes - i, frame_bytes)) || (!i && frame_and_padding == mp3_bytes)) { *ptr_frame_bytes = frame_and_padding; return i; } *free_format_bytes = 0; } } *ptr_frame_bytes = 0; return i; } void drmp3dec_init(drmp3dec *dec) { dec->header[0] = 0; } int drmp3dec_decode_frame(drmp3dec *dec, const unsigned char *mp3, int mp3_bytes, void *pcm, drmp3dec_frame_info *info) { int i = 0, igr, frame_size = 0, success = 1; const drmp3_uint8 *hdr; drmp3_bs bs_frame[1]; drmp3dec_scratch scratch; if (mp3_bytes > 4 && dec->header[0] == 0xff && drmp3_hdr_compare(dec->header, mp3)) { frame_size = drmp3_hdr_frame_bytes(mp3, dec->free_format_bytes) + drmp3_hdr_padding(mp3); if (frame_size != mp3_bytes && (frame_size + DRMP3_HDR_SIZE > mp3_bytes || !drmp3_hdr_compare(mp3, mp3 + frame_size))) { frame_size = 0; } } if (!frame_size) { memset(dec, 0, sizeof(drmp3dec)); i = drmp3d_find_frame(mp3, mp3_bytes, &dec->free_format_bytes, &frame_size); if (!frame_size || i + frame_size > mp3_bytes) { info->frame_bytes = i; return 0; } } hdr = mp3 + i; memcpy(dec->header, hdr, DRMP3_HDR_SIZE); info->frame_bytes = i + frame_size; info->channels = DRMP3_HDR_IS_MONO(hdr) ? 1 : 2; info->hz = drmp3_hdr_sample_rate_hz(hdr); info->layer = 4 - DRMP3_HDR_GET_LAYER(hdr); info->bitrate_kbps = drmp3_hdr_bitrate_kbps(hdr); drmp3_bs_init(bs_frame, hdr + DRMP3_HDR_SIZE, frame_size - DRMP3_HDR_SIZE); if (DRMP3_HDR_IS_CRC(hdr)) { drmp3_bs_get_bits(bs_frame, 16); } if (info->layer == 3) { int main_data_begin = drmp3_L3_read_side_info(bs_frame, scratch.gr_info, hdr); if (main_data_begin < 0 || bs_frame->pos > bs_frame->limit) { drmp3dec_init(dec); return 0; } success = drmp3_L3_restore_reservoir(dec, bs_frame, &scratch, main_data_begin); if (success && pcm != NULL) { for (igr = 0; igr < (DRMP3_HDR_TEST_MPEG1(hdr) ? 2 : 1); igr++, pcm = DRMP3_OFFSET_PTR(pcm, sizeof(drmp3d_sample_t)*576*info->channels)) { memset(scratch.grbuf[0], 0, 576*2*sizeof(float)); drmp3_L3_decode(dec, &scratch, scratch.gr_info + igr*info->channels, info->channels); drmp3d_synth_granule(dec->qmf_state, scratch.grbuf[0], 18, info->channels, (drmp3d_sample_t*)pcm, scratch.syn[0]); } } drmp3_L3_save_reservoir(dec, &scratch); } else { #ifdef DR_MP3_ONLY_MP3 return 0; #else if (pcm == NULL) { return drmp3_hdr_frame_samples(hdr); } drmp3_L12_scale_info sci[1]; drmp3_L12_read_scale_info(hdr, bs_frame, sci); memset(scratch.grbuf[0], 0, 576*2*sizeof(float)); for (i = 0, igr = 0; igr < 3; igr++) { if (12 == (i += drmp3_L12_dequantize_granule(scratch.grbuf[0] + i, bs_frame, sci, info->layer | 1))) { i = 0; drmp3_L12_apply_scf_384(sci, sci->scf + igr, scratch.grbuf[0]); drmp3d_synth_granule(dec->qmf_state, scratch.grbuf[0], 12, info->channels, (drmp3d_sample_t*)pcm, scratch.syn[0]); memset(scratch.grbuf[0], 0, 576*2*sizeof(float)); pcm = DRMP3_OFFSET_PTR(pcm, sizeof(drmp3d_sample_t)*384*info->channels); } if (bs_frame->pos > bs_frame->limit) { drmp3dec_init(dec); return 0; } } #endif } return success*drmp3_hdr_frame_samples(dec->header); } void drmp3dec_f32_to_s16(const float *in, drmp3_int16 *out, int num_samples) { if(num_samples > 0) { int i = 0; #if DRMP3_HAVE_SIMD int aligned_count = num_samples & ~7; for(; i < aligned_count; i+=8) { static const drmp3_f4 g_scale = { 32768.0f, 32768.0f, 32768.0f, 32768.0f }; drmp3_f4 a = DRMP3_VMUL(DRMP3_VLD(&in[i ]), g_scale); drmp3_f4 b = DRMP3_VMUL(DRMP3_VLD(&in[i+4]), g_scale); #if DRMP3_HAVE_SSE static const drmp3_f4 g_max = { 32767.0f, 32767.0f, 32767.0f, 32767.0f }; static const drmp3_f4 g_min = { -32768.0f, -32768.0f, -32768.0f, -32768.0f }; __m128i pcm8 = _mm_packs_epi32(_mm_cvtps_epi32(_mm_max_ps(_mm_min_ps(a, g_max), g_min)), _mm_cvtps_epi32(_mm_max_ps(_mm_min_ps(b, g_max), g_min))); out[i ] = (drmp3_int16)_mm_extract_epi16(pcm8, 0); out[i+1] = (drmp3_int16)_mm_extract_epi16(pcm8, 1); out[i+2] = (drmp3_int16)_mm_extract_epi16(pcm8, 2); out[i+3] = (drmp3_int16)_mm_extract_epi16(pcm8, 3); out[i+4] = (drmp3_int16)_mm_extract_epi16(pcm8, 4); out[i+5] = (drmp3_int16)_mm_extract_epi16(pcm8, 5); out[i+6] = (drmp3_int16)_mm_extract_epi16(pcm8, 6); out[i+7] = (drmp3_int16)_mm_extract_epi16(pcm8, 7); #else int16x4_t pcma, pcmb; a = DRMP3_VADD(a, DRMP3_VSET(0.5f)); b = DRMP3_VADD(b, DRMP3_VSET(0.5f)); pcma = vqmovn_s32(vqaddq_s32(vcvtq_s32_f32(a), vreinterpretq_s32_u32(vcltq_f32(a, DRMP3_VSET(0))))); pcmb = vqmovn_s32(vqaddq_s32(vcvtq_s32_f32(b), vreinterpretq_s32_u32(vcltq_f32(b, DRMP3_VSET(0))))); vst1_lane_s16(out+i , pcma, 0); vst1_lane_s16(out+i+1, pcma, 1); vst1_lane_s16(out+i+2, pcma, 2); vst1_lane_s16(out+i+3, pcma, 3); vst1_lane_s16(out+i+4, pcmb, 0); vst1_lane_s16(out+i+5, pcmb, 1); vst1_lane_s16(out+i+6, pcmb, 2); vst1_lane_s16(out+i+7, pcmb, 3); #endif } #endif for(; i < num_samples; i++) { float sample = in[i] * 32768.0f; if (sample >= 32766.5) out[i] = (drmp3_int16) 32767; else if (sample <= -32767.5) out[i] = (drmp3_int16)-32768; else { short s = (drmp3_int16)(sample + .5f); s -= (s < 0); /* away from zero, to be compliant */ out[i] = s; } } } } /////////////////////////////////////////////////////////////////////////////// // // Main Public API // /////////////////////////////////////////////////////////////////////////////// #if defined(SIZE_MAX) #define DRMP3_SIZE_MAX SIZE_MAX #else #if defined(_WIN64) || defined(_LP64) || defined(__LP64__) #define DRMP3_SIZE_MAX ((drmp3_uint64)0xFFFFFFFFFFFFFFFF) #else #define DRMP3_SIZE_MAX 0xFFFFFFFF #endif #endif // Options. #ifndef DR_MP3_DEFAULT_CHANNELS #define DR_MP3_DEFAULT_CHANNELS 2 #endif #ifndef DR_MP3_DEFAULT_SAMPLE_RATE #define DR_MP3_DEFAULT_SAMPLE_RATE 44100 #endif #ifndef DRMP3_SEEK_LEADING_MP3_FRAMES #define DRMP3_SEEK_LEADING_MP3_FRAMES 2 #endif // Standard library stuff. #ifndef DRMP3_ASSERT #include #define DRMP3_ASSERT(expression) assert(expression) #endif #ifndef DRMP3_COPY_MEMORY #define DRMP3_COPY_MEMORY(dst, src, sz) memcpy((dst), (src), (sz)) #endif #ifndef DRMP3_ZERO_MEMORY #define DRMP3_ZERO_MEMORY(p, sz) memset((p), 0, (sz)) #endif #define DRMP3_ZERO_OBJECT(p) DRMP3_ZERO_MEMORY((p), sizeof(*(p))) #ifndef DRMP3_MALLOC #define DRMP3_MALLOC(sz) malloc((sz)) #endif #ifndef DRMP3_REALLOC #define DRMP3_REALLOC(p, sz) realloc((p), (sz)) #endif #ifndef DRMP3_FREE #define DRMP3_FREE(p) free((p)) #endif #define drmp3_assert DRMP3_ASSERT #define drmp3_copy_memory DRMP3_COPY_MEMORY #define drmp3_zero_memory DRMP3_ZERO_MEMORY #define drmp3_zero_object DRMP3_ZERO_OBJECT #define drmp3_malloc DRMP3_MALLOC #define drmp3_realloc DRMP3_REALLOC #define drmp3_countof(x) (sizeof(x) / sizeof(x[0])) #define drmp3_max(x, y) (((x) > (y)) ? (x) : (y)) #define drmp3_min(x, y) (((x) < (y)) ? (x) : (y)) #define DRMP3_DATA_CHUNK_SIZE 16384 // The size in bytes of each chunk of data to read from the MP3 stream. minimp3 recommends 16K. static inline float drmp3_mix_f32(float x, float y, float a) { return x*(1-a) + y*a; } static void drmp3_blend_f32(float* pOut, float* pInA, float* pInB, float factor, drmp3_uint32 channels) { drmp3_uint32 i; for (i = 0; i < channels; ++i) { pOut[i] = drmp3_mix_f32(pInA[i], pInB[i], factor); } } void drmp3_src_cache_init(drmp3_src* pSRC, drmp3_src_cache* pCache) { drmp3_assert(pSRC != NULL); drmp3_assert(pCache != NULL); pCache->pSRC = pSRC; pCache->cachedFrameCount = 0; pCache->iNextFrame = 0; } drmp3_uint64 drmp3_src_cache_read_frames(drmp3_src_cache* pCache, drmp3_uint64 frameCount, float* pFramesOut) { drmp3_assert(pCache != NULL); drmp3_assert(pCache->pSRC != NULL); drmp3_assert(pCache->pSRC->onRead != NULL); drmp3_assert(frameCount > 0); drmp3_assert(pFramesOut != NULL); drmp3_uint32 channels = pCache->pSRC->config.channels; drmp3_uint64 totalFramesRead = 0; while (frameCount > 0) { // If there's anything in memory go ahead and copy that over first. drmp3_uint64 framesRemainingInMemory = pCache->cachedFrameCount - pCache->iNextFrame; drmp3_uint64 framesToReadFromMemory = frameCount; if (framesToReadFromMemory > framesRemainingInMemory) { framesToReadFromMemory = framesRemainingInMemory; } drmp3_copy_memory(pFramesOut, pCache->pCachedFrames + pCache->iNextFrame*channels, (drmp3_uint32)(framesToReadFromMemory * channels * sizeof(float))); pCache->iNextFrame += (drmp3_uint32)framesToReadFromMemory; totalFramesRead += framesToReadFromMemory; frameCount -= framesToReadFromMemory; if (frameCount == 0) { break; } // At this point there are still more frames to read from the client, so we'll need to reload the cache with fresh data. drmp3_assert(frameCount > 0); pFramesOut += framesToReadFromMemory * channels; pCache->iNextFrame = 0; pCache->cachedFrameCount = 0; drmp3_uint32 framesToReadFromClient = drmp3_countof(pCache->pCachedFrames) / pCache->pSRC->config.channels; if (framesToReadFromClient > pCache->pSRC->config.cacheSizeInFrames) { framesToReadFromClient = pCache->pSRC->config.cacheSizeInFrames; } pCache->cachedFrameCount = (drmp3_uint32)pCache->pSRC->onRead(pCache->pSRC, framesToReadFromClient, pCache->pCachedFrames, pCache->pSRC->pUserData); // Get out of this loop if nothing was able to be retrieved. if (pCache->cachedFrameCount == 0) { break; } } return totalFramesRead; } drmp3_uint64 drmp3_src_read_frames_passthrough(drmp3_src* pSRC, drmp3_uint64 frameCount, void* pFramesOut, drmp3_bool32 flush); drmp3_uint64 drmp3_src_read_frames_linear(drmp3_src* pSRC, drmp3_uint64 frameCount, void* pFramesOut, drmp3_bool32 flush); drmp3_bool32 drmp3_src_init(const drmp3_src_config* pConfig, drmp3_src_read_proc onRead, void* pUserData, drmp3_src* pSRC) { if (pSRC == NULL) return DRMP3_FALSE; drmp3_zero_object(pSRC); if (pConfig == NULL || onRead == NULL) return DRMP3_FALSE; if (pConfig->channels == 0 || pConfig->channels > 2) return DRMP3_FALSE; pSRC->config = *pConfig; pSRC->onRead = onRead; pSRC->pUserData = pUserData; if (pSRC->config.cacheSizeInFrames > DRMP3_SRC_CACHE_SIZE_IN_FRAMES || pSRC->config.cacheSizeInFrames == 0) { pSRC->config.cacheSizeInFrames = DRMP3_SRC_CACHE_SIZE_IN_FRAMES; } drmp3_src_cache_init(pSRC, &pSRC->cache); return DRMP3_TRUE; } drmp3_bool32 drmp3_src_set_input_sample_rate(drmp3_src* pSRC, drmp3_uint32 sampleRateIn) { if (pSRC == NULL) return DRMP3_FALSE; // Must have a sample rate of > 0. if (sampleRateIn == 0) { return DRMP3_FALSE; } pSRC->config.sampleRateIn = sampleRateIn; return DRMP3_TRUE; } drmp3_bool32 drmp3_src_set_output_sample_rate(drmp3_src* pSRC, drmp3_uint32 sampleRateOut) { if (pSRC == NULL) return DRMP3_FALSE; // Must have a sample rate of > 0. if (sampleRateOut == 0) { return DRMP3_FALSE; } pSRC->config.sampleRateOut = sampleRateOut; return DRMP3_TRUE; } drmp3_uint64 drmp3_src_read_frames_ex(drmp3_src* pSRC, drmp3_uint64 frameCount, void* pFramesOut, drmp3_bool32 flush) { if (pSRC == NULL || frameCount == 0 || pFramesOut == NULL) return 0; drmp3_src_algorithm algorithm = pSRC->config.algorithm; // Always use passthrough if the sample rates are the same. if (pSRC->config.sampleRateIn == pSRC->config.sampleRateOut) { algorithm = drmp3_src_algorithm_none; } // Could just use a function pointer instead of a switch for this... switch (algorithm) { case drmp3_src_algorithm_none: return drmp3_src_read_frames_passthrough(pSRC, frameCount, pFramesOut, flush); case drmp3_src_algorithm_linear: return drmp3_src_read_frames_linear(pSRC, frameCount, pFramesOut, flush); default: return 0; } } drmp3_uint64 drmp3_src_read_frames(drmp3_src* pSRC, drmp3_uint64 frameCount, void* pFramesOut) { return drmp3_src_read_frames_ex(pSRC, frameCount, pFramesOut, DRMP3_FALSE); } drmp3_uint64 drmp3_src_read_frames_passthrough(drmp3_src* pSRC, drmp3_uint64 frameCount, void* pFramesOut, drmp3_bool32 flush) { drmp3_assert(pSRC != NULL); drmp3_assert(frameCount > 0); drmp3_assert(pFramesOut != NULL); (void)flush; // Passthrough need not care about flushing. return pSRC->onRead(pSRC, frameCount, pFramesOut, pSRC->pUserData); } drmp3_uint64 drmp3_src_read_frames_linear(drmp3_src* pSRC, drmp3_uint64 frameCount, void* pFramesOut, drmp3_bool32 flush) { drmp3_assert(pSRC != NULL); drmp3_assert(frameCount > 0); drmp3_assert(pFramesOut != NULL); // For linear SRC, the bin is only 2 frames: 1 prior, 1 future. // Load the bin if necessary. if (!pSRC->algo.linear.isPrevFramesLoaded) { drmp3_uint64 framesRead = drmp3_src_cache_read_frames(&pSRC->cache, 1, pSRC->bin); if (framesRead == 0) { return 0; } pSRC->algo.linear.isPrevFramesLoaded = DRMP3_TRUE; } if (!pSRC->algo.linear.isNextFramesLoaded) { drmp3_uint64 framesRead = drmp3_src_cache_read_frames(&pSRC->cache, 1, pSRC->bin + pSRC->config.channels); if (framesRead == 0) { return 0; } pSRC->algo.linear.isNextFramesLoaded = DRMP3_TRUE; } double factor = (double)pSRC->config.sampleRateIn / pSRC->config.sampleRateOut; drmp3_uint64 totalFramesRead = 0; while (frameCount > 0) { // The bin is where the previous and next frames are located. float* pPrevFrame = pSRC->bin; float* pNextFrame = pSRC->bin + pSRC->config.channels; drmp3_blend_f32((float*)pFramesOut, pPrevFrame, pNextFrame, (float)pSRC->algo.linear.alpha, pSRC->config.channels); pSRC->algo.linear.alpha += factor; // The new alpha value is how we determine whether or not we need to read fresh frames. drmp3_uint32 framesToReadFromClient = (drmp3_uint32)pSRC->algo.linear.alpha; pSRC->algo.linear.alpha = pSRC->algo.linear.alpha - framesToReadFromClient; drmp3_uint32 i; for (i = 0; i < framesToReadFromClient; ++i) { drmp3_uint32 j; for (j = 0; j < pSRC->config.channels; ++j) { pPrevFrame[j] = pNextFrame[j]; } drmp3_uint64 framesRead = drmp3_src_cache_read_frames(&pSRC->cache, 1, pNextFrame); if (framesRead == 0) { drmp3_uint32 j; for (j = 0; j < pSRC->config.channels; ++j) { pNextFrame[j] = 0; } if (pSRC->algo.linear.isNextFramesLoaded) { pSRC->algo.linear.isNextFramesLoaded = DRMP3_FALSE; } else { if (flush) { pSRC->algo.linear.isPrevFramesLoaded = DRMP3_FALSE; } } break; } } pFramesOut = (drmp3_uint8*)pFramesOut + (1 * pSRC->config.channels * sizeof(float)); frameCount -= 1; totalFramesRead += 1; // If there's no frames available we need to get out of this loop. if (!pSRC->algo.linear.isNextFramesLoaded && (!flush || !pSRC->algo.linear.isPrevFramesLoaded)) { break; } } return totalFramesRead; } static size_t drmp3__on_read(drmp3* pMP3, void* pBufferOut, size_t bytesToRead) { size_t bytesRead = pMP3->onRead(pMP3->pUserData, pBufferOut, bytesToRead); pMP3->streamCursor += bytesRead; return bytesRead; } static drmp3_bool32 drmp3__on_seek(drmp3* pMP3, int offset, drmp3_seek_origin origin) { drmp3_assert(offset >= 0); if (!pMP3->onSeek(pMP3->pUserData, offset, origin)) { return DRMP3_FALSE; } if (origin == drmp3_seek_origin_start) { pMP3->streamCursor = (drmp3_uint64)offset; } else { pMP3->streamCursor += offset; } return DRMP3_TRUE; } static drmp3_bool32 drmp3__on_seek_64(drmp3* pMP3, drmp3_uint64 offset, drmp3_seek_origin origin) { if (offset <= 0x7FFFFFFF) { return drmp3__on_seek(pMP3, (int)offset, origin); } // Getting here "offset" is too large for a 32-bit integer. We just keep seeking forward until we hit the offset. if (!drmp3__on_seek(pMP3, 0x7FFFFFFF, drmp3_seek_origin_start)) { return DRMP3_FALSE; } offset -= 0x7FFFFFFF; while (offset > 0) { if (offset <= 0x7FFFFFFF) { if (!drmp3__on_seek(pMP3, (int)offset, drmp3_seek_origin_current)) { return DRMP3_FALSE; } offset = 0; } else { if (!drmp3__on_seek(pMP3, 0x7FFFFFFF, drmp3_seek_origin_current)) { return DRMP3_FALSE; } offset -= 0x7FFFFFFF; } } return DRMP3_TRUE; } static drmp3_uint32 drmp3_decode_next_frame_ex(drmp3* pMP3, drmp3d_sample_t* pPCMFrames, drmp3_bool32 discard) { drmp3_assert(pMP3 != NULL); drmp3_assert(pMP3->onRead != NULL); if (pMP3->atEnd) { return 0; } drmp3_uint32 pcmFramesRead = 0; do { // minimp3 recommends doing data submission in 16K chunks. If we don't have at least 16K bytes available, get more. if (pMP3->dataSize < DRMP3_DATA_CHUNK_SIZE) { if (pMP3->dataCapacity < DRMP3_DATA_CHUNK_SIZE) { pMP3->dataCapacity = DRMP3_DATA_CHUNK_SIZE; drmp3_uint8* pNewData = (drmp3_uint8*)drmp3_realloc(pMP3->pData, pMP3->dataCapacity); if (pNewData == NULL) { return 0; // Out of memory. } pMP3->pData = pNewData; } size_t bytesRead = drmp3__on_read(pMP3, pMP3->pData + pMP3->dataSize, (pMP3->dataCapacity - pMP3->dataSize)); if (bytesRead == 0) { if (pMP3->dataSize == 0) { pMP3->atEnd = DRMP3_TRUE; return 0; // No data. } } pMP3->dataSize += bytesRead; } if (pMP3->dataSize > INT_MAX) { pMP3->atEnd = DRMP3_TRUE; return 0; // File too big. } drmp3dec_frame_info info; pcmFramesRead = drmp3dec_decode_frame(&pMP3->decoder, pMP3->pData, (int)pMP3->dataSize, pPCMFrames, &info); // <-- Safe size_t -> int conversion thanks to the check above. // Consume the data. size_t leftoverDataSize = (pMP3->dataSize - (size_t)info.frame_bytes); if (info.frame_bytes > 0) { memmove(pMP3->pData, pMP3->pData + info.frame_bytes, leftoverDataSize); pMP3->dataSize = leftoverDataSize; } // pcmFramesRead will be equal to 0 if decoding failed. If it is zero and info.frame_bytes > 0 then we have successfully // decoded the frame. A special case is if we are wanting to discard the frame, in which case we return successfully. if (pcmFramesRead > 0 || (info.frame_bytes > 0 && discard)) { pcmFramesRead = drmp3_hdr_frame_samples(pMP3->decoder.header); pMP3->pcmFramesConsumedInMP3Frame = 0; pMP3->pcmFramesRemainingInMP3Frame = pcmFramesRead; pMP3->mp3FrameChannels = info.channels; pMP3->mp3FrameSampleRate = info.hz; drmp3_src_set_input_sample_rate(&pMP3->src, pMP3->mp3FrameSampleRate); break; } else if (info.frame_bytes == 0) { // Need more data. minimp3 recommends doing data submission in 16K chunks. if (pMP3->dataCapacity == pMP3->dataSize) { // No room. Expand. pMP3->dataCapacity += DRMP3_DATA_CHUNK_SIZE; drmp3_uint8* pNewData = (drmp3_uint8*)drmp3_realloc(pMP3->pData, pMP3->dataCapacity); if (pNewData == NULL) { return 0; // Out of memory. } pMP3->pData = pNewData; } // Fill in a chunk. size_t bytesRead = drmp3__on_read(pMP3, pMP3->pData + pMP3->dataSize, (pMP3->dataCapacity - pMP3->dataSize)); if (bytesRead == 0) { pMP3->atEnd = DRMP3_TRUE; return 0; // Error reading more data. } pMP3->dataSize += bytesRead; } } while (DRMP3_TRUE); return pcmFramesRead; } static drmp3_uint32 drmp3_decode_next_frame(drmp3* pMP3) { drmp3_assert(pMP3 != NULL); return drmp3_decode_next_frame_ex(pMP3, (drmp3d_sample_t*)pMP3->pcmFrames, DRMP3_FALSE); } #if 0 static drmp3_uint32 drmp3_seek_next_frame(drmp3* pMP3) { drmp3_assert(pMP3 != NULL); drmp3_uint32 pcmFrameCount = drmp3_decode_next_frame_ex(pMP3, NULL); if (pcmFrameCount == 0) { return 0; } // We have essentially just skipped past the frame, so just set the remaining samples to 0. pMP3->currentPCMFrame += pcmFrameCount; pMP3->pcmFramesConsumedInMP3Frame = pcmFrameCount; pMP3->pcmFramesRemainingInMP3Frame = 0; return pcmFrameCount; } #endif static drmp3_uint64 drmp3_read_src(drmp3_src* pSRC, drmp3_uint64 frameCount, void* pFramesOut, void* pUserData) { drmp3* pMP3 = (drmp3*)pUserData; drmp3_assert(pMP3 != NULL); drmp3_assert(pMP3->onRead != NULL); float* pFramesOutF = (float*)pFramesOut; drmp3_uint64 totalFramesRead = 0; while (frameCount > 0) { // Read from the in-memory buffer first. while (pMP3->pcmFramesRemainingInMP3Frame > 0 && frameCount > 0) { drmp3d_sample_t* frames = (drmp3d_sample_t*)pMP3->pcmFrames; #ifndef DR_MP3_FLOAT_OUTPUT if (pMP3->mp3FrameChannels == 1) { if (pMP3->channels == 1) { // Mono -> Mono. pFramesOutF[0] = frames[pMP3->pcmFramesConsumedInMP3Frame] / 32768.0f; } else { // Mono -> Stereo. pFramesOutF[0] = frames[pMP3->pcmFramesConsumedInMP3Frame] / 32768.0f; pFramesOutF[1] = frames[pMP3->pcmFramesConsumedInMP3Frame] / 32768.0f; } } else { if (pMP3->channels == 1) { // Stereo -> Mono float sample = 0; sample += frames[(pMP3->pcmFramesConsumedInMP3Frame*pMP3->mp3FrameChannels)+0] / 32768.0f; sample += frames[(pMP3->pcmFramesConsumedInMP3Frame*pMP3->mp3FrameChannels)+1] / 32768.0f; pFramesOutF[0] = sample * 0.5f; } else { // Stereo -> Stereo pFramesOutF[0] = frames[(pMP3->pcmFramesConsumedInMP3Frame*pMP3->mp3FrameChannels)+0] / 32768.0f; pFramesOutF[1] = frames[(pMP3->pcmFramesConsumedInMP3Frame*pMP3->mp3FrameChannels)+1] / 32768.0f; } } #else if (pMP3->mp3FrameChannels == 1) { if (pMP3->channels == 1) { // Mono -> Mono. pFramesOutF[0] = frames[pMP3->pcmFramesConsumedInMP3Frame]; } else { // Mono -> Stereo. pFramesOutF[0] = frames[pMP3->pcmFramesConsumedInMP3Frame]; pFramesOutF[1] = frames[pMP3->pcmFramesConsumedInMP3Frame]; } } else { if (pMP3->channels == 1) { // Stereo -> Mono float sample = 0; sample += frames[(pMP3->pcmFramesConsumedInMP3Frame*pMP3->mp3FrameChannels)+0]; sample += frames[(pMP3->pcmFramesConsumedInMP3Frame*pMP3->mp3FrameChannels)+1]; pFramesOutF[0] = sample * 0.5f; } else { // Stereo -> Stereo pFramesOutF[0] = frames[(pMP3->pcmFramesConsumedInMP3Frame*pMP3->mp3FrameChannels)+0]; pFramesOutF[1] = frames[(pMP3->pcmFramesConsumedInMP3Frame*pMP3->mp3FrameChannels)+1]; } } #endif pMP3->pcmFramesConsumedInMP3Frame += 1; pMP3->pcmFramesRemainingInMP3Frame -= 1; totalFramesRead += 1; frameCount -= 1; pFramesOutF += pSRC->config.channels; } if (frameCount == 0) { break; } drmp3_assert(pMP3->pcmFramesRemainingInMP3Frame == 0); // At this point we have exhausted our in-memory buffer so we need to re-fill. Note that the sample rate may have changed // at this point which means we'll also need to update our sample rate conversion pipeline. if (drmp3_decode_next_frame(pMP3) == 0) { break; } } return totalFramesRead; } drmp3_bool32 drmp3_init_internal(drmp3* pMP3, drmp3_read_proc onRead, drmp3_seek_proc onSeek, void* pUserData, const drmp3_config* pConfig) { drmp3_assert(pMP3 != NULL); drmp3_assert(onRead != NULL); // This function assumes the output object has already been reset to 0. Do not do that here, otherwise things will break. drmp3dec_init(&pMP3->decoder); // The config can be null in which case we use defaults. drmp3_config config; if (pConfig != NULL) { config = *pConfig; } else { drmp3_zero_object(&config); } pMP3->channels = config.outputChannels; if (pMP3->channels == 0) { pMP3->channels = DR_MP3_DEFAULT_CHANNELS; } // Cannot have more than 2 channels. if (pMP3->channels > 2) { pMP3->channels = 2; } pMP3->sampleRate = config.outputSampleRate; if (pMP3->sampleRate == 0) { pMP3->sampleRate = DR_MP3_DEFAULT_SAMPLE_RATE; } pMP3->onRead = onRead; pMP3->onSeek = onSeek; pMP3->pUserData = pUserData; // We need a sample rate converter for converting the sample rate from the MP3 frames to the requested output sample rate. drmp3_src_config srcConfig; drmp3_zero_object(&srcConfig); srcConfig.sampleRateIn = DR_MP3_DEFAULT_SAMPLE_RATE; srcConfig.sampleRateOut = pMP3->sampleRate; srcConfig.channels = pMP3->channels; srcConfig.algorithm = drmp3_src_algorithm_linear; if (!drmp3_src_init(&srcConfig, drmp3_read_src, pMP3, &pMP3->src)) { drmp3_uninit(pMP3); return DRMP3_FALSE; } // Decode the first frame to confirm that it is indeed a valid MP3 stream. if (!drmp3_decode_next_frame(pMP3)) { drmp3_uninit(pMP3); return DRMP3_FALSE; // Not a valid MP3 stream. } return DRMP3_TRUE; } drmp3_bool32 drmp3_init(drmp3* pMP3, drmp3_read_proc onRead, drmp3_seek_proc onSeek, void* pUserData, const drmp3_config* pConfig) { if (pMP3 == NULL || onRead == NULL) { return DRMP3_FALSE; } drmp3_zero_object(pMP3); return drmp3_init_internal(pMP3, onRead, onSeek, pUserData, pConfig); } static size_t drmp3__on_read_memory(void* pUserData, void* pBufferOut, size_t bytesToRead) { drmp3* pMP3 = (drmp3*)pUserData; drmp3_assert(pMP3 != NULL); drmp3_assert(pMP3->memory.dataSize >= pMP3->memory.currentReadPos); size_t bytesRemaining = pMP3->memory.dataSize - pMP3->memory.currentReadPos; if (bytesToRead > bytesRemaining) { bytesToRead = bytesRemaining; } if (bytesToRead > 0) { drmp3_copy_memory(pBufferOut, pMP3->memory.pData + pMP3->memory.currentReadPos, bytesToRead); pMP3->memory.currentReadPos += bytesToRead; } return bytesToRead; } static drmp3_bool32 drmp3__on_seek_memory(void* pUserData, int byteOffset, drmp3_seek_origin origin) { drmp3* pMP3 = (drmp3*)pUserData; drmp3_assert(pMP3 != NULL); if (origin == drmp3_seek_origin_current) { if (byteOffset > 0) { if (pMP3->memory.currentReadPos + byteOffset > pMP3->memory.dataSize) { byteOffset = (int)(pMP3->memory.dataSize - pMP3->memory.currentReadPos); // Trying to seek too far forward. } } else { if (pMP3->memory.currentReadPos < (size_t)-byteOffset) { byteOffset = -(int)pMP3->memory.currentReadPos; // Trying to seek too far backwards. } } // This will never underflow thanks to the clamps above. pMP3->memory.currentReadPos += byteOffset; } else { if ((drmp3_uint32)byteOffset <= pMP3->memory.dataSize) { pMP3->memory.currentReadPos = byteOffset; } else { pMP3->memory.currentReadPos = pMP3->memory.dataSize; // Trying to seek too far forward. } } return DRMP3_TRUE; } drmp3_bool32 drmp3_init_memory(drmp3* pMP3, const void* pData, size_t dataSize, const drmp3_config* pConfig) { if (pMP3 == NULL) { return DRMP3_FALSE; } drmp3_zero_object(pMP3); if (pData == NULL || dataSize == 0) { return DRMP3_FALSE; } pMP3->memory.pData = (const drmp3_uint8*)pData; pMP3->memory.dataSize = dataSize; pMP3->memory.currentReadPos = 0; return drmp3_init_internal(pMP3, drmp3__on_read_memory, drmp3__on_seek_memory, pMP3, pConfig); } #ifndef DR_MP3_NO_STDIO #include static size_t drmp3__on_read_stdio(void* pUserData, void* pBufferOut, size_t bytesToRead) { return fread(pBufferOut, 1, bytesToRead, (FILE*)pUserData); } static drmp3_bool32 drmp3__on_seek_stdio(void* pUserData, int offset, drmp3_seek_origin origin) { return fseek((FILE*)pUserData, offset, (origin == drmp3_seek_origin_current) ? SEEK_CUR : SEEK_SET) == 0; } drmp3_bool32 drmp3_init_file(drmp3* pMP3, const char* filePath, const drmp3_config* pConfig) { FILE* pFile; #if defined(_MSC_VER) && _MSC_VER >= 1400 if (fopen_s(&pFile, filePath, "rb") != 0) { return DRMP3_FALSE; } #elif defined(_WIN32) WCHAR wfp[MAX_PATH]; MultiByteToWideChar(CP_UTF8, 0, filePath, -1, wfp, MAX_PATH); pFile = _wfopen(wfp, L"rb"); if (pFile == NULL) { return DRMP3_FALSE; } #else pFile = fopen(filePath, "rb"); if (pFile == NULL) { return DRMP3_FALSE; } #endif return drmp3_init(pMP3, drmp3__on_read_stdio, drmp3__on_seek_stdio, (void*)pFile, pConfig); } #endif void drmp3_uninit(drmp3* pMP3) { if (pMP3 == NULL) { return; } #ifndef DR_MP3_NO_STDIO if (pMP3->onRead == drmp3__on_read_stdio) { fclose((FILE*)pMP3->pUserData); } #endif drmp3_free(pMP3->pData); } drmp3_uint64 drmp3_read_pcm_frames_f32(drmp3* pMP3, drmp3_uint64 framesToRead, float* pBufferOut) { if (pMP3 == NULL || pMP3->onRead == NULL) { return 0; } drmp3_uint64 totalFramesRead = 0; if (pBufferOut == NULL) { float temp[4096]; while (framesToRead > 0) { drmp3_uint64 framesToReadRightNow = sizeof(temp)/sizeof(temp[0]) / pMP3->channels; if (framesToReadRightNow > framesToRead) { framesToReadRightNow = framesToRead; } drmp3_uint64 framesJustRead = drmp3_read_pcm_frames_f32(pMP3, framesToReadRightNow, temp); if (framesJustRead == 0) { break; } framesToRead -= framesJustRead; totalFramesRead += framesJustRead; } } else { totalFramesRead = drmp3_src_read_frames_ex(&pMP3->src, framesToRead, pBufferOut, DRMP3_TRUE); pMP3->currentPCMFrame += totalFramesRead; } return totalFramesRead; } void drmp3_reset(drmp3* pMP3) { drmp3_assert(pMP3 != NULL); pMP3->pcmFramesConsumedInMP3Frame = 0; pMP3->pcmFramesRemainingInMP3Frame = 0; pMP3->currentPCMFrame = 0; pMP3->dataSize = 0; pMP3->atEnd = DRMP3_FALSE; pMP3->src.bin[0] = 0; pMP3->src.bin[1] = 0; pMP3->src.bin[2] = 0; pMP3->src.bin[3] = 0; pMP3->src.cache.cachedFrameCount = 0; pMP3->src.cache.iNextFrame = 0; pMP3->src.algo.linear.alpha = 0; pMP3->src.algo.linear.isNextFramesLoaded = 0; pMP3->src.algo.linear.isPrevFramesLoaded = 0; //drmp3_zero_object(&pMP3->decoder); drmp3dec_init(&pMP3->decoder); } drmp3_bool32 drmp3_seek_to_start_of_stream(drmp3* pMP3) { drmp3_assert(pMP3 != NULL); drmp3_assert(pMP3->onSeek != NULL); // Seek to the start of the stream to begin with. if (!drmp3__on_seek(pMP3, 0, drmp3_seek_origin_start)) { return DRMP3_FALSE; } // Clear any cached data. drmp3_reset(pMP3); return DRMP3_TRUE; } float drmp3_get_cached_pcm_frame_count_from_src(drmp3* pMP3) { return (pMP3->src.cache.cachedFrameCount - pMP3->src.cache.iNextFrame) + (float)pMP3->src.algo.linear.alpha; } float drmp3_get_pcm_frames_remaining_in_mp3_frame(drmp3* pMP3) { float factor = (float)pMP3->src.config.sampleRateOut / (float)pMP3->src.config.sampleRateIn; float frameCountPreSRC = drmp3_get_cached_pcm_frame_count_from_src(pMP3) + pMP3->pcmFramesRemainingInMP3Frame; return frameCountPreSRC * factor; } // NOTE ON SEEKING // =============== // The seeking code below is a complete mess and is broken for cases when the sample rate changes. The problem // is with the resampling and the crappy resampler used by dr_mp3. What needs to happen is the following: // // 1) The resampler needs to be replaced. // 2) The resampler has state which needs to be updated whenever an MP3 frame is decoded outside of // drmp3_read_pcm_frames_f32(). The resampler needs an API to "flush" some imaginary input so that it's // state is updated accordingly. drmp3_bool32 drmp3_seek_forward_by_pcm_frames__brute_force(drmp3* pMP3, drmp3_uint64 frameOffset) { #if 0 // MP3 is a bit annoying when it comes to seeking because of the bit reservoir. It basically means that an MP3 frame can possibly // depend on some of the data of prior frames. This means it's not as simple as seeking to the first byte of the MP3 frame that // contains the sample because that MP3 frame will need the data from the previous MP3 frame (which we just seeked past!). To // resolve this we seek past a number of MP3 frames up to a point, and then read-and-discard the remainder. drmp3_uint64 maxFramesToReadAndDiscard = (drmp3_uint64)(DRMP3_MAX_PCM_FRAMES_PER_MP3_FRAME * 3 * ((float)pMP3->src.config.sampleRateOut / (float)pMP3->src.config.sampleRateIn)); // Now get rid of leading whole frames. while (frameOffset > maxFramesToReadAndDiscard) { float pcmFramesRemainingInCurrentMP3FrameF = drmp3_get_pcm_frames_remaining_in_mp3_frame(pMP3); drmp3_uint32 pcmFramesRemainingInCurrentMP3Frame = (drmp3_uint32)pcmFramesRemainingInCurrentMP3FrameF; if (frameOffset > pcmFramesRemainingInCurrentMP3Frame) { frameOffset -= pcmFramesRemainingInCurrentMP3Frame; pMP3->currentPCMFrame += pcmFramesRemainingInCurrentMP3Frame; pMP3->pcmFramesConsumedInMP3Frame += pMP3->pcmFramesRemainingInMP3Frame; pMP3->pcmFramesRemainingInMP3Frame = 0; } else { break; } drmp3_uint32 pcmFrameCount = drmp3_decode_next_frame_ex(pMP3, pMP3->pcmFrames, DRMP3_FALSE); if (pcmFrameCount == 0) { break; } } // The last step is to read-and-discard any remaining PCM frames to make it sample-exact. drmp3_uint64 framesRead = drmp3_read_pcm_frames_f32(pMP3, frameOffset, NULL); if (framesRead != frameOffset) { return DRMP3_FALSE; } #else // Just using a dumb read-and-discard for now pending updates to the resampler. drmp3_uint64 framesRead = drmp3_read_pcm_frames_f32(pMP3, frameOffset, NULL); if (framesRead != frameOffset) { return DRMP3_FALSE; } #endif return DRMP3_TRUE; } drmp3_bool32 drmp3_seek_to_pcm_frame__brute_force(drmp3* pMP3, drmp3_uint64 frameIndex) { drmp3_assert(pMP3 != NULL); if (frameIndex == pMP3->currentPCMFrame) { return DRMP3_TRUE; } // If we're moving foward we just read from where we're at. Otherwise we need to move back to the start of // the stream and read from the beginning. //drmp3_uint64 framesToReadAndDiscard; if (frameIndex < pMP3->currentPCMFrame) { // Moving backward. Move to the start of the stream and then move forward. if (!drmp3_seek_to_start_of_stream(pMP3)) { return DRMP3_FALSE; } } drmp3_assert(frameIndex >= pMP3->currentPCMFrame); return drmp3_seek_forward_by_pcm_frames__brute_force(pMP3, (frameIndex - pMP3->currentPCMFrame)); } drmp3_bool32 drmp3_find_closest_seek_point(drmp3* pMP3, drmp3_uint64 frameIndex, drmp3_uint32* pSeekPointIndex) { drmp3_assert(pSeekPointIndex != NULL); if (frameIndex < pMP3->pSeekPoints[0].pcmFrameIndex) { return DRMP3_FALSE; } // Linear search for simplicity to begin with while I'm getting this thing working. Once it's all working change this to a binary search. drmp3_uint32 iSeekPoint; for (iSeekPoint = 0; iSeekPoint < pMP3->seekPointCount; ++iSeekPoint) { if (pMP3->pSeekPoints[iSeekPoint].pcmFrameIndex > frameIndex) { break; // Found it. } *pSeekPointIndex = iSeekPoint; } return DRMP3_TRUE; } drmp3_bool32 drmp3_seek_to_pcm_frame__seek_table(drmp3* pMP3, drmp3_uint64 frameIndex) { drmp3_assert(pMP3 != NULL); drmp3_assert(pMP3->pSeekPoints != NULL); drmp3_assert(pMP3->seekPointCount > 0); drmp3_seek_point seekPoint; // If there is no prior seekpoint it means the target PCM frame comes before the first seek point. Just assume a seekpoint at the start of the file in this case. drmp3_uint32 priorSeekPointIndex; if (drmp3_find_closest_seek_point(pMP3, frameIndex, &priorSeekPointIndex)) { seekPoint = pMP3->pSeekPoints[priorSeekPointIndex]; } else { seekPoint.seekPosInBytes = 0; seekPoint.pcmFrameIndex = 0; seekPoint.mp3FramesToDiscard = 0; seekPoint.pcmFramesToDiscard = 0; } // First thing to do is seek to the first byte of the relevant MP3 frame. if (!drmp3__on_seek_64(pMP3, seekPoint.seekPosInBytes, drmp3_seek_origin_start)) { return DRMP3_FALSE; // Failed to seek. } // Clear any cached data. drmp3_reset(pMP3); // Whole MP3 frames need to be discarded first. drmp3_uint16 iMP3Frame; for (iMP3Frame = 0; iMP3Frame < seekPoint.mp3FramesToDiscard; ++iMP3Frame) { // Pass in non-null for the last frame because we want to ensure the sample rate converter is preloaded correctly. drmp3d_sample_t* pPCMFrames = NULL; if (iMP3Frame == seekPoint.mp3FramesToDiscard-1) { pPCMFrames = (drmp3d_sample_t*)pMP3->pcmFrames; } // We first need to decode the next frame, and then we need to flush the resampler. drmp3_uint32 pcmFramesReadPreSRC = drmp3_decode_next_frame_ex(pMP3, pPCMFrames, DRMP3_TRUE); if (pcmFramesReadPreSRC == 0) { return DRMP3_FALSE; } } // We seeked to an MP3 frame in the raw stream so we need to make sure the current PCM frame is set correctly. pMP3->currentPCMFrame = seekPoint.pcmFrameIndex - seekPoint.pcmFramesToDiscard; // Update resampler. This is wrong. Need to instead update it on a per MP3 frame basis. Also broken for cases when // the sample rate is being reduced in my testing. Should work fine when the input and output sample rate is the same // or a clean multiple. pMP3->src.algo.linear.alpha = pMP3->currentPCMFrame * ((double)pMP3->src.config.sampleRateIn / pMP3->src.config.sampleRateOut); pMP3->src.algo.linear.alpha = pMP3->src.algo.linear.alpha - (drmp3_uint32)(pMP3->src.algo.linear.alpha); if (pMP3->src.algo.linear.alpha > 0) { pMP3->src.algo.linear.isPrevFramesLoaded = 1; } // Now at this point we can follow the same process as the brute force technique where we just skip over unnecessary MP3 frames and then // read-and-discard at least 2 whole MP3 frames. drmp3_uint64 leftoverFrames = frameIndex - pMP3->currentPCMFrame; return drmp3_seek_forward_by_pcm_frames__brute_force(pMP3, leftoverFrames); } drmp3_bool32 drmp3_seek_to_pcm_frame(drmp3* pMP3, drmp3_uint64 frameIndex) { if (pMP3 == NULL || pMP3->onSeek == NULL) { return DRMP3_FALSE; } if (frameIndex == 0) { return drmp3_seek_to_start_of_stream(pMP3); } // Use the seek table if we have one. if (pMP3->pSeekPoints != NULL && pMP3->seekPointCount > 0) { return drmp3_seek_to_pcm_frame__seek_table(pMP3, frameIndex); } else { return drmp3_seek_to_pcm_frame__brute_force(pMP3, frameIndex); } } drmp3_bool32 drmp3_get_mp3_and_pcm_frame_count(drmp3* pMP3, drmp3_uint64* pMP3FrameCount, drmp3_uint64* pPCMFrameCount) { if (pMP3 == NULL) { return DRMP3_FALSE; } // The way this works is we move back to the start of the stream, iterate over each MP3 frame and calculate the frame count based // on our output sample rate, the seek back to the PCM frame we were sitting on before calling this function. // The stream must support seeking for this to work. if (pMP3->onSeek == NULL) { return DRMP3_FALSE; } // We'll need to seek back to where we were, so grab the PCM frame we're currently sitting on so we can restore later. drmp3_uint64 currentPCMFrame = pMP3->currentPCMFrame; if (!drmp3_seek_to_start_of_stream(pMP3)) { return DRMP3_FALSE; } drmp3_uint64 totalPCMFrameCount = 0; drmp3_uint64 totalMP3FrameCount = 0; float totalPCMFrameCountFractionalPart = 0; // <-- With resampling there will be a fractional part to each MP3 frame that we need to accumulate. for (;;) { drmp3_uint32 pcmFramesInCurrentMP3FrameIn = drmp3_decode_next_frame_ex(pMP3, NULL, DRMP3_FALSE); if (pcmFramesInCurrentMP3FrameIn == 0) { break; } float srcRatio = (float)pMP3->mp3FrameSampleRate / (float)pMP3->sampleRate; drmp3_assert(srcRatio > 0); float pcmFramesInCurrentMP3FrameOutF = totalPCMFrameCountFractionalPart + (pcmFramesInCurrentMP3FrameIn / srcRatio); drmp3_uint32 pcmFramesInCurrentMP3FrameOut = (drmp3_uint32)pcmFramesInCurrentMP3FrameOutF; totalPCMFrameCountFractionalPart = pcmFramesInCurrentMP3FrameOutF - pcmFramesInCurrentMP3FrameOut; totalPCMFrameCount += pcmFramesInCurrentMP3FrameOut; totalMP3FrameCount += 1; } // Finally, we need to seek back to where we were. if (!drmp3_seek_to_start_of_stream(pMP3)) { return DRMP3_FALSE; } if (!drmp3_seek_to_pcm_frame(pMP3, currentPCMFrame)) { return DRMP3_FALSE; } if (pMP3FrameCount != NULL) { *pMP3FrameCount = totalMP3FrameCount; } if (pPCMFrameCount != NULL) { *pPCMFrameCount = totalPCMFrameCount; } return DRMP3_TRUE; } drmp3_uint64 drmp3_get_pcm_frame_count(drmp3* pMP3) { drmp3_uint64 totalPCMFrameCount; if (!drmp3_get_mp3_and_pcm_frame_count(pMP3, NULL, &totalPCMFrameCount)) { return 0; } return totalPCMFrameCount; } drmp3_uint64 drmp3_get_mp3_frame_count(drmp3* pMP3) { drmp3_uint64 totalMP3FrameCount; if (!drmp3_get_mp3_and_pcm_frame_count(pMP3, &totalMP3FrameCount, NULL)) { return 0; } return totalMP3FrameCount; } void drmp3__accumulate_running_pcm_frame_count(drmp3* pMP3, drmp3_uint32 pcmFrameCountIn, drmp3_uint64* pRunningPCMFrameCount, float* pRunningPCMFrameCountFractionalPart) { float srcRatio = (float)pMP3->mp3FrameSampleRate / (float)pMP3->sampleRate; drmp3_assert(srcRatio > 0); float pcmFrameCountOutF = *pRunningPCMFrameCountFractionalPart + (pcmFrameCountIn / srcRatio); drmp3_uint32 pcmFrameCountOut = (drmp3_uint32)pcmFrameCountOutF; *pRunningPCMFrameCountFractionalPart = pcmFrameCountOutF - pcmFrameCountOut; *pRunningPCMFrameCount += pcmFrameCountOut; } typedef struct { drmp3_uint64 bytePos; drmp3_uint64 pcmFrameIndex; // <-- After sample rate conversion. } drmp3__seeking_mp3_frame_info; drmp3_bool32 drmp3_calculate_seek_points(drmp3* pMP3, drmp3_uint32* pSeekPointCount, drmp3_seek_point* pSeekPoints) { if (pMP3 == NULL || pSeekPointCount == NULL || pSeekPoints == NULL) { return DRMP3_FALSE; // Invalid args. } drmp3_uint32 seekPointCount = *pSeekPointCount; if (seekPointCount == 0) { return DRMP3_FALSE; // The client has requested no seek points. Consider this to be invalid arguments since the client has probably not intended this. } // We'll need to seek back to the current sample after calculating the seekpoints so we need to go ahead and grab the current location at the top. drmp3_uint64 currentPCMFrame = pMP3->currentPCMFrame; // We never do more than the total number of MP3 frames and we limit it to 32-bits. drmp3_uint64 totalMP3FrameCount; drmp3_uint64 totalPCMFrameCount; if (!drmp3_get_mp3_and_pcm_frame_count(pMP3, &totalMP3FrameCount, &totalPCMFrameCount)) { return DRMP3_FALSE; } // If there's less than DRMP3_SEEK_LEADING_MP3_FRAMES+1 frames we just report 1 seek point which will be the very start of the stream. if (totalMP3FrameCount < DRMP3_SEEK_LEADING_MP3_FRAMES+1) { seekPointCount = 1; pSeekPoints[0].seekPosInBytes = 0; pSeekPoints[0].pcmFrameIndex = 0; pSeekPoints[0].mp3FramesToDiscard = 0; pSeekPoints[0].pcmFramesToDiscard = 0; } else { if (seekPointCount > totalMP3FrameCount-1) { seekPointCount = (drmp3_uint32)totalMP3FrameCount-1; } drmp3_uint64 pcmFramesBetweenSeekPoints = totalPCMFrameCount / (seekPointCount+1); // Here is where we actually calculate the seek points. We need to start by moving the start of the stream. We then enumerate over each // MP3 frame. if (!drmp3_seek_to_start_of_stream(pMP3)) { return DRMP3_FALSE; } // We need to cache the byte positions of the previous MP3 frames. As a new MP3 frame is iterated, we cycle the byte positions in this // array. The value in the first item in this array is the byte position that will be reported in the next seek point. drmp3__seeking_mp3_frame_info mp3FrameInfo[DRMP3_SEEK_LEADING_MP3_FRAMES+1]; drmp3_uint64 runningPCMFrameCount = 0; float runningPCMFrameCountFractionalPart = 0; // We need to initialize the array of MP3 byte positions for the leading MP3 frames. int iMP3Frame; for (iMP3Frame = 0; iMP3Frame < DRMP3_SEEK_LEADING_MP3_FRAMES+1; ++iMP3Frame) { // The byte position of the next frame will be the stream's cursor position, minus whatever is sitting in the buffer. drmp3_assert(pMP3->streamCursor >= pMP3->dataSize); mp3FrameInfo[iMP3Frame].bytePos = pMP3->streamCursor - pMP3->dataSize; mp3FrameInfo[iMP3Frame].pcmFrameIndex = runningPCMFrameCount; // We need to get information about this frame so we can know how many samples it contained. drmp3_uint32 pcmFramesInCurrentMP3FrameIn = drmp3_decode_next_frame_ex(pMP3, NULL, DRMP3_FALSE); if (pcmFramesInCurrentMP3FrameIn == 0) { return DRMP3_FALSE; // This should never happen. } drmp3__accumulate_running_pcm_frame_count(pMP3, pcmFramesInCurrentMP3FrameIn, &runningPCMFrameCount, &runningPCMFrameCountFractionalPart); } // At this point we will have extracted the byte positions of the leading MP3 frames. We can now start iterating over each seek point and // calculate them. drmp3_uint64 nextTargetPCMFrame = 0; drmp3_uint32 iSeekPoint; for (iSeekPoint = 0; iSeekPoint < seekPointCount; ++iSeekPoint) { nextTargetPCMFrame += pcmFramesBetweenSeekPoints; for (;;) { if (nextTargetPCMFrame < runningPCMFrameCount) { // The next seek point is in the current MP3 frame. pSeekPoints[iSeekPoint].seekPosInBytes = mp3FrameInfo[0].bytePos; pSeekPoints[iSeekPoint].pcmFrameIndex = nextTargetPCMFrame; pSeekPoints[iSeekPoint].mp3FramesToDiscard = DRMP3_SEEK_LEADING_MP3_FRAMES; pSeekPoints[iSeekPoint].pcmFramesToDiscard = (drmp3_uint16)(nextTargetPCMFrame - mp3FrameInfo[DRMP3_SEEK_LEADING_MP3_FRAMES-1].pcmFrameIndex); break; } else { // The next seek point is not in the current MP3 frame, so continue on to the next one. The first thing to do is cycle the cached // MP3 frame info. int i; for (i = 0; i < drmp3_countof(mp3FrameInfo)-1; ++i) { mp3FrameInfo[i] = mp3FrameInfo[i+1]; } // Cache previous MP3 frame info. mp3FrameInfo[drmp3_countof(mp3FrameInfo)-1].bytePos = pMP3->streamCursor - pMP3->dataSize; mp3FrameInfo[drmp3_countof(mp3FrameInfo)-1].pcmFrameIndex = runningPCMFrameCount; // Go to the next MP3 frame. This shouldn't ever fail, but just in case it does we just set the seek point and break. If it happens, it // should only ever do it for the last seek point. drmp3_uint32 pcmFramesInCurrentMP3FrameIn = drmp3_decode_next_frame_ex(pMP3, NULL, DRMP3_TRUE); if (pcmFramesInCurrentMP3FrameIn == 0) { pSeekPoints[iSeekPoint].seekPosInBytes = mp3FrameInfo[0].bytePos; pSeekPoints[iSeekPoint].pcmFrameIndex = nextTargetPCMFrame; pSeekPoints[iSeekPoint].mp3FramesToDiscard = DRMP3_SEEK_LEADING_MP3_FRAMES; pSeekPoints[iSeekPoint].pcmFramesToDiscard = (drmp3_uint16)(nextTargetPCMFrame - mp3FrameInfo[DRMP3_SEEK_LEADING_MP3_FRAMES-1].pcmFrameIndex); break; } drmp3__accumulate_running_pcm_frame_count(pMP3, pcmFramesInCurrentMP3FrameIn, &runningPCMFrameCount, &runningPCMFrameCountFractionalPart); } } } // Finally, we need to seek back to where we were. if (!drmp3_seek_to_start_of_stream(pMP3)) { return DRMP3_FALSE; } if (!drmp3_seek_to_pcm_frame(pMP3, currentPCMFrame)) { return DRMP3_FALSE; } } *pSeekPointCount = seekPointCount; return DRMP3_TRUE; } drmp3_bool32 drmp3_bind_seek_table(drmp3* pMP3, drmp3_uint32 seekPointCount, drmp3_seek_point* pSeekPoints) { if (pMP3 == NULL) { return DRMP3_FALSE; } if (seekPointCount == 0 || pSeekPoints == NULL) { // Unbinding. pMP3->seekPointCount = 0; pMP3->pSeekPoints = NULL; } else { // Binding. pMP3->seekPointCount = seekPointCount; pMP3->pSeekPoints = pSeekPoints; } return DRMP3_TRUE; } float* drmp3__full_read_and_close_f32(drmp3* pMP3, drmp3_config* pConfig, drmp3_uint64* pTotalFrameCount) { drmp3_assert(pMP3 != NULL); drmp3_uint64 totalFramesRead = 0; drmp3_uint64 framesCapacity = 0; float* pFrames = NULL; float temp[4096]; for (;;) { drmp3_uint64 framesToReadRightNow = drmp3_countof(temp) / pMP3->channels; drmp3_uint64 framesJustRead = drmp3_read_pcm_frames_f32(pMP3, framesToReadRightNow, temp); if (framesJustRead == 0) { break; } // Reallocate the output buffer if there's not enough room. if (framesCapacity < totalFramesRead + framesJustRead) { framesCapacity *= 2; if (framesCapacity < totalFramesRead + framesJustRead) { framesCapacity = totalFramesRead + framesJustRead; } drmp3_uint64 newFramesBufferSize = framesCapacity*pMP3->channels*sizeof(float); if (newFramesBufferSize > DRMP3_SIZE_MAX) { break; } float* pNewFrames = (float*)drmp3_realloc(pFrames, (size_t)newFramesBufferSize); if (pNewFrames == NULL) { drmp3_free(pFrames); break; } pFrames = pNewFrames; } drmp3_copy_memory(pFrames + totalFramesRead*pMP3->channels, temp, (size_t)(framesJustRead*pMP3->channels*sizeof(float))); totalFramesRead += framesJustRead; // If the number of frames we asked for is less that what we actually read it means we've reached the end. if (framesJustRead != framesToReadRightNow) { break; } } if (pConfig != NULL) { pConfig->outputChannels = pMP3->channels; pConfig->outputSampleRate = pMP3->sampleRate; } drmp3_uninit(pMP3); if (pTotalFrameCount) *pTotalFrameCount = totalFramesRead; return pFrames; } float* drmp3_open_and_read_f32(drmp3_read_proc onRead, drmp3_seek_proc onSeek, void* pUserData, drmp3_config* pConfig, drmp3_uint64* pTotalFrameCount) { drmp3 mp3; if (!drmp3_init(&mp3, onRead, onSeek, pUserData, pConfig)) { return NULL; } return drmp3__full_read_and_close_f32(&mp3, pConfig, pTotalFrameCount); } float* drmp3_open_memory_and_read_f32(const void* pData, size_t dataSize, drmp3_config* pConfig, drmp3_uint64* pTotalFrameCount) { drmp3 mp3; if (!drmp3_init_memory(&mp3, pData, dataSize, pConfig)) { return NULL; } return drmp3__full_read_and_close_f32(&mp3, pConfig, pTotalFrameCount); } #ifndef DR_MP3_NO_STDIO float* drmp3_open_file_and_read_f32(const char* filePath, drmp3_config* pConfig, drmp3_uint64* pTotalFrameCount) { drmp3 mp3; if (!drmp3_init_file(&mp3, filePath, pConfig)) { return NULL; } return drmp3__full_read_and_close_f32(&mp3, pConfig, pTotalFrameCount); } #endif void drmp3_free(void* p) { DRMP3_FREE(p); } #endif /*DR_MP3_IMPLEMENTATION*/ // DIFFERENCES BETWEEN minimp3 AND dr_mp3 // ====================================== // - First, keep in mind that minimp3 (https://github.com/lieff/minimp3) is where all the real work was done. All of the // code relating to the actual decoding remains mostly unmodified, apart from some namespacing changes. // - dr_mp3 adds a pulling style API which allows you to deliver raw data via callbacks. So, rather than pushing data // to the decoder, the decoder _pulls_ data from your callbacks. // - In addition to callbacks, a decoder can be initialized from a block of memory and a file. // - The dr_mp3 pull API reads PCM frames rather than whole MP3 frames. // - dr_mp3 adds convenience APIs for opening and decoding entire files in one go. // - dr_mp3 is fully namespaced, including the implementation section, which is more suitable when compiling projects // as a single translation unit (aka unity builds). At the time of writing this, a unity build is not possible when // using minimp3 in conjunction with stb_vorbis. dr_mp3 addresses this. // REVISION HISTORY // ================ // // v0.4.0 - 2018-12-16 // - API CHANGE: Rename some APIs: // - drmp3_read_f32 -> to drmp3_read_pcm_frames_f32 // - drmp3_seek_to_frame -> drmp3_seek_to_pcm_frame // - drmp3_open_and_decode_f32 -> drmp3_open_and_read_f32 // - drmp3_open_and_decode_memory_f32 -> drmp3_open_memory_and_read_f32 // - drmp3_open_and_decode_file_f32 -> drmp3_open_file_and_read_f32 // - Add drmp3_get_pcm_frame_count(). // - Add drmp3_get_mp3_frame_count(). // - Improve seeking performance. // // v0.3.2 - 2018-09-11 // - Fix a couple of memory leaks. // - Bring up to date with minimp3. // // v0.3.1 - 2018-08-25 // - Fix C++ build. // // v0.3.0 - 2018-08-25 // - Bring up to date with minimp3. This has a minor API change: the "pcm" parameter of drmp3dec_decode_frame() has // been changed from short* to void* because it can now output both s16 and f32 samples, depending on whether or // not the DR_MP3_FLOAT_OUTPUT option is set. // // v0.2.11 - 2018-08-08 // - Fix a bug where the last part of a file is not read. // // v0.2.10 - 2018-08-07 // - Improve 64-bit detection. // // v0.2.9 - 2018-08-05 // - Fix C++ build on older versions of GCC. // - Bring up to date with minimp3. // // v0.2.8 - 2018-08-02 // - Fix compilation errors with older versions of GCC. // // v0.2.7 - 2018-07-13 // - Bring up to date with minimp3. // // v0.2.6 - 2018-07-12 // - Bring up to date with minimp3. // // v0.2.5 - 2018-06-22 // - Bring up to date with minimp3. // // v0.2.4 - 2018-05-12 // - Bring up to date with minimp3. // // v0.2.3 - 2018-04-29 // - Fix TCC build. // // v0.2.2 - 2018-04-28 // - Fix bug when opening a decoder from memory. // // v0.2.1 - 2018-04-27 // - Efficiency improvements when the decoder reaches the end of the stream. // // v0.2 - 2018-04-21 // - Bring up to date with minimp3. // - Start using major.minor.revision versioning. // // v0.1d - 2018-03-30 // - Bring up to date with minimp3. // // v0.1c - 2018-03-11 // - Fix C++ build error. // // v0.1b - 2018-03-07 // - Bring up to date with minimp3. // // v0.1a - 2018-02-28 // - Fix compilation error on GCC/Clang. // - Fix some warnings. // // v0.1 - 2018-02-xx // - Initial versioned release. /* This is free and unencumbered software released into the public domain. Anyone is free to copy, modify, publish, use, compile, sell, or distribute this software, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means. In jurisdictions that recognize copyright laws, the author or authors of this software dedicate any and all copyright interest in the software to the public domain. We make this dedication for the benefit of the public at large and to the detriment of our heirs and successors. We intend this dedication to be an overt act of relinquishment in perpetuity of all present and future rights to this software under copyright law. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. For more information, please refer to */ /* https://github.com/lieff/minimp3 To the extent possible under law, the author(s) have dedicated all copyright and related and neighboring rights to this software to the public domain worldwide. This software is distributed without any warranty. See . */ ================================================ FILE: include/stb_image.h ================================================ /* stb_image - v2.27 - public domain image loader - http://nothings.org/stb no warranty implied; use at your own risk Do this: #define STB_IMAGE_IMPLEMENTATION before you include this file in *one* C or C++ file to create the implementation. // i.e. it should look like this: #include ... #include ... #include ... #define STB_IMAGE_IMPLEMENTATION #include "stb_image.h" You can #define STBI_ASSERT(x) before the #include to avoid using assert.h. And #define STBI_MALLOC, STBI_REALLOC, and STBI_FREE to avoid using malloc,realloc,free QUICK NOTES: Primarily of interest to game developers and other people who can avoid problematic images and only need the trivial interface JPEG baseline & progressive (12 bpc/arithmetic not supported, same as stock IJG lib) PNG 1/2/4/8/16-bit-per-channel TGA (not sure what subset, if a subset) BMP non-1bpp, non-RLE PSD (composited view only, no extra channels, 8/16 bit-per-channel) GIF (*comp always reports as 4-channel) HDR (radiance rgbE format) PIC (Softimage PIC) PNM (PPM and PGM binary only) Animated GIF still needs a proper API, but here's one way to do it: http://gist.github.com/urraka/685d9a6340b26b830d49 - decode from memory or through FILE (define STBI_NO_STDIO to remove code) - decode from arbitrary I/O callbacks - SIMD acceleration on x86/x64 (SSE2) and ARM (NEON) Full documentation under "DOCUMENTATION" below. LICENSE See end of file for license information. RECENT REVISION HISTORY: 2.27 (2021-07-11) document stbi_info better, 16-bit PNM support, bug fixes 2.26 (2020-07-13) many minor fixes 2.25 (2020-02-02) fix warnings 2.24 (2020-02-02) fix warnings; thread-local failure_reason and flip_vertically 2.23 (2019-08-11) fix clang static analysis warning 2.22 (2019-03-04) gif fixes, fix warnings 2.21 (2019-02-25) fix typo in comment 2.20 (2019-02-07) support utf8 filenames in Windows; fix warnings and platform ifdefs 2.19 (2018-02-11) fix warning 2.18 (2018-01-30) fix warnings 2.17 (2018-01-29) bugfix, 1-bit BMP, 16-bitness query, fix warnings 2.16 (2017-07-23) all functions have 16-bit variants; optimizations; bugfixes 2.15 (2017-03-18) fix png-1,2,4; all Imagenet JPGs; no runtime SSE detection on GCC 2.14 (2017-03-03) remove deprecated STBI_JPEG_OLD; fixes for Imagenet JPGs 2.13 (2016-12-04) experimental 16-bit API, only for PNG so far; fixes 2.12 (2016-04-02) fix typo in 2.11 PSD fix that caused crashes 2.11 (2016-04-02) 16-bit PNGS; enable SSE2 in non-gcc x64 RGB-format JPEG; remove white matting in PSD; allocate large structures on the stack; correct channel count for PNG & BMP 2.10 (2016-01-22) avoid warning introduced in 2.09 2.09 (2016-01-16) 16-bit TGA; comments in PNM files; STBI_REALLOC_SIZED See end of file for full revision history. ============================ Contributors ========================= Image formats Extensions, features Sean Barrett (jpeg, png, bmp) Jetro Lauha (stbi_info) Nicolas Schulz (hdr, psd) Martin "SpartanJ" Golini (stbi_info) Jonathan Dummer (tga) James "moose2000" Brown (iPhone PNG) Jean-Marc Lienher (gif) Ben "Disch" Wenger (io callbacks) Tom Seddon (pic) Omar Cornut (1/2/4-bit PNG) Thatcher Ulrich (psd) Nicolas Guillemot (vertical flip) Ken Miller (pgm, ppm) Richard Mitton (16-bit PSD) github:urraka (animated gif) Junggon Kim (PNM comments) Christopher Forseth (animated gif) Daniel Gibson (16-bit TGA) socks-the-fox (16-bit PNG) Jeremy Sawicki (handle all ImageNet JPGs) Optimizations & bugfixes Mikhail Morozov (1-bit BMP) Fabian "ryg" Giesen Anael Seghezzi (is-16-bit query) Arseny Kapoulkine Simon Breuss (16-bit PNM) John-Mark Allen Carmelo J Fdez-Aguera Bug & warning fixes Marc LeBlanc David Woo Guillaume George Martins Mozeiko Christpher Lloyd Jerry Jansson Joseph Thomson Blazej Dariusz Roszkowski Phil Jordan Dave Moore Roy Eltham Hayaki Saito Nathan Reed Won Chun Luke Graham Johan Duparc Nick Verigakis the Horde3D community Thomas Ruf Ronny Chevalier github:rlyeh Janez Zemva John Bartholomew Michal Cichon github:romigrou Jonathan Blow Ken Hamada Tero Hanninen github:svdijk Eugene Golushkov Laurent Gomila Cort Stratton github:snagar Aruelien Pocheville Sergio Gonzalez Thibault Reuille github:Zelex Cass Everitt Ryamond Barbiero github:grim210 Paul Du Bois Engin Manap Aldo Culquicondor github:sammyhw Philipp Wiesemann Dale Weiler Oriol Ferrer Mesia github:phprus Josh Tobin Matthew Gregan github:poppolopoppo Julian Raschke Gregory Mullen Christian Floisand github:darealshinji Baldur Karlsson Kevin Schmidt JR Smith github:Michaelangel007 Brad Weinberger Matvey Cherevko github:mosra Luca Sas Alexander Veselov Zack Middleton [reserved] Ryan C. Gordon [reserved] [reserved] DO NOT ADD YOUR NAME HERE Jacko Dirks To add your name to the credits, pick a random blank space in the middle and fill it. 80% of merge conflicts on stb PRs are due to people adding their name at the end of the credits. */ #ifndef STBI_INCLUDE_STB_IMAGE_H #define STBI_INCLUDE_STB_IMAGE_H // DOCUMENTATION // // Limitations: // - no 12-bit-per-channel JPEG // - no JPEGs with arithmetic coding // - GIF always returns *comp=4 // // Basic usage (see HDR discussion below for HDR usage): // int x,y,n; // unsigned char *data = stbi_load(filename, &x, &y, &n, 0); // // ... process data if not NULL ... // // ... x = width, y = height, n = # 8-bit components per pixel ... // // ... replace '0' with '1'..'4' to force that many components per pixel // // ... but 'n' will always be the number that it would have been if you said 0 // stbi_image_free(data) // // Standard parameters: // int *x -- outputs image width in pixels // int *y -- outputs image height in pixels // int *channels_in_file -- outputs # of image components in image file // int desired_channels -- if non-zero, # of image components requested in result // // The return value from an image loader is an 'unsigned char *' which points // to the pixel data, or NULL on an allocation failure or if the image is // corrupt or invalid. The pixel data consists of *y scanlines of *x pixels, // with each pixel consisting of N interleaved 8-bit components; the first // pixel pointed to is top-left-most in the image. There is no padding between // image scanlines or between pixels, regardless of format. The number of // components N is 'desired_channels' if desired_channels is non-zero, or // *channels_in_file otherwise. If desired_channels is non-zero, // *channels_in_file has the number of components that _would_ have been // output otherwise. E.g. if you set desired_channels to 4, you will always // get RGBA output, but you can check *channels_in_file to see if it's trivially // opaque because e.g. there were only 3 channels in the source image. // // An output image with N components has the following components interleaved // in this order in each pixel: // // N=#comp components // 1 grey // 2 grey, alpha // 3 red, green, blue // 4 red, green, blue, alpha // // If image loading fails for any reason, the return value will be NULL, // and *x, *y, *channels_in_file will be unchanged. The function // stbi_failure_reason() can be queried for an extremely brief, end-user // unfriendly explanation of why the load failed. Define STBI_NO_FAILURE_STRINGS // to avoid compiling these strings at all, and STBI_FAILURE_USERMSG to get slightly // more user-friendly ones. // // Paletted PNG, BMP, GIF, and PIC images are automatically depalettized. // // To query the width, height and component count of an image without having to // decode the full file, you can use the stbi_info family of functions: // // int x,y,n,ok; // ok = stbi_info(filename, &x, &y, &n); // // returns ok=1 and sets x, y, n if image is a supported format, // // 0 otherwise. // // Note that stb_image pervasively uses ints in its public API for sizes, // including sizes of memory buffers. This is now part of the API and thus // hard to change without causing breakage. As a result, the various image // loaders all have certain limits on image size; these differ somewhat // by format but generally boil down to either just under 2GB or just under // 1GB. When the decoded image would be larger than this, stb_image decoding // will fail. // // Additionally, stb_image will reject image files that have any of their // dimensions set to a larger value than the configurable STBI_MAX_DIMENSIONS, // which defaults to 2**24 = 16777216 pixels. Due to the above memory limit, // the only way to have an image with such dimensions load correctly // is for it to have a rather extreme aspect ratio. Either way, the // assumption here is that such larger images are likely to be malformed // or malicious. If you do need to load an image with individual dimensions // larger than that, and it still fits in the overall size limit, you can // #define STBI_MAX_DIMENSIONS on your own to be something larger. // // =========================================================================== // // UNICODE: // // If compiling for Windows and you wish to use Unicode filenames, compile // with // #define STBI_WINDOWS_UTF8 // and pass utf8-encoded filenames. Call stbi_convert_wchar_to_utf8 to convert // Windows wchar_t filenames to utf8. // // =========================================================================== // // Philosophy // // stb libraries are designed with the following priorities: // // 1. easy to use // 2. easy to maintain // 3. good performance // // Sometimes I let "good performance" creep up in priority over "easy to maintain", // and for best performance I may provide less-easy-to-use APIs that give higher // performance, in addition to the easy-to-use ones. Nevertheless, it's important // to keep in mind that from the standpoint of you, a client of this library, // all you care about is #1 and #3, and stb libraries DO NOT emphasize #3 above all. // // Some secondary priorities arise directly from the first two, some of which // provide more explicit reasons why performance can't be emphasized. // // - Portable ("ease of use") // - Small source code footprint ("easy to maintain") // - No dependencies ("ease of use") // // =========================================================================== // // I/O callbacks // // I/O callbacks allow you to read from arbitrary sources, like packaged // files or some other source. Data read from callbacks are processed // through a small internal buffer (currently 128 bytes) to try to reduce // overhead. // // The three functions you must define are "read" (reads some bytes of data), // "skip" (skips some bytes of data), "eof" (reports if the stream is at the end). // // =========================================================================== // // SIMD support // // The JPEG decoder will try to automatically use SIMD kernels on x86 when // supported by the compiler. For ARM Neon support, you must explicitly // request it. // // (The old do-it-yourself SIMD API is no longer supported in the current // code.) // // On x86, SSE2 will automatically be used when available based on a run-time // test; if not, the generic C versions are used as a fall-back. On ARM targets, // the typical path is to have separate builds for NEON and non-NEON devices // (at least this is true for iOS and Android). Therefore, the NEON support is // toggled by a build flag: define STBI_NEON to get NEON loops. // // If for some reason you do not want to use any of SIMD code, or if // you have issues compiling it, you can disable it entirely by // defining STBI_NO_SIMD. // // =========================================================================== // // HDR image support (disable by defining STBI_NO_HDR) // // stb_image supports loading HDR images in general, and currently the Radiance // .HDR file format specifically. You can still load any file through the existing // interface; if you attempt to load an HDR file, it will be automatically remapped // to LDR, assuming gamma 2.2 and an arbitrary scale factor defaulting to 1; // both of these constants can be reconfigured through this interface: // // stbi_hdr_to_ldr_gamma(2.2f); // stbi_hdr_to_ldr_scale(1.0f); // // (note, do not use _inverse_ constants; stbi_image will invert them // appropriately). // // Additionally, there is a new, parallel interface for loading files as // (linear) floats to preserve the full dynamic range: // // float *data = stbi_loadf(filename, &x, &y, &n, 0); // // If you load LDR images through this interface, those images will // be promoted to floating point values, run through the inverse of // constants corresponding to the above: // // stbi_ldr_to_hdr_scale(1.0f); // stbi_ldr_to_hdr_gamma(2.2f); // // Finally, given a filename (or an open file or memory block--see header // file for details) containing image data, you can query for the "most // appropriate" interface to use (that is, whether the image is HDR or // not), using: // // stbi_is_hdr(char *filename); // // =========================================================================== // // iPhone PNG support: // // We optionally support converting iPhone-formatted PNGs (which store // premultiplied BGRA) back to RGB, even though they're internally encoded // differently. To enable this conversion, call // stbi_convert_iphone_png_to_rgb(1). // // Call stbi_set_unpremultiply_on_load(1) as well to force a divide per // pixel to remove any premultiplied alpha *only* if the image file explicitly // says there's premultiplied data (currently only happens in iPhone images, // and only if iPhone convert-to-rgb processing is on). // // =========================================================================== // // ADDITIONAL CONFIGURATION // // - You can suppress implementation of any of the decoders to reduce // your code footprint by #defining one or more of the following // symbols before creating the implementation. // // STBI_NO_JPEG // STBI_NO_PNG // STBI_NO_BMP // STBI_NO_PSD // STBI_NO_TGA // STBI_NO_GIF // STBI_NO_HDR // STBI_NO_PIC // STBI_NO_PNM (.ppm and .pgm) // // - You can request *only* certain decoders and suppress all other ones // (this will be more forward-compatible, as addition of new decoders // doesn't require you to disable them explicitly): // // STBI_ONLY_JPEG // STBI_ONLY_PNG // STBI_ONLY_BMP // STBI_ONLY_PSD // STBI_ONLY_TGA // STBI_ONLY_GIF // STBI_ONLY_HDR // STBI_ONLY_PIC // STBI_ONLY_PNM (.ppm and .pgm) // // - If you use STBI_NO_PNG (or _ONLY_ without PNG), and you still // want the zlib decoder to be available, #define STBI_SUPPORT_ZLIB // // - If you define STBI_MAX_DIMENSIONS, stb_image will reject images greater // than that size (in either width or height) without further processing. // This is to let programs in the wild set an upper bound to prevent // denial-of-service attacks on untrusted data, as one could generate a // valid image of gigantic dimensions and force stb_image to allocate a // huge block of memory and spend disproportionate time decoding it. By // default this is set to (1 << 24), which is 16777216, but that's still // very big. #ifndef STBI_NO_STDIO #include #endif // STBI_NO_STDIO #define STBI_VERSION 1 enum { STBI_default = 0, // only used for desired_channels STBI_grey = 1, STBI_grey_alpha = 2, STBI_rgb = 3, STBI_rgb_alpha = 4 }; #include typedef unsigned char stbi_uc; typedef unsigned short stbi_us; #ifdef __cplusplus extern "C" { #endif #ifndef STBIDEF #ifdef STB_IMAGE_STATIC #define STBIDEF static #else #define STBIDEF extern #endif #endif ////////////////////////////////////////////////////////////////////////////// // // PRIMARY API - works on images of any type // // // load image by filename, open file, or memory buffer // typedef struct { int (*read) (void *user,char *data,int size); // fill 'data' with 'size' bytes. return number of bytes actually read void (*skip) (void *user,int n); // skip the next 'n' bytes, or 'unget' the last -n bytes if negative int (*eof) (void *user); // returns nonzero if we are at end of file/data } stbi_io_callbacks; //////////////////////////////////// // // 8-bits-per-channel interface // STBIDEF stbi_uc *stbi_load_from_memory (stbi_uc const *buffer, int len , int *x, int *y, int *channels_in_file, int desired_channels); STBIDEF stbi_uc *stbi_load_from_callbacks(stbi_io_callbacks const *clbk , void *user, int *x, int *y, int *channels_in_file, int desired_channels); #ifndef STBI_NO_STDIO STBIDEF stbi_uc *stbi_load (char const *filename, int *x, int *y, int *channels_in_file, int desired_channels); STBIDEF stbi_uc *stbi_load_from_file (FILE *f, int *x, int *y, int *channels_in_file, int desired_channels); // for stbi_load_from_file, file pointer is left pointing immediately after image #endif #ifndef STBI_NO_GIF __attribute__ ((visibility ("default"))) stbi_uc *stbi_load_gif_from_memory(stbi_uc const *buffer, int len, int **delays, int *x, int *y, int *z, int *comp, int req_comp); #endif #ifdef STBI_WINDOWS_UTF8 STBIDEF int stbi_convert_wchar_to_utf8(char *buffer, size_t bufferlen, const wchar_t* input); #endif //////////////////////////////////// // // 16-bits-per-channel interface // STBIDEF stbi_us *stbi_load_16_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *channels_in_file, int desired_channels); STBIDEF stbi_us *stbi_load_16_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *channels_in_file, int desired_channels); #ifndef STBI_NO_STDIO STBIDEF stbi_us *stbi_load_16 (char const *filename, int *x, int *y, int *channels_in_file, int desired_channels); STBIDEF stbi_us *stbi_load_from_file_16(FILE *f, int *x, int *y, int *channels_in_file, int desired_channels); #endif //////////////////////////////////// // // float-per-channel interface // #ifndef STBI_NO_LINEAR STBIDEF float *stbi_loadf_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *channels_in_file, int desired_channels); STBIDEF float *stbi_loadf_from_callbacks (stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *channels_in_file, int desired_channels); #ifndef STBI_NO_STDIO STBIDEF float *stbi_loadf (char const *filename, int *x, int *y, int *channels_in_file, int desired_channels); STBIDEF float *stbi_loadf_from_file (FILE *f, int *x, int *y, int *channels_in_file, int desired_channels); #endif #endif #ifndef STBI_NO_HDR STBIDEF void stbi_hdr_to_ldr_gamma(float gamma); STBIDEF void stbi_hdr_to_ldr_scale(float scale); #endif // STBI_NO_HDR #ifndef STBI_NO_LINEAR STBIDEF void stbi_ldr_to_hdr_gamma(float gamma); STBIDEF void stbi_ldr_to_hdr_scale(float scale); #endif // STBI_NO_LINEAR // stbi_is_hdr is always defined, but always returns false if STBI_NO_HDR STBIDEF int stbi_is_hdr_from_callbacks(stbi_io_callbacks const *clbk, void *user); STBIDEF int stbi_is_hdr_from_memory(stbi_uc const *buffer, int len); #ifndef STBI_NO_STDIO STBIDEF int stbi_is_hdr (char const *filename); STBIDEF int stbi_is_hdr_from_file(FILE *f); #endif // STBI_NO_STDIO // get a VERY brief reason for failure // on most compilers (and ALL modern mainstream compilers) this is threadsafe STBIDEF const char *stbi_failure_reason (void); // free the loaded image -- this is just free() __attribute__ ((visibility ("default"))) void stbi_image_free (void *retval_from_stbi_load); // get image dimensions & components without fully decoding STBIDEF int stbi_info_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp); STBIDEF int stbi_info_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *comp); STBIDEF int stbi_is_16_bit_from_memory(stbi_uc const *buffer, int len); STBIDEF int stbi_is_16_bit_from_callbacks(stbi_io_callbacks const *clbk, void *user); #ifndef STBI_NO_STDIO STBIDEF int stbi_info (char const *filename, int *x, int *y, int *comp); STBIDEF int stbi_info_from_file (FILE *f, int *x, int *y, int *comp); STBIDEF int stbi_is_16_bit (char const *filename); STBIDEF int stbi_is_16_bit_from_file(FILE *f); #endif // for image formats that explicitly notate that they have premultiplied alpha, // we just return the colors as stored in the file. set this flag to force // unpremultiplication. results are undefined if the unpremultiply overflow. STBIDEF void stbi_set_unpremultiply_on_load(int flag_true_if_should_unpremultiply); // indicate whether we should process iphone images back to canonical format, // or just pass them through "as-is" STBIDEF void stbi_convert_iphone_png_to_rgb(int flag_true_if_should_convert); // flip the image vertically, so the first pixel in the output array is the bottom left __attribute__ ((visibility ("default"))) void stbi_set_flip_vertically_on_load(int flag_true_if_should_flip); // as above, but only applies to images loaded on the thread that calls the function // this function is only available if your compiler supports thread-local variables; // calling it will fail to link if your compiler doesn't STBIDEF void stbi_set_unpremultiply_on_load_thread(int flag_true_if_should_unpremultiply); STBIDEF void stbi_convert_iphone_png_to_rgb_thread(int flag_true_if_should_convert); STBIDEF void stbi_set_flip_vertically_on_load_thread(int flag_true_if_should_flip); // ZLIB client - used by PNG, available for other purposes STBIDEF char *stbi_zlib_decode_malloc_guesssize(const char *buffer, int len, int initial_size, int *outlen); STBIDEF char *stbi_zlib_decode_malloc_guesssize_headerflag(const char *buffer, int len, int initial_size, int *outlen, int parse_header); STBIDEF char *stbi_zlib_decode_malloc(const char *buffer, int len, int *outlen); STBIDEF int stbi_zlib_decode_buffer(char *obuffer, int olen, const char *ibuffer, int ilen); STBIDEF char *stbi_zlib_decode_noheader_malloc(const char *buffer, int len, int *outlen); STBIDEF int stbi_zlib_decode_noheader_buffer(char *obuffer, int olen, const char *ibuffer, int ilen); #ifdef __cplusplus } #endif // // //// end header file ///////////////////////////////////////////////////// #endif // STBI_INCLUDE_STB_IMAGE_H #ifdef STB_IMAGE_IMPLEMENTATION #if defined(STBI_ONLY_JPEG) || defined(STBI_ONLY_PNG) || defined(STBI_ONLY_BMP) \ || defined(STBI_ONLY_TGA) || defined(STBI_ONLY_GIF) || defined(STBI_ONLY_PSD) \ || defined(STBI_ONLY_HDR) || defined(STBI_ONLY_PIC) || defined(STBI_ONLY_PNM) \ || defined(STBI_ONLY_ZLIB) #ifndef STBI_ONLY_JPEG #define STBI_NO_JPEG #endif #ifndef STBI_ONLY_PNG #define STBI_NO_PNG #endif #ifndef STBI_ONLY_BMP #define STBI_NO_BMP #endif #ifndef STBI_ONLY_PSD #define STBI_NO_PSD #endif #ifndef STBI_ONLY_TGA #define STBI_NO_TGA #endif #ifndef STBI_ONLY_GIF #define STBI_NO_GIF #endif #ifndef STBI_ONLY_HDR #define STBI_NO_HDR #endif #ifndef STBI_ONLY_PIC #define STBI_NO_PIC #endif #ifndef STBI_ONLY_PNM #define STBI_NO_PNM #endif #endif #if defined(STBI_NO_PNG) && !defined(STBI_SUPPORT_ZLIB) && !defined(STBI_NO_ZLIB) #define STBI_NO_ZLIB #endif #include #include // ptrdiff_t on osx #include #include #include #if !defined(STBI_NO_LINEAR) || !defined(STBI_NO_HDR) #include // ldexp, pow #endif #ifndef STBI_NO_STDIO #include #endif #ifndef STBI_ASSERT #include #define STBI_ASSERT(x) assert(x) #endif #ifdef __cplusplus #define STBI_EXTERN extern "C" #else #define STBI_EXTERN extern #endif #ifndef _MSC_VER #ifdef __cplusplus #define stbi_inline inline #else #define stbi_inline #endif #else #define stbi_inline __forceinline #endif #ifndef STBI_NO_THREAD_LOCALS #if defined(__cplusplus) && __cplusplus >= 201103L #define STBI_THREAD_LOCAL thread_local #elif defined(__GNUC__) && __GNUC__ < 5 #define STBI_THREAD_LOCAL __thread #elif defined(_MSC_VER) #define STBI_THREAD_LOCAL __declspec(thread) #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L && !defined(__STDC_NO_THREADS__) #define STBI_THREAD_LOCAL _Thread_local #endif #ifndef STBI_THREAD_LOCAL #if defined(__GNUC__) #define STBI_THREAD_LOCAL __thread #endif #endif #endif #ifdef _MSC_VER typedef unsigned short stbi__uint16; typedef signed short stbi__int16; typedef unsigned int stbi__uint32; typedef signed int stbi__int32; #else #include typedef uint16_t stbi__uint16; typedef int16_t stbi__int16; typedef uint32_t stbi__uint32; typedef int32_t stbi__int32; #endif // should produce compiler error if size is wrong typedef unsigned char validate_uint32[sizeof(stbi__uint32)==4 ? 1 : -1]; #ifdef _MSC_VER #define STBI_NOTUSED(v) (void)(v) #else #define STBI_NOTUSED(v) (void)sizeof(v) #endif #ifdef _MSC_VER #define STBI_HAS_LROTL #endif #ifdef STBI_HAS_LROTL #define stbi_lrot(x,y) _lrotl(x,y) #else #define stbi_lrot(x,y) (((x) << (y)) | ((x) >> (-(y) & 31))) #endif #if defined(STBI_MALLOC) && defined(STBI_FREE) && (defined(STBI_REALLOC) || defined(STBI_REALLOC_SIZED)) // ok #elif !defined(STBI_MALLOC) && !defined(STBI_FREE) && !defined(STBI_REALLOC) && !defined(STBI_REALLOC_SIZED) // ok #else #error "Must define all or none of STBI_MALLOC, STBI_FREE, and STBI_REALLOC (or STBI_REALLOC_SIZED)." #endif #ifndef STBI_MALLOC #define STBI_MALLOC(sz) malloc(sz) #define STBI_REALLOC(p,newsz) realloc(p,newsz) #define STBI_FREE(p) free(p) #endif #ifndef STBI_REALLOC_SIZED #define STBI_REALLOC_SIZED(p,oldsz,newsz) STBI_REALLOC(p,newsz) #endif // x86/x64 detection #if defined(__x86_64__) || defined(_M_X64) #define STBI__X64_TARGET #elif defined(__i386) || defined(_M_IX86) #define STBI__X86_TARGET #endif #if defined(__GNUC__) && defined(STBI__X86_TARGET) && !defined(__SSE2__) && !defined(STBI_NO_SIMD) // gcc doesn't support sse2 intrinsics unless you compile with -msse2, // which in turn means it gets to use SSE2 everywhere. This is unfortunate, // but previous attempts to provide the SSE2 functions with runtime // detection caused numerous issues. The way architecture extensions are // exposed in GCC/Clang is, sadly, not really suited for one-file libs. // New behavior: if compiled with -msse2, we use SSE2 without any // detection; if not, we don't use it at all. #define STBI_NO_SIMD #endif #if defined(__MINGW32__) && defined(STBI__X86_TARGET) && !defined(STBI_MINGW_ENABLE_SSE2) && !defined(STBI_NO_SIMD) // Note that __MINGW32__ doesn't actually mean 32-bit, so we have to avoid STBI__X64_TARGET // // 32-bit MinGW wants ESP to be 16-byte aligned, but this is not in the // Windows ABI and VC++ as well as Windows DLLs don't maintain that invariant. // As a result, enabling SSE2 on 32-bit MinGW is dangerous when not // simultaneously enabling "-mstackrealign". // // See https://github.com/nothings/stb/issues/81 for more information. // // So default to no SSE2 on 32-bit MinGW. If you've read this far and added // -mstackrealign to your build settings, feel free to #define STBI_MINGW_ENABLE_SSE2. #define STBI_NO_SIMD #endif #if !defined(STBI_NO_SIMD) && (defined(STBI__X86_TARGET) || defined(STBI__X64_TARGET)) #define STBI_SSE2 #include #ifdef _MSC_VER #if _MSC_VER >= 1400 // not VC6 #include // __cpuid static int stbi__cpuid3(void) { int info[4]; __cpuid(info,1); return info[3]; } #else static int stbi__cpuid3(void) { int res; __asm { mov eax,1 cpuid mov res,edx } return res; } #endif #define STBI_SIMD_ALIGN(type, name) __declspec(align(16)) type name #if !defined(STBI_NO_JPEG) && defined(STBI_SSE2) static int stbi__sse2_available(void) { int info3 = stbi__cpuid3(); return ((info3 >> 26) & 1) != 0; } #endif #else // assume GCC-style if not VC++ #define STBI_SIMD_ALIGN(type, name) type name __attribute__((aligned(16))) #if !defined(STBI_NO_JPEG) && defined(STBI_SSE2) static int stbi__sse2_available(void) { // If we're even attempting to compile this on GCC/Clang, that means // -msse2 is on, which means the compiler is allowed to use SSE2 // instructions at will, and so are we. return 1; } #endif #endif #endif // ARM NEON #if defined(STBI_NO_SIMD) && defined(STBI_NEON) #undef STBI_NEON #endif #ifdef STBI_NEON #include #ifdef _MSC_VER #define STBI_SIMD_ALIGN(type, name) __declspec(align(16)) type name #else #define STBI_SIMD_ALIGN(type, name) type name __attribute__((aligned(16))) #endif #endif #ifndef STBI_SIMD_ALIGN #define STBI_SIMD_ALIGN(type, name) type name #endif #ifndef STBI_MAX_DIMENSIONS #define STBI_MAX_DIMENSIONS (1 << 24) #endif /////////////////////////////////////////////// // // stbi__context struct and start_xxx functions // stbi__context structure is our basic context used by all images, so it // contains all the IO context, plus some basic image information typedef struct { stbi__uint32 img_x, img_y; int img_n, img_out_n; stbi_io_callbacks io; void *io_user_data; int read_from_callbacks; int buflen; stbi_uc buffer_start[128]; int callback_already_read; stbi_uc *img_buffer, *img_buffer_end; stbi_uc *img_buffer_original, *img_buffer_original_end; } stbi__context; static void stbi__refill_buffer(stbi__context *s); // initialize a memory-decode context static void stbi__start_mem(stbi__context *s, stbi_uc const *buffer, int len) { s->io.read = NULL; s->read_from_callbacks = 0; s->callback_already_read = 0; s->img_buffer = s->img_buffer_original = (stbi_uc *) buffer; s->img_buffer_end = s->img_buffer_original_end = (stbi_uc *) buffer+len; } // initialize a callback-based context static void stbi__start_callbacks(stbi__context *s, stbi_io_callbacks *c, void *user) { s->io = *c; s->io_user_data = user; s->buflen = sizeof(s->buffer_start); s->read_from_callbacks = 1; s->callback_already_read = 0; s->img_buffer = s->img_buffer_original = s->buffer_start; stbi__refill_buffer(s); s->img_buffer_original_end = s->img_buffer_end; } #ifndef STBI_NO_STDIO static int stbi__stdio_read(void *user, char *data, int size) { return (int) fread(data,1,size,(FILE*) user); } static void stbi__stdio_skip(void *user, int n) { int ch; fseek((FILE*) user, n, SEEK_CUR); ch = fgetc((FILE*) user); /* have to read a byte to reset feof()'s flag */ if (ch != EOF) { ungetc(ch, (FILE *) user); /* push byte back onto stream if valid. */ } } static int stbi__stdio_eof(void *user) { return feof((FILE*) user) || ferror((FILE *) user); } static stbi_io_callbacks stbi__stdio_callbacks = { stbi__stdio_read, stbi__stdio_skip, stbi__stdio_eof, }; static void stbi__start_file(stbi__context *s, FILE *f) { stbi__start_callbacks(s, &stbi__stdio_callbacks, (void *) f); } //static void stop_file(stbi__context *s) { } #endif // !STBI_NO_STDIO static void stbi__rewind(stbi__context *s) { // conceptually rewind SHOULD rewind to the beginning of the stream, // but we just rewind to the beginning of the initial buffer, because // we only use it after doing 'test', which only ever looks at at most 92 bytes s->img_buffer = s->img_buffer_original; s->img_buffer_end = s->img_buffer_original_end; } enum { STBI_ORDER_RGB, STBI_ORDER_BGR }; typedef struct { int bits_per_channel; int num_channels; int channel_order; } stbi__result_info; #ifndef STBI_NO_JPEG static int stbi__jpeg_test(stbi__context *s); static void *stbi__jpeg_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); static int stbi__jpeg_info(stbi__context *s, int *x, int *y, int *comp); #endif #ifndef STBI_NO_PNG static int stbi__png_test(stbi__context *s); static void *stbi__png_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); static int stbi__png_info(stbi__context *s, int *x, int *y, int *comp); static int stbi__png_is16(stbi__context *s); #endif #ifndef STBI_NO_BMP static int stbi__bmp_test(stbi__context *s); static void *stbi__bmp_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); static int stbi__bmp_info(stbi__context *s, int *x, int *y, int *comp); #endif #ifndef STBI_NO_TGA static int stbi__tga_test(stbi__context *s); static void *stbi__tga_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); static int stbi__tga_info(stbi__context *s, int *x, int *y, int *comp); #endif #ifndef STBI_NO_PSD static int stbi__psd_test(stbi__context *s); static void *stbi__psd_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri, int bpc); static int stbi__psd_info(stbi__context *s, int *x, int *y, int *comp); static int stbi__psd_is16(stbi__context *s); #endif #ifndef STBI_NO_HDR static int stbi__hdr_test(stbi__context *s); static float *stbi__hdr_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); static int stbi__hdr_info(stbi__context *s, int *x, int *y, int *comp); #endif #ifndef STBI_NO_PIC static int stbi__pic_test(stbi__context *s); static void *stbi__pic_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); static int stbi__pic_info(stbi__context *s, int *x, int *y, int *comp); #endif #ifndef STBI_NO_GIF static int stbi__gif_test(stbi__context *s); static void *stbi__gif_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); static void *stbi__load_gif_main(stbi__context *s, int **delays, int *x, int *y, int *z, int *comp, int req_comp); static int stbi__gif_info(stbi__context *s, int *x, int *y, int *comp); #endif #ifndef STBI_NO_PNM static int stbi__pnm_test(stbi__context *s); static void *stbi__pnm_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); static int stbi__pnm_info(stbi__context *s, int *x, int *y, int *comp); static int stbi__pnm_is16(stbi__context *s); #endif static #ifdef STBI_THREAD_LOCAL STBI_THREAD_LOCAL #endif const char *stbi__g_failure_reason; STBIDEF const char *stbi_failure_reason(void) { return stbi__g_failure_reason; } #ifndef STBI_NO_FAILURE_STRINGS static int stbi__err(const char *str) { stbi__g_failure_reason = str; return 0; } #endif static void *stbi__malloc(size_t size) { return STBI_MALLOC(size); } // stb_image uses ints pervasively, including for offset calculations. // therefore the largest decoded image size we can support with the // current code, even on 64-bit targets, is INT_MAX. this is not a // significant limitation for the intended use case. // // we do, however, need to make sure our size calculations don't // overflow. hence a few helper functions for size calculations that // multiply integers together, making sure that they're non-negative // and no overflow occurs. // return 1 if the sum is valid, 0 on overflow. // negative terms are considered invalid. static int stbi__addsizes_valid(int a, int b) { if (b < 0) return 0; // now 0 <= b <= INT_MAX, hence also // 0 <= INT_MAX - b <= INTMAX. // And "a + b <= INT_MAX" (which might overflow) is the // same as a <= INT_MAX - b (no overflow) return a <= INT_MAX - b; } // returns 1 if the product is valid, 0 on overflow. // negative factors are considered invalid. static int stbi__mul2sizes_valid(int a, int b) { if (a < 0 || b < 0) return 0; if (b == 0) return 1; // mul-by-0 is always safe // portable way to check for no overflows in a*b return a <= INT_MAX/b; } #if !defined(STBI_NO_JPEG) || !defined(STBI_NO_PNG) || !defined(STBI_NO_TGA) || !defined(STBI_NO_HDR) // returns 1 if "a*b + add" has no negative terms/factors and doesn't overflow static int stbi__mad2sizes_valid(int a, int b, int add) { return stbi__mul2sizes_valid(a, b) && stbi__addsizes_valid(a*b, add); } #endif // returns 1 if "a*b*c + add" has no negative terms/factors and doesn't overflow static int stbi__mad3sizes_valid(int a, int b, int c, int add) { return stbi__mul2sizes_valid(a, b) && stbi__mul2sizes_valid(a*b, c) && stbi__addsizes_valid(a*b*c, add); } // returns 1 if "a*b*c*d + add" has no negative terms/factors and doesn't overflow #if !defined(STBI_NO_LINEAR) || !defined(STBI_NO_HDR) || !defined(STBI_NO_PNM) static int stbi__mad4sizes_valid(int a, int b, int c, int d, int add) { return stbi__mul2sizes_valid(a, b) && stbi__mul2sizes_valid(a*b, c) && stbi__mul2sizes_valid(a*b*c, d) && stbi__addsizes_valid(a*b*c*d, add); } #endif #if !defined(STBI_NO_JPEG) || !defined(STBI_NO_PNG) || !defined(STBI_NO_TGA) || !defined(STBI_NO_HDR) // mallocs with size overflow checking static void *stbi__malloc_mad2(int a, int b, int add) { if (!stbi__mad2sizes_valid(a, b, add)) return NULL; return stbi__malloc(a*b + add); } #endif static void *stbi__malloc_mad3(int a, int b, int c, int add) { if (!stbi__mad3sizes_valid(a, b, c, add)) return NULL; return stbi__malloc(a*b*c + add); } #if !defined(STBI_NO_LINEAR) || !defined(STBI_NO_HDR) || !defined(STBI_NO_PNM) static void *stbi__malloc_mad4(int a, int b, int c, int d, int add) { if (!stbi__mad4sizes_valid(a, b, c, d, add)) return NULL; return stbi__malloc(a*b*c*d + add); } #endif // stbi__err - error // stbi__errpf - error returning pointer to float // stbi__errpuc - error returning pointer to unsigned char #ifdef STBI_NO_FAILURE_STRINGS #define stbi__err(x,y) 0 #elif defined(STBI_FAILURE_USERMSG) #define stbi__err(x,y) stbi__err(y) #else #define stbi__err(x,y) stbi__err(x) #endif #define stbi__errpf(x,y) ((float *)(size_t) (stbi__err(x,y)?NULL:NULL)) #define stbi__errpuc(x,y) ((unsigned char *)(size_t) (stbi__err(x,y)?NULL:NULL)) __attribute__ ((visibility ("default"))) void stbi_image_free(void *retval_from_stbi_load) { STBI_FREE(retval_from_stbi_load); } #ifndef STBI_NO_LINEAR static float *stbi__ldr_to_hdr(stbi_uc *data, int x, int y, int comp); #endif #ifndef STBI_NO_HDR static stbi_uc *stbi__hdr_to_ldr(float *data, int x, int y, int comp); #endif static int stbi__vertically_flip_on_load_global = 0; __attribute__ ((visibility ("default"))) void stbi_set_flip_vertically_on_load(int flag_true_if_should_flip) { stbi__vertically_flip_on_load_global = flag_true_if_should_flip; } #ifndef STBI_THREAD_LOCAL #define stbi__vertically_flip_on_load stbi__vertically_flip_on_load_global #else static STBI_THREAD_LOCAL int stbi__vertically_flip_on_load_local, stbi__vertically_flip_on_load_set; STBIDEF void stbi_set_flip_vertically_on_load_thread(int flag_true_if_should_flip) { stbi__vertically_flip_on_load_local = flag_true_if_should_flip; stbi__vertically_flip_on_load_set = 1; } #define stbi__vertically_flip_on_load (stbi__vertically_flip_on_load_set \ ? stbi__vertically_flip_on_load_local \ : stbi__vertically_flip_on_load_global) #endif // STBI_THREAD_LOCAL static void *stbi__load_main(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri, int bpc) { memset(ri, 0, sizeof(*ri)); // make sure it's initialized if we add new fields ri->bits_per_channel = 8; // default is 8 so most paths don't have to be changed ri->channel_order = STBI_ORDER_RGB; // all current input & output are this, but this is here so we can add BGR order ri->num_channels = 0; // test the formats with a very explicit header first (at least a FOURCC // or distinctive magic number first) #ifndef STBI_NO_PNG if (stbi__png_test(s)) return stbi__png_load(s,x,y,comp,req_comp, ri); #endif #ifndef STBI_NO_BMP if (stbi__bmp_test(s)) return stbi__bmp_load(s,x,y,comp,req_comp, ri); #endif #ifndef STBI_NO_GIF if (stbi__gif_test(s)) return stbi__gif_load(s,x,y,comp,req_comp, ri); #endif #ifndef STBI_NO_PSD if (stbi__psd_test(s)) return stbi__psd_load(s,x,y,comp,req_comp, ri, bpc); #else STBI_NOTUSED(bpc); #endif #ifndef STBI_NO_PIC if (stbi__pic_test(s)) return stbi__pic_load(s,x,y,comp,req_comp, ri); #endif // then the formats that can end up attempting to load with just 1 or 2 // bytes matching expectations; these are prone to false positives, so // try them later #ifndef STBI_NO_JPEG if (stbi__jpeg_test(s)) return stbi__jpeg_load(s,x,y,comp,req_comp, ri); #endif #ifndef STBI_NO_PNM if (stbi__pnm_test(s)) return stbi__pnm_load(s,x,y,comp,req_comp, ri); #endif #ifndef STBI_NO_HDR if (stbi__hdr_test(s)) { float *hdr = stbi__hdr_load(s, x,y,comp,req_comp, ri); return stbi__hdr_to_ldr(hdr, *x, *y, req_comp ? req_comp : *comp); } #endif #ifndef STBI_NO_TGA // test tga last because it's a crappy test! if (stbi__tga_test(s)) return stbi__tga_load(s,x,y,comp,req_comp, ri); #endif return stbi__errpuc("unknown image type", "Image not of any known type, or corrupt"); } static stbi_uc *stbi__convert_16_to_8(stbi__uint16 *orig, int w, int h, int channels) { int i; int img_len = w * h * channels; stbi_uc *reduced; reduced = (stbi_uc *) stbi__malloc(img_len); if (reduced == NULL) return stbi__errpuc("outofmem", "Out of memory"); for (i = 0; i < img_len; ++i) reduced[i] = (stbi_uc)((orig[i] >> 8) & 0xFF); // top half of each byte is sufficient approx of 16->8 bit scaling STBI_FREE(orig); return reduced; } static stbi__uint16 *stbi__convert_8_to_16(stbi_uc *orig, int w, int h, int channels) { int i; int img_len = w * h * channels; stbi__uint16 *enlarged; enlarged = (stbi__uint16 *) stbi__malloc(img_len*2); if (enlarged == NULL) return (stbi__uint16 *) stbi__errpuc("outofmem", "Out of memory"); for (i = 0; i < img_len; ++i) enlarged[i] = (stbi__uint16)((orig[i] << 8) + orig[i]); // replicate to high and low byte, maps 0->0, 255->0xffff STBI_FREE(orig); return enlarged; } static void stbi__vertical_flip(void *image, int w, int h, int bytes_per_pixel) { int row; size_t bytes_per_row = (size_t)w * bytes_per_pixel; stbi_uc temp[2048]; stbi_uc *bytes = (stbi_uc *)image; for (row = 0; row < (h>>1); row++) { stbi_uc *row0 = bytes + row*bytes_per_row; stbi_uc *row1 = bytes + (h - row - 1)*bytes_per_row; // swap row0 with row1 size_t bytes_left = bytes_per_row; while (bytes_left) { size_t bytes_copy = (bytes_left < sizeof(temp)) ? bytes_left : sizeof(temp); memcpy(temp, row0, bytes_copy); memcpy(row0, row1, bytes_copy); memcpy(row1, temp, bytes_copy); row0 += bytes_copy; row1 += bytes_copy; bytes_left -= bytes_copy; } } } #ifndef STBI_NO_GIF static void stbi__vertical_flip_slices(void *image, int w, int h, int z, int bytes_per_pixel) { int slice; int slice_size = w * h * bytes_per_pixel; stbi_uc *bytes = (stbi_uc *)image; for (slice = 0; slice < z; ++slice) { stbi__vertical_flip(bytes, w, h, bytes_per_pixel); bytes += slice_size; } } #endif static unsigned char *stbi__load_and_postprocess_8bit(stbi__context *s, int *x, int *y, int *comp, int req_comp) { stbi__result_info ri; void *result = stbi__load_main(s, x, y, comp, req_comp, &ri, 8); if (result == NULL) return NULL; // it is the responsibility of the loaders to make sure we get either 8 or 16 bit. STBI_ASSERT(ri.bits_per_channel == 8 || ri.bits_per_channel == 16); if (ri.bits_per_channel != 8) { result = stbi__convert_16_to_8((stbi__uint16 *) result, *x, *y, req_comp == 0 ? *comp : req_comp); ri.bits_per_channel = 8; } // @TODO: move stbi__convert_format to here if (stbi__vertically_flip_on_load) { int channels = req_comp ? req_comp : *comp; stbi__vertical_flip(result, *x, *y, channels * sizeof(stbi_uc)); } return (unsigned char *) result; } static stbi__uint16 *stbi__load_and_postprocess_16bit(stbi__context *s, int *x, int *y, int *comp, int req_comp) { stbi__result_info ri; void *result = stbi__load_main(s, x, y, comp, req_comp, &ri, 16); if (result == NULL) return NULL; // it is the responsibility of the loaders to make sure we get either 8 or 16 bit. STBI_ASSERT(ri.bits_per_channel == 8 || ri.bits_per_channel == 16); if (ri.bits_per_channel != 16) { result = stbi__convert_8_to_16((stbi_uc *) result, *x, *y, req_comp == 0 ? *comp : req_comp); ri.bits_per_channel = 16; } // @TODO: move stbi__convert_format16 to here // @TODO: special case RGB-to-Y (and RGBA-to-YA) for 8-bit-to-16-bit case to keep more precision if (stbi__vertically_flip_on_load) { int channels = req_comp ? req_comp : *comp; stbi__vertical_flip(result, *x, *y, channels * sizeof(stbi__uint16)); } return (stbi__uint16 *) result; } #if !defined(STBI_NO_HDR) && !defined(STBI_NO_LINEAR) static void stbi__float_postprocess(float *result, int *x, int *y, int *comp, int req_comp) { if (stbi__vertically_flip_on_load && result != NULL) { int channels = req_comp ? req_comp : *comp; stbi__vertical_flip(result, *x, *y, channels * sizeof(float)); } } #endif #ifndef STBI_NO_STDIO #if defined(_WIN32) && defined(STBI_WINDOWS_UTF8) STBI_EXTERN __declspec(dllimport) int __stdcall MultiByteToWideChar(unsigned int cp, unsigned long flags, const char *str, int cbmb, wchar_t *widestr, int cchwide); STBI_EXTERN __declspec(dllimport) int __stdcall WideCharToMultiByte(unsigned int cp, unsigned long flags, const wchar_t *widestr, int cchwide, char *str, int cbmb, const char *defchar, int *used_default); #endif #if defined(_WIN32) && defined(STBI_WINDOWS_UTF8) STBIDEF int stbi_convert_wchar_to_utf8(char *buffer, size_t bufferlen, const wchar_t* input) { return WideCharToMultiByte(65001 /* UTF8 */, 0, input, -1, buffer, (int) bufferlen, NULL, NULL); } #endif static FILE *stbi__fopen(char const *filename, char const *mode) { FILE *f; #if defined(_WIN32) && defined(STBI_WINDOWS_UTF8) wchar_t wMode[64]; wchar_t wFilename[1024]; if (0 == MultiByteToWideChar(65001 /* UTF8 */, 0, filename, -1, wFilename, sizeof(wFilename)/sizeof(*wFilename))) return 0; if (0 == MultiByteToWideChar(65001 /* UTF8 */, 0, mode, -1, wMode, sizeof(wMode)/sizeof(*wMode))) return 0; #if defined(_MSC_VER) && _MSC_VER >= 1400 if (0 != _wfopen_s(&f, wFilename, wMode)) f = 0; #else f = _wfopen(wFilename, wMode); #endif #elif defined(_MSC_VER) && _MSC_VER >= 1400 if (0 != fopen_s(&f, filename, mode)) f=0; #else f = fopen(filename, mode); #endif return f; } STBIDEF stbi_uc *stbi_load(char const *filename, int *x, int *y, int *comp, int req_comp) { FILE *f = stbi__fopen(filename, "rb"); unsigned char *result; if (!f) return stbi__errpuc("can't fopen", "Unable to open file"); result = stbi_load_from_file(f,x,y,comp,req_comp); fclose(f); return result; } STBIDEF stbi_uc *stbi_load_from_file(FILE *f, int *x, int *y, int *comp, int req_comp) { unsigned char *result; stbi__context s; stbi__start_file(&s,f); result = stbi__load_and_postprocess_8bit(&s,x,y,comp,req_comp); if (result) { // need to 'unget' all the characters in the IO buffer fseek(f, - (int) (s.img_buffer_end - s.img_buffer), SEEK_CUR); } return result; } STBIDEF stbi__uint16 *stbi_load_from_file_16(FILE *f, int *x, int *y, int *comp, int req_comp) { stbi__uint16 *result; stbi__context s; stbi__start_file(&s,f); result = stbi__load_and_postprocess_16bit(&s,x,y,comp,req_comp); if (result) { // need to 'unget' all the characters in the IO buffer fseek(f, - (int) (s.img_buffer_end - s.img_buffer), SEEK_CUR); } return result; } STBIDEF stbi_us *stbi_load_16(char const *filename, int *x, int *y, int *comp, int req_comp) { FILE *f = stbi__fopen(filename, "rb"); stbi__uint16 *result; if (!f) return (stbi_us *) stbi__errpuc("can't fopen", "Unable to open file"); result = stbi_load_from_file_16(f,x,y,comp,req_comp); fclose(f); return result; } #endif //!STBI_NO_STDIO STBIDEF stbi_us *stbi_load_16_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *channels_in_file, int desired_channels) { stbi__context s; stbi__start_mem(&s,buffer,len); return stbi__load_and_postprocess_16bit(&s,x,y,channels_in_file,desired_channels); } STBIDEF stbi_us *stbi_load_16_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *channels_in_file, int desired_channels) { stbi__context s; stbi__start_callbacks(&s, (stbi_io_callbacks *)clbk, user); return stbi__load_and_postprocess_16bit(&s,x,y,channels_in_file,desired_channels); } STBIDEF stbi_uc *stbi_load_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp) { stbi__context s; stbi__start_mem(&s,buffer,len); return stbi__load_and_postprocess_8bit(&s,x,y,comp,req_comp); } STBIDEF stbi_uc *stbi_load_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *comp, int req_comp) { stbi__context s; stbi__start_callbacks(&s, (stbi_io_callbacks *) clbk, user); return stbi__load_and_postprocess_8bit(&s,x,y,comp,req_comp); } #ifndef STBI_NO_GIF __attribute__ ((visibility ("default"))) stbi_uc *stbi_load_gif_from_memory(stbi_uc const *buffer, int len, int **delays, int *x, int *y, int *z, int *comp, int req_comp) { unsigned char *result; stbi__context s; stbi__start_mem(&s,buffer,len); result = (unsigned char*) stbi__load_gif_main(&s, delays, x, y, z, comp, req_comp); if (stbi__vertically_flip_on_load) { stbi__vertical_flip_slices( result, *x, *y, *z, *comp ); } return result; } #endif #ifndef STBI_NO_LINEAR static float *stbi__loadf_main(stbi__context *s, int *x, int *y, int *comp, int req_comp) { unsigned char *data; #ifndef STBI_NO_HDR if (stbi__hdr_test(s)) { stbi__result_info ri; float *hdr_data = stbi__hdr_load(s,x,y,comp,req_comp, &ri); if (hdr_data) stbi__float_postprocess(hdr_data,x,y,comp,req_comp); return hdr_data; } #endif data = stbi__load_and_postprocess_8bit(s, x, y, comp, req_comp); if (data) return stbi__ldr_to_hdr(data, *x, *y, req_comp ? req_comp : *comp); return stbi__errpf("unknown image type", "Image not of any known type, or corrupt"); } STBIDEF float *stbi_loadf_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp) { stbi__context s; stbi__start_mem(&s,buffer,len); return stbi__loadf_main(&s,x,y,comp,req_comp); } STBIDEF float *stbi_loadf_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *comp, int req_comp) { stbi__context s; stbi__start_callbacks(&s, (stbi_io_callbacks *) clbk, user); return stbi__loadf_main(&s,x,y,comp,req_comp); } #ifndef STBI_NO_STDIO STBIDEF float *stbi_loadf(char const *filename, int *x, int *y, int *comp, int req_comp) { float *result; FILE *f = stbi__fopen(filename, "rb"); if (!f) return stbi__errpf("can't fopen", "Unable to open file"); result = stbi_loadf_from_file(f,x,y,comp,req_comp); fclose(f); return result; } STBIDEF float *stbi_loadf_from_file(FILE *f, int *x, int *y, int *comp, int req_comp) { stbi__context s; stbi__start_file(&s,f); return stbi__loadf_main(&s,x,y,comp,req_comp); } #endif // !STBI_NO_STDIO #endif // !STBI_NO_LINEAR // these is-hdr-or-not is defined independent of whether STBI_NO_LINEAR is // defined, for API simplicity; if STBI_NO_LINEAR is defined, it always // reports false! STBIDEF int stbi_is_hdr_from_memory(stbi_uc const *buffer, int len) { #ifndef STBI_NO_HDR stbi__context s; stbi__start_mem(&s,buffer,len); return stbi__hdr_test(&s); #else STBI_NOTUSED(buffer); STBI_NOTUSED(len); return 0; #endif } #ifndef STBI_NO_STDIO STBIDEF int stbi_is_hdr (char const *filename) { FILE *f = stbi__fopen(filename, "rb"); int result=0; if (f) { result = stbi_is_hdr_from_file(f); fclose(f); } return result; } STBIDEF int stbi_is_hdr_from_file(FILE *f) { #ifndef STBI_NO_HDR long pos = ftell(f); int res; stbi__context s; stbi__start_file(&s,f); res = stbi__hdr_test(&s); fseek(f, pos, SEEK_SET); return res; #else STBI_NOTUSED(f); return 0; #endif } #endif // !STBI_NO_STDIO STBIDEF int stbi_is_hdr_from_callbacks(stbi_io_callbacks const *clbk, void *user) { #ifndef STBI_NO_HDR stbi__context s; stbi__start_callbacks(&s, (stbi_io_callbacks *) clbk, user); return stbi__hdr_test(&s); #else STBI_NOTUSED(clbk); STBI_NOTUSED(user); return 0; #endif } #ifndef STBI_NO_LINEAR static float stbi__l2h_gamma=2.2f, stbi__l2h_scale=1.0f; STBIDEF void stbi_ldr_to_hdr_gamma(float gamma) { stbi__l2h_gamma = gamma; } STBIDEF void stbi_ldr_to_hdr_scale(float scale) { stbi__l2h_scale = scale; } #endif static float stbi__h2l_gamma_i=1.0f/2.2f, stbi__h2l_scale_i=1.0f; STBIDEF void stbi_hdr_to_ldr_gamma(float gamma) { stbi__h2l_gamma_i = 1/gamma; } STBIDEF void stbi_hdr_to_ldr_scale(float scale) { stbi__h2l_scale_i = 1/scale; } ////////////////////////////////////////////////////////////////////////////// // // Common code used by all image loaders // enum { STBI__SCAN_load=0, STBI__SCAN_type, STBI__SCAN_header }; static void stbi__refill_buffer(stbi__context *s) { int n = (s->io.read)(s->io_user_data,(char*)s->buffer_start,s->buflen); s->callback_already_read += (int) (s->img_buffer - s->img_buffer_original); if (n == 0) { // at end of file, treat same as if from memory, but need to handle case // where s->img_buffer isn't pointing to safe memory, e.g. 0-byte file s->read_from_callbacks = 0; s->img_buffer = s->buffer_start; s->img_buffer_end = s->buffer_start+1; *s->img_buffer = 0; } else { s->img_buffer = s->buffer_start; s->img_buffer_end = s->buffer_start + n; } } stbi_inline static stbi_uc stbi__get8(stbi__context *s) { if (s->img_buffer < s->img_buffer_end) return *s->img_buffer++; if (s->read_from_callbacks) { stbi__refill_buffer(s); return *s->img_buffer++; } return 0; } #if defined(STBI_NO_JPEG) && defined(STBI_NO_HDR) && defined(STBI_NO_PIC) && defined(STBI_NO_PNM) // nothing #else stbi_inline static int stbi__at_eof(stbi__context *s) { if (s->io.read) { if (!(s->io.eof)(s->io_user_data)) return 0; // if feof() is true, check if buffer = end // special case: we've only got the special 0 character at the end if (s->read_from_callbacks == 0) return 1; } return s->img_buffer >= s->img_buffer_end; } #endif #if defined(STBI_NO_JPEG) && defined(STBI_NO_PNG) && defined(STBI_NO_BMP) && defined(STBI_NO_PSD) && defined(STBI_NO_TGA) && defined(STBI_NO_GIF) && defined(STBI_NO_PIC) // nothing #else static void stbi__skip(stbi__context *s, int n) { if (n == 0) return; // already there! if (n < 0) { s->img_buffer = s->img_buffer_end; return; } if (s->io.read) { int blen = (int) (s->img_buffer_end - s->img_buffer); if (blen < n) { s->img_buffer = s->img_buffer_end; (s->io.skip)(s->io_user_data, n - blen); return; } } s->img_buffer += n; } #endif #if defined(STBI_NO_PNG) && defined(STBI_NO_TGA) && defined(STBI_NO_HDR) && defined(STBI_NO_PNM) // nothing #else static int stbi__getn(stbi__context *s, stbi_uc *buffer, int n) { if (s->io.read) { int blen = (int) (s->img_buffer_end - s->img_buffer); if (blen < n) { int res, count; memcpy(buffer, s->img_buffer, blen); count = (s->io.read)(s->io_user_data, (char*) buffer + blen, n - blen); res = (count == (n-blen)); s->img_buffer = s->img_buffer_end; return res; } } if (s->img_buffer+n <= s->img_buffer_end) { memcpy(buffer, s->img_buffer, n); s->img_buffer += n; return 1; } else return 0; } #endif #if defined(STBI_NO_JPEG) && defined(STBI_NO_PNG) && defined(STBI_NO_PSD) && defined(STBI_NO_PIC) // nothing #else static int stbi__get16be(stbi__context *s) { int z = stbi__get8(s); return (z << 8) + stbi__get8(s); } #endif #if defined(STBI_NO_PNG) && defined(STBI_NO_PSD) && defined(STBI_NO_PIC) // nothing #else static stbi__uint32 stbi__get32be(stbi__context *s) { stbi__uint32 z = stbi__get16be(s); return (z << 16) + stbi__get16be(s); } #endif #if defined(STBI_NO_BMP) && defined(STBI_NO_TGA) && defined(STBI_NO_GIF) // nothing #else static int stbi__get16le(stbi__context *s) { int z = stbi__get8(s); return z + (stbi__get8(s) << 8); } #endif #ifndef STBI_NO_BMP static stbi__uint32 stbi__get32le(stbi__context *s) { stbi__uint32 z = stbi__get16le(s); z += (stbi__uint32)stbi__get16le(s) << 16; return z; } #endif #define STBI__BYTECAST(x) ((stbi_uc) ((x) & 255)) // truncate int to byte without warnings #if defined(STBI_NO_JPEG) && defined(STBI_NO_PNG) && defined(STBI_NO_BMP) && defined(STBI_NO_PSD) && defined(STBI_NO_TGA) && defined(STBI_NO_GIF) && defined(STBI_NO_PIC) && defined(STBI_NO_PNM) // nothing #else ////////////////////////////////////////////////////////////////////////////// // // generic converter from built-in img_n to req_comp // individual types do this automatically as much as possible (e.g. jpeg // does all cases internally since it needs to colorspace convert anyway, // and it never has alpha, so very few cases ). png can automatically // interleave an alpha=255 channel, but falls back to this for other cases // // assume data buffer is malloced, so malloc a new one and free that one // only failure mode is malloc failing static stbi_uc stbi__compute_y(int r, int g, int b) { return (stbi_uc) (((r*77) + (g*150) + (29*b)) >> 8); } #endif #if defined(STBI_NO_PNG) && defined(STBI_NO_BMP) && defined(STBI_NO_PSD) && defined(STBI_NO_TGA) && defined(STBI_NO_GIF) && defined(STBI_NO_PIC) && defined(STBI_NO_PNM) // nothing #else static unsigned char *stbi__convert_format(unsigned char *data, int img_n, int req_comp, unsigned int x, unsigned int y) { int i,j; unsigned char *good; if (req_comp == img_n) return data; STBI_ASSERT(req_comp >= 1 && req_comp <= 4); good = (unsigned char *) stbi__malloc_mad3(req_comp, x, y, 0); if (good == NULL) { STBI_FREE(data); return stbi__errpuc("outofmem", "Out of memory"); } for (j=0; j < (int) y; ++j) { unsigned char *src = data + j * x * img_n ; unsigned char *dest = good + j * x * req_comp; #define STBI__COMBO(a,b) ((a)*8+(b)) #define STBI__CASE(a,b) case STBI__COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b) // convert source image with img_n components to one with req_comp components; // avoid switch per pixel, so use switch per scanline and massive macros switch (STBI__COMBO(img_n, req_comp)) { STBI__CASE(1,2) { dest[0]=src[0]; dest[1]=255; } break; STBI__CASE(1,3) { dest[0]=dest[1]=dest[2]=src[0]; } break; STBI__CASE(1,4) { dest[0]=dest[1]=dest[2]=src[0]; dest[3]=255; } break; STBI__CASE(2,1) { dest[0]=src[0]; } break; STBI__CASE(2,3) { dest[0]=dest[1]=dest[2]=src[0]; } break; STBI__CASE(2,4) { dest[0]=dest[1]=dest[2]=src[0]; dest[3]=src[1]; } break; STBI__CASE(3,4) { dest[0]=src[0];dest[1]=src[1];dest[2]=src[2];dest[3]=255; } break; STBI__CASE(3,1) { dest[0]=stbi__compute_y(src[0],src[1],src[2]); } break; STBI__CASE(3,2) { dest[0]=stbi__compute_y(src[0],src[1],src[2]); dest[1] = 255; } break; STBI__CASE(4,1) { dest[0]=stbi__compute_y(src[0],src[1],src[2]); } break; STBI__CASE(4,2) { dest[0]=stbi__compute_y(src[0],src[1],src[2]); dest[1] = src[3]; } break; STBI__CASE(4,3) { dest[0]=src[0];dest[1]=src[1];dest[2]=src[2]; } break; default: STBI_ASSERT(0); STBI_FREE(data); STBI_FREE(good); return stbi__errpuc("unsupported", "Unsupported format conversion"); } #undef STBI__CASE } STBI_FREE(data); return good; } #endif #if defined(STBI_NO_PNG) && defined(STBI_NO_PSD) // nothing #else static stbi__uint16 stbi__compute_y_16(int r, int g, int b) { return (stbi__uint16) (((r*77) + (g*150) + (29*b)) >> 8); } #endif #if defined(STBI_NO_PNG) && defined(STBI_NO_PSD) // nothing #else static stbi__uint16 *stbi__convert_format16(stbi__uint16 *data, int img_n, int req_comp, unsigned int x, unsigned int y) { int i,j; stbi__uint16 *good; if (req_comp == img_n) return data; STBI_ASSERT(req_comp >= 1 && req_comp <= 4); good = (stbi__uint16 *) stbi__malloc(req_comp * x * y * 2); if (good == NULL) { STBI_FREE(data); return (stbi__uint16 *) stbi__errpuc("outofmem", "Out of memory"); } for (j=0; j < (int) y; ++j) { stbi__uint16 *src = data + j * x * img_n ; stbi__uint16 *dest = good + j * x * req_comp; #define STBI__COMBO(a,b) ((a)*8+(b)) #define STBI__CASE(a,b) case STBI__COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b) // convert source image with img_n components to one with req_comp components; // avoid switch per pixel, so use switch per scanline and massive macros switch (STBI__COMBO(img_n, req_comp)) { STBI__CASE(1,2) { dest[0]=src[0]; dest[1]=0xffff; } break; STBI__CASE(1,3) { dest[0]=dest[1]=dest[2]=src[0]; } break; STBI__CASE(1,4) { dest[0]=dest[1]=dest[2]=src[0]; dest[3]=0xffff; } break; STBI__CASE(2,1) { dest[0]=src[0]; } break; STBI__CASE(2,3) { dest[0]=dest[1]=dest[2]=src[0]; } break; STBI__CASE(2,4) { dest[0]=dest[1]=dest[2]=src[0]; dest[3]=src[1]; } break; STBI__CASE(3,4) { dest[0]=src[0];dest[1]=src[1];dest[2]=src[2];dest[3]=0xffff; } break; STBI__CASE(3,1) { dest[0]=stbi__compute_y_16(src[0],src[1],src[2]); } break; STBI__CASE(3,2) { dest[0]=stbi__compute_y_16(src[0],src[1],src[2]); dest[1] = 0xffff; } break; STBI__CASE(4,1) { dest[0]=stbi__compute_y_16(src[0],src[1],src[2]); } break; STBI__CASE(4,2) { dest[0]=stbi__compute_y_16(src[0],src[1],src[2]); dest[1] = src[3]; } break; STBI__CASE(4,3) { dest[0]=src[0];dest[1]=src[1];dest[2]=src[2]; } break; default: STBI_ASSERT(0); STBI_FREE(data); STBI_FREE(good); return (stbi__uint16*) stbi__errpuc("unsupported", "Unsupported format conversion"); } #undef STBI__CASE } STBI_FREE(data); return good; } #endif #ifndef STBI_NO_LINEAR static float *stbi__ldr_to_hdr(stbi_uc *data, int x, int y, int comp) { int i,k,n; float *output; if (!data) return NULL; output = (float *) stbi__malloc_mad4(x, y, comp, sizeof(float), 0); if (output == NULL) { STBI_FREE(data); return stbi__errpf("outofmem", "Out of memory"); } // compute number of non-alpha components if (comp & 1) n = comp; else n = comp-1; for (i=0; i < x*y; ++i) { for (k=0; k < n; ++k) { output[i*comp + k] = (float) (pow(data[i*comp+k]/255.0f, stbi__l2h_gamma) * stbi__l2h_scale); } } if (n < comp) { for (i=0; i < x*y; ++i) { output[i*comp + n] = data[i*comp + n]/255.0f; } } STBI_FREE(data); return output; } #endif #ifndef STBI_NO_HDR #define stbi__float2int(x) ((int) (x)) static stbi_uc *stbi__hdr_to_ldr(float *data, int x, int y, int comp) { int i,k,n; stbi_uc *output; if (!data) return NULL; output = (stbi_uc *) stbi__malloc_mad3(x, y, comp, 0); if (output == NULL) { STBI_FREE(data); return stbi__errpuc("outofmem", "Out of memory"); } // compute number of non-alpha components if (comp & 1) n = comp; else n = comp-1; for (i=0; i < x*y; ++i) { for (k=0; k < n; ++k) { float z = (float) pow(data[i*comp+k]*stbi__h2l_scale_i, stbi__h2l_gamma_i) * 255 + 0.5f; if (z < 0) z = 0; if (z > 255) z = 255; output[i*comp + k] = (stbi_uc) stbi__float2int(z); } if (k < comp) { float z = data[i*comp+k] * 255 + 0.5f; if (z < 0) z = 0; if (z > 255) z = 255; output[i*comp + k] = (stbi_uc) stbi__float2int(z); } } STBI_FREE(data); return output; } #endif ////////////////////////////////////////////////////////////////////////////// // // "baseline" JPEG/JFIF decoder // // simple implementation // - doesn't support delayed output of y-dimension // - simple interface (only one output format: 8-bit interleaved RGB) // - doesn't try to recover corrupt jpegs // - doesn't allow partial loading, loading multiple at once // - still fast on x86 (copying globals into locals doesn't help x86) // - allocates lots of intermediate memory (full size of all components) // - non-interleaved case requires this anyway // - allows good upsampling (see next) // high-quality // - upsampled channels are bilinearly interpolated, even across blocks // - quality integer IDCT derived from IJG's 'slow' // performance // - fast huffman; reasonable integer IDCT // - some SIMD kernels for common paths on targets with SSE2/NEON // - uses a lot of intermediate memory, could cache poorly #ifndef STBI_NO_JPEG // huffman decoding acceleration #define FAST_BITS 9 // larger handles more cases; smaller stomps less cache typedef struct { stbi_uc fast[1 << FAST_BITS]; // weirdly, repacking this into AoS is a 10% speed loss, instead of a win stbi__uint16 code[256]; stbi_uc values[256]; stbi_uc size[257]; unsigned int maxcode[18]; int delta[17]; // old 'firstsymbol' - old 'firstcode' } stbi__huffman; typedef struct { stbi__context *s; stbi__huffman huff_dc[4]; stbi__huffman huff_ac[4]; stbi__uint16 dequant[4][64]; stbi__int16 fast_ac[4][1 << FAST_BITS]; // sizes for components, interleaved MCUs int img_h_max, img_v_max; int img_mcu_x, img_mcu_y; int img_mcu_w, img_mcu_h; // definition of jpeg image component struct { int id; int h,v; int tq; int hd,ha; int dc_pred; int x,y,w2,h2; stbi_uc *data; void *raw_data, *raw_coeff; stbi_uc *linebuf; short *coeff; // progressive only int coeff_w, coeff_h; // number of 8x8 coefficient blocks } img_comp[4]; stbi__uint32 code_buffer; // jpeg entropy-coded buffer int code_bits; // number of valid bits unsigned char marker; // marker seen while filling entropy buffer int nomore; // flag if we saw a marker so must stop int progressive; int spec_start; int spec_end; int succ_high; int succ_low; int eob_run; int jfif; int app14_color_transform; // Adobe APP14 tag int rgb; int scan_n, order[4]; int restart_interval, todo; // kernels void (*idct_block_kernel)(stbi_uc *out, int out_stride, short data[64]); void (*YCbCr_to_RGB_kernel)(stbi_uc *out, const stbi_uc *y, const stbi_uc *pcb, const stbi_uc *pcr, int count, int step); stbi_uc *(*resample_row_hv_2_kernel)(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs); } stbi__jpeg; static int stbi__build_huffman(stbi__huffman *h, int *count) { int i,j,k=0; unsigned int code; // build size list for each symbol (from JPEG spec) for (i=0; i < 16; ++i) for (j=0; j < count[i]; ++j) h->size[k++] = (stbi_uc) (i+1); h->size[k] = 0; // compute actual symbols (from jpeg spec) code = 0; k = 0; for(j=1; j <= 16; ++j) { // compute delta to add to code to compute symbol id h->delta[j] = k - code; if (h->size[k] == j) { while (h->size[k] == j) h->code[k++] = (stbi__uint16) (code++); if (code-1 >= (1u << j)) return stbi__err("bad code lengths","Corrupt JPEG"); } // compute largest code + 1 for this size, preshifted as needed later h->maxcode[j] = code << (16-j); code <<= 1; } h->maxcode[j] = 0xffffffff; // build non-spec acceleration table; 255 is flag for not-accelerated memset(h->fast, 255, 1 << FAST_BITS); for (i=0; i < k; ++i) { int s = h->size[i]; if (s <= FAST_BITS) { int c = h->code[i] << (FAST_BITS-s); int m = 1 << (FAST_BITS-s); for (j=0; j < m; ++j) { h->fast[c+j] = (stbi_uc) i; } } } return 1; } // build a table that decodes both magnitude and value of small ACs in // one go. static void stbi__build_fast_ac(stbi__int16 *fast_ac, stbi__huffman *h) { int i; for (i=0; i < (1 << FAST_BITS); ++i) { stbi_uc fast = h->fast[i]; fast_ac[i] = 0; if (fast < 255) { int rs = h->values[fast]; int run = (rs >> 4) & 15; int magbits = rs & 15; int len = h->size[fast]; if (magbits && len + magbits <= FAST_BITS) { // magnitude code followed by receive_extend code int k = ((i << len) & ((1 << FAST_BITS) - 1)) >> (FAST_BITS - magbits); int m = 1 << (magbits - 1); if (k < m) k += (~0U << magbits) + 1; // if the result is small enough, we can fit it in fast_ac table if (k >= -128 && k <= 127) fast_ac[i] = (stbi__int16) ((k * 256) + (run * 16) + (len + magbits)); } } } } static void stbi__grow_buffer_unsafe(stbi__jpeg *j) { do { unsigned int b = j->nomore ? 0 : stbi__get8(j->s); if (b == 0xff) { int c = stbi__get8(j->s); while (c == 0xff) c = stbi__get8(j->s); // consume fill bytes if (c != 0) { j->marker = (unsigned char) c; j->nomore = 1; return; } } j->code_buffer |= b << (24 - j->code_bits); j->code_bits += 8; } while (j->code_bits <= 24); } // (1 << n) - 1 static const stbi__uint32 stbi__bmask[17]={0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535}; // decode a jpeg huffman value from the bitstream stbi_inline static int stbi__jpeg_huff_decode(stbi__jpeg *j, stbi__huffman *h) { unsigned int temp; int c,k; if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); // look at the top FAST_BITS and determine what symbol ID it is, // if the code is <= FAST_BITS c = (j->code_buffer >> (32 - FAST_BITS)) & ((1 << FAST_BITS)-1); k = h->fast[c]; if (k < 255) { int s = h->size[k]; if (s > j->code_bits) return -1; j->code_buffer <<= s; j->code_bits -= s; return h->values[k]; } // naive test is to shift the code_buffer down so k bits are // valid, then test against maxcode. To speed this up, we've // preshifted maxcode left so that it has (16-k) 0s at the // end; in other words, regardless of the number of bits, it // wants to be compared against something shifted to have 16; // that way we don't need to shift inside the loop. temp = j->code_buffer >> 16; for (k=FAST_BITS+1 ; ; ++k) if (temp < h->maxcode[k]) break; if (k == 17) { // error! code not found j->code_bits -= 16; return -1; } if (k > j->code_bits) return -1; // convert the huffman code to the symbol id c = ((j->code_buffer >> (32 - k)) & stbi__bmask[k]) + h->delta[k]; STBI_ASSERT((((j->code_buffer) >> (32 - h->size[c])) & stbi__bmask[h->size[c]]) == h->code[c]); // convert the id to a symbol j->code_bits -= k; j->code_buffer <<= k; return h->values[c]; } // bias[n] = (-1<code_bits < n) stbi__grow_buffer_unsafe(j); sgn = j->code_buffer >> 31; // sign bit always in MSB; 0 if MSB clear (positive), 1 if MSB set (negative) k = stbi_lrot(j->code_buffer, n); j->code_buffer = k & ~stbi__bmask[n]; k &= stbi__bmask[n]; j->code_bits -= n; return k + (stbi__jbias[n] & (sgn - 1)); } // get some unsigned bits stbi_inline static int stbi__jpeg_get_bits(stbi__jpeg *j, int n) { unsigned int k; if (j->code_bits < n) stbi__grow_buffer_unsafe(j); k = stbi_lrot(j->code_buffer, n); j->code_buffer = k & ~stbi__bmask[n]; k &= stbi__bmask[n]; j->code_bits -= n; return k; } stbi_inline static int stbi__jpeg_get_bit(stbi__jpeg *j) { unsigned int k; if (j->code_bits < 1) stbi__grow_buffer_unsafe(j); k = j->code_buffer; j->code_buffer <<= 1; --j->code_bits; return k & 0x80000000; } // given a value that's at position X in the zigzag stream, // where does it appear in the 8x8 matrix coded as row-major? static const stbi_uc stbi__jpeg_dezigzag[64+15] = { 0, 1, 8, 16, 9, 2, 3, 10, 17, 24, 32, 25, 18, 11, 4, 5, 12, 19, 26, 33, 40, 48, 41, 34, 27, 20, 13, 6, 7, 14, 21, 28, 35, 42, 49, 56, 57, 50, 43, 36, 29, 22, 15, 23, 30, 37, 44, 51, 58, 59, 52, 45, 38, 31, 39, 46, 53, 60, 61, 54, 47, 55, 62, 63, // let corrupt input sample past end 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63 }; // decode one 64-entry block-- static int stbi__jpeg_decode_block(stbi__jpeg *j, short data[64], stbi__huffman *hdc, stbi__huffman *hac, stbi__int16 *fac, int b, stbi__uint16 *dequant) { int diff,dc,k; int t; if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); t = stbi__jpeg_huff_decode(j, hdc); if (t < 0 || t > 15) return stbi__err("bad huffman code","Corrupt JPEG"); // 0 all the ac values now so we can do it 32-bits at a time memset(data,0,64*sizeof(data[0])); diff = t ? stbi__extend_receive(j, t) : 0; dc = j->img_comp[b].dc_pred + diff; j->img_comp[b].dc_pred = dc; data[0] = (short) (dc * dequant[0]); // decode AC components, see JPEG spec k = 1; do { unsigned int zig; int c,r,s; if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); c = (j->code_buffer >> (32 - FAST_BITS)) & ((1 << FAST_BITS)-1); r = fac[c]; if (r) { // fast-AC path k += (r >> 4) & 15; // run s = r & 15; // combined length j->code_buffer <<= s; j->code_bits -= s; // decode into unzigzag'd location zig = stbi__jpeg_dezigzag[k++]; data[zig] = (short) ((r >> 8) * dequant[zig]); } else { int rs = stbi__jpeg_huff_decode(j, hac); if (rs < 0) return stbi__err("bad huffman code","Corrupt JPEG"); s = rs & 15; r = rs >> 4; if (s == 0) { if (rs != 0xf0) break; // end block k += 16; } else { k += r; // decode into unzigzag'd location zig = stbi__jpeg_dezigzag[k++]; data[zig] = (short) (stbi__extend_receive(j,s) * dequant[zig]); } } } while (k < 64); return 1; } static int stbi__jpeg_decode_block_prog_dc(stbi__jpeg *j, short data[64], stbi__huffman *hdc, int b) { int diff,dc; int t; if (j->spec_end != 0) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); if (j->succ_high == 0) { // first scan for DC coefficient, must be first memset(data,0,64*sizeof(data[0])); // 0 all the ac values now t = stbi__jpeg_huff_decode(j, hdc); if (t < 0 || t > 15) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); diff = t ? stbi__extend_receive(j, t) : 0; dc = j->img_comp[b].dc_pred + diff; j->img_comp[b].dc_pred = dc; data[0] = (short) (dc * (1 << j->succ_low)); } else { // refinement scan for DC coefficient if (stbi__jpeg_get_bit(j)) data[0] += (short) (1 << j->succ_low); } return 1; } // @OPTIMIZE: store non-zigzagged during the decode passes, // and only de-zigzag when dequantizing static int stbi__jpeg_decode_block_prog_ac(stbi__jpeg *j, short data[64], stbi__huffman *hac, stbi__int16 *fac) { int k; if (j->spec_start == 0) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); if (j->succ_high == 0) { int shift = j->succ_low; if (j->eob_run) { --j->eob_run; return 1; } k = j->spec_start; do { unsigned int zig; int c,r,s; if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); c = (j->code_buffer >> (32 - FAST_BITS)) & ((1 << FAST_BITS)-1); r = fac[c]; if (r) { // fast-AC path k += (r >> 4) & 15; // run s = r & 15; // combined length j->code_buffer <<= s; j->code_bits -= s; zig = stbi__jpeg_dezigzag[k++]; data[zig] = (short) ((r >> 8) * (1 << shift)); } else { int rs = stbi__jpeg_huff_decode(j, hac); if (rs < 0) return stbi__err("bad huffman code","Corrupt JPEG"); s = rs & 15; r = rs >> 4; if (s == 0) { if (r < 15) { j->eob_run = (1 << r); if (r) j->eob_run += stbi__jpeg_get_bits(j, r); --j->eob_run; break; } k += 16; } else { k += r; zig = stbi__jpeg_dezigzag[k++]; data[zig] = (short) (stbi__extend_receive(j,s) * (1 << shift)); } } } while (k <= j->spec_end); } else { // refinement scan for these AC coefficients short bit = (short) (1 << j->succ_low); if (j->eob_run) { --j->eob_run; for (k = j->spec_start; k <= j->spec_end; ++k) { short *p = &data[stbi__jpeg_dezigzag[k]]; if (*p != 0) if (stbi__jpeg_get_bit(j)) if ((*p & bit)==0) { if (*p > 0) *p += bit; else *p -= bit; } } } else { k = j->spec_start; do { int r,s; int rs = stbi__jpeg_huff_decode(j, hac); // @OPTIMIZE see if we can use the fast path here, advance-by-r is so slow, eh if (rs < 0) return stbi__err("bad huffman code","Corrupt JPEG"); s = rs & 15; r = rs >> 4; if (s == 0) { if (r < 15) { j->eob_run = (1 << r) - 1; if (r) j->eob_run += stbi__jpeg_get_bits(j, r); r = 64; // force end of block } else { // r=15 s=0 should write 16 0s, so we just do // a run of 15 0s and then write s (which is 0), // so we don't have to do anything special here } } else { if (s != 1) return stbi__err("bad huffman code", "Corrupt JPEG"); // sign bit if (stbi__jpeg_get_bit(j)) s = bit; else s = -bit; } // advance by r while (k <= j->spec_end) { short *p = &data[stbi__jpeg_dezigzag[k++]]; if (*p != 0) { if (stbi__jpeg_get_bit(j)) if ((*p & bit)==0) { if (*p > 0) *p += bit; else *p -= bit; } } else { if (r == 0) { *p = (short) s; break; } --r; } } } while (k <= j->spec_end); } } return 1; } // take a -128..127 value and stbi__clamp it and convert to 0..255 stbi_inline static stbi_uc stbi__clamp(int x) { // trick to use a single test to catch both cases if ((unsigned int) x > 255) { if (x < 0) return 0; if (x > 255) return 255; } return (stbi_uc) x; } #define stbi__f2f(x) ((int) (((x) * 4096 + 0.5))) #define stbi__fsh(x) ((x) * 4096) // derived from jidctint -- DCT_ISLOW #define STBI__IDCT_1D(s0,s1,s2,s3,s4,s5,s6,s7) \ int t0,t1,t2,t3,p1,p2,p3,p4,p5,x0,x1,x2,x3; \ p2 = s2; \ p3 = s6; \ p1 = (p2+p3) * stbi__f2f(0.5411961f); \ t2 = p1 + p3*stbi__f2f(-1.847759065f); \ t3 = p1 + p2*stbi__f2f( 0.765366865f); \ p2 = s0; \ p3 = s4; \ t0 = stbi__fsh(p2+p3); \ t1 = stbi__fsh(p2-p3); \ x0 = t0+t3; \ x3 = t0-t3; \ x1 = t1+t2; \ x2 = t1-t2; \ t0 = s7; \ t1 = s5; \ t2 = s3; \ t3 = s1; \ p3 = t0+t2; \ p4 = t1+t3; \ p1 = t0+t3; \ p2 = t1+t2; \ p5 = (p3+p4)*stbi__f2f( 1.175875602f); \ t0 = t0*stbi__f2f( 0.298631336f); \ t1 = t1*stbi__f2f( 2.053119869f); \ t2 = t2*stbi__f2f( 3.072711026f); \ t3 = t3*stbi__f2f( 1.501321110f); \ p1 = p5 + p1*stbi__f2f(-0.899976223f); \ p2 = p5 + p2*stbi__f2f(-2.562915447f); \ p3 = p3*stbi__f2f(-1.961570560f); \ p4 = p4*stbi__f2f(-0.390180644f); \ t3 += p1+p4; \ t2 += p2+p3; \ t1 += p2+p4; \ t0 += p1+p3; static void stbi__idct_block(stbi_uc *out, int out_stride, short data[64]) { int i,val[64],*v=val; stbi_uc *o; short *d = data; // columns for (i=0; i < 8; ++i,++d, ++v) { // if all zeroes, shortcut -- this avoids dequantizing 0s and IDCTing if (d[ 8]==0 && d[16]==0 && d[24]==0 && d[32]==0 && d[40]==0 && d[48]==0 && d[56]==0) { // no shortcut 0 seconds // (1|2|3|4|5|6|7)==0 0 seconds // all separate -0.047 seconds // 1 && 2|3 && 4|5 && 6|7: -0.047 seconds int dcterm = d[0]*4; v[0] = v[8] = v[16] = v[24] = v[32] = v[40] = v[48] = v[56] = dcterm; } else { STBI__IDCT_1D(d[ 0],d[ 8],d[16],d[24],d[32],d[40],d[48],d[56]) // constants scaled things up by 1<<12; let's bring them back // down, but keep 2 extra bits of precision x0 += 512; x1 += 512; x2 += 512; x3 += 512; v[ 0] = (x0+t3) >> 10; v[56] = (x0-t3) >> 10; v[ 8] = (x1+t2) >> 10; v[48] = (x1-t2) >> 10; v[16] = (x2+t1) >> 10; v[40] = (x2-t1) >> 10; v[24] = (x3+t0) >> 10; v[32] = (x3-t0) >> 10; } } for (i=0, v=val, o=out; i < 8; ++i,v+=8,o+=out_stride) { // no fast case since the first 1D IDCT spread components out STBI__IDCT_1D(v[0],v[1],v[2],v[3],v[4],v[5],v[6],v[7]) // constants scaled things up by 1<<12, plus we had 1<<2 from first // loop, plus horizontal and vertical each scale by sqrt(8) so together // we've got an extra 1<<3, so 1<<17 total we need to remove. // so we want to round that, which means adding 0.5 * 1<<17, // aka 65536. Also, we'll end up with -128 to 127 that we want // to encode as 0..255 by adding 128, so we'll add that before the shift x0 += 65536 + (128<<17); x1 += 65536 + (128<<17); x2 += 65536 + (128<<17); x3 += 65536 + (128<<17); // tried computing the shifts into temps, or'ing the temps to see // if any were out of range, but that was slower o[0] = stbi__clamp((x0+t3) >> 17); o[7] = stbi__clamp((x0-t3) >> 17); o[1] = stbi__clamp((x1+t2) >> 17); o[6] = stbi__clamp((x1-t2) >> 17); o[2] = stbi__clamp((x2+t1) >> 17); o[5] = stbi__clamp((x2-t1) >> 17); o[3] = stbi__clamp((x3+t0) >> 17); o[4] = stbi__clamp((x3-t0) >> 17); } } #ifdef STBI_SSE2 // sse2 integer IDCT. not the fastest possible implementation but it // produces bit-identical results to the generic C version so it's // fully "transparent". static void stbi__idct_simd(stbi_uc *out, int out_stride, short data[64]) { // This is constructed to match our regular (generic) integer IDCT exactly. __m128i row0, row1, row2, row3, row4, row5, row6, row7; __m128i tmp; // dot product constant: even elems=x, odd elems=y #define dct_const(x,y) _mm_setr_epi16((x),(y),(x),(y),(x),(y),(x),(y)) // out(0) = c0[even]*x + c0[odd]*y (c0, x, y 16-bit, out 32-bit) // out(1) = c1[even]*x + c1[odd]*y #define dct_rot(out0,out1, x,y,c0,c1) \ __m128i c0##lo = _mm_unpacklo_epi16((x),(y)); \ __m128i c0##hi = _mm_unpackhi_epi16((x),(y)); \ __m128i out0##_l = _mm_madd_epi16(c0##lo, c0); \ __m128i out0##_h = _mm_madd_epi16(c0##hi, c0); \ __m128i out1##_l = _mm_madd_epi16(c0##lo, c1); \ __m128i out1##_h = _mm_madd_epi16(c0##hi, c1) // out = in << 12 (in 16-bit, out 32-bit) #define dct_widen(out, in) \ __m128i out##_l = _mm_srai_epi32(_mm_unpacklo_epi16(_mm_setzero_si128(), (in)), 4); \ __m128i out##_h = _mm_srai_epi32(_mm_unpackhi_epi16(_mm_setzero_si128(), (in)), 4) // wide add #define dct_wadd(out, a, b) \ __m128i out##_l = _mm_add_epi32(a##_l, b##_l); \ __m128i out##_h = _mm_add_epi32(a##_h, b##_h) // wide sub #define dct_wsub(out, a, b) \ __m128i out##_l = _mm_sub_epi32(a##_l, b##_l); \ __m128i out##_h = _mm_sub_epi32(a##_h, b##_h) // butterfly a/b, add bias, then shift by "s" and pack #define dct_bfly32o(out0, out1, a,b,bias,s) \ { \ __m128i abiased_l = _mm_add_epi32(a##_l, bias); \ __m128i abiased_h = _mm_add_epi32(a##_h, bias); \ dct_wadd(sum, abiased, b); \ dct_wsub(dif, abiased, b); \ out0 = _mm_packs_epi32(_mm_srai_epi32(sum_l, s), _mm_srai_epi32(sum_h, s)); \ out1 = _mm_packs_epi32(_mm_srai_epi32(dif_l, s), _mm_srai_epi32(dif_h, s)); \ } // 8-bit interleave step (for transposes) #define dct_interleave8(a, b) \ tmp = a; \ a = _mm_unpacklo_epi8(a, b); \ b = _mm_unpackhi_epi8(tmp, b) // 16-bit interleave step (for transposes) #define dct_interleave16(a, b) \ tmp = a; \ a = _mm_unpacklo_epi16(a, b); \ b = _mm_unpackhi_epi16(tmp, b) #define dct_pass(bias,shift) \ { \ /* even part */ \ dct_rot(t2e,t3e, row2,row6, rot0_0,rot0_1); \ __m128i sum04 = _mm_add_epi16(row0, row4); \ __m128i dif04 = _mm_sub_epi16(row0, row4); \ dct_widen(t0e, sum04); \ dct_widen(t1e, dif04); \ dct_wadd(x0, t0e, t3e); \ dct_wsub(x3, t0e, t3e); \ dct_wadd(x1, t1e, t2e); \ dct_wsub(x2, t1e, t2e); \ /* odd part */ \ dct_rot(y0o,y2o, row7,row3, rot2_0,rot2_1); \ dct_rot(y1o,y3o, row5,row1, rot3_0,rot3_1); \ __m128i sum17 = _mm_add_epi16(row1, row7); \ __m128i sum35 = _mm_add_epi16(row3, row5); \ dct_rot(y4o,y5o, sum17,sum35, rot1_0,rot1_1); \ dct_wadd(x4, y0o, y4o); \ dct_wadd(x5, y1o, y5o); \ dct_wadd(x6, y2o, y5o); \ dct_wadd(x7, y3o, y4o); \ dct_bfly32o(row0,row7, x0,x7,bias,shift); \ dct_bfly32o(row1,row6, x1,x6,bias,shift); \ dct_bfly32o(row2,row5, x2,x5,bias,shift); \ dct_bfly32o(row3,row4, x3,x4,bias,shift); \ } __m128i rot0_0 = dct_const(stbi__f2f(0.5411961f), stbi__f2f(0.5411961f) + stbi__f2f(-1.847759065f)); __m128i rot0_1 = dct_const(stbi__f2f(0.5411961f) + stbi__f2f( 0.765366865f), stbi__f2f(0.5411961f)); __m128i rot1_0 = dct_const(stbi__f2f(1.175875602f) + stbi__f2f(-0.899976223f), stbi__f2f(1.175875602f)); __m128i rot1_1 = dct_const(stbi__f2f(1.175875602f), stbi__f2f(1.175875602f) + stbi__f2f(-2.562915447f)); __m128i rot2_0 = dct_const(stbi__f2f(-1.961570560f) + stbi__f2f( 0.298631336f), stbi__f2f(-1.961570560f)); __m128i rot2_1 = dct_const(stbi__f2f(-1.961570560f), stbi__f2f(-1.961570560f) + stbi__f2f( 3.072711026f)); __m128i rot3_0 = dct_const(stbi__f2f(-0.390180644f) + stbi__f2f( 2.053119869f), stbi__f2f(-0.390180644f)); __m128i rot3_1 = dct_const(stbi__f2f(-0.390180644f), stbi__f2f(-0.390180644f) + stbi__f2f( 1.501321110f)); // rounding biases in column/row passes, see stbi__idct_block for explanation. __m128i bias_0 = _mm_set1_epi32(512); __m128i bias_1 = _mm_set1_epi32(65536 + (128<<17)); // load row0 = _mm_load_si128((const __m128i *) (data + 0*8)); row1 = _mm_load_si128((const __m128i *) (data + 1*8)); row2 = _mm_load_si128((const __m128i *) (data + 2*8)); row3 = _mm_load_si128((const __m128i *) (data + 3*8)); row4 = _mm_load_si128((const __m128i *) (data + 4*8)); row5 = _mm_load_si128((const __m128i *) (data + 5*8)); row6 = _mm_load_si128((const __m128i *) (data + 6*8)); row7 = _mm_load_si128((const __m128i *) (data + 7*8)); // column pass dct_pass(bias_0, 10); { // 16bit 8x8 transpose pass 1 dct_interleave16(row0, row4); dct_interleave16(row1, row5); dct_interleave16(row2, row6); dct_interleave16(row3, row7); // transpose pass 2 dct_interleave16(row0, row2); dct_interleave16(row1, row3); dct_interleave16(row4, row6); dct_interleave16(row5, row7); // transpose pass 3 dct_interleave16(row0, row1); dct_interleave16(row2, row3); dct_interleave16(row4, row5); dct_interleave16(row6, row7); } // row pass dct_pass(bias_1, 17); { // pack __m128i p0 = _mm_packus_epi16(row0, row1); // a0a1a2a3...a7b0b1b2b3...b7 __m128i p1 = _mm_packus_epi16(row2, row3); __m128i p2 = _mm_packus_epi16(row4, row5); __m128i p3 = _mm_packus_epi16(row6, row7); // 8bit 8x8 transpose pass 1 dct_interleave8(p0, p2); // a0e0a1e1... dct_interleave8(p1, p3); // c0g0c1g1... // transpose pass 2 dct_interleave8(p0, p1); // a0c0e0g0... dct_interleave8(p2, p3); // b0d0f0h0... // transpose pass 3 dct_interleave8(p0, p2); // a0b0c0d0... dct_interleave8(p1, p3); // a4b4c4d4... // store _mm_storel_epi64((__m128i *) out, p0); out += out_stride; _mm_storel_epi64((__m128i *) out, _mm_shuffle_epi32(p0, 0x4e)); out += out_stride; _mm_storel_epi64((__m128i *) out, p2); out += out_stride; _mm_storel_epi64((__m128i *) out, _mm_shuffle_epi32(p2, 0x4e)); out += out_stride; _mm_storel_epi64((__m128i *) out, p1); out += out_stride; _mm_storel_epi64((__m128i *) out, _mm_shuffle_epi32(p1, 0x4e)); out += out_stride; _mm_storel_epi64((__m128i *) out, p3); out += out_stride; _mm_storel_epi64((__m128i *) out, _mm_shuffle_epi32(p3, 0x4e)); } #undef dct_const #undef dct_rot #undef dct_widen #undef dct_wadd #undef dct_wsub #undef dct_bfly32o #undef dct_interleave8 #undef dct_interleave16 #undef dct_pass } #endif // STBI_SSE2 #ifdef STBI_NEON // NEON integer IDCT. should produce bit-identical // results to the generic C version. static void stbi__idct_simd(stbi_uc *out, int out_stride, short data[64]) { int16x8_t row0, row1, row2, row3, row4, row5, row6, row7; int16x4_t rot0_0 = vdup_n_s16(stbi__f2f(0.5411961f)); int16x4_t rot0_1 = vdup_n_s16(stbi__f2f(-1.847759065f)); int16x4_t rot0_2 = vdup_n_s16(stbi__f2f( 0.765366865f)); int16x4_t rot1_0 = vdup_n_s16(stbi__f2f( 1.175875602f)); int16x4_t rot1_1 = vdup_n_s16(stbi__f2f(-0.899976223f)); int16x4_t rot1_2 = vdup_n_s16(stbi__f2f(-2.562915447f)); int16x4_t rot2_0 = vdup_n_s16(stbi__f2f(-1.961570560f)); int16x4_t rot2_1 = vdup_n_s16(stbi__f2f(-0.390180644f)); int16x4_t rot3_0 = vdup_n_s16(stbi__f2f( 0.298631336f)); int16x4_t rot3_1 = vdup_n_s16(stbi__f2f( 2.053119869f)); int16x4_t rot3_2 = vdup_n_s16(stbi__f2f( 3.072711026f)); int16x4_t rot3_3 = vdup_n_s16(stbi__f2f( 1.501321110f)); #define dct_long_mul(out, inq, coeff) \ int32x4_t out##_l = vmull_s16(vget_low_s16(inq), coeff); \ int32x4_t out##_h = vmull_s16(vget_high_s16(inq), coeff) #define dct_long_mac(out, acc, inq, coeff) \ int32x4_t out##_l = vmlal_s16(acc##_l, vget_low_s16(inq), coeff); \ int32x4_t out##_h = vmlal_s16(acc##_h, vget_high_s16(inq), coeff) #define dct_widen(out, inq) \ int32x4_t out##_l = vshll_n_s16(vget_low_s16(inq), 12); \ int32x4_t out##_h = vshll_n_s16(vget_high_s16(inq), 12) // wide add #define dct_wadd(out, a, b) \ int32x4_t out##_l = vaddq_s32(a##_l, b##_l); \ int32x4_t out##_h = vaddq_s32(a##_h, b##_h) // wide sub #define dct_wsub(out, a, b) \ int32x4_t out##_l = vsubq_s32(a##_l, b##_l); \ int32x4_t out##_h = vsubq_s32(a##_h, b##_h) // butterfly a/b, then shift using "shiftop" by "s" and pack #define dct_bfly32o(out0,out1, a,b,shiftop,s) \ { \ dct_wadd(sum, a, b); \ dct_wsub(dif, a, b); \ out0 = vcombine_s16(shiftop(sum_l, s), shiftop(sum_h, s)); \ out1 = vcombine_s16(shiftop(dif_l, s), shiftop(dif_h, s)); \ } #define dct_pass(shiftop, shift) \ { \ /* even part */ \ int16x8_t sum26 = vaddq_s16(row2, row6); \ dct_long_mul(p1e, sum26, rot0_0); \ dct_long_mac(t2e, p1e, row6, rot0_1); \ dct_long_mac(t3e, p1e, row2, rot0_2); \ int16x8_t sum04 = vaddq_s16(row0, row4); \ int16x8_t dif04 = vsubq_s16(row0, row4); \ dct_widen(t0e, sum04); \ dct_widen(t1e, dif04); \ dct_wadd(x0, t0e, t3e); \ dct_wsub(x3, t0e, t3e); \ dct_wadd(x1, t1e, t2e); \ dct_wsub(x2, t1e, t2e); \ /* odd part */ \ int16x8_t sum15 = vaddq_s16(row1, row5); \ int16x8_t sum17 = vaddq_s16(row1, row7); \ int16x8_t sum35 = vaddq_s16(row3, row5); \ int16x8_t sum37 = vaddq_s16(row3, row7); \ int16x8_t sumodd = vaddq_s16(sum17, sum35); \ dct_long_mul(p5o, sumodd, rot1_0); \ dct_long_mac(p1o, p5o, sum17, rot1_1); \ dct_long_mac(p2o, p5o, sum35, rot1_2); \ dct_long_mul(p3o, sum37, rot2_0); \ dct_long_mul(p4o, sum15, rot2_1); \ dct_wadd(sump13o, p1o, p3o); \ dct_wadd(sump24o, p2o, p4o); \ dct_wadd(sump23o, p2o, p3o); \ dct_wadd(sump14o, p1o, p4o); \ dct_long_mac(x4, sump13o, row7, rot3_0); \ dct_long_mac(x5, sump24o, row5, rot3_1); \ dct_long_mac(x6, sump23o, row3, rot3_2); \ dct_long_mac(x7, sump14o, row1, rot3_3); \ dct_bfly32o(row0,row7, x0,x7,shiftop,shift); \ dct_bfly32o(row1,row6, x1,x6,shiftop,shift); \ dct_bfly32o(row2,row5, x2,x5,shiftop,shift); \ dct_bfly32o(row3,row4, x3,x4,shiftop,shift); \ } // load row0 = vld1q_s16(data + 0*8); row1 = vld1q_s16(data + 1*8); row2 = vld1q_s16(data + 2*8); row3 = vld1q_s16(data + 3*8); row4 = vld1q_s16(data + 4*8); row5 = vld1q_s16(data + 5*8); row6 = vld1q_s16(data + 6*8); row7 = vld1q_s16(data + 7*8); // add DC bias row0 = vaddq_s16(row0, vsetq_lane_s16(1024, vdupq_n_s16(0), 0)); // column pass dct_pass(vrshrn_n_s32, 10); // 16bit 8x8 transpose { // these three map to a single VTRN.16, VTRN.32, and VSWP, respectively. // whether compilers actually get this is another story, sadly. #define dct_trn16(x, y) { int16x8x2_t t = vtrnq_s16(x, y); x = t.val[0]; y = t.val[1]; } #define dct_trn32(x, y) { int32x4x2_t t = vtrnq_s32(vreinterpretq_s32_s16(x), vreinterpretq_s32_s16(y)); x = vreinterpretq_s16_s32(t.val[0]); y = vreinterpretq_s16_s32(t.val[1]); } #define dct_trn64(x, y) { int16x8_t x0 = x; int16x8_t y0 = y; x = vcombine_s16(vget_low_s16(x0), vget_low_s16(y0)); y = vcombine_s16(vget_high_s16(x0), vget_high_s16(y0)); } // pass 1 dct_trn16(row0, row1); // a0b0a2b2a4b4a6b6 dct_trn16(row2, row3); dct_trn16(row4, row5); dct_trn16(row6, row7); // pass 2 dct_trn32(row0, row2); // a0b0c0d0a4b4c4d4 dct_trn32(row1, row3); dct_trn32(row4, row6); dct_trn32(row5, row7); // pass 3 dct_trn64(row0, row4); // a0b0c0d0e0f0g0h0 dct_trn64(row1, row5); dct_trn64(row2, row6); dct_trn64(row3, row7); #undef dct_trn16 #undef dct_trn32 #undef dct_trn64 } // row pass // vrshrn_n_s32 only supports shifts up to 16, we need // 17. so do a non-rounding shift of 16 first then follow // up with a rounding shift by 1. dct_pass(vshrn_n_s32, 16); { // pack and round uint8x8_t p0 = vqrshrun_n_s16(row0, 1); uint8x8_t p1 = vqrshrun_n_s16(row1, 1); uint8x8_t p2 = vqrshrun_n_s16(row2, 1); uint8x8_t p3 = vqrshrun_n_s16(row3, 1); uint8x8_t p4 = vqrshrun_n_s16(row4, 1); uint8x8_t p5 = vqrshrun_n_s16(row5, 1); uint8x8_t p6 = vqrshrun_n_s16(row6, 1); uint8x8_t p7 = vqrshrun_n_s16(row7, 1); // again, these can translate into one instruction, but often don't. #define dct_trn8_8(x, y) { uint8x8x2_t t = vtrn_u8(x, y); x = t.val[0]; y = t.val[1]; } #define dct_trn8_16(x, y) { uint16x4x2_t t = vtrn_u16(vreinterpret_u16_u8(x), vreinterpret_u16_u8(y)); x = vreinterpret_u8_u16(t.val[0]); y = vreinterpret_u8_u16(t.val[1]); } #define dct_trn8_32(x, y) { uint32x2x2_t t = vtrn_u32(vreinterpret_u32_u8(x), vreinterpret_u32_u8(y)); x = vreinterpret_u8_u32(t.val[0]); y = vreinterpret_u8_u32(t.val[1]); } // sadly can't use interleaved stores here since we only write // 8 bytes to each scan line! // 8x8 8-bit transpose pass 1 dct_trn8_8(p0, p1); dct_trn8_8(p2, p3); dct_trn8_8(p4, p5); dct_trn8_8(p6, p7); // pass 2 dct_trn8_16(p0, p2); dct_trn8_16(p1, p3); dct_trn8_16(p4, p6); dct_trn8_16(p5, p7); // pass 3 dct_trn8_32(p0, p4); dct_trn8_32(p1, p5); dct_trn8_32(p2, p6); dct_trn8_32(p3, p7); // store vst1_u8(out, p0); out += out_stride; vst1_u8(out, p1); out += out_stride; vst1_u8(out, p2); out += out_stride; vst1_u8(out, p3); out += out_stride; vst1_u8(out, p4); out += out_stride; vst1_u8(out, p5); out += out_stride; vst1_u8(out, p6); out += out_stride; vst1_u8(out, p7); #undef dct_trn8_8 #undef dct_trn8_16 #undef dct_trn8_32 } #undef dct_long_mul #undef dct_long_mac #undef dct_widen #undef dct_wadd #undef dct_wsub #undef dct_bfly32o #undef dct_pass } #endif // STBI_NEON #define STBI__MARKER_none 0xff // if there's a pending marker from the entropy stream, return that // otherwise, fetch from the stream and get a marker. if there's no // marker, return 0xff, which is never a valid marker value static stbi_uc stbi__get_marker(stbi__jpeg *j) { stbi_uc x; if (j->marker != STBI__MARKER_none) { x = j->marker; j->marker = STBI__MARKER_none; return x; } x = stbi__get8(j->s); if (x != 0xff) return STBI__MARKER_none; while (x == 0xff) x = stbi__get8(j->s); // consume repeated 0xff fill bytes return x; } // in each scan, we'll have scan_n components, and the order // of the components is specified by order[] #define STBI__RESTART(x) ((x) >= 0xd0 && (x) <= 0xd7) // after a restart interval, stbi__jpeg_reset the entropy decoder and // the dc prediction static void stbi__jpeg_reset(stbi__jpeg *j) { j->code_bits = 0; j->code_buffer = 0; j->nomore = 0; j->img_comp[0].dc_pred = j->img_comp[1].dc_pred = j->img_comp[2].dc_pred = j->img_comp[3].dc_pred = 0; j->marker = STBI__MARKER_none; j->todo = j->restart_interval ? j->restart_interval : 0x7fffffff; j->eob_run = 0; // no more than 1<<31 MCUs if no restart_interal? that's plenty safe, // since we don't even allow 1<<30 pixels } static int stbi__parse_entropy_coded_data(stbi__jpeg *z) { stbi__jpeg_reset(z); if (!z->progressive) { if (z->scan_n == 1) { int i,j; STBI_SIMD_ALIGN(short, data[64]); int n = z->order[0]; // non-interleaved data, we just need to process one block at a time, // in trivial scanline order // number of blocks to do just depends on how many actual "pixels" this // component has, independent of interleaved MCU blocking and such int w = (z->img_comp[n].x+7) >> 3; int h = (z->img_comp[n].y+7) >> 3; for (j=0; j < h; ++j) { for (i=0; i < w; ++i) { int ha = z->img_comp[n].ha; if (!stbi__jpeg_decode_block(z, data, z->huff_dc+z->img_comp[n].hd, z->huff_ac+ha, z->fast_ac[ha], n, z->dequant[z->img_comp[n].tq])) return 0; z->idct_block_kernel(z->img_comp[n].data+z->img_comp[n].w2*j*8+i*8, z->img_comp[n].w2, data); // every data block is an MCU, so countdown the restart interval if (--z->todo <= 0) { if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); // if it's NOT a restart, then just bail, so we get corrupt data // rather than no data if (!STBI__RESTART(z->marker)) return 1; stbi__jpeg_reset(z); } } } return 1; } else { // interleaved int i,j,k,x,y; STBI_SIMD_ALIGN(short, data[64]); for (j=0; j < z->img_mcu_y; ++j) { for (i=0; i < z->img_mcu_x; ++i) { // scan an interleaved mcu... process scan_n components in order for (k=0; k < z->scan_n; ++k) { int n = z->order[k]; // scan out an mcu's worth of this component; that's just determined // by the basic H and V specified for the component for (y=0; y < z->img_comp[n].v; ++y) { for (x=0; x < z->img_comp[n].h; ++x) { int x2 = (i*z->img_comp[n].h + x)*8; int y2 = (j*z->img_comp[n].v + y)*8; int ha = z->img_comp[n].ha; if (!stbi__jpeg_decode_block(z, data, z->huff_dc+z->img_comp[n].hd, z->huff_ac+ha, z->fast_ac[ha], n, z->dequant[z->img_comp[n].tq])) return 0; z->idct_block_kernel(z->img_comp[n].data+z->img_comp[n].w2*y2+x2, z->img_comp[n].w2, data); } } } // after all interleaved components, that's an interleaved MCU, // so now count down the restart interval if (--z->todo <= 0) { if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); if (!STBI__RESTART(z->marker)) return 1; stbi__jpeg_reset(z); } } } return 1; } } else { if (z->scan_n == 1) { int i,j; int n = z->order[0]; // non-interleaved data, we just need to process one block at a time, // in trivial scanline order // number of blocks to do just depends on how many actual "pixels" this // component has, independent of interleaved MCU blocking and such int w = (z->img_comp[n].x+7) >> 3; int h = (z->img_comp[n].y+7) >> 3; for (j=0; j < h; ++j) { for (i=0; i < w; ++i) { short *data = z->img_comp[n].coeff + 64 * (i + j * z->img_comp[n].coeff_w); if (z->spec_start == 0) { if (!stbi__jpeg_decode_block_prog_dc(z, data, &z->huff_dc[z->img_comp[n].hd], n)) return 0; } else { int ha = z->img_comp[n].ha; if (!stbi__jpeg_decode_block_prog_ac(z, data, &z->huff_ac[ha], z->fast_ac[ha])) return 0; } // every data block is an MCU, so countdown the restart interval if (--z->todo <= 0) { if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); if (!STBI__RESTART(z->marker)) return 1; stbi__jpeg_reset(z); } } } return 1; } else { // interleaved int i,j,k,x,y; for (j=0; j < z->img_mcu_y; ++j) { for (i=0; i < z->img_mcu_x; ++i) { // scan an interleaved mcu... process scan_n components in order for (k=0; k < z->scan_n; ++k) { int n = z->order[k]; // scan out an mcu's worth of this component; that's just determined // by the basic H and V specified for the component for (y=0; y < z->img_comp[n].v; ++y) { for (x=0; x < z->img_comp[n].h; ++x) { int x2 = (i*z->img_comp[n].h + x); int y2 = (j*z->img_comp[n].v + y); short *data = z->img_comp[n].coeff + 64 * (x2 + y2 * z->img_comp[n].coeff_w); if (!stbi__jpeg_decode_block_prog_dc(z, data, &z->huff_dc[z->img_comp[n].hd], n)) return 0; } } } // after all interleaved components, that's an interleaved MCU, // so now count down the restart interval if (--z->todo <= 0) { if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); if (!STBI__RESTART(z->marker)) return 1; stbi__jpeg_reset(z); } } } return 1; } } } static void stbi__jpeg_dequantize(short *data, stbi__uint16 *dequant) { int i; for (i=0; i < 64; ++i) data[i] *= dequant[i]; } static void stbi__jpeg_finish(stbi__jpeg *z) { if (z->progressive) { // dequantize and idct the data int i,j,n; for (n=0; n < z->s->img_n; ++n) { int w = (z->img_comp[n].x+7) >> 3; int h = (z->img_comp[n].y+7) >> 3; for (j=0; j < h; ++j) { for (i=0; i < w; ++i) { short *data = z->img_comp[n].coeff + 64 * (i + j * z->img_comp[n].coeff_w); stbi__jpeg_dequantize(data, z->dequant[z->img_comp[n].tq]); z->idct_block_kernel(z->img_comp[n].data+z->img_comp[n].w2*j*8+i*8, z->img_comp[n].w2, data); } } } } } static int stbi__process_marker(stbi__jpeg *z, int m) { int L; switch (m) { case STBI__MARKER_none: // no marker found return stbi__err("expected marker","Corrupt JPEG"); case 0xDD: // DRI - specify restart interval if (stbi__get16be(z->s) != 4) return stbi__err("bad DRI len","Corrupt JPEG"); z->restart_interval = stbi__get16be(z->s); return 1; case 0xDB: // DQT - define quantization table L = stbi__get16be(z->s)-2; while (L > 0) { int q = stbi__get8(z->s); int p = q >> 4, sixteen = (p != 0); int t = q & 15,i; if (p != 0 && p != 1) return stbi__err("bad DQT type","Corrupt JPEG"); if (t > 3) return stbi__err("bad DQT table","Corrupt JPEG"); for (i=0; i < 64; ++i) z->dequant[t][stbi__jpeg_dezigzag[i]] = (stbi__uint16)(sixteen ? stbi__get16be(z->s) : stbi__get8(z->s)); L -= (sixteen ? 129 : 65); } return L==0; case 0xC4: // DHT - define huffman table L = stbi__get16be(z->s)-2; while (L > 0) { stbi_uc *v; int sizes[16],i,n=0; int q = stbi__get8(z->s); int tc = q >> 4; int th = q & 15; if (tc > 1 || th > 3) return stbi__err("bad DHT header","Corrupt JPEG"); for (i=0; i < 16; ++i) { sizes[i] = stbi__get8(z->s); n += sizes[i]; } L -= 17; if (tc == 0) { if (!stbi__build_huffman(z->huff_dc+th, sizes)) return 0; v = z->huff_dc[th].values; } else { if (!stbi__build_huffman(z->huff_ac+th, sizes)) return 0; v = z->huff_ac[th].values; } for (i=0; i < n; ++i) v[i] = stbi__get8(z->s); if (tc != 0) stbi__build_fast_ac(z->fast_ac[th], z->huff_ac + th); L -= n; } return L==0; } // check for comment block or APP blocks if ((m >= 0xE0 && m <= 0xEF) || m == 0xFE) { L = stbi__get16be(z->s); if (L < 2) { if (m == 0xFE) return stbi__err("bad COM len","Corrupt JPEG"); else return stbi__err("bad APP len","Corrupt JPEG"); } L -= 2; if (m == 0xE0 && L >= 5) { // JFIF APP0 segment static const unsigned char tag[5] = {'J','F','I','F','\0'}; int ok = 1; int i; for (i=0; i < 5; ++i) if (stbi__get8(z->s) != tag[i]) ok = 0; L -= 5; if (ok) z->jfif = 1; } else if (m == 0xEE && L >= 12) { // Adobe APP14 segment static const unsigned char tag[6] = {'A','d','o','b','e','\0'}; int ok = 1; int i; for (i=0; i < 6; ++i) if (stbi__get8(z->s) != tag[i]) ok = 0; L -= 6; if (ok) { stbi__get8(z->s); // version stbi__get16be(z->s); // flags0 stbi__get16be(z->s); // flags1 z->app14_color_transform = stbi__get8(z->s); // color transform L -= 6; } } stbi__skip(z->s, L); return 1; } return stbi__err("unknown marker","Corrupt JPEG"); } // after we see SOS static int stbi__process_scan_header(stbi__jpeg *z) { int i; int Ls = stbi__get16be(z->s); z->scan_n = stbi__get8(z->s); if (z->scan_n < 1 || z->scan_n > 4 || z->scan_n > (int) z->s->img_n) return stbi__err("bad SOS component count","Corrupt JPEG"); if (Ls != 6+2*z->scan_n) return stbi__err("bad SOS len","Corrupt JPEG"); for (i=0; i < z->scan_n; ++i) { int id = stbi__get8(z->s), which; int q = stbi__get8(z->s); for (which = 0; which < z->s->img_n; ++which) if (z->img_comp[which].id == id) break; if (which == z->s->img_n) return 0; // no match z->img_comp[which].hd = q >> 4; if (z->img_comp[which].hd > 3) return stbi__err("bad DC huff","Corrupt JPEG"); z->img_comp[which].ha = q & 15; if (z->img_comp[which].ha > 3) return stbi__err("bad AC huff","Corrupt JPEG"); z->order[i] = which; } { int aa; z->spec_start = stbi__get8(z->s); z->spec_end = stbi__get8(z->s); // should be 63, but might be 0 aa = stbi__get8(z->s); z->succ_high = (aa >> 4); z->succ_low = (aa & 15); if (z->progressive) { if (z->spec_start > 63 || z->spec_end > 63 || z->spec_start > z->spec_end || z->succ_high > 13 || z->succ_low > 13) return stbi__err("bad SOS", "Corrupt JPEG"); } else { if (z->spec_start != 0) return stbi__err("bad SOS","Corrupt JPEG"); if (z->succ_high != 0 || z->succ_low != 0) return stbi__err("bad SOS","Corrupt JPEG"); z->spec_end = 63; } } return 1; } static int stbi__free_jpeg_components(stbi__jpeg *z, int ncomp, int why) { int i; for (i=0; i < ncomp; ++i) { if (z->img_comp[i].raw_data) { STBI_FREE(z->img_comp[i].raw_data); z->img_comp[i].raw_data = NULL; z->img_comp[i].data = NULL; } if (z->img_comp[i].raw_coeff) { STBI_FREE(z->img_comp[i].raw_coeff); z->img_comp[i].raw_coeff = 0; z->img_comp[i].coeff = 0; } if (z->img_comp[i].linebuf) { STBI_FREE(z->img_comp[i].linebuf); z->img_comp[i].linebuf = NULL; } } return why; } static int stbi__process_frame_header(stbi__jpeg *z, int scan) { stbi__context *s = z->s; int Lf,p,i,q, h_max=1,v_max=1,c; Lf = stbi__get16be(s); if (Lf < 11) return stbi__err("bad SOF len","Corrupt JPEG"); // JPEG p = stbi__get8(s); if (p != 8) return stbi__err("only 8-bit","JPEG format not supported: 8-bit only"); // JPEG baseline s->img_y = stbi__get16be(s); if (s->img_y == 0) return stbi__err("no header height", "JPEG format not supported: delayed height"); // Legal, but we don't handle it--but neither does IJG s->img_x = stbi__get16be(s); if (s->img_x == 0) return stbi__err("0 width","Corrupt JPEG"); // JPEG requires if (s->img_y > STBI_MAX_DIMENSIONS) return stbi__err("too large","Very large image (corrupt?)"); if (s->img_x > STBI_MAX_DIMENSIONS) return stbi__err("too large","Very large image (corrupt?)"); c = stbi__get8(s); if (c != 3 && c != 1 && c != 4) return stbi__err("bad component count","Corrupt JPEG"); s->img_n = c; for (i=0; i < c; ++i) { z->img_comp[i].data = NULL; z->img_comp[i].linebuf = NULL; } if (Lf != 8+3*s->img_n) return stbi__err("bad SOF len","Corrupt JPEG"); z->rgb = 0; for (i=0; i < s->img_n; ++i) { static const unsigned char rgb[3] = { 'R', 'G', 'B' }; z->img_comp[i].id = stbi__get8(s); if (s->img_n == 3 && z->img_comp[i].id == rgb[i]) ++z->rgb; q = stbi__get8(s); z->img_comp[i].h = (q >> 4); if (!z->img_comp[i].h || z->img_comp[i].h > 4) return stbi__err("bad H","Corrupt JPEG"); z->img_comp[i].v = q & 15; if (!z->img_comp[i].v || z->img_comp[i].v > 4) return stbi__err("bad V","Corrupt JPEG"); z->img_comp[i].tq = stbi__get8(s); if (z->img_comp[i].tq > 3) return stbi__err("bad TQ","Corrupt JPEG"); } if (scan != STBI__SCAN_load) return 1; if (!stbi__mad3sizes_valid(s->img_x, s->img_y, s->img_n, 0)) return stbi__err("too large", "Image too large to decode"); for (i=0; i < s->img_n; ++i) { if (z->img_comp[i].h > h_max) h_max = z->img_comp[i].h; if (z->img_comp[i].v > v_max) v_max = z->img_comp[i].v; } // check that plane subsampling factors are integer ratios; our resamplers can't deal with fractional ratios // and I've never seen a non-corrupted JPEG file actually use them for (i=0; i < s->img_n; ++i) { if (h_max % z->img_comp[i].h != 0) return stbi__err("bad H","Corrupt JPEG"); if (v_max % z->img_comp[i].v != 0) return stbi__err("bad V","Corrupt JPEG"); } // compute interleaved mcu info z->img_h_max = h_max; z->img_v_max = v_max; z->img_mcu_w = h_max * 8; z->img_mcu_h = v_max * 8; // these sizes can't be more than 17 bits z->img_mcu_x = (s->img_x + z->img_mcu_w-1) / z->img_mcu_w; z->img_mcu_y = (s->img_y + z->img_mcu_h-1) / z->img_mcu_h; for (i=0; i < s->img_n; ++i) { // number of effective pixels (e.g. for non-interleaved MCU) z->img_comp[i].x = (s->img_x * z->img_comp[i].h + h_max-1) / h_max; z->img_comp[i].y = (s->img_y * z->img_comp[i].v + v_max-1) / v_max; // to simplify generation, we'll allocate enough memory to decode // the bogus oversized data from using interleaved MCUs and their // big blocks (e.g. a 16x16 iMCU on an image of width 33); we won't // discard the extra data until colorspace conversion // // img_mcu_x, img_mcu_y: <=17 bits; comp[i].h and .v are <=4 (checked earlier) // so these muls can't overflow with 32-bit ints (which we require) z->img_comp[i].w2 = z->img_mcu_x * z->img_comp[i].h * 8; z->img_comp[i].h2 = z->img_mcu_y * z->img_comp[i].v * 8; z->img_comp[i].coeff = 0; z->img_comp[i].raw_coeff = 0; z->img_comp[i].linebuf = NULL; z->img_comp[i].raw_data = stbi__malloc_mad2(z->img_comp[i].w2, z->img_comp[i].h2, 15); if (z->img_comp[i].raw_data == NULL) return stbi__free_jpeg_components(z, i+1, stbi__err("outofmem", "Out of memory")); // align blocks for idct using mmx/sse z->img_comp[i].data = (stbi_uc*) (((size_t) z->img_comp[i].raw_data + 15) & ~15); if (z->progressive) { // w2, h2 are multiples of 8 (see above) z->img_comp[i].coeff_w = z->img_comp[i].w2 / 8; z->img_comp[i].coeff_h = z->img_comp[i].h2 / 8; z->img_comp[i].raw_coeff = stbi__malloc_mad3(z->img_comp[i].w2, z->img_comp[i].h2, sizeof(short), 15); if (z->img_comp[i].raw_coeff == NULL) return stbi__free_jpeg_components(z, i+1, stbi__err("outofmem", "Out of memory")); z->img_comp[i].coeff = (short*) (((size_t) z->img_comp[i].raw_coeff + 15) & ~15); } } return 1; } // use comparisons since in some cases we handle more than one case (e.g. SOF) #define stbi__DNL(x) ((x) == 0xdc) #define stbi__SOI(x) ((x) == 0xd8) #define stbi__EOI(x) ((x) == 0xd9) #define stbi__SOF(x) ((x) == 0xc0 || (x) == 0xc1 || (x) == 0xc2) #define stbi__SOS(x) ((x) == 0xda) #define stbi__SOF_progressive(x) ((x) == 0xc2) static int stbi__decode_jpeg_header(stbi__jpeg *z, int scan) { int m; z->jfif = 0; z->app14_color_transform = -1; // valid values are 0,1,2 z->marker = STBI__MARKER_none; // initialize cached marker to empty m = stbi__get_marker(z); if (!stbi__SOI(m)) return stbi__err("no SOI","Corrupt JPEG"); if (scan == STBI__SCAN_type) return 1; m = stbi__get_marker(z); while (!stbi__SOF(m)) { if (!stbi__process_marker(z,m)) return 0; m = stbi__get_marker(z); while (m == STBI__MARKER_none) { // some files have extra padding after their blocks, so ok, we'll scan if (stbi__at_eof(z->s)) return stbi__err("no SOF", "Corrupt JPEG"); m = stbi__get_marker(z); } } z->progressive = stbi__SOF_progressive(m); if (!stbi__process_frame_header(z, scan)) return 0; return 1; } // decode image to YCbCr format static int stbi__decode_jpeg_image(stbi__jpeg *j) { int m; for (m = 0; m < 4; m++) { j->img_comp[m].raw_data = NULL; j->img_comp[m].raw_coeff = NULL; } j->restart_interval = 0; if (!stbi__decode_jpeg_header(j, STBI__SCAN_load)) return 0; m = stbi__get_marker(j); while (!stbi__EOI(m)) { if (stbi__SOS(m)) { if (!stbi__process_scan_header(j)) return 0; if (!stbi__parse_entropy_coded_data(j)) return 0; if (j->marker == STBI__MARKER_none ) { // handle 0s at the end of image data from IP Kamera 9060 while (!stbi__at_eof(j->s)) { int x = stbi__get8(j->s); if (x == 255) { j->marker = stbi__get8(j->s); break; } } // if we reach eof without hitting a marker, stbi__get_marker() below will fail and we'll eventually return 0 } } else if (stbi__DNL(m)) { int Ld = stbi__get16be(j->s); stbi__uint32 NL = stbi__get16be(j->s); if (Ld != 4) return stbi__err("bad DNL len", "Corrupt JPEG"); if (NL != j->s->img_y) return stbi__err("bad DNL height", "Corrupt JPEG"); } else { if (!stbi__process_marker(j, m)) return 0; } m = stbi__get_marker(j); } if (j->progressive) stbi__jpeg_finish(j); return 1; } // static jfif-centered resampling (across block boundaries) typedef stbi_uc *(*resample_row_func)(stbi_uc *out, stbi_uc *in0, stbi_uc *in1, int w, int hs); #define stbi__div4(x) ((stbi_uc) ((x) >> 2)) static stbi_uc *resample_row_1(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs) { STBI_NOTUSED(out); STBI_NOTUSED(in_far); STBI_NOTUSED(w); STBI_NOTUSED(hs); return in_near; } static stbi_uc* stbi__resample_row_v_2(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs) { // need to generate two samples vertically for every one in input int i; STBI_NOTUSED(hs); for (i=0; i < w; ++i) out[i] = stbi__div4(3*in_near[i] + in_far[i] + 2); return out; } static stbi_uc* stbi__resample_row_h_2(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs) { // need to generate two samples horizontally for every one in input int i; stbi_uc *input = in_near; if (w == 1) { // if only one sample, can't do any interpolation out[0] = out[1] = input[0]; return out; } out[0] = input[0]; out[1] = stbi__div4(input[0]*3 + input[1] + 2); for (i=1; i < w-1; ++i) { int n = 3*input[i]+2; out[i*2+0] = stbi__div4(n+input[i-1]); out[i*2+1] = stbi__div4(n+input[i+1]); } out[i*2+0] = stbi__div4(input[w-2]*3 + input[w-1] + 2); out[i*2+1] = input[w-1]; STBI_NOTUSED(in_far); STBI_NOTUSED(hs); return out; } #define stbi__div16(x) ((stbi_uc) ((x) >> 4)) static stbi_uc *stbi__resample_row_hv_2(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs) { // need to generate 2x2 samples for every one in input int i,t0,t1; if (w == 1) { out[0] = out[1] = stbi__div4(3*in_near[0] + in_far[0] + 2); return out; } t1 = 3*in_near[0] + in_far[0]; out[0] = stbi__div4(t1+2); for (i=1; i < w; ++i) { t0 = t1; t1 = 3*in_near[i]+in_far[i]; out[i*2-1] = stbi__div16(3*t0 + t1 + 8); out[i*2 ] = stbi__div16(3*t1 + t0 + 8); } out[w*2-1] = stbi__div4(t1+2); STBI_NOTUSED(hs); return out; } #if defined(STBI_SSE2) || defined(STBI_NEON) static stbi_uc *stbi__resample_row_hv_2_simd(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs) { // need to generate 2x2 samples for every one in input int i=0,t0,t1; if (w == 1) { out[0] = out[1] = stbi__div4(3*in_near[0] + in_far[0] + 2); return out; } t1 = 3*in_near[0] + in_far[0]; // process groups of 8 pixels for as long as we can. // note we can't handle the last pixel in a row in this loop // because we need to handle the filter boundary conditions. for (; i < ((w-1) & ~7); i += 8) { #if defined(STBI_SSE2) // load and perform the vertical filtering pass // this uses 3*x + y = 4*x + (y - x) __m128i zero = _mm_setzero_si128(); __m128i farb = _mm_loadl_epi64((__m128i *) (in_far + i)); __m128i nearb = _mm_loadl_epi64((__m128i *) (in_near + i)); __m128i farw = _mm_unpacklo_epi8(farb, zero); __m128i nearw = _mm_unpacklo_epi8(nearb, zero); __m128i diff = _mm_sub_epi16(farw, nearw); __m128i nears = _mm_slli_epi16(nearw, 2); __m128i curr = _mm_add_epi16(nears, diff); // current row // horizontal filter works the same based on shifted vers of current // row. "prev" is current row shifted right by 1 pixel; we need to // insert the previous pixel value (from t1). // "next" is current row shifted left by 1 pixel, with first pixel // of next block of 8 pixels added in. __m128i prv0 = _mm_slli_si128(curr, 2); __m128i nxt0 = _mm_srli_si128(curr, 2); __m128i prev = _mm_insert_epi16(prv0, t1, 0); __m128i next = _mm_insert_epi16(nxt0, 3*in_near[i+8] + in_far[i+8], 7); // horizontal filter, polyphase implementation since it's convenient: // even pixels = 3*cur + prev = cur*4 + (prev - cur) // odd pixels = 3*cur + next = cur*4 + (next - cur) // note the shared term. __m128i bias = _mm_set1_epi16(8); __m128i curs = _mm_slli_epi16(curr, 2); __m128i prvd = _mm_sub_epi16(prev, curr); __m128i nxtd = _mm_sub_epi16(next, curr); __m128i curb = _mm_add_epi16(curs, bias); __m128i even = _mm_add_epi16(prvd, curb); __m128i odd = _mm_add_epi16(nxtd, curb); // interleave even and odd pixels, then undo scaling. __m128i int0 = _mm_unpacklo_epi16(even, odd); __m128i int1 = _mm_unpackhi_epi16(even, odd); __m128i de0 = _mm_srli_epi16(int0, 4); __m128i de1 = _mm_srli_epi16(int1, 4); // pack and write output __m128i outv = _mm_packus_epi16(de0, de1); _mm_storeu_si128((__m128i *) (out + i*2), outv); #elif defined(STBI_NEON) // load and perform the vertical filtering pass // this uses 3*x + y = 4*x + (y - x) uint8x8_t farb = vld1_u8(in_far + i); uint8x8_t nearb = vld1_u8(in_near + i); int16x8_t diff = vreinterpretq_s16_u16(vsubl_u8(farb, nearb)); int16x8_t nears = vreinterpretq_s16_u16(vshll_n_u8(nearb, 2)); int16x8_t curr = vaddq_s16(nears, diff); // current row // horizontal filter works the same based on shifted vers of current // row. "prev" is current row shifted right by 1 pixel; we need to // insert the previous pixel value (from t1). // "next" is current row shifted left by 1 pixel, with first pixel // of next block of 8 pixels added in. int16x8_t prv0 = vextq_s16(curr, curr, 7); int16x8_t nxt0 = vextq_s16(curr, curr, 1); int16x8_t prev = vsetq_lane_s16(t1, prv0, 0); int16x8_t next = vsetq_lane_s16(3*in_near[i+8] + in_far[i+8], nxt0, 7); // horizontal filter, polyphase implementation since it's convenient: // even pixels = 3*cur + prev = cur*4 + (prev - cur) // odd pixels = 3*cur + next = cur*4 + (next - cur) // note the shared term. int16x8_t curs = vshlq_n_s16(curr, 2); int16x8_t prvd = vsubq_s16(prev, curr); int16x8_t nxtd = vsubq_s16(next, curr); int16x8_t even = vaddq_s16(curs, prvd); int16x8_t odd = vaddq_s16(curs, nxtd); // undo scaling and round, then store with even/odd phases interleaved uint8x8x2_t o; o.val[0] = vqrshrun_n_s16(even, 4); o.val[1] = vqrshrun_n_s16(odd, 4); vst2_u8(out + i*2, o); #endif // "previous" value for next iter t1 = 3*in_near[i+7] + in_far[i+7]; } t0 = t1; t1 = 3*in_near[i] + in_far[i]; out[i*2] = stbi__div16(3*t1 + t0 + 8); for (++i; i < w; ++i) { t0 = t1; t1 = 3*in_near[i]+in_far[i]; out[i*2-1] = stbi__div16(3*t0 + t1 + 8); out[i*2 ] = stbi__div16(3*t1 + t0 + 8); } out[w*2-1] = stbi__div4(t1+2); STBI_NOTUSED(hs); return out; } #endif static stbi_uc *stbi__resample_row_generic(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs) { // resample with nearest-neighbor int i,j; STBI_NOTUSED(in_far); for (i=0; i < w; ++i) for (j=0; j < hs; ++j) out[i*hs+j] = in_near[i]; return out; } // this is a reduced-precision calculation of YCbCr-to-RGB introduced // to make sure the code produces the same results in both SIMD and scalar #define stbi__float2fixed(x) (((int) ((x) * 4096.0f + 0.5f)) << 8) static void stbi__YCbCr_to_RGB_row(stbi_uc *out, const stbi_uc *y, const stbi_uc *pcb, const stbi_uc *pcr, int count, int step) { int i; for (i=0; i < count; ++i) { int y_fixed = (y[i] << 20) + (1<<19); // rounding int r,g,b; int cr = pcr[i] - 128; int cb = pcb[i] - 128; r = y_fixed + cr* stbi__float2fixed(1.40200f); g = y_fixed + (cr*-stbi__float2fixed(0.71414f)) + ((cb*-stbi__float2fixed(0.34414f)) & 0xffff0000); b = y_fixed + cb* stbi__float2fixed(1.77200f); r >>= 20; g >>= 20; b >>= 20; if ((unsigned) r > 255) { if (r < 0) r = 0; else r = 255; } if ((unsigned) g > 255) { if (g < 0) g = 0; else g = 255; } if ((unsigned) b > 255) { if (b < 0) b = 0; else b = 255; } out[0] = (stbi_uc)r; out[1] = (stbi_uc)g; out[2] = (stbi_uc)b; out[3] = 255; out += step; } } #if defined(STBI_SSE2) || defined(STBI_NEON) static void stbi__YCbCr_to_RGB_simd(stbi_uc *out, stbi_uc const *y, stbi_uc const *pcb, stbi_uc const *pcr, int count, int step) { int i = 0; #ifdef STBI_SSE2 // step == 3 is pretty ugly on the final interleave, and i'm not convinced // it's useful in practice (you wouldn't use it for textures, for example). // so just accelerate step == 4 case. if (step == 4) { // this is a fairly straightforward implementation and not super-optimized. __m128i signflip = _mm_set1_epi8(-0x80); __m128i cr_const0 = _mm_set1_epi16( (short) ( 1.40200f*4096.0f+0.5f)); __m128i cr_const1 = _mm_set1_epi16( - (short) ( 0.71414f*4096.0f+0.5f)); __m128i cb_const0 = _mm_set1_epi16( - (short) ( 0.34414f*4096.0f+0.5f)); __m128i cb_const1 = _mm_set1_epi16( (short) ( 1.77200f*4096.0f+0.5f)); __m128i y_bias = _mm_set1_epi8((char) (unsigned char) 128); __m128i xw = _mm_set1_epi16(255); // alpha channel for (; i+7 < count; i += 8) { // load __m128i y_bytes = _mm_loadl_epi64((__m128i *) (y+i)); __m128i cr_bytes = _mm_loadl_epi64((__m128i *) (pcr+i)); __m128i cb_bytes = _mm_loadl_epi64((__m128i *) (pcb+i)); __m128i cr_biased = _mm_xor_si128(cr_bytes, signflip); // -128 __m128i cb_biased = _mm_xor_si128(cb_bytes, signflip); // -128 // unpack to short (and left-shift cr, cb by 8) __m128i yw = _mm_unpacklo_epi8(y_bias, y_bytes); __m128i crw = _mm_unpacklo_epi8(_mm_setzero_si128(), cr_biased); __m128i cbw = _mm_unpacklo_epi8(_mm_setzero_si128(), cb_biased); // color transform __m128i yws = _mm_srli_epi16(yw, 4); __m128i cr0 = _mm_mulhi_epi16(cr_const0, crw); __m128i cb0 = _mm_mulhi_epi16(cb_const0, cbw); __m128i cb1 = _mm_mulhi_epi16(cbw, cb_const1); __m128i cr1 = _mm_mulhi_epi16(crw, cr_const1); __m128i rws = _mm_add_epi16(cr0, yws); __m128i gwt = _mm_add_epi16(cb0, yws); __m128i bws = _mm_add_epi16(yws, cb1); __m128i gws = _mm_add_epi16(gwt, cr1); // descale __m128i rw = _mm_srai_epi16(rws, 4); __m128i bw = _mm_srai_epi16(bws, 4); __m128i gw = _mm_srai_epi16(gws, 4); // back to byte, set up for transpose __m128i brb = _mm_packus_epi16(rw, bw); __m128i gxb = _mm_packus_epi16(gw, xw); // transpose to interleave channels __m128i t0 = _mm_unpacklo_epi8(brb, gxb); __m128i t1 = _mm_unpackhi_epi8(brb, gxb); __m128i o0 = _mm_unpacklo_epi16(t0, t1); __m128i o1 = _mm_unpackhi_epi16(t0, t1); // store _mm_storeu_si128((__m128i *) (out + 0), o0); _mm_storeu_si128((__m128i *) (out + 16), o1); out += 32; } } #endif #ifdef STBI_NEON // in this version, step=3 support would be easy to add. but is there demand? if (step == 4) { // this is a fairly straightforward implementation and not super-optimized. uint8x8_t signflip = vdup_n_u8(0x80); int16x8_t cr_const0 = vdupq_n_s16( (short) ( 1.40200f*4096.0f+0.5f)); int16x8_t cr_const1 = vdupq_n_s16( - (short) ( 0.71414f*4096.0f+0.5f)); int16x8_t cb_const0 = vdupq_n_s16( - (short) ( 0.34414f*4096.0f+0.5f)); int16x8_t cb_const1 = vdupq_n_s16( (short) ( 1.77200f*4096.0f+0.5f)); for (; i+7 < count; i += 8) { // load uint8x8_t y_bytes = vld1_u8(y + i); uint8x8_t cr_bytes = vld1_u8(pcr + i); uint8x8_t cb_bytes = vld1_u8(pcb + i); int8x8_t cr_biased = vreinterpret_s8_u8(vsub_u8(cr_bytes, signflip)); int8x8_t cb_biased = vreinterpret_s8_u8(vsub_u8(cb_bytes, signflip)); // expand to s16 int16x8_t yws = vreinterpretq_s16_u16(vshll_n_u8(y_bytes, 4)); int16x8_t crw = vshll_n_s8(cr_biased, 7); int16x8_t cbw = vshll_n_s8(cb_biased, 7); // color transform int16x8_t cr0 = vqdmulhq_s16(crw, cr_const0); int16x8_t cb0 = vqdmulhq_s16(cbw, cb_const0); int16x8_t cr1 = vqdmulhq_s16(crw, cr_const1); int16x8_t cb1 = vqdmulhq_s16(cbw, cb_const1); int16x8_t rws = vaddq_s16(yws, cr0); int16x8_t gws = vaddq_s16(vaddq_s16(yws, cb0), cr1); int16x8_t bws = vaddq_s16(yws, cb1); // undo scaling, round, convert to byte uint8x8x4_t o; o.val[0] = vqrshrun_n_s16(rws, 4); o.val[1] = vqrshrun_n_s16(gws, 4); o.val[2] = vqrshrun_n_s16(bws, 4); o.val[3] = vdup_n_u8(255); // store, interleaving r/g/b/a vst4_u8(out, o); out += 8*4; } } #endif for (; i < count; ++i) { int y_fixed = (y[i] << 20) + (1<<19); // rounding int r,g,b; int cr = pcr[i] - 128; int cb = pcb[i] - 128; r = y_fixed + cr* stbi__float2fixed(1.40200f); g = y_fixed + cr*-stbi__float2fixed(0.71414f) + ((cb*-stbi__float2fixed(0.34414f)) & 0xffff0000); b = y_fixed + cb* stbi__float2fixed(1.77200f); r >>= 20; g >>= 20; b >>= 20; if ((unsigned) r > 255) { if (r < 0) r = 0; else r = 255; } if ((unsigned) g > 255) { if (g < 0) g = 0; else g = 255; } if ((unsigned) b > 255) { if (b < 0) b = 0; else b = 255; } out[0] = (stbi_uc)r; out[1] = (stbi_uc)g; out[2] = (stbi_uc)b; out[3] = 255; out += step; } } #endif // set up the kernels static void stbi__setup_jpeg(stbi__jpeg *j) { j->idct_block_kernel = stbi__idct_block; j->YCbCr_to_RGB_kernel = stbi__YCbCr_to_RGB_row; j->resample_row_hv_2_kernel = stbi__resample_row_hv_2; #ifdef STBI_SSE2 if (stbi__sse2_available()) { j->idct_block_kernel = stbi__idct_simd; j->YCbCr_to_RGB_kernel = stbi__YCbCr_to_RGB_simd; j->resample_row_hv_2_kernel = stbi__resample_row_hv_2_simd; } #endif #ifdef STBI_NEON j->idct_block_kernel = stbi__idct_simd; j->YCbCr_to_RGB_kernel = stbi__YCbCr_to_RGB_simd; j->resample_row_hv_2_kernel = stbi__resample_row_hv_2_simd; #endif } // clean up the temporary component buffers static void stbi__cleanup_jpeg(stbi__jpeg *j) { stbi__free_jpeg_components(j, j->s->img_n, 0); } typedef struct { resample_row_func resample; stbi_uc *line0,*line1; int hs,vs; // expansion factor in each axis int w_lores; // horizontal pixels pre-expansion int ystep; // how far through vertical expansion we are int ypos; // which pre-expansion row we're on } stbi__resample; // fast 0..255 * 0..255 => 0..255 rounded multiplication static stbi_uc stbi__blinn_8x8(stbi_uc x, stbi_uc y) { unsigned int t = x*y + 128; return (stbi_uc) ((t + (t >>8)) >> 8); } static stbi_uc *load_jpeg_image(stbi__jpeg *z, int *out_x, int *out_y, int *comp, int req_comp) { int n, decode_n, is_rgb; z->s->img_n = 0; // make stbi__cleanup_jpeg safe // validate req_comp if (req_comp < 0 || req_comp > 4) return stbi__errpuc("bad req_comp", "Internal error"); // load a jpeg image from whichever source, but leave in YCbCr format if (!stbi__decode_jpeg_image(z)) { stbi__cleanup_jpeg(z); return NULL; } // determine actual number of components to generate n = req_comp ? req_comp : z->s->img_n >= 3 ? 3 : 1; is_rgb = z->s->img_n == 3 && (z->rgb == 3 || (z->app14_color_transform == 0 && !z->jfif)); if (z->s->img_n == 3 && n < 3 && !is_rgb) decode_n = 1; else decode_n = z->s->img_n; // nothing to do if no components requested; check this now to avoid // accessing uninitialized coutput[0] later if (decode_n <= 0) { stbi__cleanup_jpeg(z); return NULL; } // resample and color-convert { int k; unsigned int i,j; stbi_uc *output; stbi_uc *coutput[4] = { NULL, NULL, NULL, NULL }; stbi__resample res_comp[4]; for (k=0; k < decode_n; ++k) { stbi__resample *r = &res_comp[k]; // allocate line buffer big enough for upsampling off the edges // with upsample factor of 4 z->img_comp[k].linebuf = (stbi_uc *) stbi__malloc(z->s->img_x + 3); if (!z->img_comp[k].linebuf) { stbi__cleanup_jpeg(z); return stbi__errpuc("outofmem", "Out of memory"); } r->hs = z->img_h_max / z->img_comp[k].h; r->vs = z->img_v_max / z->img_comp[k].v; r->ystep = r->vs >> 1; r->w_lores = (z->s->img_x + r->hs-1) / r->hs; r->ypos = 0; r->line0 = r->line1 = z->img_comp[k].data; if (r->hs == 1 && r->vs == 1) r->resample = resample_row_1; else if (r->hs == 1 && r->vs == 2) r->resample = stbi__resample_row_v_2; else if (r->hs == 2 && r->vs == 1) r->resample = stbi__resample_row_h_2; else if (r->hs == 2 && r->vs == 2) r->resample = z->resample_row_hv_2_kernel; else r->resample = stbi__resample_row_generic; } // can't error after this so, this is safe output = (stbi_uc *) stbi__malloc_mad3(n, z->s->img_x, z->s->img_y, 1); if (!output) { stbi__cleanup_jpeg(z); return stbi__errpuc("outofmem", "Out of memory"); } // now go ahead and resample for (j=0; j < z->s->img_y; ++j) { stbi_uc *out = output + n * z->s->img_x * j; for (k=0; k < decode_n; ++k) { stbi__resample *r = &res_comp[k]; int y_bot = r->ystep >= (r->vs >> 1); coutput[k] = r->resample(z->img_comp[k].linebuf, y_bot ? r->line1 : r->line0, y_bot ? r->line0 : r->line1, r->w_lores, r->hs); if (++r->ystep >= r->vs) { r->ystep = 0; r->line0 = r->line1; if (++r->ypos < z->img_comp[k].y) r->line1 += z->img_comp[k].w2; } } if (n >= 3) { stbi_uc *y = coutput[0]; if (z->s->img_n == 3) { if (is_rgb) { for (i=0; i < z->s->img_x; ++i) { out[0] = y[i]; out[1] = coutput[1][i]; out[2] = coutput[2][i]; out[3] = 255; out += n; } } else { z->YCbCr_to_RGB_kernel(out, y, coutput[1], coutput[2], z->s->img_x, n); } } else if (z->s->img_n == 4) { if (z->app14_color_transform == 0) { // CMYK for (i=0; i < z->s->img_x; ++i) { stbi_uc m = coutput[3][i]; out[0] = stbi__blinn_8x8(coutput[0][i], m); out[1] = stbi__blinn_8x8(coutput[1][i], m); out[2] = stbi__blinn_8x8(coutput[2][i], m); out[3] = 255; out += n; } } else if (z->app14_color_transform == 2) { // YCCK z->YCbCr_to_RGB_kernel(out, y, coutput[1], coutput[2], z->s->img_x, n); for (i=0; i < z->s->img_x; ++i) { stbi_uc m = coutput[3][i]; out[0] = stbi__blinn_8x8(255 - out[0], m); out[1] = stbi__blinn_8x8(255 - out[1], m); out[2] = stbi__blinn_8x8(255 - out[2], m); out += n; } } else { // YCbCr + alpha? Ignore the fourth channel for now z->YCbCr_to_RGB_kernel(out, y, coutput[1], coutput[2], z->s->img_x, n); } } else for (i=0; i < z->s->img_x; ++i) { out[0] = out[1] = out[2] = y[i]; out[3] = 255; // not used if n==3 out += n; } } else { if (is_rgb) { if (n == 1) for (i=0; i < z->s->img_x; ++i) *out++ = stbi__compute_y(coutput[0][i], coutput[1][i], coutput[2][i]); else { for (i=0; i < z->s->img_x; ++i, out += 2) { out[0] = stbi__compute_y(coutput[0][i], coutput[1][i], coutput[2][i]); out[1] = 255; } } } else if (z->s->img_n == 4 && z->app14_color_transform == 0) { for (i=0; i < z->s->img_x; ++i) { stbi_uc m = coutput[3][i]; stbi_uc r = stbi__blinn_8x8(coutput[0][i], m); stbi_uc g = stbi__blinn_8x8(coutput[1][i], m); stbi_uc b = stbi__blinn_8x8(coutput[2][i], m); out[0] = stbi__compute_y(r, g, b); out[1] = 255; out += n; } } else if (z->s->img_n == 4 && z->app14_color_transform == 2) { for (i=0; i < z->s->img_x; ++i) { out[0] = stbi__blinn_8x8(255 - coutput[0][i], coutput[3][i]); out[1] = 255; out += n; } } else { stbi_uc *y = coutput[0]; if (n == 1) for (i=0; i < z->s->img_x; ++i) out[i] = y[i]; else for (i=0; i < z->s->img_x; ++i) { *out++ = y[i]; *out++ = 255; } } } } stbi__cleanup_jpeg(z); *out_x = z->s->img_x; *out_y = z->s->img_y; if (comp) *comp = z->s->img_n >= 3 ? 3 : 1; // report original components, not output return output; } } static void *stbi__jpeg_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri) { unsigned char* result; stbi__jpeg* j = (stbi__jpeg*) stbi__malloc(sizeof(stbi__jpeg)); if (!j) return stbi__errpuc("outofmem", "Out of memory"); STBI_NOTUSED(ri); j->s = s; stbi__setup_jpeg(j); result = load_jpeg_image(j, x,y,comp,req_comp); STBI_FREE(j); return result; } static int stbi__jpeg_test(stbi__context *s) { int r; stbi__jpeg* j = (stbi__jpeg*)stbi__malloc(sizeof(stbi__jpeg)); if (!j) return stbi__err("outofmem", "Out of memory"); j->s = s; stbi__setup_jpeg(j); r = stbi__decode_jpeg_header(j, STBI__SCAN_type); stbi__rewind(s); STBI_FREE(j); return r; } static int stbi__jpeg_info_raw(stbi__jpeg *j, int *x, int *y, int *comp) { if (!stbi__decode_jpeg_header(j, STBI__SCAN_header)) { stbi__rewind( j->s ); return 0; } if (x) *x = j->s->img_x; if (y) *y = j->s->img_y; if (comp) *comp = j->s->img_n >= 3 ? 3 : 1; return 1; } static int stbi__jpeg_info(stbi__context *s, int *x, int *y, int *comp) { int result; stbi__jpeg* j = (stbi__jpeg*) (stbi__malloc(sizeof(stbi__jpeg))); if (!j) return stbi__err("outofmem", "Out of memory"); j->s = s; result = stbi__jpeg_info_raw(j, x, y, comp); STBI_FREE(j); return result; } #endif // public domain zlib decode v0.2 Sean Barrett 2006-11-18 // simple implementation // - all input must be provided in an upfront buffer // - all output is written to a single output buffer (can malloc/realloc) // performance // - fast huffman #ifndef STBI_NO_ZLIB // fast-way is faster to check than jpeg huffman, but slow way is slower #define STBI__ZFAST_BITS 9 // accelerate all cases in default tables #define STBI__ZFAST_MASK ((1 << STBI__ZFAST_BITS) - 1) #define STBI__ZNSYMS 288 // number of symbols in literal/length alphabet // zlib-style huffman encoding // (jpegs packs from left, zlib from right, so can't share code) typedef struct { stbi__uint16 fast[1 << STBI__ZFAST_BITS]; stbi__uint16 firstcode[16]; int maxcode[17]; stbi__uint16 firstsymbol[16]; stbi_uc size[STBI__ZNSYMS]; stbi__uint16 value[STBI__ZNSYMS]; } stbi__zhuffman; stbi_inline static int stbi__bitreverse16(int n) { n = ((n & 0xAAAA) >> 1) | ((n & 0x5555) << 1); n = ((n & 0xCCCC) >> 2) | ((n & 0x3333) << 2); n = ((n & 0xF0F0) >> 4) | ((n & 0x0F0F) << 4); n = ((n & 0xFF00) >> 8) | ((n & 0x00FF) << 8); return n; } stbi_inline static int stbi__bit_reverse(int v, int bits) { STBI_ASSERT(bits <= 16); // to bit reverse n bits, reverse 16 and shift // e.g. 11 bits, bit reverse and shift away 5 return stbi__bitreverse16(v) >> (16-bits); } static int stbi__zbuild_huffman(stbi__zhuffman *z, const stbi_uc *sizelist, int num) { int i,k=0; int code, next_code[16], sizes[17]; // DEFLATE spec for generating codes memset(sizes, 0, sizeof(sizes)); memset(z->fast, 0, sizeof(z->fast)); for (i=0; i < num; ++i) ++sizes[sizelist[i]]; sizes[0] = 0; for (i=1; i < 16; ++i) if (sizes[i] > (1 << i)) return stbi__err("bad sizes", "Corrupt PNG"); code = 0; for (i=1; i < 16; ++i) { next_code[i] = code; z->firstcode[i] = (stbi__uint16) code; z->firstsymbol[i] = (stbi__uint16) k; code = (code + sizes[i]); if (sizes[i]) if (code-1 >= (1 << i)) return stbi__err("bad codelengths","Corrupt PNG"); z->maxcode[i] = code << (16-i); // preshift for inner loop code <<= 1; k += sizes[i]; } z->maxcode[16] = 0x10000; // sentinel for (i=0; i < num; ++i) { int s = sizelist[i]; if (s) { int c = next_code[s] - z->firstcode[s] + z->firstsymbol[s]; stbi__uint16 fastv = (stbi__uint16) ((s << 9) | i); z->size [c] = (stbi_uc ) s; z->value[c] = (stbi__uint16) i; if (s <= STBI__ZFAST_BITS) { int j = stbi__bit_reverse(next_code[s],s); while (j < (1 << STBI__ZFAST_BITS)) { z->fast[j] = fastv; j += (1 << s); } } ++next_code[s]; } } return 1; } // zlib-from-memory implementation for PNG reading // because PNG allows splitting the zlib stream arbitrarily, // and it's annoying structurally to have PNG call ZLIB call PNG, // we require PNG read all the IDATs and combine them into a single // memory buffer typedef struct { stbi_uc *zbuffer, *zbuffer_end; int num_bits; stbi__uint32 code_buffer; char *zout; char *zout_start; char *zout_end; int z_expandable; stbi__zhuffman z_length, z_distance; } stbi__zbuf; stbi_inline static int stbi__zeof(stbi__zbuf *z) { return (z->zbuffer >= z->zbuffer_end); } stbi_inline static stbi_uc stbi__zget8(stbi__zbuf *z) { return stbi__zeof(z) ? 0 : *z->zbuffer++; } static void stbi__fill_bits(stbi__zbuf *z) { do { if (z->code_buffer >= (1U << z->num_bits)) { z->zbuffer = z->zbuffer_end; /* treat this as EOF so we fail. */ return; } z->code_buffer |= (unsigned int) stbi__zget8(z) << z->num_bits; z->num_bits += 8; } while (z->num_bits <= 24); } stbi_inline static unsigned int stbi__zreceive(stbi__zbuf *z, int n) { unsigned int k; if (z->num_bits < n) stbi__fill_bits(z); k = z->code_buffer & ((1 << n) - 1); z->code_buffer >>= n; z->num_bits -= n; return k; } static int stbi__zhuffman_decode_slowpath(stbi__zbuf *a, stbi__zhuffman *z) { int b,s,k; // not resolved by fast table, so compute it the slow way // use jpeg approach, which requires MSbits at top k = stbi__bit_reverse(a->code_buffer, 16); for (s=STBI__ZFAST_BITS+1; ; ++s) if (k < z->maxcode[s]) break; if (s >= 16) return -1; // invalid code! // code size is s, so: b = (k >> (16-s)) - z->firstcode[s] + z->firstsymbol[s]; if (b >= STBI__ZNSYMS) return -1; // some data was corrupt somewhere! if (z->size[b] != s) return -1; // was originally an assert, but report failure instead. a->code_buffer >>= s; a->num_bits -= s; return z->value[b]; } stbi_inline static int stbi__zhuffman_decode(stbi__zbuf *a, stbi__zhuffman *z) { int b,s; if (a->num_bits < 16) { if (stbi__zeof(a)) { return -1; /* report error for unexpected end of data. */ } stbi__fill_bits(a); } b = z->fast[a->code_buffer & STBI__ZFAST_MASK]; if (b) { s = b >> 9; a->code_buffer >>= s; a->num_bits -= s; return b & 511; } return stbi__zhuffman_decode_slowpath(a, z); } static int stbi__zexpand(stbi__zbuf *z, char *zout, int n) // need to make room for n bytes { char *q; unsigned int cur, limit, old_limit; z->zout = zout; if (!z->z_expandable) return stbi__err("output buffer limit","Corrupt PNG"); cur = (unsigned int) (z->zout - z->zout_start); limit = old_limit = (unsigned) (z->zout_end - z->zout_start); if (UINT_MAX - cur < (unsigned) n) return stbi__err("outofmem", "Out of memory"); while (cur + n > limit) { if(limit > UINT_MAX / 2) return stbi__err("outofmem", "Out of memory"); limit *= 2; } q = (char *) STBI_REALLOC_SIZED(z->zout_start, old_limit, limit); STBI_NOTUSED(old_limit); if (q == NULL) return stbi__err("outofmem", "Out of memory"); z->zout_start = q; z->zout = q + cur; z->zout_end = q + limit; return 1; } static const int stbi__zlength_base[31] = { 3,4,5,6,7,8,9,10,11,13, 15,17,19,23,27,31,35,43,51,59, 67,83,99,115,131,163,195,227,258,0,0 }; static const int stbi__zlength_extra[31]= { 0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0 }; static const int stbi__zdist_base[32] = { 1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193, 257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0}; static const int stbi__zdist_extra[32] = { 0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13}; static int stbi__parse_huffman_block(stbi__zbuf *a) { char *zout = a->zout; for(;;) { int z = stbi__zhuffman_decode(a, &a->z_length); if (z < 256) { if (z < 0) return stbi__err("bad huffman code","Corrupt PNG"); // error in huffman codes if (zout >= a->zout_end) { if (!stbi__zexpand(a, zout, 1)) return 0; zout = a->zout; } *zout++ = (char) z; } else { stbi_uc *p; int len,dist; if (z == 256) { a->zout = zout; return 1; } z -= 257; len = stbi__zlength_base[z]; if (stbi__zlength_extra[z]) len += stbi__zreceive(a, stbi__zlength_extra[z]); z = stbi__zhuffman_decode(a, &a->z_distance); if (z < 0) return stbi__err("bad huffman code","Corrupt PNG"); dist = stbi__zdist_base[z]; if (stbi__zdist_extra[z]) dist += stbi__zreceive(a, stbi__zdist_extra[z]); if (zout - a->zout_start < dist) return stbi__err("bad dist","Corrupt PNG"); if (zout + len > a->zout_end) { if (!stbi__zexpand(a, zout, len)) return 0; zout = a->zout; } p = (stbi_uc *) (zout - dist); if (dist == 1) { // run of one byte; common in images. stbi_uc v = *p; if (len) { do *zout++ = v; while (--len); } } else { if (len) { do *zout++ = *p++; while (--len); } } } } } static int stbi__compute_huffman_codes(stbi__zbuf *a) { static const stbi_uc length_dezigzag[19] = { 16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15 }; stbi__zhuffman z_codelength; stbi_uc lencodes[286+32+137];//padding for maximum single op stbi_uc codelength_sizes[19]; int i,n; int hlit = stbi__zreceive(a,5) + 257; int hdist = stbi__zreceive(a,5) + 1; int hclen = stbi__zreceive(a,4) + 4; int ntot = hlit + hdist; memset(codelength_sizes, 0, sizeof(codelength_sizes)); for (i=0; i < hclen; ++i) { int s = stbi__zreceive(a,3); codelength_sizes[length_dezigzag[i]] = (stbi_uc) s; } if (!stbi__zbuild_huffman(&z_codelength, codelength_sizes, 19)) return 0; n = 0; while (n < ntot) { int c = stbi__zhuffman_decode(a, &z_codelength); if (c < 0 || c >= 19) return stbi__err("bad codelengths", "Corrupt PNG"); if (c < 16) lencodes[n++] = (stbi_uc) c; else { stbi_uc fill = 0; if (c == 16) { c = stbi__zreceive(a,2)+3; if (n == 0) return stbi__err("bad codelengths", "Corrupt PNG"); fill = lencodes[n-1]; } else if (c == 17) { c = stbi__zreceive(a,3)+3; } else if (c == 18) { c = stbi__zreceive(a,7)+11; } else { return stbi__err("bad codelengths", "Corrupt PNG"); } if (ntot - n < c) return stbi__err("bad codelengths", "Corrupt PNG"); memset(lencodes+n, fill, c); n += c; } } if (n != ntot) return stbi__err("bad codelengths","Corrupt PNG"); if (!stbi__zbuild_huffman(&a->z_length, lencodes, hlit)) return 0; if (!stbi__zbuild_huffman(&a->z_distance, lencodes+hlit, hdist)) return 0; return 1; } static int stbi__parse_uncompressed_block(stbi__zbuf *a) { stbi_uc header[4]; int len,nlen,k; if (a->num_bits & 7) stbi__zreceive(a, a->num_bits & 7); // discard // drain the bit-packed data into header k = 0; while (a->num_bits > 0) { header[k++] = (stbi_uc) (a->code_buffer & 255); // suppress MSVC run-time check a->code_buffer >>= 8; a->num_bits -= 8; } if (a->num_bits < 0) return stbi__err("zlib corrupt","Corrupt PNG"); // now fill header the normal way while (k < 4) header[k++] = stbi__zget8(a); len = header[1] * 256 + header[0]; nlen = header[3] * 256 + header[2]; if (nlen != (len ^ 0xffff)) return stbi__err("zlib corrupt","Corrupt PNG"); if (a->zbuffer + len > a->zbuffer_end) return stbi__err("read past buffer","Corrupt PNG"); if (a->zout + len > a->zout_end) if (!stbi__zexpand(a, a->zout, len)) return 0; memcpy(a->zout, a->zbuffer, len); a->zbuffer += len; a->zout += len; return 1; } static int stbi__parse_zlib_header(stbi__zbuf *a) { int cmf = stbi__zget8(a); int cm = cmf & 15; /* int cinfo = cmf >> 4; */ int flg = stbi__zget8(a); if (stbi__zeof(a)) return stbi__err("bad zlib header","Corrupt PNG"); // zlib spec if ((cmf*256+flg) % 31 != 0) return stbi__err("bad zlib header","Corrupt PNG"); // zlib spec if (flg & 32) return stbi__err("no preset dict","Corrupt PNG"); // preset dictionary not allowed in png if (cm != 8) return stbi__err("bad compression","Corrupt PNG"); // DEFLATE required for png // window = 1 << (8 + cinfo)... but who cares, we fully buffer output return 1; } static const stbi_uc stbi__zdefault_length[STBI__ZNSYMS] = { 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, 7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8 }; static const stbi_uc stbi__zdefault_distance[32] = { 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5 }; /* Init algorithm: { int i; // use <= to match clearly with spec for (i=0; i <= 143; ++i) stbi__zdefault_length[i] = 8; for ( ; i <= 255; ++i) stbi__zdefault_length[i] = 9; for ( ; i <= 279; ++i) stbi__zdefault_length[i] = 7; for ( ; i <= 287; ++i) stbi__zdefault_length[i] = 8; for (i=0; i <= 31; ++i) stbi__zdefault_distance[i] = 5; } */ static int stbi__parse_zlib(stbi__zbuf *a, int parse_header) { int final, type; if (parse_header) if (!stbi__parse_zlib_header(a)) return 0; a->num_bits = 0; a->code_buffer = 0; do { final = stbi__zreceive(a,1); type = stbi__zreceive(a,2); if (type == 0) { if (!stbi__parse_uncompressed_block(a)) return 0; } else if (type == 3) { return 0; } else { if (type == 1) { // use fixed code lengths if (!stbi__zbuild_huffman(&a->z_length , stbi__zdefault_length , STBI__ZNSYMS)) return 0; if (!stbi__zbuild_huffman(&a->z_distance, stbi__zdefault_distance, 32)) return 0; } else { if (!stbi__compute_huffman_codes(a)) return 0; } if (!stbi__parse_huffman_block(a)) return 0; } } while (!final); return 1; } static int stbi__do_zlib(stbi__zbuf *a, char *obuf, int olen, int exp, int parse_header) { a->zout_start = obuf; a->zout = obuf; a->zout_end = obuf + olen; a->z_expandable = exp; return stbi__parse_zlib(a, parse_header); } STBIDEF char *stbi_zlib_decode_malloc_guesssize(const char *buffer, int len, int initial_size, int *outlen) { stbi__zbuf a; char *p = (char *) stbi__malloc(initial_size); if (p == NULL) return NULL; a.zbuffer = (stbi_uc *) buffer; a.zbuffer_end = (stbi_uc *) buffer + len; if (stbi__do_zlib(&a, p, initial_size, 1, 1)) { if (outlen) *outlen = (int) (a.zout - a.zout_start); return a.zout_start; } else { STBI_FREE(a.zout_start); return NULL; } } STBIDEF char *stbi_zlib_decode_malloc(char const *buffer, int len, int *outlen) { return stbi_zlib_decode_malloc_guesssize(buffer, len, 16384, outlen); } STBIDEF char *stbi_zlib_decode_malloc_guesssize_headerflag(const char *buffer, int len, int initial_size, int *outlen, int parse_header) { stbi__zbuf a; char *p = (char *) stbi__malloc(initial_size); if (p == NULL) return NULL; a.zbuffer = (stbi_uc *) buffer; a.zbuffer_end = (stbi_uc *) buffer + len; if (stbi__do_zlib(&a, p, initial_size, 1, parse_header)) { if (outlen) *outlen = (int) (a.zout - a.zout_start); return a.zout_start; } else { STBI_FREE(a.zout_start); return NULL; } } STBIDEF int stbi_zlib_decode_buffer(char *obuffer, int olen, char const *ibuffer, int ilen) { stbi__zbuf a; a.zbuffer = (stbi_uc *) ibuffer; a.zbuffer_end = (stbi_uc *) ibuffer + ilen; if (stbi__do_zlib(&a, obuffer, olen, 0, 1)) return (int) (a.zout - a.zout_start); else return -1; } STBIDEF char *stbi_zlib_decode_noheader_malloc(char const *buffer, int len, int *outlen) { stbi__zbuf a; char *p = (char *) stbi__malloc(16384); if (p == NULL) return NULL; a.zbuffer = (stbi_uc *) buffer; a.zbuffer_end = (stbi_uc *) buffer+len; if (stbi__do_zlib(&a, p, 16384, 1, 0)) { if (outlen) *outlen = (int) (a.zout - a.zout_start); return a.zout_start; } else { STBI_FREE(a.zout_start); return NULL; } } STBIDEF int stbi_zlib_decode_noheader_buffer(char *obuffer, int olen, const char *ibuffer, int ilen) { stbi__zbuf a; a.zbuffer = (stbi_uc *) ibuffer; a.zbuffer_end = (stbi_uc *) ibuffer + ilen; if (stbi__do_zlib(&a, obuffer, olen, 0, 0)) return (int) (a.zout - a.zout_start); else return -1; } #endif // public domain "baseline" PNG decoder v0.10 Sean Barrett 2006-11-18 // simple implementation // - only 8-bit samples // - no CRC checking // - allocates lots of intermediate memory // - avoids problem of streaming data between subsystems // - avoids explicit window management // performance // - uses stb_zlib, a PD zlib implementation with fast huffman decoding #ifndef STBI_NO_PNG typedef struct { stbi__uint32 length; stbi__uint32 type; } stbi__pngchunk; static stbi__pngchunk stbi__get_chunk_header(stbi__context *s) { stbi__pngchunk c; c.length = stbi__get32be(s); c.type = stbi__get32be(s); return c; } static int stbi__check_png_header(stbi__context *s) { static const stbi_uc png_sig[8] = { 137,80,78,71,13,10,26,10 }; int i; for (i=0; i < 8; ++i) if (stbi__get8(s) != png_sig[i]) return stbi__err("bad png sig","Not a PNG"); return 1; } typedef struct { stbi__context *s; stbi_uc *idata, *expanded, *out; int depth; } stbi__png; enum { STBI__F_none=0, STBI__F_sub=1, STBI__F_up=2, STBI__F_avg=3, STBI__F_paeth=4, // synthetic filters used for first scanline to avoid needing a dummy row of 0s STBI__F_avg_first, STBI__F_paeth_first }; static stbi_uc first_row_filter[5] = { STBI__F_none, STBI__F_sub, STBI__F_none, STBI__F_avg_first, STBI__F_paeth_first }; static int stbi__paeth(int a, int b, int c) { int p = a + b - c; int pa = abs(p-a); int pb = abs(p-b); int pc = abs(p-c); if (pa <= pb && pa <= pc) return a; if (pb <= pc) return b; return c; } static const stbi_uc stbi__depth_scale_table[9] = { 0, 0xff, 0x55, 0, 0x11, 0,0,0, 0x01 }; // create the png data from post-deflated data static int stbi__create_png_image_raw(stbi__png *a, stbi_uc *raw, stbi__uint32 raw_len, int out_n, stbi__uint32 x, stbi__uint32 y, int depth, int color) { int bytes = (depth == 16? 2 : 1); stbi__context *s = a->s; stbi__uint32 i,j,stride = x*out_n*bytes; stbi__uint32 img_len, img_width_bytes; int k; int img_n = s->img_n; // copy it into a local for later int output_bytes = out_n*bytes; int filter_bytes = img_n*bytes; int width = x; STBI_ASSERT(out_n == s->img_n || out_n == s->img_n+1); a->out = (stbi_uc *) stbi__malloc_mad3(x, y, output_bytes, 0); // extra bytes to write off the end into if (!a->out) return stbi__err("outofmem", "Out of memory"); if (!stbi__mad3sizes_valid(img_n, x, depth, 7)) return stbi__err("too large", "Corrupt PNG"); img_width_bytes = (((img_n * x * depth) + 7) >> 3); img_len = (img_width_bytes + 1) * y; // we used to check for exact match between raw_len and img_len on non-interlaced PNGs, // but issue #276 reported a PNG in the wild that had extra data at the end (all zeros), // so just check for raw_len < img_len always. if (raw_len < img_len) return stbi__err("not enough pixels","Corrupt PNG"); for (j=0; j < y; ++j) { stbi_uc *cur = a->out + stride*j; stbi_uc *prior; int filter = *raw++; if (filter > 4) return stbi__err("invalid filter","Corrupt PNG"); if (depth < 8) { if (img_width_bytes > x) return stbi__err("invalid width","Corrupt PNG"); cur += x*out_n - img_width_bytes; // store output to the rightmost img_len bytes, so we can decode in place filter_bytes = 1; width = img_width_bytes; } prior = cur - stride; // bugfix: need to compute this after 'cur +=' computation above // if first row, use special filter that doesn't sample previous row if (j == 0) filter = first_row_filter[filter]; // handle first byte explicitly for (k=0; k < filter_bytes; ++k) { switch (filter) { case STBI__F_none : cur[k] = raw[k]; break; case STBI__F_sub : cur[k] = raw[k]; break; case STBI__F_up : cur[k] = STBI__BYTECAST(raw[k] + prior[k]); break; case STBI__F_avg : cur[k] = STBI__BYTECAST(raw[k] + (prior[k]>>1)); break; case STBI__F_paeth : cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(0,prior[k],0)); break; case STBI__F_avg_first : cur[k] = raw[k]; break; case STBI__F_paeth_first: cur[k] = raw[k]; break; } } if (depth == 8) { if (img_n != out_n) cur[img_n] = 255; // first pixel raw += img_n; cur += out_n; prior += out_n; } else if (depth == 16) { if (img_n != out_n) { cur[filter_bytes] = 255; // first pixel top byte cur[filter_bytes+1] = 255; // first pixel bottom byte } raw += filter_bytes; cur += output_bytes; prior += output_bytes; } else { raw += 1; cur += 1; prior += 1; } // this is a little gross, so that we don't switch per-pixel or per-component if (depth < 8 || img_n == out_n) { int nk = (width - 1)*filter_bytes; #define STBI__CASE(f) \ case f: \ for (k=0; k < nk; ++k) switch (filter) { // "none" filter turns into a memcpy here; make that explicit. case STBI__F_none: memcpy(cur, raw, nk); break; STBI__CASE(STBI__F_sub) { cur[k] = STBI__BYTECAST(raw[k] + cur[k-filter_bytes]); } break; STBI__CASE(STBI__F_up) { cur[k] = STBI__BYTECAST(raw[k] + prior[k]); } break; STBI__CASE(STBI__F_avg) { cur[k] = STBI__BYTECAST(raw[k] + ((prior[k] + cur[k-filter_bytes])>>1)); } break; STBI__CASE(STBI__F_paeth) { cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k-filter_bytes],prior[k],prior[k-filter_bytes])); } break; STBI__CASE(STBI__F_avg_first) { cur[k] = STBI__BYTECAST(raw[k] + (cur[k-filter_bytes] >> 1)); } break; STBI__CASE(STBI__F_paeth_first) { cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k-filter_bytes],0,0)); } break; } #undef STBI__CASE raw += nk; } else { STBI_ASSERT(img_n+1 == out_n); #define STBI__CASE(f) \ case f: \ for (i=x-1; i >= 1; --i, cur[filter_bytes]=255,raw+=filter_bytes,cur+=output_bytes,prior+=output_bytes) \ for (k=0; k < filter_bytes; ++k) switch (filter) { STBI__CASE(STBI__F_none) { cur[k] = raw[k]; } break; STBI__CASE(STBI__F_sub) { cur[k] = STBI__BYTECAST(raw[k] + cur[k- output_bytes]); } break; STBI__CASE(STBI__F_up) { cur[k] = STBI__BYTECAST(raw[k] + prior[k]); } break; STBI__CASE(STBI__F_avg) { cur[k] = STBI__BYTECAST(raw[k] + ((prior[k] + cur[k- output_bytes])>>1)); } break; STBI__CASE(STBI__F_paeth) { cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k- output_bytes],prior[k],prior[k- output_bytes])); } break; STBI__CASE(STBI__F_avg_first) { cur[k] = STBI__BYTECAST(raw[k] + (cur[k- output_bytes] >> 1)); } break; STBI__CASE(STBI__F_paeth_first) { cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k- output_bytes],0,0)); } break; } #undef STBI__CASE // the loop above sets the high byte of the pixels' alpha, but for // 16 bit png files we also need the low byte set. we'll do that here. if (depth == 16) { cur = a->out + stride*j; // start at the beginning of the row again for (i=0; i < x; ++i,cur+=output_bytes) { cur[filter_bytes+1] = 255; } } } } // we make a separate pass to expand bits to pixels; for performance, // this could run two scanlines behind the above code, so it won't // intefere with filtering but will still be in the cache. if (depth < 8) { for (j=0; j < y; ++j) { stbi_uc *cur = a->out + stride*j; stbi_uc *in = a->out + stride*j + x*out_n - img_width_bytes; // unpack 1/2/4-bit into a 8-bit buffer. allows us to keep the common 8-bit path optimal at minimal cost for 1/2/4-bit // png guarante byte alignment, if width is not multiple of 8/4/2 we'll decode dummy trailing data that will be skipped in the later loop stbi_uc scale = (color == 0) ? stbi__depth_scale_table[depth] : 1; // scale grayscale values to 0..255 range // note that the final byte might overshoot and write more data than desired. // we can allocate enough data that this never writes out of memory, but it // could also overwrite the next scanline. can it overwrite non-empty data // on the next scanline? yes, consider 1-pixel-wide scanlines with 1-bit-per-pixel. // so we need to explicitly clamp the final ones if (depth == 4) { for (k=x*img_n; k >= 2; k-=2, ++in) { *cur++ = scale * ((*in >> 4) ); *cur++ = scale * ((*in ) & 0x0f); } if (k > 0) *cur++ = scale * ((*in >> 4) ); } else if (depth == 2) { for (k=x*img_n; k >= 4; k-=4, ++in) { *cur++ = scale * ((*in >> 6) ); *cur++ = scale * ((*in >> 4) & 0x03); *cur++ = scale * ((*in >> 2) & 0x03); *cur++ = scale * ((*in ) & 0x03); } if (k > 0) *cur++ = scale * ((*in >> 6) ); if (k > 1) *cur++ = scale * ((*in >> 4) & 0x03); if (k > 2) *cur++ = scale * ((*in >> 2) & 0x03); } else if (depth == 1) { for (k=x*img_n; k >= 8; k-=8, ++in) { *cur++ = scale * ((*in >> 7) ); *cur++ = scale * ((*in >> 6) & 0x01); *cur++ = scale * ((*in >> 5) & 0x01); *cur++ = scale * ((*in >> 4) & 0x01); *cur++ = scale * ((*in >> 3) & 0x01); *cur++ = scale * ((*in >> 2) & 0x01); *cur++ = scale * ((*in >> 1) & 0x01); *cur++ = scale * ((*in ) & 0x01); } if (k > 0) *cur++ = scale * ((*in >> 7) ); if (k > 1) *cur++ = scale * ((*in >> 6) & 0x01); if (k > 2) *cur++ = scale * ((*in >> 5) & 0x01); if (k > 3) *cur++ = scale * ((*in >> 4) & 0x01); if (k > 4) *cur++ = scale * ((*in >> 3) & 0x01); if (k > 5) *cur++ = scale * ((*in >> 2) & 0x01); if (k > 6) *cur++ = scale * ((*in >> 1) & 0x01); } if (img_n != out_n) { int q; // insert alpha = 255 cur = a->out + stride*j; if (img_n == 1) { for (q=x-1; q >= 0; --q) { cur[q*2+1] = 255; cur[q*2+0] = cur[q]; } } else { STBI_ASSERT(img_n == 3); for (q=x-1; q >= 0; --q) { cur[q*4+3] = 255; cur[q*4+2] = cur[q*3+2]; cur[q*4+1] = cur[q*3+1]; cur[q*4+0] = cur[q*3+0]; } } } } } else if (depth == 16) { // force the image data from big-endian to platform-native. // this is done in a separate pass due to the decoding relying // on the data being untouched, but could probably be done // per-line during decode if care is taken. stbi_uc *cur = a->out; stbi__uint16 *cur16 = (stbi__uint16*)cur; for(i=0; i < x*y*out_n; ++i,cur16++,cur+=2) { *cur16 = (cur[0] << 8) | cur[1]; } } return 1; } static int stbi__create_png_image(stbi__png *a, stbi_uc *image_data, stbi__uint32 image_data_len, int out_n, int depth, int color, int interlaced) { int bytes = (depth == 16 ? 2 : 1); int out_bytes = out_n * bytes; stbi_uc *final; int p; if (!interlaced) return stbi__create_png_image_raw(a, image_data, image_data_len, out_n, a->s->img_x, a->s->img_y, depth, color); // de-interlacing final = (stbi_uc *) stbi__malloc_mad3(a->s->img_x, a->s->img_y, out_bytes, 0); if (!final) return stbi__err("outofmem", "Out of memory"); for (p=0; p < 7; ++p) { int xorig[] = { 0,4,0,2,0,1,0 }; int yorig[] = { 0,0,4,0,2,0,1 }; int xspc[] = { 8,8,4,4,2,2,1 }; int yspc[] = { 8,8,8,4,4,2,2 }; int i,j,x,y; // pass1_x[4] = 0, pass1_x[5] = 1, pass1_x[12] = 1 x = (a->s->img_x - xorig[p] + xspc[p]-1) / xspc[p]; y = (a->s->img_y - yorig[p] + yspc[p]-1) / yspc[p]; if (x && y) { stbi__uint32 img_len = ((((a->s->img_n * x * depth) + 7) >> 3) + 1) * y; if (!stbi__create_png_image_raw(a, image_data, image_data_len, out_n, x, y, depth, color)) { STBI_FREE(final); return 0; } for (j=0; j < y; ++j) { for (i=0; i < x; ++i) { int out_y = j*yspc[p]+yorig[p]; int out_x = i*xspc[p]+xorig[p]; memcpy(final + out_y*a->s->img_x*out_bytes + out_x*out_bytes, a->out + (j*x+i)*out_bytes, out_bytes); } } STBI_FREE(a->out); image_data += img_len; image_data_len -= img_len; } } a->out = final; return 1; } static int stbi__compute_transparency(stbi__png *z, stbi_uc tc[3], int out_n) { stbi__context *s = z->s; stbi__uint32 i, pixel_count = s->img_x * s->img_y; stbi_uc *p = z->out; // compute color-based transparency, assuming we've // already got 255 as the alpha value in the output STBI_ASSERT(out_n == 2 || out_n == 4); if (out_n == 2) { for (i=0; i < pixel_count; ++i) { p[1] = (p[0] == tc[0] ? 0 : 255); p += 2; } } else { for (i=0; i < pixel_count; ++i) { if (p[0] == tc[0] && p[1] == tc[1] && p[2] == tc[2]) p[3] = 0; p += 4; } } return 1; } static int stbi__compute_transparency16(stbi__png *z, stbi__uint16 tc[3], int out_n) { stbi__context *s = z->s; stbi__uint32 i, pixel_count = s->img_x * s->img_y; stbi__uint16 *p = (stbi__uint16*) z->out; // compute color-based transparency, assuming we've // already got 65535 as the alpha value in the output STBI_ASSERT(out_n == 2 || out_n == 4); if (out_n == 2) { for (i = 0; i < pixel_count; ++i) { p[1] = (p[0] == tc[0] ? 0 : 65535); p += 2; } } else { for (i = 0; i < pixel_count; ++i) { if (p[0] == tc[0] && p[1] == tc[1] && p[2] == tc[2]) p[3] = 0; p += 4; } } return 1; } static int stbi__expand_png_palette(stbi__png *a, stbi_uc *palette, int len, int pal_img_n) { stbi__uint32 i, pixel_count = a->s->img_x * a->s->img_y; stbi_uc *p, *temp_out, *orig = a->out; p = (stbi_uc *) stbi__malloc_mad2(pixel_count, pal_img_n, 0); if (p == NULL) return stbi__err("outofmem", "Out of memory"); // between here and free(out) below, exitting would leak temp_out = p; if (pal_img_n == 3) { for (i=0; i < pixel_count; ++i) { int n = orig[i]*4; p[0] = palette[n ]; p[1] = palette[n+1]; p[2] = palette[n+2]; p += 3; } } else { for (i=0; i < pixel_count; ++i) { int n = orig[i]*4; p[0] = palette[n ]; p[1] = palette[n+1]; p[2] = palette[n+2]; p[3] = palette[n+3]; p += 4; } } STBI_FREE(a->out); a->out = temp_out; STBI_NOTUSED(len); return 1; } static int stbi__unpremultiply_on_load_global = 0; static int stbi__de_iphone_flag_global = 0; STBIDEF void stbi_set_unpremultiply_on_load(int flag_true_if_should_unpremultiply) { stbi__unpremultiply_on_load_global = flag_true_if_should_unpremultiply; } STBIDEF void stbi_convert_iphone_png_to_rgb(int flag_true_if_should_convert) { stbi__de_iphone_flag_global = flag_true_if_should_convert; } #ifndef STBI_THREAD_LOCAL #define stbi__unpremultiply_on_load stbi__unpremultiply_on_load_global #define stbi__de_iphone_flag stbi__de_iphone_flag_global #else static STBI_THREAD_LOCAL int stbi__unpremultiply_on_load_local, stbi__unpremultiply_on_load_set; static STBI_THREAD_LOCAL int stbi__de_iphone_flag_local, stbi__de_iphone_flag_set; STBIDEF void stbi__unpremultiply_on_load_thread(int flag_true_if_should_unpremultiply) { stbi__unpremultiply_on_load_local = flag_true_if_should_unpremultiply; stbi__unpremultiply_on_load_set = 1; } STBIDEF void stbi_convert_iphone_png_to_rgb_thread(int flag_true_if_should_convert) { stbi__de_iphone_flag_local = flag_true_if_should_convert; stbi__de_iphone_flag_set = 1; } #define stbi__unpremultiply_on_load (stbi__unpremultiply_on_load_set \ ? stbi__unpremultiply_on_load_local \ : stbi__unpremultiply_on_load_global) #define stbi__de_iphone_flag (stbi__de_iphone_flag_set \ ? stbi__de_iphone_flag_local \ : stbi__de_iphone_flag_global) #endif // STBI_THREAD_LOCAL static void stbi__de_iphone(stbi__png *z) { stbi__context *s = z->s; stbi__uint32 i, pixel_count = s->img_x * s->img_y; stbi_uc *p = z->out; if (s->img_out_n == 3) { // convert bgr to rgb for (i=0; i < pixel_count; ++i) { stbi_uc t = p[0]; p[0] = p[2]; p[2] = t; p += 3; } } else { STBI_ASSERT(s->img_out_n == 4); if (stbi__unpremultiply_on_load) { // convert bgr to rgb and unpremultiply for (i=0; i < pixel_count; ++i) { stbi_uc a = p[3]; stbi_uc t = p[0]; if (a) { stbi_uc half = a / 2; p[0] = (p[2] * 255 + half) / a; p[1] = (p[1] * 255 + half) / a; p[2] = ( t * 255 + half) / a; } else { p[0] = p[2]; p[2] = t; } p += 4; } } else { // convert bgr to rgb for (i=0; i < pixel_count; ++i) { stbi_uc t = p[0]; p[0] = p[2]; p[2] = t; p += 4; } } } } #define STBI__PNG_TYPE(a,b,c,d) (((unsigned) (a) << 24) + ((unsigned) (b) << 16) + ((unsigned) (c) << 8) + (unsigned) (d)) static int stbi__parse_png_file(stbi__png *z, int scan, int req_comp) { stbi_uc palette[1024], pal_img_n=0; stbi_uc has_trans=0, tc[3]={0}; stbi__uint16 tc16[3]; stbi__uint32 ioff=0, idata_limit=0, i, pal_len=0; int first=1,k,interlace=0, color=0, is_iphone=0; stbi__context *s = z->s; z->expanded = NULL; z->idata = NULL; z->out = NULL; if (!stbi__check_png_header(s)) return 0; if (scan == STBI__SCAN_type) return 1; for (;;) { stbi__pngchunk c = stbi__get_chunk_header(s); switch (c.type) { case STBI__PNG_TYPE('C','g','B','I'): is_iphone = 1; stbi__skip(s, c.length); break; case STBI__PNG_TYPE('I','H','D','R'): { int comp,filter; if (!first) return stbi__err("multiple IHDR","Corrupt PNG"); first = 0; if (c.length != 13) return stbi__err("bad IHDR len","Corrupt PNG"); s->img_x = stbi__get32be(s); s->img_y = stbi__get32be(s); if (s->img_y > STBI_MAX_DIMENSIONS) return stbi__err("too large","Very large image (corrupt?)"); if (s->img_x > STBI_MAX_DIMENSIONS) return stbi__err("too large","Very large image (corrupt?)"); z->depth = stbi__get8(s); if (z->depth != 1 && z->depth != 2 && z->depth != 4 && z->depth != 8 && z->depth != 16) return stbi__err("1/2/4/8/16-bit only","PNG not supported: 1/2/4/8/16-bit only"); color = stbi__get8(s); if (color > 6) return stbi__err("bad ctype","Corrupt PNG"); if (color == 3 && z->depth == 16) return stbi__err("bad ctype","Corrupt PNG"); if (color == 3) pal_img_n = 3; else if (color & 1) return stbi__err("bad ctype","Corrupt PNG"); comp = stbi__get8(s); if (comp) return stbi__err("bad comp method","Corrupt PNG"); filter= stbi__get8(s); if (filter) return stbi__err("bad filter method","Corrupt PNG"); interlace = stbi__get8(s); if (interlace>1) return stbi__err("bad interlace method","Corrupt PNG"); if (!s->img_x || !s->img_y) return stbi__err("0-pixel image","Corrupt PNG"); if (!pal_img_n) { s->img_n = (color & 2 ? 3 : 1) + (color & 4 ? 1 : 0); if ((1 << 30) / s->img_x / s->img_n < s->img_y) return stbi__err("too large", "Image too large to decode"); if (scan == STBI__SCAN_header) return 1; } else { // if paletted, then pal_n is our final components, and // img_n is # components to decompress/filter. s->img_n = 1; if ((1 << 30) / s->img_x / 4 < s->img_y) return stbi__err("too large","Corrupt PNG"); // if SCAN_header, have to scan to see if we have a tRNS } break; } case STBI__PNG_TYPE('P','L','T','E'): { if (first) return stbi__err("first not IHDR", "Corrupt PNG"); if (c.length > 256*3) return stbi__err("invalid PLTE","Corrupt PNG"); pal_len = c.length / 3; if (pal_len * 3 != c.length) return stbi__err("invalid PLTE","Corrupt PNG"); for (i=0; i < pal_len; ++i) { palette[i*4+0] = stbi__get8(s); palette[i*4+1] = stbi__get8(s); palette[i*4+2] = stbi__get8(s); palette[i*4+3] = 255; } break; } case STBI__PNG_TYPE('t','R','N','S'): { if (first) return stbi__err("first not IHDR", "Corrupt PNG"); if (z->idata) return stbi__err("tRNS after IDAT","Corrupt PNG"); if (pal_img_n) { if (scan == STBI__SCAN_header) { s->img_n = 4; return 1; } if (pal_len == 0) return stbi__err("tRNS before PLTE","Corrupt PNG"); if (c.length > pal_len) return stbi__err("bad tRNS len","Corrupt PNG"); pal_img_n = 4; for (i=0; i < c.length; ++i) palette[i*4+3] = stbi__get8(s); } else { if (!(s->img_n & 1)) return stbi__err("tRNS with alpha","Corrupt PNG"); if (c.length != (stbi__uint32) s->img_n*2) return stbi__err("bad tRNS len","Corrupt PNG"); has_trans = 1; if (z->depth == 16) { for (k = 0; k < s->img_n; ++k) tc16[k] = (stbi__uint16)stbi__get16be(s); // copy the values as-is } else { for (k = 0; k < s->img_n; ++k) tc[k] = (stbi_uc)(stbi__get16be(s) & 255) * stbi__depth_scale_table[z->depth]; // non 8-bit images will be larger } } break; } case STBI__PNG_TYPE('I','D','A','T'): { if (first) return stbi__err("first not IHDR", "Corrupt PNG"); if (pal_img_n && !pal_len) return stbi__err("no PLTE","Corrupt PNG"); if (scan == STBI__SCAN_header) { s->img_n = pal_img_n; return 1; } if ((int)(ioff + c.length) < (int)ioff) return 0; if (ioff + c.length > idata_limit) { stbi__uint32 idata_limit_old = idata_limit; stbi_uc *p; if (idata_limit == 0) idata_limit = c.length > 4096 ? c.length : 4096; while (ioff + c.length > idata_limit) idata_limit *= 2; STBI_NOTUSED(idata_limit_old); p = (stbi_uc *) STBI_REALLOC_SIZED(z->idata, idata_limit_old, idata_limit); if (p == NULL) return stbi__err("outofmem", "Out of memory"); z->idata = p; } if (!stbi__getn(s, z->idata+ioff,c.length)) return stbi__err("outofdata","Corrupt PNG"); ioff += c.length; break; } case STBI__PNG_TYPE('I','E','N','D'): { stbi__uint32 raw_len, bpl; if (first) return stbi__err("first not IHDR", "Corrupt PNG"); if (scan != STBI__SCAN_load) return 1; if (z->idata == NULL) return stbi__err("no IDAT","Corrupt PNG"); // initial guess for decoded data size to avoid unnecessary reallocs bpl = (s->img_x * z->depth + 7) / 8; // bytes per line, per component raw_len = bpl * s->img_y * s->img_n /* pixels */ + s->img_y /* filter mode per row */; z->expanded = (stbi_uc *) stbi_zlib_decode_malloc_guesssize_headerflag((char *) z->idata, ioff, raw_len, (int *) &raw_len, !is_iphone); if (z->expanded == NULL) return 0; // zlib should set error STBI_FREE(z->idata); z->idata = NULL; if ((req_comp == s->img_n+1 && req_comp != 3 && !pal_img_n) || has_trans) s->img_out_n = s->img_n+1; else s->img_out_n = s->img_n; if (!stbi__create_png_image(z, z->expanded, raw_len, s->img_out_n, z->depth, color, interlace)) return 0; if (has_trans) { if (z->depth == 16) { if (!stbi__compute_transparency16(z, tc16, s->img_out_n)) return 0; } else { if (!stbi__compute_transparency(z, tc, s->img_out_n)) return 0; } } if (is_iphone && stbi__de_iphone_flag && s->img_out_n > 2) stbi__de_iphone(z); if (pal_img_n) { // pal_img_n == 3 or 4 s->img_n = pal_img_n; // record the actual colors we had s->img_out_n = pal_img_n; if (req_comp >= 3) s->img_out_n = req_comp; if (!stbi__expand_png_palette(z, palette, pal_len, s->img_out_n)) return 0; } else if (has_trans) { // non-paletted image with tRNS -> source image has (constant) alpha ++s->img_n; } STBI_FREE(z->expanded); z->expanded = NULL; // end of PNG chunk, read and skip CRC stbi__get32be(s); return 1; } default: // if critical, fail if (first) return stbi__err("first not IHDR", "Corrupt PNG"); if ((c.type & (1 << 29)) == 0) { #ifndef STBI_NO_FAILURE_STRINGS // not threadsafe static char invalid_chunk[] = "XXXX PNG chunk not known"; invalid_chunk[0] = STBI__BYTECAST(c.type >> 24); invalid_chunk[1] = STBI__BYTECAST(c.type >> 16); invalid_chunk[2] = STBI__BYTECAST(c.type >> 8); invalid_chunk[3] = STBI__BYTECAST(c.type >> 0); #endif return stbi__err(invalid_chunk, "PNG not supported: unknown PNG chunk type"); } stbi__skip(s, c.length); break; } // end of PNG chunk, read and skip CRC stbi__get32be(s); } } static void *stbi__do_png(stbi__png *p, int *x, int *y, int *n, int req_comp, stbi__result_info *ri) { void *result=NULL; if (req_comp < 0 || req_comp > 4) return stbi__errpuc("bad req_comp", "Internal error"); if (stbi__parse_png_file(p, STBI__SCAN_load, req_comp)) { if (p->depth <= 8) ri->bits_per_channel = 8; else if (p->depth == 16) ri->bits_per_channel = 16; else return stbi__errpuc("bad bits_per_channel", "PNG not supported: unsupported color depth"); result = p->out; p->out = NULL; if (req_comp && req_comp != p->s->img_out_n) { if (ri->bits_per_channel == 8) result = stbi__convert_format((unsigned char *) result, p->s->img_out_n, req_comp, p->s->img_x, p->s->img_y); else result = stbi__convert_format16((stbi__uint16 *) result, p->s->img_out_n, req_comp, p->s->img_x, p->s->img_y); p->s->img_out_n = req_comp; if (result == NULL) return result; } *x = p->s->img_x; *y = p->s->img_y; if (n) *n = p->s->img_n; } STBI_FREE(p->out); p->out = NULL; STBI_FREE(p->expanded); p->expanded = NULL; STBI_FREE(p->idata); p->idata = NULL; return result; } static void *stbi__png_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri) { stbi__png p; p.s = s; return stbi__do_png(&p, x,y,comp,req_comp, ri); } static int stbi__png_test(stbi__context *s) { int r; r = stbi__check_png_header(s); stbi__rewind(s); return r; } static int stbi__png_info_raw(stbi__png *p, int *x, int *y, int *comp) { if (!stbi__parse_png_file(p, STBI__SCAN_header, 0)) { stbi__rewind( p->s ); return 0; } if (x) *x = p->s->img_x; if (y) *y = p->s->img_y; if (comp) *comp = p->s->img_n; return 1; } static int stbi__png_info(stbi__context *s, int *x, int *y, int *comp) { stbi__png p; p.s = s; return stbi__png_info_raw(&p, x, y, comp); } static int stbi__png_is16(stbi__context *s) { stbi__png p; p.s = s; if (!stbi__png_info_raw(&p, NULL, NULL, NULL)) return 0; if (p.depth != 16) { stbi__rewind(p.s); return 0; } return 1; } #endif // Microsoft/Windows BMP image #ifndef STBI_NO_BMP static int stbi__bmp_test_raw(stbi__context *s) { int r; int sz; if (stbi__get8(s) != 'B') return 0; if (stbi__get8(s) != 'M') return 0; stbi__get32le(s); // discard filesize stbi__get16le(s); // discard reserved stbi__get16le(s); // discard reserved stbi__get32le(s); // discard data offset sz = stbi__get32le(s); r = (sz == 12 || sz == 40 || sz == 56 || sz == 108 || sz == 124); return r; } static int stbi__bmp_test(stbi__context *s) { int r = stbi__bmp_test_raw(s); stbi__rewind(s); return r; } // returns 0..31 for the highest set bit static int stbi__high_bit(unsigned int z) { int n=0; if (z == 0) return -1; if (z >= 0x10000) { n += 16; z >>= 16; } if (z >= 0x00100) { n += 8; z >>= 8; } if (z >= 0x00010) { n += 4; z >>= 4; } if (z >= 0x00004) { n += 2; z >>= 2; } if (z >= 0x00002) { n += 1;/* >>= 1;*/ } return n; } static int stbi__bitcount(unsigned int a) { a = (a & 0x55555555) + ((a >> 1) & 0x55555555); // max 2 a = (a & 0x33333333) + ((a >> 2) & 0x33333333); // max 4 a = (a + (a >> 4)) & 0x0f0f0f0f; // max 8 per 4, now 8 bits a = (a + (a >> 8)); // max 16 per 8 bits a = (a + (a >> 16)); // max 32 per 8 bits return a & 0xff; } // extract an arbitrarily-aligned N-bit value (N=bits) // from v, and then make it 8-bits long and fractionally // extend it to full full range. static int stbi__shiftsigned(unsigned int v, int shift, int bits) { static unsigned int mul_table[9] = { 0, 0xff/*0b11111111*/, 0x55/*0b01010101*/, 0x49/*0b01001001*/, 0x11/*0b00010001*/, 0x21/*0b00100001*/, 0x41/*0b01000001*/, 0x81/*0b10000001*/, 0x01/*0b00000001*/, }; static unsigned int shift_table[9] = { 0, 0,0,1,0,2,4,6,0, }; if (shift < 0) v <<= -shift; else v >>= shift; STBI_ASSERT(v < 256); v >>= (8-bits); STBI_ASSERT(bits >= 0 && bits <= 8); return (int) ((unsigned) v * mul_table[bits]) >> shift_table[bits]; } typedef struct { int bpp, offset, hsz; unsigned int mr,mg,mb,ma, all_a; int extra_read; } stbi__bmp_data; static int stbi__bmp_set_mask_defaults(stbi__bmp_data *info, int compress) { // BI_BITFIELDS specifies masks explicitly, don't override if (compress == 3) return 1; if (compress == 0) { if (info->bpp == 16) { info->mr = 31u << 10; info->mg = 31u << 5; info->mb = 31u << 0; } else if (info->bpp == 32) { info->mr = 0xffu << 16; info->mg = 0xffu << 8; info->mb = 0xffu << 0; info->ma = 0xffu << 24; info->all_a = 0; // if all_a is 0 at end, then we loaded alpha channel but it was all 0 } else { // otherwise, use defaults, which is all-0 info->mr = info->mg = info->mb = info->ma = 0; } return 1; } return 0; // error } static void *stbi__bmp_parse_header(stbi__context *s, stbi__bmp_data *info) { int hsz; if (stbi__get8(s) != 'B' || stbi__get8(s) != 'M') return stbi__errpuc("not BMP", "Corrupt BMP"); stbi__get32le(s); // discard filesize stbi__get16le(s); // discard reserved stbi__get16le(s); // discard reserved info->offset = stbi__get32le(s); info->hsz = hsz = stbi__get32le(s); info->mr = info->mg = info->mb = info->ma = 0; info->extra_read = 14; if (info->offset < 0) return stbi__errpuc("bad BMP", "bad BMP"); if (hsz != 12 && hsz != 40 && hsz != 56 && hsz != 108 && hsz != 124) return stbi__errpuc("unknown BMP", "BMP type not supported: unknown"); if (hsz == 12) { s->img_x = stbi__get16le(s); s->img_y = stbi__get16le(s); } else { s->img_x = stbi__get32le(s); s->img_y = stbi__get32le(s); } if (stbi__get16le(s) != 1) return stbi__errpuc("bad BMP", "bad BMP"); info->bpp = stbi__get16le(s); if (hsz != 12) { int compress = stbi__get32le(s); if (compress == 1 || compress == 2) return stbi__errpuc("BMP RLE", "BMP type not supported: RLE"); if (compress >= 4) return stbi__errpuc("BMP JPEG/PNG", "BMP type not supported: unsupported compression"); // this includes PNG/JPEG modes if (compress == 3 && info->bpp != 16 && info->bpp != 32) return stbi__errpuc("bad BMP", "bad BMP"); // bitfields requires 16 or 32 bits/pixel stbi__get32le(s); // discard sizeof stbi__get32le(s); // discard hres stbi__get32le(s); // discard vres stbi__get32le(s); // discard colorsused stbi__get32le(s); // discard max important if (hsz == 40 || hsz == 56) { if (hsz == 56) { stbi__get32le(s); stbi__get32le(s); stbi__get32le(s); stbi__get32le(s); } if (info->bpp == 16 || info->bpp == 32) { if (compress == 0) { stbi__bmp_set_mask_defaults(info, compress); } else if (compress == 3) { info->mr = stbi__get32le(s); info->mg = stbi__get32le(s); info->mb = stbi__get32le(s); info->extra_read += 12; // not documented, but generated by photoshop and handled by mspaint if (info->mr == info->mg && info->mg == info->mb) { // ?!?!? return stbi__errpuc("bad BMP", "bad BMP"); } } else return stbi__errpuc("bad BMP", "bad BMP"); } } else { // V4/V5 header int i; if (hsz != 108 && hsz != 124) return stbi__errpuc("bad BMP", "bad BMP"); info->mr = stbi__get32le(s); info->mg = stbi__get32le(s); info->mb = stbi__get32le(s); info->ma = stbi__get32le(s); if (compress != 3) // override mr/mg/mb unless in BI_BITFIELDS mode, as per docs stbi__bmp_set_mask_defaults(info, compress); stbi__get32le(s); // discard color space for (i=0; i < 12; ++i) stbi__get32le(s); // discard color space parameters if (hsz == 124) { stbi__get32le(s); // discard rendering intent stbi__get32le(s); // discard offset of profile data stbi__get32le(s); // discard size of profile data stbi__get32le(s); // discard reserved } } } return (void *) 1; } static void *stbi__bmp_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri) { stbi_uc *out; unsigned int mr=0,mg=0,mb=0,ma=0, all_a; stbi_uc pal[256][4]; int psize=0,i,j,width; int flip_vertically, pad, target; stbi__bmp_data info; STBI_NOTUSED(ri); info.all_a = 255; if (stbi__bmp_parse_header(s, &info) == NULL) return NULL; // error code already set flip_vertically = ((int) s->img_y) > 0; s->img_y = abs((int) s->img_y); if (s->img_y > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); if (s->img_x > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); mr = info.mr; mg = info.mg; mb = info.mb; ma = info.ma; all_a = info.all_a; if (info.hsz == 12) { if (info.bpp < 24) psize = (info.offset - info.extra_read - 24) / 3; } else { if (info.bpp < 16) psize = (info.offset - info.extra_read - info.hsz) >> 2; } if (psize == 0) { if (info.offset != s->callback_already_read + (s->img_buffer - s->img_buffer_original)) { return stbi__errpuc("bad offset", "Corrupt BMP"); } } if (info.bpp == 24 && ma == 0xff000000) s->img_n = 3; else s->img_n = ma ? 4 : 3; if (req_comp && req_comp >= 3) // we can directly decode 3 or 4 target = req_comp; else target = s->img_n; // if they want monochrome, we'll post-convert // sanity-check size if (!stbi__mad3sizes_valid(target, s->img_x, s->img_y, 0)) return stbi__errpuc("too large", "Corrupt BMP"); out = (stbi_uc *) stbi__malloc_mad3(target, s->img_x, s->img_y, 0); if (!out) return stbi__errpuc("outofmem", "Out of memory"); if (info.bpp < 16) { int z=0; if (psize == 0 || psize > 256) { STBI_FREE(out); return stbi__errpuc("invalid", "Corrupt BMP"); } for (i=0; i < psize; ++i) { pal[i][2] = stbi__get8(s); pal[i][1] = stbi__get8(s); pal[i][0] = stbi__get8(s); if (info.hsz != 12) stbi__get8(s); pal[i][3] = 255; } stbi__skip(s, info.offset - info.extra_read - info.hsz - psize * (info.hsz == 12 ? 3 : 4)); if (info.bpp == 1) width = (s->img_x + 7) >> 3; else if (info.bpp == 4) width = (s->img_x + 1) >> 1; else if (info.bpp == 8) width = s->img_x; else { STBI_FREE(out); return stbi__errpuc("bad bpp", "Corrupt BMP"); } pad = (-width)&3; if (info.bpp == 1) { for (j=0; j < (int) s->img_y; ++j) { int bit_offset = 7, v = stbi__get8(s); for (i=0; i < (int) s->img_x; ++i) { int color = (v>>bit_offset)&0x1; out[z++] = pal[color][0]; out[z++] = pal[color][1]; out[z++] = pal[color][2]; if (target == 4) out[z++] = 255; if (i+1 == (int) s->img_x) break; if((--bit_offset) < 0) { bit_offset = 7; v = stbi__get8(s); } } stbi__skip(s, pad); } } else { for (j=0; j < (int) s->img_y; ++j) { for (i=0; i < (int) s->img_x; i += 2) { int v=stbi__get8(s),v2=0; if (info.bpp == 4) { v2 = v & 15; v >>= 4; } out[z++] = pal[v][0]; out[z++] = pal[v][1]; out[z++] = pal[v][2]; if (target == 4) out[z++] = 255; if (i+1 == (int) s->img_x) break; v = (info.bpp == 8) ? stbi__get8(s) : v2; out[z++] = pal[v][0]; out[z++] = pal[v][1]; out[z++] = pal[v][2]; if (target == 4) out[z++] = 255; } stbi__skip(s, pad); } } } else { int rshift=0,gshift=0,bshift=0,ashift=0,rcount=0,gcount=0,bcount=0,acount=0; int z = 0; int easy=0; stbi__skip(s, info.offset - info.extra_read - info.hsz); if (info.bpp == 24) width = 3 * s->img_x; else if (info.bpp == 16) width = 2*s->img_x; else /* bpp = 32 and pad = 0 */ width=0; pad = (-width) & 3; if (info.bpp == 24) { easy = 1; } else if (info.bpp == 32) { if (mb == 0xff && mg == 0xff00 && mr == 0x00ff0000 && ma == 0xff000000) easy = 2; } if (!easy) { if (!mr || !mg || !mb) { STBI_FREE(out); return stbi__errpuc("bad masks", "Corrupt BMP"); } // right shift amt to put high bit in position #7 rshift = stbi__high_bit(mr)-7; rcount = stbi__bitcount(mr); gshift = stbi__high_bit(mg)-7; gcount = stbi__bitcount(mg); bshift = stbi__high_bit(mb)-7; bcount = stbi__bitcount(mb); ashift = stbi__high_bit(ma)-7; acount = stbi__bitcount(ma); if (rcount > 8 || gcount > 8 || bcount > 8 || acount > 8) { STBI_FREE(out); return stbi__errpuc("bad masks", "Corrupt BMP"); } } for (j=0; j < (int) s->img_y; ++j) { if (easy) { for (i=0; i < (int) s->img_x; ++i) { unsigned char a; out[z+2] = stbi__get8(s); out[z+1] = stbi__get8(s); out[z+0] = stbi__get8(s); z += 3; a = (easy == 2 ? stbi__get8(s) : 255); all_a |= a; if (target == 4) out[z++] = a; } } else { int bpp = info.bpp; for (i=0; i < (int) s->img_x; ++i) { stbi__uint32 v = (bpp == 16 ? (stbi__uint32) stbi__get16le(s) : stbi__get32le(s)); unsigned int a; out[z++] = STBI__BYTECAST(stbi__shiftsigned(v & mr, rshift, rcount)); out[z++] = STBI__BYTECAST(stbi__shiftsigned(v & mg, gshift, gcount)); out[z++] = STBI__BYTECAST(stbi__shiftsigned(v & mb, bshift, bcount)); a = (ma ? stbi__shiftsigned(v & ma, ashift, acount) : 255); all_a |= a; if (target == 4) out[z++] = STBI__BYTECAST(a); } } stbi__skip(s, pad); } } // if alpha channel is all 0s, replace with all 255s if (target == 4 && all_a == 0) for (i=4*s->img_x*s->img_y-1; i >= 0; i -= 4) out[i] = 255; if (flip_vertically) { stbi_uc t; for (j=0; j < (int) s->img_y>>1; ++j) { stbi_uc *p1 = out + j *s->img_x*target; stbi_uc *p2 = out + (s->img_y-1-j)*s->img_x*target; for (i=0; i < (int) s->img_x*target; ++i) { t = p1[i]; p1[i] = p2[i]; p2[i] = t; } } } if (req_comp && req_comp != target) { out = stbi__convert_format(out, target, req_comp, s->img_x, s->img_y); if (out == NULL) return out; // stbi__convert_format frees input on failure } *x = s->img_x; *y = s->img_y; if (comp) *comp = s->img_n; return out; } #endif // Targa Truevision - TGA // by Jonathan Dummer #ifndef STBI_NO_TGA // returns STBI_rgb or whatever, 0 on error static int stbi__tga_get_comp(int bits_per_pixel, int is_grey, int* is_rgb16) { // only RGB or RGBA (incl. 16bit) or grey allowed if (is_rgb16) *is_rgb16 = 0; switch(bits_per_pixel) { case 8: return STBI_grey; case 16: if(is_grey) return STBI_grey_alpha; // fallthrough case 15: if(is_rgb16) *is_rgb16 = 1; return STBI_rgb; case 24: // fallthrough case 32: return bits_per_pixel/8; default: return 0; } } static int stbi__tga_info(stbi__context *s, int *x, int *y, int *comp) { int tga_w, tga_h, tga_comp, tga_image_type, tga_bits_per_pixel, tga_colormap_bpp; int sz, tga_colormap_type; stbi__get8(s); // discard Offset tga_colormap_type = stbi__get8(s); // colormap type if( tga_colormap_type > 1 ) { stbi__rewind(s); return 0; // only RGB or indexed allowed } tga_image_type = stbi__get8(s); // image type if ( tga_colormap_type == 1 ) { // colormapped (paletted) image if (tga_image_type != 1 && tga_image_type != 9) { stbi__rewind(s); return 0; } stbi__skip(s,4); // skip index of first colormap entry and number of entries sz = stbi__get8(s); // check bits per palette color entry if ( (sz != 8) && (sz != 15) && (sz != 16) && (sz != 24) && (sz != 32) ) { stbi__rewind(s); return 0; } stbi__skip(s,4); // skip image x and y origin tga_colormap_bpp = sz; } else { // "normal" image w/o colormap - only RGB or grey allowed, +/- RLE if ( (tga_image_type != 2) && (tga_image_type != 3) && (tga_image_type != 10) && (tga_image_type != 11) ) { stbi__rewind(s); return 0; // only RGB or grey allowed, +/- RLE } stbi__skip(s,9); // skip colormap specification and image x/y origin tga_colormap_bpp = 0; } tga_w = stbi__get16le(s); if( tga_w < 1 ) { stbi__rewind(s); return 0; // test width } tga_h = stbi__get16le(s); if( tga_h < 1 ) { stbi__rewind(s); return 0; // test height } tga_bits_per_pixel = stbi__get8(s); // bits per pixel stbi__get8(s); // ignore alpha bits if (tga_colormap_bpp != 0) { if((tga_bits_per_pixel != 8) && (tga_bits_per_pixel != 16)) { // when using a colormap, tga_bits_per_pixel is the size of the indexes // I don't think anything but 8 or 16bit indexes makes sense stbi__rewind(s); return 0; } tga_comp = stbi__tga_get_comp(tga_colormap_bpp, 0, NULL); } else { tga_comp = stbi__tga_get_comp(tga_bits_per_pixel, (tga_image_type == 3) || (tga_image_type == 11), NULL); } if(!tga_comp) { stbi__rewind(s); return 0; } if (x) *x = tga_w; if (y) *y = tga_h; if (comp) *comp = tga_comp; return 1; // seems to have passed everything } static int stbi__tga_test(stbi__context *s) { int res = 0; int sz, tga_color_type; stbi__get8(s); // discard Offset tga_color_type = stbi__get8(s); // color type if ( tga_color_type > 1 ) goto errorEnd; // only RGB or indexed allowed sz = stbi__get8(s); // image type if ( tga_color_type == 1 ) { // colormapped (paletted) image if (sz != 1 && sz != 9) goto errorEnd; // colortype 1 demands image type 1 or 9 stbi__skip(s,4); // skip index of first colormap entry and number of entries sz = stbi__get8(s); // check bits per palette color entry if ( (sz != 8) && (sz != 15) && (sz != 16) && (sz != 24) && (sz != 32) ) goto errorEnd; stbi__skip(s,4); // skip image x and y origin } else { // "normal" image w/o colormap if ( (sz != 2) && (sz != 3) && (sz != 10) && (sz != 11) ) goto errorEnd; // only RGB or grey allowed, +/- RLE stbi__skip(s,9); // skip colormap specification and image x/y origin } if ( stbi__get16le(s) < 1 ) goto errorEnd; // test width if ( stbi__get16le(s) < 1 ) goto errorEnd; // test height sz = stbi__get8(s); // bits per pixel if ( (tga_color_type == 1) && (sz != 8) && (sz != 16) ) goto errorEnd; // for colormapped images, bpp is size of an index if ( (sz != 8) && (sz != 15) && (sz != 16) && (sz != 24) && (sz != 32) ) goto errorEnd; res = 1; // if we got this far, everything's good and we can return 1 instead of 0 errorEnd: stbi__rewind(s); return res; } // read 16bit value and convert to 24bit RGB static void stbi__tga_read_rgb16(stbi__context *s, stbi_uc* out) { stbi__uint16 px = (stbi__uint16)stbi__get16le(s); stbi__uint16 fiveBitMask = 31; // we have 3 channels with 5bits each int r = (px >> 10) & fiveBitMask; int g = (px >> 5) & fiveBitMask; int b = px & fiveBitMask; // Note that this saves the data in RGB(A) order, so it doesn't need to be swapped later out[0] = (stbi_uc)((r * 255)/31); out[1] = (stbi_uc)((g * 255)/31); out[2] = (stbi_uc)((b * 255)/31); // some people claim that the most significant bit might be used for alpha // (possibly if an alpha-bit is set in the "image descriptor byte") // but that only made 16bit test images completely translucent.. // so let's treat all 15 and 16bit TGAs as RGB with no alpha. } static void *stbi__tga_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri) { // read in the TGA header stuff int tga_offset = stbi__get8(s); int tga_indexed = stbi__get8(s); int tga_image_type = stbi__get8(s); int tga_is_RLE = 0; int tga_palette_start = stbi__get16le(s); int tga_palette_len = stbi__get16le(s); int tga_palette_bits = stbi__get8(s); int tga_x_origin = stbi__get16le(s); int tga_y_origin = stbi__get16le(s); int tga_width = stbi__get16le(s); int tga_height = stbi__get16le(s); int tga_bits_per_pixel = stbi__get8(s); int tga_comp, tga_rgb16=0; int tga_inverted = stbi__get8(s); // int tga_alpha_bits = tga_inverted & 15; // the 4 lowest bits - unused (useless?) // image data unsigned char *tga_data; unsigned char *tga_palette = NULL; int i, j; unsigned char raw_data[4] = {0}; int RLE_count = 0; int RLE_repeating = 0; int read_next_pixel = 1; STBI_NOTUSED(ri); STBI_NOTUSED(tga_x_origin); // @TODO STBI_NOTUSED(tga_y_origin); // @TODO if (tga_height > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); if (tga_width > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); // do a tiny bit of precessing if ( tga_image_type >= 8 ) { tga_image_type -= 8; tga_is_RLE = 1; } tga_inverted = 1 - ((tga_inverted >> 5) & 1); // If I'm paletted, then I'll use the number of bits from the palette if ( tga_indexed ) tga_comp = stbi__tga_get_comp(tga_palette_bits, 0, &tga_rgb16); else tga_comp = stbi__tga_get_comp(tga_bits_per_pixel, (tga_image_type == 3), &tga_rgb16); if(!tga_comp) // shouldn't really happen, stbi__tga_test() should have ensured basic consistency return stbi__errpuc("bad format", "Can't find out TGA pixelformat"); // tga info *x = tga_width; *y = tga_height; if (comp) *comp = tga_comp; if (!stbi__mad3sizes_valid(tga_width, tga_height, tga_comp, 0)) return stbi__errpuc("too large", "Corrupt TGA"); tga_data = (unsigned char*)stbi__malloc_mad3(tga_width, tga_height, tga_comp, 0); if (!tga_data) return stbi__errpuc("outofmem", "Out of memory"); // skip to the data's starting position (offset usually = 0) stbi__skip(s, tga_offset ); if ( !tga_indexed && !tga_is_RLE && !tga_rgb16 ) { for (i=0; i < tga_height; ++i) { int row = tga_inverted ? tga_height -i - 1 : i; stbi_uc *tga_row = tga_data + row*tga_width*tga_comp; stbi__getn(s, tga_row, tga_width * tga_comp); } } else { // do I need to load a palette? if ( tga_indexed) { if (tga_palette_len == 0) { /* you have to have at least one entry! */ STBI_FREE(tga_data); return stbi__errpuc("bad palette", "Corrupt TGA"); } // any data to skip? (offset usually = 0) stbi__skip(s, tga_palette_start ); // load the palette tga_palette = (unsigned char*)stbi__malloc_mad2(tga_palette_len, tga_comp, 0); if (!tga_palette) { STBI_FREE(tga_data); return stbi__errpuc("outofmem", "Out of memory"); } if (tga_rgb16) { stbi_uc *pal_entry = tga_palette; STBI_ASSERT(tga_comp == STBI_rgb); for (i=0; i < tga_palette_len; ++i) { stbi__tga_read_rgb16(s, pal_entry); pal_entry += tga_comp; } } else if (!stbi__getn(s, tga_palette, tga_palette_len * tga_comp)) { STBI_FREE(tga_data); STBI_FREE(tga_palette); return stbi__errpuc("bad palette", "Corrupt TGA"); } } // load the data for (i=0; i < tga_width * tga_height; ++i) { // if I'm in RLE mode, do I need to get a RLE stbi__pngchunk? if ( tga_is_RLE ) { if ( RLE_count == 0 ) { // yep, get the next byte as a RLE command int RLE_cmd = stbi__get8(s); RLE_count = 1 + (RLE_cmd & 127); RLE_repeating = RLE_cmd >> 7; read_next_pixel = 1; } else if ( !RLE_repeating ) { read_next_pixel = 1; } } else { read_next_pixel = 1; } // OK, if I need to read a pixel, do it now if ( read_next_pixel ) { // load however much data we did have if ( tga_indexed ) { // read in index, then perform the lookup int pal_idx = (tga_bits_per_pixel == 8) ? stbi__get8(s) : stbi__get16le(s); if ( pal_idx >= tga_palette_len ) { // invalid index pal_idx = 0; } pal_idx *= tga_comp; for (j = 0; j < tga_comp; ++j) { raw_data[j] = tga_palette[pal_idx+j]; } } else if(tga_rgb16) { STBI_ASSERT(tga_comp == STBI_rgb); stbi__tga_read_rgb16(s, raw_data); } else { // read in the data raw for (j = 0; j < tga_comp; ++j) { raw_data[j] = stbi__get8(s); } } // clear the reading flag for the next pixel read_next_pixel = 0; } // end of reading a pixel // copy data for (j = 0; j < tga_comp; ++j) tga_data[i*tga_comp+j] = raw_data[j]; // in case we're in RLE mode, keep counting down --RLE_count; } // do I need to invert the image? if ( tga_inverted ) { for (j = 0; j*2 < tga_height; ++j) { int index1 = j * tga_width * tga_comp; int index2 = (tga_height - 1 - j) * tga_width * tga_comp; for (i = tga_width * tga_comp; i > 0; --i) { unsigned char temp = tga_data[index1]; tga_data[index1] = tga_data[index2]; tga_data[index2] = temp; ++index1; ++index2; } } } // clear my palette, if I had one if ( tga_palette != NULL ) { STBI_FREE( tga_palette ); } } // swap RGB - if the source data was RGB16, it already is in the right order if (tga_comp >= 3 && !tga_rgb16) { unsigned char* tga_pixel = tga_data; for (i=0; i < tga_width * tga_height; ++i) { unsigned char temp = tga_pixel[0]; tga_pixel[0] = tga_pixel[2]; tga_pixel[2] = temp; tga_pixel += tga_comp; } } // convert to target component count if (req_comp && req_comp != tga_comp) tga_data = stbi__convert_format(tga_data, tga_comp, req_comp, tga_width, tga_height); // the things I do to get rid of an error message, and yet keep // Microsoft's C compilers happy... [8^( tga_palette_start = tga_palette_len = tga_palette_bits = tga_x_origin = tga_y_origin = 0; STBI_NOTUSED(tga_palette_start); // OK, done return tga_data; } #endif // ************************************************************************************************* // Photoshop PSD loader -- PD by Thatcher Ulrich, integration by Nicolas Schulz, tweaked by STB #ifndef STBI_NO_PSD static int stbi__psd_test(stbi__context *s) { int r = (stbi__get32be(s) == 0x38425053); stbi__rewind(s); return r; } static int stbi__psd_decode_rle(stbi__context *s, stbi_uc *p, int pixelCount) { int count, nleft, len; count = 0; while ((nleft = pixelCount - count) > 0) { len = stbi__get8(s); if (len == 128) { // No-op. } else if (len < 128) { // Copy next len+1 bytes literally. len++; if (len > nleft) return 0; // corrupt data count += len; while (len) { *p = stbi__get8(s); p += 4; len--; } } else if (len > 128) { stbi_uc val; // Next -len+1 bytes in the dest are replicated from next source byte. // (Interpret len as a negative 8-bit int.) len = 257 - len; if (len > nleft) return 0; // corrupt data val = stbi__get8(s); count += len; while (len) { *p = val; p += 4; len--; } } } return 1; } static void *stbi__psd_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri, int bpc) { int pixelCount; int channelCount, compression; int channel, i; int bitdepth; int w,h; stbi_uc *out; STBI_NOTUSED(ri); // Check identifier if (stbi__get32be(s) != 0x38425053) // "8BPS" return stbi__errpuc("not PSD", "Corrupt PSD image"); // Check file type version. if (stbi__get16be(s) != 1) return stbi__errpuc("wrong version", "Unsupported version of PSD image"); // Skip 6 reserved bytes. stbi__skip(s, 6 ); // Read the number of channels (R, G, B, A, etc). channelCount = stbi__get16be(s); if (channelCount < 0 || channelCount > 16) return stbi__errpuc("wrong channel count", "Unsupported number of channels in PSD image"); // Read the rows and columns of the image. h = stbi__get32be(s); w = stbi__get32be(s); if (h > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); if (w > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); // Make sure the depth is 8 bits. bitdepth = stbi__get16be(s); if (bitdepth != 8 && bitdepth != 16) return stbi__errpuc("unsupported bit depth", "PSD bit depth is not 8 or 16 bit"); // Make sure the color mode is RGB. // Valid options are: // 0: Bitmap // 1: Grayscale // 2: Indexed color // 3: RGB color // 4: CMYK color // 7: Multichannel // 8: Duotone // 9: Lab color if (stbi__get16be(s) != 3) return stbi__errpuc("wrong color format", "PSD is not in RGB color format"); // Skip the Mode Data. (It's the palette for indexed color; other info for other modes.) stbi__skip(s,stbi__get32be(s) ); // Skip the image resources. (resolution, pen tool paths, etc) stbi__skip(s, stbi__get32be(s) ); // Skip the reserved data. stbi__skip(s, stbi__get32be(s) ); // Find out if the data is compressed. // Known values: // 0: no compression // 1: RLE compressed compression = stbi__get16be(s); if (compression > 1) return stbi__errpuc("bad compression", "PSD has an unknown compression format"); // Check size if (!stbi__mad3sizes_valid(4, w, h, 0)) return stbi__errpuc("too large", "Corrupt PSD"); // Create the destination image. if (!compression && bitdepth == 16 && bpc == 16) { out = (stbi_uc *) stbi__malloc_mad3(8, w, h, 0); ri->bits_per_channel = 16; } else out = (stbi_uc *) stbi__malloc(4 * w*h); if (!out) return stbi__errpuc("outofmem", "Out of memory"); pixelCount = w*h; // Initialize the data to zero. //memset( out, 0, pixelCount * 4 ); // Finally, the image data. if (compression) { // RLE as used by .PSD and .TIFF // Loop until you get the number of unpacked bytes you are expecting: // Read the next source byte into n. // If n is between 0 and 127 inclusive, copy the next n+1 bytes literally. // Else if n is between -127 and -1 inclusive, copy the next byte -n+1 times. // Else if n is 128, noop. // Endloop // The RLE-compressed data is preceded by a 2-byte data count for each row in the data, // which we're going to just skip. stbi__skip(s, h * channelCount * 2 ); // Read the RLE data by channel. for (channel = 0; channel < 4; channel++) { stbi_uc *p; p = out+channel; if (channel >= channelCount) { // Fill this channel with default data. for (i = 0; i < pixelCount; i++, p += 4) *p = (channel == 3 ? 255 : 0); } else { // Read the RLE data. if (!stbi__psd_decode_rle(s, p, pixelCount)) { STBI_FREE(out); return stbi__errpuc("corrupt", "bad RLE data"); } } } } else { // We're at the raw image data. It's each channel in order (Red, Green, Blue, Alpha, ...) // where each channel consists of an 8-bit (or 16-bit) value for each pixel in the image. // Read the data by channel. for (channel = 0; channel < 4; channel++) { if (channel >= channelCount) { // Fill this channel with default data. if (bitdepth == 16 && bpc == 16) { stbi__uint16 *q = ((stbi__uint16 *) out) + channel; stbi__uint16 val = channel == 3 ? 65535 : 0; for (i = 0; i < pixelCount; i++, q += 4) *q = val; } else { stbi_uc *p = out+channel; stbi_uc val = channel == 3 ? 255 : 0; for (i = 0; i < pixelCount; i++, p += 4) *p = val; } } else { if (ri->bits_per_channel == 16) { // output bpc stbi__uint16 *q = ((stbi__uint16 *) out) + channel; for (i = 0; i < pixelCount; i++, q += 4) *q = (stbi__uint16) stbi__get16be(s); } else { stbi_uc *p = out+channel; if (bitdepth == 16) { // input bpc for (i = 0; i < pixelCount; i++, p += 4) *p = (stbi_uc) (stbi__get16be(s) >> 8); } else { for (i = 0; i < pixelCount; i++, p += 4) *p = stbi__get8(s); } } } } } // remove weird white matte from PSD if (channelCount >= 4) { if (ri->bits_per_channel == 16) { for (i=0; i < w*h; ++i) { stbi__uint16 *pixel = (stbi__uint16 *) out + 4*i; if (pixel[3] != 0 && pixel[3] != 65535) { float a = pixel[3] / 65535.0f; float ra = 1.0f / a; float inv_a = 65535.0f * (1 - ra); pixel[0] = (stbi__uint16) (pixel[0]*ra + inv_a); pixel[1] = (stbi__uint16) (pixel[1]*ra + inv_a); pixel[2] = (stbi__uint16) (pixel[2]*ra + inv_a); } } } else { for (i=0; i < w*h; ++i) { unsigned char *pixel = out + 4*i; if (pixel[3] != 0 && pixel[3] != 255) { float a = pixel[3] / 255.0f; float ra = 1.0f / a; float inv_a = 255.0f * (1 - ra); pixel[0] = (unsigned char) (pixel[0]*ra + inv_a); pixel[1] = (unsigned char) (pixel[1]*ra + inv_a); pixel[2] = (unsigned char) (pixel[2]*ra + inv_a); } } } } // convert to desired output format if (req_comp && req_comp != 4) { if (ri->bits_per_channel == 16) out = (stbi_uc *) stbi__convert_format16((stbi__uint16 *) out, 4, req_comp, w, h); else out = stbi__convert_format(out, 4, req_comp, w, h); if (out == NULL) return out; // stbi__convert_format frees input on failure } if (comp) *comp = 4; *y = h; *x = w; return out; } #endif // ************************************************************************************************* // Softimage PIC loader // by Tom Seddon // // See http://softimage.wiki.softimage.com/index.php/INFO:_PIC_file_format // See http://ozviz.wasp.uwa.edu.au/~pbourke/dataformats/softimagepic/ #ifndef STBI_NO_PIC static int stbi__pic_is4(stbi__context *s,const char *str) { int i; for (i=0; i<4; ++i) if (stbi__get8(s) != (stbi_uc)str[i]) return 0; return 1; } static int stbi__pic_test_core(stbi__context *s) { int i; if (!stbi__pic_is4(s,"\x53\x80\xF6\x34")) return 0; for(i=0;i<84;++i) stbi__get8(s); if (!stbi__pic_is4(s,"PICT")) return 0; return 1; } typedef struct { stbi_uc size,type,channel; } stbi__pic_packet; static stbi_uc *stbi__readval(stbi__context *s, int channel, stbi_uc *dest) { int mask=0x80, i; for (i=0; i<4; ++i, mask>>=1) { if (channel & mask) { if (stbi__at_eof(s)) return stbi__errpuc("bad file","PIC file too short"); dest[i]=stbi__get8(s); } } return dest; } static void stbi__copyval(int channel,stbi_uc *dest,const stbi_uc *src) { int mask=0x80,i; for (i=0;i<4; ++i, mask>>=1) if (channel&mask) dest[i]=src[i]; } static stbi_uc *stbi__pic_load_core(stbi__context *s,int width,int height,int *comp, stbi_uc *result) { int act_comp=0,num_packets=0,y,chained; stbi__pic_packet packets[10]; // this will (should...) cater for even some bizarre stuff like having data // for the same channel in multiple packets. do { stbi__pic_packet *packet; if (num_packets==sizeof(packets)/sizeof(packets[0])) return stbi__errpuc("bad format","too many packets"); packet = &packets[num_packets++]; chained = stbi__get8(s); packet->size = stbi__get8(s); packet->type = stbi__get8(s); packet->channel = stbi__get8(s); act_comp |= packet->channel; if (stbi__at_eof(s)) return stbi__errpuc("bad file","file too short (reading packets)"); if (packet->size != 8) return stbi__errpuc("bad format","packet isn't 8bpp"); } while (chained); *comp = (act_comp & 0x10 ? 4 : 3); // has alpha channel? for(y=0; ytype) { default: return stbi__errpuc("bad format","packet has bad compression type"); case 0: {//uncompressed int x; for(x=0;xchannel,dest)) return 0; break; } case 1://Pure RLE { int left=width, i; while (left>0) { stbi_uc count,value[4]; count=stbi__get8(s); if (stbi__at_eof(s)) return stbi__errpuc("bad file","file too short (pure read count)"); if (count > left) count = (stbi_uc) left; if (!stbi__readval(s,packet->channel,value)) return 0; for(i=0; ichannel,dest,value); left -= count; } } break; case 2: {//Mixed RLE int left=width; while (left>0) { int count = stbi__get8(s), i; if (stbi__at_eof(s)) return stbi__errpuc("bad file","file too short (mixed read count)"); if (count >= 128) { // Repeated stbi_uc value[4]; if (count==128) count = stbi__get16be(s); else count -= 127; if (count > left) return stbi__errpuc("bad file","scanline overrun"); if (!stbi__readval(s,packet->channel,value)) return 0; for(i=0;ichannel,dest,value); } else { // Raw ++count; if (count>left) return stbi__errpuc("bad file","scanline overrun"); for(i=0;ichannel,dest)) return 0; } left-=count; } break; } } } } return result; } static void *stbi__pic_load(stbi__context *s,int *px,int *py,int *comp,int req_comp, stbi__result_info *ri) { stbi_uc *result; int i, x,y, internal_comp; STBI_NOTUSED(ri); if (!comp) comp = &internal_comp; for (i=0; i<92; ++i) stbi__get8(s); x = stbi__get16be(s); y = stbi__get16be(s); if (y > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); if (x > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); if (stbi__at_eof(s)) return stbi__errpuc("bad file","file too short (pic header)"); if (!stbi__mad3sizes_valid(x, y, 4, 0)) return stbi__errpuc("too large", "PIC image too large to decode"); stbi__get32be(s); //skip `ratio' stbi__get16be(s); //skip `fields' stbi__get16be(s); //skip `pad' // intermediate buffer is RGBA result = (stbi_uc *) stbi__malloc_mad3(x, y, 4, 0); if (!result) return stbi__errpuc("outofmem", "Out of memory"); memset(result, 0xff, x*y*4); if (!stbi__pic_load_core(s,x,y,comp, result)) { STBI_FREE(result); result=0; } *px = x; *py = y; if (req_comp == 0) req_comp = *comp; result=stbi__convert_format(result,4,req_comp,x,y); return result; } static int stbi__pic_test(stbi__context *s) { int r = stbi__pic_test_core(s); stbi__rewind(s); return r; } #endif // ************************************************************************************************* // GIF loader -- public domain by Jean-Marc Lienher -- simplified/shrunk by stb #ifndef STBI_NO_GIF typedef struct { stbi__int16 prefix; stbi_uc first; stbi_uc suffix; } stbi__gif_lzw; typedef struct { int w,h; stbi_uc *out; // output buffer (always 4 components) stbi_uc *background; // The current "background" as far as a gif is concerned stbi_uc *history; int flags, bgindex, ratio, transparent, eflags; stbi_uc pal[256][4]; stbi_uc lpal[256][4]; stbi__gif_lzw codes[8192]; stbi_uc *color_table; int parse, step; int lflags; int start_x, start_y; int max_x, max_y; int cur_x, cur_y; int line_size; int delay; } stbi__gif; static int stbi__gif_test_raw(stbi__context *s) { int sz; if (stbi__get8(s) != 'G' || stbi__get8(s) != 'I' || stbi__get8(s) != 'F' || stbi__get8(s) != '8') return 0; sz = stbi__get8(s); if (sz != '9' && sz != '7') return 0; if (stbi__get8(s) != 'a') return 0; return 1; } static int stbi__gif_test(stbi__context *s) { int r = stbi__gif_test_raw(s); stbi__rewind(s); return r; } static void stbi__gif_parse_colortable(stbi__context *s, stbi_uc pal[256][4], int num_entries, int transp) { int i; for (i=0; i < num_entries; ++i) { pal[i][2] = stbi__get8(s); pal[i][1] = stbi__get8(s); pal[i][0] = stbi__get8(s); pal[i][3] = transp == i ? 0 : 255; } } static int stbi__gif_header(stbi__context *s, stbi__gif *g, int *comp, int is_info) { stbi_uc version; if (stbi__get8(s) != 'G' || stbi__get8(s) != 'I' || stbi__get8(s) != 'F' || stbi__get8(s) != '8') return stbi__err("not GIF", "Corrupt GIF"); version = stbi__get8(s); if (version != '7' && version != '9') return stbi__err("not GIF", "Corrupt GIF"); if (stbi__get8(s) != 'a') return stbi__err("not GIF", "Corrupt GIF"); stbi__g_failure_reason = ""; g->w = stbi__get16le(s); g->h = stbi__get16le(s); g->flags = stbi__get8(s); g->bgindex = stbi__get8(s); g->ratio = stbi__get8(s); g->transparent = -1; if (g->w > STBI_MAX_DIMENSIONS) return stbi__err("too large","Very large image (corrupt?)"); if (g->h > STBI_MAX_DIMENSIONS) return stbi__err("too large","Very large image (corrupt?)"); if (comp != 0) *comp = 4; // can't actually tell whether it's 3 or 4 until we parse the comments if (is_info) return 1; if (g->flags & 0x80) stbi__gif_parse_colortable(s,g->pal, 2 << (g->flags & 7), -1); return 1; } static int stbi__gif_info_raw(stbi__context *s, int *x, int *y, int *comp) { stbi__gif* g = (stbi__gif*) stbi__malloc(sizeof(stbi__gif)); if (!g) return stbi__err("outofmem", "Out of memory"); if (!stbi__gif_header(s, g, comp, 1)) { STBI_FREE(g); stbi__rewind( s ); return 0; } if (x) *x = g->w; if (y) *y = g->h; STBI_FREE(g); return 1; } static void stbi__out_gif_code(stbi__gif *g, stbi__uint16 code) { stbi_uc *p, *c; int idx; // recurse to decode the prefixes, since the linked-list is backwards, // and working backwards through an interleaved image would be nasty if (g->codes[code].prefix >= 0) stbi__out_gif_code(g, g->codes[code].prefix); if (g->cur_y >= g->max_y) return; idx = g->cur_x + g->cur_y; p = &g->out[idx]; g->history[idx / 4] = 1; c = &g->color_table[g->codes[code].suffix * 4]; if (c[3] > 128) { // don't render transparent pixels; p[0] = c[2]; p[1] = c[1]; p[2] = c[0]; p[3] = c[3]; } g->cur_x += 4; if (g->cur_x >= g->max_x) { g->cur_x = g->start_x; g->cur_y += g->step; while (g->cur_y >= g->max_y && g->parse > 0) { g->step = (1 << g->parse) * g->line_size; g->cur_y = g->start_y + (g->step >> 1); --g->parse; } } } static stbi_uc *stbi__process_gif_raster(stbi__context *s, stbi__gif *g) { stbi_uc lzw_cs; stbi__int32 len, init_code; stbi__uint32 first; stbi__int32 codesize, codemask, avail, oldcode, bits, valid_bits, clear; stbi__gif_lzw *p; lzw_cs = stbi__get8(s); if (lzw_cs > 12) return NULL; clear = 1 << lzw_cs; first = 1; codesize = lzw_cs + 1; codemask = (1 << codesize) - 1; bits = 0; valid_bits = 0; for (init_code = 0; init_code < clear; init_code++) { g->codes[init_code].prefix = -1; g->codes[init_code].first = (stbi_uc) init_code; g->codes[init_code].suffix = (stbi_uc) init_code; } // support no starting clear code avail = clear+2; oldcode = -1; len = 0; for(;;) { if (valid_bits < codesize) { if (len == 0) { len = stbi__get8(s); // start new block if (len == 0) return g->out; } --len; bits |= (stbi__int32) stbi__get8(s) << valid_bits; valid_bits += 8; } else { stbi__int32 code = bits & codemask; bits >>= codesize; valid_bits -= codesize; // @OPTIMIZE: is there some way we can accelerate the non-clear path? if (code == clear) { // clear code codesize = lzw_cs + 1; codemask = (1 << codesize) - 1; avail = clear + 2; oldcode = -1; first = 0; } else if (code == clear + 1) { // end of stream code stbi__skip(s, len); while ((len = stbi__get8(s)) > 0) stbi__skip(s,len); return g->out; } else if (code <= avail) { if (first) { return stbi__errpuc("no clear code", "Corrupt GIF"); } if (oldcode >= 0) { p = &g->codes[avail++]; if (avail > 8192) { return stbi__errpuc("too many codes", "Corrupt GIF"); } p->prefix = (stbi__int16) oldcode; p->first = g->codes[oldcode].first; p->suffix = (code == avail) ? p->first : g->codes[code].first; } else if (code == avail) return stbi__errpuc("illegal code in raster", "Corrupt GIF"); stbi__out_gif_code(g, (stbi__uint16) code); if ((avail & codemask) == 0 && avail <= 0x0FFF) { codesize++; codemask = (1 << codesize) - 1; } oldcode = code; } else { return stbi__errpuc("illegal code in raster", "Corrupt GIF"); } } } } // this function is designed to support animated gifs, although stb_image doesn't support it // two back is the image from two frames ago, used for a very specific disposal format static stbi_uc *stbi__gif_load_next(stbi__context *s, stbi__gif *g, int *comp, int req_comp, stbi_uc *two_back) { int dispose; int first_frame; int pi; int pcount; STBI_NOTUSED(req_comp); // on first frame, any non-written pixels get the background colour (non-transparent) first_frame = 0; if (g->out == 0) { if (!stbi__gif_header(s, g, comp,0)) return 0; // stbi__g_failure_reason set by stbi__gif_header if (!stbi__mad3sizes_valid(4, g->w, g->h, 0)) return stbi__errpuc("too large", "GIF image is too large"); pcount = g->w * g->h; g->out = (stbi_uc *) stbi__malloc(4 * pcount); g->background = (stbi_uc *) stbi__malloc(4 * pcount); g->history = (stbi_uc *) stbi__malloc(pcount); if (!g->out || !g->background || !g->history) return stbi__errpuc("outofmem", "Out of memory"); // image is treated as "transparent" at the start - ie, nothing overwrites the current background; // background colour is only used for pixels that are not rendered first frame, after that "background" // color refers to the color that was there the previous frame. memset(g->out, 0x00, 4 * pcount); memset(g->background, 0x00, 4 * pcount); // state of the background (starts transparent) memset(g->history, 0x00, pcount); // pixels that were affected previous frame first_frame = 1; } else { // second frame - how do we dispose of the previous one? dispose = (g->eflags & 0x1C) >> 2; pcount = g->w * g->h; if ((dispose == 3) && (two_back == 0)) { dispose = 2; // if I don't have an image to revert back to, default to the old background } if (dispose == 3) { // use previous graphic for (pi = 0; pi < pcount; ++pi) { if (g->history[pi]) { memcpy( &g->out[pi * 4], &two_back[pi * 4], 4 ); } } } else if (dispose == 2) { // restore what was changed last frame to background before that frame; for (pi = 0; pi < pcount; ++pi) { if (g->history[pi]) { memcpy( &g->out[pi * 4], &g->background[pi * 4], 4 ); } } } else { // This is a non-disposal case eithe way, so just // leave the pixels as is, and they will become the new background // 1: do not dispose // 0: not specified. } // background is what out is after the undoing of the previou frame; memcpy( g->background, g->out, 4 * g->w * g->h ); } // clear my history; memset( g->history, 0x00, g->w * g->h ); // pixels that were affected previous frame for (;;) { int tag = stbi__get8(s); switch (tag) { case 0x2C: /* Image Descriptor */ { stbi__int32 x, y, w, h; stbi_uc *o; x = stbi__get16le(s); y = stbi__get16le(s); w = stbi__get16le(s); h = stbi__get16le(s); if (((x + w) > (g->w)) || ((y + h) > (g->h))) return stbi__errpuc("bad Image Descriptor", "Corrupt GIF"); g->line_size = g->w * 4; g->start_x = x * 4; g->start_y = y * g->line_size; g->max_x = g->start_x + w * 4; g->max_y = g->start_y + h * g->line_size; g->cur_x = g->start_x; g->cur_y = g->start_y; // if the width of the specified rectangle is 0, that means // we may not see *any* pixels or the image is malformed; // to make sure this is caught, move the current y down to // max_y (which is what out_gif_code checks). if (w == 0) g->cur_y = g->max_y; g->lflags = stbi__get8(s); if (g->lflags & 0x40) { g->step = 8 * g->line_size; // first interlaced spacing g->parse = 3; } else { g->step = g->line_size; g->parse = 0; } if (g->lflags & 0x80) { stbi__gif_parse_colortable(s,g->lpal, 2 << (g->lflags & 7), g->eflags & 0x01 ? g->transparent : -1); g->color_table = (stbi_uc *) g->lpal; } else if (g->flags & 0x80) { g->color_table = (stbi_uc *) g->pal; } else return stbi__errpuc("missing color table", "Corrupt GIF"); o = stbi__process_gif_raster(s, g); if (!o) return NULL; // if this was the first frame, pcount = g->w * g->h; if (first_frame && (g->bgindex > 0)) { // if first frame, any pixel not drawn to gets the background color for (pi = 0; pi < pcount; ++pi) { if (g->history[pi] == 0) { g->pal[g->bgindex][3] = 255; // just in case it was made transparent, undo that; It will be reset next frame if need be; memcpy( &g->out[pi * 4], &g->pal[g->bgindex], 4 ); } } } return o; } case 0x21: // Comment Extension. { int len; int ext = stbi__get8(s); if (ext == 0xF9) { // Graphic Control Extension. len = stbi__get8(s); if (len == 4) { g->eflags = stbi__get8(s); g->delay = 10 * stbi__get16le(s); // delay - 1/100th of a second, saving as 1/1000ths. // unset old transparent if (g->transparent >= 0) { g->pal[g->transparent][3] = 255; } if (g->eflags & 0x01) { g->transparent = stbi__get8(s); if (g->transparent >= 0) { g->pal[g->transparent][3] = 0; } } else { // don't need transparent stbi__skip(s, 1); g->transparent = -1; } } else { stbi__skip(s, len); break; } } while ((len = stbi__get8(s)) != 0) { stbi__skip(s, len); } break; } case 0x3B: // gif stream termination code return (stbi_uc *) s; // using '1' causes warning on some compilers default: return stbi__errpuc("unknown code", "Corrupt GIF"); } } } static void *stbi__load_gif_main_outofmem(stbi__gif *g, stbi_uc *out, int **delays) { STBI_FREE(g->out); STBI_FREE(g->history); STBI_FREE(g->background); if (out) STBI_FREE(out); if (delays && *delays) STBI_FREE(*delays); return stbi__errpuc("outofmem", "Out of memory"); } static void *stbi__load_gif_main(stbi__context *s, int **delays, int *x, int *y, int *z, int *comp, int req_comp) { if (stbi__gif_test(s)) { int layers = 0; stbi_uc *u = 0; stbi_uc *out = 0; stbi_uc *two_back = 0; stbi__gif g; int stride; int out_size = 0; int delays_size = 0; STBI_NOTUSED(out_size); STBI_NOTUSED(delays_size); memset(&g, 0, sizeof(g)); if (delays) { *delays = 0; } do { u = stbi__gif_load_next(s, &g, comp, req_comp, two_back); if (u == (stbi_uc *) s) u = 0; // end of animated gif marker if (u) { *x = g.w; *y = g.h; ++layers; stride = g.w * g.h * 4; if (out) { void *tmp = (stbi_uc*) STBI_REALLOC_SIZED( out, out_size, layers * stride ); if (!tmp) return stbi__load_gif_main_outofmem(&g, out, delays); else { out = (stbi_uc*) tmp; out_size = layers * stride; } if (delays) { int *new_delays = (int*) STBI_REALLOC_SIZED( *delays, delays_size, sizeof(int) * layers ); if (!new_delays) return stbi__load_gif_main_outofmem(&g, out, delays); *delays = new_delays; delays_size = layers * sizeof(int); } } else { out = (stbi_uc*)stbi__malloc( layers * stride ); if (!out) return stbi__load_gif_main_outofmem(&g, out, delays); out_size = layers * stride; if (delays) { *delays = (int*) stbi__malloc( layers * sizeof(int) ); if (!*delays) return stbi__load_gif_main_outofmem(&g, out, delays); delays_size = layers * sizeof(int); } } memcpy( out + ((layers - 1) * stride), u, stride ); if (layers >= 2) { two_back = out - 2 * stride; } if (delays) { (*delays)[layers - 1U] = g.delay; } } } while (u != 0); // free temp buffer; STBI_FREE(g.out); STBI_FREE(g.history); STBI_FREE(g.background); // do the final conversion after loading everything; if (req_comp && req_comp != 4) out = stbi__convert_format(out, 4, req_comp, layers * g.w, g.h); *z = layers; return out; } else { return stbi__errpuc("not GIF", "Image was not as a gif type."); } } static void *stbi__gif_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri) { stbi_uc *u = 0; stbi__gif g; memset(&g, 0, sizeof(g)); STBI_NOTUSED(ri); u = stbi__gif_load_next(s, &g, comp, req_comp, 0); if (u == (stbi_uc *) s) u = 0; // end of animated gif marker if (u) { *x = g.w; *y = g.h; // moved conversion to after successful load so that the same // can be done for multiple frames. if (req_comp && req_comp != 4) u = stbi__convert_format(u, 4, req_comp, g.w, g.h); } else if (g.out) { // if there was an error and we allocated an image buffer, free it! STBI_FREE(g.out); } // free buffers needed for multiple frame loading; STBI_FREE(g.history); STBI_FREE(g.background); return u; } static int stbi__gif_info(stbi__context *s, int *x, int *y, int *comp) { return stbi__gif_info_raw(s,x,y,comp); } #endif // ************************************************************************************************* // Radiance RGBE HDR loader // originally by Nicolas Schulz #ifndef STBI_NO_HDR static int stbi__hdr_test_core(stbi__context *s, const char *signature) { int i; for (i=0; signature[i]; ++i) if (stbi__get8(s) != signature[i]) return 0; stbi__rewind(s); return 1; } static int stbi__hdr_test(stbi__context* s) { int r = stbi__hdr_test_core(s, "#?RADIANCE\n"); stbi__rewind(s); if(!r) { r = stbi__hdr_test_core(s, "#?RGBE\n"); stbi__rewind(s); } return r; } #define STBI__HDR_BUFLEN 1024 static char *stbi__hdr_gettoken(stbi__context *z, char *buffer) { int len=0; char c = '\0'; c = (char) stbi__get8(z); while (!stbi__at_eof(z) && c != '\n') { buffer[len++] = c; if (len == STBI__HDR_BUFLEN-1) { // flush to end of line while (!stbi__at_eof(z) && stbi__get8(z) != '\n') ; break; } c = (char) stbi__get8(z); } buffer[len] = 0; return buffer; } static void stbi__hdr_convert(float *output, stbi_uc *input, int req_comp) { if ( input[3] != 0 ) { float f1; // Exponent f1 = (float) ldexp(1.0f, input[3] - (int)(128 + 8)); if (req_comp <= 2) output[0] = (input[0] + input[1] + input[2]) * f1 / 3; else { output[0] = input[0] * f1; output[1] = input[1] * f1; output[2] = input[2] * f1; } if (req_comp == 2) output[1] = 1; if (req_comp == 4) output[3] = 1; } else { switch (req_comp) { case 4: output[3] = 1; /* fallthrough */ case 3: output[0] = output[1] = output[2] = 0; break; case 2: output[1] = 1; /* fallthrough */ case 1: output[0] = 0; break; } } } static float *stbi__hdr_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri) { char buffer[STBI__HDR_BUFLEN]; char *token; int valid = 0; int width, height; stbi_uc *scanline; float *hdr_data; int len; unsigned char count, value; int i, j, k, c1,c2, z; const char *headerToken; STBI_NOTUSED(ri); // Check identifier headerToken = stbi__hdr_gettoken(s,buffer); if (strcmp(headerToken, "#?RADIANCE") != 0 && strcmp(headerToken, "#?RGBE") != 0) return stbi__errpf("not HDR", "Corrupt HDR image"); // Parse header for(;;) { token = stbi__hdr_gettoken(s,buffer); if (token[0] == 0) break; if (strcmp(token, "FORMAT=32-bit_rle_rgbe") == 0) valid = 1; } if (!valid) return stbi__errpf("unsupported format", "Unsupported HDR format"); // Parse width and height // can't use sscanf() if we're not using stdio! token = stbi__hdr_gettoken(s,buffer); if (strncmp(token, "-Y ", 3)) return stbi__errpf("unsupported data layout", "Unsupported HDR format"); token += 3; height = (int) strtol(token, &token, 10); while (*token == ' ') ++token; if (strncmp(token, "+X ", 3)) return stbi__errpf("unsupported data layout", "Unsupported HDR format"); token += 3; width = (int) strtol(token, NULL, 10); if (height > STBI_MAX_DIMENSIONS) return stbi__errpf("too large","Very large image (corrupt?)"); if (width > STBI_MAX_DIMENSIONS) return stbi__errpf("too large","Very large image (corrupt?)"); *x = width; *y = height; if (comp) *comp = 3; if (req_comp == 0) req_comp = 3; if (!stbi__mad4sizes_valid(width, height, req_comp, sizeof(float), 0)) return stbi__errpf("too large", "HDR image is too large"); // Read data hdr_data = (float *) stbi__malloc_mad4(width, height, req_comp, sizeof(float), 0); if (!hdr_data) return stbi__errpf("outofmem", "Out of memory"); // Load image data // image data is stored as some number of sca if ( width < 8 || width >= 32768) { // Read flat data for (j=0; j < height; ++j) { for (i=0; i < width; ++i) { stbi_uc rgbe[4]; main_decode_loop: stbi__getn(s, rgbe, 4); stbi__hdr_convert(hdr_data + j * width * req_comp + i * req_comp, rgbe, req_comp); } } } else { // Read RLE-encoded data scanline = NULL; for (j = 0; j < height; ++j) { c1 = stbi__get8(s); c2 = stbi__get8(s); len = stbi__get8(s); if (c1 != 2 || c2 != 2 || (len & 0x80)) { // not run-length encoded, so we have to actually use THIS data as a decoded // pixel (note this can't be a valid pixel--one of RGB must be >= 128) stbi_uc rgbe[4]; rgbe[0] = (stbi_uc) c1; rgbe[1] = (stbi_uc) c2; rgbe[2] = (stbi_uc) len; rgbe[3] = (stbi_uc) stbi__get8(s); stbi__hdr_convert(hdr_data, rgbe, req_comp); i = 1; j = 0; STBI_FREE(scanline); goto main_decode_loop; // yes, this makes no sense } len <<= 8; len |= stbi__get8(s); if (len != width) { STBI_FREE(hdr_data); STBI_FREE(scanline); return stbi__errpf("invalid decoded scanline length", "corrupt HDR"); } if (scanline == NULL) { scanline = (stbi_uc *) stbi__malloc_mad2(width, 4, 0); if (!scanline) { STBI_FREE(hdr_data); return stbi__errpf("outofmem", "Out of memory"); } } for (k = 0; k < 4; ++k) { int nleft; i = 0; while ((nleft = width - i) > 0) { count = stbi__get8(s); if (count > 128) { // Run value = stbi__get8(s); count -= 128; if (count > nleft) { STBI_FREE(hdr_data); STBI_FREE(scanline); return stbi__errpf("corrupt", "bad RLE data in HDR"); } for (z = 0; z < count; ++z) scanline[i++ * 4 + k] = value; } else { // Dump if (count > nleft) { STBI_FREE(hdr_data); STBI_FREE(scanline); return stbi__errpf("corrupt", "bad RLE data in HDR"); } for (z = 0; z < count; ++z) scanline[i++ * 4 + k] = stbi__get8(s); } } } for (i=0; i < width; ++i) stbi__hdr_convert(hdr_data+(j*width + i)*req_comp, scanline + i*4, req_comp); } if (scanline) STBI_FREE(scanline); } return hdr_data; } static int stbi__hdr_info(stbi__context *s, int *x, int *y, int *comp) { char buffer[STBI__HDR_BUFLEN]; char *token; int valid = 0; int dummy; if (!x) x = &dummy; if (!y) y = &dummy; if (!comp) comp = &dummy; if (stbi__hdr_test(s) == 0) { stbi__rewind( s ); return 0; } for(;;) { token = stbi__hdr_gettoken(s,buffer); if (token[0] == 0) break; if (strcmp(token, "FORMAT=32-bit_rle_rgbe") == 0) valid = 1; } if (!valid) { stbi__rewind( s ); return 0; } token = stbi__hdr_gettoken(s,buffer); if (strncmp(token, "-Y ", 3)) { stbi__rewind( s ); return 0; } token += 3; *y = (int) strtol(token, &token, 10); while (*token == ' ') ++token; if (strncmp(token, "+X ", 3)) { stbi__rewind( s ); return 0; } token += 3; *x = (int) strtol(token, NULL, 10); *comp = 3; return 1; } #endif // STBI_NO_HDR #ifndef STBI_NO_BMP static int stbi__bmp_info(stbi__context *s, int *x, int *y, int *comp) { void *p; stbi__bmp_data info; info.all_a = 255; p = stbi__bmp_parse_header(s, &info); if (p == NULL) { stbi__rewind( s ); return 0; } if (x) *x = s->img_x; if (y) *y = s->img_y; if (comp) { if (info.bpp == 24 && info.ma == 0xff000000) *comp = 3; else *comp = info.ma ? 4 : 3; } return 1; } #endif #ifndef STBI_NO_PSD static int stbi__psd_info(stbi__context *s, int *x, int *y, int *comp) { int channelCount, dummy, depth; if (!x) x = &dummy; if (!y) y = &dummy; if (!comp) comp = &dummy; if (stbi__get32be(s) != 0x38425053) { stbi__rewind( s ); return 0; } if (stbi__get16be(s) != 1) { stbi__rewind( s ); return 0; } stbi__skip(s, 6); channelCount = stbi__get16be(s); if (channelCount < 0 || channelCount > 16) { stbi__rewind( s ); return 0; } *y = stbi__get32be(s); *x = stbi__get32be(s); depth = stbi__get16be(s); if (depth != 8 && depth != 16) { stbi__rewind( s ); return 0; } if (stbi__get16be(s) != 3) { stbi__rewind( s ); return 0; } *comp = 4; return 1; } static int stbi__psd_is16(stbi__context *s) { int channelCount, depth; if (stbi__get32be(s) != 0x38425053) { stbi__rewind( s ); return 0; } if (stbi__get16be(s) != 1) { stbi__rewind( s ); return 0; } stbi__skip(s, 6); channelCount = stbi__get16be(s); if (channelCount < 0 || channelCount > 16) { stbi__rewind( s ); return 0; } STBI_NOTUSED(stbi__get32be(s)); STBI_NOTUSED(stbi__get32be(s)); depth = stbi__get16be(s); if (depth != 16) { stbi__rewind( s ); return 0; } return 1; } #endif #ifndef STBI_NO_PIC static int stbi__pic_info(stbi__context *s, int *x, int *y, int *comp) { int act_comp=0,num_packets=0,chained,dummy; stbi__pic_packet packets[10]; if (!x) x = &dummy; if (!y) y = &dummy; if (!comp) comp = &dummy; if (!stbi__pic_is4(s,"\x53\x80\xF6\x34")) { stbi__rewind(s); return 0; } stbi__skip(s, 88); *x = stbi__get16be(s); *y = stbi__get16be(s); if (stbi__at_eof(s)) { stbi__rewind( s); return 0; } if ( (*x) != 0 && (1 << 28) / (*x) < (*y)) { stbi__rewind( s ); return 0; } stbi__skip(s, 8); do { stbi__pic_packet *packet; if (num_packets==sizeof(packets)/sizeof(packets[0])) return 0; packet = &packets[num_packets++]; chained = stbi__get8(s); packet->size = stbi__get8(s); packet->type = stbi__get8(s); packet->channel = stbi__get8(s); act_comp |= packet->channel; if (stbi__at_eof(s)) { stbi__rewind( s ); return 0; } if (packet->size != 8) { stbi__rewind( s ); return 0; } } while (chained); *comp = (act_comp & 0x10 ? 4 : 3); return 1; } #endif // ************************************************************************************************* // Portable Gray Map and Portable Pixel Map loader // by Ken Miller // // PGM: http://netpbm.sourceforge.net/doc/pgm.html // PPM: http://netpbm.sourceforge.net/doc/ppm.html // // Known limitations: // Does not support comments in the header section // Does not support ASCII image data (formats P2 and P3) #ifndef STBI_NO_PNM static int stbi__pnm_test(stbi__context *s) { char p, t; p = (char) stbi__get8(s); t = (char) stbi__get8(s); if (p != 'P' || (t != '5' && t != '6')) { stbi__rewind( s ); return 0; } return 1; } static void *stbi__pnm_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri) { stbi_uc *out; STBI_NOTUSED(ri); ri->bits_per_channel = stbi__pnm_info(s, (int *)&s->img_x, (int *)&s->img_y, (int *)&s->img_n); if (ri->bits_per_channel == 0) return 0; if (s->img_y > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); if (s->img_x > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); *x = s->img_x; *y = s->img_y; if (comp) *comp = s->img_n; if (!stbi__mad4sizes_valid(s->img_n, s->img_x, s->img_y, ri->bits_per_channel / 8, 0)) return stbi__errpuc("too large", "PNM too large"); out = (stbi_uc *) stbi__malloc_mad4(s->img_n, s->img_x, s->img_y, ri->bits_per_channel / 8, 0); if (!out) return stbi__errpuc("outofmem", "Out of memory"); stbi__getn(s, out, s->img_n * s->img_x * s->img_y * (ri->bits_per_channel / 8)); if (req_comp && req_comp != s->img_n) { out = stbi__convert_format(out, s->img_n, req_comp, s->img_x, s->img_y); if (out == NULL) return out; // stbi__convert_format frees input on failure } return out; } static int stbi__pnm_isspace(char c) { return c == ' ' || c == '\t' || c == '\n' || c == '\v' || c == '\f' || c == '\r'; } static void stbi__pnm_skip_whitespace(stbi__context *s, char *c) { for (;;) { while (!stbi__at_eof(s) && stbi__pnm_isspace(*c)) *c = (char) stbi__get8(s); if (stbi__at_eof(s) || *c != '#') break; while (!stbi__at_eof(s) && *c != '\n' && *c != '\r' ) *c = (char) stbi__get8(s); } } static int stbi__pnm_isdigit(char c) { return c >= '0' && c <= '9'; } static int stbi__pnm_getinteger(stbi__context *s, char *c) { int value = 0; while (!stbi__at_eof(s) && stbi__pnm_isdigit(*c)) { value = value*10 + (*c - '0'); *c = (char) stbi__get8(s); } return value; } static int stbi__pnm_info(stbi__context *s, int *x, int *y, int *comp) { int maxv, dummy; char c, p, t; if (!x) x = &dummy; if (!y) y = &dummy; if (!comp) comp = &dummy; stbi__rewind(s); // Get identifier p = (char) stbi__get8(s); t = (char) stbi__get8(s); if (p != 'P' || (t != '5' && t != '6')) { stbi__rewind(s); return 0; } *comp = (t == '6') ? 3 : 1; // '5' is 1-component .pgm; '6' is 3-component .ppm c = (char) stbi__get8(s); stbi__pnm_skip_whitespace(s, &c); *x = stbi__pnm_getinteger(s, &c); // read width stbi__pnm_skip_whitespace(s, &c); *y = stbi__pnm_getinteger(s, &c); // read height stbi__pnm_skip_whitespace(s, &c); maxv = stbi__pnm_getinteger(s, &c); // read max value if (maxv > 65535) return stbi__err("max value > 65535", "PPM image supports only 8-bit and 16-bit images"); else if (maxv > 255) return 16; else return 8; } static int stbi__pnm_is16(stbi__context *s) { if (stbi__pnm_info(s, NULL, NULL, NULL) == 16) return 1; return 0; } #endif static int stbi__info_main(stbi__context *s, int *x, int *y, int *comp) { #ifndef STBI_NO_JPEG if (stbi__jpeg_info(s, x, y, comp)) return 1; #endif #ifndef STBI_NO_PNG if (stbi__png_info(s, x, y, comp)) return 1; #endif #ifndef STBI_NO_GIF if (stbi__gif_info(s, x, y, comp)) return 1; #endif #ifndef STBI_NO_BMP if (stbi__bmp_info(s, x, y, comp)) return 1; #endif #ifndef STBI_NO_PSD if (stbi__psd_info(s, x, y, comp)) return 1; #endif #ifndef STBI_NO_PIC if (stbi__pic_info(s, x, y, comp)) return 1; #endif #ifndef STBI_NO_PNM if (stbi__pnm_info(s, x, y, comp)) return 1; #endif #ifndef STBI_NO_HDR if (stbi__hdr_info(s, x, y, comp)) return 1; #endif // test tga last because it's a crappy test! #ifndef STBI_NO_TGA if (stbi__tga_info(s, x, y, comp)) return 1; #endif return stbi__err("unknown image type", "Image not of any known type, or corrupt"); } static int stbi__is_16_main(stbi__context *s) { #ifndef STBI_NO_PNG if (stbi__png_is16(s)) return 1; #endif #ifndef STBI_NO_PSD if (stbi__psd_is16(s)) return 1; #endif #ifndef STBI_NO_PNM if (stbi__pnm_is16(s)) return 1; #endif return 0; } #ifndef STBI_NO_STDIO STBIDEF int stbi_info(char const *filename, int *x, int *y, int *comp) { FILE *f = stbi__fopen(filename, "rb"); int result; if (!f) return stbi__err("can't fopen", "Unable to open file"); result = stbi_info_from_file(f, x, y, comp); fclose(f); return result; } STBIDEF int stbi_info_from_file(FILE *f, int *x, int *y, int *comp) { int r; stbi__context s; long pos = ftell(f); stbi__start_file(&s, f); r = stbi__info_main(&s,x,y,comp); fseek(f,pos,SEEK_SET); return r; } STBIDEF int stbi_is_16_bit(char const *filename) { FILE *f = stbi__fopen(filename, "rb"); int result; if (!f) return stbi__err("can't fopen", "Unable to open file"); result = stbi_is_16_bit_from_file(f); fclose(f); return result; } STBIDEF int stbi_is_16_bit_from_file(FILE *f) { int r; stbi__context s; long pos = ftell(f); stbi__start_file(&s, f); r = stbi__is_16_main(&s); fseek(f,pos,SEEK_SET); return r; } #endif // !STBI_NO_STDIO STBIDEF int stbi_info_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp) { stbi__context s; stbi__start_mem(&s,buffer,len); return stbi__info_main(&s,x,y,comp); } STBIDEF int stbi_info_from_callbacks(stbi_io_callbacks const *c, void *user, int *x, int *y, int *comp) { stbi__context s; stbi__start_callbacks(&s, (stbi_io_callbacks *) c, user); return stbi__info_main(&s,x,y,comp); } STBIDEF int stbi_is_16_bit_from_memory(stbi_uc const *buffer, int len) { stbi__context s; stbi__start_mem(&s,buffer,len); return stbi__is_16_main(&s); } STBIDEF int stbi_is_16_bit_from_callbacks(stbi_io_callbacks const *c, void *user) { stbi__context s; stbi__start_callbacks(&s, (stbi_io_callbacks *) c, user); return stbi__is_16_main(&s); } #endif // STB_IMAGE_IMPLEMENTATION /* revision history: 2.20 (2019-02-07) support utf8 filenames in Windows; fix warnings and platform ifdefs 2.19 (2018-02-11) fix warning 2.18 (2018-01-30) fix warnings 2.17 (2018-01-29) change sbti__shiftsigned to avoid clang -O2 bug 1-bit BMP *_is_16_bit api avoid warnings 2.16 (2017-07-23) all functions have 16-bit variants; STBI_NO_STDIO works again; compilation fixes; fix rounding in unpremultiply; optimize vertical flip; disable raw_len validation; documentation fixes 2.15 (2017-03-18) fix png-1,2,4 bug; now all Imagenet JPGs decode; warning fixes; disable run-time SSE detection on gcc; uniform handling of optional "return" values; thread-safe initialization of zlib tables 2.14 (2017-03-03) remove deprecated STBI_JPEG_OLD; fixes for Imagenet JPGs 2.13 (2016-11-29) add 16-bit API, only supported for PNG right now 2.12 (2016-04-02) fix typo in 2.11 PSD fix that caused crashes 2.11 (2016-04-02) allocate large structures on the stack remove white matting for transparent PSD fix reported channel count for PNG & BMP re-enable SSE2 in non-gcc 64-bit support RGB-formatted JPEG read 16-bit PNGs (only as 8-bit) 2.10 (2016-01-22) avoid warning introduced in 2.09 by STBI_REALLOC_SIZED 2.09 (2016-01-16) allow comments in PNM files 16-bit-per-pixel TGA (not bit-per-component) info() for TGA could break due to .hdr handling info() for BMP to shares code instead of sloppy parse can use STBI_REALLOC_SIZED if allocator doesn't support realloc code cleanup 2.08 (2015-09-13) fix to 2.07 cleanup, reading RGB PSD as RGBA 2.07 (2015-09-13) fix compiler warnings partial animated GIF support limited 16-bpc PSD support #ifdef unused functions bug with < 92 byte PIC,PNM,HDR,TGA 2.06 (2015-04-19) fix bug where PSD returns wrong '*comp' value 2.05 (2015-04-19) fix bug in progressive JPEG handling, fix warning 2.04 (2015-04-15) try to re-enable SIMD on MinGW 64-bit 2.03 (2015-04-12) extra corruption checking (mmozeiko) stbi_set_flip_vertically_on_load (nguillemot) fix NEON support; fix mingw support 2.02 (2015-01-19) fix incorrect assert, fix warning 2.01 (2015-01-17) fix various warnings; suppress SIMD on gcc 32-bit without -msse2 2.00b (2014-12-25) fix STBI_MALLOC in progressive JPEG 2.00 (2014-12-25) optimize JPG, including x86 SSE2 & NEON SIMD (ryg) progressive JPEG (stb) PGM/PPM support (Ken Miller) STBI_MALLOC,STBI_REALLOC,STBI_FREE GIF bugfix -- seemingly never worked STBI_NO_*, STBI_ONLY_* 1.48 (2014-12-14) fix incorrectly-named assert() 1.47 (2014-12-14) 1/2/4-bit PNG support, both direct and paletted (Omar Cornut & stb) optimize PNG (ryg) fix bug in interlaced PNG with user-specified channel count (stb) 1.46 (2014-08-26) fix broken tRNS chunk (colorkey-style transparency) in non-paletted PNG 1.45 (2014-08-16) fix MSVC-ARM internal compiler error by wrapping malloc 1.44 (2014-08-07) various warning fixes from Ronny Chevalier 1.43 (2014-07-15) fix MSVC-only compiler problem in code changed in 1.42 1.42 (2014-07-09) don't define _CRT_SECURE_NO_WARNINGS (affects user code) fixes to stbi__cleanup_jpeg path added STBI_ASSERT to avoid requiring assert.h 1.41 (2014-06-25) fix search&replace from 1.36 that messed up comments/error messages 1.40 (2014-06-22) fix gcc struct-initialization warning 1.39 (2014-06-15) fix to TGA optimization when req_comp != number of components in TGA; fix to GIF loading because BMP wasn't rewinding (whoops, no GIFs in my test suite) add support for BMP version 5 (more ignored fields) 1.38 (2014-06-06) suppress MSVC warnings on integer casts truncating values fix accidental rename of 'skip' field of I/O 1.37 (2014-06-04) remove duplicate typedef 1.36 (2014-06-03) convert to header file single-file library if de-iphone isn't set, load iphone images color-swapped instead of returning NULL 1.35 (2014-05-27) various warnings fix broken STBI_SIMD path fix bug where stbi_load_from_file no longer left file pointer in correct place fix broken non-easy path for 32-bit BMP (possibly never used) TGA optimization by Arseny Kapoulkine 1.34 (unknown) use STBI_NOTUSED in stbi__resample_row_generic(), fix one more leak in tga failure case 1.33 (2011-07-14) make stbi_is_hdr work in STBI_NO_HDR (as specified), minor compiler-friendly improvements 1.32 (2011-07-13) support for "info" function for all supported filetypes (SpartanJ) 1.31 (2011-06-20) a few more leak fixes, bug in PNG handling (SpartanJ) 1.30 (2011-06-11) added ability to load files via callbacks to accomidate custom input streams (Ben Wenger) removed deprecated format-specific test/load functions removed support for installable file formats (stbi_loader) -- would have been broken for IO callbacks anyway error cases in bmp and tga give messages and don't leak (Raymond Barbiero, grisha) fix inefficiency in decoding 32-bit BMP (David Woo) 1.29 (2010-08-16) various warning fixes from Aurelien Pocheville 1.28 (2010-08-01) fix bug in GIF palette transparency (SpartanJ) 1.27 (2010-08-01) cast-to-stbi_uc to fix warnings 1.26 (2010-07-24) fix bug in file buffering for PNG reported by SpartanJ 1.25 (2010-07-17) refix trans_data warning (Won Chun) 1.24 (2010-07-12) perf improvements reading from files on platforms with lock-heavy fgetc() minor perf improvements for jpeg deprecated type-specific functions so we'll get feedback if they're needed attempt to fix trans_data warning (Won Chun) 1.23 fixed bug in iPhone support 1.22 (2010-07-10) removed image *writing* support stbi_info support from Jetro Lauha GIF support from Jean-Marc Lienher iPhone PNG-extensions from James Brown warning-fixes from Nicolas Schulz and Janez Zemva (i.stbi__err. Janez (U+017D)emva) 1.21 fix use of 'stbi_uc' in header (reported by jon blow) 1.20 added support for Softimage PIC, by Tom Seddon 1.19 bug in interlaced PNG corruption check (found by ryg) 1.18 (2008-08-02) fix a threading bug (local mutable static) 1.17 support interlaced PNG 1.16 major bugfix - stbi__convert_format converted one too many pixels 1.15 initialize some fields for thread safety 1.14 fix threadsafe conversion bug header-file-only version (#define STBI_HEADER_FILE_ONLY before including) 1.13 threadsafe 1.12 const qualifiers in the API 1.11 Support installable IDCT, colorspace conversion routines 1.10 Fixes for 64-bit (don't use "unsigned long") optimized upsampling by Fabian "ryg" Giesen 1.09 Fix format-conversion for PSD code (bad global variables!) 1.08 Thatcher Ulrich's PSD code integrated by Nicolas Schulz 1.07 attempt to fix C++ warning/errors again 1.06 attempt to fix C++ warning/errors again 1.05 fix TGA loading to return correct *comp and use good luminance calc 1.04 default float alpha is 1, not 255; use 'void *' for stbi_image_free 1.03 bugfixes to STBI_NO_STDIO, STBI_NO_HDR 1.02 support for (subset of) HDR files, float interface for preferred access to them 1.01 fix bug: possible bug in handling right-side up bmps... not sure fix bug: the stbi__bmp_load() and stbi__tga_load() functions didn't work at all 1.00 interface to zlib that skips zlib header 0.99 correct handling of alpha in palette 0.98 TGA loader by lonesock; dynamically add loaders (untested) 0.97 jpeg errors on too large a file; also catch another malloc failure 0.96 fix detection of invalid v value - particleman@mollyrocket forum 0.95 during header scan, seek to markers in case of padding 0.94 STBI_NO_STDIO to disable stdio usage; rename all #defines the same 0.93 handle jpegtran output; verbose errors 0.92 read 4,8,16,24,32-bit BMP files of several formats 0.91 output 24-bit Windows 3.0 BMP files 0.90 fix a few more warnings; bump version number to approach 1.0 0.61 bugfixes due to Marc LeBlanc, Christopher Lloyd 0.60 fix compiling as c++ 0.59 fix warnings: merge Dave Moore's -Wall fixes 0.58 fix bug: zlib uncompressed mode len/nlen was wrong endian 0.57 fix bug: jpg last huffman symbol before marker was >9 bits but less than 16 available 0.56 fix bug: zlib uncompressed mode len vs. nlen 0.55 fix bug: restart_interval not initialized to 0 0.54 allow NULL for 'int *comp' 0.53 fix bug in png 3->4; speedup png decoding 0.52 png handles req_comp=3,4 directly; minor cleanup; jpeg comments 0.51 obey req_comp requests, 1-component jpegs return as 1-component, on 'test' only check type, not whether we support this variant 0.50 (2006-11-19) first released version */ /* ------------------------------------------------------------------------------ This software is available under 2 licenses -- choose whichever you prefer. ------------------------------------------------------------------------------ ALTERNATIVE A - MIT License Copyright (c) 2017 Sean Barrett Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ------------------------------------------------------------------------------ ALTERNATIVE B - Public Domain (www.unlicense.org) This is free and unencumbered software released into the public domain. Anyone is free to copy, modify, publish, use, compile, sell, or distribute this software, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means. In jurisdictions that recognize copyright laws, the author or authors of this software dedicate any and all copyright interest in the software to the public domain. We make this dedication for the benefit of the public at large and to the detriment of our heirs and successors. We intend this dedication to be an overt act of relinquishment in perpetuity of all present and future rights to this software under copyright law. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ------------------------------------------------------------------------------ */ ================================================ FILE: include/version.h ================================================ #define YEAR "2026" // Copyright year #define VERSION "1.44a" // Version string #define VER_RES 1,44,1,00 // For VERSIONINFO resource #define DEFAULT_RAM PAGE_OFFSET+0x2000000 // Initial amount of RAM to allocate #if defined __EMSCRIPTEN__ #define MAXIMUM_RAM 0x03000000 // Maximum amount of RAM to allocate #elif UINTPTR_MAX == UINT32_MAX #define MAXIMUM_RAM 0x10000000 // Maximum amount of RAM to allocate #else #define MAXIMUM_RAM 0x100000000LL // Maximum amount of RAM to allocate #endif ================================================ FILE: include/zconf.h ================================================ /* zconf.h -- configuration of the zlib compression library * Copyright (C) 1995-2016 Jean-loup Gailly, Mark Adler * For conditions of distribution and use, see copyright notice in zlib.h */ /* @(#) $Id$ */ #ifndef ZCONF_H #define ZCONF_H /* * If you *really* need a unique prefix for all types and library functions, * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. * Even better than compiling with -DZ_PREFIX would be to use configure to set * this permanently in zconf.h using "./configure --zprefix". */ #ifdef Z_PREFIX /* may be set to #if 1 by ./configure */ # define Z_PREFIX_SET /* all linked symbols and init macros */ # define _dist_code z__dist_code # define _length_code z__length_code # define _tr_align z__tr_align # define _tr_flush_bits z__tr_flush_bits # define _tr_flush_block z__tr_flush_block # define _tr_init z__tr_init # define _tr_stored_block z__tr_stored_block # define _tr_tally z__tr_tally # define adler32 z_adler32 # define adler32_combine z_adler32_combine # define adler32_combine64 z_adler32_combine64 # define adler32_z z_adler32_z # ifndef Z_SOLO # define compress z_compress # define compress2 z_compress2 # define compressBound z_compressBound # endif # define crc32 z_crc32 # define crc32_combine z_crc32_combine # define crc32_combine64 z_crc32_combine64 # define crc32_z z_crc32_z # define deflate z_deflate # define deflateBound z_deflateBound # define deflateCopy z_deflateCopy # define deflateEnd z_deflateEnd # define deflateGetDictionary z_deflateGetDictionary # define deflateInit z_deflateInit # define deflateInit2 z_deflateInit2 # define deflateInit2_ z_deflateInit2_ # define deflateInit_ z_deflateInit_ # define deflateParams z_deflateParams # define deflatePending z_deflatePending # define deflatePrime z_deflatePrime # define deflateReset z_deflateReset # define deflateResetKeep z_deflateResetKeep # define deflateSetDictionary z_deflateSetDictionary # define deflateSetHeader z_deflateSetHeader # define deflateTune z_deflateTune # define deflate_copyright z_deflate_copyright # define get_crc_table z_get_crc_table # ifndef Z_SOLO # define gz_error z_gz_error # define gz_intmax z_gz_intmax # define gz_strwinerror z_gz_strwinerror # define gzbuffer z_gzbuffer # define gzclearerr z_gzclearerr # define gzclose z_gzclose # define gzclose_r z_gzclose_r # define gzclose_w z_gzclose_w # define gzdirect z_gzdirect # define gzdopen z_gzdopen # define gzeof z_gzeof # define gzerror z_gzerror # define gzflush z_gzflush # define gzfread z_gzfread # define gzfwrite z_gzfwrite # define gzgetc z_gzgetc # define gzgetc_ z_gzgetc_ # define gzgets z_gzgets # define gzoffset z_gzoffset # define gzoffset64 z_gzoffset64 # define gzopen z_gzopen # define gzopen64 z_gzopen64 # ifdef _WIN32 # define gzopen_w z_gzopen_w # endif # define gzprintf z_gzprintf # define gzputc z_gzputc # define gzputs z_gzputs # define gzread z_gzread # define gzrewind z_gzrewind # define gzseek z_gzseek # define gzseek64 z_gzseek64 # define gzsetparams z_gzsetparams # define gztell z_gztell # define gztell64 z_gztell64 # define gzungetc z_gzungetc # define gzvprintf z_gzvprintf # define gzwrite z_gzwrite # endif # define inflate z_inflate # define inflateBack z_inflateBack # define inflateBackEnd z_inflateBackEnd # define inflateBackInit z_inflateBackInit # define inflateBackInit_ z_inflateBackInit_ # define inflateCodesUsed z_inflateCodesUsed # define inflateCopy z_inflateCopy # define inflateEnd z_inflateEnd # define inflateGetDictionary z_inflateGetDictionary # define inflateGetHeader z_inflateGetHeader # define inflateInit z_inflateInit # define inflateInit2 z_inflateInit2 # define inflateInit2_ z_inflateInit2_ # define inflateInit_ z_inflateInit_ # define inflateMark z_inflateMark # define inflatePrime z_inflatePrime # define inflateReset z_inflateReset # define inflateReset2 z_inflateReset2 # define inflateResetKeep z_inflateResetKeep # define inflateSetDictionary z_inflateSetDictionary # define inflateSync z_inflateSync # define inflateSyncPoint z_inflateSyncPoint # define inflateUndermine z_inflateUndermine # define inflateValidate z_inflateValidate # define inflate_copyright z_inflate_copyright # define inflate_fast z_inflate_fast # define inflate_table z_inflate_table # ifndef Z_SOLO # define uncompress z_uncompress # define uncompress2 z_uncompress2 # endif # define zError z_zError # ifndef Z_SOLO # define zcalloc z_zcalloc # define zcfree z_zcfree # endif # define zlibCompileFlags z_zlibCompileFlags # define zlibVersion z_zlibVersion /* all zlib typedefs in zlib.h and zconf.h */ # define Byte z_Byte # define Bytef z_Bytef # define alloc_func z_alloc_func # define charf z_charf # define free_func z_free_func # ifndef Z_SOLO # define gzFile z_gzFile # endif # define gz_header z_gz_header # define gz_headerp z_gz_headerp # define in_func z_in_func # define intf z_intf # define out_func z_out_func # define uInt z_uInt # define uIntf z_uIntf # define uLong z_uLong # define uLongf z_uLongf # define voidp z_voidp # define voidpc z_voidpc # define voidpf z_voidpf /* all zlib structs in zlib.h and zconf.h */ # define gz_header_s z_gz_header_s # define internal_state z_internal_state #endif #if defined(__MSDOS__) && !defined(MSDOS) # define MSDOS #endif #if (defined(OS_2) || defined(__OS2__)) && !defined(OS2) # define OS2 #endif #if defined(_WINDOWS) && !defined(WINDOWS) # define WINDOWS #endif #if defined(_WIN32) || defined(_WIN32_WCE) || defined(__WIN32__) # ifndef WIN32 # define WIN32 # endif #endif #if (defined(MSDOS) || defined(OS2) || defined(WINDOWS)) && !defined(WIN32) # if !defined(__GNUC__) && !defined(__FLAT__) && !defined(__386__) # ifndef SYS16BIT # define SYS16BIT # endif # endif #endif /* * Compile with -DMAXSEG_64K if the alloc function cannot allocate more * than 64k bytes at a time (needed on systems with 16-bit int). */ #ifdef SYS16BIT # define MAXSEG_64K #endif #ifdef MSDOS # define UNALIGNED_OK #endif #ifdef __STDC_VERSION__ # ifndef STDC # define STDC # endif # if __STDC_VERSION__ >= 199901L # ifndef STDC99 # define STDC99 # endif # endif #endif #if !defined(STDC) && (defined(__STDC__) || defined(__cplusplus)) # define STDC #endif #if !defined(STDC) && (defined(__GNUC__) || defined(__BORLANDC__)) # define STDC #endif #if !defined(STDC) && (defined(MSDOS) || defined(WINDOWS) || defined(WIN32)) # define STDC #endif #if !defined(STDC) && (defined(OS2) || defined(__HOS_AIX__)) # define STDC #endif #if defined(__OS400__) && !defined(STDC) /* iSeries (formerly AS/400). */ # define STDC #endif #ifndef STDC # ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */ # define const /* note: need a more gentle solution here */ # endif #endif #if defined(ZLIB_CONST) && !defined(z_const) # define z_const const #else # define z_const #endif #ifdef Z_SOLO typedef unsigned long z_size_t; #else # define z_longlong long long # if defined(NO_SIZE_T) typedef unsigned NO_SIZE_T z_size_t; # elif defined(STDC) # include typedef size_t z_size_t; # else typedef unsigned long z_size_t; # endif # undef z_longlong #endif /* Maximum value for memLevel in deflateInit2 */ #ifndef MAX_MEM_LEVEL # ifdef MAXSEG_64K # define MAX_MEM_LEVEL 8 # else # define MAX_MEM_LEVEL 9 # endif #endif /* Maximum value for windowBits in deflateInit2 and inflateInit2. * WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files * created by gzip. (Files created by minigzip can still be extracted by * gzip.) */ #ifndef MAX_WBITS # define MAX_WBITS 15 /* 32K LZ77 window */ #endif /* The memory requirements for deflate are (in bytes): (1 << (windowBits+2)) + (1 << (memLevel+9)) that is: 128K for windowBits=15 + 128K for memLevel = 8 (default values) plus a few kilobytes for small objects. For example, if you want to reduce the default memory requirements from 256K to 128K, compile with make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7" Of course this will generally degrade compression (there's no free lunch). The memory requirements for inflate are (in bytes) 1 << windowBits that is, 32K for windowBits=15 (default value) plus about 7 kilobytes for small objects. */ /* Type declarations */ #ifndef OF /* function prototypes */ # ifdef STDC # define OF(args) args # else # define OF(args) () # endif #endif #ifndef Z_ARG /* function prototypes for stdarg */ # if defined(STDC) || defined(Z_HAVE_STDARG_H) # define Z_ARG(args) args # else # define Z_ARG(args) () # endif #endif /* The following definitions for FAR are needed only for MSDOS mixed * model programming (small or medium model with some far allocations). * This was tested only with MSC; for other MSDOS compilers you may have * to define NO_MEMCPY in zutil.h. If you don't need the mixed model, * just define FAR to be empty. */ #ifdef SYS16BIT # if defined(M_I86SM) || defined(M_I86MM) /* MSC small or medium model */ # define SMALL_MEDIUM # ifdef _MSC_VER # define FAR _far # else # define FAR far # endif # endif # if (defined(__SMALL__) || defined(__MEDIUM__)) /* Turbo C small or medium model */ # define SMALL_MEDIUM # ifdef __BORLANDC__ # define FAR _far # else # define FAR far # endif # endif #endif #if defined(WINDOWS) || defined(WIN32) /* If building or using zlib as a DLL, define ZLIB_DLL. * This is not mandatory, but it offers a little performance increase. */ # ifdef ZLIB_DLL # if defined(WIN32) && (!defined(__BORLANDC__) || (__BORLANDC__ >= 0x500)) # ifdef ZLIB_INTERNAL # define ZEXTERN extern __declspec(dllexport) # else # define ZEXTERN extern __declspec(dllimport) # endif # endif # endif /* ZLIB_DLL */ /* If building or using zlib with the WINAPI/WINAPIV calling convention, * define ZLIB_WINAPI. * Caution: the standard ZLIB1.DLL is NOT compiled using ZLIB_WINAPI. */ # ifdef ZLIB_WINAPI # ifdef FAR # undef FAR # endif # include /* No need for _export, use ZLIB.DEF instead. */ /* For complete Windows compatibility, use WINAPI, not __stdcall. */ # define ZEXPORT WINAPI # ifdef WIN32 # define ZEXPORTVA WINAPIV # else # define ZEXPORTVA FAR CDECL # endif # endif #endif #if defined (__BEOS__) # ifdef ZLIB_DLL # ifdef ZLIB_INTERNAL # define ZEXPORT __declspec(dllexport) # define ZEXPORTVA __declspec(dllexport) # else # define ZEXPORT __declspec(dllimport) # define ZEXPORTVA __declspec(dllimport) # endif # endif #endif #ifndef ZEXTERN # define ZEXTERN extern #endif #ifndef ZEXPORT # define ZEXPORT #endif #ifndef ZEXPORTVA # define ZEXPORTVA #endif #ifndef FAR # define FAR #endif #if !defined(__MACTYPES__) typedef unsigned char Byte; /* 8 bits */ #endif typedef unsigned int uInt; /* 16 bits or more */ typedef unsigned long uLong; /* 32 bits or more */ #ifdef SMALL_MEDIUM /* Borland C/C++ and some old MSC versions ignore FAR inside typedef */ # define Bytef Byte FAR #else typedef Byte FAR Bytef; #endif typedef char FAR charf; typedef int FAR intf; typedef uInt FAR uIntf; typedef uLong FAR uLongf; #ifdef STDC typedef void const *voidpc; typedef void FAR *voidpf; typedef void *voidp; #else typedef Byte const *voidpc; typedef Byte FAR *voidpf; typedef Byte *voidp; #endif #if !defined(Z_U4) && !defined(Z_SOLO) && defined(STDC) # include # if (UINT_MAX == 0xffffffffUL) # define Z_U4 unsigned # elif (ULONG_MAX == 0xffffffffUL) # define Z_U4 unsigned long # elif (USHRT_MAX == 0xffffffffUL) # define Z_U4 unsigned short # endif #endif #ifdef Z_U4 typedef Z_U4 z_crc_t; #else typedef unsigned long z_crc_t; #endif #if 1 /* was set to #if 1 by ./configure */ # define Z_HAVE_UNISTD_H #endif #if 1 /* was set to #if 1 by ./configure */ # define Z_HAVE_STDARG_H #endif #ifdef STDC # ifndef Z_SOLO # include /* for off_t */ # endif #endif #if defined(STDC) || defined(Z_HAVE_STDARG_H) # ifndef Z_SOLO # include /* for va_list */ # endif #endif #ifdef _WIN32 # ifndef Z_SOLO # include /* for wchar_t */ # endif #endif /* a little trick to accommodate both "#define _LARGEFILE64_SOURCE" and * "#define _LARGEFILE64_SOURCE 1" as requesting 64-bit operations, (even * though the former does not conform to the LFS document), but considering * both "#undef _LARGEFILE64_SOURCE" and "#define _LARGEFILE64_SOURCE 0" as * equivalently requesting no 64-bit operations */ #if defined(_LARGEFILE64_SOURCE) && -_LARGEFILE64_SOURCE - -1 == 1 # undef _LARGEFILE64_SOURCE #endif #if defined(__WATCOMC__) && !defined(Z_HAVE_UNISTD_H) # define Z_HAVE_UNISTD_H #endif #ifndef Z_SOLO # if defined(Z_HAVE_UNISTD_H) || defined(_LARGEFILE64_SOURCE) # include /* for SEEK_*, off_t, and _LFS64_LARGEFILE */ # ifdef VMS # include /* for off_t */ # endif # ifndef z_off_t # define z_off_t off_t # endif # endif #endif #if defined(_LFS64_LARGEFILE) && _LFS64_LARGEFILE-0 # define Z_LFS64 #endif #if defined(_LARGEFILE64_SOURCE) && defined(Z_LFS64) # define Z_LARGE64 #endif #if defined(_FILE_OFFSET_BITS) && _FILE_OFFSET_BITS-0 == 64 && defined(Z_LFS64) # define Z_WANT64 #endif #if !defined(SEEK_SET) && !defined(Z_SOLO) # define SEEK_SET 0 /* Seek from beginning of file. */ # define SEEK_CUR 1 /* Seek from current position. */ # define SEEK_END 2 /* Set file pointer to EOF plus "offset" */ #endif #ifndef z_off_t # define z_off_t long #endif #if (defined(_WIN32) && defined(__GNUC__) && defined(_LARGEFILE64_SOURCE)) || defined(Z_LARGE64) # define z_off64_t off64_t #else # if defined(_WIN32) && !defined(__GNUC__) && !defined(Z_SOLO) # define z_off64_t __int64 # else # define z_off64_t z_off_t # endif #endif /* MVS linker does not support external names larger than 8 bytes */ #if defined(__MVS__) #pragma map(deflateInit_,"DEIN") #pragma map(deflateInit2_,"DEIN2") #pragma map(deflateEnd,"DEEND") #pragma map(deflateBound,"DEBND") #pragma map(inflateInit_,"ININ") #pragma map(inflateInit2_,"ININ2") #pragma map(inflateEnd,"INEND") #pragma map(inflateSync,"INSY") #pragma map(inflateSetDictionary,"INSEDI") #pragma map(compressBound,"CMBND") #pragma map(inflate_table,"INTABL") #pragma map(inflate_fast,"INFA") #pragma map(inflate_copyright,"INCOPY") #endif #endif /* ZCONF_H */ ================================================ FILE: include/zlib.h ================================================ /* zlib.h -- interface of the 'zlib' general purpose compression library version 1.2.11, January 15th, 2017 Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. Jean-loup Gailly Mark Adler jloup@gzip.org madler@alumni.caltech.edu The data format used by the zlib library is described by RFCs (Request for Comments) 1950 to 1952 in the files http://tools.ietf.org/html/rfc1950 (zlib format), rfc1951 (deflate format) and rfc1952 (gzip format). */ #ifndef ZLIB_H #define ZLIB_H #include "zconf.h" #ifdef __cplusplus extern "C" { #endif #define ZLIB_VERSION "1.2.11" #define ZLIB_VERNUM 0x12b0 #define ZLIB_VER_MAJOR 1 #define ZLIB_VER_MINOR 2 #define ZLIB_VER_REVISION 11 #define ZLIB_VER_SUBREVISION 0 /* The 'zlib' compression library provides in-memory compression and decompression functions, including integrity checks of the uncompressed data. This version of the library supports only one compression method (deflation) but other algorithms will be added later and will have the same stream interface. Compression can be done in a single step if the buffers are large enough, or can be done by repeated calls of the compression function. In the latter case, the application must provide more input and/or consume the output (providing more output space) before each call. The compressed data format used by default by the in-memory functions is the zlib format, which is a zlib wrapper documented in RFC 1950, wrapped around a deflate stream, which is itself documented in RFC 1951. The library also supports reading and writing files in gzip (.gz) format with an interface similar to that of stdio using the functions that start with "gz". The gzip format is different from the zlib format. gzip is a gzip wrapper, documented in RFC 1952, wrapped around a deflate stream. This library can optionally read and write gzip and raw deflate streams in memory as well. The zlib format was designed to be compact and fast for use in memory and on communications channels. The gzip format was designed for single- file compression on file systems, has a larger header than zlib to maintain directory information, and uses a different, slower check method than zlib. The library does not install any signal handler. The decoder checks the consistency of the compressed data, so the library should never crash even in the case of corrupted input. */ typedef voidpf (*alloc_func) OF((voidpf opaque, uInt items, uInt size)); typedef void (*free_func) OF((voidpf opaque, voidpf address)); struct internal_state; typedef struct z_stream_s { z_const Bytef *next_in; /* next input byte */ uInt avail_in; /* number of bytes available at next_in */ uLong total_in; /* total number of input bytes read so far */ Bytef *next_out; /* next output byte will go here */ uInt avail_out; /* remaining free space at next_out */ uLong total_out; /* total number of bytes output so far */ z_const char *msg; /* last error message, NULL if no error */ struct internal_state FAR *state; /* not visible by applications */ alloc_func zalloc; /* used to allocate the internal state */ free_func zfree; /* used to free the internal state */ voidpf opaque; /* private data object passed to zalloc and zfree */ int data_type; /* best guess about the data type: binary or text for deflate, or the decoding state for inflate */ uLong adler; /* Adler-32 or CRC-32 value of the uncompressed data */ uLong reserved; /* reserved for future use */ } z_stream; typedef z_stream FAR *z_streamp; /* gzip header information passed to and from zlib routines. See RFC 1952 for more details on the meanings of these fields. */ typedef struct gz_header_s { int text; /* true if compressed data believed to be text */ uLong time; /* modification time */ int xflags; /* extra flags (not used when writing a gzip file) */ int os; /* operating system */ Bytef *extra; /* pointer to extra field or Z_NULL if none */ uInt extra_len; /* extra field length (valid if extra != Z_NULL) */ uInt extra_max; /* space at extra (only when reading header) */ Bytef *name; /* pointer to zero-terminated file name or Z_NULL */ uInt name_max; /* space at name (only when reading header) */ Bytef *comment; /* pointer to zero-terminated comment or Z_NULL */ uInt comm_max; /* space at comment (only when reading header) */ int hcrc; /* true if there was or will be a header crc */ int done; /* true when done reading gzip header (not used when writing a gzip file) */ } gz_header; typedef gz_header FAR *gz_headerp; /* The application must update next_in and avail_in when avail_in has dropped to zero. It must update next_out and avail_out when avail_out has dropped to zero. The application must initialize zalloc, zfree and opaque before calling the init function. All other fields are set by the compression library and must not be updated by the application. The opaque value provided by the application will be passed as the first parameter for calls of zalloc and zfree. This can be useful for custom memory management. The compression library attaches no meaning to the opaque value. zalloc must return Z_NULL if there is not enough memory for the object. If zlib is used in a multi-threaded application, zalloc and zfree must be thread safe. In that case, zlib is thread-safe. When zalloc and zfree are Z_NULL on entry to the initialization function, they are set to internal routines that use the standard library functions malloc() and free(). On 16-bit systems, the functions zalloc and zfree must be able to allocate exactly 65536 bytes, but will not be required to allocate more than this if the symbol MAXSEG_64K is defined (see zconf.h). WARNING: On MSDOS, pointers returned by zalloc for objects of exactly 65536 bytes *must* have their offset normalized to zero. The default allocation function provided by this library ensures this (see zutil.c). To reduce memory requirements and avoid any allocation of 64K objects, at the expense of compression ratio, compile the library with -DMAX_WBITS=14 (see zconf.h). The fields total_in and total_out can be used for statistics or progress reports. After compression, total_in holds the total size of the uncompressed data and may be saved for use by the decompressor (particularly if the decompressor wants to decompress everything in a single step). */ /* constants */ #define Z_NO_FLUSH 0 #define Z_PARTIAL_FLUSH 1 #define Z_SYNC_FLUSH 2 #define Z_FULL_FLUSH 3 #define Z_FINISH 4 #define Z_BLOCK 5 #define Z_TREES 6 /* Allowed flush values; see deflate() and inflate() below for details */ #define Z_OK 0 #define Z_STREAM_END 1 #define Z_NEED_DICT 2 #define Z_ERRNO (-1) #define Z_STREAM_ERROR (-2) #define Z_DATA_ERROR (-3) #define Z_MEM_ERROR (-4) #define Z_BUF_ERROR (-5) #define Z_VERSION_ERROR (-6) /* Return codes for the compression/decompression functions. Negative values * are errors, positive values are used for special but normal events. */ #define Z_NO_COMPRESSION 0 #define Z_BEST_SPEED 1 #define Z_BEST_COMPRESSION 9 #define Z_DEFAULT_COMPRESSION (-1) /* compression levels */ #define Z_FILTERED 1 #define Z_HUFFMAN_ONLY 2 #define Z_RLE 3 #define Z_FIXED 4 #define Z_DEFAULT_STRATEGY 0 /* compression strategy; see deflateInit2() below for details */ #define Z_BINARY 0 #define Z_TEXT 1 #define Z_ASCII Z_TEXT /* for compatibility with 1.2.2 and earlier */ #define Z_UNKNOWN 2 /* Possible values of the data_type field for deflate() */ #define Z_DEFLATED 8 /* The deflate compression method (the only one supported in this version) */ #define Z_NULL 0 /* for initializing zalloc, zfree, opaque */ #define zlib_version zlibVersion() /* for compatibility with versions < 1.0.2 */ /* basic functions */ ZEXTERN const char * ZEXPORT zlibVersion OF((void)); /* The application can compare zlibVersion and ZLIB_VERSION for consistency. If the first character differs, the library code actually used is not compatible with the zlib.h header file used by the application. This check is automatically made by deflateInit and inflateInit. */ /* ZEXTERN int ZEXPORT deflateInit OF((z_streamp strm, int level)); Initializes the internal stream state for compression. The fields zalloc, zfree and opaque must be initialized before by the caller. If zalloc and zfree are set to Z_NULL, deflateInit updates them to use default allocation functions. The compression level must be Z_DEFAULT_COMPRESSION, or between 0 and 9: 1 gives best speed, 9 gives best compression, 0 gives no compression at all (the input data is simply copied a block at a time). Z_DEFAULT_COMPRESSION requests a default compromise between speed and compression (currently equivalent to level 6). deflateInit returns Z_OK if success, Z_MEM_ERROR if there was not enough memory, Z_STREAM_ERROR if level is not a valid compression level, or Z_VERSION_ERROR if the zlib library version (zlib_version) is incompatible with the version assumed by the caller (ZLIB_VERSION). msg is set to null if there is no error message. deflateInit does not perform any compression: this will be done by deflate(). */ ZEXTERN int ZEXPORT deflate OF((z_streamp strm, int flush)); /* deflate compresses as much data as possible, and stops when the input buffer becomes empty or the output buffer becomes full. It may introduce some output latency (reading input without producing any output) except when forced to flush. The detailed semantics are as follows. deflate performs one or both of the following actions: - Compress more input starting at next_in and update next_in and avail_in accordingly. If not all input can be processed (because there is not enough room in the output buffer), next_in and avail_in are updated and processing will resume at this point for the next call of deflate(). - Generate more output starting at next_out and update next_out and avail_out accordingly. This action is forced if the parameter flush is non zero. Forcing flush frequently degrades the compression ratio, so this parameter should be set only when necessary. Some output may be provided even if flush is zero. Before the call of deflate(), the application should ensure that at least one of the actions is possible, by providing more input and/or consuming more output, and updating avail_in or avail_out accordingly; avail_out should never be zero before the call. The application can consume the compressed output when it wants, for example when the output buffer is full (avail_out == 0), or after each call of deflate(). If deflate returns Z_OK and with zero avail_out, it must be called again after making room in the output buffer because there might be more output pending. See deflatePending(), which can be used if desired to determine whether or not there is more ouput in that case. Normally the parameter flush is set to Z_NO_FLUSH, which allows deflate to decide how much data to accumulate before producing output, in order to maximize compression. If the parameter flush is set to Z_SYNC_FLUSH, all pending output is flushed to the output buffer and the output is aligned on a byte boundary, so that the decompressor can get all input data available so far. (In particular avail_in is zero after the call if enough output space has been provided before the call.) Flushing may degrade compression for some compression algorithms and so it should be used only when necessary. This completes the current deflate block and follows it with an empty stored block that is three bits plus filler bits to the next byte, followed by four bytes (00 00 ff ff). If flush is set to Z_PARTIAL_FLUSH, all pending output is flushed to the output buffer, but the output is not aligned to a byte boundary. All of the input data so far will be available to the decompressor, as for Z_SYNC_FLUSH. This completes the current deflate block and follows it with an empty fixed codes block that is 10 bits long. This assures that enough bytes are output in order for the decompressor to finish the block before the empty fixed codes block. If flush is set to Z_BLOCK, a deflate block is completed and emitted, as for Z_SYNC_FLUSH, but the output is not aligned on a byte boundary, and up to seven bits of the current block are held to be written as the next byte after the next deflate block is completed. In this case, the decompressor may not be provided enough bits at this point in order to complete decompression of the data provided so far to the compressor. It may need to wait for the next block to be emitted. This is for advanced applications that need to control the emission of deflate blocks. If flush is set to Z_FULL_FLUSH, all output is flushed as with Z_SYNC_FLUSH, and the compression state is reset so that decompression can restart from this point if previous compressed data has been damaged or if random access is desired. Using Z_FULL_FLUSH too often can seriously degrade compression. If deflate returns with avail_out == 0, this function must be called again with the same value of the flush parameter and more output space (updated avail_out), until the flush is complete (deflate returns with non-zero avail_out). In the case of a Z_FULL_FLUSH or Z_SYNC_FLUSH, make sure that avail_out is greater than six to avoid repeated flush markers due to avail_out == 0 on return. If the parameter flush is set to Z_FINISH, pending input is processed, pending output is flushed and deflate returns with Z_STREAM_END if there was enough output space. If deflate returns with Z_OK or Z_BUF_ERROR, this function must be called again with Z_FINISH and more output space (updated avail_out) but no more input data, until it returns with Z_STREAM_END or an error. After deflate has returned Z_STREAM_END, the only possible operations on the stream are deflateReset or deflateEnd. Z_FINISH can be used in the first deflate call after deflateInit if all the compression is to be done in a single step. In order to complete in one call, avail_out must be at least the value returned by deflateBound (see below). Then deflate is guaranteed to return Z_STREAM_END. If not enough output space is provided, deflate will not return Z_STREAM_END, and it must be called again as described above. deflate() sets strm->adler to the Adler-32 checksum of all input read so far (that is, total_in bytes). If a gzip stream is being generated, then strm->adler will be the CRC-32 checksum of the input read so far. (See deflateInit2 below.) deflate() may update strm->data_type if it can make a good guess about the input data type (Z_BINARY or Z_TEXT). If in doubt, the data is considered binary. This field is only for information purposes and does not affect the compression algorithm in any manner. deflate() returns Z_OK if some progress has been made (more input processed or more output produced), Z_STREAM_END if all input has been consumed and all output has been produced (only when flush is set to Z_FINISH), Z_STREAM_ERROR if the stream state was inconsistent (for example if next_in or next_out was Z_NULL or the state was inadvertently written over by the application), or Z_BUF_ERROR if no progress is possible (for example avail_in or avail_out was zero). Note that Z_BUF_ERROR is not fatal, and deflate() can be called again with more input and more output space to continue compressing. */ ZEXTERN int ZEXPORT deflateEnd OF((z_streamp strm)); /* All dynamically allocated data structures for this stream are freed. This function discards any unprocessed input and does not flush any pending output. deflateEnd returns Z_OK if success, Z_STREAM_ERROR if the stream state was inconsistent, Z_DATA_ERROR if the stream was freed prematurely (some input or output was discarded). In the error case, msg may be set but then points to a static string (which must not be deallocated). */ /* ZEXTERN int ZEXPORT inflateInit OF((z_streamp strm)); Initializes the internal stream state for decompression. The fields next_in, avail_in, zalloc, zfree and opaque must be initialized before by the caller. In the current version of inflate, the provided input is not read or consumed. The allocation of a sliding window will be deferred to the first call of inflate (if the decompression does not complete on the first call). If zalloc and zfree are set to Z_NULL, inflateInit updates them to use default allocation functions. inflateInit returns Z_OK if success, Z_MEM_ERROR if there was not enough memory, Z_VERSION_ERROR if the zlib library version is incompatible with the version assumed by the caller, or Z_STREAM_ERROR if the parameters are invalid, such as a null pointer to the structure. msg is set to null if there is no error message. inflateInit does not perform any decompression. Actual decompression will be done by inflate(). So next_in, and avail_in, next_out, and avail_out are unused and unchanged. The current implementation of inflateInit() does not process any header information -- that is deferred until inflate() is called. */ ZEXTERN int ZEXPORT inflate OF((z_streamp strm, int flush)); /* inflate decompresses as much data as possible, and stops when the input buffer becomes empty or the output buffer becomes full. It may introduce some output latency (reading input without producing any output) except when forced to flush. The detailed semantics are as follows. inflate performs one or both of the following actions: - Decompress more input starting at next_in and update next_in and avail_in accordingly. If not all input can be processed (because there is not enough room in the output buffer), then next_in and avail_in are updated accordingly, and processing will resume at this point for the next call of inflate(). - Generate more output starting at next_out and update next_out and avail_out accordingly. inflate() provides as much output as possible, until there is no more input data or no more space in the output buffer (see below about the flush parameter). Before the call of inflate(), the application should ensure that at least one of the actions is possible, by providing more input and/or consuming more output, and updating the next_* and avail_* values accordingly. If the caller of inflate() does not provide both available input and available output space, it is possible that there will be no progress made. The application can consume the uncompressed output when it wants, for example when the output buffer is full (avail_out == 0), or after each call of inflate(). If inflate returns Z_OK and with zero avail_out, it must be called again after making room in the output buffer because there might be more output pending. The flush parameter of inflate() can be Z_NO_FLUSH, Z_SYNC_FLUSH, Z_FINISH, Z_BLOCK, or Z_TREES. Z_SYNC_FLUSH requests that inflate() flush as much output as possible to the output buffer. Z_BLOCK requests that inflate() stop if and when it gets to the next deflate block boundary. When decoding the zlib or gzip format, this will cause inflate() to return immediately after the header and before the first block. When doing a raw inflate, inflate() will go ahead and process the first block, and will return when it gets to the end of that block, or when it runs out of data. The Z_BLOCK option assists in appending to or combining deflate streams. To assist in this, on return inflate() always sets strm->data_type to the number of unused bits in the last byte taken from strm->next_in, plus 64 if inflate() is currently decoding the last block in the deflate stream, plus 128 if inflate() returned immediately after decoding an end-of-block code or decoding the complete header up to just before the first byte of the deflate stream. The end-of-block will not be indicated until all of the uncompressed data from that block has been written to strm->next_out. The number of unused bits may in general be greater than seven, except when bit 7 of data_type is set, in which case the number of unused bits will be less than eight. data_type is set as noted here every time inflate() returns for all flush options, and so can be used to determine the amount of currently consumed input in bits. The Z_TREES option behaves as Z_BLOCK does, but it also returns when the end of each deflate block header is reached, before any actual data in that block is decoded. This allows the caller to determine the length of the deflate block header for later use in random access within a deflate block. 256 is added to the value of strm->data_type when inflate() returns immediately after reaching the end of the deflate block header. inflate() should normally be called until it returns Z_STREAM_END or an error. However if all decompression is to be performed in a single step (a single call of inflate), the parameter flush should be set to Z_FINISH. In this case all pending input is processed and all pending output is flushed; avail_out must be large enough to hold all of the uncompressed data for the operation to complete. (The size of the uncompressed data may have been saved by the compressor for this purpose.) The use of Z_FINISH is not required to perform an inflation in one step. However it may be used to inform inflate that a faster approach can be used for the single inflate() call. Z_FINISH also informs inflate to not maintain a sliding window if the stream completes, which reduces inflate's memory footprint. If the stream does not complete, either because not all of the stream is provided or not enough output space is provided, then a sliding window will be allocated and inflate() can be called again to continue the operation as if Z_NO_FLUSH had been used. In this implementation, inflate() always flushes as much output as possible to the output buffer, and always uses the faster approach on the first call. So the effects of the flush parameter in this implementation are on the return value of inflate() as noted below, when inflate() returns early when Z_BLOCK or Z_TREES is used, and when inflate() avoids the allocation of memory for a sliding window when Z_FINISH is used. If a preset dictionary is needed after this call (see inflateSetDictionary below), inflate sets strm->adler to the Adler-32 checksum of the dictionary chosen by the compressor and returns Z_NEED_DICT; otherwise it sets strm->adler to the Adler-32 checksum of all output produced so far (that is, total_out bytes) and returns Z_OK, Z_STREAM_END or an error code as described below. At the end of the stream, inflate() checks that its computed Adler-32 checksum is equal to that saved by the compressor and returns Z_STREAM_END only if the checksum is correct. inflate() can decompress and check either zlib-wrapped or gzip-wrapped deflate data. The header type is detected automatically, if requested when initializing with inflateInit2(). Any information contained in the gzip header is not retained unless inflateGetHeader() is used. When processing gzip-wrapped deflate data, strm->adler32 is set to the CRC-32 of the output produced so far. The CRC-32 is checked against the gzip trailer, as is the uncompressed length, modulo 2^32. inflate() returns Z_OK if some progress has been made (more input processed or more output produced), Z_STREAM_END if the end of the compressed data has been reached and all uncompressed output has been produced, Z_NEED_DICT if a preset dictionary is needed at this point, Z_DATA_ERROR if the input data was corrupted (input stream not conforming to the zlib format or incorrect check value, in which case strm->msg points to a string with a more specific error), Z_STREAM_ERROR if the stream structure was inconsistent (for example next_in or next_out was Z_NULL, or the state was inadvertently written over by the application), Z_MEM_ERROR if there was not enough memory, Z_BUF_ERROR if no progress was possible or if there was not enough room in the output buffer when Z_FINISH is used. Note that Z_BUF_ERROR is not fatal, and inflate() can be called again with more input and more output space to continue decompressing. If Z_DATA_ERROR is returned, the application may then call inflateSync() to look for a good compression block if a partial recovery of the data is to be attempted. */ ZEXTERN int ZEXPORT inflateEnd OF((z_streamp strm)); /* All dynamically allocated data structures for this stream are freed. This function discards any unprocessed input and does not flush any pending output. inflateEnd returns Z_OK if success, or Z_STREAM_ERROR if the stream state was inconsistent. */ /* Advanced functions */ /* The following functions are needed only in some special applications. */ /* ZEXTERN int ZEXPORT deflateInit2 OF((z_streamp strm, int level, int method, int windowBits, int memLevel, int strategy)); This is another version of deflateInit with more compression options. The fields next_in, zalloc, zfree and opaque must be initialized before by the caller. The method parameter is the compression method. It must be Z_DEFLATED in this version of the library. The windowBits parameter is the base two logarithm of the window size (the size of the history buffer). It should be in the range 8..15 for this version of the library. Larger values of this parameter result in better compression at the expense of memory usage. The default value is 15 if deflateInit is used instead. For the current implementation of deflate(), a windowBits value of 8 (a window size of 256 bytes) is not supported. As a result, a request for 8 will result in 9 (a 512-byte window). In that case, providing 8 to inflateInit2() will result in an error when the zlib header with 9 is checked against the initialization of inflate(). The remedy is to not use 8 with deflateInit2() with this initialization, or at least in that case use 9 with inflateInit2(). windowBits can also be -8..-15 for raw deflate. In this case, -windowBits determines the window size. deflate() will then generate raw deflate data with no zlib header or trailer, and will not compute a check value. windowBits can also be greater than 15 for optional gzip encoding. Add 16 to windowBits to write a simple gzip header and trailer around the compressed data instead of a zlib wrapper. The gzip header will have no file name, no extra data, no comment, no modification time (set to zero), no header crc, and the operating system will be set to the appropriate value, if the operating system was determined at compile time. If a gzip stream is being written, strm->adler is a CRC-32 instead of an Adler-32. For raw deflate or gzip encoding, a request for a 256-byte window is rejected as invalid, since only the zlib header provides a means of transmitting the window size to the decompressor. The memLevel parameter specifies how much memory should be allocated for the internal compression state. memLevel=1 uses minimum memory but is slow and reduces compression ratio; memLevel=9 uses maximum memory for optimal speed. The default value is 8. See zconf.h for total memory usage as a function of windowBits and memLevel. The strategy parameter is used to tune the compression algorithm. Use the value Z_DEFAULT_STRATEGY for normal data, Z_FILTERED for data produced by a filter (or predictor), Z_HUFFMAN_ONLY to force Huffman encoding only (no string match), or Z_RLE to limit match distances to one (run-length encoding). Filtered data consists mostly of small values with a somewhat random distribution. In this case, the compression algorithm is tuned to compress them better. The effect of Z_FILTERED is to force more Huffman coding and less string matching; it is somewhat intermediate between Z_DEFAULT_STRATEGY and Z_HUFFMAN_ONLY. Z_RLE is designed to be almost as fast as Z_HUFFMAN_ONLY, but give better compression for PNG image data. The strategy parameter only affects the compression ratio but not the correctness of the compressed output even if it is not set appropriately. Z_FIXED prevents the use of dynamic Huffman codes, allowing for a simpler decoder for special applications. deflateInit2 returns Z_OK if success, Z_MEM_ERROR if there was not enough memory, Z_STREAM_ERROR if any parameter is invalid (such as an invalid method), or Z_VERSION_ERROR if the zlib library version (zlib_version) is incompatible with the version assumed by the caller (ZLIB_VERSION). msg is set to null if there is no error message. deflateInit2 does not perform any compression: this will be done by deflate(). */ ZEXTERN int ZEXPORT deflateSetDictionary OF((z_streamp strm, const Bytef *dictionary, uInt dictLength)); /* Initializes the compression dictionary from the given byte sequence without producing any compressed output. When using the zlib format, this function must be called immediately after deflateInit, deflateInit2 or deflateReset, and before any call of deflate. When doing raw deflate, this function must be called either before any call of deflate, or immediately after the completion of a deflate block, i.e. after all input has been consumed and all output has been delivered when using any of the flush options Z_BLOCK, Z_PARTIAL_FLUSH, Z_SYNC_FLUSH, or Z_FULL_FLUSH. The compressor and decompressor must use exactly the same dictionary (see inflateSetDictionary). The dictionary should consist of strings (byte sequences) that are likely to be encountered later in the data to be compressed, with the most commonly used strings preferably put towards the end of the dictionary. Using a dictionary is most useful when the data to be compressed is short and can be predicted with good accuracy; the data can then be compressed better than with the default empty dictionary. Depending on the size of the compression data structures selected by deflateInit or deflateInit2, a part of the dictionary may in effect be discarded, for example if the dictionary is larger than the window size provided in deflateInit or deflateInit2. Thus the strings most likely to be useful should be put at the end of the dictionary, not at the front. In addition, the current implementation of deflate will use at most the window size minus 262 bytes of the provided dictionary. Upon return of this function, strm->adler is set to the Adler-32 value of the dictionary; the decompressor may later use this value to determine which dictionary has been used by the compressor. (The Adler-32 value applies to the whole dictionary even if only a subset of the dictionary is actually used by the compressor.) If a raw deflate was requested, then the Adler-32 value is not computed and strm->adler is not set. deflateSetDictionary returns Z_OK if success, or Z_STREAM_ERROR if a parameter is invalid (e.g. dictionary being Z_NULL) or the stream state is inconsistent (for example if deflate has already been called for this stream or if not at a block boundary for raw deflate). deflateSetDictionary does not perform any compression: this will be done by deflate(). */ ZEXTERN int ZEXPORT deflateGetDictionary OF((z_streamp strm, Bytef *dictionary, uInt *dictLength)); /* Returns the sliding dictionary being maintained by deflate. dictLength is set to the number of bytes in the dictionary, and that many bytes are copied to dictionary. dictionary must have enough space, where 32768 bytes is always enough. If deflateGetDictionary() is called with dictionary equal to Z_NULL, then only the dictionary length is returned, and nothing is copied. Similary, if dictLength is Z_NULL, then it is not set. deflateGetDictionary() may return a length less than the window size, even when more than the window size in input has been provided. It may return up to 258 bytes less in that case, due to how zlib's implementation of deflate manages the sliding window and lookahead for matches, where matches can be up to 258 bytes long. If the application needs the last window-size bytes of input, then that would need to be saved by the application outside of zlib. deflateGetDictionary returns Z_OK on success, or Z_STREAM_ERROR if the stream state is inconsistent. */ ZEXTERN int ZEXPORT deflateCopy OF((z_streamp dest, z_streamp source)); /* Sets the destination stream as a complete copy of the source stream. This function can be useful when several compression strategies will be tried, for example when there are several ways of pre-processing the input data with a filter. The streams that will be discarded should then be freed by calling deflateEnd. Note that deflateCopy duplicates the internal compression state which can be quite large, so this strategy is slow and can consume lots of memory. deflateCopy returns Z_OK if success, Z_MEM_ERROR if there was not enough memory, Z_STREAM_ERROR if the source stream state was inconsistent (such as zalloc being Z_NULL). msg is left unchanged in both source and destination. */ ZEXTERN int ZEXPORT deflateReset OF((z_streamp strm)); /* This function is equivalent to deflateEnd followed by deflateInit, but does not free and reallocate the internal compression state. The stream will leave the compression level and any other attributes that may have been set unchanged. deflateReset returns Z_OK if success, or Z_STREAM_ERROR if the source stream state was inconsistent (such as zalloc or state being Z_NULL). */ ZEXTERN int ZEXPORT deflateParams OF((z_streamp strm, int level, int strategy)); /* Dynamically update the compression level and compression strategy. The interpretation of level and strategy is as in deflateInit2(). This can be used to switch between compression and straight copy of the input data, or to switch to a different kind of input data requiring a different strategy. If the compression approach (which is a function of the level) or the strategy is changed, and if any input has been consumed in a previous deflate() call, then the input available so far is compressed with the old level and strategy using deflate(strm, Z_BLOCK). There are three approaches for the compression levels 0, 1..3, and 4..9 respectively. The new level and strategy will take effect at the next call of deflate(). If a deflate(strm, Z_BLOCK) is performed by deflateParams(), and it does not have enough output space to complete, then the parameter change will not take effect. In this case, deflateParams() can be called again with the same parameters and more output space to try again. In order to assure a change in the parameters on the first try, the deflate stream should be flushed using deflate() with Z_BLOCK or other flush request until strm.avail_out is not zero, before calling deflateParams(). Then no more input data should be provided before the deflateParams() call. If this is done, the old level and strategy will be applied to the data compressed before deflateParams(), and the new level and strategy will be applied to the the data compressed after deflateParams(). deflateParams returns Z_OK on success, Z_STREAM_ERROR if the source stream state was inconsistent or if a parameter was invalid, or Z_BUF_ERROR if there was not enough output space to complete the compression of the available input data before a change in the strategy or approach. Note that in the case of a Z_BUF_ERROR, the parameters are not changed. A return value of Z_BUF_ERROR is not fatal, in which case deflateParams() can be retried with more output space. */ ZEXTERN int ZEXPORT deflateTune OF((z_streamp strm, int good_length, int max_lazy, int nice_length, int max_chain)); /* Fine tune deflate's internal compression parameters. This should only be used by someone who understands the algorithm used by zlib's deflate for searching for the best matching string, and even then only by the most fanatic optimizer trying to squeeze out the last compressed bit for their specific input data. Read the deflate.c source code for the meaning of the max_lazy, good_length, nice_length, and max_chain parameters. deflateTune() can be called after deflateInit() or deflateInit2(), and returns Z_OK on success, or Z_STREAM_ERROR for an invalid deflate stream. */ ZEXTERN uLong ZEXPORT deflateBound OF((z_streamp strm, uLong sourceLen)); /* deflateBound() returns an upper bound on the compressed size after deflation of sourceLen bytes. It must be called after deflateInit() or deflateInit2(), and after deflateSetHeader(), if used. This would be used to allocate an output buffer for deflation in a single pass, and so would be called before deflate(). If that first deflate() call is provided the sourceLen input bytes, an output buffer allocated to the size returned by deflateBound(), and the flush value Z_FINISH, then deflate() is guaranteed to return Z_STREAM_END. Note that it is possible for the compressed size to be larger than the value returned by deflateBound() if flush options other than Z_FINISH or Z_NO_FLUSH are used. */ ZEXTERN int ZEXPORT deflatePending OF((z_streamp strm, unsigned *pending, int *bits)); /* deflatePending() returns the number of bytes and bits of output that have been generated, but not yet provided in the available output. The bytes not provided would be due to the available output space having being consumed. The number of bits of output not provided are between 0 and 7, where they await more bits to join them in order to fill out a full byte. If pending or bits are Z_NULL, then those values are not set. deflatePending returns Z_OK if success, or Z_STREAM_ERROR if the source stream state was inconsistent. */ ZEXTERN int ZEXPORT deflatePrime OF((z_streamp strm, int bits, int value)); /* deflatePrime() inserts bits in the deflate output stream. The intent is that this function is used to start off the deflate output with the bits leftover from a previous deflate stream when appending to it. As such, this function can only be used for raw deflate, and must be used before the first deflate() call after a deflateInit2() or deflateReset(). bits must be less than or equal to 16, and that many of the least significant bits of value will be inserted in the output. deflatePrime returns Z_OK if success, Z_BUF_ERROR if there was not enough room in the internal buffer to insert the bits, or Z_STREAM_ERROR if the source stream state was inconsistent. */ ZEXTERN int ZEXPORT deflateSetHeader OF((z_streamp strm, gz_headerp head)); /* deflateSetHeader() provides gzip header information for when a gzip stream is requested by deflateInit2(). deflateSetHeader() may be called after deflateInit2() or deflateReset() and before the first call of deflate(). The text, time, os, extra field, name, and comment information in the provided gz_header structure are written to the gzip header (xflag is ignored -- the extra flags are set according to the compression level). The caller must assure that, if not Z_NULL, name and comment are terminated with a zero byte, and that if extra is not Z_NULL, that extra_len bytes are available there. If hcrc is true, a gzip header crc is included. Note that the current versions of the command-line version of gzip (up through version 1.3.x) do not support header crc's, and will report that it is a "multi-part gzip file" and give up. If deflateSetHeader is not used, the default gzip header has text false, the time set to zero, and os set to 255, with no extra, name, or comment fields. The gzip header is returned to the default state by deflateReset(). deflateSetHeader returns Z_OK if success, or Z_STREAM_ERROR if the source stream state was inconsistent. */ /* ZEXTERN int ZEXPORT inflateInit2 OF((z_streamp strm, int windowBits)); This is another version of inflateInit with an extra parameter. The fields next_in, avail_in, zalloc, zfree and opaque must be initialized before by the caller. The windowBits parameter is the base two logarithm of the maximum window size (the size of the history buffer). It should be in the range 8..15 for this version of the library. The default value is 15 if inflateInit is used instead. windowBits must be greater than or equal to the windowBits value provided to deflateInit2() while compressing, or it must be equal to 15 if deflateInit2() was not used. If a compressed stream with a larger window size is given as input, inflate() will return with the error code Z_DATA_ERROR instead of trying to allocate a larger window. windowBits can also be zero to request that inflate use the window size in the zlib header of the compressed stream. windowBits can also be -8..-15 for raw inflate. In this case, -windowBits determines the window size. inflate() will then process raw deflate data, not looking for a zlib or gzip header, not generating a check value, and not looking for any check values for comparison at the end of the stream. This is for use with other formats that use the deflate compressed data format such as zip. Those formats provide their own check values. If a custom format is developed using the raw deflate format for compressed data, it is recommended that a check value such as an Adler-32 or a CRC-32 be applied to the uncompressed data as is done in the zlib, gzip, and zip formats. For most applications, the zlib format should be used as is. Note that comments above on the use in deflateInit2() applies to the magnitude of windowBits. windowBits can also be greater than 15 for optional gzip decoding. Add 32 to windowBits to enable zlib and gzip decoding with automatic header detection, or add 16 to decode only the gzip format (the zlib format will return a Z_DATA_ERROR). If a gzip stream is being decoded, strm->adler is a CRC-32 instead of an Adler-32. Unlike the gunzip utility and gzread() (see below), inflate() will not automatically decode concatenated gzip streams. inflate() will return Z_STREAM_END at the end of the gzip stream. The state would need to be reset to continue decoding a subsequent gzip stream. inflateInit2 returns Z_OK if success, Z_MEM_ERROR if there was not enough memory, Z_VERSION_ERROR if the zlib library version is incompatible with the version assumed by the caller, or Z_STREAM_ERROR if the parameters are invalid, such as a null pointer to the structure. msg is set to null if there is no error message. inflateInit2 does not perform any decompression apart from possibly reading the zlib header if present: actual decompression will be done by inflate(). (So next_in and avail_in may be modified, but next_out and avail_out are unused and unchanged.) The current implementation of inflateInit2() does not process any header information -- that is deferred until inflate() is called. */ ZEXTERN int ZEXPORT inflateSetDictionary OF((z_streamp strm, const Bytef *dictionary, uInt dictLength)); /* Initializes the decompression dictionary from the given uncompressed byte sequence. This function must be called immediately after a call of inflate, if that call returned Z_NEED_DICT. The dictionary chosen by the compressor can be determined from the Adler-32 value returned by that call of inflate. The compressor and decompressor must use exactly the same dictionary (see deflateSetDictionary). For raw inflate, this function can be called at any time to set the dictionary. If the provided dictionary is smaller than the window and there is already data in the window, then the provided dictionary will amend what's there. The application must insure that the dictionary that was used for compression is provided. inflateSetDictionary returns Z_OK if success, Z_STREAM_ERROR if a parameter is invalid (e.g. dictionary being Z_NULL) or the stream state is inconsistent, Z_DATA_ERROR if the given dictionary doesn't match the expected one (incorrect Adler-32 value). inflateSetDictionary does not perform any decompression: this will be done by subsequent calls of inflate(). */ ZEXTERN int ZEXPORT inflateGetDictionary OF((z_streamp strm, Bytef *dictionary, uInt *dictLength)); /* Returns the sliding dictionary being maintained by inflate. dictLength is set to the number of bytes in the dictionary, and that many bytes are copied to dictionary. dictionary must have enough space, where 32768 bytes is always enough. If inflateGetDictionary() is called with dictionary equal to Z_NULL, then only the dictionary length is returned, and nothing is copied. Similary, if dictLength is Z_NULL, then it is not set. inflateGetDictionary returns Z_OK on success, or Z_STREAM_ERROR if the stream state is inconsistent. */ ZEXTERN int ZEXPORT inflateSync OF((z_streamp strm)); /* Skips invalid compressed data until a possible full flush point (see above for the description of deflate with Z_FULL_FLUSH) can be found, or until all available input is skipped. No output is provided. inflateSync searches for a 00 00 FF FF pattern in the compressed data. All full flush points have this pattern, but not all occurrences of this pattern are full flush points. inflateSync returns Z_OK if a possible full flush point has been found, Z_BUF_ERROR if no more input was provided, Z_DATA_ERROR if no flush point has been found, or Z_STREAM_ERROR if the stream structure was inconsistent. In the success case, the application may save the current current value of total_in which indicates where valid compressed data was found. In the error case, the application may repeatedly call inflateSync, providing more input each time, until success or end of the input data. */ ZEXTERN int ZEXPORT inflateCopy OF((z_streamp dest, z_streamp source)); /* Sets the destination stream as a complete copy of the source stream. This function can be useful when randomly accessing a large stream. The first pass through the stream can periodically record the inflate state, allowing restarting inflate at those points when randomly accessing the stream. inflateCopy returns Z_OK if success, Z_MEM_ERROR if there was not enough memory, Z_STREAM_ERROR if the source stream state was inconsistent (such as zalloc being Z_NULL). msg is left unchanged in both source and destination. */ ZEXTERN int ZEXPORT inflateReset OF((z_streamp strm)); /* This function is equivalent to inflateEnd followed by inflateInit, but does not free and reallocate the internal decompression state. The stream will keep attributes that may have been set by inflateInit2. inflateReset returns Z_OK if success, or Z_STREAM_ERROR if the source stream state was inconsistent (such as zalloc or state being Z_NULL). */ ZEXTERN int ZEXPORT inflateReset2 OF((z_streamp strm, int windowBits)); /* This function is the same as inflateReset, but it also permits changing the wrap and window size requests. The windowBits parameter is interpreted the same as it is for inflateInit2. If the window size is changed, then the memory allocated for the window is freed, and the window will be reallocated by inflate() if needed. inflateReset2 returns Z_OK if success, or Z_STREAM_ERROR if the source stream state was inconsistent (such as zalloc or state being Z_NULL), or if the windowBits parameter is invalid. */ ZEXTERN int ZEXPORT inflatePrime OF((z_streamp strm, int bits, int value)); /* This function inserts bits in the inflate input stream. The intent is that this function is used to start inflating at a bit position in the middle of a byte. The provided bits will be used before any bytes are used from next_in. This function should only be used with raw inflate, and should be used before the first inflate() call after inflateInit2() or inflateReset(). bits must be less than or equal to 16, and that many of the least significant bits of value will be inserted in the input. If bits is negative, then the input stream bit buffer is emptied. Then inflatePrime() can be called again to put bits in the buffer. This is used to clear out bits leftover after feeding inflate a block description prior to feeding inflate codes. inflatePrime returns Z_OK if success, or Z_STREAM_ERROR if the source stream state was inconsistent. */ ZEXTERN long ZEXPORT inflateMark OF((z_streamp strm)); /* This function returns two values, one in the lower 16 bits of the return value, and the other in the remaining upper bits, obtained by shifting the return value down 16 bits. If the upper value is -1 and the lower value is zero, then inflate() is currently decoding information outside of a block. If the upper value is -1 and the lower value is non-zero, then inflate is in the middle of a stored block, with the lower value equaling the number of bytes from the input remaining to copy. If the upper value is not -1, then it is the number of bits back from the current bit position in the input of the code (literal or length/distance pair) currently being processed. In that case the lower value is the number of bytes already emitted for that code. A code is being processed if inflate is waiting for more input to complete decoding of the code, or if it has completed decoding but is waiting for more output space to write the literal or match data. inflateMark() is used to mark locations in the input data for random access, which may be at bit positions, and to note those cases where the output of a code may span boundaries of random access blocks. The current location in the input stream can be determined from avail_in and data_type as noted in the description for the Z_BLOCK flush parameter for inflate. inflateMark returns the value noted above, or -65536 if the provided source stream state was inconsistent. */ ZEXTERN int ZEXPORT inflateGetHeader OF((z_streamp strm, gz_headerp head)); /* inflateGetHeader() requests that gzip header information be stored in the provided gz_header structure. inflateGetHeader() may be called after inflateInit2() or inflateReset(), and before the first call of inflate(). As inflate() processes the gzip stream, head->done is zero until the header is completed, at which time head->done is set to one. If a zlib stream is being decoded, then head->done is set to -1 to indicate that there will be no gzip header information forthcoming. Note that Z_BLOCK or Z_TREES can be used to force inflate() to return immediately after header processing is complete and before any actual data is decompressed. The text, time, xflags, and os fields are filled in with the gzip header contents. hcrc is set to true if there is a header CRC. (The header CRC was valid if done is set to one.) If extra is not Z_NULL, then extra_max contains the maximum number of bytes to write to extra. Once done is true, extra_len contains the actual extra field length, and extra contains the extra field, or that field truncated if extra_max is less than extra_len. If name is not Z_NULL, then up to name_max characters are written there, terminated with a zero unless the length is greater than name_max. If comment is not Z_NULL, then up to comm_max characters are written there, terminated with a zero unless the length is greater than comm_max. When any of extra, name, or comment are not Z_NULL and the respective field is not present in the header, then that field is set to Z_NULL to signal its absence. This allows the use of deflateSetHeader() with the returned structure to duplicate the header. However if those fields are set to allocated memory, then the application will need to save those pointers elsewhere so that they can be eventually freed. If inflateGetHeader is not used, then the header information is simply discarded. The header is always checked for validity, including the header CRC if present. inflateReset() will reset the process to discard the header information. The application would need to call inflateGetHeader() again to retrieve the header from the next gzip stream. inflateGetHeader returns Z_OK if success, or Z_STREAM_ERROR if the source stream state was inconsistent. */ /* ZEXTERN int ZEXPORT inflateBackInit OF((z_streamp strm, int windowBits, unsigned char FAR *window)); Initialize the internal stream state for decompression using inflateBack() calls. The fields zalloc, zfree and opaque in strm must be initialized before the call. If zalloc and zfree are Z_NULL, then the default library- derived memory allocation routines are used. windowBits is the base two logarithm of the window size, in the range 8..15. window is a caller supplied buffer of that size. Except for special applications where it is assured that deflate was used with small window sizes, windowBits must be 15 and a 32K byte window must be supplied to be able to decompress general deflate streams. See inflateBack() for the usage of these routines. inflateBackInit will return Z_OK on success, Z_STREAM_ERROR if any of the parameters are invalid, Z_MEM_ERROR if the internal state could not be allocated, or Z_VERSION_ERROR if the version of the library does not match the version of the header file. */ typedef unsigned (*in_func) OF((void FAR *, z_const unsigned char FAR * FAR *)); typedef int (*out_func) OF((void FAR *, unsigned char FAR *, unsigned)); ZEXTERN int ZEXPORT inflateBack OF((z_streamp strm, in_func in, void FAR *in_desc, out_func out, void FAR *out_desc)); /* inflateBack() does a raw inflate with a single call using a call-back interface for input and output. This is potentially more efficient than inflate() for file i/o applications, in that it avoids copying between the output and the sliding window by simply making the window itself the output buffer. inflate() can be faster on modern CPUs when used with large buffers. inflateBack() trusts the application to not change the output buffer passed by the output function, at least until inflateBack() returns. inflateBackInit() must be called first to allocate the internal state and to initialize the state with the user-provided window buffer. inflateBack() may then be used multiple times to inflate a complete, raw deflate stream with each call. inflateBackEnd() is then called to free the allocated state. A raw deflate stream is one with no zlib or gzip header or trailer. This routine would normally be used in a utility that reads zip or gzip files and writes out uncompressed files. The utility would decode the header and process the trailer on its own, hence this routine expects only the raw deflate stream to decompress. This is different from the default behavior of inflate(), which expects a zlib header and trailer around the deflate stream. inflateBack() uses two subroutines supplied by the caller that are then called by inflateBack() for input and output. inflateBack() calls those routines until it reads a complete deflate stream and writes out all of the uncompressed data, or until it encounters an error. The function's parameters and return types are defined above in the in_func and out_func typedefs. inflateBack() will call in(in_desc, &buf) which should return the number of bytes of provided input, and a pointer to that input in buf. If there is no input available, in() must return zero -- buf is ignored in that case -- and inflateBack() will return a buffer error. inflateBack() will call out(out_desc, buf, len) to write the uncompressed data buf[0..len-1]. out() should return zero on success, or non-zero on failure. If out() returns non-zero, inflateBack() will return with an error. Neither in() nor out() are permitted to change the contents of the window provided to inflateBackInit(), which is also the buffer that out() uses to write from. The length written by out() will be at most the window size. Any non-zero amount of input may be provided by in(). For convenience, inflateBack() can be provided input on the first call by setting strm->next_in and strm->avail_in. If that input is exhausted, then in() will be called. Therefore strm->next_in must be initialized before calling inflateBack(). If strm->next_in is Z_NULL, then in() will be called immediately for input. If strm->next_in is not Z_NULL, then strm->avail_in must also be initialized, and then if strm->avail_in is not zero, input will initially be taken from strm->next_in[0 .. strm->avail_in - 1]. The in_desc and out_desc parameters of inflateBack() is passed as the first parameter of in() and out() respectively when they are called. These descriptors can be optionally used to pass any information that the caller- supplied in() and out() functions need to do their job. On return, inflateBack() will set strm->next_in and strm->avail_in to pass back any unused input that was provided by the last in() call. The return values of inflateBack() can be Z_STREAM_END on success, Z_BUF_ERROR if in() or out() returned an error, Z_DATA_ERROR if there was a format error in the deflate stream (in which case strm->msg is set to indicate the nature of the error), or Z_STREAM_ERROR if the stream was not properly initialized. In the case of Z_BUF_ERROR, an input or output error can be distinguished using strm->next_in which will be Z_NULL only if in() returned an error. If strm->next_in is not Z_NULL, then the Z_BUF_ERROR was due to out() returning non-zero. (in() will always be called before out(), so strm->next_in is assured to be defined if out() returns non-zero.) Note that inflateBack() cannot return Z_OK. */ ZEXTERN int ZEXPORT inflateBackEnd OF((z_streamp strm)); /* All memory allocated by inflateBackInit() is freed. inflateBackEnd() returns Z_OK on success, or Z_STREAM_ERROR if the stream state was inconsistent. */ ZEXTERN uLong ZEXPORT zlibCompileFlags OF((void)); /* Return flags indicating compile-time options. Type sizes, two bits each, 00 = 16 bits, 01 = 32, 10 = 64, 11 = other: 1.0: size of uInt 3.2: size of uLong 5.4: size of voidpf (pointer) 7.6: size of z_off_t Compiler, assembler, and debug options: 8: ZLIB_DEBUG 9: ASMV or ASMINF -- use ASM code 10: ZLIB_WINAPI -- exported functions use the WINAPI calling convention 11: 0 (reserved) One-time table building (smaller code, but not thread-safe if true): 12: BUILDFIXED -- build static block decoding tables when needed 13: DYNAMIC_CRC_TABLE -- build CRC calculation tables when needed 14,15: 0 (reserved) Library content (indicates missing functionality): 16: NO_GZCOMPRESS -- gz* functions cannot compress (to avoid linking deflate code when not needed) 17: NO_GZIP -- deflate can't write gzip streams, and inflate can't detect and decode gzip streams (to avoid linking crc code) 18-19: 0 (reserved) Operation variations (changes in library functionality): 20: PKZIP_BUG_WORKAROUND -- slightly more permissive inflate 21: FASTEST -- deflate algorithm with only one, lowest compression level 22,23: 0 (reserved) The sprintf variant used by gzprintf (zero is best): 24: 0 = vs*, 1 = s* -- 1 means limited to 20 arguments after the format 25: 0 = *nprintf, 1 = *printf -- 1 means gzprintf() not secure! 26: 0 = returns value, 1 = void -- 1 means inferred string length returned Remainder: 27-31: 0 (reserved) */ #ifndef Z_SOLO /* utility functions */ /* The following utility functions are implemented on top of the basic stream-oriented functions. To simplify the interface, some default options are assumed (compression level and memory usage, standard memory allocation functions). The source code of these utility functions can be modified if you need special options. */ ZEXTERN int ZEXPORT compress OF((Bytef *dest, uLongf *destLen, const Bytef *source, uLong sourceLen)); /* Compresses the source buffer into the destination buffer. sourceLen is the byte length of the source buffer. Upon entry, destLen is the total size of the destination buffer, which must be at least the value returned by compressBound(sourceLen). Upon exit, destLen is the actual size of the compressed data. compress() is equivalent to compress2() with a level parameter of Z_DEFAULT_COMPRESSION. compress returns Z_OK if success, Z_MEM_ERROR if there was not enough memory, Z_BUF_ERROR if there was not enough room in the output buffer. */ ZEXTERN int ZEXPORT compress2 OF((Bytef *dest, uLongf *destLen, const Bytef *source, uLong sourceLen, int level)); /* Compresses the source buffer into the destination buffer. The level parameter has the same meaning as in deflateInit. sourceLen is the byte length of the source buffer. Upon entry, destLen is the total size of the destination buffer, which must be at least the value returned by compressBound(sourceLen). Upon exit, destLen is the actual size of the compressed data. compress2 returns Z_OK if success, Z_MEM_ERROR if there was not enough memory, Z_BUF_ERROR if there was not enough room in the output buffer, Z_STREAM_ERROR if the level parameter is invalid. */ ZEXTERN uLong ZEXPORT compressBound OF((uLong sourceLen)); /* compressBound() returns an upper bound on the compressed size after compress() or compress2() on sourceLen bytes. It would be used before a compress() or compress2() call to allocate the destination buffer. */ ZEXTERN int ZEXPORT uncompress OF((Bytef *dest, uLongf *destLen, const Bytef *source, uLong sourceLen)); /* Decompresses the source buffer into the destination buffer. sourceLen is the byte length of the source buffer. Upon entry, destLen is the total size of the destination buffer, which must be large enough to hold the entire uncompressed data. (The size of the uncompressed data must have been saved previously by the compressor and transmitted to the decompressor by some mechanism outside the scope of this compression library.) Upon exit, destLen is the actual size of the uncompressed data. uncompress returns Z_OK if success, Z_MEM_ERROR if there was not enough memory, Z_BUF_ERROR if there was not enough room in the output buffer, or Z_DATA_ERROR if the input data was corrupted or incomplete. In the case where there is not enough room, uncompress() will fill the output buffer with the uncompressed data up to that point. */ ZEXTERN int ZEXPORT uncompress2 OF((Bytef *dest, uLongf *destLen, const Bytef *source, uLong *sourceLen)); /* Same as uncompress, except that sourceLen is a pointer, where the length of the source is *sourceLen. On return, *sourceLen is the number of source bytes consumed. */ /* gzip file access functions */ /* This library supports reading and writing files in gzip (.gz) format with an interface similar to that of stdio, using the functions that start with "gz". The gzip format is different from the zlib format. gzip is a gzip wrapper, documented in RFC 1952, wrapped around a deflate stream. */ typedef struct gzFile_s *gzFile; /* semi-opaque gzip file descriptor */ /* ZEXTERN gzFile ZEXPORT gzopen OF((const char *path, const char *mode)); Opens a gzip (.gz) file for reading or writing. The mode parameter is as in fopen ("rb" or "wb") but can also include a compression level ("wb9") or a strategy: 'f' for filtered data as in "wb6f", 'h' for Huffman-only compression as in "wb1h", 'R' for run-length encoding as in "wb1R", or 'F' for fixed code compression as in "wb9F". (See the description of deflateInit2 for more information about the strategy parameter.) 'T' will request transparent writing or appending with no compression and not using the gzip format. "a" can be used instead of "w" to request that the gzip stream that will be written be appended to the file. "+" will result in an error, since reading and writing to the same gzip file is not supported. The addition of "x" when writing will create the file exclusively, which fails if the file already exists. On systems that support it, the addition of "e" when reading or writing will set the flag to close the file on an execve() call. These functions, as well as gzip, will read and decode a sequence of gzip streams in a file. The append function of gzopen() can be used to create such a file. (Also see gzflush() for another way to do this.) When appending, gzopen does not test whether the file begins with a gzip stream, nor does it look for the end of the gzip streams to begin appending. gzopen will simply append a gzip stream to the existing file. gzopen can be used to read a file which is not in gzip format; in this case gzread will directly read from the file without decompression. When reading, this will be detected automatically by looking for the magic two- byte gzip header. gzopen returns NULL if the file could not be opened, if there was insufficient memory to allocate the gzFile state, or if an invalid mode was specified (an 'r', 'w', or 'a' was not provided, or '+' was provided). errno can be checked to determine if the reason gzopen failed was that the file could not be opened. */ ZEXTERN gzFile ZEXPORT gzdopen OF((int fd, const char *mode)); /* gzdopen associates a gzFile with the file descriptor fd. File descriptors are obtained from calls like open, dup, creat, pipe or fileno (if the file has been previously opened with fopen). The mode parameter is as in gzopen. The next call of gzclose on the returned gzFile will also close the file descriptor fd, just like fclose(fdopen(fd, mode)) closes the file descriptor fd. If you want to keep fd open, use fd = dup(fd_keep); gz = gzdopen(fd, mode);. The duplicated descriptor should be saved to avoid a leak, since gzdopen does not close fd if it fails. If you are using fileno() to get the file descriptor from a FILE *, then you will have to use dup() to avoid double-close()ing the file descriptor. Both gzclose() and fclose() will close the associated file descriptor, so they need to have different file descriptors. gzdopen returns NULL if there was insufficient memory to allocate the gzFile state, if an invalid mode was specified (an 'r', 'w', or 'a' was not provided, or '+' was provided), or if fd is -1. The file descriptor is not used until the next gz* read, write, seek, or close operation, so gzdopen will not detect if fd is invalid (unless fd is -1). */ ZEXTERN int ZEXPORT gzbuffer OF((gzFile file, unsigned size)); /* Set the internal buffer size used by this library's functions. The default buffer size is 8192 bytes. This function must be called after gzopen() or gzdopen(), and before any other calls that read or write the file. The buffer memory allocation is always deferred to the first read or write. Three times that size in buffer space is allocated. A larger buffer size of, for example, 64K or 128K bytes will noticeably increase the speed of decompression (reading). The new buffer size also affects the maximum length for gzprintf(). gzbuffer() returns 0 on success, or -1 on failure, such as being called too late. */ ZEXTERN int ZEXPORT gzsetparams OF((gzFile file, int level, int strategy)); /* Dynamically update the compression level or strategy. See the description of deflateInit2 for the meaning of these parameters. Previously provided data is flushed before the parameter change. gzsetparams returns Z_OK if success, Z_STREAM_ERROR if the file was not opened for writing, Z_ERRNO if there is an error writing the flushed data, or Z_MEM_ERROR if there is a memory allocation error. */ ZEXTERN int ZEXPORT gzread OF((gzFile file, voidp buf, unsigned len)); /* Reads the given number of uncompressed bytes from the compressed file. If the input file is not in gzip format, gzread copies the given number of bytes into the buffer directly from the file. After reaching the end of a gzip stream in the input, gzread will continue to read, looking for another gzip stream. Any number of gzip streams may be concatenated in the input file, and will all be decompressed by gzread(). If something other than a gzip stream is encountered after a gzip stream, that remaining trailing garbage is ignored (and no error is returned). gzread can be used to read a gzip file that is being concurrently written. Upon reaching the end of the input, gzread will return with the available data. If the error code returned by gzerror is Z_OK or Z_BUF_ERROR, then gzclearerr can be used to clear the end of file indicator in order to permit gzread to be tried again. Z_OK indicates that a gzip stream was completed on the last gzread. Z_BUF_ERROR indicates that the input file ended in the middle of a gzip stream. Note that gzread does not return -1 in the event of an incomplete gzip stream. This error is deferred until gzclose(), which will return Z_BUF_ERROR if the last gzread ended in the middle of a gzip stream. Alternatively, gzerror can be used before gzclose to detect this case. gzread returns the number of uncompressed bytes actually read, less than len for end of file, or -1 for error. If len is too large to fit in an int, then nothing is read, -1 is returned, and the error state is set to Z_STREAM_ERROR. */ ZEXTERN z_size_t ZEXPORT gzfread OF((voidp buf, z_size_t size, z_size_t nitems, gzFile file)); /* Read up to nitems items of size size from file to buf, otherwise operating as gzread() does. This duplicates the interface of stdio's fread(), with size_t request and return types. If the library defines size_t, then z_size_t is identical to size_t. If not, then z_size_t is an unsigned integer type that can contain a pointer. gzfread() returns the number of full items read of size size, or zero if the end of the file was reached and a full item could not be read, or if there was an error. gzerror() must be consulted if zero is returned in order to determine if there was an error. If the multiplication of size and nitems overflows, i.e. the product does not fit in a z_size_t, then nothing is read, zero is returned, and the error state is set to Z_STREAM_ERROR. In the event that the end of file is reached and only a partial item is available at the end, i.e. the remaining uncompressed data length is not a multiple of size, then the final partial item is nevetheless read into buf and the end-of-file flag is set. The length of the partial item read is not provided, but could be inferred from the result of gztell(). This behavior is the same as the behavior of fread() implementations in common libraries, but it prevents the direct use of gzfread() to read a concurrently written file, reseting and retrying on end-of-file, when size is not 1. */ ZEXTERN int ZEXPORT gzwrite OF((gzFile file, voidpc buf, unsigned len)); /* Writes the given number of uncompressed bytes into the compressed file. gzwrite returns the number of uncompressed bytes written or 0 in case of error. */ ZEXTERN z_size_t ZEXPORT gzfwrite OF((voidpc buf, z_size_t size, z_size_t nitems, gzFile file)); /* gzfwrite() writes nitems items of size size from buf to file, duplicating the interface of stdio's fwrite(), with size_t request and return types. If the library defines size_t, then z_size_t is identical to size_t. If not, then z_size_t is an unsigned integer type that can contain a pointer. gzfwrite() returns the number of full items written of size size, or zero if there was an error. If the multiplication of size and nitems overflows, i.e. the product does not fit in a z_size_t, then nothing is written, zero is returned, and the error state is set to Z_STREAM_ERROR. */ ZEXTERN int ZEXPORTVA gzprintf Z_ARG((gzFile file, const char *format, ...)); /* Converts, formats, and writes the arguments to the compressed file under control of the format string, as in fprintf. gzprintf returns the number of uncompressed bytes actually written, or a negative zlib error code in case of error. The number of uncompressed bytes written is limited to 8191, or one less than the buffer size given to gzbuffer(). The caller should assure that this limit is not exceeded. If it is exceeded, then gzprintf() will return an error (0) with nothing written. In this case, there may also be a buffer overflow with unpredictable consequences, which is possible only if zlib was compiled with the insecure functions sprintf() or vsprintf() because the secure snprintf() or vsnprintf() functions were not available. This can be determined using zlibCompileFlags(). */ ZEXTERN int ZEXPORT gzputs OF((gzFile file, const char *s)); /* Writes the given null-terminated string to the compressed file, excluding the terminating null character. gzputs returns the number of characters written, or -1 in case of error. */ ZEXTERN char * ZEXPORT gzgets OF((gzFile file, char *buf, int len)); /* Reads bytes from the compressed file until len-1 characters are read, or a newline character is read and transferred to buf, or an end-of-file condition is encountered. If any characters are read or if len == 1, the string is terminated with a null character. If no characters are read due to an end-of-file or len < 1, then the buffer is left untouched. gzgets returns buf which is a null-terminated string, or it returns NULL for end-of-file or in case of error. If there was an error, the contents at buf are indeterminate. */ ZEXTERN int ZEXPORT gzputc OF((gzFile file, int c)); /* Writes c, converted to an unsigned char, into the compressed file. gzputc returns the value that was written, or -1 in case of error. */ ZEXTERN int ZEXPORT gzgetc OF((gzFile file)); /* Reads one byte from the compressed file. gzgetc returns this byte or -1 in case of end of file or error. This is implemented as a macro for speed. As such, it does not do all of the checking the other functions do. I.e. it does not check to see if file is NULL, nor whether the structure file points to has been clobbered or not. */ ZEXTERN int ZEXPORT gzungetc OF((int c, gzFile file)); /* Push one character back onto the stream to be read as the first character on the next read. At least one character of push-back is allowed. gzungetc() returns the character pushed, or -1 on failure. gzungetc() will fail if c is -1, and may fail if a character has been pushed but not read yet. If gzungetc is used immediately after gzopen or gzdopen, at least the output buffer size of pushed characters is allowed. (See gzbuffer above.) The pushed character will be discarded if the stream is repositioned with gzseek() or gzrewind(). */ ZEXTERN int ZEXPORT gzflush OF((gzFile file, int flush)); /* Flushes all pending output into the compressed file. The parameter flush is as in the deflate() function. The return value is the zlib error number (see function gzerror below). gzflush is only permitted when writing. If the flush parameter is Z_FINISH, the remaining data is written and the gzip stream is completed in the output. If gzwrite() is called again, a new gzip stream will be started in the output. gzread() is able to read such concatenated gzip streams. gzflush should be called only when strictly necessary because it will degrade compression if called too often. */ /* ZEXTERN z_off_t ZEXPORT gzseek OF((gzFile file, z_off_t offset, int whence)); Sets the starting position for the next gzread or gzwrite on the given compressed file. The offset represents a number of bytes in the uncompressed data stream. The whence parameter is defined as in lseek(2); the value SEEK_END is not supported. If the file is opened for reading, this function is emulated but can be extremely slow. If the file is opened for writing, only forward seeks are supported; gzseek then compresses a sequence of zeroes up to the new starting position. gzseek returns the resulting offset location as measured in bytes from the beginning of the uncompressed stream, or -1 in case of error, in particular if the file is opened for writing and the new starting position would be before the current position. */ ZEXTERN int ZEXPORT gzrewind OF((gzFile file)); /* Rewinds the given file. This function is supported only for reading. gzrewind(file) is equivalent to (int)gzseek(file, 0L, SEEK_SET) */ /* ZEXTERN z_off_t ZEXPORT gztell OF((gzFile file)); Returns the starting position for the next gzread or gzwrite on the given compressed file. This position represents a number of bytes in the uncompressed data stream, and is zero when starting, even if appending or reading a gzip stream from the middle of a file using gzdopen(). gztell(file) is equivalent to gzseek(file, 0L, SEEK_CUR) */ /* ZEXTERN z_off_t ZEXPORT gzoffset OF((gzFile file)); Returns the current offset in the file being read or written. This offset includes the count of bytes that precede the gzip stream, for example when appending or when using gzdopen() for reading. When reading, the offset does not include as yet unused buffered input. This information can be used for a progress indicator. On error, gzoffset() returns -1. */ ZEXTERN int ZEXPORT gzeof OF((gzFile file)); /* Returns true (1) if the end-of-file indicator has been set while reading, false (0) otherwise. Note that the end-of-file indicator is set only if the read tried to go past the end of the input, but came up short. Therefore, just like feof(), gzeof() may return false even if there is no more data to read, in the event that the last read request was for the exact number of bytes remaining in the input file. This will happen if the input file size is an exact multiple of the buffer size. If gzeof() returns true, then the read functions will return no more data, unless the end-of-file indicator is reset by gzclearerr() and the input file has grown since the previous end of file was detected. */ ZEXTERN int ZEXPORT gzdirect OF((gzFile file)); /* Returns true (1) if file is being copied directly while reading, or false (0) if file is a gzip stream being decompressed. If the input file is empty, gzdirect() will return true, since the input does not contain a gzip stream. If gzdirect() is used immediately after gzopen() or gzdopen() it will cause buffers to be allocated to allow reading the file to determine if it is a gzip file. Therefore if gzbuffer() is used, it should be called before gzdirect(). When writing, gzdirect() returns true (1) if transparent writing was requested ("wT" for the gzopen() mode), or false (0) otherwise. (Note: gzdirect() is not needed when writing. Transparent writing must be explicitly requested, so the application already knows the answer. When linking statically, using gzdirect() will include all of the zlib code for gzip file reading and decompression, which may not be desired.) */ ZEXTERN int ZEXPORT gzclose OF((gzFile file)); /* Flushes all pending output if necessary, closes the compressed file and deallocates the (de)compression state. Note that once file is closed, you cannot call gzerror with file, since its structures have been deallocated. gzclose must not be called more than once on the same file, just as free must not be called more than once on the same allocation. gzclose will return Z_STREAM_ERROR if file is not valid, Z_ERRNO on a file operation error, Z_MEM_ERROR if out of memory, Z_BUF_ERROR if the last read ended in the middle of a gzip stream, or Z_OK on success. */ ZEXTERN int ZEXPORT gzclose_r OF((gzFile file)); ZEXTERN int ZEXPORT gzclose_w OF((gzFile file)); /* Same as gzclose(), but gzclose_r() is only for use when reading, and gzclose_w() is only for use when writing or appending. The advantage to using these instead of gzclose() is that they avoid linking in zlib compression or decompression code that is not used when only reading or only writing respectively. If gzclose() is used, then both compression and decompression code will be included the application when linking to a static zlib library. */ ZEXTERN const char * ZEXPORT gzerror OF((gzFile file, int *errnum)); /* Returns the error message for the last error which occurred on the given compressed file. errnum is set to zlib error number. If an error occurred in the file system and not in the compression library, errnum is set to Z_ERRNO and the application may consult errno to get the exact error code. The application must not modify the returned string. Future calls to this function may invalidate the previously returned string. If file is closed, then the string previously returned by gzerror will no longer be available. gzerror() should be used to distinguish errors from end-of-file for those functions above that do not distinguish those cases in their return values. */ ZEXTERN void ZEXPORT gzclearerr OF((gzFile file)); /* Clears the error and end-of-file flags for file. This is analogous to the clearerr() function in stdio. This is useful for continuing to read a gzip file that is being written concurrently. */ #endif /* !Z_SOLO */ /* checksum functions */ /* These functions are not related to compression but are exported anyway because they might be useful in applications using the compression library. */ ZEXTERN uLong ZEXPORT adler32 OF((uLong adler, const Bytef *buf, uInt len)); /* Update a running Adler-32 checksum with the bytes buf[0..len-1] and return the updated checksum. If buf is Z_NULL, this function returns the required initial value for the checksum. An Adler-32 checksum is almost as reliable as a CRC-32 but can be computed much faster. Usage example: uLong adler = adler32(0L, Z_NULL, 0); while (read_buffer(buffer, length) != EOF) { adler = adler32(adler, buffer, length); } if (adler != original_adler) error(); */ ZEXTERN uLong ZEXPORT adler32_z OF((uLong adler, const Bytef *buf, z_size_t len)); /* Same as adler32(), but with a size_t length. */ /* ZEXTERN uLong ZEXPORT adler32_combine OF((uLong adler1, uLong adler2, z_off_t len2)); Combine two Adler-32 checksums into one. For two sequences of bytes, seq1 and seq2 with lengths len1 and len2, Adler-32 checksums were calculated for each, adler1 and adler2. adler32_combine() returns the Adler-32 checksum of seq1 and seq2 concatenated, requiring only adler1, adler2, and len2. Note that the z_off_t type (like off_t) is a signed integer. If len2 is negative, the result has no meaning or utility. */ ZEXTERN uLong ZEXPORT crc32 OF((uLong crc, const Bytef *buf, uInt len)); /* Update a running CRC-32 with the bytes buf[0..len-1] and return the updated CRC-32. If buf is Z_NULL, this function returns the required initial value for the crc. Pre- and post-conditioning (one's complement) is performed within this function so it shouldn't be done by the application. Usage example: uLong crc = crc32(0L, Z_NULL, 0); while (read_buffer(buffer, length) != EOF) { crc = crc32(crc, buffer, length); } if (crc != original_crc) error(); */ ZEXTERN uLong ZEXPORT crc32_z OF((uLong adler, const Bytef *buf, z_size_t len)); /* Same as crc32(), but with a size_t length. */ /* ZEXTERN uLong ZEXPORT crc32_combine OF((uLong crc1, uLong crc2, z_off_t len2)); Combine two CRC-32 check values into one. For two sequences of bytes, seq1 and seq2 with lengths len1 and len2, CRC-32 check values were calculated for each, crc1 and crc2. crc32_combine() returns the CRC-32 check value of seq1 and seq2 concatenated, requiring only crc1, crc2, and len2. */ /* various hacks, don't look :) */ /* deflateInit and inflateInit are macros to allow checking the zlib version * and the compiler's view of z_stream: */ ZEXTERN int ZEXPORT deflateInit_ OF((z_streamp strm, int level, const char *version, int stream_size)); ZEXTERN int ZEXPORT inflateInit_ OF((z_streamp strm, const char *version, int stream_size)); ZEXTERN int ZEXPORT deflateInit2_ OF((z_streamp strm, int level, int method, int windowBits, int memLevel, int strategy, const char *version, int stream_size)); ZEXTERN int ZEXPORT inflateInit2_ OF((z_streamp strm, int windowBits, const char *version, int stream_size)); ZEXTERN int ZEXPORT inflateBackInit_ OF((z_streamp strm, int windowBits, unsigned char FAR *window, const char *version, int stream_size)); #ifdef Z_PREFIX_SET # define z_deflateInit(strm, level) \ deflateInit_((strm), (level), ZLIB_VERSION, (int)sizeof(z_stream)) # define z_inflateInit(strm) \ inflateInit_((strm), ZLIB_VERSION, (int)sizeof(z_stream)) # define z_deflateInit2(strm, level, method, windowBits, memLevel, strategy) \ deflateInit2_((strm),(level),(method),(windowBits),(memLevel),\ (strategy), ZLIB_VERSION, (int)sizeof(z_stream)) # define z_inflateInit2(strm, windowBits) \ inflateInit2_((strm), (windowBits), ZLIB_VERSION, \ (int)sizeof(z_stream)) # define z_inflateBackInit(strm, windowBits, window) \ inflateBackInit_((strm), (windowBits), (window), \ ZLIB_VERSION, (int)sizeof(z_stream)) #else # define deflateInit(strm, level) \ deflateInit_((strm), (level), ZLIB_VERSION, (int)sizeof(z_stream)) # define inflateInit(strm) \ inflateInit_((strm), ZLIB_VERSION, (int)sizeof(z_stream)) # define deflateInit2(strm, level, method, windowBits, memLevel, strategy) \ deflateInit2_((strm),(level),(method),(windowBits),(memLevel),\ (strategy), ZLIB_VERSION, (int)sizeof(z_stream)) # define inflateInit2(strm, windowBits) \ inflateInit2_((strm), (windowBits), ZLIB_VERSION, \ (int)sizeof(z_stream)) # define inflateBackInit(strm, windowBits, window) \ inflateBackInit_((strm), (windowBits), (window), \ ZLIB_VERSION, (int)sizeof(z_stream)) #endif #ifndef Z_SOLO /* gzgetc() macro and its supporting function and exposed data structure. Note * that the real internal state is much larger than the exposed structure. * This abbreviated structure exposes just enough for the gzgetc() macro. The * user should not mess with these exposed elements, since their names or * behavior could change in the future, perhaps even capriciously. They can * only be used by the gzgetc() macro. You have been warned. */ struct gzFile_s { unsigned have; unsigned char *next; z_off64_t pos; }; ZEXTERN int ZEXPORT gzgetc_ OF((gzFile file)); /* backward compatibility */ #ifdef Z_PREFIX_SET # undef z_gzgetc # define z_gzgetc(g) \ ((g)->have ? ((g)->have--, (g)->pos++, *((g)->next)++) : (gzgetc)(g)) #else # define gzgetc(g) \ ((g)->have ? ((g)->have--, (g)->pos++, *((g)->next)++) : (gzgetc)(g)) #endif /* provide 64-bit offset functions if _LARGEFILE64_SOURCE defined, and/or * change the regular functions to 64 bits if _FILE_OFFSET_BITS is 64 (if * both are true, the application gets the *64 functions, and the regular * functions are changed to 64 bits) -- in case these are set on systems * without large file support, _LFS64_LARGEFILE must also be true */ #ifdef Z_LARGE64 ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *)); ZEXTERN z_off64_t ZEXPORT gzseek64 OF((gzFile, z_off64_t, int)); ZEXTERN z_off64_t ZEXPORT gztell64 OF((gzFile)); ZEXTERN z_off64_t ZEXPORT gzoffset64 OF((gzFile)); ZEXTERN uLong ZEXPORT adler32_combine64 OF((uLong, uLong, z_off64_t)); ZEXTERN uLong ZEXPORT crc32_combine64 OF((uLong, uLong, z_off64_t)); #endif #if !defined(ZLIB_INTERNAL) && defined(Z_WANT64) # ifdef Z_PREFIX_SET # define z_gzopen z_gzopen64 # define z_gzseek z_gzseek64 # define z_gztell z_gztell64 # define z_gzoffset z_gzoffset64 # define z_adler32_combine z_adler32_combine64 # define z_crc32_combine z_crc32_combine64 # else # define gzopen gzopen64 # define gzseek gzseek64 # define gztell gztell64 # define gzoffset gzoffset64 # define adler32_combine adler32_combine64 # define crc32_combine crc32_combine64 # endif # ifndef Z_LARGE64 ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *)); ZEXTERN z_off_t ZEXPORT gzseek64 OF((gzFile, z_off_t, int)); ZEXTERN z_off_t ZEXPORT gztell64 OF((gzFile)); ZEXTERN z_off_t ZEXPORT gzoffset64 OF((gzFile)); ZEXTERN uLong ZEXPORT adler32_combine64 OF((uLong, uLong, z_off_t)); ZEXTERN uLong ZEXPORT crc32_combine64 OF((uLong, uLong, z_off_t)); # endif #else ZEXTERN gzFile ZEXPORT gzopen OF((const char *, const char *)); ZEXTERN z_off_t ZEXPORT gzseek OF((gzFile, z_off_t, int)); ZEXTERN z_off_t ZEXPORT gztell OF((gzFile)); ZEXTERN z_off_t ZEXPORT gzoffset OF((gzFile)); ZEXTERN uLong ZEXPORT adler32_combine OF((uLong, uLong, z_off_t)); ZEXTERN uLong ZEXPORT crc32_combine OF((uLong, uLong, z_off_t)); #endif #else /* Z_SOLO */ ZEXTERN uLong ZEXPORT adler32_combine OF((uLong, uLong, z_off_t)); ZEXTERN uLong ZEXPORT crc32_combine OF((uLong, uLong, z_off_t)); #endif /* !Z_SOLO */ /* undocumented functions */ ZEXTERN const char * ZEXPORT zError OF((int)); ZEXTERN int ZEXPORT inflateSyncPoint OF((z_streamp)); ZEXTERN const z_crc_t FAR * ZEXPORT get_crc_table OF((void)); ZEXTERN int ZEXPORT inflateUndermine OF((z_streamp, int)); ZEXTERN int ZEXPORT inflateValidate OF((z_streamp, int)); ZEXTERN unsigned long ZEXPORT inflateCodesUsed OF ((z_streamp)); ZEXTERN int ZEXPORT inflateResetKeep OF((z_streamp)); ZEXTERN int ZEXPORT deflateResetKeep OF((z_streamp)); #if (defined(_WIN32) || defined(__CYGWIN__)) && !defined(Z_SOLO) ZEXTERN gzFile ZEXPORT gzopen_w OF((const wchar_t *path, const char *mode)); #endif #if defined(STDC) || defined(Z_HAVE_STDARG_H) # ifndef Z_SOLO ZEXTERN int ZEXPORTVA gzvprintf Z_ARG((gzFile file, const char *format, va_list va)); # endif #endif #ifdef __cplusplus } #endif #endif /* ZLIB_H */ ================================================ FILE: licence.txt ================================================ Copyright (c) 2021, Richard T. Russell, http://www.rtrussell.co.uk/ This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. ================================================ FILE: src/SDL2_gfxPrimitives.c ================================================ /* SDL2_gfxPrimitives.c: graphics primitives for SDL2 renderers Copyright (C) 2012-2014 Andreas Schiffler Modifications and additions for BBC BASIC (C) 2016-2020 Richard Russell This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. Andreas Schiffler -- aschiffler at ferzkopp dot net Richard Russell -- richard at rtrussell dot co dot uk */ #include #include #include #include #include "SDL2_gfxPrimitives.h" #include "SDL2_rotozoom.h" #include "SDL2_gfxPrimitives_font.h" /* ---- Structures */ /*! \brief The structure passed to the internal Bresenham iterator. */ typedef struct { Sint16 x, y; int dx, dy, s1, s2, swapdir, error; Uint32 count; } SDL2_gfxBresenhamIterator; /* ---- Pixel */ /*! \brief Draw pixel in currently set color. \param renderer The renderer to draw on. \param x X (horizontal) coordinate of the pixel. \param y Y (vertical) coordinate of the pixel. \returns Returns 0 on success, -1 on failure. */ int pixel(SDL_Renderer *renderer, Sint16 x, Sint16 y) { return SDL_RenderDrawPoint(renderer, x, y); } /*! \brief Draw pixel with blending enabled if a<255. \param renderer The renderer to draw on. \param x X (horizontal) coordinate of the pixel. \param y Y (vertical) coordinate of the pixel. \param color The color value of the pixel to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int pixelColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Uint32 color) { Uint8 *c = (Uint8 *)&color; return pixelRGBA(renderer, x, y, c[0], c[1], c[2], c[3]); } /*! \brief Draw pixel with blending enabled if a<255. \param renderer The renderer to draw on. \param x X (horizontal) coordinate of the pixel. \param y Y (vertical) coordinate of the pixel. \param r The red color value of the pixel to draw. \param g The green color value of the pixel to draw. \param b The blue color value of the pixel to draw. \param a The alpha value of the pixel to draw. \returns Returns 0 on success, -1 on failure. */ int pixelRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { int result = 0; if (a != 255) result |= SDL_SetRenderDrawBlendMode(renderer, SDL_BLENDMODE_BLEND); result |= SDL_SetRenderDrawColor(renderer, r, g, b, a); result |= SDL_RenderDrawPoint(renderer, x, y); return result; } /*! \brief Draw pixel with blending enabled and using alpha weight on color. \param renderer The renderer to draw on. \param x The horizontal coordinate of the pixel. \param y The vertical position of the pixel. \param r The red color value of the pixel to draw. \param g The green color value of the pixel to draw. \param b The blue color value of the pixel to draw. \param a The alpha value of the pixel to draw. \param weight The weight multiplied into the alpha value of the pixel. \returns Returns 0 on success, -1 on failure. */ int pixelRGBAWeight(SDL_Renderer * renderer, Sint16 x, Sint16 y, Uint8 r, Uint8 g, Uint8 b, Uint8 a, Uint32 weight) { /* * Modify Alpha by weight */ Uint32 ax = a; ax = ((ax * weight) >> 8); if (ax > 255) { a = 255; } else { a = (Uint8)(ax & 0x000000ff); } return pixelRGBA(renderer, x, y, r, g, b, a); } /* ---- Hline */ /*! \brief Draw horizontal line in currently set color \param renderer The renderer to draw on. \param x1 X coordinate of the first point (i.e. left) of the line. \param x2 X coordinate of the second point (i.e. right) of the line. \param y Y coordinate of the points of the line. \returns Returns 0 on success, -1 on failure. */ int hline(SDL_Renderer * renderer, Sint16 x1, Sint16 x2, Sint16 y) { return SDL_RenderDrawLine(renderer, x1, y, x2, y);; } /*! \brief Draw horizontal line with blending. \param renderer The renderer to draw on. \param x1 X coordinate of the first point (i.e. left) of the line. \param x2 X coordinate of the second point (i.e. right) of the line. \param y Y coordinate of the points of the line. \param color The color value of the line to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int hlineColor(SDL_Renderer * renderer, Sint16 x1, Sint16 x2, Sint16 y, Uint32 color) { Uint8 *c = (Uint8 *)&color; return hlineRGBA(renderer, x1, x2, y, c[0], c[1], c[2], c[3]); } /*! \brief Draw horizontal line with blending. \param renderer The renderer to draw on. \param x1 X coordinate of the first point (i.e. left) of the line. \param x2 X coordinate of the second point (i.e. right) of the line. \param y Y coordinate of the points of the line. \param r The red value of the line to draw. \param g The green value of the line to draw. \param b The blue value of the line to draw. \param a The alpha value of the line to draw. \returns Returns 0 on success, -1 on failure. */ int hlineRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 x2, Sint16 y, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { int result = 0; if (a != 255) result |= SDL_SetRenderDrawBlendMode(renderer, SDL_BLENDMODE_BLEND); result |= SDL_SetRenderDrawColor(renderer, r, g, b, a); result |= SDL_RenderDrawLine(renderer, x1, y, x2, y); return result; } /* ---- Vline */ /*! \brief Draw vertical line in currently set color \param renderer The renderer to draw on. \param x X coordinate of points of the line. \param y1 Y coordinate of the first point (i.e. top) of the line. \param y2 Y coordinate of the second point (i.e. bottom) of the line. \returns Returns 0 on success, -1 on failure. */ int vline(SDL_Renderer * renderer, Sint16 x, Sint16 y1, Sint16 y2) { return SDL_RenderDrawLine(renderer, x, y1, x, y2);; } /*! \brief Draw vertical line with blending. \param renderer The renderer to draw on. \param x X coordinate of the points of the line. \param y1 Y coordinate of the first point (i.e. top) of the line. \param y2 Y coordinate of the second point (i.e. bottom) of the line. \param color The color value of the line to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int vlineColor(SDL_Renderer * renderer, Sint16 x, Sint16 y1, Sint16 y2, Uint32 color) { Uint8 *c = (Uint8 *)&color; return vlineRGBA(renderer, x, y1, y2, c[0], c[1], c[2], c[3]); } /*! \brief Draw vertical line with blending. \param renderer The renderer to draw on. \param x X coordinate of the points of the line. \param y1 Y coordinate of the first point (i.e. top) of the line. \param y2 Y coordinate of the second point (i.e. bottom) of the line. \param r The red value of the line to draw. \param g The green value of the line to draw. \param b The blue value of the line to draw. \param a The alpha value of the line to draw. \returns Returns 0 on success, -1 on failure. */ int vlineRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y1, Sint16 y2, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { int result = 0; if (a != 255) result |= SDL_SetRenderDrawBlendMode(renderer, SDL_BLENDMODE_BLEND); result |= SDL_SetRenderDrawColor(renderer, r, g, b, a); result |= SDL_RenderDrawLine(renderer, x, y1, x, y2); return result; } /* ---- Rectangle */ /*! \brief Draw rectangle with blending. \param renderer The renderer to draw on. \param x1 X coordinate of the first point (i.e. top right) of the rectangle. \param y1 Y coordinate of the first point (i.e. top right) of the rectangle. \param x2 X coordinate of the second point (i.e. bottom left) of the rectangle. \param y2 Y coordinate of the second point (i.e. bottom left) of the rectangle. \param color The color value of the rectangle to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int rectangleColor(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint32 color) { Uint8 *c = (Uint8 *)&color; return rectangleRGBA(renderer, x1, y1, x2, y2, c[0], c[1], c[2], c[3]); } /*! \brief Draw rectangle with blending. \param renderer The renderer to draw on. \param x1 X coordinate of the first point (i.e. top right) of the rectangle. \param y1 Y coordinate of the first point (i.e. top right) of the rectangle. \param x2 X coordinate of the second point (i.e. bottom left) of the rectangle. \param y2 Y coordinate of the second point (i.e. bottom left) of the rectangle. \param r The red value of the rectangle to draw. \param g The green value of the rectangle to draw. \param b The blue value of the rectangle to draw. \param a The alpha value of the rectangle to draw. \returns Returns 0 on success, -1 on failure. */ int rectangleRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { int result; Sint16 tmp; SDL_Rect rect; /* * Test for special cases of straight lines or single point */ if (x1 == x2) { if (y1 == y2) { return (pixelRGBA(renderer, x1, y1, r, g, b, a)); } else { return (vlineRGBA(renderer, x1, y1, y2, r, g, b, a)); } } else { if (y1 == y2) { return (hlineRGBA(renderer, x1, x2, y1, r, g, b, a)); } } /* * Swap x1, x2 if required */ if (x1 > x2) { tmp = x1; x1 = x2; x2 = tmp; } /* * Swap y1, y2 if required */ if (y1 > y2) { tmp = y1; y1 = y2; y2 = tmp; } /* * Create destination rect */ rect.x = x1; rect.y = y1; rect.w = x2 - x1; rect.h = y2 - y1; /* * Draw */ result = 0; if (a != 255) result |= SDL_SetRenderDrawBlendMode(renderer, SDL_BLENDMODE_BLEND); result |= SDL_SetRenderDrawColor(renderer, r, g, b, a); result |= SDL_RenderDrawRect(renderer, &rect); return result; } /* ---- Rounded Rectangle */ /*! \brief Draw rounded-corner rectangle with blending. \param renderer The renderer to draw on. \param x1 X coordinate of the first point (i.e. top right) of the rectangle. \param y1 Y coordinate of the first point (i.e. top right) of the rectangle. \param x2 X coordinate of the second point (i.e. bottom left) of the rectangle. \param y2 Y coordinate of the second point (i.e. bottom left) of the rectangle. \param rad The radius of the corner arc. \param color The color value of the rectangle to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int roundedRectangleColor(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 rad, Uint32 color) { Uint8 *c = (Uint8 *)&color; return roundedRectangleRGBA(renderer, x1, y1, x2, y2, rad, c[0], c[1], c[2], c[3]); } /*! \brief Draw rounded-corner rectangle with blending. \param renderer The renderer to draw on. \param x1 X coordinate of the first point (i.e. top right) of the rectangle. \param y1 Y coordinate of the first point (i.e. top right) of the rectangle. \param x2 X coordinate of the second point (i.e. bottom left) of the rectangle. \param y2 Y coordinate of the second point (i.e. bottom left) of the rectangle. \param rad The radius of the corner arc. \param r The red value of the rectangle to draw. \param g The green value of the rectangle to draw. \param b The blue value of the rectangle to draw. \param a The alpha value of the rectangle to draw. \returns Returns 0 on success, -1 on failure. */ int roundedRectangleRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 rad, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { int result = 0; Sint16 tmp; Sint16 w, h; Sint16 xx1, xx2; Sint16 yy1, yy2; /* * Check renderer */ if (renderer == NULL) { return -1; } /* * Check radius vor valid range */ if (rad < 0) { return -1; } /* * Special case - no rounding */ if (rad <= 1) { return rectangleRGBA(renderer, x1, y1, x2, y2, r, g, b, a); } /* * Test for special cases of straight lines or single point */ if (x1 == x2) { if (y1 == y2) { return (pixelRGBA(renderer, x1, y1, r, g, b, a)); } else { return (vlineRGBA(renderer, x1, y1, y2, r, g, b, a)); } } else { if (y1 == y2) { return (hlineRGBA(renderer, x1, x2, y1, r, g, b, a)); } } /* * Swap x1, x2 if required */ if (x1 > x2) { tmp = x1; x1 = x2; x2 = tmp; } /* * Swap y1, y2 if required */ if (y1 > y2) { tmp = y1; y1 = y2; y2 = tmp; } /* * Calculate width&height */ w = x2 - x1; h = y2 - y1; /* * Maybe adjust radius */ if ((rad * 2) > w) { rad = w / 2; } if ((rad * 2) > h) { rad = h / 2; } /* * Draw corners */ xx1 = x1 + rad; xx2 = x2 - rad; yy1 = y1 + rad; yy2 = y2 - rad; result |= arcRGBA(renderer, xx1, yy1, rad, 180, 270, r, g, b, a); result |= arcRGBA(renderer, xx2, yy1, rad, 270, 360, r, g, b, a); result |= arcRGBA(renderer, xx1, yy2, rad, 90, 180, r, g, b, a); result |= arcRGBA(renderer, xx2, yy2, rad, 0, 90, r, g, b, a); /* * Draw lines */ if (xx1 <= xx2) { result |= hlineRGBA(renderer, xx1, xx2, y1, r, g, b, a); result |= hlineRGBA(renderer, xx1, xx2, y2, r, g, b, a); } if (yy1 <= yy2) { result |= vlineRGBA(renderer, x1, yy1, yy2, r, g, b, a); result |= vlineRGBA(renderer, x2, yy1, yy2, r, g, b, a); } return result; } /* ---- Rounded Box */ /*! \brief Draw rounded-corner box (filled rectangle) with blending. \param renderer The renderer to draw on. \param x1 X coordinate of the first point (i.e. top right) of the box. \param y1 Y coordinate of the first point (i.e. top right) of the box. \param x2 X coordinate of the second point (i.e. bottom left) of the box. \param y2 Y coordinate of the second point (i.e. bottom left) of the box. \param rad The radius of the corner arcs of the box. \param color The color value of the box to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int roundedBoxColor(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 rad, Uint32 color) { Uint8 *c = (Uint8 *)&color; return roundedBoxRGBA(renderer, x1, y1, x2, y2, rad, c[0], c[1], c[2], c[3]); } /*! \brief Draw rounded-corner box (filled rectangle) with blending. \param renderer The renderer to draw on. \param x1 X coordinate of the first point (i.e. top right) of the box. \param y1 Y coordinate of the first point (i.e. top right) of the box. \param x2 X coordinate of the second point (i.e. bottom left) of the box. \param y2 Y coordinate of the second point (i.e. bottom left) of the box. \param rad The radius of the corner arcs of the box. \param r The red value of the box to draw. \param g The green value of the box to draw. \param b The blue value of the box to draw. \param a The alpha value of the box to draw. \returns Returns 0 on success, -1 on failure. */ int roundedBoxRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 rad, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { int result; Sint16 w, h, r2, tmp; Sint16 cx = 0; Sint16 cy = rad; Sint16 ocx = (Sint16) 0xffff; Sint16 ocy = (Sint16) 0xffff; Sint16 df = 1 - rad; Sint16 d_e = 3; Sint16 d_se = -2 * rad + 5; Sint16 xpcx, xmcx, xpcy, xmcy; Sint16 ypcy, ymcy, ypcx, ymcx; Sint16 x, y, dx, dy; /* * Check destination renderer */ if (renderer == NULL) { return -1; } /* * Check radius vor valid range */ if (rad < 0) { return -1; } /* * Special case - no rounding */ if (rad <= 1) { return boxRGBA(renderer, x1, y1, x2, y2, r, g, b, a); } /* * Test for special cases of straight lines or single point */ if (x1 == x2) { if (y1 == y2) { return (pixelRGBA(renderer, x1, y1, r, g, b, a)); } else { return (vlineRGBA(renderer, x1, y1, y2, r, g, b, a)); } } else { if (y1 == y2) { return (hlineRGBA(renderer, x1, x2, y1, r, g, b, a)); } } /* * Swap x1, x2 if required */ if (x1 > x2) { tmp = x1; x1 = x2; x2 = tmp; } /* * Swap y1, y2 if required */ if (y1 > y2) { tmp = y1; y1 = y2; y2 = tmp; } /* * Calculate width&height */ w = x2 - x1 + 1; h = y2 - y1 + 1; /* * Maybe adjust radius */ r2 = rad + rad; if (r2 > w) { rad = w / 2; r2 = rad + rad; } if (r2 > h) { rad = h / 2; } /* Setup filled circle drawing for corners */ x = x1 + rad; y = y1 + rad; dx = x2 - x1 - rad - rad; dy = y2 - y1 - rad - rad; /* * Set color */ result = 0; if (a != 255) result |= SDL_SetRenderDrawBlendMode(renderer, SDL_BLENDMODE_BLEND); result |= SDL_SetRenderDrawColor(renderer, r, g, b, a); /* * Draw corners */ do { xpcx = x + cx; xmcx = x - cx; xpcy = x + cy; xmcy = x - cy; if (ocy != cy) { if (cy > 0) { ypcy = y + cy; ymcy = y - cy; result |= hline(renderer, xmcx, xpcx + dx, ypcy + dy); result |= hline(renderer, xmcx, xpcx + dx, ymcy); } else { result |= hline(renderer, xmcx, xpcx + dx, y); } ocy = cy; } if (ocx != cx) { if (cx != cy) { if (cx > 0) { ypcx = y + cx; ymcx = y - cx; result |= hline(renderer, xmcy, xpcy + dx, ymcx); result |= hline(renderer, xmcy, xpcy + dx, ypcx + dy); } else { result |= hline(renderer, xmcy, xpcy + dx, y); } } ocx = cx; } /* * Update */ if (df < 0) { df += d_e; d_e += 2; d_se += 2; } else { df += d_se; d_e += 2; d_se += 4; cy--; } cx++; } while (cx <= cy); /* Inside */ if (dx > 0 && dy > 0) { result |= boxRGBA(renderer, x1, y1 + rad + 1, x2, y2 - rad, r, g, b, a); } return (result); } /* ---- Box */ /*! \brief Draw box (filled rectangle) with blending. \param renderer The renderer to draw on. \param x1 X coordinate of the first point (i.e. top right) of the box. \param y1 Y coordinate of the first point (i.e. top right) of the box. \param x2 X coordinate of the second point (i.e. bottom left) of the box. \param y2 Y coordinate of the second point (i.e. bottom left) of the box. \param color The color value of the box to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int boxColor(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint32 color) { Uint8 *c = (Uint8 *)&color; return boxRGBA(renderer, x1, y1, x2, y2, c[0], c[1], c[2], c[3]); } /*! \brief Draw box (filled rectangle) with blending. \param renderer The renderer to draw on. \param x1 X coordinate of the first point (i.e. top right) of the box. \param y1 Y coordinate of the first point (i.e. top right) of the box. \param x2 X coordinate of the second point (i.e. bottom left) of the box. \param y2 Y coordinate of the second point (i.e. bottom left) of the box. \param r The red value of the box to draw. \param g The green value of the box to draw. \param b The blue value of the box to draw. \param a The alpha value of the box to draw. \returns Returns 0 on success, -1 on failure. */ int boxRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { int result; Sint16 tmp; SDL_Rect rect; /* * Test for special cases of straight lines or single point */ if (x1 == x2) { if (y1 == y2) { return (pixelRGBA(renderer, x1, y1, r, g, b, a)); } else { return (vlineRGBA(renderer, x1, y1, y2, r, g, b, a)); } } else { if (y1 == y2) { return (hlineRGBA(renderer, x1, x2, y1, r, g, b, a)); } } /* * Swap x1, x2 if required */ if (x1 > x2) { tmp = x1; x1 = x2; x2 = tmp; } /* * Swap y1, y2 if required */ if (y1 > y2) { tmp = y1; y1 = y2; y2 = tmp; } /* * Create destination rect */ rect.x = x1; rect.y = y1; rect.w = x2 - x1 + 1; rect.h = y2 - y1 + 1; /* * Draw */ result = 0; if (a != 255) result |= SDL_SetRenderDrawBlendMode(renderer, SDL_BLENDMODE_BLEND); result |= SDL_SetRenderDrawColor(renderer, r, g, b, a); result |= SDL_RenderFillRect(renderer, &rect); return result; } /* ----- Line */ /*! \brief Draw line with alpha blending using the currently set color. \param renderer The renderer to draw on. \param x1 X coordinate of the first point of the line. \param y1 Y coordinate of the first point of the line. \param x2 X coordinate of the second point of the line. \param y2 Y coordinate of the second point of the line. \returns Returns 0 on success, -1 on failure. */ int line(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2) { /* * Draw */ return SDL_RenderDrawLine(renderer, x1, y1, x2, y2); } /*! \brief Draw line with alpha blending. \param renderer The renderer to draw on. \param x1 X coordinate of the first point of the line. \param y1 Y coordinate of the first point of the line. \param x2 X coordinate of the second point of the line. \param y2 Y coordinate of the seond point of the line. \param color The color value of the line to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int lineColor(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint32 color) { Uint8 *c = (Uint8 *)&color; return lineRGBA(renderer, x1, y1, x2, y2, c[0], c[1], c[2], c[3]); } /*! \brief Draw line with alpha blending. \param renderer The renderer to draw on. \param x1 X coordinate of the first point of the line. \param y1 Y coordinate of the first point of the line. \param x2 X coordinate of the second point of the line. \param y2 Y coordinate of the second point of the line. \param r The red value of the line to draw. \param g The green value of the line to draw. \param b The blue value of the line to draw. \param a The alpha value of the line to draw. \returns Returns 0 on success, -1 on failure. */ int lineRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { /* * Draw */ int result = 0; if (a != 255) result |= SDL_SetRenderDrawBlendMode(renderer, SDL_BLENDMODE_BLEND); result |= SDL_SetRenderDrawColor(renderer, r, g, b, a); result |= SDL_RenderDrawLine(renderer, x1, y1, x2, y2); return result; } /* ---- AA Line */ #define AAlevels 256 #define AAbits 8 /*! \brief Internal function to draw anti-aliased line with alpha blending and endpoint control. This implementation of the Wu antialiasing code is based on Mike Abrash's DDJ article which was reprinted as Chapter 42 of his Graphics Programming Black Book, but has been optimized to work with SDL and utilizes 32-bit fixed-point arithmetic by A. Schiffler. The endpoint control allows the supression to draw the last pixel useful for rendering continous aa-lines with alpha<255. \param renderer The renderer to draw on. \param x1 X coordinate of the first point of the aa-line. \param y1 Y coordinate of the first point of the aa-line. \param x2 X coordinate of the second point of the aa-line. \param y2 Y coordinate of the second point of the aa-line. \param r The red value of the aa-line to draw. \param g The green value of the aa-line to draw. \param b The blue value of the aa-line to draw. \param a The alpha value of the aa-line to draw. \param draw_endpoint Flag indicating if the endpoint should be drawn; draw if non-zero. \returns Returns 0 on success, -1 on failure. */ int _aalineRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint8 r, Uint8 g, Uint8 b, Uint8 a, int draw_endpoint) { Sint32 xx0, yy0, xx1, yy1; int result; Uint32 intshift, erracc, erradj; Uint32 erracctmp, wgt; int dx, dy, tmp, xdir, y0p1, x0pxdir; /* * Keep on working with 32bit numbers */ xx0 = x1; yy0 = y1; xx1 = x2; yy1 = y2; /* * Reorder points to make dy positive */ if (yy0 > yy1) { tmp = yy0; yy0 = yy1; yy1 = tmp; tmp = xx0; xx0 = xx1; xx1 = tmp; } /* * Calculate distance */ dx = xx1 - xx0; dy = yy1 - yy0; /* * Adjust for negative dx and set xdir */ if (dx >= 0) { xdir = 1; } else { xdir = -1; dx = (-dx); } /* * Check for special cases */ if (dx == 0) { /* * Vertical line */ if (draw_endpoint) { return (vlineRGBA(renderer, x1, y1, y2, r, g, b, a)); } else { if (dy > 0) { return (vlineRGBA(renderer, x1, yy0, yy0+dy, r, g, b, a)); } else { return (pixelRGBA(renderer, x1, y1, r, g, b, a)); } } } else if (dy == 0) { /* * Horizontal line */ if (draw_endpoint) { return (hlineRGBA(renderer, x1, x2, y1, r, g, b, a)); } else { if (dx > 0) { return (hlineRGBA(renderer, xx0, xx0+(xdir*dx), y1, r, g, b, a)); } else { return (pixelRGBA(renderer, x1, y1, r, g, b, a)); } } } else if ((dx == dy) && (draw_endpoint)) { /* * Diagonal line (with endpoint) */ return (lineRGBA(renderer, x1, y1, x2, y2, r, g, b, a)); } /* * Line is not horizontal, vertical or diagonal (with endpoint) */ result = 0; /* * Zero accumulator */ erracc = 0; /* * # of bits by which to shift erracc to get intensity level */ intshift = 32 - AAbits; /* * Draw the initial pixel in the foreground color */ result |= pixelRGBA(renderer, x1, y1, r, g, b, a); /* * x-major or y-major? */ if (dy > dx) { /* * y-major. Calculate 16-bit fixed point fractional part of a pixel that * X advances every time Y advances 1 pixel, truncating the result so that * we won't overrun the endpoint along the X axis */ /* * Not-so-portable version: erradj = ((Uint64)dx << 32) / (Uint64)dy; */ erradj = ((dx << 16) / dy) << 16; /* * draw all pixels other than the first and last */ x0pxdir = xx0 + xdir; while (--dy) { erracctmp = erracc; erracc += erradj; if (erracc <= erracctmp) { /* * rollover in error accumulator, x coord advances */ xx0 = x0pxdir; x0pxdir += xdir; } yy0++; /* y-major so always advance Y */ /* * the AAbits most significant bits of erracc give us the intensity * weighting for this pixel, and the complement of the weighting for * the paired pixel. */ wgt = (erracc >> intshift) & 255; result |= pixelRGBAWeight (renderer, xx0, yy0, r, g, b, a, 255 - wgt); result |= pixelRGBAWeight (renderer, x0pxdir, yy0, r, g, b, a, wgt); } } else { /* * x-major line. Calculate 16-bit fixed-point fractional part of a pixel * that Y advances each time X advances 1 pixel, truncating the result so * that we won't overrun the endpoint along the X axis. */ /* * Not-so-portable version: erradj = ((Uint64)dy << 32) / (Uint64)dx; */ erradj = ((dy << 16) / dx) << 16; /* * draw all pixels other than the first and last */ y0p1 = yy0 + 1; while (--dx) { erracctmp = erracc; erracc += erradj; if (erracc <= erracctmp) { /* * Accumulator turned over, advance y */ yy0 = y0p1; y0p1++; } xx0 += xdir; /* x-major so always advance X */ /* * the AAbits most significant bits of erracc give us the intensity * weighting for this pixel, and the complement of the weighting for * the paired pixel. */ wgt = (erracc >> intshift) & 255; result |= pixelRGBAWeight (renderer, xx0, yy0, r, g, b, a, 255 - wgt); result |= pixelRGBAWeight (renderer, xx0, y0p1, r, g, b, a, wgt); } } /* * Do we have to draw the endpoint */ if (draw_endpoint) { /* * Draw final pixel, always exactly intersected by the line and doesn't * need to be weighted. */ result |= pixelRGBA (renderer, x2, y2, r, g, b, a); } return (result); } /*! \brief Draw anti-aliased line with alpha blending. \param renderer The renderer to draw on. \param x1 X coordinate of the first point of the aa-line. \param y1 Y coordinate of the first point of the aa-line. \param x2 X coordinate of the second point of the aa-line. \param y2 Y coordinate of the second point of the aa-line. \param color The color value of the aa-line to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int aalineColor(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint32 color) { Uint8 *c = (Uint8 *)&color; return _aalineRGBA(renderer, x1, y1, x2, y2, c[0], c[1], c[2], c[3], 1); } /*! \brief Draw anti-aliased line with alpha blending. \param renderer The renderer to draw on. \param x1 X coordinate of the first point of the aa-line. \param y1 Y coordinate of the first point of the aa-line. \param x2 X coordinate of the second point of the aa-line. \param y2 Y coordinate of the second point of the aa-line. \param r The red value of the aa-line to draw. \param g The green value of the aa-line to draw. \param b The blue value of the aa-line to draw. \param a The alpha value of the aa-line to draw. \returns Returns 0 on success, -1 on failure. */ int aalineRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { return _aalineRGBA(renderer, x1, y1, x2, y2, r, g, b, a, 1); } /* ----- Circle */ /*! \brief Draw circle with blending. \param renderer The renderer to draw on. \param x X coordinate of the center of the circle. \param y Y coordinate of the center of the circle. \param rad Radius in pixels of the circle. \param color The color value of the circle to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int circleColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Uint32 color) { Uint8 *c = (Uint8 *)&color; return ellipseRGBA(renderer, x, y, rad, rad, c[0], c[1], c[2], c[3]); } /*! \brief Draw circle with blending. \param renderer The renderer to draw on. \param x X coordinate of the center of the circle. \param y Y coordinate of the center of the circle. \param rad Radius in pixels of the circle. \param r The red value of the circle to draw. \param g The green value of the circle to draw. \param b The blue value of the circle to draw. \param a The alpha value of the circle to draw. \returns Returns 0 on success, -1 on failure. */ int circleRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { return ellipseRGBA(renderer, x, y, rad, rad, r, g, b, a); } /* ----- Arc */ /*! \brief Arc with blending. \param renderer The renderer to draw on. \param x X coordinate of the center of the arc. \param y Y coordinate of the center of the arc. \param rad Radius in pixels of the arc. \param start Starting radius in degrees of the arc. 0 degrees is right, increasing clockwise. \param end Ending radius in degrees of the arc. 0 degrees is right, increasing clockwise. \param color The color value of the arc to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int arcColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Sint16 start, Sint16 end, Uint32 color) { Uint8 *c = (Uint8 *)&color; return arcRGBA(renderer, x, y, rad, start, end, c[0], c[1], c[2], c[3]); } /*! \brief Arc with blending. \param renderer The renderer to draw on. \param x X coordinate of the center of the arc. \param y Y coordinate of the center of the arc. \param rad Radius in pixels of the arc. \param start Starting radius in degrees of the arc. 0 degrees is right, increasing clockwise. \param end Ending radius in degrees of the arc. 0 degrees is right, increasing clockwise. \param r The red value of the arc to draw. \param g The green value of the arc to draw. \param b The blue value of the arc to draw. \param a The alpha value of the arc to draw. \returns Returns 0 on success, -1 on failure. */ /* TODO: rewrite algorithm; arc endpoints are not always drawn */ int arcRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Sint16 start, Sint16 end, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { int result; Sint16 cx = 0; Sint16 cy = rad; Sint16 df = 1 - rad; Sint16 d_e = 3; Sint16 d_se = -2 * rad + 5; Sint16 xpcx, xmcx, xpcy, xmcy; Sint16 ypcy, ymcy, ypcx, ymcx; Uint8 drawoct; int startoct, endoct, oct, stopval_start = 0, stopval_end = 0; double dstart, dend, temp = 0.; /* * Sanity check radius */ if (rad < 0) { return (-1); } /* * Special case for rad=0 - draw a point */ if (rad == 0) { return (pixelRGBA(renderer, x, y, r, g, b, a)); } /* Octant labelling \ 5 | 6 / \ | / 4 \ | / 7 \|/ ------+------ +x /|\ 3 / | \ 0 / | \ / 2 | 1 \ +y Initially reset bitmask to 0x00000000 the set whether or not to keep drawing a given octant. For example: 0x00111100 means we're drawing in octants 2-5 */ drawoct = 0; /* * Fixup angles */ start %= 360; end %= 360; /* 0 <= start & end < 360; note that sometimes start > end - if so, arc goes back through 0. */ while (start < 0) start += 360; while (end < 0) end += 360; start %= 360; end %= 360; /* now, we find which octants we're drawing in. */ startoct = start / 45; endoct = end / 45; oct = startoct - 1; /* stopval_start, stopval_end; what values of cx to stop at. */ do { oct = (oct + 1) % 8; if (oct == startoct) { /* need to compute stopval_start for this octant. Look at picture above if this is unclear */ dstart = (double)start; switch (oct) { case 0: case 3: temp = sin(dstart * M_PI / 180.); break; case 1: case 6: temp = cos(dstart * M_PI / 180.); break; case 2: case 5: temp = -cos(dstart * M_PI / 180.); break; case 4: case 7: temp = -sin(dstart * M_PI / 180.); break; } temp *= rad; stopval_start = (int)temp; /* This isn't arbitrary, but requires graph paper to explain well. The basic idea is that we're always changing drawoct after we draw, so we stop immediately after we render the last sensible pixel at x = ((int)temp). and whether to draw in this octant initially */ if (oct % 2) drawoct |= (1 << oct); /* this is basically like saying drawoct[oct] = true, if drawoct were a bool array */ else drawoct &= 255 - (1 << oct); /* this is basically like saying drawoct[oct] = false */ } if (oct == endoct) { /* need to compute stopval_end for this octant */ dend = (double)end; switch (oct) { case 0: case 3: temp = sin(dend * M_PI / 180); break; case 1: case 6: temp = cos(dend * M_PI / 180); break; case 2: case 5: temp = -cos(dend * M_PI / 180); break; case 4: case 7: temp = -sin(dend * M_PI / 180); break; } temp *= rad; stopval_end = (int)temp; /* and whether to draw in this octant initially */ if (startoct == endoct) { /* note: we start drawing, stop, then start again in this case */ /* otherwise: we only draw in this octant, so initialize it to false, it will get set back to true */ if (start > end) { /* unfortunately, if we're in the same octant and need to draw over the whole circle, */ /* we need to set the rest to true, because the while loop will end at the bottom. */ drawoct = 255; } else { drawoct &= 255 - (1 << oct); } } else if (oct % 2) drawoct &= 255 - (1 << oct); else drawoct |= (1 << oct); } else if (oct != startoct) { /* already verified that it's != endoct */ drawoct |= (1 << oct); /* draw this entire segment */ } } while (oct != endoct); /* so now we have what octants to draw and when to draw them. all that's left is the actual raster code. */ /* * Set color */ result = 0; if (a != 255) result |= SDL_SetRenderDrawBlendMode(renderer, SDL_BLENDMODE_BLEND); result |= SDL_SetRenderDrawColor(renderer, r, g, b, a); /* * Draw arc */ do { ypcy = y + cy; ymcy = y - cy; if (cx > 0) { xpcx = x + cx; xmcx = x - cx; /* always check if we're drawing a certain octant before adding a pixel to that octant. */ if (drawoct & 4) result |= pixel(renderer, xmcx, ypcy); if (drawoct & 2) result |= pixel(renderer, xpcx, ypcy); if (drawoct & 32) result |= pixel(renderer, xmcx, ymcy); if (drawoct & 64) result |= pixel(renderer, xpcx, ymcy); } else { if (drawoct & 96) result |= pixel(renderer, x, ymcy); if (drawoct & 6) result |= pixel(renderer, x, ypcy); } xpcy = x + cy; xmcy = x - cy; if (cx > 0 && cx != cy) { ypcx = y + cx; ymcx = y - cx; if (drawoct & 8) result |= pixel(renderer, xmcy, ypcx); if (drawoct & 1) result |= pixel(renderer, xpcy, ypcx); if (drawoct & 16) result |= pixel(renderer, xmcy, ymcx); if (drawoct & 128) result |= pixel(renderer, xpcy, ymcx); } else if (cx == 0) { if (drawoct & 24) result |= pixel(renderer, xmcy, y); if (drawoct & 129) result |= pixel(renderer, xpcy, y); } /* * Update whether we're drawing an octant */ if (stopval_start == cx) { /* works like an on-off switch. */ /* This is just in case start & end are in the same octant. */ if (drawoct & (1 << startoct)) drawoct &= 255 - (1 << startoct); else drawoct |= (1 << startoct); } if (stopval_end == cx) { if (drawoct & (1 << endoct)) drawoct &= 255 - (1 << endoct); else drawoct |= (1 << endoct); } /* * Update pixels */ if (df < 0) { df += d_e; d_e += 2; d_se += 2; } else { df += d_se; d_e += 2; d_se += 4; cy--; } cx++; } while (cx <= cy); return (result); } /* ----- AA Circle */ /*! \brief Draw anti-aliased circle with blending. \param renderer The renderer to draw on. \param x X coordinate of the center of the aa-circle. \param y Y coordinate of the center of the aa-circle. \param rad Radius in pixels of the aa-circle. \param color The color value of the aa-circle to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int aacircleColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Uint32 color) { Uint8 *c = (Uint8 *)&color; return aaellipseRGBA(renderer, x, y, rad, rad, c[0], c[1], c[2], c[3]); } /*! \brief Draw anti-aliased circle with blending. \param renderer The renderer to draw on. \param x X coordinate of the center of the aa-circle. \param y Y coordinate of the center of the aa-circle. \param rad Radius in pixels of the aa-circle. \param r The red value of the aa-circle to draw. \param g The green value of the aa-circle to draw. \param b The blue value of the aa-circle to draw. \param a The alpha value of the aa-circle to draw. \returns Returns 0 on success, -1 on failure. */ int aacircleRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { /* * Draw */ return aaellipseRGBA(renderer, x, y, rad, rad, r, g, b, a); } /* ----- Filled Circle */ /*! \brief Draw filled circle with blending. \param renderer The renderer to draw on. \param x X coordinate of the center of the filled circle. \param y Y coordinate of the center of the filled circle. \param rad Radius in pixels of the filled circle. \param color The color value of the filled circle to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int filledCircleColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Uint32 color) { Uint8 *c = (Uint8 *)&color; return filledEllipseRGBA(renderer, x, y, rad, rad, c[0], c[1], c[2], c[3]); } /*! \brief Draw filled circle with blending. \param renderer The renderer to draw on. \param x X coordinate of the center of the filled circle. \param y Y coordinate of the center of the filled circle. \param rad Radius in pixels of the filled circle. \param r The red value of the filled circle to draw. \param g The green value of the filled circle to draw. \param b The blue value of the filled circle to draw. \param a The alpha value of the filled circle to draw. \returns Returns 0 on success, -1 on failure. */ int filledCircleRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { return filledEllipseRGBA(renderer, x, y, rad, rad, r, g, b, a); } /* ----- Ellipse */ /*! \brief Draw ellipse with blending. \param renderer The renderer to draw on. \param x X coordinate of the center of the ellipse. \param y Y coordinate of the center of the ellipse. \param rx Horizontal radius in pixels of the ellipse. \param ry Vertical radius in pixels of the ellipse. \param color The color value of the ellipse to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int ellipseColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rx, Sint16 ry, Uint32 color) { Uint8 *c = (Uint8 *)&color; return ellipseRGBA(renderer, x, y, rx, ry, c[0], c[1], c[2], c[3]); } /*! \brief Draw ellipse with blending. \param renderer The renderer to draw on. \param x X coordinate of the center of the ellipse. \param y Y coordinate of the center of the ellipse. \param rx Horizontal radius in pixels of the ellipse. \param ry Vertical radius in pixels of the ellipse. \param r The red value of the ellipse to draw. \param g The green value of the ellipse to draw. \param b The blue value of the ellipse to draw. \param a The alpha value of the ellipse to draw. \returns Returns 0 on success, -1 on failure. */ int ellipseRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rx, Sint16 ry, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { int result; int ix, iy; int h, i, j, k; int oh, oi, oj, ok; int xmh, xph, ypk, ymk; int xmi, xpi, ymj, ypj; int xmj, xpj, ymi, ypi; int xmk, xpk, ymh, yph; /* * Sanity check radii */ if ((rx < 0) || (ry < 0)) { return (-1); } /* * Special case for rx=0 - draw a vline */ if (rx == 0) { return (vlineRGBA(renderer, x, y - ry, y + ry, r, g, b, a)); } /* * Special case for ry=0 - draw a hline */ if (ry == 0) { return (hlineRGBA(renderer, x - rx, x + rx, y, r, g, b, a)); } /* * Set color */ result = 0; if (a != 255) result |= SDL_SetRenderDrawBlendMode(renderer, SDL_BLENDMODE_BLEND); result |= SDL_SetRenderDrawColor(renderer, r, g, b, a); /* * Init vars */ oh = oi = oj = ok = 0xFFFF; /* * Draw */ if (rx > ry) { ix = 0; iy = rx * 64; do { h = (ix + 32) >> 6; i = (iy + 32) >> 6; j = (h * ry) / rx; k = (i * ry) / rx; if (((ok != k) && (oj != k)) || ((oj != j) && (ok != j)) || (k != j)) { xph = x + h; xmh = x - h; if (k > 0) { ypk = y + k; ymk = y - k; result |= pixel(renderer, xmh, ypk); result |= pixel(renderer, xph, ypk); result |= pixel(renderer, xmh, ymk); result |= pixel(renderer, xph, ymk); } else { result |= pixel(renderer, xmh, y); result |= pixel(renderer, xph, y); } ok = k; xpi = x + i; xmi = x - i; if (j > 0) { ypj = y + j; ymj = y - j; result |= pixel(renderer, xmi, ypj); result |= pixel(renderer, xpi, ypj); result |= pixel(renderer, xmi, ymj); result |= pixel(renderer, xpi, ymj); } else { result |= pixel(renderer, xmi, y); result |= pixel(renderer, xpi, y); } oj = j; } ix = ix + iy / rx; iy = iy - ix / rx; } while (i > h); } else { ix = 0; iy = ry * 64; do { h = (ix + 32) >> 6; i = (iy + 32) >> 6; j = (h * rx) / ry; k = (i * rx) / ry; if (((oi != i) && (oh != i)) || ((oh != h) && (oi != h) && (i != h))) { xmj = x - j; xpj = x + j; if (i > 0) { ypi = y + i; ymi = y - i; result |= pixel(renderer, xmj, ypi); result |= pixel(renderer, xpj, ypi); result |= pixel(renderer, xmj, ymi); result |= pixel(renderer, xpj, ymi); } else { result |= pixel(renderer, xmj, y); result |= pixel(renderer, xpj, y); } oi = i; xmk = x - k; xpk = x + k; if (h > 0) { yph = y + h; ymh = y - h; result |= pixel(renderer, xmk, yph); result |= pixel(renderer, xpk, yph); result |= pixel(renderer, xmk, ymh); result |= pixel(renderer, xpk, ymh); } else { result |= pixel(renderer, xmk, y); result |= pixel(renderer, xpk, y); } oh = h; } ix = ix + iy / ry; iy = iy - ix / ry; } while (i > h); } return (result); } /* ----- AA Ellipse */ /* Windows targets do not have lrint, so provide a local inline version */ #if defined(_MSC_VER) /* Detect 64bit and use intrinsic version */ #ifdef _M_X64 #include static __inline long lrint(float f) { return _mm_cvtss_si32(_mm_load_ss(&f)); } #elif defined(_M_IX86) __inline long int lrint (double flt) { int intgr; _asm { fld flt fistp intgr }; return intgr; } #elif defined(_M_ARM) #include #pragma warning(push) #pragma warning(disable: 4716) __declspec(naked) long int lrint (double flt) { __emit(0xEC410B10); // fmdrr d0, r0, r1 __emit(0xEEBD0B40); // ftosid s0, d0 __emit(0xEE100A10); // fmrs r0, s0 __emit(0xE12FFF1E); // bx lr } #pragma warning(pop) #else #error lrint needed for MSVC on non X86/AMD64/ARM targets. #endif #endif /*! \brief Draw anti-aliased ellipse with blending. \param renderer The renderer to draw on. \param x X coordinate of the center of the aa-ellipse. \param y Y coordinate of the center of the aa-ellipse. \param rx Horizontal radius in pixels of the aa-ellipse. \param ry Vertical radius in pixels of the aa-ellipse. \param color The color value of the aa-ellipse to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int aaellipseColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rx, Sint16 ry, Uint32 color) { Uint8 *c = (Uint8 *)&color; return aaellipseRGBA(renderer, x, y, rx, ry, c[0], c[1], c[2], c[3]); } /*! \brief Draw anti-aliased ellipse with blending. \param renderer The renderer to draw on. \param x X coordinate of the center of the aa-ellipse. \param y Y coordinate of the center of the aa-ellipse. \param rx Horizontal radius in pixels of the aa-ellipse. \param ry Vertical radius in pixels of the aa-ellipse. \param r The red value of the aa-ellipse to draw. \param g The green value of the aa-ellipse to draw. \param b The blue value of the aa-ellipse to draw. \param a The alpha value of the aa-ellipse to draw. \returns Returns 0 on success, -1 on failure. */ int aaellipseRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rx, Sint16 ry, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { int result; int i; int a2, b2, ds, dt, dxt, t, s, d; Sint16 xp, yp, xs, ys, dyt, od, xx, yy, xc2, yc2; float cp; double sab; Uint8 weight, iweight; /* * Sanity check radii */ if ((rx < 0) || (ry < 0)) { return (-1); } /* * Special cases for rx=0 and/or ry=0: draw a hline/vline/pixel */ if (rx == 0) { if (ry == 0) { return (pixel(renderer, x, y)); } else { return (vline(renderer, x, y - ry, y + ry)); } } else { if (ry == 0) { return (hline(renderer, x - rx, x + rx, y)); } } /* Variable setup */ a2 = rx * rx; b2 = ry * ry; ds = 2 * a2; dt = 2 * b2; xc2 = 2 * x; yc2 = 2 * y; sab = sqrt((double)(a2 + b2)); od = (Sint16)lrint(sab*0.01) + 1; /* introduce some overdraw */ dxt = (Sint16)lrint((double)a2 / sab) + od; t = 0; s = -2 * a2 * ry; d = 0; xp = x; yp = y - ry; /* Draw */ result = 0; if (a != 255) result |= SDL_SetRenderDrawBlendMode(renderer, SDL_BLENDMODE_BLEND); /* "End points" */ result |= pixelRGBA(renderer, xp, yp, r, g, b, a); result |= pixelRGBA(renderer, xc2 - xp, yp, r, g, b, a); result |= pixelRGBA(renderer, xp, yc2 - yp, r, g, b, a); result |= pixelRGBA(renderer, xc2 - xp, yc2 - yp, r, g, b, a); for (i = 1; i <= dxt; i++) { xp--; d += t - b2; if (d >= 0) ys = yp - 1; else if ((d - s - a2) > 0) { if ((2 * d - s - a2) >= 0) ys = yp + 1; else { ys = yp; yp++; d -= s + a2; s += ds; } } else { yp++; ys = yp + 1; d -= s + a2; s += ds; } t -= dt; /* Calculate alpha */ if (s != 0) { cp = (float) abs(d) / (float) abs(s); if (cp > 1.0) { cp = 1.0; } } else { cp = 1.0; } /* Calculate weights */ weight = (Uint8) (cp * 255); iweight = 255 - weight; /* Upper half */ xx = xc2 - xp; result |= pixelRGBAWeight(renderer, xp, yp, r, g, b, a, iweight); result |= pixelRGBAWeight(renderer, xx, yp, r, g, b, a, iweight); result |= pixelRGBAWeight(renderer, xp, ys, r, g, b, a, weight); result |= pixelRGBAWeight(renderer, xx, ys, r, g, b, a, weight); /* Lower half */ yy = yc2 - yp; result |= pixelRGBAWeight(renderer, xp, yy, r, g, b, a, iweight); result |= pixelRGBAWeight(renderer, xx, yy, r, g, b, a, iweight); yy = yc2 - ys; result |= pixelRGBAWeight(renderer, xp, yy, r, g, b, a, weight); result |= pixelRGBAWeight(renderer, xx, yy, r, g, b, a, weight); } /* Replaces original approximation code dyt = abs(yp - yc); */ dyt = (Sint16)lrint((double)b2 / sab ) + od; for (i = 1; i <= dyt; i++) { yp++; d -= s + a2; if (d <= 0) xs = xp + 1; else if ((d + t - b2) < 0) { if ((2 * d + t - b2) <= 0) xs = xp - 1; else { xs = xp; xp--; d += t - b2; t -= dt; } } else { xp--; xs = xp - 1; d += t - b2; t -= dt; } s += ds; /* Calculate alpha */ if (t != 0) { cp = (float) abs(d) / (float) abs(t); if (cp > 1.0) { cp = 1.0; } } else { cp = 1.0; } /* Calculate weight */ weight = (Uint8) (cp * 255); iweight = 255 - weight; /* Left half */ xx = xc2 - xp; yy = yc2 - yp; result |= pixelRGBAWeight(renderer, xp, yp, r, g, b, a, iweight); result |= pixelRGBAWeight(renderer, xx, yp, r, g, b, a, iweight); result |= pixelRGBAWeight(renderer, xp, yy, r, g, b, a, iweight); result |= pixelRGBAWeight(renderer, xx, yy, r, g, b, a, iweight); /* Right half */ xx = xc2 - xs; result |= pixelRGBAWeight(renderer, xs, yp, r, g, b, a, weight); result |= pixelRGBAWeight(renderer, xx, yp, r, g, b, a, weight); result |= pixelRGBAWeight(renderer, xs, yy, r, g, b, a, weight); result |= pixelRGBAWeight(renderer, xx, yy, r, g, b, a, weight); } return (result); } /* ---- Filled Ellipse */ /*! \brief Draw filled ellipse with blending. \param renderer The renderer to draw on. \param x X coordinate of the center of the filled ellipse. \param y Y coordinate of the center of the filled ellipse. \param rx Horizontal radius in pixels of the filled ellipse. \param ry Vertical radius in pixels of the filled ellipse. \param color The color value of the filled ellipse to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int filledEllipseColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rx, Sint16 ry, Uint32 color) { Uint8 *c = (Uint8 *)&color; return filledEllipseRGBA(renderer, x, y, rx, ry, c[0], c[1], c[2], c[3]); } /*! \brief Draw filled ellipse with blending. \param renderer The renderer to draw on. \param x X coordinate of the center of the filled ellipse. \param y Y coordinate of the center of the filled ellipse. \param rx Horizontal radius in pixels of the filled ellipse. \param ry Vertical radius in pixels of the filled ellipse. \param r The red value of the filled ellipse to draw. \param g The green value of the filled ellipse to draw. \param b The blue value of the filled ellipse to draw. \param a The alpha value of the filled ellipse to draw. \returns Returns 0 on success, -1 on failure. */ int filledEllipseRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rx, Sint16 ry, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { int result; int ix, iy; int h, i, j, k; int oh, oi, oj, ok; int xmh, xph; int xmi, xpi; int xmj, xpj; int xmk, xpk; /* * Sanity check radii */ if ((rx < 0) || (ry < 0)) { return (-1); } /* * Special case for rx=0 - draw a vline */ if (rx == 0) { return (vlineRGBA(renderer, x, y - ry, y + ry, r, g, b, a)); } /* * Special case for ry=0 - draw a hline */ if (ry == 0) { return (hlineRGBA(renderer, x - rx, x + rx, y, r, g, b, a)); } /* * Set color */ result = 0; if (a != 255) result |= SDL_SetRenderDrawBlendMode(renderer, SDL_BLENDMODE_BLEND); result |= SDL_SetRenderDrawColor(renderer, r, g, b, a); /* * Init vars */ oh = oi = oj = ok = 0xFFFF; /* * Draw */ if (rx > ry) { ix = 0; iy = rx * 64; do { h = (ix + 32) >> 6; i = (iy + 32) >> 6; j = (h * ry) / rx; k = (i * ry) / rx; if ((ok != k) && (oj != k)) { xph = x + h; xmh = x - h; if (k > 0) { result |= hline(renderer, xmh, xph, y + k); result |= hline(renderer, xmh, xph, y - k); } else { result |= hline(renderer, xmh, xph, y); } ok = k; } if ((oj != j) && (ok != j) && (k != j)) { xmi = x - i; xpi = x + i; if (j > 0) { result |= hline(renderer, xmi, xpi, y + j); result |= hline(renderer, xmi, xpi, y - j); } else { result |= hline(renderer, xmi, xpi, y); } oj = j; } ix = ix + iy / rx; iy = iy - ix / rx; } while (i > h); } else { ix = 0; iy = ry * 64; do { h = (ix + 32) >> 6; i = (iy + 32) >> 6; j = (h * rx) / ry; k = (i * rx) / ry; if ((oi != i) && (oh != i)) { xmj = x - j; xpj = x + j; if (i > 0) { result |= hline(renderer, xmj, xpj, y + i); result |= hline(renderer, xmj, xpj, y - i); } else { result |= hline(renderer, xmj, xpj, y); } oi = i; } if ((oh != h) && (oi != h) && (i != h)) { xmk = x - k; xpk = x + k; if (h > 0) { result |= hline(renderer, xmk, xpk, y + h); result |= hline(renderer, xmk, xpk, y - h); } else { result |= hline(renderer, xmk, xpk, y); } oh = h; } ix = ix + iy / ry; iy = iy - ix / ry; } while (i > h); } return (result); } /* ----- Pie */ /*! \brief Internal float (low-speed) pie-calc implementation by drawing polygons. Note: Determines vertex array and uses polygon or filledPolygon drawing routines to render. \param renderer The renderer to draw on. \param x X coordinate of the center of the pie. \param y Y coordinate of the center of the pie. \param rad Radius in pixels of the pie. \param start Starting radius in degrees of the pie. \param end Ending radius in degrees of the pie. \param r The red value of the pie to draw. \param g The green value of the pie to draw. \param b The blue value of the pie to draw. \param a The alpha value of the pie to draw. \param filled Flag indicating if the pie should be filled (=1) or not (=0). \returns Returns 0 on success, -1 on failure. */ /* TODO: rewrite algorithm; pie is not always accurate */ int _pieRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Sint16 start, Sint16 end, Uint8 r, Uint8 g, Uint8 b, Uint8 a, Uint8 filled) { int result; double angle, start_angle, end_angle; double deltaAngle; double dr; int numpoints, i; Sint16 *vx, *vy; /* * Sanity check radii */ if (rad < 0) { return (-1); } /* * Fixup angles */ start = start % 360; end = end % 360; /* * Special case for rad=0 - draw a point */ if (rad == 0) { return (pixelRGBA(renderer, x, y, r, g, b, a)); } /* * Variable setup */ dr = (double) rad; deltaAngle = 3.0 / dr; start_angle = (double) start *(2.0 * M_PI / 360.0); end_angle = (double) end *(2.0 * M_PI / 360.0); if (start > end) { end_angle += (2.0 * M_PI); } /* We will always have at least 2 points */ numpoints = 2; /* Count points (rather than calculating it) */ angle = start_angle; while (angle < end_angle) { angle += deltaAngle; numpoints++; } /* Allocate combined vertex array */ vx = vy = (Sint16 *) malloc(2 * sizeof(Sint16) * numpoints); if (vx == NULL) { return (-1); } /* Update point to start of vy */ vy += numpoints; /* Center */ vx[0] = x; vy[0] = y; /* First vertex */ angle = start_angle; vx[1] = x + (int) (dr * cos(angle)); vy[1] = y + (int) (dr * sin(angle)); if (numpoints<3) { result = lineRGBA(renderer, vx[0], vy[0], vx[1], vy[1], r, g, b, a); } else { /* Calculate other vertices */ i = 2; angle = start_angle; while (angle < end_angle) { angle += deltaAngle; if (angle>end_angle) { angle = end_angle; } vx[i] = x + (int) (dr * cos(angle)); vy[i] = y + (int) (dr * sin(angle)); i++; } /* Draw */ if (filled) { result = filledPolygonRGBA(renderer, vx, vy, numpoints, r, g, b, a); } else { result = polygonRGBA(renderer, vx, vy, numpoints, r, g, b, a); } } /* Free combined vertex array */ free(vx); return (result); } /*! \brief Draw pie (outline) with alpha blending. \param renderer The renderer to draw on. \param x X coordinate of the center of the pie. \param y Y coordinate of the center of the pie. \param rad Radius in pixels of the pie. \param start Starting radius in degrees of the pie. \param end Ending radius in degrees of the pie. \param color The color value of the pie to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int pieColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Sint16 start, Sint16 end, Uint32 color) { Uint8 *c = (Uint8 *)&color; return _pieRGBA(renderer, x, y, rad, start, end, c[0], c[1], c[2], c[3], 0); } /*! \brief Draw pie (outline) with alpha blending. \param renderer The renderer to draw on. \param x X coordinate of the center of the pie. \param y Y coordinate of the center of the pie. \param rad Radius in pixels of the pie. \param start Starting radius in degrees of the pie. \param end Ending radius in degrees of the pie. \param r The red value of the pie to draw. \param g The green value of the pie to draw. \param b The blue value of the pie to draw. \param a The alpha value of the pie to draw. \returns Returns 0 on success, -1 on failure. */ int pieRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Sint16 start, Sint16 end, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { return _pieRGBA(renderer, x, y, rad, start, end, r, g, b, a, 0); } /*! \brief Draw filled pie with alpha blending. \param renderer The renderer to draw on. \param x X coordinate of the center of the filled pie. \param y Y coordinate of the center of the filled pie. \param rad Radius in pixels of the filled pie. \param start Starting radius in degrees of the filled pie. \param end Ending radius in degrees of the filled pie. \param color The color value of the filled pie to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int filledPieColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Sint16 start, Sint16 end, Uint32 color) { Uint8 *c = (Uint8 *)&color; return _pieRGBA(renderer, x, y, rad, start, end, c[0], c[1], c[2], c[3], 1); } /*! \brief Draw filled pie with alpha blending. \param renderer The renderer to draw on. \param x X coordinate of the center of the filled pie. \param y Y coordinate of the center of the filled pie. \param rad Radius in pixels of the filled pie. \param start Starting radius in degrees of the filled pie. \param end Ending radius in degrees of the filled pie. \param r The red value of the filled pie to draw. \param g The green value of the filled pie to draw. \param b The blue value of the filled pie to draw. \param a The alpha value of the filled pie to draw. \returns Returns 0 on success, -1 on failure. */ int filledPieRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Sint16 start, Sint16 end, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { return _pieRGBA(renderer, x, y, rad, start, end, r, g, b, a, 1); } /* ------ Trigon */ /*! \brief Draw trigon (triangle outline) with alpha blending. Note: Creates vertex array and uses polygon routine to render. \param renderer The renderer to draw on. \param x1 X coordinate of the first point of the trigon. \param y1 Y coordinate of the first point of the trigon. \param x2 X coordinate of the second point of the trigon. \param y2 Y coordinate of the second point of the trigon. \param x3 X coordinate of the third point of the trigon. \param y3 Y coordinate of the third point of the trigon. \param color The color value of the trigon to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int trigonColor(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 x3, Sint16 y3, Uint32 color) { Sint16 vx[3]; Sint16 vy[3]; vx[0]=x1; vx[1]=x2; vx[2]=x3; vy[0]=y1; vy[1]=y2; vy[2]=y3; return(polygonColor(renderer,vx,vy,3,color)); } /*! \brief Draw trigon (triangle outline) with alpha blending. \param renderer The renderer to draw on. \param x1 X coordinate of the first point of the trigon. \param y1 Y coordinate of the first point of the trigon. \param x2 X coordinate of the second point of the trigon. \param y2 Y coordinate of the second point of the trigon. \param x3 X coordinate of the third point of the trigon. \param y3 Y coordinate of the third point of the trigon. \param r The red value of the trigon to draw. \param g The green value of the trigon to draw. \param b The blue value of the trigon to draw. \param a The alpha value of the trigon to draw. \returns Returns 0 on success, -1 on failure. */ int trigonRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 x3, Sint16 y3, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { Sint16 vx[3]; Sint16 vy[3]; vx[0]=x1; vx[1]=x2; vx[2]=x3; vy[0]=y1; vy[1]=y2; vy[2]=y3; return(polygonRGBA(renderer,vx,vy,3,r,g,b,a)); } /* ------ AA-Trigon */ /*! \brief Draw anti-aliased trigon (triangle outline) with alpha blending. Note: Creates vertex array and uses aapolygon routine to render. \param renderer The renderer to draw on. \param x1 X coordinate of the first point of the aa-trigon. \param y1 Y coordinate of the first point of the aa-trigon. \param x2 X coordinate of the second point of the aa-trigon. \param y2 Y coordinate of the second point of the aa-trigon. \param x3 X coordinate of the third point of the aa-trigon. \param y3 Y coordinate of the third point of the aa-trigon. \param color The color value of the aa-trigon to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int aatrigonColor(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 x3, Sint16 y3, Uint32 color) { Sint16 vx[3]; Sint16 vy[3]; vx[0]=x1; vx[1]=x2; vx[2]=x3; vy[0]=y1; vy[1]=y2; vy[2]=y3; return(aapolygonColor(renderer,vx,vy,3,color)); } /*! \brief Draw anti-aliased trigon (triangle outline) with alpha blending. \param renderer The renderer to draw on. \param x1 X coordinate of the first point of the aa-trigon. \param y1 Y coordinate of the first point of the aa-trigon. \param x2 X coordinate of the second point of the aa-trigon. \param y2 Y coordinate of the second point of the aa-trigon. \param x3 X coordinate of the third point of the aa-trigon. \param y3 Y coordinate of the third point of the aa-trigon. \param r The red value of the aa-trigon to draw. \param g The green value of the aa-trigon to draw. \param b The blue value of the aa-trigon to draw. \param a The alpha value of the aa-trigon to draw. \returns Returns 0 on success, -1 on failure. */ int aatrigonRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 x3, Sint16 y3, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { Sint16 vx[3]; Sint16 vy[3]; vx[0]=x1; vx[1]=x2; vx[2]=x3; vy[0]=y1; vy[1]=y2; vy[2]=y3; return(aapolygonRGBA(renderer,vx,vy,3,r,g,b,a)); } /* ------ Filled Trigon */ /*! \brief Draw filled trigon (triangle) with alpha blending. Note: Creates vertex array and uses aapolygon routine to render. \param renderer The renderer to draw on. \param x1 X coordinate of the first point of the filled trigon. \param y1 Y coordinate of the first point of the filled trigon. \param x2 X coordinate of the second point of the filled trigon. \param y2 Y coordinate of the second point of the filled trigon. \param x3 X coordinate of the third point of the filled trigon. \param y3 Y coordinate of the third point of the filled trigon. \param color The color value of the filled trigon to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int filledTrigonColor(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 x3, Sint16 y3, Uint32 color) { Sint16 vx[3]; Sint16 vy[3]; vx[0]=x1; vx[1]=x2; vx[2]=x3; vy[0]=y1; vy[1]=y2; vy[2]=y3; return(filledPolygonColor(renderer,vx,vy,3,color)); } /*! \brief Draw filled trigon (triangle) with alpha blending. Note: Creates vertex array and uses aapolygon routine to render. \param renderer The renderer to draw on. \param x1 X coordinate of the first point of the filled trigon. \param y1 Y coordinate of the first point of the filled trigon. \param x2 X coordinate of the second point of the filled trigon. \param y2 Y coordinate of the second point of the filled trigon. \param x3 X coordinate of the third point of the filled trigon. \param y3 Y coordinate of the third point of the filled trigon. \param r The red value of the filled trigon to draw. \param g The green value of the filled trigon to draw. \param b The blue value of the filled trigon to draw. \param a The alpha value of the filled trigon to draw. \returns Returns 0 on success, -1 on failure. */ int filledTrigonRGBA(SDL_Renderer * renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 x3, Sint16 y3, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { Sint16 vx[3]; Sint16 vy[3]; vx[0]=x1; vx[1]=x2; vx[2]=x3; vy[0]=y1; vy[1]=y2; vy[2]=y3; return(filledPolygonRGBA(renderer,vx,vy,3,r,g,b,a)); } /* ---- Polygon */ /*! \brief Draw polygon with alpha blending. \param renderer The renderer to draw on. \param vx Vertex array containing X coordinates of the points of the polygon. \param vy Vertex array containing Y coordinates of the points of the polygon. \param n Number of points in the vertex array. Minimum number is 3. \param color The color value of the polygon to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int polygonColor(SDL_Renderer * renderer, const Sint16 * vx, const Sint16 * vy, int n, Uint32 color) { Uint8 *c = (Uint8 *)&color; return polygonRGBA(renderer, vx, vy, n, c[0], c[1], c[2], c[3]); } /*! \brief Draw polygon with the currently set color and blend mode. \param renderer The renderer to draw on. \param vx Vertex array containing X coordinates of the points of the polygon. \param vy Vertex array containing Y coordinates of the points of the polygon. \param n Number of points in the vertex array. Minimum number is 3. \returns Returns 0 on success, -1 on failure. */ int polygon(SDL_Renderer * renderer, const Sint16 * vx, const Sint16 * vy, int n) { /* * Draw */ int result = 0; int i, nn; SDL_Point* points; /* * Vertex array NULL check */ if (vx == NULL) { return (-1); } if (vy == NULL) { return (-1); } /* * Sanity check */ if (n < 3) { return (-1); } /* * Create array of points */ nn = n + 1; points = (SDL_Point*)malloc(sizeof(SDL_Point) * nn); if (points == NULL) { return -1; } for (i=0; ib. */ int _gfxPrimitivesCompareInt(const void *a, const void *b) { return (*(const int *) a) - (*(const int *) b); } /*! \brief Global vertex array to use if optional parameters are not given in filledPolygonMT calls. Note: Used for non-multithreaded (default) operation of filledPolygonMT. */ static int *gfxPrimitivesPolyIntsGlobal = NULL; /*! \brief Flag indicating if global vertex array was already allocated. Note: Used for non-multithreaded (default) operation of filledPolygonMT. */ static int gfxPrimitivesPolyAllocatedGlobal = 0; /*! \brief Draw filled polygon with alpha blending (multi-threaded capable). Note: The last two parameters are optional; but are required for multithreaded operation. \param renderer The renderer to draw on. \param vx Vertex array containing X coordinates of the points of the filled polygon. \param vy Vertex array containing Y coordinates of the points of the filled polygon. \param n Number of points in the vertex array. Minimum number is 3. \param r The red value of the filled polygon to draw. \param g The green value of the filled polygon to draw. \param b The blue value of the filled polygon to draw. \param a The alpha value of the filled polygon to draw. \param polyInts Preallocated, temporary vertex array used for sorting vertices. Required for multithreaded operation; set to NULL otherwise. \param polyAllocated Flag indicating if temporary vertex array was allocated. Required for multithreaded operation; set to NULL otherwise. \returns Returns 0 on success, -1 on failure. */ int filledPolygonRGBAMT(SDL_Renderer * renderer, const Sint16 * vx, const Sint16 * vy, int n, Uint8 r, Uint8 g, Uint8 b, Uint8 a, int **polyInts, int *polyAllocated) { int result; int i; int y, xa, xb; int miny, maxy; int x1, y1; int x2, y2; int ind1, ind2; int ints; int *gfxPrimitivesPolyInts = NULL; int *gfxPrimitivesPolyIntsNew = NULL; int gfxPrimitivesPolyAllocated = 0; /* * Vertex array NULL check */ if (vx == NULL) { return (-1); } if (vy == NULL) { return (-1); } /* * Sanity check number of edges */ if (n < 3) { return -1; } /* * Map polygon cache */ if ((polyInts==NULL) || (polyAllocated==NULL)) { /* Use global cache */ gfxPrimitivesPolyInts = gfxPrimitivesPolyIntsGlobal; gfxPrimitivesPolyAllocated = gfxPrimitivesPolyAllocatedGlobal; } else { /* Use local cache */ gfxPrimitivesPolyInts = *polyInts; gfxPrimitivesPolyAllocated = *polyAllocated; } /* * Allocate temp array, only grow array */ if (!gfxPrimitivesPolyAllocated) { gfxPrimitivesPolyInts = (int *) malloc(sizeof(int) * n); gfxPrimitivesPolyAllocated = n; } else { if (gfxPrimitivesPolyAllocated < n) { gfxPrimitivesPolyIntsNew = (int *) realloc(gfxPrimitivesPolyInts, sizeof(int) * n); if (!gfxPrimitivesPolyIntsNew) { if (!gfxPrimitivesPolyInts) { free(gfxPrimitivesPolyInts); gfxPrimitivesPolyInts = NULL; } gfxPrimitivesPolyAllocated = 0; } else { gfxPrimitivesPolyInts = gfxPrimitivesPolyIntsNew; gfxPrimitivesPolyAllocated = n; } } } /* * Check temp array */ if (gfxPrimitivesPolyInts==NULL) { gfxPrimitivesPolyAllocated = 0; } /* * Update cache variables */ if ((polyInts==NULL) || (polyAllocated==NULL)) { gfxPrimitivesPolyIntsGlobal = gfxPrimitivesPolyInts; gfxPrimitivesPolyAllocatedGlobal = gfxPrimitivesPolyAllocated; } else { *polyInts = gfxPrimitivesPolyInts; *polyAllocated = gfxPrimitivesPolyAllocated; } /* * Check temp array again */ if (gfxPrimitivesPolyInts==NULL) { return(-1); } /* * Determine Y maxima */ miny = vy[0]; maxy = vy[0]; for (i = 1; (i < n); i++) { if (vy[i] < miny) { miny = vy[i]; } else if (vy[i] > maxy) { maxy = vy[i]; } } /* * Draw, scanning y */ result = 0; for (y = miny; (y <= maxy); y++) { ints = 0; for (i = 0; (i < n); i++) { if (!i) { ind1 = n - 1; ind2 = 0; } else { ind1 = i - 1; ind2 = i; } y1 = vy[ind1]; y2 = vy[ind2]; if (y1 < y2) { x1 = vx[ind1]; x2 = vx[ind2]; } else if (y1 > y2) { y2 = vy[ind1]; y1 = vy[ind2]; x2 = vx[ind1]; x1 = vx[ind2]; } else { continue; } if ( ((y >= y1) && (y < y2)) || ((y == maxy) && (y > y1) && (y <= y2)) ) { gfxPrimitivesPolyInts[ints++] = ((65536 * (y - y1)) / (y2 - y1)) * (x2 - x1) + (65536 * x1); } } qsort(gfxPrimitivesPolyInts, ints, sizeof(int), _gfxPrimitivesCompareInt); /* * Set color */ result = 0; if (a != 255) result |= SDL_SetRenderDrawBlendMode(renderer, SDL_BLENDMODE_BLEND); result |= SDL_SetRenderDrawColor(renderer, r, g, b, a); for (i = 0; (i < ints); i += 2) { xa = gfxPrimitivesPolyInts[i] + 1; xa = (xa >> 16) + ((xa & 32768) >> 15); xb = gfxPrimitivesPolyInts[i+1] - 1; xb = (xb >> 16) + ((xb & 32768) >> 15); result |= hline(renderer, xa, xb, y); } } return (result); } /*! \brief Draw filled polygon with alpha blending. \param renderer The renderer to draw on. \param vx Vertex array containing X coordinates of the points of the filled polygon. \param vy Vertex array containing Y coordinates of the points of the filled polygon. \param n Number of points in the vertex array. Minimum number is 3. \param color The color value of the filled polygon to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int filledPolygonColor(SDL_Renderer * renderer, const Sint16 * vx, const Sint16 * vy, int n, Uint32 color) { Uint8 *c = (Uint8 *)&color; return filledPolygonRGBAMT(renderer, vx, vy, n, c[0], c[1], c[2], c[3], NULL, NULL); } /*! \brief Draw filled polygon with alpha blending. \param renderer The renderer to draw on. \param vx Vertex array containing X coordinates of the points of the filled polygon. \param vy Vertex array containing Y coordinates of the points of the filled polygon. \param n Number of points in the vertex array. Minimum number is 3. \param r The red value of the filled polygon to draw. \param g The green value of the filled polygon to draw. \param b The blue value of the filed polygon to draw. \param a The alpha value of the filled polygon to draw. \returns Returns 0 on success, -1 on failure. */ int filledPolygonRGBA(SDL_Renderer * renderer, const Sint16 * vx, const Sint16 * vy, int n, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { return filledPolygonRGBAMT(renderer, vx, vy, n, r, g, b, a, NULL, NULL); } /* ---- Textured Polygon */ /*! \brief Internal function to draw a textured horizontal line. \param renderer The renderer to draw on. \param x1 X coordinate of the first point (i.e. left) of the line. \param x2 X coordinate of the second point (i.e. right) of the line. \param y Y coordinate of the points of the line. \param texture The texture to retrieve color information from. \param texture_w The width of the texture. \param texture_h The height of the texture. \param texture_dx The X offset for the texture lookup. \param texture_dy The Y offset for the textured lookup. \returns Returns 0 on success, -1 on failure. */ int _HLineTextured(SDL_Renderer *renderer, Sint16 x1, Sint16 x2, Sint16 y, SDL_Texture *texture, int texture_w, int texture_h, int texture_dx, int texture_dy) { Sint16 w; Sint16 xtmp; int result = 0; int texture_x_walker; int texture_y_start; SDL_Rect source_rect,dst_rect; int pixels_written,write_width; /* * Swap x1, x2 if required to ensure x1<=x2 */ if (x1 > x2) { xtmp = x1; x1 = x2; x2 = xtmp; } /* * Calculate width to draw */ w = x2 - x1 + 1; /* * Determine where in the texture we start drawing */ texture_x_walker = (x1 - texture_dx) % texture_w; if (texture_x_walker < 0){ texture_x_walker = texture_w + texture_x_walker ; } texture_y_start = (y + texture_dy) % texture_h; if (texture_y_start < 0){ texture_y_start = texture_h + texture_y_start; } /* setup the source rectangle; we are only drawing one horizontal line */ source_rect.y = texture_y_start; source_rect.x = texture_x_walker; source_rect.h = 1; /* we will draw to the current y */ dst_rect.y = y; dst_rect.h = 1; /* if there are enough pixels left in the current row of the texture */ /* draw it all at once */ if (w <= texture_w -texture_x_walker){ source_rect.w = w; source_rect.x = texture_x_walker; dst_rect.x= x1; dst_rect.w = source_rect.w; result = (SDL_RenderCopy(renderer, texture, &source_rect, &dst_rect) == 0); } else { /* we need to draw multiple times */ /* draw the first segment */ pixels_written = texture_w - texture_x_walker; source_rect.w = pixels_written; source_rect.x = texture_x_walker; dst_rect.x= x1; dst_rect.w = source_rect.w; result |= (SDL_RenderCopy(renderer, texture, &source_rect, &dst_rect) == 0); write_width = texture_w; /* now draw the rest */ /* set the source x to 0 */ source_rect.x = 0; while (pixels_written < w){ if (write_width >= w - pixels_written) { write_width = w - pixels_written; } source_rect.w = write_width; dst_rect.x = x1 + pixels_written; dst_rect.w = source_rect.w; result |= (SDL_RenderCopy(renderer, texture, &source_rect, &dst_rect) == 0); pixels_written += write_width; } } return result; } /*! \brief Draws a polygon filled with the given texture (Multi-Threading Capable). \param renderer The renderer to draw on. \param vx array of x vector components \param vy array of x vector components \param n the amount of vectors in the vx and vy array \param texture the sdl surface to use to fill the polygon \param texture_dx the offset of the texture relative to the screeen. If you move the polygon 10 pixels to the left and want the texture to apear the same you need to increase the texture_dx value \param texture_dy see texture_dx \param polyInts Preallocated temp array storage for vertex sorting (used for multi-threaded operation) \param polyAllocated Flag indicating oif the temp array was allocated (used for multi-threaded operation) \returns Returns 0 on success, -1 on failure. */ int texturedPolygonMT(SDL_Renderer *renderer, const Sint16 * vx, const Sint16 * vy, int n, SDL_Surface * texture, int texture_dx, int texture_dy, int **polyInts, int *polyAllocated) { int result; int i; int y, xa, xb; int minx,maxx,miny, maxy; int x1, y1; int x2, y2; int ind1, ind2; int ints; int *gfxPrimitivesPolyInts = NULL; int *gfxPrimitivesPolyIntsTemp = NULL; int gfxPrimitivesPolyAllocated = 0; SDL_Texture *textureAsTexture = NULL; /* * Sanity check number of edges */ if (n < 3) { return -1; } /* * Map polygon cache */ if ((polyInts==NULL) || (polyAllocated==NULL)) { /* Use global cache */ gfxPrimitivesPolyInts = gfxPrimitivesPolyIntsGlobal; gfxPrimitivesPolyAllocated = gfxPrimitivesPolyAllocatedGlobal; } else { /* Use local cache */ gfxPrimitivesPolyInts = *polyInts; gfxPrimitivesPolyAllocated = *polyAllocated; } /* * Allocate temp array, only grow array */ if (!gfxPrimitivesPolyAllocated) { gfxPrimitivesPolyInts = (int *) malloc(sizeof(int) * n); gfxPrimitivesPolyAllocated = n; } else { if (gfxPrimitivesPolyAllocated < n) { gfxPrimitivesPolyIntsTemp = (int *) realloc(gfxPrimitivesPolyInts, sizeof(int) * n); if (gfxPrimitivesPolyIntsTemp == NULL) { /* Realloc failed - keeps original memory block, but fails this operation */ return(-1); } gfxPrimitivesPolyInts = gfxPrimitivesPolyIntsTemp; gfxPrimitivesPolyAllocated = n; } } /* * Check temp array */ if (gfxPrimitivesPolyInts==NULL) { gfxPrimitivesPolyAllocated = 0; } /* * Update cache variables */ if ((polyInts==NULL) || (polyAllocated==NULL)) { gfxPrimitivesPolyIntsGlobal = gfxPrimitivesPolyInts; gfxPrimitivesPolyAllocatedGlobal = gfxPrimitivesPolyAllocated; } else { *polyInts = gfxPrimitivesPolyInts; *polyAllocated = gfxPrimitivesPolyAllocated; } /* * Check temp array again */ if (gfxPrimitivesPolyInts==NULL) { return(-1); } /* * Determine X,Y minima,maxima */ miny = vy[0]; maxy = vy[0]; minx = vx[0]; maxx = vx[0]; for (i = 1; (i < n); i++) { if (vy[i] < miny) { miny = vy[i]; } else if (vy[i] > maxy) { maxy = vy[i]; } if (vx[i] < minx) { minx = vx[i]; } else if (vx[i] > maxx) { maxx = vx[i]; } } /* Create texture for drawing */ textureAsTexture = SDL_CreateTextureFromSurface(renderer, texture); if (textureAsTexture == NULL) { return -1; } SDL_SetTextureBlendMode(textureAsTexture, SDL_BLENDMODE_BLEND); /* * Draw, scanning y */ result = 0; for (y = miny; (y <= maxy); y++) { ints = 0; for (i = 0; (i < n); i++) { if (!i) { ind1 = n - 1; ind2 = 0; } else { ind1 = i - 1; ind2 = i; } y1 = vy[ind1]; y2 = vy[ind2]; if (y1 < y2) { x1 = vx[ind1]; x2 = vx[ind2]; } else if (y1 > y2) { y2 = vy[ind1]; y1 = vy[ind2]; x2 = vx[ind1]; x1 = vx[ind2]; } else { continue; } if ( ((y >= y1) && (y < y2)) || ((y == maxy) && (y > y1) && (y <= y2)) ) { gfxPrimitivesPolyInts[ints++] = ((65536 * (y - y1)) / (y2 - y1)) * (x2 - x1) + (65536 * x1); } } qsort(gfxPrimitivesPolyInts, ints, sizeof(int), _gfxPrimitivesCompareInt); for (i = 0; (i < ints); i += 2) { xa = gfxPrimitivesPolyInts[i] + 1; xa = (xa >> 16) + ((xa & 32768) >> 15); xb = gfxPrimitivesPolyInts[i+1] - 1; xb = (xb >> 16) + ((xb & 32768) >> 15); result |= _HLineTextured(renderer, xa, xb, y, textureAsTexture, texture->w, texture->h, texture_dx, texture_dy); } } SDL_RenderPresent(renderer); SDL_DestroyTexture(textureAsTexture); return (result); } /*! \brief Draws a polygon filled with the given texture. This standard version is calling multithreaded versions with NULL cache parameters. \param renderer The renderer to draw on. \param vx array of x vector components \param vy array of x vector components \param n the amount of vectors in the vx and vy array \param texture the sdl surface to use to fill the polygon \param texture_dx the offset of the texture relative to the screeen. if you move the polygon 10 pixels to the left and want the texture to apear the same you need to increase the texture_dx value \param texture_dy see texture_dx \returns Returns 0 on success, -1 on failure. */ int texturedPolygon(SDL_Renderer *renderer, const Sint16 * vx, const Sint16 * vy, int n, SDL_Surface *texture, int texture_dx, int texture_dy) { /* * Draw */ return (texturedPolygonMT(renderer, vx, vy, n, texture, texture_dx, texture_dy, NULL, NULL)); } /* ---- Character */ /*! \brief Global cache for NxM pixel font textures created at runtime. */ static SDL_Texture *gfxPrimitivesFont[256]; /*! \brief Pointer to the current font data. Default is a 8x8 pixel internal font. */ static const unsigned char *currentFontdata = gfxPrimitivesFontdata; /*! \brief Width of the current font. Default is 8. */ static Uint32 charWidth = 8; /*! \brief Height of the current font. Default is 8. */ static Uint32 charHeight = 8; /*! \brief Width for rendering. Autocalculated. */ static Uint32 charWidthLocal = 8; /*! \brief Height for rendering. Autocalculated. */ static Uint32 charHeightLocal = 8; /*! \brief Pitch of the current font in bytes. Default is 1. */ static Uint32 charPitch = 1; /*! \brief Characters 90deg clockwise rotations. Default is 0. Max is 3. */ static Uint32 charRotation = 0; static Uint32 charZoomX = 1; static Uint32 charZoomY = 1; /*! \brief Character data size in bytes of the current font. Default is 8. */ static Uint32 charSize = 8; /*! \brief Sets or resets the current global font data. The font data array is organized in follows: [fontdata] = [character 0][character 1]...[character 255] where [character n] = [byte 1 row 1][byte 2 row 1]...[byte {pitch} row 1][byte 1 row 2] ...[byte {pitch} row height] where [byte n] = [bit 0]...[bit 7] where [bit n] = [0 for transparent pixel|1 for colored pixel] \param fontdata Pointer to array of font data. Set to NULL, to reset global font to the default 8x8 font. \param cw Width of character in bytes. Ignored if fontdata==NULL. \param ch Height of character in bytes. Ignored if fontdata==NULL. */ void gfxPrimitivesSetFont(const void *fontdata, Uint32 cw, Uint32 ch) { int i; if ((fontdata) && (cw) && (ch)) { currentFontdata = (unsigned char *)fontdata; charWidth = cw; charHeight = ch; } else { currentFontdata = gfxPrimitivesFontdata; charWidth = 8; charHeight = 8; } charPitch = (charWidth+7)/8; charSize = charPitch * charHeight; /* Maybe flip width/height for rendering */ if ((charRotation==1) || (charRotation==3)) { charWidthLocal = charHeight; charHeightLocal = charWidth; } else { charWidthLocal = charWidth; charHeightLocal = charHeight; } /* Clear character cache */ for (i = 0; i < 256; i++) { if (gfxPrimitivesFont[i]) { SDL_DestroyTexture(gfxPrimitivesFont[i]); gfxPrimitivesFont[i] = NULL; } } } const void *gfxPrimitivesGetFont(void) { return currentFontdata; } /*! \brief Sets current global font character rotation steps. Default is 0 (no rotation). 1 = 90deg clockwise. 2 = 180deg clockwise. 3 = 270deg clockwise. Changing the rotation, will reset the character cache. \param rotation Number of 90deg clockwise steps to rotate */ void gfxPrimitivesSetFontRotation(Uint32 rotation) { int i; rotation = rotation & 3; if (charRotation != rotation) { /* Store rotation */ charRotation = rotation; /* Maybe flip width/height for rendering */ if ((charRotation==1) || (charRotation==3)) { charWidthLocal = charHeight; charHeightLocal = charWidth; } else { charWidthLocal = charWidth; charHeightLocal = charHeight; } /* Clear character cache */ for (i = 0; i < 256; i++) { if (gfxPrimitivesFont[i]) { SDL_DestroyTexture(gfxPrimitivesFont[i]); gfxPrimitivesFont[i] = NULL; } } } } void gfxPrimitivesSetFontZoom(Uint32 zoomx, Uint32 zoomy) { int i; charZoomX = zoomx ; charZoomY = zoomy ; /* Clear character cache */ for (i = 0; i < 256; i++) { if (gfxPrimitivesFont[i]) { SDL_DestroyTexture(gfxPrimitivesFont[i]); gfxPrimitivesFont[i] = NULL; } } } /*! \brief Draw a character of the currently set font. \param renderer The Renderer to draw on. \param x X (horizontal) coordinate of the upper left corner of the character. \param y Y (vertical) coordinate of the upper left corner of the character. \param c The character to draw. \param r The red value of the character to draw. \param g The green value of the character to draw. \param b The blue value of the character to draw. \param a The alpha value of the character to draw. \returns Returns 0 on success, -1 on failure. */ int characterRGBA(SDL_Renderer *renderer, Sint16 x, Sint16 y, char c, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { SDL_Rect srect; SDL_Rect drect; int result; Uint32 ix, iy; const unsigned char *charpos; Uint8 *curpos; Uint8 patt, mask; Uint8 *linepos; Uint32 pitch; SDL_Surface *character; SDL_Surface *rotatedCharacter; SDL_Surface *zoomedCharacter; Uint32 ci; /* * Setup source rectangle */ srect.x = 0; srect.y = 0; srect.w = charWidthLocal * charZoomX; srect.h = charHeightLocal * charZoomY; /* * Setup destination rectangle */ drect.x = x; drect.y = y; drect.w = charWidthLocal * charZoomX; drect.h = charHeightLocal * charZoomY; /* Character index in cache */ ci = (unsigned char) c; /* * Create new charWidth x charHeight bitmap surface if not already present. * Might get rotated later. */ if (gfxPrimitivesFont[ci] == NULL) { /* * Redraw character into surface */ character = SDL_CreateRGBSurface(SDL_SWSURFACE, charWidth, charHeight, 32, 0xFF000000, 0x00FF0000, 0x0000FF00, 0x000000FF); if (character == NULL) { return (-1); } charpos = currentFontdata + ci * charSize; linepos = (Uint8 *)character->pixels; pitch = character->pitch; /* * Drawing loop */ patt = 0; for (iy = 0; iy < charHeight; iy++) { mask = 0x00; curpos = linepos; for (ix = 0; ix < charWidth; ix++) { if (!(mask >>= 1)) { patt = *charpos++; mask = 0x80; } if (patt & mask) { *(Uint32 *)curpos = 0xffffffff; } else { *(Uint32 *)curpos = 0; } curpos += 4; } linepos += pitch; } /* Maybe zoom character */ if ((charZoomX != 1) || (charZoomY != 1)) { zoomedCharacter = zoomSurface(character, (double)charZoomX, (double)charZoomY, SMOOTHING_OFF); SDL_FreeSurface(character); character = zoomedCharacter; } /* Maybe rotate and replace cached image */ if (charRotation>0) { rotatedCharacter = rotateSurface90Degrees(character, charRotation); SDL_FreeSurface(character); character = rotatedCharacter; } /* Convert temp surface into texture */ gfxPrimitivesFont[ci] = SDL_CreateTextureFromSurface(renderer, character); SDL_FreeSurface(character); /* * Check pointer */ if (gfxPrimitivesFont[ci] == NULL) { return (-1); } } /* * Set color */ result = 0; result |= SDL_SetTextureColorMod(gfxPrimitivesFont[ci], r, g, b); result |= SDL_SetTextureAlphaMod(gfxPrimitivesFont[ci], a); /* * Draw texture onto destination */ result |= SDL_RenderCopy(renderer, gfxPrimitivesFont[ci], &srect, &drect); return (result); } /*! \brief Draw a character of the currently set font. \param renderer The renderer to draw on. \param x X (horizontal) coordinate of the upper left corner of the character. \param y Y (vertical) coordinate of the upper left corner of the character. \param c The character to draw. \param color The color value of the character to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int characterColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, char c, Uint32 color) { Uint8 *co = (Uint8 *)&color; return characterRGBA(renderer, x, y, c, co[0], co[1], co[2], co[3]); } /*! \brief Draw a string in the currently set font. The spacing between consequtive characters in the string is the fixed number of pixels of the character width of the current global font. \param renderer The renderer to draw on. \param x X (horizontal) coordinate of the upper left corner of the string. \param y Y (vertical) coordinate of the upper left corner of the string. \param s The string to draw. \param color The color value of the string to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int stringColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, const char *s, Uint32 color) { Uint8 *c = (Uint8 *)&color; return stringRGBA(renderer, x, y, s, c[0], c[1], c[2], c[3]); } /*! \brief Draw a string in the currently set font. \param renderer The renderer to draw on. \param x X (horizontal) coordinate of the upper left corner of the string. \param y Y (vertical) coordinate of the upper left corner of the string. \param s The string to draw. \param r The red value of the string to draw. \param g The green value of the string to draw. \param b The blue value of the string to draw. \param a The alpha value of the string to draw. \returns Returns 0 on success, -1 on failure. */ int stringRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, const char *s, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { int result = 0; Sint16 curx = x; Sint16 cury = y; const char *curchar = s; while (*curchar && !result) { result |= characterRGBA(renderer, curx, cury, *curchar, r, g, b, a); switch (charRotation) { case 0: curx += charWidthLocal * charZoomX; break; case 2: curx -= charWidthLocal * charZoomX; break; case 1: cury += charHeightLocal * charZoomY; break; case 3: cury -= charHeightLocal * charZoomY; break; } curchar++; } return (result); } /* ---- Bezier curve */ /*! \brief Internal function to calculate bezier interpolator of data array with ndata values at position 't'. \param data Array of values. \param ndata Size of array. \param t Position for which to calculate interpolated value. t should be between [0, ndata]. \returns Interpolated value at position t, value[0] when t<0, value[n-1] when t>n. */ double _evaluateBezier (double *data, int ndata, double t) { double mu, result; int n,k,kn,nn,nkn; double blend,muk,munk; /* Sanity check bounds */ if (t<0.0) { return(data[0]); } if (t>=(double)ndata) { return(data[ndata-1]); } /* Adjust t to the range 0.0 to 1.0 */ mu=t/(double)ndata; /* Calculate interpolate */ n=ndata-1; result=0.0; muk = 1; munk = pow(1-mu,(double)n); for (k=0;k<=n;k++) { nn = n; kn = k; nkn = n - k; blend = muk * munk; muk *= mu; munk /= (1-mu); while (nn >= 1) { blend *= nn; nn--; if (kn > 1) { blend /= (double)kn; kn--; } if (nkn > 1) { blend /= (double)nkn; nkn--; } } result += data[k] * blend; } return (result); } /*! \brief Draw a bezier curve with alpha blending. \param renderer The renderer to draw on. \param vx Vertex array containing X coordinates of the points of the bezier curve. \param vy Vertex array containing Y coordinates of the points of the bezier curve. \param n Number of points in the vertex array. Minimum number is 3. \param s Number of steps for the interpolation. Minimum number is 2. \param color The color value of the bezier curve to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int bezierColor(SDL_Renderer * renderer, const Sint16 * vx, const Sint16 * vy, int n, int s, Uint32 color) { Uint8 *c = (Uint8 *)&color; return bezierRGBA(renderer, vx, vy, n, s, c[0], c[1], c[2], c[3]); } /*! \brief Draw a bezier curve with alpha blending. \param renderer The renderer to draw on. \param vx Vertex array containing X coordinates of the points of the bezier curve. \param vy Vertex array containing Y coordinates of the points of the bezier curve. \param n Number of points in the vertex array. Minimum number is 3. \param s Number of steps for the interpolation. Minimum number is 2. \param r The red value of the bezier curve to draw. \param g The green value of the bezier curve to draw. \param b The blue value of the bezier curve to draw. \param a The alpha value of the bezier curve to draw. \returns Returns 0 on success, -1 on failure. */ int bezierRGBA(SDL_Renderer * renderer, const Sint16 * vx, const Sint16 * vy, int n, int s, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { int result; int i; double *x, *y, t, stepsize; Sint16 x1, y1, x2, y2; /* * Sanity check */ if (n < 3) { return (-1); } if (s < 2) { return (-1); } /* * Variable setup */ stepsize=(double)1.0/(double)s; /* Transfer vertices into float arrays */ if ((x=(double *)malloc(sizeof(double)*(n+1)))==NULL) { return(-1); } if ((y=(double *)malloc(sizeof(double)*(n+1)))==NULL) { free(x); return(-1); } for (i=0; ix = x1; b->y = y1; /* dx = abs(x2-x1), s1 = sign(x2-x1) */ if ((b->dx = x2 - x1) != 0) { if (b->dx < 0) { b->dx = -b->dx; b->s1 = -1; } else { b->s1 = 1; } } else { b->s1 = 0; } /* dy = abs(y2-y1), s2 = sign(y2-y1) */ if ((b->dy = y2 - y1) != 0) { if (b->dy < 0) { b->dy = -b->dy; b->s2 = -1; } else { b->s2 = 1; } } else { b->s2 = 0; } if (b->dy > b->dx) { temp = b->dx; b->dx = b->dy; b->dy = temp; b->swapdir = 1; } else { b->swapdir = 0; } b->count = (b->dx<0) ? 0 : (unsigned int)b->dx; b->dy <<= 1; b->error = b->dy - b->dx; b->dx <<= 1; return(0); } /*! \brief Internal function to move Bresenham line iterator to the next position. Maybe updates the x and y coordinates of the iterator struct. \param b Pointer to struct for bresenham line drawing state. \returns Returns 0 on success, 1 if last point was reached, 2 if moving past end-of-line, -1 on failure. */ int _bresenhamIterate(SDL2_gfxBresenhamIterator *b) { if (b==NULL) { return (-1); } /* last point check */ if (b->count==0) { return (2); } while (b->error >= 0) { if (b->swapdir) { b->x += b->s1; } else { b->y += b->s2; } b->error -= b->dx; } if (b->swapdir) { b->y += b->s2; } else { b->x += b->s1; } b->error += b->dy; b->count--; /* count==0 indicates "end-of-line" */ return ((b->count) ? 0 : 1); } /* Code for Murphy thick line algorithm from http://kt8216.unixcab.org/murphy/ */ /*********************************************************************** * * * X BASED LINES * * * ***********************************************************************/ static void x_perpendicular(SDL_Renderer *B, int x0,int y0,int dx,int dy,int xstep, int ystep, int einit,int w_left, int w_right,int winit) { int x,y,threshold,E_diag,E_square; int tk; int error; int p,q; threshold = dx - 2*dy; E_diag= -2*dx; E_square= 2*dy; p=q=0; y= y0; x= x0; error= einit; tk= dx+dy-winit; while(tk<=w_left) { SDL_RenderDrawPoint(B,x,y); if (error>=threshold) { x= x + xstep; error = error + E_diag; tk= tk + 2*dy; } error = error + E_square; y= y + ystep; tk= tk + 2*dx; q++; } y= y0; x= x0; error= -einit; tk= dx+dy+winit; while(tk<=w_right) { if (p) SDL_RenderDrawPoint(B,x,y); if (error>threshold) { x= x - xstep; error = error + E_diag; tk= tk + 2*dy; } error = error + E_square; y= y - ystep; tk= tk + 2*dx; p++; } if (q==0 && p<2) SDL_RenderDrawPoint(B,x0,y0); // we need this for very thin lines } static void x_varthick_line (SDL_Renderer *B, int style, int x0,int y0,int dx,int dy,int xstep, int ystep, double thickness, int pxstep,int pystep) { int p_error, error, x,y, threshold, E_diag, E_square, length, p; int w_left, w_right; double D; p_error= 0; error= 0; y= y0; x= x0; threshold = dx - 2*dy; E_diag= -2*dx; E_square= 2*dy; length = dx+1; D= sqrt(dx*dx+dy*dy); w_left= thickness*D + 0.5; w_right= 2.0*thickness*D + 0.5; w_right -= w_left; for(p=0;p=threshold) { y= y + ystep; error = error + E_diag; if (p_error>=threshold) { if (style < 0) x_perpendicular(B,x,y, dx, dy, pxstep, pystep, (p_error+E_diag+E_square), w_left,w_right,error); p_error= p_error + E_diag; } p_error= p_error + E_square; } error = error + E_square; x= x + xstep; } } /*********************************************************************** * * * Y BASED LINES * * * ***********************************************************************/ static void y_perpendicular(SDL_Renderer *B, int x0,int y0,int dx,int dy,int xstep, int ystep, int einit,int w_left, int w_right,int winit) { int x,y,threshold,E_diag,E_square; int tk; int error; int p,q; p=q= 0; threshold = dy - 2*dx; E_diag= -2*dy; E_square= 2*dx; y= y0; x= x0; error= -einit; tk= dx+dy+winit; while(tk<=w_left) { SDL_RenderDrawPoint(B,x,y); if (error>threshold) { y= y + ystep; error = error + E_diag; tk= tk + 2*dx; } error = error + E_square; x= x + xstep; tk= tk + 2*dy; q++; } y= y0; x= x0; error= einit; tk= dx+dy-winit; while(tk<=w_right) { if (p) SDL_RenderDrawPoint(B,x,y); if (error>=threshold) { y= y - ystep; error = error + E_diag; tk= tk + 2*dx; } error = error + E_square; x= x - xstep; tk= tk + 2*dy; p++; } if (q==0 && p<2) SDL_RenderDrawPoint(B,x0,y0); // we need this for very thin lines } static void y_varthick_line (SDL_Renderer *B, int style, int x0,int y0,int dx,int dy,int xstep, int ystep, double thickness, int pxstep,int pystep) { int p_error, error, x,y, threshold, E_diag, E_square, length, p; int w_left, w_right; double D; p_error= 0; error= 0; y= y0; x= x0; threshold = dy - 2*dx; E_diag= -2*dy; E_square= 2*dx; length = dy+1; D= sqrt(dx*dx+dy*dy); w_left= thickness*D + 0.5; w_right= 2.0*thickness*D + 0.5; w_right -= w_left; for(p=0;p=threshold) { x= x + xstep; error = error + E_diag; if (p_error>=threshold) { if (style < 0) y_perpendicular(B,x,y, dx, dy, pxstep, pystep, p_error+E_diag+E_square, w_left,w_right,error); p_error= p_error + E_diag; } p_error= p_error + E_square; } error = error + E_square; y= y + ystep; } } /*********************************************************************** * * * ENTRY * * * ***********************************************************************/ void draw_varthick_line(SDL_Renderer *B, int style, int x0,int y0,int x1, int y1, double thickness) { int dx,dy,xstep,ystep; int pxstep = 0, pystep = 0; dx= x1-x0; dy= y1-y0; xstep= ystep= 1; if (dx<0) { dx= -dx; xstep= -1; } if (dy<0) { dy= -dy; ystep= -1; } if (dx==0) xstep= 0; if (dy==0) ystep= 0; switch(xstep + ystep*4) { case -1 + -1*4 : pystep= -1; pxstep= 1; break; // -5 case -1 + 0*4 : pystep= -1; pxstep= 0; break; // -1 case -1 + 1*4 : pystep= 1; pxstep= 1; break; // 3 case 0 + -1*4 : pystep= 0; pxstep= -1; break; // -4 case 0 + 0*4 : pystep= 0; pxstep= 0; break; // 0 case 0 + 1*4 : pystep= 0; pxstep= 1; break; // 4 case 1 + -1*4 : pystep= -1; pxstep= -1; break; // -3 case 1 + 0*4 : pystep= -1; pxstep= 0; break; // 1 case 1 + 1*4 : pystep= 1; pxstep= -1; break; // 5 } if (dx>dy) x_varthick_line(B,style,x0,y0,dx,dy,xstep,ystep, thickness+1.0, pxstep,pystep); else y_varthick_line(B,style,x0,y0,dx,dy,xstep,ystep, thickness+1.0, pxstep,pystep); return; } static int LineStyle = -1; /*! \brief Draw a thick line with alpha blending. \param renderer The renderer to draw on. \param x1 X coordinate of the first point of the line. \param y1 Y coordinate of the first point of the line. \param x2 X coordinate of the second point of the line. \param y2 Y coordinate of the second point of the line. \param width Width of the line in pixels. Must be >0. \param color The color value of the line to draw (0xAABBGGRR). \returns Returns 0 on success, -1 on failure. */ int thickLineColor(SDL_Renderer *renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint8 width, Uint32 color) { Uint8 *c = (Uint8 *)&color; LineStyle = -1; return thickLineRGBA(renderer, x1, y1, x2, y2, width, c[0], c[1], c[2], c[3]); } int thickLineColorStyle(SDL_Renderer *renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint8 width, Uint32 color, int style) { Uint8 *c = (Uint8 *)&color; LineStyle = style; return thickLineRGBA(renderer, x1, y1, x2, y2, width, c[0], c[1], c[2], c[3]); } /*! \brief Draw a thick line with alpha blending. \param renderer The renderer to draw on. \param x1 X coordinate of the first point of the line. \param y1 Y coordinate of the first point of the line. \param x2 X coordinate of the second point of the line. \param y2 Y coordinate of the second point of the line. \param width Width of the line in pixels. Must be >0. \param r The red value of the character to draw. \param g The green value of the character to draw. \param b The blue value of the character to draw. \param a The alpha value of the character to draw. \returns Returns 0 on success, -1 on failure. */ int thickLineRGBA(SDL_Renderer *renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint8 width, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { int result; int wh; if (renderer == NULL) { return -1; } if (width < 1) { return -1; } /* Special case: thick "point" */ if ((x1 == x2) && (y1 == y2)) { wh = width / 2; return boxRGBA(renderer, x1 - wh, y1 - wh, x2 + wh, y2 + wh, r, g, b, a); } /* * Set color */ result = 0; if (a != 255) result |= SDL_SetRenderDrawBlendMode(renderer, SDL_BLENDMODE_BLEND); result |= SDL_SetRenderDrawColor(renderer, r, g, b, a); /* * Draw */ draw_varthick_line(renderer, LineStyle, x1, y1, x2, y2, (double) width); return(result); } int RedefineChar(SDL_Renderer *renderer, char c, unsigned char *charpos, Uint32 width, Uint32 height) { Uint32 ix, iy; Uint8 *curpos; Uint8 patt, mask; Uint8 *linepos; Uint32 pitch; SDL_Surface *character; SDL_Surface *zoomedCharacter; Uint32 ci; /* Character index in cache */ ci = (unsigned char) c; if (gfxPrimitivesFont[ci] != NULL) SDL_DestroyTexture (gfxPrimitivesFont[ci]) ; // Redraw character into surface character = SDL_CreateRGBSurface(SDL_SWSURFACE, width, height, 32, 0xFF000000, 0x00FF0000, 0x0000FF00, 0x000000FF); if (character == NULL) return (-1); linepos = (Uint8 *)character->pixels; pitch = character->pitch; // Drawing loop patt = 0; for (iy = 0; iy < height; iy++) { mask = 0x00; curpos = linepos; for (ix = 0; ix < width; ix++) { if (!(mask >>= 1)) { patt = *charpos++; mask = 0x80; } if (patt & mask) { *(Uint32 *)curpos = 0xffffffff; } else { *(Uint32 *)curpos = 0; } curpos += 4; } linepos += pitch; } /* Maybe zoom character */ if ((charZoomX != 1) || (charZoomY != 1)) { zoomedCharacter = zoomSurface(character, (double)charZoomX, (double)charZoomY, SMOOTHING_OFF); SDL_FreeSurface(character); character = zoomedCharacter; } /* Convert temp surface into texture */ gfxPrimitivesFont[ci] = SDL_CreateTextureFromSurface(renderer, character); SDL_FreeSurface(character); /* * Check pointer */ if (gfxPrimitivesFont[ci] == NULL) { return (-1); } return 0 ; } // Extensions for thick outline ellipses and arcs by Richard Russell 19-Feb-2019 // SDL_RenderDrawLine() is documented as including both end points, but this isn't // reliable in Linux so use SDL_RenderDrawPoints() instead, despite being slower. static int renderdrawline(SDL_Renderer *renderer, int x1, int y1, int x2, int y2) { int result ; #ifndef __EMSCRIPTEN__ if ((x1 == x2) && (y1 == y2)) result = SDL_RenderDrawPoint (renderer, x1, y1) ; else if (y1 == y2) { int x ; if (x1 > x2) { x = x1 ; x1 = x2 ; x2 = x ; } SDL_Point *points = (SDL_Point*) malloc ((x2 - x1 + 1) * sizeof(SDL_Point)) ; if (points == NULL) return -1 ; for (x = x1; x <= x2; x++) { points[x - x1].x = x ; points[x - x1].y = y1 ; } result = SDL_RenderDrawPoints (renderer, points, x2 - x1 + 1) ; free (points) ; } else if (x1 == x2) { int y ; if (y1 > y2) { y = y1 ; y1 = y2 ; y2 = y ; } SDL_Point *points = (SDL_Point*) malloc ((y2 - y1 + 1) * sizeof(SDL_Point)) ; if (points == NULL) return -1 ; for (y = y1; y <= y2; y++) { points[y - y1].x = x1 ; points[y - y1].y = y ; } result = SDL_RenderDrawPoints (renderer, points, y2 - y1 + 1) ; free (points) ; } else #endif result = SDL_RenderDrawLine (renderer, x1, y1, x2, y2) ; return result ; } static int hlinecliparc(SDL_Renderer *renderer, int x1, int x2, int y, int xc, int yc, double s, double f) { int result = 0 ; double a1, a2 ; a1 = atan2(y, x1) ; a2 = atan2(y, x2) ; if (a1 > a2) { double a = a1 ; a1 = a2 ; a2 = a ; int x = x1 ; x1 = x2 ; x2 = x ; } if (f < s) { if ((a1 > f) && (a2 < s)) return result ; if ((a1 < s) && (a1 > f)) x1 = y / tan(s) ; if ((a2 > f) && (a2 < s)) x2 = y / tan(f) ; if ((a1 < f) && (a2 > s)) { result |= renderdrawline(renderer, x1+xc, y+yc, y/tan(f)+xc, y+yc) ; result |= renderdrawline(renderer, y/tan(s)+xc, y+yc, x2+xc, y+yc) ; return result ; } } else { if ((a1 > f) || (a2 < s)) return result ; if (a1 < s) x1 = y / tan(s) ; if (a2 > f) x2 = y / tan(f) ; } result |= renderdrawline(renderer, x1+xc, y+yc, x2+xc, y+yc) ; return result ; } /*! \brief Draw thick ellipse with blending. \param renderer The renderer to draw on. \param xc X coordinate of the center of the ellipse. \param yc Y coordinate of the center of the ellipse. \param xr Horizontal radius in pixels of the ellipse. \param yr Vertical radius in pixels of the ellipse. \param r The red value of the ellipse to draw. \param g The green value of the ellipse to draw. \param b The blue value of the ellipse to draw. \param a The alpha value of the ellipse to draw. \param thick The line thickness in pixels \returns Returns 0 on success, -1 on failure. */ int thickEllipseRGBA(SDL_Renderer * renderer, Sint16 xc, Sint16 yc, Sint16 xr, Sint16 yr, Uint8 r, Uint8 g, Uint8 b, Uint8 a, Uint8 thick) { int result = 0 ; int xi, yi, xo, yo, x, y, z ; double xi2, yi2, xo2, yo2 ; if (thick <= 1) return ellipseRGBA(renderer, xc, yc, xr, yr, r, g, b, a) ; xi = xr - thick / 2 ; xo = xi + thick - 1 ; yi = yr - thick / 2 ; yo = yi + thick - 1 ; if ((xi <= 0) || (yi <= 0)) return -1 ; xi2 = xi * xi ; yi2 = yi * yi ; xo2 = xo * xo ; yo2 = yo * yo ; if (a != 255) result |= SDL_SetRenderDrawBlendMode(renderer, SDL_BLENDMODE_BLEND); result |= SDL_SetRenderDrawColor(renderer, r, g, b, a); if (xr < yr) { for (x = -xo; x <= -xi; x++) { y = sqrt(yo2 * (1.0 - x*x/xo2)) + 0.5 ; result |= renderdrawline(renderer, xc+x, yc-y, xc+x, yc+y) ; } for (x = -xi + 1; x <= xi - 1; x++) { y = sqrt(yo2 * (1.0 - x*x/xo2)) + 0.5 ; z = sqrt(yi2 * (1.0 - x*x/xi2)) + 0.5 ; result |= renderdrawline(renderer, xc+x, yc+z, xc+x, yc+y) ; result |= renderdrawline(renderer, xc+x, yc-z, xc+x, yc-y) ; } for (x = xo; x >= xi; x--) { y = sqrt(yo2 * (1.0 - x*x/xo2)) + 0.5 ; result |= renderdrawline(renderer, xc+x, yc-y, xc+x, yc+y) ; } } else { for (y = -yo; y <= -yi; y++) { x = sqrt(xo2 * (1.0 - y*y/yo2)) + 0.5 ; result |= renderdrawline(renderer, xc-x, yc+y, xc+x, yc+y) ; } for (y = -yi + 1; y <= yi - 1; y++) { x = sqrt(xo2 * (1.0 - y*y/yo2)) + 0.5 ; z = sqrt(xi2 * (1.0 - y*y/yi2)) + 0.5 ; result |= renderdrawline(renderer, xc+z, yc+y, xc+x, yc+y) ; result |= renderdrawline(renderer, xc-z, yc+y, xc-x, yc+y) ; } for (y = yo; y >= yi; y--) { x = sqrt(xo2 * (1.0 - y*y/yo2)) + 0.5 ; result |= renderdrawline(renderer, xc-x, yc+y, xc+x, yc+y) ; } } return result ; } /*! \brief thick Arc with blending. \param renderer The renderer to draw on. \param xc X coordinate of the center of the arc. \param yc Y coordinate of the center of the arc. \param rad Radius in pixels of the arc. \param start Starting radius in degrees of the arc. 0 degrees is right, increasing clockwise. \param end Ending radius in degrees of the arc. 0 degrees is right, increasing clockwise. \param r The red value of the arc to draw. \param g The green value of the arc to draw. \param b The blue value of the arc to draw. \param a The alpha value of the arc to draw. \param thick The line thickness in pixels. \returns Returns 0 on success, -1 on failure. */ int thickArcRGBA(SDL_Renderer * renderer, Sint16 xc, Sint16 yc, Sint16 rad, Sint16 start, Sint16 end, Uint8 r, Uint8 g, Uint8 b, Uint8 a, Uint8 thick) { int result = 0 ; int ri, ro, x, y, z ; double ri2, ro2, s, f ; if (thick <= 1) return arcRGBA(renderer, xc, yc, rad, start, end, r, g, b, a) ; while (start < -180) start += 360 ; while (start >= 180) start -= 360 ; while (end < -180) end += 360 ; while (end >= 180) end -= 360 ; s = M_PI * (double)start / 180.0 ; f = M_PI * (double)end / 180.0 ; if (start == end) return 0 ; ri = rad - thick / 2 ; ro = ri + thick - 1 ; if (ri <= 0) return -1 ; ri2 = ri * ri ; ro2 = ro * ro ; if (a != 255) result |= SDL_SetRenderDrawBlendMode(renderer, SDL_BLENDMODE_BLEND); result |= SDL_SetRenderDrawColor(renderer, r, g, b, a); for (y = -ro; y <= -ri; y++) { x = sqrt(ro2 * (1.0 - y*y/ro2)) + 0.5 ; result |= hlinecliparc(renderer, -x, x, y, xc, yc, s, f) ; } for (y = -ri + 1; y <= ri - 1; y++) { x = sqrt(ro2 * (1.0 - y*y/ro2)) + 0.5 ; z = sqrt(ri2 * (1.0 - y*y/ri2)) + 0.5 ; result |= hlinecliparc(renderer, z, x, y, xc, yc, s, f) ; result |= hlinecliparc(renderer, -z, -x, y, xc, yc, s, f) ; } for (y = ro; y >= ri; y--) { x = sqrt(ro2 * (1.0 - y*y/ro2)) + 0.5 ; result |= hlinecliparc(renderer, -x, x, y, xc, yc, s, f) ; } return result ; } // returns Returns 0 on success, -1 on failure. int thickCircleRGBA(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Uint8 r, Uint8 g, Uint8 b, Uint8 a, Uint8 thick) { return thickEllipseRGBA(renderer, x, y, rad, rad, r, g, b, a, thick); } // returns Returns 0 on success, -1 on failure. int thickEllipseColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rx, Sint16 ry, Uint32 color, Uint8 thick) { Uint8 *c = (Uint8 *)&color; return thickEllipseRGBA(renderer, x, y, rx, ry, c[0], c[1], c[2], c[3], thick); } // returns Returns 0 on success, -1 on failure. int thickArcColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Sint16 start, Sint16 end, Uint32 color, Uint8 thick) { Uint8 *c = (Uint8 *)&color; return thickArcRGBA(renderer, x, y, rad, start, end, c[0], c[1], c[2], c[3], thick); } // returns Returns 0 on success, -1 on failure. int thickCircleColor(SDL_Renderer * renderer, Sint16 x, Sint16 y, Sint16 rad, Uint32 color, Uint8 thick) { Uint8 *c = (Uint8 *)&color; return thickEllipseRGBA(renderer, x, y, rad, rad, c[0], c[1], c[2], c[3], thick); } /*! \brief Fill a region bounded by cubic Bezier curves, with alpha blending. \param renderer The renderer to draw on. \param x Vertex array containing X coordinates of the points of the bezier curves. \param y Vertex array containing Y coordinates of the points of the bezier curves. \param n Number of points in the vertex array. Should be 3n + 1 for n bezier curves. \param s Number of steps for the interpolation. Minimum number is 2. \param r The red value of the bezier curve to draw. \param g The green value of the bezier curve to draw. \param b The blue value of the bezier curve to draw. \param a The alpha value of the bezier curve to draw. \returns Returns 0 on success, -1 on failure. */ int filledPolyBezierRGBA(SDL_Renderer * renderer, const Sint16 *x, const Sint16 *y, int n, int s, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { int i, j, nbeziers, nverts, result; double t, stepsize; double x1, y1, x2, y2 ; double *dx, *dy ; Sint16 *vx, *vy ; // Sanity check if ((n < 7) || (s < 2)) return -1 ; /* Transfer vertices into float arrays */ if ((dx=(double *)malloc(sizeof(double)*n))==NULL) { return(-1); } if ((dy=(double *)malloc(sizeof(double)*n))==NULL) { free(dx); return(-1); } for (i=0; i= ry) { n = ry + 1 ; for (yi = cy - n - 1; yi <= cy + n + 1; yi++) { if (yi < (cy - 0.5)) y = yi ; else y = yi + 1 ; s = (y - cy) / ry ; s = s * s ; x = 0.5 ; if (s < 1.0) { x = rx * sqrt(1.0 - s) ; if (x >= 0.5) { result |= SDL_SetRenderDrawColor (renderer, r, g, b, a ) ; result |= renderdrawline (renderer, cx - x + 1, yi, cx + x - 1, yi) ; } } s = 8 * ry * ry ; dy = fabs(y - cy) - 1.0 ; xi = cx - x ; // left while (1) { dx = (cx - xi - 1) * ry / rx ; v = s - 4 * (dx - dy) * (dx - dy) ; if (v < 0) break ; v = (sqrt(v) - 2 * (dx + dy)) / 4 ; if (v < 0) break ; if (v > 1.0) v = 1.0 ; result |= SDL_SetRenderDrawColor (renderer, r, g, b, (double)a * v) ; result |= SDL_RenderDrawPoint (renderer, xi, yi) ; xi -= 1 ; } xi = cx + x ; // right while (1) { dx = (xi - cx) * ry / rx ; v = s - 4 * (dx - dy) * (dx - dy) ; if (v < 0) break ; v = (sqrt(v) - 2 * (dx + dy)) / 4 ; if (v < 0) break ; if (v > 1.0) v = 1.0 ; result |= SDL_SetRenderDrawColor (renderer, r, g, b, (double)a * v) ; result |= SDL_RenderDrawPoint (renderer, xi, yi) ; xi += 1 ; } } } else { n = rx + 1 ; for (xi = cx - n - 1; xi <= cx + n + 1; xi++) { if (xi < (cx - 0.5)) x = xi ; else x = xi + 1 ; s = (x - cx) / rx ; s = s * s ; y = 0.5 ; if (s < 1.0) { y = ry * sqrt(1.0 - s) ; if (y >= 0.5) { result |= SDL_SetRenderDrawColor (renderer, r, g, b, a ) ; result |= renderdrawline (renderer, xi, cy - y + 1, xi, cy + y - 1) ; } } s = 8 * rx * rx ; dx = fabs(x - cx) - 1.0 ; yi = cy - y ; // top while (1) { dy = (cy - yi - 1) * rx / ry ; v = s - 4 * (dy - dx) * (dy - dx) ; if (v < 0) break ; v = (sqrt(v) - 2 * (dy + dx)) / 4 ; if (v < 0) break ; if (v > 1.0) v = 1.0 ; result |= SDL_SetRenderDrawColor (renderer, r, g, b, (double)a * v) ; result |= SDL_RenderDrawPoint (renderer, xi, yi) ; yi -= 1 ; } yi = cy + y ; // bottom while (1) { dy = (yi - cy) * rx / ry ; v = s - 4 * (dy - dx) * (dy - dx) ; if (v < 0) break ; v = (sqrt(v) - 2 * (dy + dx)) / 4 ; if (v < 0) break ; if (v > 1.0) v = 1.0 ; result |= SDL_SetRenderDrawColor (renderer, r, g, b, (double)a * v) ; result |= SDL_RenderDrawPoint (renderer, xi, yi) ; yi += 1 ; } } } return result ; } // returns Returns 0 on success, -1 on failure. int aaFilledEllipseColor(SDL_Renderer * renderer, float cx, float cy, float rx, float ry, Uint32 color) { Uint8 *c = (Uint8 *)&color; return aaFilledEllipseRGBA(renderer, cx, cy, rx, ry, c[0], c[1], c[2], c[3]); } static int _gfxPrimitivesCompareFloat2(const void *a, const void *b) { float diff = *((float *)a + 1) - *((float *)b + 1) ; if (diff != 0.0) return (diff > 0) - (diff < 0) ; diff = *(float *)a - *(float *)b ; return (diff > 0) - (diff < 0) ; } // This constant determines the maximum size and/or complexity of polygon that can be // drawn. Set to 16K the maximum aaArc height is approximately 1100 lines. #define POLYSIZE 16384 /*! \brief Draw anti-aliased filled polygon with alpha blending. \param renderer The renderer to draw on. \param vx Vertex array containing X coordinates of the points of the filled polygon. \param vy Vertex array containing Y coordinates of the points of the filled polygon. \param n Number of points in the vertex array. Minimum number is 3. \param r The red value of the filled polygon to draw. \param g The green value of the filled polygon to draw. \param b The blue value of the filed polygon to draw. \param a The alpha value of the filled polygon to draw. \returns Returns 0 on success, -1 on failure, or -2 if the polygon is too large and/or complex. */ int aaFilledPolygonRGBA(SDL_Renderer * renderer, const double * vx, const double * vy, int n, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { int i, j, xi, yi, result ; double x1, x2, y0, y1, y2, minx, maxx, prec ; float *list, *strip ; if (n < 3) return -1 ; result = SDL_SetRenderDrawBlendMode(renderer, SDL_BLENDMODE_BLEND) ; // Find extrema: minx = 99999.0 ; maxx = -99999.0 ; prec = 0.00001 ; for (i = 0; i < n; i++) { double x = vx[i] ; double y = fabs(vy[i]) ; if (x < minx) minx = x ; if (x > maxx) maxx = x ; if (y > prec) prec = y ; } minx = floor (minx) ; maxx = floor (maxx) ; prec = floor (pow(2,19) / prec) ; // Allocate main array, this determines the maximum polygon size and complexity: list = (float *) malloc (POLYSIZE * sizeof(float)) ; if (list == NULL) return -2 ; // Build vertex list. Special x-values used to indicate vertex type: // x = -100001.0 indicates /\, x = -100003.0 indicates \/, x = -100002.0 neither yi = 0 ; y0 = floor(vy[n - 1] * prec) / prec ; y1 = floor(vy[0] * prec) / prec ; for (i = 1; i <= n; i++) { if (yi > POLYSIZE - 4) { free (list) ; return -2 ; } y2 = floor(vy[i % n] * prec) / prec ; if (((y1 < y2) - (y1 > y2)) == ((y0 < y1) - (y0 > y1))) { list[yi++] = -100002.0 ; list[yi++] = y1 ; list[yi++] = -100002.0 ; list[yi++] = y1 ; } else { if (y0 != y1) { list[yi++] = (y1 < y0) - (y1 > y0) - 100002.0 ; list[yi++] = y1 ; } if (y1 != y2) { list[yi++] = (y1 < y2) - (y1 > y2) - 100002.0 ; list[yi++] = y1 ; } } y0 = y1 ; y1 = y2 ; } xi = yi ; // Sort vertex list: qsort (list, yi / 2, sizeof(float) * 2, _gfxPrimitivesCompareFloat2) ; // Append line list to vertex list: for (i = 1; i <= n; i++) { double x, y ; double d = 0.5 / prec ; x1 = vx[i - 1] ; y1 = floor(vy[i - 1] * prec) / prec ; x2 = vx[i % n] ; y2 = floor(vy[i % n] * prec) / prec ; if (y2 < y1) { double tmp ; tmp = x1 ; x1 = x2 ; x2 = tmp ; tmp = y1 ; y1 = y2 ; y2 = tmp ; } if (y2 != y1) y0 = (x2 - x1) / (y2 - y1) ; for (j = 1; j < xi; j += 4) { y = list[j] ; if (((y + d) <= y1) || (y == list[j + 4])) continue ; if ((y -= d) >= y2) break ; if (yi > POLYSIZE - 4) { free (list) ; return -2 ; } if (y > y1) { list[yi++] = x1 + y0 * (y - y1) ; list[yi++] = y ; } y += d * 2.0 ; if (y < y2) { list[yi++] = x1 + y0 * (y - y1) ; list[yi++] = y ; } } y = floor(y1) + 1.0 ; while (y <= y2) { x = x1 + y0 * (y - y1) ; if (yi > POLYSIZE - 2) { free (list) ; return -2 ; } list[yi++] = x ; list[yi++] = y ; y += 1.0 ; } } // Sort combined list: qsort (list, yi / 2, sizeof(float) * 2, _gfxPrimitivesCompareFloat2) ; // Plot lines: strip = (float *) malloc ((maxx - minx + 2) * sizeof(float)) ; if (strip == NULL) { free (list) ; return -1 ; } memset (strip, 0, (maxx - minx + 2) * sizeof(float)) ; n = yi ; yi = list[1] ; j = 0 ; for (i = 0; i < n - 7; i += 4) { float x1 = list[i + 0] ; float y1 = list[i + 1] ; float x3 = list[i + 2] ; float x2 = list[i + j + 0] ; float y2 = list[i + j + 1] ; float x4 = list[i + j + 2] ; if (x1 + x3 == -200002.0) j += 4 ; else if (x1 + x3 == -200006.0) j -= 4 ; else if ((x1 >= minx) && (x2 >= minx)) { if (x1 > x2) { float tmp = x1 ; x1 = x2 ; x2 = tmp ; } if (x3 > x4) { float tmp = x3 ; x3 = x4 ; x4 = tmp ; } for ( xi = x1 - minx; xi <= x4 - minx; xi++ ) { float u, v ; float x = minx + xi ; if (x < x2) u = (x - x1 + 1) / (x2 - x1 + 1) ; else u = 1.0 ; if (x >= x3 - 1) v = (x4 - x) / (x4 - x3 + 1) ; else v = 1.0 ; if ((u > 0.0) && (v > 0.0)) strip[xi] += (y2 - y1) * (u + v - 1.0) ; } } if ((yi == (list[i + 5] - 1.0)) || (i == n - 8)) { for (xi = 0; xi <= maxx - minx; xi++) { if (strip[xi] != 0.0) { if (strip[xi] >= 0.996) { int x0 = xi ; while (strip[++xi] >= 0.996) ; xi-- ; result |= SDL_SetRenderDrawColor (renderer, r, g, b, a) ; result |= renderdrawline (renderer, minx + x0, yi, minx + xi, yi) ; } else { result |= SDL_SetRenderDrawColor (renderer, r, g, b, a * strip[xi]) ; result |= SDL_RenderDrawPoint (renderer, minx + xi, yi) ; } } } memset (strip, 0, (maxx - minx + 2) * sizeof(float)) ; yi++ ; } } // Free arrays: free (list) ; free (strip) ; return result ; } // returns Returns 0 on success, -1 on failure. int aaFilledPolygonColor(SDL_Renderer * renderer, const double * vx, const double * vy, int n, Uint32 color) { Uint8 *c = (Uint8 *)&color; return aaFilledPolygonRGBA(renderer, vx, vy, n, c[0], c[1], c[2], c[3]); } /*! \brief Draw anti-aliased filled ellipical pie (or chord) with alpha blending. \param renderer The renderer to draw on. \param cx X coordinate of the center of the filled pie. \param cy Y coordinate of the center of the filled pie. \param rx Horizontal radius in pixels of the filled pie. \param ry Vertical radius in pixels of the filled pie. \param start Starting angle in degrees of the filled pie; zero is right, increasing clockwise. \param end Ending angle in degrees of the filled pie; zero is right, increasing clockwise. \param chord Set to 0 for a pie (sector) or 1 for a chord (segment). \param r The red value of the filled pie to draw. \param g The green value of the filled pie to draw. \param b The blue value of the filled pie to draw. \param a The alpha value of the filled pie to draw. / \returns Returns 0 on success, -1 on failure. */ int aaFilledPieRGBA(SDL_Renderer * renderer, float cx, float cy, float rx, float ry, float start, float end, Uint32 chord, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { int nverts, i, result; double *vx, *vy; // Sanity check radii if ((rx <= 0) || (ry <= 0) || (start == end)) return -1; // Convert degrees to radians start = fmod(start, 360.0) * 2.0 * M_PI / 360.0 ; end = fmod(end, 360.0) * 2.0 * M_PI / 360.0 ; while (start >= end) end += 2.0 * M_PI ; // Calculate number of vertices on perimeter nverts = (end - start) * sqrt(rx * ry) / M_PI ; if (nverts < 2) nverts = 2 ; if (nverts > 180) nverts = 180 ; // Allocate combined vertex array vx = vy = (double *) malloc(2 * sizeof(double) * (nverts + 1)); if (vx == NULL) return (-1); // Update pointer to start of vy vy += nverts + 1 ; // Calculate vertices: for (i = 0; i < nverts; i++) { double angle = start + (end - start) * (double) i / (double) (nverts - 1) ; vx[i] = cx + rx * cos(angle); vy[i] = cy + ry * sin(angle); } // Center: vx[i] = cx ; vy[i] = cy ; result = aaFilledPolygonRGBA(renderer, vx, vy, nverts + 1 - (chord != 0), r, g, b, a); // Free combined vertex array free(vx); return (result); } // returns Returns 0 on success, -1 on failure. int aaFilledPieColor(SDL_Renderer * renderer, float cx, float cy, float rx, float ry, float start, float end, Uint32 chord, Uint32 color) { Uint8 *c = (Uint8 *)&color; return aaFilledPieRGBA(renderer, cx, cy, rx, ry, start, end, chord, c[0], c[1], c[2], c[3]); } /*! \brief Draw anti-aliased ellipical arc with alpha blending. \param renderer The renderer to draw on. \param cx X coordinate of the center of the filled pie. \param cy Y coordinate of the center of the filled pie. \param rx Horizontal radius in pixels of the filled pie. \param ry Vertical radius in pixels of the filled pie. \param start Starting angle in degrees of the filled pie; zero is right, increasing clockwise. \param end Ending angle in degrees of the filled pie; zero is right, increasing clockwise. \param thick The thickness of the line in pixels. \param r The red value of the filled pie to draw. \param g The green value of the filled pie to draw. \param b The blue value of the filled pie to draw. \param a The alpha value of the filled pie to draw. / \returns Returns 0 on success, -1 on failure. */ int aaArcRGBA(SDL_Renderer * renderer, float cx, float cy, float rx, float ry, float start, float end, float thick, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { int nverts, i, result; double *vx, *vy; // Sanity check radii and thickness if ((rx <= 0) || (ry <= 0) || (start == end) || (thick <= 0)) return -1; // Convert degrees to radians start = fmod(start, 360.0) * 2.0 * M_PI / 360.0 ; end = fmod(end, 360.0) * 2.0 * M_PI / 360.0 ; while (start >= end) end += 2.0 * M_PI ; // Calculate number of vertices nverts = 2 * floor((end - start) * sqrt(rx * ry) / M_PI) ; if (nverts < 2) nverts = 2 ; if (nverts > 360) nverts = 360 ; // Allocate combined vertex array vx = vy = (double *) malloc(2 * sizeof(double) * nverts); if (vx == NULL) return (-1); // Update pointer to start of vy vy += nverts ; // Calculate vertices: for (i = 0; i < nverts / 2; i++) { double angle = start + (end - start) * (double) i / (double) (nverts / 2 - 1) ; vx[i] = cx + (rx + thick/2) * cos(angle); vy[i] = cy + (ry + thick/2) * sin(angle); vx[nverts - 1 - i] = cx + (rx - thick/2) * cos(angle); vy[nverts - 1 - i] = cy + (ry - thick/2) * sin(angle); } result = aaFilledPolygonRGBA(renderer, vx, vy, nverts, r, g, b, a); // Free combined vertex array free(vx); return (result); } // returns Returns 0 on success, -1 on failure. int aaArcColor(SDL_Renderer * renderer, float cx, float cy, float rx, float ry, float start, float end, float thick, Uint32 color) { Uint8 *c = (Uint8 *)&color; return aaArcRGBA(renderer, cx, cy, rx, ry, start, end, thick, c[0], c[1], c[2], c[3]); } /*! \brief Draw an anti-aliased bezier curve with alpha blending. \param renderer The renderer to draw on. \param x Vertex array containing X coordinates of the points of the bezier curve. \param y Vertex array containing Y coordinates of the points of the bezier curve. \param n Number of points in the vertex array. Minimum number is 3. \param s Number of steps for the interpolation. Minimum number is 2. \param thick Thickness of line in pixels. \param r The red value of the bezier curve to draw. \param g The green value of the bezier curve to draw. \param b The blue value of the bezier curve to draw. \param a The alpha value of the bezier curve to draw. \returns Returns 0 on success, -1 on failure. */ int aaBezierRGBA(SDL_Renderer * renderer, double *x, double *y, int n, int s, float thick, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { int i, nverts, result; double d, t, stepsize; double x1, y1, x2, y2, dx = 0.0, dy = 0.0 ; double *vx, *vy ; // Sanity check if ((n < 3) || (s < 2)) return -1 ; // Create combined vertex array: nverts = n * s * 2 + 2 ; vx = (double *) malloc (nverts * 2 * sizeof(double)) ; if (vx == NULL) return -1 ; vy = vx + nverts ; // Draw Bezier t = 0.0 ; stepsize = 1.0 / (double)s ; x1 = _evaluateBezier(x, n, t) ; y1 = _evaluateBezier(y, n, t) ; for (i = 0; i < n*s; i++) { t += stepsize ; x2 = _evaluateBezier(x, n, t) ; y2 = _evaluateBezier(y, n, t) ; dx = x2 - x1 ; dy = y2 - y1 ; d = thick * 0.5L / sqrt(dx*dx + dy*dy) ; dx *= d ; dy *= d ; vx[i] = x1 + dy ; vy[i] = y1 - dx ; vx[nverts-1-i] = x1 - dy ; vy[nverts-1-i] = y1 + dx ; x1 = x2 ; y1 = y2 ; } vx[i] = x1 + dy ; vy[i] = y1 - dx ; vx[nverts-1-i] = x1 - dy ; vy[nverts-1-i] = y1 + dx ; result = aaFilledPolygonRGBA(renderer, vx, vy, nverts, r, g, b, a); free (vx) ; return (result); } // returns Returns 0 on success, -1 on failure. int aaBezierColor(SDL_Renderer * renderer, double *x, double *y, int n, int s, float thick, Uint32 color) { Uint8 *c = (Uint8 *)&color; return aaBezierRGBA(renderer, x, y, n, s, thick, c[0], c[1], c[2], c[3]); } /*! \brief Fill an anti-aliased region bounded by cubic Bezier curves, with alpha blending. \param renderer The renderer to draw on. \param x Vertex array containing X coordinates of the points of the bezier curves. \param y Vertex array containing Y coordinates of the points of the bezier curves. \param n Number of points in the vertex array. Should be 3n + 1 for n bezier curves. \param s Number of steps for the interpolation. Minimum number is 2. \param r The red value of the bezier curve to draw. \param g The green value of the bezier curve to draw. \param b The blue value of the bezier curve to draw. \param a The alpha value of the bezier curve to draw. \returns Returns 0 on success, -1 on failure. */ int aaFilledPolyBezierRGBA(SDL_Renderer * renderer, double *x, double *y, int n, int s, Uint8 r, Uint8 g, Uint8 b, Uint8 a) { int i, j, nbeziers, nverts, result; double t, stepsize; double x1, y1, x2, y2 ; double *vx, *vy ; // Sanity check if ((n < 7) || (s < 2)) return -1 ; // Create combined vertex array: nbeziers = (n - 1) / 3 ; nverts = nbeziers * 4 * s + 1 ; vx = (double *) malloc (nverts * 2 * sizeof(double)) ; if (vx == NULL) return -1 ; vy = vx + nverts ; // Draw Beziers stepsize = 1.0 / (double)s ; for (j = 0; j < nbeziers; j++) { t = 0.0 ; x1 = _evaluateBezier(x + j * 3, 4, t) ; y1 = _evaluateBezier(y + j * 3, 4, t) ; for (i = 0; i < 4*s; i++) { t += stepsize ; x2 = _evaluateBezier(x + j * 3, 4, t) ; y2 = _evaluateBezier(y + j * 3, 4, t) ; vx[i + j * s * 4] = x1 ; vy[i + j * s * 4] = y1 ; x1 = x2 ; y1 = y2 ; } } vx[j * s * 4] = x1 ; vy[j * s * 4] = y1 ; result = aaFilledPolygonRGBA(renderer, vx, vy, nverts, r, g, b, a); free (vx) ; return (result); } // returns Returns 0 on success, -1 on failure. int aaFilledPolyBezierColor(SDL_Renderer * renderer, double *x, double *y, int n, int s, Uint32 color) { Uint8 *c = (Uint8 *)&color; return aaFilledPolyBezierRGBA(renderer, x, y, n, s, c[0], c[1], c[2], c[3]); } ================================================ FILE: src/SDL2_rotozoom.c ================================================ /* SDL2_rotozoom.c: rotozoomer, zoomer and shrinker for 32bit or 8bit surfaces Copyright (C) 2012 Andreas Schiffler This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. Andreas Schiffler -- aschiffler at ferzkopp dot net */ #ifdef WIN32 #include #endif #include #include #include "SDL2_rotozoom.h" #include "SDL2_gfxPrimitives.h" #define SDL_STBIMAGE_IMPLEMENTATION #define SDL_STBIMG_DEF __attribute__ ((visibility ("default"))) #include "SDL_stbimage.h" #define DR_MP3_IMPLEMENTATION #include "dr_mp3.h" SDL_STBIMG_DEF int GFX_bezierColor(SDL_Renderer* renderer, const Sint16* vx, const Sint16* vy, int n, int s, Uint32 color) { return bezierColor(renderer, vx, vy, n, s, color) ; } SDL_STBIMG_DEF int GFX_filledPolyBezierColor(SDL_Renderer * renderer, const Sint16 *x, const Sint16 *y, int n, int s, Uint32 color) { return filledPolyBezierColor(renderer, x, y, n, s, color) ; } SDL_STBIMG_DEF int GFX_aaFilledEllipseColor(SDL_Renderer * renderer, float cx, float cy, float rx, float ry, Uint32 color) { return aaFilledEllipseColor(renderer, cx, cy, rx, ry, color) ; } SDL_STBIMG_DEF int GFX_aaFilledPolygonColor(SDL_Renderer * renderer, const double * vx, const double * vy, int n, Uint32 color) { return aaFilledPolygonColor(renderer, vx, vy, n, color) ; } SDL_STBIMG_DEF int GFX_aaFilledPieColor(SDL_Renderer * renderer, float cx, float cy, float rx, float ry, float start, float end, Uint32 chord, Uint32 color) { return aaFilledPieColor(renderer, cx, cy, rx, ry, start, end, chord, color) ; } SDL_STBIMG_DEF int GFX_aaArcColor(SDL_Renderer * renderer, float cx, float cy, float rx, float ry, float start, float end, float thick, Uint32 color) { return aaArcColor(renderer, cx, cy, rx, ry, start, end, thick, color) ; } SDL_STBIMG_DEF int GFX_aaBezierColor(SDL_Renderer * renderer, double *x, double *y, int n, int s, float thick, Uint32 color) { return aaBezierColor(renderer, x, y, n, s, thick, color) ; } SDL_STBIMG_DEF int GFX_aaFilledPolyBezierColor(SDL_Renderer * renderer, double *x, double *y, int n, int s, Uint32 color) { return aaFilledPolyBezierColor(renderer, x, y, n, s, color) ; } SDL_STBIMG_DEF double GFX_EvaluateBezier(double *data, int ndata, double t) { return _evaluateBezier (data, ndata, t) ; } SDL_STBIMG_DEF SDL_Surface* GFX_RotoZoomSurface(SDL_Surface * src, double angle, double zoomx, double zoomy) { return rotozoomSurfaceXY(src, angle, zoomx, zoomy, 0) ; } /* ---- Internally used structures */ /*! \brief A 32 bit RGBA pixel. */ typedef struct tColorRGBA { Uint8 r; Uint8 g; Uint8 b; Uint8 a; } tColorRGBA; /*! \brief A 8bit Y/palette pixel. */ typedef struct tColorY { Uint8 y; } tColorY; /*! \brief Returns maximum of two numbers a and b. */ #define MAX(a,b) (((a) > (b)) ? (a) : (b)) /*! \brief Number of guard rows added to destination surfaces. This is a simple but effective workaround for observed issues. These rows allocate extra memory and are then hidden from the surface. Rows are added to the end of destination surfaces when they are allocated. This catches any potential overflows which seem to happen with just the right src image dimensions and scale/rotation and can lead to a situation where the program can segfault. */ #define GUARD_ROWS (2) /*! \brief Lower limit of absolute zoom factor or rotation degrees. */ #define VALUE_LIMIT 0.001 /*! \brief Returns colorkey info for a surface */ Uint32 _colorkey(SDL_Surface *src) { Uint32 key = 0; SDL_GetColorKey(src, &key); return key; } /*! \brief Internal 32 bit integer-factor averaging Shrinker. Shrinks 32 bit RGBA/ABGR 'src' surface to 'dst' surface. Averages color and alpha values values of src pixels to calculate dst pixels. Assumes src and dst surfaces are of 32 bit depth. Assumes dst surface was allocated with the correct dimensions. \param src The surface to shrink (input). \param dst The shrunken surface (output). \param factorx The horizontal shrinking ratio. \param factory The vertical shrinking ratio. \return 0 for success or -1 for error. */ int _shrinkSurfaceRGBA(SDL_Surface * src, SDL_Surface * dst, int factorx, int factory) { int x, y, dx, dy, dgap, ra, ga, ba, aa; int n_average; tColorRGBA *sp, *osp, *oosp; tColorRGBA *dp; /* * Averaging integer shrink */ /* Precalculate division factor */ n_average = factorx*factory; /* * Scan destination */ sp = (tColorRGBA *) src->pixels; dp = (tColorRGBA *) dst->pixels; dgap = dst->pitch - dst->w * 4; for (y = 0; y < dst->h; y++) { osp=sp; for (x = 0; x < dst->w; x++) { /* Trace out source box and accumulate */ oosp=sp; ra=ga=ba=aa=0; for (dy=0; dy < factory; dy++) { for (dx=0; dx < factorx; dx++) { ra += sp->r; ga += sp->g; ba += sp->b; aa += sp->a; sp++; } /* src dx loop */ sp = (tColorRGBA *)((Uint8*)sp + (src->pitch - 4*factorx)); // next y } /* src dy loop */ /* next box-x */ sp = (tColorRGBA *)((Uint8*)oosp + 4*factorx); /* Store result in destination */ dp->r = ra/n_average; dp->g = ga/n_average; dp->b = ba/n_average; dp->a = aa/n_average; /* * Advance destination pointer */ dp++; } /* dst x loop */ /* next box-y */ sp = (tColorRGBA *)((Uint8*)osp + src->pitch*factory); /* * Advance destination pointers */ dp = (tColorRGBA *) ((Uint8 *) dp + dgap); } /* dst y loop */ return (0); } /*! \brief Internal 8 bit integer-factor averaging shrinker. Shrinks 8bit Y 'src' surface to 'dst' surface. Averages color (brightness) values values of src pixels to calculate dst pixels. Assumes src and dst surfaces are of 8 bit depth. Assumes dst surface was allocated with the correct dimensions. \param src The surface to shrink (input). \param dst The shrunken surface (output). \param factorx The horizontal shrinking ratio. \param factory The vertical shrinking ratio. \return 0 for success or -1 for error. */ int _shrinkSurfaceY(SDL_Surface * src, SDL_Surface * dst, int factorx, int factory) { int x, y, dx, dy, dgap, a; int n_average; Uint8 *sp, *osp, *oosp; Uint8 *dp; /* * Averaging integer shrink */ /* Precalculate division factor */ n_average = factorx*factory; /* * Scan destination */ sp = (Uint8 *) src->pixels; dp = (Uint8 *) dst->pixels; dgap = dst->pitch - dst->w; for (y = 0; y < dst->h; y++) { osp=sp; for (x = 0; x < dst->w; x++) { /* Trace out source box and accumulate */ oosp=sp; a=0; for (dy=0; dy < factory; dy++) { for (dx=0; dx < factorx; dx++) { a += (*sp); /* next x */ sp++; } /* end src dx loop */ /* next y */ sp = (Uint8 *)((Uint8*)sp + (src->pitch - factorx)); } /* end src dy loop */ /* next box-x */ sp = (Uint8 *)((Uint8*)oosp + factorx); /* Store result in destination */ *dp = a/n_average; /* * Advance destination pointer */ dp++; } /* end dst x loop */ /* next box-y */ sp = (Uint8 *)((Uint8*)osp + src->pitch*factory); /* * Advance destination pointers */ dp = (Uint8 *)((Uint8 *)dp + dgap); } /* end dst y loop */ return (0); } /*! \brief Internal 32 bit Zoomer with optional anti-aliasing by bilinear interpolation. Zooms 32 bit RGBA/ABGR 'src' surface to 'dst' surface. Assumes src and dst surfaces are of 32 bit depth. Assumes dst surface was allocated with the correct dimensions. \param src The surface to zoom (input). \param dst The zoomed surface (output). \param flipx Flag indicating if the image should be horizontally flipped. \param flipy Flag indicating if the image should be vertically flipped. \param smooth Antialiasing flag; set to SMOOTHING_ON to enable. \return 0 for success or -1 for error. */ int _zoomSurfaceRGBA(SDL_Surface * src, SDL_Surface * dst, int flipx, int flipy, int smooth) { int x, y, sx, sy, ssx, ssy, *sax, *say, *csax, *csay, *salast, csx, csy, ex, ey, cx, cy, sstep, sstepx, sstepy; tColorRGBA *c00, *c01, *c10, *c11; tColorRGBA *sp, *csp, *dp; int spixelgap, spixelw, spixelh, dgap, t1, t2; /* * Allocate memory for row/column increments */ if ((sax = (int *) malloc((dst->w + 1) * sizeof(int))) == NULL) { return (-1); } if ((say = (int *) malloc((dst->h + 1) * sizeof(int))) == NULL) { free(sax); return (-1); } /* * Precalculate row increments */ spixelw = (src->w - 1); spixelh = (src->h - 1); if (smooth) { sx = (int) (65536.0 * (float) spixelw / (float) (dst->w - 1)); sy = (int) (65536.0 * (float) spixelh / (float) (dst->h - 1)); } else { sx = (int) (65536.0 * (float) (src->w) / (float) (dst->w)); sy = (int) (65536.0 * (float) (src->h) / (float) (dst->h)); } /* Maximum scaled source size */ ssx = (src->w << 16) - 1; ssy = (src->h << 16) - 1; /* Precalculate horizontal row increments */ csx = 0; csax = sax; for (x = 0; x <= dst->w; x++) { *csax = csx; csax++; csx += sx; /* Guard from overflows */ if (csx > ssx) { csx = ssx; } } /* Precalculate vertical row increments */ csy = 0; csay = say; for (y = 0; y <= dst->h; y++) { *csay = csy; csay++; csy += sy; /* Guard from overflows */ if (csy > ssy) { csy = ssy; } } sp = (tColorRGBA *) src->pixels; dp = (tColorRGBA *) dst->pixels; dgap = dst->pitch - dst->w * 4; spixelgap = src->pitch/4; if (flipx) sp += spixelw; if (flipy) sp += (spixelgap * spixelh); /* * Switch between interpolating and non-interpolating code */ if (smooth) { /* * Interpolating Zoom */ csay = say; for (y = 0; y < dst->h; y++) { csp = sp; csax = sax; for (x = 0; x < dst->w; x++) { /* * Setup color source pointers */ ex = (*csax & 0xffff); ey = (*csay & 0xffff); cx = (*csax >> 16); cy = (*csay >> 16); sstepx = cx < spixelw; sstepy = cy < spixelh; c00 = sp; c01 = sp; c10 = sp; if (sstepy) { if (flipy) { c10 -= spixelgap; } else { c10 += spixelgap; } } c11 = c10; if (sstepx) { if (flipx) { c01--; c11--; } else { c01++; c11++; } } /* * Draw and interpolate colors */ t1 = ((((c01->r - c00->r) * ex) >> 16) + c00->r) & 0xff; t2 = ((((c11->r - c10->r) * ex) >> 16) + c10->r) & 0xff; dp->r = (((t2 - t1) * ey) >> 16) + t1; t1 = ((((c01->g - c00->g) * ex) >> 16) + c00->g) & 0xff; t2 = ((((c11->g - c10->g) * ex) >> 16) + c10->g) & 0xff; dp->g = (((t2 - t1) * ey) >> 16) + t1; t1 = ((((c01->b - c00->b) * ex) >> 16) + c00->b) & 0xff; t2 = ((((c11->b - c10->b) * ex) >> 16) + c10->b) & 0xff; dp->b = (((t2 - t1) * ey) >> 16) + t1; t1 = ((((c01->a - c00->a) * ex) >> 16) + c00->a) & 0xff; t2 = ((((c11->a - c10->a) * ex) >> 16) + c10->a) & 0xff; dp->a = (((t2 - t1) * ey) >> 16) + t1; /* * Advance source pointer x */ salast = csax; csax++; sstep = (*csax >> 16) - (*salast >> 16); if (flipx) { sp -= sstep; } else { sp += sstep; } /* * Advance destination pointer x */ dp++; } /* * Advance source pointer y */ salast = csay; csay++; sstep = (*csay >> 16) - (*salast >> 16); sstep *= spixelgap; if (flipy) { sp = csp - sstep; } else { sp = csp + sstep; } /* * Advance destination pointer y */ dp = (tColorRGBA *) ((Uint8 *) dp + dgap); } } else { /* * Non-Interpolating Zoom */ csay = say; for (y = 0; y < dst->h; y++) { csp = sp; csax = sax; for (x = 0; x < dst->w; x++) { /* * Draw */ *dp = *sp; /* * Advance source pointer x */ salast = csax; csax++; sstep = (*csax >> 16) - (*salast >> 16); if (flipx) sstep = -sstep; sp += sstep; /* * Advance destination pointer x */ dp++; } /* * Advance source pointer y */ salast = csay; csay++; sstep = (*csay >> 16) - (*salast >> 16); sstep *= spixelgap; if (flipy) sstep = -sstep; sp = csp + sstep; /* * Advance destination pointer y */ dp = (tColorRGBA *) ((Uint8 *) dp + dgap); } } /* * Remove temp arrays */ free(sax); free(say); return (0); } /*! \brief Internal 8 bit Zoomer without smoothing. Zooms 8bit palette/Y 'src' surface to 'dst' surface. Assumes src and dst surfaces are of 8 bit depth. Assumes dst surface was allocated with the correct dimensions. \param src The surface to zoom (input). \param dst The zoomed surface (output). \param flipx Flag indicating if the image should be horizontally flipped. \param flipy Flag indicating if the image should be vertically flipped. \return 0 for success or -1 for error. */ int _zoomSurfaceY(SDL_Surface * src, SDL_Surface * dst, int flipx, int flipy) { int x, y; Uint32 *sax, *say, *csax, *csay; int csx, csy; Uint8 *sp, *dp, *csp ; int dgap; /* * Allocate memory for row increments */ if ((sax = (Uint32 *) malloc((dst->w + 1) * sizeof(Uint32))) == NULL) { return (-1); } if ((say = (Uint32 *) malloc((dst->h + 1) * sizeof(Uint32))) == NULL) { free(sax); return (-1); } /* * Pointer setup */ dp = (Uint8 *) dst->pixels; dgap = dst->pitch - dst->w; csp = (Uint8 *) src->pixels; if (flipx) csp += (src->w-1); if (flipy) csp = ( (Uint8*)csp + src->pitch*(src->h-1) ); /* * Precalculate row increments */ csx = 0; csax = sax; for (x = 0; x < dst->w; x++) { csx += src->w; *csax = 0; while (csx >= dst->w) { csx -= dst->w; (*csax)++; } (*csax) = (*csax) * (flipx ? -1 : 1); csax++; } csy = 0; csay = say; for (y = 0; y < dst->h; y++) { csy += src->h; *csay = 0; while (csy >= dst->h) { csy -= dst->h; (*csay)++; } (*csay) = (*csay) * (flipy ? -1 : 1); csay++; } /* * Draw */ csay = say; for (y = 0; y < dst->h; y++) { csax = sax; sp = csp; for (x = 0; x < dst->w; x++) { /* * Draw */ *dp = *sp; /* * Advance source pointers */ sp += (*csax); csax++; /* * Advance destination pointer */ dp++; } /* * Advance source pointer (for row) */ csp += ((*csay) * src->pitch); csay++; /* * Advance destination pointers */ dp += dgap; } /* * Remove temp arrays */ free(sax); free(say); return (0); } /*! \brief Internal 32 bit rotozoomer with optional anti-aliasing. Rotates and zooms 32 bit RGBA/ABGR 'src' surface to 'dst' surface based on the control parameters by scanning the destination surface and applying optionally anti-aliasing by bilinear interpolation. Assumes src and dst surfaces are of 32 bit depth. Assumes dst surface was allocated with the correct dimensions. \param src Source surface. \param dst Destination surface. \param cx Horizontal center coordinate. \param cy Vertical center coordinate. \param isin Integer version of sine of angle. \param icos Integer version of cosine of angle. \param flipx Flag indicating horizontal mirroring should be applied. \param flipy Flag indicating vertical mirroring should be applied. \param smooth Flag indicating anti-aliasing should be used. */ void _transformSurfaceRGBA(SDL_Surface * src, SDL_Surface * dst, int cx, int cy, int isin, int icos, int flipx, int flipy, int smooth) { int x, y, t1, t2, dx, dy, xd, yd, sdx, sdy, ax, ay, ex, ey, sw, sh; tColorRGBA c00, c01, c10, c11, cswap; tColorRGBA *pc, *sp; int gap; /* * Variable setup */ xd = ((src->w - dst->w) << 15); yd = ((src->h - dst->h) << 15); ax = (cx << 16) - (icos * cx); ay = (cy << 16) - (isin * cx); sw = src->w - 1; sh = src->h - 1; pc = (tColorRGBA*) dst->pixels; gap = dst->pitch - dst->w * 4; /* * Switch between interpolating and non-interpolating code */ if (smooth) { for (y = 0; y < dst->h; y++) { dy = cy - y; sdx = (ax + (isin * dy)) + xd; sdy = (ay - (icos * dy)) + yd; for (x = 0; x < dst->w; x++) { dx = (sdx >> 16); dy = (sdy >> 16); if (flipx) dx = sw - dx; if (flipy) dy = sh - dy; if ((dx > -1) && (dy > -1) && (dx < (src->w-1)) && (dy < (src->h-1))) { sp = (tColorRGBA *)src->pixels;; sp += ((src->pitch/4) * dy); sp += dx; c00 = *sp; sp += 1; c01 = *sp; sp += (src->pitch/4); c11 = *sp; sp -= 1; c10 = *sp; if (flipx) { cswap = c00; c00=c01; c01=cswap; cswap = c10; c10=c11; c11=cswap; } if (flipy) { cswap = c00; c00=c10; c10=cswap; cswap = c01; c01=c11; c11=cswap; } /* * Interpolate colors */ ex = (sdx & 0xffff); ey = (sdy & 0xffff); t1 = ((((c01.r - c00.r) * ex) >> 16) + c00.r) & 0xff; t2 = ((((c11.r - c10.r) * ex) >> 16) + c10.r) & 0xff; pc->r = (((t2 - t1) * ey) >> 16) + t1; t1 = ((((c01.g - c00.g) * ex) >> 16) + c00.g) & 0xff; t2 = ((((c11.g - c10.g) * ex) >> 16) + c10.g) & 0xff; pc->g = (((t2 - t1) * ey) >> 16) + t1; t1 = ((((c01.b - c00.b) * ex) >> 16) + c00.b) & 0xff; t2 = ((((c11.b - c10.b) * ex) >> 16) + c10.b) & 0xff; pc->b = (((t2 - t1) * ey) >> 16) + t1; t1 = ((((c01.a - c00.a) * ex) >> 16) + c00.a) & 0xff; t2 = ((((c11.a - c10.a) * ex) >> 16) + c10.a) & 0xff; pc->a = (((t2 - t1) * ey) >> 16) + t1; } sdx += icos; sdy += isin; pc++; } pc = (tColorRGBA *) ((Uint8 *) pc + gap); } } else { for (y = 0; y < dst->h; y++) { dy = cy - y; sdx = (ax + (isin * dy)) + xd; sdy = (ay - (icos * dy)) + yd; for (x = 0; x < dst->w; x++) { dx = (short) (sdx >> 16); dy = (short) (sdy >> 16); if (flipx) dx = (src->w-1)-dx; if (flipy) dy = (src->h-1)-dy; if ((dx >= 0) && (dy >= 0) && (dx < src->w) && (dy < src->h)) { sp = (tColorRGBA *) ((Uint8 *) src->pixels + src->pitch * dy); sp += dx; *pc = *sp; } sdx += icos; sdy += isin; pc++; } pc = (tColorRGBA *) ((Uint8 *) pc + gap); } } } /*! \brief Rotates and zooms 8 bit palette/Y 'src' surface to 'dst' surface without smoothing. Rotates and zooms 8 bit RGBA/ABGR 'src' surface to 'dst' surface based on the control parameters by scanning the destination surface. Assumes src and dst surfaces are of 8 bit depth. Assumes dst surface was allocated with the correct dimensions. \param src Source surface. \param dst Destination surface. \param cx Horizontal center coordinate. \param cy Vertical center coordinate. \param isin Integer version of sine of angle. \param icos Integer version of cosine of angle. \param flipx Flag indicating horizontal mirroring should be applied. \param flipy Flag indicating vertical mirroring should be applied. */ void transformSurfaceY(SDL_Surface * src, SDL_Surface * dst, int cx, int cy, int isin, int icos, int flipx, int flipy) { int x, y, dx, dy, xd, yd, sdx, sdy, ax, ay; tColorY *pc, *sp; int gap; /* * Variable setup */ xd = ((src->w - dst->w) << 15); yd = ((src->h - dst->h) << 15); ax = (cx << 16) - (icos * cx); ay = (cy << 16) - (isin * cx); pc = (tColorY*) dst->pixels; gap = dst->pitch - dst->w; /* * Clear surface to colorkey */ memset(pc, (int)(_colorkey(src) & 0xff), dst->pitch * dst->h); /* * Iterate through destination surface */ for (y = 0; y < dst->h; y++) { dy = cy - y; sdx = (ax + (isin * dy)) + xd; sdy = (ay - (icos * dy)) + yd; for (x = 0; x < dst->w; x++) { dx = (short) (sdx >> 16); dy = (short) (sdy >> 16); if (flipx) dx = (src->w-1)-dx; if (flipy) dy = (src->h-1)-dy; if ((dx >= 0) && (dy >= 0) && (dx < src->w) && (dy < src->h)) { sp = (tColorY *) (src->pixels); sp += (src->pitch * dy + dx); *pc = *sp; } sdx += icos; sdy += isin; pc++; } pc += gap; } } /*! \brief Rotates a 8/16/24/32 bit surface in increments of 90 degrees. Specialized 90 degree rotator which rotates a 'src' surface in 90 degree increments clockwise returning a new surface. Faster than rotozoomer since no scanning or interpolation takes place. Input surface must be 8/16/24/32 bit. (code contributed by J. Schiller, improved by C. Allport and A. Schiffler) \param src Source surface to rotate. \param numClockwiseTurns Number of clockwise 90 degree turns to apply to the source. \returns The new, rotated surface; or NULL for surfaces with incorrect input format. */ SDL_Surface* rotateSurface90Degrees(SDL_Surface* src, int numClockwiseTurns) { int row, col, newWidth, newHeight; int bpp, bpr; SDL_Surface* dst; Uint8* srcBuf; Uint8* dstBuf; int normalizedClockwiseTurns; /* Has to be a valid surface pointer and be a Nbit surface where n is divisible by 8 */ if (!src || !src->format) { SDL_SetError("NULL source surface or source surface format"); return NULL; } if ((src->format->BitsPerPixel % 8) != 0) { SDL_SetError("Invalid source surface bit depth"); return NULL; } /* normalize numClockwiseTurns */ normalizedClockwiseTurns = (numClockwiseTurns % 4); if (normalizedClockwiseTurns < 0) { normalizedClockwiseTurns += 4; } /* If turns are even, our new width/height will be the same as the source surface */ if (normalizedClockwiseTurns % 2) { newWidth = src->h; newHeight = src->w; } else { newWidth = src->w; newHeight = src->h; } dst = SDL_CreateRGBSurface( src->flags, newWidth, newHeight, src->format->BitsPerPixel, src->format->Rmask, src->format->Gmask, src->format->Bmask, src->format->Amask); if(!dst) { SDL_SetError("Could not create destination surface"); return NULL; } if (SDL_MUSTLOCK(src)) { SDL_LockSurface(src); } if (SDL_MUSTLOCK(dst)) { SDL_LockSurface(dst); } /* Calculate byte-per-pixel */ bpp = src->format->BitsPerPixel / 8; switch(normalizedClockwiseTurns) { case 0: /* Make a copy of the surface */ { /* Unfortunately SDL_BlitSurface cannot be used to make a copy of the surface since it does not preserve alpha. */ if (src->pitch == dst->pitch) { /* If the pitch is the same for both surfaces, the memory can be copied all at once. */ memcpy(dst->pixels, src->pixels, (src->h * src->pitch)); } else { /* If the pitch differs, copy each row separately */ srcBuf = (Uint8*)(src->pixels); dstBuf = (Uint8*)(dst->pixels); bpr = src->w * bpp; for (row = 0; row < src->h; row++) { memcpy(dstBuf, srcBuf, bpr); srcBuf += src->pitch; dstBuf += dst->pitch; } } } break; /* rotate clockwise */ case 1: /* rotated 90 degrees clockwise */ { for (row = 0; row < src->h; ++row) { srcBuf = (Uint8*)(src->pixels) + (row * src->pitch); dstBuf = (Uint8*)(dst->pixels) + (dst->w - row - 1) * bpp; for (col = 0; col < src->w; ++col) { memcpy (dstBuf, srcBuf, bpp); srcBuf += bpp; dstBuf += dst->pitch; } } } break; case 2: /* rotated 180 degrees clockwise */ { for (row = 0; row < src->h; ++row) { srcBuf = (Uint8*)(src->pixels) + (row * src->pitch); dstBuf = (Uint8*)(dst->pixels) + ((dst->h - row - 1) * dst->pitch) + (dst->w - 1) * bpp; for (col = 0; col < src->w; ++col) { memcpy (dstBuf, srcBuf, bpp); srcBuf += bpp; dstBuf -= bpp; } } } break; case 3: /* rotated 270 degrees clockwise */ { for (row = 0; row < src->h; ++row) { srcBuf = (Uint8*)(src->pixels) + (row * src->pitch); dstBuf = (Uint8*)(dst->pixels) + (row * bpp) + (dst->h * dst->pitch); for (col = 0; col < src->w; ++col) { memcpy (dstBuf, srcBuf, bpp); srcBuf += bpp; dstBuf -= dst->pitch; } } } break; } /* end switch */ if (SDL_MUSTLOCK(src)) { SDL_UnlockSurface(src); } if (SDL_MUSTLOCK(dst)) { SDL_UnlockSurface(dst); } return dst; } /*! \brief Internal target surface sizing function for rotozooms with trig result return. \param width The source surface width. \param height The source surface height. \param angle The angle to rotate in degrees. \param zoomx The horizontal scaling factor. \param zoomy The vertical scaling factor. \param dstwidth The calculated width of the destination surface. \param dstheight The calculated height of the destination surface. \param canglezoom The sine of the angle adjusted by the zoom factor. \param sanglezoom The cosine of the angle adjusted by the zoom factor. */ void _rotozoomSurfaceSizeTrig(int width, int height, double angle, double zoomx, double zoomy, int *dstwidth, int *dstheight, double *canglezoom, double *sanglezoom) { double x, y, cx, cy, sx, sy; double radangle; int dstwidthhalf, dstheighthalf; /* * Determine destination width and height by rotating a centered source box */ radangle = angle * (M_PI / 180.0); *sanglezoom = sin(radangle); *canglezoom = cos(radangle); *sanglezoom *= zoomx; *canglezoom *= zoomx; x = (double)(width / 2); y = (double)(height / 2); cx = *canglezoom * x; cy = *canglezoom * y; sx = *sanglezoom * x; sy = *sanglezoom * y; dstwidthhalf = MAX((int) ceil(MAX(MAX(MAX(fabs(cx + sy), fabs(cx - sy)), fabs(-cx + sy)), fabs(-cx - sy))), 1); dstheighthalf = MAX((int) ceil(MAX(MAX(MAX(fabs(sx + cy), fabs(sx - cy)), fabs(-sx + cy)), fabs(-sx - cy))), 1); *dstwidth = 2 * dstwidthhalf; *dstheight = 2 * dstheighthalf; } /*! \brief Returns the size of the resulting target surface for a rotozoomSurfaceXY() call. \param width The source surface width. \param height The source surface height. \param angle The angle to rotate in degrees. \param zoomx The horizontal scaling factor. \param zoomy The vertical scaling factor. \param dstwidth The calculated width of the rotozoomed destination surface. \param dstheight The calculated height of the rotozoomed destination surface. */ void rotozoomSurfaceSizeXY(int width, int height, double angle, double zoomx, double zoomy, int *dstwidth, int *dstheight) { double dummy_sanglezoom, dummy_canglezoom; _rotozoomSurfaceSizeTrig(width, height, angle, zoomx, zoomy, dstwidth, dstheight, &dummy_sanglezoom, &dummy_canglezoom); } /*! \brief Returns the size of the resulting target surface for a rotozoomSurface() call. \param width The source surface width. \param height The source surface height. \param angle The angle to rotate in degrees. \param zoom The scaling factor. \param dstwidth The calculated width of the rotozoomed destination surface. \param dstheight The calculated height of the rotozoomed destination surface. */ void rotozoomSurfaceSize(int width, int height, double angle, double zoom, int *dstwidth, int *dstheight) { double dummy_sanglezoom, dummy_canglezoom; _rotozoomSurfaceSizeTrig(width, height, angle, zoom, zoom, dstwidth, dstheight, &dummy_sanglezoom, &dummy_canglezoom); } /*! \brief Rotates and zooms a surface and optional anti-aliasing. Rotates and zoomes a 32bit or 8bit 'src' surface to newly created 'dst' surface. 'angle' is the rotation in degrees and 'zoom' a scaling factor. If 'smooth' is set then the destination 32bit surface is anti-aliased. If the surface is not 8bit or 32bit RGBA/ABGR it will be converted into a 32bit RGBA format on the fly. \param src The surface to rotozoom. \param angle The angle to rotate in degrees. \param zoom The scaling factor. \param smooth Antialiasing flag; set to SMOOTHING_ON to enable. \return The new rotozoomed surface. */ SDL_Surface *rotozoomSurface(SDL_Surface * src, double angle, double zoom, int smooth) { return rotozoomSurfaceXY(src, angle, zoom, zoom, smooth); } /*! \brief Rotates and zooms a surface with different horizontal and vertival scaling factors and optional anti-aliasing. Rotates and zooms a 32bit or 8bit 'src' surface to newly created 'dst' surface. 'angle' is the rotation in degrees, 'zoomx and 'zoomy' scaling factors. If 'smooth' is set then the destination 32bit surface is anti-aliased. If the surface is not 8bit or 32bit RGBA/ABGR it will be converted into a 32bit RGBA format on the fly. \param src The surface to rotozoom. \param angle The angle to rotate in degrees. \param zoomx The horizontal scaling factor. \param zoomy The vertical scaling factor. \param smooth Antialiasing flag; set to SMOOTHING_ON to enable. \return The new rotozoomed surface. */ SDL_Surface *rotozoomSurfaceXY(SDL_Surface * src, double angle, double zoomx, double zoomy, int smooth) { SDL_Surface *rz_src; SDL_Surface *rz_dst; double zoominv; double sanglezoom, canglezoom, sanglezoominv, canglezoominv; int dstwidthhalf, dstwidth, dstheighthalf, dstheight; int is32bit; int i, src_converted; int flipx,flipy; /* * Sanity check */ if (src == NULL) { return (NULL); } /* * Determine if source surface is 32bit or 8bit */ is32bit = (src->format->BitsPerPixel == 32); if ((is32bit) || (src->format->BitsPerPixel == 8)) { /* * Use source surface 'as is' */ rz_src = src; src_converted = 0; } else { /* * New source surface is 32bit with a defined RGBA ordering */ rz_src = SDL_CreateRGBSurface(SDL_SWSURFACE, src->w, src->h, 32, #if SDL_BYTEORDER == SDL_LIL_ENDIAN 0x000000ff, 0x0000ff00, 0x00ff0000, 0xff000000 #else 0xff000000, 0x00ff0000, 0x0000ff00, 0x000000ff #endif ); SDL_BlitSurface(src, NULL, rz_src, NULL); src_converted = 1; is32bit = 1; } /* * Sanity check zoom factor */ flipx = (zoomx<0.0); if (flipx) zoomx=-zoomx; flipy = (zoomy<0.0); if (flipy) zoomy=-zoomy; if (zoomx < VALUE_LIMIT) zoomx = VALUE_LIMIT; if (zoomy < VALUE_LIMIT) zoomy = VALUE_LIMIT; zoominv = 65536.0 / (zoomx * zoomx); /* * Check if we have a rotozoom or just a zoom */ if (fabs(angle) > VALUE_LIMIT) { /* * Angle!=0: full rotozoom */ /* * ----------------------- */ /* Determine target size */ _rotozoomSurfaceSizeTrig(rz_src->w, rz_src->h, angle, zoomx, zoomy, &dstwidth, &dstheight, &canglezoom, &sanglezoom); /* * Calculate target factors from sin/cos and zoom */ sanglezoominv = sanglezoom; canglezoominv = canglezoom; sanglezoominv *= zoominv; canglezoominv *= zoominv; /* Calculate half size */ dstwidthhalf = dstwidth / 2; dstheighthalf = dstheight / 2; /* * Alloc space to completely contain the rotated surface */ rz_dst = NULL; if (is32bit) { /* * Target surface is 32bit with source RGBA/ABGR ordering */ rz_dst = SDL_CreateRGBSurface(SDL_SWSURFACE, dstwidth, dstheight + GUARD_ROWS, 32, rz_src->format->Rmask, rz_src->format->Gmask, rz_src->format->Bmask, rz_src->format->Amask); } else { /* * Target surface is 8bit */ rz_dst = SDL_CreateRGBSurface(SDL_SWSURFACE, dstwidth, dstheight + GUARD_ROWS, 8, 0, 0, 0, 0); } /* Check target */ if (rz_dst == NULL) return NULL; /* Adjust for guard rows */ rz_dst->h = dstheight; /* * Lock source surface */ if (SDL_MUSTLOCK(rz_src)) { SDL_LockSurface(rz_src); } /* * Check which kind of surface we have */ if (is32bit) { /* * Call the 32bit transformation routine to do the rotation (using alpha) */ _transformSurfaceRGBA(rz_src, rz_dst, dstwidthhalf, dstheighthalf, (int) (sanglezoominv), (int) (canglezoominv), flipx, flipy, smooth); } else { /* * Copy palette and colorkey info */ for (i = 0; i < rz_src->format->palette->ncolors; i++) { rz_dst->format->palette->colors[i] = rz_src->format->palette->colors[i]; } rz_dst->format->palette->ncolors = rz_src->format->palette->ncolors; /* * Call the 8bit transformation routine to do the rotation */ transformSurfaceY(rz_src, rz_dst, dstwidthhalf, dstheighthalf, (int) (sanglezoominv), (int) (canglezoominv), flipx, flipy); } /* * Unlock source surface */ if (SDL_MUSTLOCK(rz_src)) { SDL_UnlockSurface(rz_src); } } else { /* * Angle=0: Just a zoom */ /* * -------------------- */ /* * Calculate target size */ zoomSurfaceSize(rz_src->w, rz_src->h, zoomx, zoomy, &dstwidth, &dstheight); /* * Alloc space to completely contain the zoomed surface */ rz_dst = NULL; if (is32bit) { /* * Target surface is 32bit with source RGBA/ABGR ordering */ rz_dst = SDL_CreateRGBSurface(SDL_SWSURFACE, dstwidth, dstheight + GUARD_ROWS, 32, rz_src->format->Rmask, rz_src->format->Gmask, rz_src->format->Bmask, rz_src->format->Amask); } else { /* * Target surface is 8bit */ rz_dst = SDL_CreateRGBSurface(SDL_SWSURFACE, dstwidth, dstheight + GUARD_ROWS, 8, 0, 0, 0, 0); } /* Check target */ if (rz_dst == NULL) return NULL; /* Adjust for guard rows */ rz_dst->h = dstheight; /* * Lock source surface */ if (SDL_MUSTLOCK(rz_src)) { SDL_LockSurface(rz_src); } /* * Check which kind of surface we have */ if (is32bit) { /* * Call the 32bit transformation routine to do the zooming (using alpha) */ _zoomSurfaceRGBA(rz_src, rz_dst, flipx, flipy, smooth); } else { /* * Copy palette and colorkey info */ for (i = 0; i < rz_src->format->palette->ncolors; i++) { rz_dst->format->palette->colors[i] = rz_src->format->palette->colors[i]; } rz_dst->format->palette->ncolors = rz_src->format->palette->ncolors; /* * Call the 8bit transformation routine to do the zooming */ _zoomSurfaceY(rz_src, rz_dst, flipx, flipy); } /* * Unlock source surface */ if (SDL_MUSTLOCK(rz_src)) { SDL_UnlockSurface(rz_src); } } /* * Cleanup temp surface */ if (src_converted) { SDL_FreeSurface(rz_src); } /* * Return destination surface */ return (rz_dst); } /*! \brief Calculates the size of the target surface for a zoomSurface() call. The minimum size of the target surface is 1. The input factors can be positive or negative. \param width The width of the source surface to zoom. \param height The height of the source surface to zoom. \param zoomx The horizontal zoom factor. \param zoomy The vertical zoom factor. \param dstwidth Pointer to an integer to store the calculated width of the zoomed target surface. \param dstheight Pointer to an integer to store the calculated height of the zoomed target surface. */ void zoomSurfaceSize(int width, int height, double zoomx, double zoomy, int *dstwidth, int *dstheight) { /* * Make zoom factors positive */ int flipx, flipy; flipx = (zoomx<0.0); if (flipx) zoomx = -zoomx; flipy = (zoomy<0.0); if (flipy) zoomy = -zoomy; /* * Sanity check zoom factors */ if (zoomx < VALUE_LIMIT) { zoomx = VALUE_LIMIT; } if (zoomy < VALUE_LIMIT) { zoomy = VALUE_LIMIT; } /* * Calculate target size */ *dstwidth = (int) floor(((double) width * zoomx) + 0.5); *dstheight = (int) floor(((double) height * zoomy) + 0.5); if (*dstwidth < 1) { *dstwidth = 1; } if (*dstheight < 1) { *dstheight = 1; } } /*! \brief Zoom a surface by independent horizontal and vertical factors with optional smoothing. Zooms a 32bit or 8bit 'src' surface to newly created 'dst' surface. 'zoomx' and 'zoomy' are scaling factors for width and height. If 'smooth' is on then the destination 32bit surface is anti-aliased. If the surface is not 8bit or 32bit RGBA/ABGR it will be converted into a 32bit RGBA format on the fly. If zoom factors are negative, the image is flipped on the axes. \param src The surface to zoom. \param zoomx The horizontal zoom factor. \param zoomy The vertical zoom factor. \param smooth Antialiasing flag; set to SMOOTHING_ON to enable. \return The new, zoomed surface. */ SDL_Surface *zoomSurface(SDL_Surface * src, double zoomx, double zoomy, int smooth) { SDL_Surface *rz_src; SDL_Surface *rz_dst; int dstwidth, dstheight; int is32bit; int i, src_converted; int flipx, flipy; /* * Sanity check */ if (src == NULL) return (NULL); /* * Determine if source surface is 32bit or 8bit */ is32bit = (src->format->BitsPerPixel == 32); if ((is32bit) || (src->format->BitsPerPixel == 8)) { /* * Use source surface 'as is' */ rz_src = src; src_converted = 0; } else { /* * New source surface is 32bit with a defined RGBA ordering */ rz_src = SDL_CreateRGBSurface(SDL_SWSURFACE, src->w, src->h, 32, #if SDL_BYTEORDER == SDL_LIL_ENDIAN 0x000000ff, 0x0000ff00, 0x00ff0000, 0xff000000 #else 0xff000000, 0x00ff0000, 0x0000ff00, 0x000000ff #endif ); if (rz_src == NULL) { return NULL; } SDL_BlitSurface(src, NULL, rz_src, NULL); src_converted = 1; is32bit = 1; } flipx = (zoomx<0.0); if (flipx) zoomx = -zoomx; flipy = (zoomy<0.0); if (flipy) zoomy = -zoomy; /* Get size if target */ zoomSurfaceSize(rz_src->w, rz_src->h, zoomx, zoomy, &dstwidth, &dstheight); /* * Alloc space to completely contain the zoomed surface */ rz_dst = NULL; if (is32bit) { /* * Target surface is 32bit with source RGBA/ABGR ordering */ rz_dst = SDL_CreateRGBSurface(SDL_SWSURFACE, dstwidth, dstheight + GUARD_ROWS, 32, rz_src->format->Rmask, rz_src->format->Gmask, rz_src->format->Bmask, rz_src->format->Amask); } else { /* * Target surface is 8bit */ rz_dst = SDL_CreateRGBSurface(SDL_SWSURFACE, dstwidth, dstheight + GUARD_ROWS, 8, 0, 0, 0, 0); } /* Check target */ if (rz_dst == NULL) { /* * Cleanup temp surface */ if (src_converted) { SDL_FreeSurface(rz_src); } return NULL; } /* Adjust for guard rows */ rz_dst->h = dstheight; /* * Lock source surface */ if (SDL_MUSTLOCK(rz_src)) { SDL_LockSurface(rz_src); } /* * Check which kind of surface we have */ if (is32bit) { /* * Call the 32bit transformation routine to do the zooming (using alpha) */ _zoomSurfaceRGBA(rz_src, rz_dst, flipx, flipy, smooth); } else { /* * Copy palette and colorkey info */ for (i = 0; i < rz_src->format->palette->ncolors; i++) { rz_dst->format->palette->colors[i] = rz_src->format->palette->colors[i]; } rz_dst->format->palette->ncolors = rz_src->format->palette->ncolors; /* * Call the 8bit transformation routine to do the zooming */ _zoomSurfaceY(rz_src, rz_dst, flipx, flipy); } /* * Unlock source surface */ if (SDL_MUSTLOCK(rz_src)) { SDL_UnlockSurface(rz_src); } /* * Cleanup temp surface */ if (src_converted) { SDL_FreeSurface(rz_src); } /* * Return destination surface */ return (rz_dst); } /*! \brief Shrink a surface by an integer ratio using averaging. Shrinks a 32bit or 8bit 'src' surface to a newly created 'dst' surface. 'factorx' and 'factory' are the shrinking ratios (i.e. 2=1/2 the size, 3=1/3 the size, etc.) The destination surface is antialiased by averaging the source box RGBA or Y information. If the surface is not 8bit or 32bit RGBA/ABGR it will be converted into a 32bit RGBA format on the fly. The input surface is not modified. The output surface is newly allocated. \param src The surface to shrink. \param factorx The horizontal shrinking ratio. \param factory The vertical shrinking ratio. \return The new, shrunken surface. */ /*@null@*/ SDL_Surface *shrinkSurface(SDL_Surface *src, int factorx, int factory) { int result; SDL_Surface *rz_src; SDL_Surface *rz_dst = NULL; int dstwidth, dstheight; int is32bit; int i, src_converted; int haveError = 0; /* * Sanity check */ if (src == NULL) { return (NULL); } /* * Determine if source surface is 32bit or 8bit */ is32bit = (src->format->BitsPerPixel == 32); if ((is32bit) || (src->format->BitsPerPixel == 8)) { /* * Use source surface 'as is' */ rz_src = src; src_converted = 0; } else { /* * New source surface is 32bit with a defined RGBA ordering */ rz_src = SDL_CreateRGBSurface(SDL_SWSURFACE, src->w, src->h, 32, #if SDL_BYTEORDER == SDL_LIL_ENDIAN 0x000000ff, 0x0000ff00, 0x00ff0000, 0xff000000 #else 0xff000000, 0x00ff0000, 0x0000ff00, 0x000000ff #endif ); if (rz_src==NULL) { haveError = 1; goto exitShrinkSurface; } SDL_BlitSurface(src, NULL, rz_src, NULL); src_converted = 1; is32bit = 1; } /* * Lock the surface */ if (SDL_MUSTLOCK(rz_src)) { if (SDL_LockSurface(rz_src) < 0) { haveError = 1; goto exitShrinkSurface; } } /* Get size for target */ dstwidth=rz_src->w/factorx; while (dstwidth*factorx>rz_src->w) { dstwidth--; } dstheight=rz_src->h/factory; while (dstheight*factory>rz_src->h) { dstheight--; } /* * Alloc space to completely contain the shrunken surface * (with added guard rows) */ if (is32bit==1) { /* * Target surface is 32bit with source RGBA/ABGR ordering */ rz_dst = SDL_CreateRGBSurface(SDL_SWSURFACE, dstwidth, dstheight + GUARD_ROWS, 32, rz_src->format->Rmask, rz_src->format->Gmask, rz_src->format->Bmask, rz_src->format->Amask); } else { /* * Target surface is 8bit */ rz_dst = SDL_CreateRGBSurface(SDL_SWSURFACE, dstwidth, dstheight + GUARD_ROWS, 8, 0, 0, 0, 0); } /* Check target */ if (rz_dst == NULL) { haveError = 1; goto exitShrinkSurface; } /* Adjust for guard rows */ rz_dst->h = dstheight; /* * Check which kind of surface we have */ if (is32bit==1) { /* * Call the 32bit transformation routine to do the shrinking (using alpha) */ result = _shrinkSurfaceRGBA(rz_src, rz_dst, factorx, factory); if ((result!=0) || (rz_dst==NULL)) { haveError = 1; goto exitShrinkSurface; } } else { /* * Copy palette and colorkey info */ for (i = 0; i < rz_src->format->palette->ncolors; i++) { rz_dst->format->palette->colors[i] = rz_src->format->palette->colors[i]; } rz_dst->format->palette->ncolors = rz_src->format->palette->ncolors; /* * Call the 8bit transformation routine to do the shrinking */ result = _shrinkSurfaceY(rz_src, rz_dst, factorx, factory); if (result!=0) { haveError = 1; goto exitShrinkSurface; } } exitShrinkSurface: if (rz_src!=NULL) { /* * Unlock source surface */ if (SDL_MUSTLOCK(rz_src)) { SDL_UnlockSurface(rz_src); } /* * Cleanup temp surface */ if (src_converted==1) { SDL_FreeSurface(rz_src); } } /* Check error state; maybe need to cleanup destination */ if (haveError==1) { if (rz_dst!=NULL) { SDL_FreeSurface(rz_dst); } rz_dst=NULL; } /* * Return destination surface */ return (rz_dst); } ================================================ FILE: src/b2Alias.cpp ================================================ // This module creates unmangled and unhidden aliases for functions and methods, // also the Debug Draw interface via SDL2_gfx, for use by BBC BASIC for SDL 2.0. // Version 2.0, (c) Richard T. Russell http://www.rtrussell.co.uk/, 06-Apr-2021 #include "Box2D.h" #define VISIBLE __attribute__ ((visibility ("default"))) // Globals: void *Renderer; double xyScale, xOffset, yOffset; // Debug draw functions: class DebugDraw : public b2Draw { // b2Draw has all the virtual functions that we need to override here public: // We won't be implementing all of these, but if we don't declare them here we'll get an override error void DrawSolidPolygon(const b2Vec2* vertices, int32 vertexCount, const b2Color& color); void DrawPolygon(const b2Vec2* vertices, int32 vertexCount, const b2Color& color); void DrawCircle(const b2Vec2& center, float32 radius, const b2Color& color); void DrawSolidCircle(const b2Vec2& center, float32 radius, const b2Vec2& axis, const b2Color& color); void DrawSegment(const b2Vec2& p1, const b2Vec2& p2, const b2Color& color); void DrawTransform(const b2Transform& xf); void DrawPoint(const b2Vec2&, float32, const b2Color&); }; extern "C" { extern int _ZN7b2WorldC1ERK6b2Vec2(void*, void*) ; extern int _ZN13b2CircleShapeC1Ev(void*) ; extern int _ZN14b2PolygonShapeC1Ev(void*) ; extern int _ZN12b2ChainShapeC1Ev(void*) ; extern void _ZN6b2Body11SetUserDataEPv(void*, void*) ; extern void _ZN9b2Fixture11SetUserDataEPv(void*, void*) ; extern void _ZN7b2Joint11SetUserDataEPv(void*, void*) ; extern void _ZN7b2World11DestroyBodyEP6b2Body(void*, void*) ; extern void _ZN12b2ChainShape13SetNextVertexERK6b2Vec2(void*, void*) ; extern void _ZN12b2ChainShape13SetPrevVertexERK6b2Vec2(void*, void*) ; extern void _ZN9b2Fixture13SetFilterDataERK8b2Filter(void*, void*) ; extern void _ZN6b2Body14DestroyFixtureEP9b2Fixture(void*, void*) ; extern void _ZN6b2Body17SetLinearVelocityERK6b2Vec2(void*, void*) ; extern void _ZN7b2World10SetGravityERK6b2Vec2(void*, void*) ; extern void _ZN12b2MouseJoint9SetTargetERK6b2Vec2(void*, void*) ; extern void _ZN7b2World12DestroyJointEP7b2Joint(void*, void*) ; #ifdef __EMSCRIPTEN__ extern void _ZNK15b2DistanceJoint10GetAnchorAEv(void*, void*) ; extern void _ZNK15b2DistanceJoint10GetAnchorBEv(void*, void*) ; extern void _ZNK13b2PulleyJoint10GetAnchorAEv(void*, void*) ; extern void _ZNK13b2PulleyJoint10GetAnchorBEv(void*, void*) ; extern void _ZNK11b2RopeJoint10GetAnchorAEv(void*, void*) ; extern void _ZNK11b2RopeJoint10GetAnchorBEv(void*, void*) ; #else // On some platforms these return a b2Vec2, on others the b2Vec2 is passed as the first parameter: extern long long _ZNK15b2DistanceJoint10GetAnchorAEv(void*, void*) ; extern long long _ZNK15b2DistanceJoint10GetAnchorBEv(void*, void*) ; extern long long _ZNK13b2PulleyJoint10GetAnchorAEv(void*, void*) ; extern long long _ZNK13b2PulleyJoint10GetAnchorBEv(void*, void*) ; extern long long _ZNK11b2RopeJoint10GetAnchorAEv(void*, void*) ; extern long long _ZNK11b2RopeJoint10GetAnchorBEv(void*, void*) ; #endif extern bool _ZNK6b2Body7IsAwakeEv(void*) ; extern bool _ZNK9b2Contact10IsTouchingEv(void*) ; extern int _ZNK9b2Contact14GetChildIndexAEv(void*) ; extern int _ZNK9b2Contact14GetChildIndexBEv(void*) ; extern float _ZNK6b2Body7GetMassEv(void*) ; extern float _ZNK6b2Body18GetAngularVelocityEv(void*) ; extern void* _ZNK6b2Body17GetLinearVelocityEv(void*) ; extern void* _ZN7b2World10CreateBodyEPK9b2BodyDef(void*, void*) ; extern void* _ZN9b2Fixture7GetBodyEv(void*) ; extern void* _ZN9b2Fixture8GetShapeEv(void*) ; extern void* _ZNK6b2Body12GetTransformEv(void*) ; extern void* _ZNK6b2Body11GetUserDataEv(void*) ; extern void* _ZNK9b2Fixture11GetUserDataEv(void*) ; extern void* _ZNK7b2Joint11GetUserDataEv(void*) ; extern void* _ZN7b2Joint8GetBodyAEv(void*) ; extern void* _ZN7b2Joint8GetBodyBEv(void*) ; extern void* _ZN7b2World14GetContactListEv(void*) ; extern void* _ZN6b2Body14GetContactListEv(void*) ; extern void* _ZN9b2Contact7GetNextEv(void*) ; extern void* _ZN9b2Contact11GetFixtureAEv(void*) ; extern void* _ZN9b2Contact11GetFixtureBEv(void*) ; extern void* _ZN7b2World11GetBodyListEv(void*) ; extern void* _ZN6b2Body7GetNextEv(void*) ; extern void* _ZN6b2Body13CreateFixtureEPK12b2FixtureDef(void*, void*) ; extern void* _ZN7b2World11CreateJointEPK10b2JointDef(void*, void*) ; extern void* _ZN6b2Body13CreateFixtureEPK7b2Shapef(void*, void*, float) ; extern void _ZN6b2Body9SetActiveEb(void*, bool) ; extern void _ZN6b2Body8SetAwakeEb(void*, bool) ; extern void _ZN6b2Body9SetBulletEb(void*, bool) ; extern void _ZN6b2Body16SetFixedRotationEb(void*, bool) ; extern void _ZN9b2Fixture9SetSensorEb(void*, bool) ; extern void _ZN6b2Body18SetSleepingAllowedEb(void*, bool) ; extern void _ZN16b2PrismaticJoint11EnableMotorEb(void*, bool) ; extern void _ZN15b2RevoluteJoint11EnableMotorEb(void*, bool) ; extern void _ZN12b2WheelJoint11EnableMotorEb(void*, bool) ; extern void _ZN12b2ChainShape11CreateChainEPK6b2Vec2i(void*, void*, int) ; extern void _ZN12b2ChainShape10CreateLoopEPK6b2Vec2i(void*, void*, int) ; extern void _ZN14b2PolygonShape3SetEPK6b2Vec2i(void*, void*, int) ; extern void _ZN6b2Body12SetTransformERK6b2Vec2f(void*, void*, float) ; extern void _ZN14b2PolygonShape8SetAsBoxEff(void*, float, float) ; extern void _ZN14b2PolygonShape8SetAsBoxEffRK6b2Vec2f(void*, float, float, void*, float) ; extern void _ZN7b2World4StepEfii(void*, float, int, int) ; extern void _ZN6b2Body10ApplyForceERK6b2Vec2S2_b(void*, void*, void*, bool) ; extern void _ZN6b2Body18ApplyLinearImpulseERK6b2Vec2S2_b(void*, void*, void*, bool) ; extern void _ZN6b2Body11ApplyTorqueEfb(void*, float, bool) ; extern void _ZN6b2Body18SetAngularVelocityEf(void*, float) ; extern void _ZN16b2PrismaticJoint16SetMaxMotorForceEf(void*, float) ; extern void _ZN15b2RevoluteJoint17SetMaxMotorTorqueEf(void*, float) ; extern void _ZN12b2WheelJoint17SetMaxMotorTorqueEf(void*, float) ; extern void _ZN16b2PrismaticJoint13SetMotorSpeedEf(void*, float) ; extern void _ZN15b2RevoluteJoint13SetMotorSpeedEf(void*, float) ; extern void _ZN12b2WheelJoint13SetMotorSpeedEf(void*, float) ; extern void _ZN18b2DistanceJointDef10InitializeEP6b2BodyS1_RK6b2Vec2S4_(void*, void*, void*, void*, void*) ; extern void _ZN18b2FrictionJointDef10InitializeEP6b2BodyS1_RK6b2Vec2(void*, void*, void*, void*) ; extern void _ZN19b2PrismaticJointDef10InitializeEP6b2BodyS1_RK6b2Vec2S4_(void*, void*, void*, void*, void*) ; extern void _ZN16b2PulleyJointDef10InitializeEP6b2BodyS1_RK6b2Vec2S4_S4_S4_f(void*, void*, void*, void*, void*, void*, void*, float) ; extern void _ZN18b2RevoluteJointDef10InitializeEP6b2BodyS1_RK6b2Vec2(void*, void*, void*, void*) ; extern void _ZN14b2WeldJointDef10InitializeEP6b2BodyS1_RK6b2Vec2(void*, void*, void*, void*) ; extern void _ZN15b2WheelJointDef10InitializeEP6b2BodyS1_RK6b2Vec2S4_(void*, void*, void*, void*, void*) ; extern void _ZN7b2World13DrawDebugDataEv(void*) ; #ifndef __EMSCRIPTEN__ VISIBLE int b2NewWorld(void* a, void* b) { return _ZN7b2WorldC1ERK6b2Vec2(a, b); } VISIBLE int b2CircleShape(void* a) { return _ZN13b2CircleShapeC1Ev(a); } VISIBLE int b2PolygonShape(void* a) { return _ZN14b2PolygonShapeC1Ev(a); } VISIBLE int b2ChainShape(void* a) { return _ZN12b2ChainShapeC1Ev(a); } VISIBLE void b2SetUserDataB(void* a, void* b) { _ZN6b2Body11SetUserDataEPv(a, b); } VISIBLE void b2SetUserDataF(void* a, void* b) { _ZN9b2Fixture11SetUserDataEPv(a, b); } VISIBLE void b2SetUserDataJ(void* a, void* b) { _ZN7b2Joint11SetUserDataEPv(a, b); } VISIBLE void b2DestroyBody(void* a, void* b) { _ZN7b2World11DestroyBodyEP6b2Body(a, b); } VISIBLE void b2SetNextVertex(void* a, void* b) { _ZN12b2ChainShape13SetNextVertexERK6b2Vec2(a, b); } VISIBLE void b2SetPrevVertex(void* a, void* b) { _ZN12b2ChainShape13SetPrevVertexERK6b2Vec2(a, b); } VISIBLE void b2SetFilterData(void* a, void* b) { _ZN9b2Fixture13SetFilterDataERK8b2Filter(a, b); } VISIBLE void b2DestroyFixture(void* a, void* b) { _ZN6b2Body14DestroyFixtureEP9b2Fixture(a, b); } VISIBLE void b2SetLinearVelocity(void* a, void* b) { _ZN6b2Body17SetLinearVelocityERK6b2Vec2(a, b); } VISIBLE void b2SetGravity(void* a, void* b) { _ZN7b2World10SetGravityERK6b2Vec2(a, b); } VISIBLE void b2SetTarget(void* a, void* b) { _ZN12b2MouseJoint9SetTargetERK6b2Vec2(a, b); } VISIBLE void b2DestroyJoint(void* a, void* b) { _ZN7b2World12DestroyJointEP7b2Joint(a, b); } // On some platforms these return a b2Vec2, on others the b2Vec2 is passed as the first parameter: VISIBLE long long b2DistanceJointGetAnchorA(void* a, void* b) { return _ZNK15b2DistanceJoint10GetAnchorAEv(a, b); } VISIBLE long long b2DistanceJointGetAnchorB(void* a, void* b) { return _ZNK15b2DistanceJoint10GetAnchorBEv(a, b); } VISIBLE long long b2PulleyJointGetAnchorA(void* a, void* b) { return _ZNK13b2PulleyJoint10GetAnchorAEv(a, b); } VISIBLE long long b2PulleyJointGetAnchorB(void* a, void* b) { return _ZNK13b2PulleyJoint10GetAnchorBEv(a, b); } VISIBLE long long b2RopeJointGetAnchorA(void* a, void* b) { return _ZNK11b2RopeJoint10GetAnchorAEv(a, b); } VISIBLE long long b2RopeJointGetAnchorB(void* a, void* b) { return _ZNK11b2RopeJoint10GetAnchorBEv(a, b); } VISIBLE bool b2IsAwake(void* a) { return _ZNK6b2Body7IsAwakeEv(a); } VISIBLE bool b2IsTouching(void* a) { return _ZNK9b2Contact10IsTouchingEv(a); } VISIBLE int b2GetChildIndexA(void* a) { return _ZNK9b2Contact14GetChildIndexAEv(a); } VISIBLE int b2GetChildIndexB(void* a) { return _ZNK9b2Contact14GetChildIndexBEv(a); } VISIBLE double b2GetMass(void* a) { return _ZNK6b2Body7GetMassEv(a); } VISIBLE double b2GetAngularVelocity(void* a) { return _ZNK6b2Body18GetAngularVelocityEv(a); } VISIBLE void* b2GetLinearVelocity(void* a) { return _ZNK6b2Body17GetLinearVelocityEv(a); } VISIBLE void* b2CreateBody(void* a, void* b) { return _ZN7b2World10CreateBodyEPK9b2BodyDef(a, b); } VISIBLE void* b2GetBody(void* a) { return _ZN9b2Fixture7GetBodyEv(a); } VISIBLE void* b2GetShape(void* a) { return _ZN9b2Fixture8GetShapeEv(a); } VISIBLE void* b2GetTransform(void* a) { return _ZNK6b2Body12GetTransformEv(a); } VISIBLE void* b2GetUserDataB(void* a) { return _ZNK6b2Body11GetUserDataEv(a); } VISIBLE void* b2GetUserDataF(void* a) { return _ZNK9b2Fixture11GetUserDataEv(a); } VISIBLE void* b2GetUserDataJ(void* a) { return _ZNK7b2Joint11GetUserDataEv(a); } VISIBLE void* b2GetBodyA(void* a) { return _ZN7b2Joint8GetBodyAEv(a); } VISIBLE void* b2GetBodyB(void* a) { return _ZN7b2Joint8GetBodyBEv(a); } VISIBLE void* b2GetContactListW(void* a) { return _ZN7b2World14GetContactListEv(a); } VISIBLE void* b2GetContactListB(void* a) { return _ZN6b2Body14GetContactListEv(a); } VISIBLE void* b2GetNextContact(void* a) { return _ZN9b2Contact7GetNextEv(a); } VISIBLE void* b2GetFixtureA(void* a) { return _ZN9b2Contact11GetFixtureAEv(a); } VISIBLE void* b2GetFixtureB(void* a) { return _ZN9b2Contact11GetFixtureBEv(a); } VISIBLE void* b2GetBodyList(void* a) { return _ZN7b2World11GetBodyListEv(a); } VISIBLE void* b2GetNextBody(void* a) { return _ZN6b2Body7GetNextEv(a); } VISIBLE void* b2CreateFixtureFromDef(void* a, void* b) { return _ZN6b2Body13CreateFixtureEPK12b2FixtureDef(a, b); } VISIBLE void* b2CreateJoint(void* a, void* b) { return _ZN7b2World11CreateJointEPK10b2JointDef(a, b); } VISIBLE void* b2CreateFixtureFromShape(void* a, void* b, float c) { return _ZN6b2Body13CreateFixtureEPK7b2Shapef(a, b, c); } VISIBLE void b2SetActive(void* a, bool b) { _ZN6b2Body9SetActiveEb(a, b); } VISIBLE void b2SetAwake(void* a, bool b) { _ZN6b2Body8SetAwakeEb(a, b); } VISIBLE void b2SetBullet(void* a, bool b) { _ZN6b2Body9SetBulletEb(a, b); } VISIBLE void b2SetFixedRotation(void* a, bool b) { _ZN6b2Body16SetFixedRotationEb(a, b); } VISIBLE void b2SetSensor(void* a, bool b) { _ZN9b2Fixture9SetSensorEb(a, b); } VISIBLE void b2SetSleepingAllowed(void* a, bool b) { _ZN6b2Body18SetSleepingAllowedEb(a, b); } VISIBLE void b2EnableMotorP(void* a, bool b) { _ZN16b2PrismaticJoint11EnableMotorEb(a, b); } VISIBLE void b2EnableMotorR(void* a, bool b) { _ZN15b2RevoluteJoint11EnableMotorEb(a, b); } VISIBLE void b2EnableMotorW(void* a, bool b) { _ZN12b2WheelJoint11EnableMotorEb(a, b); } VISIBLE void b2CreateChain(void* a, void* b, int c) { _ZN12b2ChainShape11CreateChainEPK6b2Vec2i(a, b, c); } VISIBLE void b2CreateLoop(void* a, void* b, int c) { _ZN12b2ChainShape10CreateLoopEPK6b2Vec2i(a, b, c); } VISIBLE void b2SetPolygon(void* a, void* b, int c) { _ZN14b2PolygonShape3SetEPK6b2Vec2i(a, b, c); } VISIBLE void b2SetTransform(void* a, void* b, float c) { _ZN6b2Body12SetTransformERK6b2Vec2f(a, b, c); } VISIBLE void b2SetAsBox(void* a, float b, float c) { _ZN14b2PolygonShape8SetAsBoxEff(a, b, c); } VISIBLE void b2SetAsOrientedBox(void* a, float b, float c, void* d, float e) { _ZN14b2PolygonShape8SetAsBoxEffRK6b2Vec2f(a, b, c, d, e); } VISIBLE void b2WorldStep(void* a, float b, int c, int d) { _ZN7b2World4StepEfii(a, b, c, d); } VISIBLE void b2ApplyForce(void* a, void* b, void* c, bool d) { _ZN6b2Body10ApplyForceERK6b2Vec2S2_b(a, b, c, d); } VISIBLE void b2ApplyLinearImpulse(void* a, void* b, void* c, bool d) { _ZN6b2Body18ApplyLinearImpulseERK6b2Vec2S2_b(a, b, c, d); } VISIBLE void b2ApplyTorque(void* a, float b, bool c) { _ZN6b2Body11ApplyTorqueEfb(a, b, c); } VISIBLE void b2SetAngularVelocity(void* a, float b) { _ZN6b2Body18SetAngularVelocityEf(a, b); } VISIBLE void b2SetMaxMotorForceP(void* a, float b) { _ZN16b2PrismaticJoint16SetMaxMotorForceEf(a, b); } VISIBLE void b2SetMaxMotorTorqueR(void* a, float b) { _ZN15b2RevoluteJoint17SetMaxMotorTorqueEf(a, b); } VISIBLE void b2SetMaxMotorTorqueW(void* a, float b) { _ZN12b2WheelJoint17SetMaxMotorTorqueEf(a, b); } VISIBLE void b2SetMotorSpeedP(void* a, float b) { _ZN16b2PrismaticJoint13SetMotorSpeedEf(a, b); } VISIBLE void b2SetMotorSpeedR(void* a, float b) { _ZN15b2RevoluteJoint13SetMotorSpeedEf(a, b); } VISIBLE void b2SetMotorSpeedW(void* a, float b) { _ZN12b2WheelJoint13SetMotorSpeedEf(a, b); } VISIBLE void b2DistanceJointInit(void* a, void* b, void* c, void* d, void* e) { _ZN18b2DistanceJointDef10InitializeEP6b2BodyS1_RK6b2Vec2S4_(a, b, c, d, e); } VISIBLE void b2FrictionJointInit(void* a, void* b, void* c, void* d) { _ZN18b2FrictionJointDef10InitializeEP6b2BodyS1_RK6b2Vec2(a, b, c, d); } VISIBLE void b2PrismaticJointInit(void* a, void* b, void* c, void* d, void* e) { _ZN19b2PrismaticJointDef10InitializeEP6b2BodyS1_RK6b2Vec2S4_(a, b, c, d, e); } VISIBLE void b2PulleyJointInit(void* a, void* b, void* c, void* d, void* e, void* f, void* g, float h) { _ZN16b2PulleyJointDef10InitializeEP6b2BodyS1_RK6b2Vec2S4_S4_S4_f(a, b, c, d, e, f, g, h); } VISIBLE void b2RevoluteJointInit(void* a, void* b, void* c, void* d) { _ZN18b2RevoluteJointDef10InitializeEP6b2BodyS1_RK6b2Vec2(a, b, c, d); } VISIBLE void b2WeldJointInit(void* a, void* b, void* c, void* d) { _ZN14b2WeldJointDef10InitializeEP6b2BodyS1_RK6b2Vec2(a, b, c, d); } VISIBLE void b2WheelJointInit(void* a, void* b, void* c, void* d, void* e) { _ZN15b2WheelJointDef10InitializeEP6b2BodyS1_RK6b2Vec2S4_(a, b, c, d, e); } static int (*aaFilledPolygonColor)(void*, const double*, const double*, int, uint32); VISIBLE void b2DrawDebugData(void* a) { _ZN7b2World13DrawDebugDataEv(a) ; } VISIBLE void b2DebugInit(b2World* world, void* device, void* polygon, int flags) { Renderer = device; aaFilledPolygonColor = (int (*)(void*, const double*, const double*, int, uint32)) polygon; static DebugDraw debugdraw ; debugdraw.SetFlags(flags) ; world->SetDebugDraw(&debugdraw) ; } VISIBLE void b2DebugMatrix(double scale, double xoff, double yoff) { xyScale = scale ; xOffset = xoff ; yOffset = yoff ; } #endif #ifdef __EMSCRIPTEN__ #include #include #include typedef size_t st ; typedef double db ; long long b2NewWorld(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return _ZN7b2WorldC1ERK6b2Vec2((void*) a, (void*) b); } long long b2CircleShape(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return _ZN13b2CircleShapeC1Ev((void*) a); } long long b2PolygonShape(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return _ZN14b2PolygonShapeC1Ev((void*) a); } long long b2ChainShape(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return _ZN12b2ChainShapeC1Ev((void*) a); } long long b2SetUserDataB(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN6b2Body11SetUserDataEPv((void*) a, (void*) b); return 0; } long long b2SetUserDataF(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN9b2Fixture11SetUserDataEPv((void*) a, (void*) b); return 0; } long long b2SetUserDataJ(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN7b2Joint11SetUserDataEPv((void*) a, (void*) b); return 0; } long long b2DestroyBody(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN7b2World11DestroyBodyEP6b2Body((void*) a, (void*) b); return 0; } long long b2SetNextVertex(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN12b2ChainShape13SetNextVertexERK6b2Vec2((void*) a, (void*) b); return 0; } long long b2SetPrevVertex(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN12b2ChainShape13SetPrevVertexERK6b2Vec2((void*) a, (void*) b); return 0; } long long b2SetFilterData(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN9b2Fixture13SetFilterDataERK8b2Filter((void*) a, (void*) b); return 0; } long long b2DestroyFixture(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN6b2Body14DestroyFixtureEP9b2Fixture((void*) a, (void*) b); return 0; } long long b2SetLinearVelocity(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN6b2Body17SetLinearVelocityERK6b2Vec2((void*) a, (void*) b); return 0; } long long b2SetGravity(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN7b2World10SetGravityERK6b2Vec2((void*) a, (void*) b); return 0; } long long b2SetTarget(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN12b2MouseJoint9SetTargetERK6b2Vec2((void*) a, (void*) b); return 0; } long long b2DestroyJoint(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN7b2World12DestroyJointEP7b2Joint((void*) a, (void*) b); return 0; } long long b2DistanceJointGetAnchorA(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZNK15b2DistanceJoint10GetAnchorAEv((void*) a, (void*) b); return 0; } long long b2DistanceJointGetAnchorB(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZNK15b2DistanceJoint10GetAnchorBEv((void*) a, (void*) b); return 0; } long long b2PulleyJointGetAnchorA(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZNK13b2PulleyJoint10GetAnchorAEv((void*) a, (void*) b); return 0; } long long b2PulleyJointGetAnchorB(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZNK13b2PulleyJoint10GetAnchorBEv((void*) a, (void*) b); return 0; } long long b2RopeJointGetAnchorA(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZNK11b2RopeJoint10GetAnchorAEv((void*) a, (void*) b); return 0; } long long b2RopeJointGetAnchorB(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZNK11b2RopeJoint10GetAnchorBEv((void*) a, (void*) b); return 0; } long long b2IsAwake(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return _ZNK6b2Body7IsAwakeEv((void*) a); } long long b2IsTouching(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return _ZNK9b2Contact10IsTouchingEv((void*) a); } long long b2GetChildIndexA(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return _ZNK9b2Contact14GetChildIndexAEv((void*) a); } long long b2GetChildIndexB(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return _ZNK9b2Contact14GetChildIndexBEv((void*) a); } double b2GetMass(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return _ZNK6b2Body7GetMassEv((void*) a); } double b2GetAngularVelocity(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return _ZNK6b2Body18GetAngularVelocityEv((void*) a); } long long b2GetLinearVelocity(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return (intptr_t) _ZNK6b2Body17GetLinearVelocityEv((void*) a); } long long b2CreateBody(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return (intptr_t) _ZN7b2World10CreateBodyEPK9b2BodyDef((void*) a, (void*) b); } long long b2GetBody(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return (intptr_t) _ZN9b2Fixture7GetBodyEv((void*) a); } long long b2GetShape(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return (intptr_t) _ZN9b2Fixture8GetShapeEv((void*) a); } long long b2GetTransform(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return (intptr_t) _ZNK6b2Body12GetTransformEv((void*) a); } long long b2GetUserDataB(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return (intptr_t) _ZNK6b2Body11GetUserDataEv((void*) a); } long long b2GetUserDataF(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return (intptr_t) _ZNK9b2Fixture11GetUserDataEv((void*) a); } long long b2GetUserDataJ(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return (intptr_t) _ZNK7b2Joint11GetUserDataEv((void*) a); } long long b2GetBodyA(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return (intptr_t) _ZN7b2Joint8GetBodyAEv((void*) a); } long long b2GetBodyB(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return (intptr_t) _ZN7b2Joint8GetBodyBEv((void*) a); } long long b2GetContactListW(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return (intptr_t) _ZN7b2World14GetContactListEv((void*) a); } long long b2GetContactListB(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return (intptr_t) _ZN6b2Body14GetContactListEv((void*) a); } long long b2GetNextContact(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return (intptr_t) _ZN9b2Contact7GetNextEv((void*) a); } long long b2GetFixtureA(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return (intptr_t) _ZN9b2Contact11GetFixtureAEv((void*) a); } long long b2GetFixtureB(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return (intptr_t) _ZN9b2Contact11GetFixtureBEv((void*) a); } long long b2GetBodyList(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return (intptr_t) _ZN7b2World11GetBodyListEv((void*) a); } long long b2GetNextBody(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return (intptr_t) _ZN6b2Body7GetNextEv((void*) a); } long long b2CreateFixtureFromDef(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return (intptr_t) _ZN6b2Body13CreateFixtureEPK12b2FixtureDef((void*) a, (void*) b); } long long b2CreateJoint(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return (intptr_t) _ZN7b2World11CreateJointEPK10b2JointDef((void*) a, (void*) b); } long long b2CreateFixtureFromShape(st a, st b, st c, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { return (intptr_t) _ZN6b2Body13CreateFixtureEPK7b2Shapef((void*) a, (void*) b, *(float*)&c); } long long b2SetActive(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN6b2Body9SetActiveEb((void*) a, b); return 0; } long long b2SetAwake(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN6b2Body8SetAwakeEb((void*) a, b); return 0; } long long b2SetBullet(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN6b2Body9SetBulletEb((void*) a, b); return 0; } long long b2SetFixedRotation(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN6b2Body16SetFixedRotationEb((void*) a, b); return 0; } long long b2SetSensor(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN9b2Fixture9SetSensorEb((void*) a, b); return 0; } long long b2SetSleepingAllowed(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN6b2Body18SetSleepingAllowedEb((void*) a, b); return 0; } long long b2EnableMotorP(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN16b2PrismaticJoint11EnableMotorEb((void*) a, b); return 0; } long long b2EnableMotorR(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN15b2RevoluteJoint11EnableMotorEb((void*) a, b); return 0; } long long b2EnableMotorW(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN12b2WheelJoint11EnableMotorEb((void*) a, b); return 0; } long long b2CreateChain(st a, st b, st c, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN12b2ChainShape11CreateChainEPK6b2Vec2i((void*) a, (void*) b, c); return 0; } long long b2CreateLoop(st a, st b, st c, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN12b2ChainShape10CreateLoopEPK6b2Vec2i((void*) a, (void*) b, c); return 0; } long long b2SetPolygon(st a, st b, st c, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN14b2PolygonShape3SetEPK6b2Vec2i((void*) a, (void*) b, c); return 0; } long long b2SetTransform(st a, st b, st c, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN6b2Body12SetTransformERK6b2Vec2f((void*) a, (void*) b, *(float*)&c); return 0; } long long b2SetAsBox(st a, st b, st c, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN14b2PolygonShape8SetAsBoxEff((void*) a, *(float*)&b, *(float*)&c); return 0; } long long b2SetAsOrientedBox(st a, st b, st c, st d, st e, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN14b2PolygonShape8SetAsBoxEffRK6b2Vec2f((void*) a, *(float*)&b, *(float*)&c, (void*) d, *(float*)&e); return 0; } long long b2WorldStep(st a, st b, st c, st d, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN7b2World4StepEfii((void*) a, *(float*)&b, c, d); return 0; } long long b2ApplyForce(st a, st b, st c, st d, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN6b2Body10ApplyForceERK6b2Vec2S2_b((void*) a, (void*) b, (void*) c, d); return 0; } long long b2ApplyLinearImpulse(st a, st b, st c, st d, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN6b2Body18ApplyLinearImpulseERK6b2Vec2S2_b((void*) a, (void*) b, (void*) c, d); return 0; } long long b2ApplyTorque(st a, st b, st c, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN6b2Body11ApplyTorqueEfb((void*) a, *(float*)&b, c); return 0; } long long b2SetAngularVelocity(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN6b2Body18SetAngularVelocityEf((void*) a, *(float*)&b); return 0; } long long b2SetMaxMotorForceP(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN16b2PrismaticJoint16SetMaxMotorForceEf((void*) a, *(float*)&b); return 0; } long long b2SetMaxMotorTorqueR(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN15b2RevoluteJoint17SetMaxMotorTorqueEf((void*) a, *(float*)&b); return 0; } long long b2SetMaxMotorTorqueW(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN12b2WheelJoint17SetMaxMotorTorqueEf((void*) a, *(float*)&b); return 0; } long long b2SetMotorSpeedP(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN16b2PrismaticJoint13SetMotorSpeedEf((void*) a, *(float*)&b); return 0; } long long b2SetMotorSpeedR(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN15b2RevoluteJoint13SetMotorSpeedEf((void*) a, *(float*)&b); return 0; } long long b2SetMotorSpeedW(st a, st b, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN12b2WheelJoint13SetMotorSpeedEf((void*) a, *(float*)&b); return 0; } long long b2DistanceJointInit(st a, st b, st c, st d, st e, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN18b2DistanceJointDef10InitializeEP6b2BodyS1_RK6b2Vec2S4_((void*) a, (void*) b, (void*) c, (void*) d, (void*) e); return 0; } long long b2FrictionJointInit(st a, st b, st c, st d, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN18b2FrictionJointDef10InitializeEP6b2BodyS1_RK6b2Vec2((void*) a, (void*) b, (void*) c, (void*) d); return 0; } long long b2PrismaticJointInit(st a, st b, st c, st d, st e, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN19b2PrismaticJointDef10InitializeEP6b2BodyS1_RK6b2Vec2S4_((void*) a, (void*) b, (void*) c, (void*) d, (void*) e); return 0; } long long b2PulleyJointInit(st a, st b, st c, st d, st e, st f, st g, st h, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN16b2PulleyJointDef10InitializeEP6b2BodyS1_RK6b2Vec2S4_S4_S4_f((void*) a, (void*) b, (void*) c, (void*) d, (void*) e, (void*) f, (void*) g, *(float*)&h); return 0; } long long b2RevoluteJointInit(st a, st b, st c, st d, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN18b2RevoluteJointDef10InitializeEP6b2BodyS1_RK6b2Vec2((void*) a, (void*) b, (void*) c, (void*) d); return 0; } long long b2WeldJointInit(st a, st b, st c, st d, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN14b2WeldJointDef10InitializeEP6b2BodyS1_RK6b2Vec2((void*) a, (void*) b, (void*) c, (void*) d); return 0; } long long b2WheelJointInit(st a, st b, st c, st d, st e, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN15b2WheelJointDef10InitializeEP6b2BodyS1_RK6b2Vec2S4_((void*) a, (void*) b, (void*) c, (void*) d, (void*) e); return 0; } long long b2DrawDebugData(st a, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { _ZN7b2World13DrawDebugDataEv((void*) a); return 0; } long long b2DebugInit(st a, st b, st c, st d, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { b2World *world = (b2World*) a ; Renderer = (void*) b ; static DebugDraw debugdraw; debugdraw.SetFlags(d) ; world->SetDebugDraw(&debugdraw); return 0 ; } long long b2DebugMatrix(st i0, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { xyScale = f0 ; xOffset = f1 ; yOffset = f2 ; return 0 ; } #define B2NSYS 82 #define B2POW2 128 // smallest power-of-2 >= B2NSYS static const char *B2name[B2NSYS] = { "b2ApplyForce", "b2ApplyLinearImpulse", "b2ApplyTorque", "b2ChainShape", "b2CircleShape", "b2CreateBody", "b2CreateChain", "b2CreateFixtureFromDef", "b2CreateFixtureFromShape", "b2CreateJoint", "b2CreateLoop", "b2DebugInit", "b2DebugMatrix", "b2DestroyBody", "b2DestroyFixture", "b2DestroyJoint", "b2DistanceJointGetAnchorA", "b2DistanceJointGetAnchorB", "b2DistanceJointInit", "b2DrawDebugData", "b2EnableMotorP", "b2EnableMotorR", "b2EnableMotorW", "b2FrictionJointInit", "b2GetBody", "b2GetBodyA", "b2GetBodyB", "b2GetBodyList", "b2GetChildIndexA", "b2GetChildIndexB", "b2GetContactListB", "b2GetContactListW", "b2GetFixtureA", "b2GetFixtureB", "b2GetLinearVelocity", "b2GetNextBody", "b2GetNextContact", "b2GetShape", "b2GetTransform", "b2GetUserDataB", "b2GetUserDataF", "b2GetUserDataJ", "b2IsAwake", "b2IsTouching", "b2NewWorld", "b2PolygonShape", "b2PrismaticJointInit", "b2PulleyJointGetAnchorA", "b2PulleyJointGetAnchorB", "b2PulleyJointInit", "b2RevoluteJointInit", "b2RopeJointGetAnchorA", "b2RopeJointGetAnchorB", "b2SetActive", "b2SetAngularVelocity", "b2SetAsBox", "b2SetAsOrientedBox", "b2SetAwake", "b2SetBullet", "b2SetFilterData", "b2SetFixedRotation", "b2SetGravity", "b2SetLinearVelocity", "b2SetMaxMotorForceP", "b2SetMaxMotorTorqueR", "b2SetMaxMotorTorqueW", "b2SetMotorSpeedP", "b2SetMotorSpeedR", "b2SetMotorSpeedW", "b2SetNextVertex", "b2SetPolygon", "b2SetPrevVertex", "b2SetSensor", "b2SetSleepingAllowed", "b2SetTarget", "b2SetTransform", "b2SetUserDataB", "b2SetUserDataF", "b2SetUserDataJ", "b2WeldJointInit", "b2WheelJointInit", "b2WorldStep"} ; static long long (*B2func[B2NSYS])(st, st, st, st, st, st, st, st, st, st, st, st, db, db, db, db, db, db, db, db) = { b2ApplyForce, b2ApplyLinearImpulse, b2ApplyTorque, b2ChainShape, b2CircleShape, b2CreateBody, b2CreateChain, b2CreateFixtureFromDef, b2CreateFixtureFromShape, b2CreateJoint, b2CreateLoop, b2DebugInit, b2DebugMatrix, b2DestroyBody, b2DestroyFixture, b2DestroyJoint, b2DistanceJointGetAnchorA, b2DistanceJointGetAnchorB, b2DistanceJointInit, b2DrawDebugData, b2EnableMotorP, b2EnableMotorR, b2EnableMotorW, b2FrictionJointInit, b2GetBody, b2GetBodyA, b2GetBodyB, b2GetBodyList, b2GetChildIndexA, b2GetChildIndexB, b2GetContactListB, b2GetContactListW, b2GetFixtureA, b2GetFixtureB, b2GetLinearVelocity, b2GetNextBody, b2GetNextContact, b2GetShape, b2GetTransform, b2GetUserDataB, b2GetUserDataF, b2GetUserDataJ, b2IsAwake, b2IsTouching, b2NewWorld, b2PolygonShape, b2PrismaticJointInit, b2PulleyJointGetAnchorA, b2PulleyJointGetAnchorB, b2PulleyJointInit, b2RevoluteJointInit, b2RopeJointGetAnchorA, b2RopeJointGetAnchorB, b2SetActive, b2SetAngularVelocity, b2SetAsBox, b2SetAsOrientedBox, b2SetAwake, b2SetBullet, b2SetFilterData, b2SetFixedRotation, b2SetGravity, b2SetLinearVelocity, b2SetMaxMotorForceP, b2SetMaxMotorTorqueR, b2SetMaxMotorTorqueW, b2SetMotorSpeedP, b2SetMotorSpeedR, b2SetMotorSpeedW, b2SetNextVertex, b2SetPolygon, b2SetPrevVertex, b2SetSensor, b2SetSleepingAllowed, b2SetTarget, b2SetTransform, b2SetUserDataB, b2SetUserDataF, b2SetUserDataJ, b2WeldJointInit, b2WheelJointInit, b2WorldStep} ; long long B2D_GetProcAddress(st symbol, st i1, st i2, st i3, st i4, st i5, st i6, st i7, st i8, st i9, st i10, st i11, db f0, db f1, db f2, db f3, db f4, db f5, db f6, db f7) { int b = 0, h = B2POW2, r = 0 ; if (strcmp((const char *)symbol, "b2GetMass") == 0) return (intptr_t) b2GetMass ; if (strcmp((const char *)symbol, "b2GetAngularVelocity") == 0) return (intptr_t) b2GetAngularVelocity ; do { h /= 2 ; if (((b + h) < B2NSYS) && ((r = strcmp ((const char*) symbol, B2name[b + h])) >= 0)) b += h ; } while (h) ; if (r == 0) return (intptr_t) B2func[b] ; return 0 ; } int aaFilledPolygonColor(void*, const double*, const double*, int, uint32); #endif } static uint32 abgr(const b2Color& color) { uint8 r = color.r * 255; uint8 g = color.g * 255; uint8 b = color.b * 255; uint8 a = color.a * 224; return (a << 24) | (b << 16) | (g << 8) | r; } void DebugDraw::DrawSegment(const b2Vec2& p1, const b2Vec2& p2, const b2Color& color) { double xv[4], yv[4] ; double x1 = xOffset + xyScale * p1.x, y1 = yOffset - xyScale * p1.y ; double x2 = xOffset + xyScale * p2.x, y2 = yOffset - xyScale * p2.y ; double dx = x2 - x1, dy = y2 - y1 ; double d = 0.75 / sqrt(dx*dx + dy*dy) ; // line thickness 1.5 pixels dx *= d ; dy *= d ; xv[0] = x1 + dy ; yv[0] = y1 - dx ; xv[1] = x1 - dy ; yv[1] = y1 + dx ; xv[2] = x2 - dy ; yv[2] = y2 + dx ; xv[3] = x2 + dy ; yv[3] = y2 - dx ; aaFilledPolygonColor(Renderer, xv, yv, 4, abgr(color)); } void DebugDraw::DrawSolidPolygon(const b2Vec2* vertices, int32 vertexCount, const b2Color& color) { double *xv = (double *)malloc(vertexCount * sizeof(double)); double *yv = (double *)malloc(vertexCount * sizeof(double)); for (int i = 0; i < vertexCount; i++) { xv[i] = xOffset + vertices[i].x * xyScale ; yv[i] = yOffset - vertices[i].y * xyScale ; } aaFilledPolygonColor(Renderer, xv, yv, vertexCount, abgr(color)); free(xv) ; free(yv) ; } void DebugDraw::DrawSolidCircle(const b2Vec2& center, float32 radius, const b2Vec2& axis, const b2Color& color) { b2Color grey = {0.5, 0.5, 0.5, 1.0} ; b2Vec2 spoke = {center.x + axis.x * radius, center.y + axis.y * radius} ; int nverts = xyScale * radius + 3.0 ; if (nverts > 90) nverts = 90 ; double *xv = (double *)malloc(nverts * sizeof(double)); double *yv = (double *)malloc(nverts * sizeof(double)); for (int i = 0; i < nverts; i++) { double angle = 2.0 * 3.141592654 * (double) i / (double) nverts ; xv[i] = xOffset + xyScale * (center.x + radius * cos(angle)); yv[i] = yOffset - xyScale * (center.y + radius * sin(angle)); } aaFilledPolygonColor(Renderer, xv, yv, nverts, abgr(color)); DebugDraw::DrawSegment(center, spoke, grey) ; free(xv) ; free(yv) ; } void DebugDraw::DrawPolygon(const b2Vec2* vertices, int32 vertexCount, const b2Color& color) { for (int i = 0; i < vertexCount; i++) DebugDraw::DrawSegment(vertices[i], vertices[(i + 1) % vertexCount], color) ; } void DebugDraw::DrawCircle(const b2Vec2& center, float32 radius, const b2Color& color) {} void DebugDraw::DrawTransform(const b2Transform& xf) {} void DebugDraw::DrawPoint(const b2Vec2&, float32, const b2Color&) {} ================================================ FILE: src/bbasmb_arm_32.c ================================================ /*****************************************************************\ * 32-bit BBC BASIC Interpreter * * (c) 2018-2021 R.T.Russell http://www.rtrussell.co.uk/ * * * * bbasmb.c: Simple ARM 4 assembler * * Version 1.24a, 12-Jul-2021 * \*****************************************************************/ #include #include #include #include #include #include "BBC.h" #ifndef __WINDOWS__ #define stricmp strcasecmp #define strnicmp strncasecmp #endif #if defined(__x86_64__) || defined(__aarch64__) #define OC ((unsigned int) stavar[15] + (void *)((long long) stavar[13] << 32)) #define PC ((unsigned int) stavar[16] + (void *)((long long) stavar[17] << 32)) #else #define OC (void *) stavar[15] #define PC (void *) stavar[16] #endif // External routines: void newlin (void) ; void *getput (unsigned char *) ; void error (int, const char *) ; void token (signed char) ; void text (const char*) ; void crlf (void) ; void comma (void) ; void spaces (int) ; int range0 (char) ; signed char nxt (void) ; long long itemi (void) ; long long expri (void) ; VAR expr (void) ; VAR exprs (void) ; VAR loadn (void *, unsigned char) ; void storen (VAR, void *, unsigned char) ; // Routines in bbcmos.c: void *sysadr (char *) ; unsigned char osrdch (void) ; void oswrch (unsigned char) ; int oskey (int) ; void osline (char *) ; int osopen (int, char *) ; void osshut (int) ; unsigned char osbget (int, int *) ; void osbput (int, unsigned char) ; long long getptr (int) ; void setptr (int, long long) ; long long getext (int) ; void oscli (char *) ; int osbyte (int, int) ; void osword (int, void *) ; static char *mnemonics[] = { "adc", "add", "adr", "align", "and", "bic", "blx", "bl", "bx", "b", "clz", "cmn", "cmp", "db", "dcb", "dcd", "dcs", "dcw", "eor", "equb", "equd", "equq", "equs", "equw", "ldm", "ldr", "mla", "mov", "mrs", "msr", "mul", "mvn", "nop", "opt", "orr", "pop", "push", "rsb", "rsc", "sbc", "smlal", "smull", "stm", "str", "sub", "swi", "swp", "swpb", "teq", "tst", "umlal", "umull" } ; static unsigned char opcodes[] = { 0x0A, 0x08, 0x00, 0xFF, 0x00, 0x1C, 0x12, 0xB0, 0x12, 0xA0, 0x16, 0x17, 0x15, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x02, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x81, 0x01, 0x02, 0x1A, 0x10, 0x12, 0x00, 0x1E, 0x1A, 0xFF, 0x18, 0x8B, 0x92, 0x06, 0x0E, 0x0C, 0x0E, 0x0C, 0x80, 0x00, 0x04, 0xF0, 0x10, 0x10, 0x13, 0x11, 0x0A, 0x08 } ; enum { ADC, ADD, ADR, ALIGN, AND, BIC, BLX, BL, BX, B, CLZ, CMN, CMP, DB, DCB, DCD, DCS, DCW, EOR, EQUB, EQUD, EQUQ, EQUS, EQUW, LDM, LDR, MLA, MOV, MRS, MSR, MUL, MVN, NOP, OPT, ORR, POP, PUSH, RSB, RSC, SBC, SMLAL, SMULL, STM, STr, SUB, SWI, SWP, SWPB, TEQ, TST, UMLAL, UMULL } ; static char *conditions[] = { "al", "cc", "cs", "eq", "ge", "gt", "hi", "hs", "le", "lo", "ls", "lt", "mi", "ne", "pl", "vc", "vs" } ; static char *collisions[] = { "e", "o", "s", "t" } ; static unsigned char ccodes[] = { 0b1110, 0b0011, 0b0010, 0b0000, 0b1010, 0b1100, 0b1000, 0b0010, 0b1101, 0b0011, 0b1001, 0b1011, 0b0100, 0b0001, 0b0101, 0b0111, 0b0110 } ; static char *suffices[] = { "bt", "b", "d", "h", "sb", "sh", "t" } ; static char *stackops[] = { "da", "ia", "db", "ib", "fa", "fd", "ea", "ed" } ; static char *registers[] = { "lr", "pc", "r0", "r10", "r11", "r12", "r13", "r14", "r15", "r1", "r2", "r3", "r4", "r5", "r6", "r7", "r8", "r9", "sp" } ; static unsigned char regno[] = { 14, 15, 0, 10, 11, 12, 13, 14, 15, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13 } ; static char *shifts[] = { "lsl", "lsr", "asr", "ror", "rrx", "asl" } ; static char *oslist[] = { "osrdch", "oswrch", "oskey", "osline", "oscli", "osopen", "osbyte", "osword", "osshut", "osbget", "osbput", "getptr", "setptr", "getext" } ; static void *osfunc[] = { osrdch, oswrch, oskey, osline, oscli, osopen, osbyte, osword, osshut, osbget, osbput, getptr, setptr, getext } ; static int lookup (char **arr, int num) { int i, n ; for (i = 0; i < num; i++) { n = strlen (*(arr + i)) ; if (strnicmp ((const char *)esi, *(arr + i), n) == 0) break ; } if (i >= num) return -1 ; esi += n ; return i ; } static unsigned char reg (void) { int i ; nxt () ; i = lookup (registers, sizeof(registers) / sizeof(registers[0])) ; if (i < 0) { i = itemi() ; if ((i < 0) || (i > 15)) error (16, NULL) ; // 'Syntax error' return i ; } return regno[i] ; } static unsigned char shift (void) { int i ; nxt () ; i = lookup (shifts, sizeof(shifts) / sizeof(shifts[0])) ; if (i < 0) error (16, NULL) ; // 'Syntax error' return i % 5 ; } static unsigned char stackop (int mnemonic) { int i = lookup (stackops, sizeof(stackops) / sizeof(stackops[0])) ; if (i < 0) error (16, NULL) ; // 'Syntax error' if ((mnemonic == STM) && (i >= 4)) i ^= 3 ; // invert return i & 3 ; } static unsigned char shiftcount (void) { int n = expri () ; if ((n < 0) || (n > 31)) error (16, NULL) ; // 'Syntax error' return n ; } static int immrot (unsigned int n) { int rotate = 0 ; while (n > 255) { n = (n << 2) | ((n & 0xC0000000) >> 30) ; rotate += 1 ; if (rotate >= 16) { if ((liston & BIT5) == 0) break ; error (2, NULL) ; // 'Bad immediate constant' } } return n | (rotate << 8) ; } static int reglist (void) { int temp = 0 ; if (nxt () != '{') error (16, NULL) ; // 'Syntax error' do { unsigned char tmp ; esi++ ; tmp = reg () ; temp |= 1 << tmp ; if (nxt () == '-') { unsigned char last ; esi++ ; last = reg () ; while (++tmp <= last) temp |= 1 << tmp ; } } while (nxt () == ',') ; if (*esi != '}') error (16, NULL) ; // 'Syntax error' esi++ ; return temp ; } static int shifter_operand (void) { int bits, temp ; if (nxt () == '#') { esi++ ; return immrot (expri ()) | 0x2000000 ; } bits = reg () ; if (nxt () != ',') return bits ; esi++ ; // bump past comma temp = shift () ; if (temp == 4) return bits | 0x60 ; // RRX bits |= temp << 5 ; if (nxt () == '#') { esi++ ; return bits | shiftcount () << 7 ; } return bits | (reg () << 8) | BIT4 ; } static int offset (unsigned char *pimm, unsigned char *pplus) { *pimm = 0 ; *pplus = 1 ; if (nxt () == '#') { esi++ ; *pimm = 1 ; } if (nxt () == '+') esi++ ; else if (*esi == '-') { esi++ ; *pplus = 0 ; } if (*pimm) return expri () ; return reg () ; } static void tabit (int x) { if (vcount == x) return ; if (vcount > x) crlf () ; spaces (x - vcount) ; } static void poke (void *p, int n) { char *d ; if (liston & BIT6) { d = OC ; stavar[15] += n ; } else d = PC ; stavar[16] += n ; memcpy (d, p, n) ; } static void *align (void) { while (stavar[16] & 3) { stavar[16]++ ; if (liston & BIT6) stavar[15]++ ; } ; return PC ; } void assemble (void) { signed char al ; signed char *oldesi = esi ; int init = 1 ; void *oldpc = PC ; while (1) { int mnemonic, condition, instruction = 0 ; unsigned char ccode ; if (liston & BIT7) { int tmp ; if (liston & BIT6) tmp = stavar[15] ; else tmp = stavar[16] ; if (tmp >= stavar[12]) error (8, NULL) ; // 'Address out of range' } al = nxt () ; esi++ ; switch (al) { case 0: esi-- ; liston = (liston & 0x0F) | 0x30 ; return ; case ']': liston = (liston & 0x0F) | 0x30 ; return ; case 0x0D: newlin () ; if (*esi == 0x0D) break ; case ':': if (liston & BIT4) { void *p ; int n = PC - oldpc ; if (liston & BIT6) p = OC - n ; else p = PC - n ; do { unsigned int i = *(unsigned int *)p ; #if (defined (_WIN32)) && (__GNUC__ < 9) sprintf (accs, "%08I64X ", (long long) (size_t) oldpc) ; #else sprintf (accs, "%08llX ", (long long) (size_t) oldpc) ; #endif switch (n) { case 0: break ; case 1: i &= 0xFF ; case 2: i &= 0xFFFF ; case 3: i &= 0xFFFFFF ; case 4: sprintf (accs + 9, "%0*X ", n*2, i) ; break ; default: sprintf (accs + 9, "%08X ", i) ; } if (n > 4) { n -= 4 ; p += 4 ; oldpc += 4 ; } else n = 0 ; text (accs) ; if (*oldesi == '.') { tabit (18) ; do { token (*oldesi++ ) ; } while (range0(*oldesi)) ; while (*oldesi == ' ') oldesi++ ; } tabit (30) ; while ((*oldesi != ':') && (*oldesi != 0x0D)) token (*oldesi++) ; crlf () ; } while (n) ; } nxt () ; #ifdef __arm__ if ((liston & BIT6) == 0) __builtin___clear_cache (oldpc, PC) ; #endif oldpc = PC ; oldesi = esi ; break ; case ';': case TREM: while ((*esi != 0x0D) && (*esi != ':')) esi++ ; break ; case '.': if (init) oldpc = align () ; { VAR v ; unsigned char type ; void *ptr = getput (&type) ; if (ptr == NULL) error (16, NULL) ; // 'Syntax error' if (type >= 128) error (6, NULL) ; // 'Type mismatch' if ((liston & BIT5) == 0) { v = loadn (ptr, type) ; if (v.i.n) error (3, NULL) ; // 'Multiple label' } v.i.t = 0 ; v.i.n = (intptr_t) PC ; storen (v, ptr, type) ; } break ; default: esi-- ; mnemonic = lookup (mnemonics, sizeof(mnemonics)/sizeof(mnemonics[0])) ; condition = lookup (conditions, sizeof(conditions) / sizeof(conditions[0])) ; if ((condition == -1) && (mnemonic == BL)) { condition = lookup (collisions, sizeof (collisions) / sizeof(collisions[0])) ; if (condition >= 0) { mnemonic = B ; condition += 8 ; // ble, blo, bls, blt } } if (condition == -1) ccode = 0b1110 ; else ccode = ccodes[condition] ; if (mnemonic != OPT) init = 0 ; switch (mnemonic) { case OPT: liston = (liston & 0x0F) | (expri () << 4) ; continue ; case DB: { VAR v = expr () ; if (v.s.t == -1) { if (v.s.l > 256) error (19, NULL) ; // 'String too long' poke (v.s.p + zero, v.s.l) ; continue ; } if (v.i.t) v.i.n = v.f ; poke (&v.i.n, 1) ; continue ; } case DCB: case EQUB: { int n = expri () ; poke (&n, 1) ; continue ; // n.b. not break } case DCW: case EQUW: { int n = expri () ; poke (&n, 2) ; continue ; // n.b. not break } case DCD: case EQUD: case EQUQ: { VAR v = expr () ; long long n ; if (v.s.t == -1) { signed char *oldesi = esi ; int i ; memcpy (accs, v.s.p + zero, v.s.l) ; *(accs + v.s.l) = 0 ; esi = (signed char *)accs ; i = lookup (oslist, sizeof(oslist) / sizeof(oslist[0])) ; esi = oldesi ; if (i >= 0) n = (size_t) osfunc[i] ; else n = (size_t) sysadr (accs) ; if (n == 0) error (51, NULL) ; // 'No such system call' } else if (v.i.t == 0) n = v.i.n ; else n = v.f ; if (mnemonic == EQUQ) { poke (&n, 8) ; continue ; } instruction = (int) n ; } break ; case DCS: case EQUS: { VAR v = exprs () ; if (v.s.l > 256) error (19, NULL) ; // 'String too long' poke (v.s.p + zero, v.s.l) ; continue ; } case NOP: instruction = 0xE1A00000 ; break ; case ADR: { int offpc ; instruction = (ccode << 28) | reg () << 12 ; comma () ; offpc = (void *) (size_t) expri () - PC - 8 ; if (offpc >= 0) instruction |= 0x028F0000 | immrot (offpc) ; else instruction |= 0x024F0000 | immrot (-offpc) ; break ; } case ADC: case ADD: case AND: case BIC: case EOR: case ORR: case RSB: case RSC: case SBC: case SUB: instruction = (ccode << 28) | (opcodes[mnemonic] << 20) ; if ((*esi == 's') || (*esi == 'S')) { esi++ ; instruction |= 0x100000 ; } instruction |= reg () << 12 ; comma () ; instruction |= reg () << 16 ; comma () ; instruction |= shifter_operand () ; break ; case CMN: case CMP: case TEQ: case TST: instruction = (ccode << 28) | (opcodes[mnemonic] << 20) ; if ((*esi == 's') || (*esi == 'S')) esi++ ; instruction |= reg () << 16 ; comma () ; instruction |= shifter_operand () ; break ; case MOV: case MVN: instruction = (ccode << 28) | (opcodes[mnemonic] << 20) ; if ((*esi == 's') || (*esi == 'S')) { esi++ ; instruction |= 0x100000 ; } instruction |= reg () << 12 ; comma () ; instruction |= shifter_operand () ; break ; case MUL: case MLA: instruction = (ccode << 28) | (opcodes[mnemonic] << 20) ; if ((*esi == 's') || (*esi == 'S')) { esi++ ; instruction |= 0x100000 ; } instruction |= reg () << 16 ; comma () ; instruction |= reg () | 0x90 ; comma () ; instruction |= reg () << 8 ; if (mnemonic == MLA) { comma () ; instruction |= reg () << 12 ; } break ; case SMLAL: case SMULL: case UMLAL: case UMULL: instruction = (ccode << 28) | (opcodes[mnemonic] << 20) ; if ((*esi == 's') || (*esi == 'S')) { esi++ ; instruction |= 0x100000 ; } instruction |= reg () << 12 ; comma () ; instruction |= reg () << 16 ; comma () ; instruction |= reg () | 0x90 ; comma () ; instruction |= reg () << 8 ; break ; case B: case BL: { int dest ; instruction = (ccode << 28) | (opcodes[mnemonic] << 20) ; dest = ((void *) (size_t) expri () - PC - 8) >> 2 ; if ((dest != (dest << 8 >> 8)) && ((liston & BIT5) != 0)) error (1, NULL) ; // 'Jump out of range' instruction |= (dest & 0xFFFFFF) ; } break ; case BX: instruction = (ccode << 28) | 0x012FFF10 ; instruction |= reg () ; break ; case BLX: instruction = (ccode << 28) | 0x012FFF30 ; instruction |= reg () ; break ; case LDM: case STM: instruction = (ccode << 28) | (opcodes[mnemonic] << 20) ; instruction |= stackop (mnemonic) << 23 ; instruction |= reg () << 16 ; if (nxt () == '!') { esi++ ; instruction |= 0x200000 ; } comma () ; instruction |= reglist () ; break ; case PUSH: case POP: instruction = (ccode << 28) | (opcodes[mnemonic] << 20) ; instruction |= 0xD0000 | reglist () ; break ; case LDR: case STr: { int offreg = 0, suffix ; unsigned char imm = 1, add = 1 ; suffix = lookup (suffices, sizeof(suffices) / sizeof(suffices[0])) ; instruction = (ccode << 28) | (opcodes[mnemonic] << 20) ; instruction |= reg () << 12 ; comma () ; if (nxt () != '[') { offreg = (void *) (size_t) expri () - PC - 8 ; if ((abs(offreg) > 0xFFF) && (liston & BIT5)) error (8, NULL) ; if (offreg >= 0) instruction |= 0x58F0000 | (offreg & 0xFFF) ; else instruction |= 0x50F0000 | (-offreg & 0xFFF) ; break ; } esi++ ; instruction |= reg () << 16 ; if (nxt () == ']') esi++ ; else instruction |= 0x1000000 ; // P bit if ((suffix < 2) || (suffix == 6)) { // Addressing mode 2 (nothing, BT, B, T) instruction |= 0x4000000 ; if ((suffix == 0) || (suffix == 6)) // BT, T instruction |= 0x200000 ; // W bit if ((suffix == 0) || (suffix == 1)) instruction |= 0x400000 ; // B bit if (nxt () != ',') { instruction |= 0x1800000 ; break ; } esi++ ; offreg = offset (&imm, &add) ; if (imm) instruction |= offreg & 0xFFF ; else instruction |= offreg | 0x2000000 ; if (nxt () == ',') { int n ; esi++ ; n = shift () ; if ((n >= 4) || (nxt () != '#')) error (16, NULL) ; esi++ ; instruction |= n << 5 ; instruction |= shiftcount () << 7 ; } } else { // Addressing mode 3 (D, H, SB, SH) 2,3,4,5 if ((mnemonic == LDR) && (suffix != 2)) instruction |= 0x100000 ; // L bit if ((suffix == 2) || (suffix == 4) || (suffix == 5)) instruction |= 0x40 ; // S bit if ((suffix == 3) || (suffix == 5) || ((mnemonic != LDR) && (suffix == 2))) instruction |= 0x20 ; // H bit if (nxt () != ',') { instruction |= 0x1C00090 ; break ; } esi++ ; offreg = offset (&imm, &add) ; if (imm) instruction |= (offreg & 0x0F) | ((offreg & 0xF0) << 4) | 0x400090 ; else instruction |= offreg | 0x90 ; } if (add) instruction |= 0x800000 ; // U bit if ((instruction & 0x1000000) == 0) // Test P bit break ; if (nxt () != ']') error (16, NULL) ; // 'Syntax error' esi++ ; if (nxt () == '!') { esi++ ; instruction |= 0x200000 ; // W bit } } break ; case CLZ: instruction = (ccode << 28) | (opcodes[mnemonic] << 20) ; instruction |= reg () << 12 ; comma () ; instruction |= reg () | 0xF0F10 ; break ; case SWI: instruction = (ccode << 28) | (opcodes[mnemonic] << 20) ; instruction |= expri () & 0xFFFFFF ; break ; case SWP: case SWPB: instruction = (ccode << 28) | (opcodes[mnemonic] << 20) ; if (mnemonic == SWPB) instruction |= 0x400000 ; instruction |= reg () << 12 ; comma () ; instruction |= reg () | 0x90 ; comma () ; if (*esi != '[') error (16, NULL) ; // 'Syntax error' esi++ ; instruction |= reg () << 16 ; if (nxt () != ']') error (16, NULL) ; // 'Syntax error' esi++ ; break ; case ALIGN: oldpc = align () ; if ((nxt() >= '1') && (*esi <= '9')) { int n = expri () ; if ((n & (n - 1)) || (n & 0xFFFFFF03) || (n == 0)) error (16, NULL) ; // 'Syntax error' instruction = 0xE1A00000 ; while (stavar[16] & (n - 1)) poke (&instruction, 4) ; } continue ; default: error (16, NULL) ; // 'Syntax error' } oldpc = align () ; poke (&instruction, 4) ; } } ; } ================================================ FILE: src/bbasmb_arm_64.c ================================================ /*****************************************************************\ * 32-bit BBC BASIC Interpreter * * (c) 2018-2020 R.T.Russell http://www.rtrussell.co.uk/ * * (c) 2021 Simon Willcocks simon.willcocks@gmx.de * * * * bbasmb_arm_64.c: Simple ARM 4 assembler * * Version 0.01, 27 May 2021 * * Version 0.02, 12 Jul 2021 * * Version 0.03, 08 Nov 2021 * * Version 0.04, 06 Dec 2022 * \*****************************************************************/ #include #include #include #include #include #include "BBC.h" #ifdef __APPLE__ #include #endif #ifndef __WINDOWS__ #define stricmp strcasecmp #define strnicmp strncasecmp #endif #if defined(__x86_64__) || defined(__aarch64__) #define OC ((unsigned int) stavar[15] + (void *)((long long) stavar[13] << 32)) #define PC ((unsigned int) stavar[16] + (void *)((long long) stavar[17] << 32)) #else #define OC (void *) stavar[15] #define PC (void *) stavar[16] #endif // External routines: void newlin (void) ; void *getput (unsigned char *) ; void error (int, const char *) ; void token (signed char) ; void text (const char*) ; void crlf (void) ; void comma (void) ; void spaces (int) ; int range0 (char) ; signed char nxt (void) ; long long itemi (void) ; long long expri (void) ; VAR expr (void) ; VAR exprs (void) ; VAR loadn (void *, unsigned char) ; void storen (VAR, void *, unsigned char) ; // Routines in bbcmos.c: void *sysadr (char *) ; unsigned char osrdch (void) ; void oswrch (unsigned char) ; int oskey (int) ; void osline (char *) ; int osopen (int, char *) ; void osshut (int) ; unsigned char osbget (int, int *) ; void osbput (int, unsigned char) ; long long getptr (int) ; void setptr (int, long long) ; long long getext (int) ; void oscli (char *) ; int osbyte (int, int) ; void osword (int, void *) ; // Like comma: static void hash (void) { if ('#' != nxt ()) error (16, "Missing #") ; esi++ ; } static void open_square (void) { if ('[' != nxt ()) error (16, "Missing [") ; esi++ ; } // Register code: bits 0-4: Number 0-31, bits 5,6: size 32 or 64 bits, bit 7: set if ZR #define REGISTER_IS_ZERO 0x80 static inline int reg_size( unsigned reg ) { return reg & 0x60; } // Registers can be 64-bit Xnn, XZR, SP, LR, or 32-bit Wnn, WZR, static unsigned char reg (void) { nxt () ; if (strnicmp ((const char *)esi, "LR", 2) == 0) { esi += 2; return 30 | 64; } if (strnicmp ((const char *)esi, "SP", 2) == 0) { esi += 2; return 31 | 64; } if (strnicmp ((const char *)esi, "WSP", 3) == 0) { esi += 3; return 31 | 32; } if (strnicmp ((const char *)esi, "XZR", 3) == 0) { esi += 3; return 31 | REGISTER_IS_ZERO | 64; } if (strnicmp ((const char *)esi, "WZR", 3) == 0) { esi += 3; return 31 | REGISTER_IS_ZERO | 32; } unsigned result = (esi[0] == 'x' || esi[0] == 'X') ? 64:32; if (esi[0] == 'x' || esi[0] == 'X' || esi[0] == 'w' || esi[0] == 'W') { unsigned char digit = esi[1] - '0'; unsigned register_number = digit; if (digit < 10) { digit = esi[2] - '0'; if (digit < 10) { register_number = register_number * 10 + digit; esi += 3; } else esi += 2; } if (register_number <= 30) // Number 31 is either SP or ZR { return result | register_number; } } error ( 16, "Bad register" ); return 0; } static inline void optional_zero_offset (void) { if (',' == nxt()) { comma () ; hash () ; int imm = expri () ; if (imm != 0) error( 16, "If an offset is present, it must be 0" ) ; } } static inline void close_square (void) { if (']' != nxt ()) error (16, "Missing ]") ; esi++ ; } static inline void assembler_error (void) { error( 16, "Something went wrong in the assembler, sorry" ) ; } static int is_sp( unsigned r ) { return ((r & 0x1f) == 31) && 0 == (r & REGISTER_IS_ZERO); } static int is_zero( unsigned r ) { return ((r & 0x1f) == 31) && 0 != (r & REGISTER_IS_ZERO); } // Mnemonics in here from the ARM documentation in UPPER case, assembler instructions in lower case // They are listed in alphabetical order, which lookup relies on to avoid matching MOV before MOVK. static char *mnemonics[] = { "ABS", "ADC", "ADCS", "ADD", "ADDHN", "ADDHN2", "ADDP", "ADDS", "ADDV", "ADR", "ADRP", "AESD", "AESE", "AESIMC", "AESMC", "align", "AND", "ANDS", "ASR", "ASRV", "AT", "AUTDA", "AUTDB", "AUTDZA", "AUTDZB", "AUTIA", "AUTIA1716", "AUTIASP", "AUTIAZ", "AUTIB", "AUTIB1716", "AUTIBSP", "AUTIBZ", "AUTIZA", "AUTIZB", "B", "BCAX", "BFC", "BFI", "BFM", "BFXIL", "BIC", "BICS", "BIF", "BIT", "BL", "BLR", "BLRAA", "BLRAAZ", "BLRAB", "BLRABZ", "BR", "BRAA", "BRAAZ", "BRAB", "BRABZ", "BRK", "BSL", "CAS", "CASA", "CASAB", "CASAH", "CASAL", "CASALB", "CASALH", "CASB", "CASH", "CASL", "CASLB", "CASLH", "CASP", "CASPA", "CASPAL", "CASPL", "CBNZ", "CBZ", "CCMN", "CCMP", "CINC", "CINV", "CLREX", "CLS", "CLZ", "CMEQ", "CMGE", "CMGT", "CMHI", "CMHS", "CMLE", "CMLT", "CMN", "CMP", "CMTST", "CNEG", "CNT", "CRC32B", "CRC32CB", "CRC32CH", "CRC32CW", "CRC32CX", "CRC32H", "CRC32W", "CRC32X", "CSEL", "CSET", "CSETM", "CSINC", "CSINV", "CSNEG", "db", "DC", "dcb", "dcd", "DCPS1", "DCPS2", "DCPS3", "dcs", "dcw", "DMB", "DRPS", "DSB", "DUP", "EON", "EOR", "EOR3", "equb", "equd", "equq", "equs", "equw", "ERET", "ERETAA", "ERETAB", "ESB", "EXT", "EXTR", "FABD", "FABS", "FACGE", "FACGT", "FADD", "FADDP", "FCADD", "FCCMP", "FCCMPE", "FCMEQ", "FCMGE", "FCMGT", "FCMLA", "FCMLE", "FCMLT", "FCMP", "FCMPE", "FCSEL", "FCVT", "FCVTAS", "FCVTAU", "FCVTL", "FCVTL2", "FCVTMS", "FCVTMU", "FCVTN", "FCVTN2", "FCVTNS", "FCVTNU", "FCVTPS", "FCVTPU", "FCVTXN", "FCVTXN2", "FCVTZS", "FCVTZU", "FDIV", "FJCVTZS", "FMADD", "FMAX", "FMAXNM", "FMAXNMP", "FMAXNMV", "FMAXP", "FMAXV", "FMIN", "FMINNM", "FMINNMP", "FMINNMV", "FMINP", "FMINV", "FMLA", "FMLAL", "FMLAL2", "FMLS", "FMLSL", "FMLSL2", "FMOV", "FMSUB", "FMUL", "FMULX", "FNEG", "FNMADD", "FNMSUB", "FNMUL", "FRECPE", "FRECPS", "FRECPX", "FRINTA", "FRINTI", "FRINTM", "FRINTN", "FRINTP", "FRINTX", "FRINTZ", "FRSQRTE", "FRSQRTS", "FSQRT", "FSUB", "HINT", "HLT", "HVC", "IC", "INS", "ISB", "LD1", "LD1R", "LD2", "LD2R", "LD3", "LD3R", "LD4", "LD4R", "LDADD", "LDADDA", "LDADDAB", "LDADDAH", "LDADDAL", "LDADDALB", "LDADDALH", "LDADDB", "LDADDH", "LDADDL", "LDADDLB", "LDADDLH", "LDAPR", "LDAPRB", "LDAPRH", "LDAR", "LDARB", "LDARH", "LDAXP", "LDAXR", "LDAXRB", "LDAXRH", "LDCLR", "LDCLRA", "LDCLRAB", "LDCLRAH", "LDCLRAL", "LDCLRALB", "LDCLRALH", "LDCLRB", "LDCLRH", "LDCLRL", "LDCLRLB", "LDCLRLH", "LDEOR", "LDEORA", "LDEORAB", "LDEORAH", "LDEORAL", "LDEORALB", "LDEORALH", "LDEORB", "LDEORH", "LDEORL", "LDEORLB", "LDEORLH", "LDLAR", "LDLARB", "LDLARH", "LDNP", "LDP", "LDPSW", "LDR", "LDRAA", "LDRAB", "LDRB", "LDRH", "LDRSB", "LDRSH", "LDRSW", "LDSET", "LDSETA", "LDSETAB", "LDSETAH", "LDSETAL", "LDSETALB", "LDSETALH", "LDSETB", "LDSETH", "LDSETL", "LDSETLB", "LDSETLH", "LDSMAX", "LDSMAXA", "LDSMAXAB", "LDSMAXAH", "LDSMAXAL", "LDSMAXALB", "LDSMAXALH", "LDSMAXB", "LDSMAXH", "LDSMAXL", "LDSMAXLB", "LDSMAXLH", "LDSMIN", "LDSMINA", "LDSMINAB", "LDSMINAH", "LDSMINAL", "LDSMINALB", "LDSMINALH", "LDSMINB", "LDSMINH", "LDSMINL", "LDSMINLB", "LDSMINLH", "LDTR", "LDTRB", "LDTRH", "LDTRSB", "LDTRSH", "LDTRSW", "LDUMAX", "LDUMAXA", "LDUMAXAB", "LDUMAXAH", "LDUMAXAL", "LDUMAXALB", "LDUMAXALH", "LDUMAXB", "LDUMAXH", "LDUMAXL", "LDUMAXLB", "LDUMAXLH", "LDUMIN", "LDUMINA", "LDUMINAB", "LDUMINAH", "LDUMINAL", "LDUMINALB", "LDUMINALH", "LDUMINB", "LDUMINH", "LDUMINL", "LDUMINLB", "LDUMINLH", "LDUR", "LDURB", "LDURH", "LDURSB", "LDURSH", "LDURSW", "LDXP", "LDXR", "LDXRB", "LDXRH", "LSL", "LSLV", "LSR", "LSRV", "MADD", "MLA", "MLS", "MNEG", "MOV", "MOVI", "MOVK", "MOVN", "MOVZ", "MRS", "MSR", "MSUB", "MUL", "MVN", "MVNI", "NEG", "NEGS", "NGC", "NGCS", "NOP", "NOT", "opt", "ORN", "ORR", "PACDA", "PACDB", "PACDZA", "PACDZB", "PACGA", "PACIA", "PACIA1716", "PACIASP", "PACIAZ", "PACIB", "PACIB1716", "PACIBSP", "PACIBZ", "PACIZA", "PACIZB", "PMUL", "PMULL", "PMULL2", "PRFM", "PSB", "PSBCSYNC", "RADDHN", "RADDHN2", "RAX1", "RBIT", "RET", "RETAA", "RETAB", "REV", "REV16", "REV32", "REV64", "ROR", "RORV", "RSHRN", "RSHRN2", "RSUBHN", "RSUBHN2", "SABA", "SABAL", "SABAL2", "SABD", "SABDL", "SABDL2", "SADALP", "SADDL", "SADDL2", "SADDLP", "SADDLV", "SADDW", "SADDW2", "SBC", "SBCS", "SBFIZ", "SBFM", "SBFX", "SCVTF", "SDIV", "SDOT", "SEV", "SEVL", "SHA1C", "SHA1H", "SHA1M", "SHA1P", "SHA1SU0", "SHA1SU1", "SHA256H", "SHA256H2", "SHA256SU0", "SHA256SU1", "SHA512H", "SHA512H2", "SHA512SU0", "SHA512SU1", "SHADD", "SHL", "SHLL", "SHLL2", "SHRN", "SHRN2", "SHSUB", "SLI", "SM3PARTW1", "SM3PARTW2", "SM3SS1", "SM3TT1A", "SM3TT1B", "SM3TT2A", "SM3TT2B", "SM4E", "SM4EKEY", "SMADDL", "SMAX", "SMAXP", "SMAXV", "SMC", "SMIN", "SMINP", "SMINV", "SMLAL", "SMLAL2", "SMLSL", "SMLSL2", "SMNEGL", "SMOV", "SMSUBL", "SMULH", "SMULL", "SMULL2", "SQABS", "SQADD", "SQDMLAL", "SQDMLAL2", "SQDMLSL", "SQDMLSL2", "SQDMULH", "SQDMULL", "SQDMULL2", "SQNEG", "SQRDMLAH", "SQRDMLSH", "SQRDMULH", "SQRSHL", "SQRSHRN", "SQRSHRN2", "SQRSHRUN", "SQRSHRUN2", "SQSHL", "SQSHLU", "SQSHRN", "SQSHRN2", "SQSHRUN", "SQSHRUN2", "SQSUB", "SQXTN", "SQXTN2", "SQXTUN", "SQXTUN2", "SRHADD", "SRI", "SRSHL", "SRSHR", "SRSRA", "SSHL", "SSHLL", "SSHLL2", "SSHR", "SSRA", "SSUBL", "SSUBL2", "SSUBW", "SSUBW2", "ST1", "ST2", "ST3", "ST4", "STADD", "STADDB", "STADDH", "STADDL", "STADDLB", "STADDLH", "STCLR", "STCLRB", "STCLRH", "STCLRL", "STCLRLB", "STCLRLH", "STEOR", "STEORB", "STEORH", "STEORL", "STEORLB", "STEORLH", "STLLR", "STLLRB", "STLLRH", "STLR", "STLRB", "STLRH", "STLXP", "STLXR", "STLXRB", "STLXRH", "STNP", "STP", "STR", "STRB", "STRH", "STSET", "STSETB", "STSETH", "STSETL", "STSETLB", "STSETLH", "STSMAX", "STSMAXB", "STSMAXH", "STSMAXL", "STSMAXLB", "STSMAXLH", "STSMIN", "STSMINB", "STSMINH", "STSMINL", "STSMINLB", "STSMINLH", "STTR", "STTRB", "STTRH", "STUMAX", "STUMAXB", "STUMAXH", "STUMAXL", "STUMAXLB", "STUMAXLH", "STUMIN", "STUMINB", "STUMINH", "STUMINL", "STUMINLB", "STUMINLH", "STUR", "STURB", "STURH", "STXP", "STXR", "STXRB", "STXRH", "SUB", "SUBHN", "SUBHN2", "SUBS", "SUQADD", "SVC", "SWP", "SWPA", "SWPAB", "SWPAH", "SWPAL", "SWPALB", "SWPALH", "SWPB", "SWPH", "SWPL", "SWPLB", "SWPLH", "SXTB", "SXTH", "SXTL", "SXTL2", "SXTW", "SYS", "SYSL", "TBL", "TBNZ", "TBX", "TBZ", "TLBI", "TRN1", "TRN2", "TST", "UABA", "UABAL", "UABAL2", "UABD", "UABDL", "UABDL2", "UADALP", "UADDL", "UADDL2", "UADDLP", "UADDLV", "UADDW", "UADDW2", "UBFIZ", "UBFM", "UBFX", "UCVTF", "UDIV", "UDOT", "UHADD", "UHSUB", "UMADDL", "UMAX", "UMAXP", "UMAXV", "UMIN", "UMINP", "UMINV", "UMLAL", "UMLAL2", "UMLSL", "UMLSL2", "UMNEGL", "UMOV", "UMSUBL", "UMULH", "UMULL", "UMULL2", "UQADD", "UQRSHL", "UQRSHRN", "UQRSHRN2", "UQSHL", "UQSHRN", "UQSHRN2", "UQSUB", "UQXTN", "UQXTN2", "URECPE", "URHADD", "URSHL", "URSHR", "URSQRTE", "URSRA", "USHL", "USHLL", "USHLL2", "USHR", "USQADD", "USRA", "USUBL", "USUBL2", "USUBW", "USUBW2", "UXTB", "UXTH", "UXTL", "UXTL2", "UXTW", "UZP1", "UZP2", "WFE", "WFI", "XAR", "XPACD", "XPACI", "XPACLRI", "XTN", "XTN2", "YIELD", "ZIP1", "ZIP2" } ; // Lowercase r in STr constant because STR is declared elsewhere enum mnemonics { ABS, ADC, ADCS, ADD, ADDHN, ADDHN2, ADDP, ADDS, ADDV, ADR, ADRP, AESD, AESE, AESIMC, AESMC, ALIGN, AND, ANDS, ASR, ASRV, AT, AUTDA, AUTDB, AUTDZA, AUTDZB, AUTIA, AUTIA1716, AUTIASP, AUTIAZ, AUTIB, AUTIB1716, AUTIBSP, AUTIBZ, AUTIZA, AUTIZB, B, BCAX, BFC, BFI, BFM, BFXIL, BIC, BICS, BIF, BIT, BL, BLR, BLRAA, BLRAAZ, BLRAB, BLRABZ, BR, BRAA, BRAAZ, BRAB, BRABZ, BRK, BSL, CAS, CASA, CASAB, CASAH, CASAL, CASALB, CASALH, CASB, CASH, CASL, CASLB, CASLH, CASP, CASPA, CASPAL, CASPL, CBNZ, CBZ, CCMN, CCMP, CINC, CINV, CLREX, CLS, CLZ, CMEQ, CMGE, CMGT, CMHI, CMHS, CMLE, CMLT, CMN, CMP, CMTST, CNEG, CNT, CRC32B, CRC32CB, CRC32CH, CRC32CW, CRC32CX, CRC32H, CRC32W, CRC32X, CSEL, CSET, CSETM, CSINC, CSINV, CSNEG, DB, DC, DCB, DCD, DCPS1, DCPS2, DCPS3, DCS, DCW, DMB, DRPS, DSB, DUP, EON, EOR, EOR3, EQUB, EQUD, EQUQ, EQUS, EQUW, ERET, ERETAA, ERETAB, ESB, EXT, EXTR, FABD, FABS, FACGE, FACGT, FADD, FADDP, FCADD, FCCMP, FCCMPE, FCMEQ, FCMGE, FCMGT, FCMLA, FCMLE, FCMLT, FCMP, FCMPE, FCSEL, FCVT, FCVTAS, FCVTAU, FCVTL, FCVTL2, FCVTMS, FCVTMU, FCVTN, FCVTN2, FCVTNS, FCVTNU, FCVTPS, FCVTPU, FCVTXN, FCVTXN2, FCVTZS, FCVTZU, FDIV, FJCVTZS, FMADD, FMAX, FMAXNM, FMAXNMP, FMAXNMV, FMAXP, FMAXV, FMIN, FMINNM, FMINNMP, FMINNMV, FMINP, FMINV, FMLA, FMLAL, FMLAL2, FMLS, FMLSL, FMLSL2, FMOV, FMSUB, FMUL, FMULX, FNEG, FNMADD, FNMSUB, FNMUL, FRECPE, FRECPS, FRECPX, FRINTA, FRINTI, FRINTM, FRINTN, FRINTP, FRINTX, FRINTZ, FRSQRTE, FRSQRTS, FSQRT, FSUB, HINT, HLT, HVC, IC, INS, ISB, LD1, LD1R, LD2, LD2R, LD3, LD3R, LD4, LD4R, LDADD, LDADDA, LDADDAB, LDADDAH, LDADDAL, LDADDALB, LDADDALH, LDADDB, LDADDH, LDADDL, LDADDLB, LDADDLH, LDAPR, LDAPRB, LDAPRH, LDAR, LDARB, LDARH, LDAXP, LDAXR, LDAXRB, LDAXRH, LDCLR, LDCLRA, LDCLRAB, LDCLRAH, LDCLRAL, LDCLRALB, LDCLRALH, LDCLRB, LDCLRH, LDCLRL, LDCLRLB, LDCLRLH, LDEOR, LDEORA, LDEORAB, LDEORAH, LDEORAL, LDEORALB, LDEORALH, LDEORB, LDEORH, LDEORL, LDEORLB, LDEORLH, LDLAR, LDLARB, LDLARH, LDNP, LDP, LDPSW, LDR, LDRAA, LDRAB, LDRB, LDRH, LDRSB, LDRSH, LDRSW, LDSET, LDSETA, LDSETAB, LDSETAH, LDSETAL, LDSETALB, LDSETALH, LDSETB, LDSETH, LDSETL, LDSETLB, LDSETLH, LDSMAX, LDSMAXA, LDSMAXAB, LDSMAXAH, LDSMAXAL, LDSMAXALB, LDSMAXALH, LDSMAXB, LDSMAXH, LDSMAXL, LDSMAXLB, LDSMAXLH, LDSMIN, LDSMINA, LDSMINAB, LDSMINAH, LDSMINAL, LDSMINALB, LDSMINALH, LDSMINB, LDSMINH, LDSMINL, LDSMINLB, LDSMINLH, LDTR, LDTRB, LDTRH, LDTRSB, LDTRSH, LDTRSW, LDUMAX, LDUMAXA, LDUMAXAB, LDUMAXAH, LDUMAXAL, LDUMAXALB, LDUMAXALH, LDUMAXB, LDUMAXH, LDUMAXL, LDUMAXLB, LDUMAXLH, LDUMIN, LDUMINA, LDUMINAB, LDUMINAH, LDUMINAL, LDUMINALB, LDUMINALH, LDUMINB, LDUMINH, LDUMINL, LDUMINLB, LDUMINLH, LDUR, LDURB, LDURH, LDURSB, LDURSH, LDURSW, LDXP, LDXR, LDXRB, LDXRH, LSL, LSLV, LSR, LSRV, MADD, MLA, MLS, MNEG, MOV, MOVI, MOVK, MOVN, MOVZ, MRS, MSR, MSUB, MUL, MVN, MVNI, NEG, NEGS, NGC, NGCS, NOP, NOT, OPT, ORN, ORR, PACDA, PACDB, PACDZA, PACDZB, PACGA, PACIA, PACIA1716, PACIASP, PACIAZ, PACIB, PACIB1716, PACIBSP, PACIBZ, PACIZA, PACIZB, PMUL, PMULL, PMULL2, PRFM, PSB, PSBCSYNC, RADDHN, RADDHN2, RAX1, RBIT, RET, RETAA, RETAB, REV, REV16, REV32, REV64, ROR, RORV, RSHRN, RSHRN2, RSUBHN, RSUBHN2, SABA, SABAL, SABAL2, SABD, SABDL, SABDL2, SADALP, SADDL, SADDL2, SADDLP, SADDLV, SADDW, SADDW2, SBC, SBCS, SBFIZ, SBFM, SBFX, SCVTF, SDIV, SDOT, SEV, SEVL, SHA1C, SHA1H, SHA1M, SHA1P, SHA1SU0, SHA1SU1, SHA256H, SHA256H2, SHA256SU0, SHA256SU1, SHA512H, SHA512H2, SHA512SU0, SHA512SU1, SHADD, SHL, SHLL, SHLL2, SHRN, SHRN2, SHSUB, SLI, SM3PARTW1, SM3PARTW2, SM3SS1, SM3TT1A, SM3TT1B, SM3TT2A, SM3TT2B, SM4E, SM4EKEY, SMADDL, SMAX, SMAXP, SMAXV, SMC, SMIN, SMINP, SMINV, SMLAL, SMLAL2, SMLSL, SMLSL2, SMNEGL, SMOV, SMSUBL, SMULH, SMULL, SMULL2, SQABS, SQADD, SQDMLAL, SQDMLAL2, SQDMLSL, SQDMLSL2, SQDMULH, SQDMULL, SQDMULL2, SQNEG, SQRDMLAH, SQRDMLSH, SQRDMULH, SQRSHL, SQRSHRN, SQRSHRN2, SQRSHRUN, SQRSHRUN2, SQSHL, SQSHLU, SQSHRN, SQSHRN2, SQSHRUN, SQSHRUN2, SQSUB, SQXTN, SQXTN2, SQXTUN, SQXTUN2, SRHADD, SRI, SRSHL, SRSHR, SRSRA, SSHL, SSHLL, SSHLL2, SSHR, SSRA, SSUBL, SSUBL2, SSUBW, SSUBW2, ST1, ST2, ST3, ST4, STADD, STADDB, STADDH, STADDL, STADDLB, STADDLH, STCLR, STCLRB, STCLRH, STCLRL, STCLRLB, STCLRLH, STEOR, STEORB, STEORH, STEORL, STEORLB, STEORLH, STLLR, STLLRB, STLLRH, STLR, STLRB, STLRH, STLXP, STLXR, STLXRB, STLXRH, STNP, STP, STr, STRB, STRH, STSET, STSETB, STSETH, STSETL, STSETLB, STSETLH, STSMAX, STSMAXB, STSMAXH, STSMAXL, STSMAXLB, STSMAXLH, STSMIN, STSMINB, STSMINH, STSMINL, STSMINLB, STSMINLH, STTR, STTRB, STTRH, STUMAX, STUMAXB, STUMAXH, STUMAXL, STUMAXLB, STUMAXLH, STUMIN, STUMINB, STUMINH, STUMINL, STUMINLB, STUMINLH, STUR, STURB, STURH, STXP, STXR, STXRB, STXRH, SUB, SUBHN, SUBHN2, SUBS, SUQADD, SVC, SWP, SWPA, SWPAB, SWPAH, SWPAL, SWPALB, SWPALH, SWPB, SWPH, SWPL, SWPLB, SWPLH, SXTB, SXTH, SXTL, SXTL2, SXTW, SYS, SYSL, TBL, TBNZ, TBX, TBZ, TLBI, TRN1, TRN2, TST, UABA, UABAL, UABAL2, UABD, UABDL, UABDL2, UADALP, UADDL, UADDL2, UADDLP, UADDLV, UADDW, UADDW2, UBFIZ, UBFM, UBFX, UCVTF, UDIV, UDOT, UHADD, UHSUB, UMADDL, UMAX, UMAXP, UMAXV, UMIN, UMINP, UMINV, UMLAL, UMLAL2, UMLSL, UMLSL2, UMNEGL, UMOV, UMSUBL, UMULH, UMULL, UMULL2, UQADD, UQRSHL, UQRSHRN, UQRSHRN2, UQSHL, UQSHRN, UQSHRN2, UQSUB, UQXTN, UQXTN2, URECPE, URHADD, URSHL, URSHR, URSQRTE, URSRA, USHL, USHLL, USHLL2, USHR, USQADD, USRA, USUBL, USUBL2, USUBW, USUBW2, UXTB, UXTH, UXTL, UXTL2, UXTW, UZP1, UZP2, WFE, WFI, XAR, XPACD, XPACI, XPACLRI, XTN, XTN2, YIELD, ZIP1, ZIP2 } ; static char *oslist[] = { "osrdch", "oswrch", "oskey", "osline", "oscli", "osopen", "osbyte", "osword", "osshut", "osbget", "osbput", "getptr", "setptr", "getext" } ; static void *osfunc[] = { osrdch, oswrch, oskey, osline, oscli, osopen, osbyte, osword, osshut, osbget, osbput, getptr, setptr, getext } ; static int lookup (char **arr, int num) { int i, n ; nxt() ; const char *code = (const char *)esi ; i = num ; while (--i >= 0) { n = strlen (*(arr + i)) ; if (strnicmp (code, *(arr + i), n) == 0) { esi += n ; break; } } return i ; } static enum mnemonics lookup_mnemonic(void) { const char *code = (const char *)esi; int n ; if (code[0] == (char) 0x84 && (code[1] == 'r' || code[1] == 'R')) // Tokenised OR { esi += 2; return ORR; } if (code[0] == (char) 0x80) { // Tokenised AND if (code[1] == 's' || code[1] == 'S') { esi += 2; return ANDS; } else { esi += 1; return AND; } } // Simple binary chop. // Tested for all valid values, invalid values before ADC, after YIELD, and in between. int top = sizeof( mnemonics ) / sizeof( mnemonics[0] ) ; int bottom = 0; int i = top / 2; int best = -1; while (bottom < top) { n = strlen (mnemonics[i]) ; int cmp = strnicmp (mnemonics[i], code, n) ; if (cmp <= 0) { if (cmp == 0) best = i; // There may be a better match later in the alphabetically sorted array bottom = i + 1; } else { top = i; } i = (top + bottom)/2; } if (best != -1) { esi += strlen (mnemonics[best]) ; } return best; } static char *shift_types[] = { "LSL", "LSR", "ASR", "ROR" }; static int shift_type(void) { int found = lookup( shift_types, 4 ) ; if (found < 0) { error( 16, "Shift types: LSL, LSR, ASR, or sometimes ROR" ) ; } return found; } static void tabit (int x) { if (vcount == x) return ; if (vcount > x) crlf () ; spaces (x - vcount) ; } static void poke (void *p, int n) { char *d ; if (liston & BIT6) { d = OC ; stavar[15] += n ; } else d = PC ; stavar[16] += n ; memcpy (d, p, n) ; } void *align (void) { while (stavar[16] & 3) { stavar[16]++ ; if (liston & BIT6) stavar[15]++ ; } ; return PC ; } /* * Table C1-6 A64 Load/Store addressing modes: * [n, #imm] includes [n] and [n, #0] * [n, #imm]! * [n], #imm * [n, Xm, LSL#imm] includes [n, Xm] (zero shift) * [n, Wm, UXTW#imm] [n, Wm, SXTW#imm] * [n], Xm (SIMD only) * * Doesn't quite match up with C6.2.113 LDR (register), which allows [n, Xm, SXTX#imm] * It's also not obvious that the values of imm are limited to 0, 2, or 3 (depending on the WXm register) * [n, Xm, LSL#(0|3)] includes [n, Xm] (zero shift) [n, Xm, SXTX#(0|3)] * [n, Wm, UXTW#(0|2)] [n, Wm, SXTW#(0|2)] * Finally, [n, #imm] can also be an alias for LDUR, if the offset is -ve or not a multiple of 4 or 8. */ enum addressing_mode { REG_UXTW, REG_SXTW, REG_SXTX, REG_LSL, REG_UNMODIFIED, LITERAL, PRE_INDEXED, POST_INDEXED, NO_OFFSET, IMMEDIATE, NOTFOUND = -1 }; static char *extends[] = { "UXTW", "SXTW", "SXTX", "LSL" }; static const unsigned address_extend_op[5] = { 0x4000, 0xc000, 0xe000, 0x6000, 0x6000 }; struct addressing { enum addressing_mode mode; unsigned n; unsigned m; unsigned amount_present; long long imm; }; static struct addressing read_addressing(void) { struct addressing result = { .mode = NO_OFFSET }; if (nxt () != '[') { // Offset from PC result.imm = (void *) (size_t) expri () - PC ; result.mode = LITERAL; return result; } open_square() ; result.n = reg() ; // n must be 64-bit, and not XZR if (is_zero( result.n ) || 64 != reg_size( result.n )) { error (16, NULL) ; // 'Syntax error' } if (',' == nxt()) { comma(); if ('#' == nxt()) { hash(); result.imm = expri(); result.mode = IMMEDIATE; } else { result.m = reg(); if (',' == nxt()) { comma(); result.mode = lookup( extends, sizeof( extends )/sizeof( extends[0] ) ) ; if (result.mode == -1) error( 16, NULL ); result.amount_present = ('#' == nxt ()); if (result.amount_present) { hash () ; result.imm = expri () ; } } else result.mode = REG_UNMODIFIED; } } close_square(); if (result.mode == IMMEDIATE && '!' == nxt()) { esi++; result.mode = PRE_INDEXED; } if (result.mode == NO_OFFSET && ',' == nxt()) { comma(); hash(); result.imm = expri(); result.mode = POST_INDEXED; } return result; } static inline unsigned rotl32( unsigned n ) { return (n & 0x80000000) ? (n << 1) | 1 : (n << 1) ; } static inline unsigned long long rotl64( unsigned long long n ) { return (n & 0x8000000000000000ull) ? (n << 1) | 1 : (n << 1) ; } static int validated_condition(void) { static char *conditions[] = { "EQ", "NE", "CS", "HS", "CC", "LO", "MI", "PL", "VS", "VC", "HI", "LS", "GE", "LT", "GT", "LE", "AL", "NV" }; static int code[] = { 0, 1, 2, 2, 3, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }; int index = lookup( conditions, sizeof( conditions )/sizeof( conditions[0] ) ) ; if (index == -1) { error( 16, NULL ) ; return 0; } return code[index]; } static inline unsigned validated_literal_offset ( int imm ) { if ((((imm >> 21) != 0 && (imm >> 21) != -1) || (0 != (imm & 3))) && (liston & BIT5)) error (8, "Label is not within 1MB of the instruction, or is not word aliigned" ) ; return (imm >> 2) & ((1 << 19) - 1); } static int validated_N_immr_imms( long long imm, unsigned word_data ) { if (imm == 0 || imm == -1 || (word_data && imm == 0xffffffff)) { assembler_error() ; } // Here's the plan: // Rotate left until the lsb is 1 and the msb is 0 // Count the number of 1 bits at the least significant end // Count the number of 0 bits above those // The sum of those two counts is the pattern size // The pattern size must be a multiple of 2 // Check the immediate value against the pattern generated if (word_data) { int i; // 32-bit value unsigned n = imm & 0xffffffff; unsigned steps = 0; while ((n & 0x80000001) != 1) { steps++; n = rotl32( n ) ; } unsigned bits1 = 0; unsigned bits0 = 0; unsigned test = 1; while ((n & test) != 0) { bits1++; test = test << 1; } while (test != 0 && (n & test) == 0) { bits0++; test = test << 1; } unsigned pattern_size = (bits0 + bits1) ; if (32 % pattern_size != 0) error( 8, "Immediate value cannot be encoded" ) ; unsigned pattern = 0xffffffff >> (32 - pattern_size + bits0) ; unsigned check = pattern; for (i = pattern_size; i < 32; i += pattern_size) { check = (check << pattern_size) | pattern; } if (check != n) error( 8, "Immediate value cannot be encoded" ) ; unsigned pattern_code = 0b111111; while (pattern_size != 0) { pattern_size = pattern_size >> 1; pattern_code = pattern_code << 1; } return (steps << 6) | (pattern_code & 0b111111) | (bits1 - 1) ; } else { int i; // 64-bit value unsigned long long n = imm; unsigned steps = 0; while ((n & 0x8000000000000001ull) != 1) { steps++; n = rotl64( n ) ; } unsigned bits1 = 0; unsigned bits0 = 0; unsigned long long test = 1; while ((n & test) != 0) { bits1++; test = test << 1; } while (test != 0 && (n & test) == 0) { bits0++; test = test << 1; } unsigned pattern_size = (bits0 + bits1) ; if (64 % pattern_size != 0) error( 8, "Immediate value cannot be encoded" ) ; unsigned long long pattern = 0xffffffffffffffffull >> (64 - pattern_size + bits0) ; unsigned long long check = pattern; for (i = pattern_size; i < 64; i += pattern_size) { check = (check << pattern_size) | pattern; } if (check != n) error( 8, "Immediate value cannot be encoded" ) ; unsigned result = (steps << 6) | (bits1 - 1) ; if (pattern_size == 64) { // Set N result |= (1 << 12) ; } else { // Clear N, result |= (64 - (2 * pattern_size)) ; } return result; } return 0x1fff; // FIXME bigtime! } static int validated_imm9( int imm ) { // -256 <= offset < 256, imm9, byte offset if (imm < -256 || imm >= 256) error( 8, "Offset must be between -256 and 255" ) ; return (imm & 0x1ff) ; } // Alignment 0 = byte, 1 = half-word, 2 = word, 3 = dword static int validated_imm12( int imm, int alignment ) { if (imm < 0 || 0 != (imm & ((1 << alignment) - 1)) || imm >= (4096 << alignment)) { switch (alignment) { case 0: error( 8, "Constant must be positive and less than 4096" ) ; break; case 1: error( 8, "Constant must be positive, a multiple of 2, and less than 8192" ) ; break; case 2: error( 8, "Constant must be positive, a multiple of 4, and less than 16384" ) ; break; case 3: error( 8, "Constant must be positive, a multiple of 8, and less than 32768" ) ; break; } } return ((imm >> alignment) & 0xfff) ; } static unsigned validated_number_0_to_15(void) { int result; char al; al = *esi++; result = al - '0'; if (result == 1) { al = *esi; result = al - '0'; if (result >= 0 && result < 6) { result += 10; esi++; } else { result = 1; } } if (result < 0 || result > 15) error( 16, NULL ); return result; } static unsigned validated_system_register(void) { unsigned result = 0; char al ; // No named system registers, yet. // Code: e.g. s3_1_c11_c0_2 nxt (); al = *esi++; if ('S' != al && 's' != al) error( 16, NULL ); al = *esi++; switch (al) { case '2': break; case '3': result |= (1 << 19); break; default: error( 16, NULL ); } al = *esi++; if (al != '_') error( 16, NULL ); al = *esi++; int op1 = al - '0'; if (op1 < 0 || op1 > 7) error( 16, NULL ); result |= op1 << 16; al = *esi++; if (al != '_') error( 16, NULL ); al = *esi++; if (al != 'c' && al != 'C') error( 16, NULL ); result |= validated_number_0_to_15() << 12; al = *esi++; if (al != '_') error( 16, NULL ); al = *esi++; if (al != 'c' && al != 'C') error( 16, NULL ); result |= validated_number_0_to_15() << 8; al = *esi++; if (al != '_') error( 16, NULL ); al = *esi++; int op2 = al - '0'; if (op2 < 0 || op2 > 7) error( 16, NULL ); result |= op2 << 5; return result; } static unsigned validated_FB_SIMD_instruction( enum mnemonics mnemnonic ) { error( 16, "Unsupported FP/SIMD operation" ); return 0; } void assemble (void) { signed char al ; signed char *oldesi = esi ; int init = 1 ; void *oldpc = PC ; unsigned old_liston_bit2 = liston & BIT2; liston |= BIT2; while (1) { enum mnemonics mnemonic; int instruction = 0 ; if (liston & BIT7) { int tmp ; if (liston & BIT6) tmp = stavar[15] ; // O% physical memory else tmp = stavar[16] ; // P% nominal memory if (tmp >= stavar[12]) // L% limit error (8, NULL) ; // 'Address out of range' } al = nxt () ; esi++ ; switch (al) { case 0: esi-- ; liston = (liston & 0x0F) | 0x30 ; // Restore bit 2, set to get 64-bit constants liston &= ~BIT2; liston |= old_liston_bit2; return ; case ']': liston = (liston & 0x0F) | 0x30 ; // Restore bit 2, set to get 64-bit constants liston &= ~BIT2; liston |= old_liston_bit2; return ; case 0x0D: newlin () ; if (*esi == 0x0D) break ; case ':': if (liston & BIT4) { void *p ; int n = PC - oldpc ; if (liston & BIT6) p = OC - n ; else p = PC - n ; do { unsigned int i = *(unsigned int *)p ; #ifdef _WIN32 sprintf (accs, "%016I64X ", (long long) (size_t) oldpc) ; #else sprintf (accs, "%016llX ", (long long) (size_t) oldpc) ; #endif switch (n) { case 0: break ; case 1: i &= 0xFF ; case 2: i &= 0xFFFF ; case 3: i &= 0xFFFFFF ; case 4: sprintf (accs + 17, "%0*X ", n*2, i) ; break ; default: sprintf (accs + 17, "%08X ", i) ; } if (n > 4) { n -= 4 ; p += 4 ; oldpc += 4 ; } else n = 0 ; text (accs) ; if (*oldesi == '.') { tabit (26) ; do { token (*oldesi++ ) ; } while (range0(*oldesi)) ; while (*oldesi == ' ') oldesi++ ; } tabit (38) ; while ((*oldesi != ':') && (*oldesi != 0x0D)) token (*oldesi++) ; crlf () ; } while (n) ; } nxt () ; #if defined(__arm__) || defined(__aarch64__) if ((liston & BIT6) == 0) #ifdef __APPLE__ sys_icache_invalidate (oldpc, PC - oldpc) ; #else __builtin___clear_cache (oldpc, PC) ; #endif #endif oldpc = PC ; oldesi = esi ; break ; case ';': case TREM: while ((*esi != 0x0D) && (*esi != ':')) esi++ ; break ; case '.': if (init) oldpc = align () ; { VAR v ; unsigned char type ; void *ptr = getput (&type) ; if (ptr == NULL) error (16, NULL) ; // 'Syntax error' if (type >= 128) error (6, NULL) ; // 'Type mismatch' if ((liston & BIT5) == 0) { v = loadn (ptr, type) ; if (v.i.n) error (3, NULL) ; // 'Multiple label' } v.i.t = 0 ; v.i.n = (intptr_t) PC ; storen (v, ptr, type) ; } break ; default: esi-- ; // Switch was probably on the first character of an assembler mnemonic, include it in the search mnemonic = lookup_mnemonic () ; if (mnemonic != OPT) init = 0 ; // Assember controls stay the same as 32-bit ARM switch (mnemonic) { case OPT: liston = (liston & 0x0F) | (expri () << 4) ; continue ; case DB: { VAR v = expr () ; if (v.s.t == -1) { if (v.s.l > 256) error (19, NULL) ; // 'String too long' poke (v.s.p + zero, v.s.l) ; continue ; } if (v.i.t) v.i.n = v.f ; poke (&v.i.n, 1) ; continue ; } case DCB: case EQUB: { int n = expri () ; poke (&n, 1) ; continue ; // n.b. not break } case DCW: case EQUW: { int n = expri () ; poke (&n, 2) ; continue ; // n.b. not break } case DCD: case EQUD: case EQUQ: { VAR v = expr () ; long long n ; if (v.s.t == -1) { signed char *oldesi = esi ; int i ; memcpy (accs, v.s.p + zero, v.s.l) ; *(accs + v.s.l) = 0 ; esi = (signed char *)accs ; i = lookup (oslist, sizeof(oslist) / sizeof(oslist[0])) ; esi = oldesi ; if (i >= 0) n = (size_t) osfunc[i] ; else n = (size_t) sysadr (accs) ; if (n == 0) error (51, NULL) ; // 'No such system call' } else if (v.i.t == 0) n = v.i.n ; else n = v.f ; if (mnemonic == EQUQ) { poke (&n, 8) ; continue ; } instruction = (int) n ; } break ; case DCS: case EQUS: { VAR v = exprs () ; if (v.s.l > 256) error (19, NULL) ; // 'String too long' poke (v.s.p + zero, v.s.l) ; continue ; } case ALIGN: oldpc = align () ; if ((nxt() >= '1') && (*esi <= '9')) { int n = expri () ; if ((n & (n - 1)) || (n & 0xFFFFFF03) || (n == 0)) error (16, NULL) ; // 'Syntax error' instruction = 0xE1A00000 ; while (stavar[16] & (n - 1)) poke (&instruction, 4) ; } continue ; case ADC: case ADCS: case ASRV: case LSLV: case LSRV: case MNEG: case MUL: case RORV: case SBC: case SBCS: case SDIV: case UDIV: { if ((mnemonic == MUL) && ('D' == nxt() || 'd' == nxt())) { instruction = validated_FB_SIMD_instruction( mnemonic ); break; } // Three same-sized registers switch (mnemonic) { case ADC: instruction = 0x1a000000; break; // C6.2.1 case ADCS: instruction = 0x3a000000; break; // C6.2.2 case ASRV: instruction = 0x1ac02800; break; // C6.2.17 case LSLV: instruction = 0x1ac02000; break; // C6.2.159 case LSRV: instruction = 0x1ac02400; break; // C6.2.162 case MNEG: instruction = 0x1b00fc00; break; // C6.2.164 case MUL: instruction = 0x1b007c00; break; // C6.2.177 case RORV: instruction = 0x1ac02c00; break; // C6.2.206 case SBC: instruction = 0x5a000000; break; // C6.2.207 case SBCS: instruction = 0x7a000000; break; // C6.2.208 case SDIV: instruction = 0x1ac00c00; break; // C6.2.212 case UDIV: instruction = 0x1ac00800; break; // C6.2.296 default: assembler_error() ; } unsigned d = reg () ; comma () ; unsigned n = reg () ; comma () ; unsigned m = reg () ; if (reg_size( d ) != reg_size( n ) || reg_size( d ) != reg_size( m )) error( 16, NULL ) ; unsigned word_data = 32 == reg_size( d ) ; unsigned size_bit = (word_data ? 0 : (1 << 31)) ; instruction |= size_bit; instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; instruction |= (m & 0x1f) << 16; } break; case ADD: case ADDS: case SUB: case SUBS: case CMN: case CMP: { if ((mnemonic == ADD || mnemonic == SUB) && ('D' == nxt() || 'd' == nxt())) { instruction = validated_FB_SIMD_instruction( mnemonic ); break; } // Three forms: Immediate, Shifted or Extended register unsigned d; if (mnemonic != CMN && mnemonic != CMP) { d = reg () ; comma () ; } unsigned n = reg () ; comma () ; if (mnemonic == CMN || mnemonic == CMP) { // CMN m, n == ADDS z, m, n d = 31 | REGISTER_IS_ZERO | reg_size( n ) ; } unsigned word_data = 32 == reg_size( d ) ; unsigned size_bit = (word_data ? 0 : (1 << 31)) ; if (nxt() == '#') { switch (mnemonic) { case ADD: instruction = 0x11000000; break; // C6.2.4 case CMN: // C6.2.53 case ADDS: instruction = 0x31000000; break; // C6.2.7 case SUB: instruction = 0x51000000; break; // C6.2.274 case CMP: // C6.2.56 case SUBS: instruction = 0x71000000; break; // C6.2.277 default: assembler_error() ; } hash () ; long long imm = expri () ; if (nxt() == ',') { comma () ; nxt () ; if (strnicmp ((const char *) esi, "LSL", 3) == 0) { esi += 3; hash () ; int shift = expri () ; if (shift != 12 && shift != 0) error( 16, NULL ) ; if (shift == 12) instruction |= 1 << 22; } else { error( 16, NULL ) ; } } else if (imm >= 4096 && (imm & 0xfff) == 0 && (imm >> 12) < 4096) { // Automatically perform the shift for suitable larger numbers imm = imm >> 12; instruction |= 1 << 22; } if (imm < 0 || imm >= 4096) error( 16, NULL ) ; instruction |= imm << 10; } else { switch (mnemonic) { case ADD: instruction = 0x0b000000; break; // C6.2.3 C6.2.5 case CMN: // C6.2.53 case ADDS: instruction = 0x2b000000; break; // C6.2.7 C6.2.8 case SUB: instruction = 0x4b000000; break; // C6.2.273, C6.2.275 case CMP: // C6.2.56 case SUBS: instruction = 0x6b000000; break; // C6.2.276, C6.2.278 default: assembler_error() ; } unsigned m ; m = reg (); enum modifier { EXT_UXTB, EXT_UXTH, EXT_UXTW, EXT_UXTX, EXT_SXTB, EXT_SXTH, EXT_SXTW, EXT_SXTX, EXT_LSL, EXT_LSR, EXT_ASR, EXT_ROR, EXT_NO_MODIFIER, NOTFOUND = -1 }; static char *modifiers[] = { "UXTB", "UXTH", "UXTW", "UXTX", "SXTB", "SXTH", "SXTW", "SXTX", "LSL", "LSR", "ASR", "ROR" }; int imm = 0; int amount_present = 0; enum modifier mod = EXT_NO_MODIFIER ; if (',' == nxt ()) { comma () ; mod = lookup( modifiers, sizeof( modifiers )/sizeof( modifiers[0] ) ) ; if (mod == -1) error( 16, NULL ); amount_present = ('#' == nxt ()); if (amount_present) { hash () ; imm = expri () ; } } // The encoding can be extended register or shifted register // Register n being number 31 is SP in extended, ZR in shifted // Register d being number 31 is SP in extended, ZR in shifted // The amount may only be 0-4 in extended, 0 to reg_size( m ) - 1 in shifted. // Either mode can use LSL, with two different encodings within extended mode. if (is_sp( m )) error( 16, "Third register cannot be SP" ); if (is_sp( n ) || is_sp( d ) || (mod < EXT_LSL)) // || (mod == EXT_LSL && 0 <= imm && 4 >= imm))) { // Extended instruction |= (1 << 21) ; if (mod == EXT_LSL || mod == EXT_NO_MODIFIER) { if (32 == reg_size( d )) mod = EXT_UXTW; else mod = EXT_UXTX; } if (mod >= EXT_LSL) error( 16, NULL ); instruction |= (mod & 7) << 13; if (imm < 0 || imm > 4) error( 8, "Extension amount must be 0..4" ) ; } else { // Shifted if (mod != EXT_NO_MODIFIER) instruction |= (mod - EXT_LSL) << 22; if (imm < 0 || imm >= reg_size( d ) ) error( 8, NULL ) ; } instruction |= imm << 10; if (reg_size( d ) != reg_size( n ) || reg_size( d ) < reg_size( m )) error( 16, NULL ) ; instruction |= (m & 0x1f) << 16; } instruction |= size_bit; instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; } break; case ADR: // Within 1MB of the PC, to the byte. { int offpc ; unsigned d = reg () ; comma () ; offpc = (void *) (size_t) expri () - PC ; if (((d & 0x1f) == 0x1f && 0 == (d & REGISTER_IS_ZERO)) // SP is not allowed, but XZR is! || 32 == reg_size( d ) || offpc < -0x100000 || offpc >= 0x100000) error (16, NULL) ; // 'Syntax error' instruction = 0x10000000; // C6.2.9 instruction |= (d & 0x1f) ; // Words offset goes in bits [32:5], byte offset in [30:29] instruction |= ((offpc & 0x1ffffc) << 3) | ((offpc & 3) << 29) ; } break ; case ADRP: // Within 4GB of the current page, to 4k boundary { long long offpc ; unsigned d = reg () ; if (((d & 0x1f) == 0x1f && 0 == (d & REGISTER_IS_ZERO)) // SP is not allowed, but XZR is! || 32 == reg_size( d )) error (16, NULL) ; comma () ; offpc = (void *) (size_t) expri () - PC ; offpc = (offpc >> 12) & ((1 << 21)-1); unsigned immlo = offpc & 3; unsigned immhi = (offpc >> 2) & ((1 << 19)-1); instruction = 0x90000000; // C6.2.10 instruction |= (d & 0x1f) ; instruction |= (immhi << 5) | (immlo << 29) ; } break ; case AT: { char *ops[] = { "S1E1R", "S1E1W", "S1E0R", "S1E0W", "S1E2R", "S1E2W", "S12E1R", "S12E1W", "S12E0R", "S12E0W", "S1E3R", "S1E3W", "S1E1RP", "S1E1WP" }; unsigned bits[] = { 0x00000000, 0x00000020, 0x00000040, 0x00000060, 0x00040000, 0x00040020, 0x00040080, 0x000400a0, 0x000400c0, 0x000400e0, 0x00060000, 0x00060020, 0x00000100, 0x00000120 }; nxt () ; int op = lookup( ops, sizeof( ops ) / sizeof( ops[0] ) ) ; if (op == -1) error( 16, NULL ) ; instruction = 0xd5087800; // C6.2.18 instruction |= bits[op]; comma () ; unsigned d = reg () ; if (32 == reg_size( d ) ) error( 16, NULL ) ; instruction |= (d & 0x1f) ; } break ; case AUTDA: case AUTDB: { unsigned d = reg () ; comma () ; unsigned n = reg () ; if (32 == reg_size( d ) || 0 == reg_size( n )) error( 16, NULL ) ; instruction = 0xdac11800; // C6.2.19 if (mnemonic == AUTDB) instruction |= 0x00000400; // C6.2.20 instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; } break ; case AUTDZA: case AUTDZB: { unsigned d = reg () ; if (32 == reg_size( d ) ) error( 16, NULL ) ; instruction = 0xdac13be0; // C6.2.19 if (mnemonic == AUTDZB) instruction |= 0x00000400; // C6.2.20 instruction |= (d & 0x1f) << 0; } break ; case AUTIA: case AUTIB: { unsigned d = reg () ; comma () ; unsigned n = reg () ; if (32 == reg_size( d ) || 0 == reg_size( n )) error( 16, NULL ) ; instruction = 0xdac11000; // C6.2.21 if (mnemonic == AUTIB) instruction |= 0x00000400; // C6.2.22 instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; } break ; case AUTIZA: case AUTIZB: { unsigned d = reg () ; if (32 == reg_size( d ) ) error( 16, NULL ) ; instruction = 0xdac133e0; // C6.2.21 if (mnemonic == AUTIZB) instruction |= 0x00000400; // C6.2.22 instruction |= (d & 0x1f) << 0; } break ; case AUTIA1716: { instruction = 0xd503219f; // C6.2.21 } break; case AUTIB1716: { instruction = 0xd50321df; // C6.2.22 } break; case AUTIASP: { instruction = 0xd50323bf; // C6.2.21 } break; case AUTIBSP: { instruction = 0xd50323ff; // C6.2.22 } break; case AUTIAZ: { instruction = 0xd503239f; // C6.2.21 } break; case AUTIBZ: { instruction = 0xd50323df; // C6.2.22 } break; case B: case BL: { if (mnemonic == B && '.' == *esi) { esi++; instruction = 0x54000000; // C6.2.23 instruction |= validated_condition() ; int offpc = (void *) (size_t) expri () - PC ; instruction |= validated_literal_offset( offpc ) << 5; } else { if (!isspace( *esi )) error( 16, NULL ); switch (mnemonic) { case B: instruction = 0x14000000; break; // C6.2.24 case BL: instruction = 0x94000000; break; // C6.2.31 default: assembler_error() ; } int imm = (void *) (size_t) expri () - PC ; if ((((imm >> 28) != 0 && (imm >> 28) != -1) || (0 != (imm & 3))) && (liston & BIT5)) error (1, "Label is not within 128MB of the instruction, or is not word aliigned" ) ; instruction |= (imm & 0xffffffc) >> 2; } } break; case CBNZ: case CBZ: { unsigned t = reg () ; comma () ; unsigned word_data = 32 == reg_size( t ) ; unsigned size_bit = (word_data ? 0 : (1 << 31)) ; switch (mnemonic) { case CBNZ: instruction = 0x35000000; break; // C6.2.41 case CBZ: instruction = 0x34000000; break; // C6.2.42 default: assembler_error() ; } int offpc = (void *) (size_t) expri () - PC ; instruction |= size_bit; instruction |= validated_literal_offset( offpc ) << 5; instruction |= (t & 0x1f) << 0; } break; case TBNZ: case TBZ: { unsigned t = reg () ; comma () ; hash () ; int bit = expri () ; comma () ; if (bit < 0 || bit >= reg_size( t )) error( 16, "Bit numbers must be 0-31 for W registers, 0-63 for X registers" ) ; switch (mnemonic) { case TBNZ: instruction = 0x37000000; break; // C6.2.288 case TBZ: instruction = 0x36000000; break; // C6.2.289 default: assembler_error() ; } int offpc = (void *) (size_t) expri () - PC ; if ((offpc & 3) != 0 || offpc >= (1 << 16) || offpc < -(1 << 16)) error( 8, NULL ); if (bit >= 32) instruction |= (1 << 31) ; instruction |= (bit & 0x1f) << 19; instruction |= ((offpc >> 2) & 0x3fff) << 5; instruction |= (t & 0x1f) << 0; } break; case BLR: case BR: { switch (mnemonic) { case BLR: instruction = 0xd63f0000; break; // C6.2.32 case BR: instruction = 0xd61f0000; break; // C6.2.34 default: assembler_error() ; } unsigned n = reg () ; if (32 == reg_size( n ) ) error( 16, NULL ) ; instruction |= (n & 0x1f) << 5; } break; case BLRAA: case BLRAB: case BRAA: case BRAB: { switch (mnemonic) { case BLRAA: instruction = 0xd73f0800; break; // C6.2.32 case BLRAB: instruction = 0xd73f0c00; break; // C6.2.32 case BRAA: instruction = 0xd71f0800; break; // C6.2.35 case BRAB: instruction = 0xd71f0c00; break; // C6.2.35 default: assembler_error() ; } unsigned n = reg () ; comma () ; unsigned m = reg () ; if (32 == reg_size( n ) || 32 == reg_size( n ) ) error( 16, NULL ) ; instruction |= (n & 0x1f) << 5; instruction |= (m & 0x1f) << 0; } break; case BLRAAZ: case BLRABZ: case BRAAZ: case BRABZ: { switch (mnemonic) { case BLRAAZ: instruction = 0xd63f081f; break; // C6.2.32 case BLRABZ: instruction = 0xd63f0c1f; break; // C6.2.32 case BRAAZ: instruction = 0xd61f081f; break; // C6.2.35 case BRABZ: instruction = 0xd61f0c1f; break; // C6.2.35 default: assembler_error() ; } unsigned n = reg () ; if (32 == reg_size( n ) ) error( 16, NULL ) ; instruction |= (n & 0x1f) << 5; } break; case BRK: case HVC: case HLT: case SMC: case SVC: { switch (mnemonic) { case BRK: instruction = 0xd4200000; break; // C6.2.36 case HLT: instruction = 0xd4400000; break; // C6.2.82 case HVC: instruction = 0xd4000002; break; // C6.2.83 case SMC: instruction = 0xd4000003; break; // C6.2.216 case SVC: instruction = 0xd4000001; break; // C6.2.279 default: assembler_error() ; } hash () ; int imm = expri () ; if (imm < 0 || imm > 65535) error( 16, NULL ) ; instruction |= imm << 5; } break; case DCPS1: case DCPS2: case DCPS3: { switch (mnemonic) { case DCPS1: instruction = 0xd4a00001; break; // C6.2.68 case DCPS2: instruction = 0xd4a00002; break; // C6.2.69 case DCPS3: instruction = 0xd4a00003; break; // C6.2.70 default: assembler_error() ; } int imm = 0; if ('#' == nxt ()) { esi++; imm = expri () ; if (imm < 0 || imm > 65535) error( 16, NULL ) ; } instruction |= imm << 5; } break; case BFM: // Aliases that use a different bit identification scheme: case BFC: // C6.2.25 case BFI: // C6.2.26 case BFXIL: // C6.2.28 { unsigned d = reg () ; comma () ; unsigned n; if (mnemonic == BFC) // Second register is WZR/XZR { n = 31 | REGISTER_IS_ZERO | reg_size( d ) ; } else { n = reg () ; comma () ; } hash () ; int immr = expri () ; comma () ; hash () ; int imms = expri () ; unsigned word_data = 32 == reg_size( d ) ; unsigned size_bits = (word_data ? 0 : 0x80400000) ; if (mnemonic == BFC || mnemonic == BFI) { imms = imms - 1; // width is 1...bits } else if (mnemonic == BFXIL) { imms = immr + imms - 1; } if (reg_size( d ) != reg_size( n ) || immr < 0 || immr >= reg_size( d ) || imms < 0 || imms >= reg_size( d )) error( 16, NULL ) ; if (mnemonic == BFC || mnemonic == BFI) { immr = (-immr) & (reg_size( d ) - 1); } instruction = 0x33000000; // C6.2.27 instruction |= size_bits; instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; instruction |= (immr & 0x3f) << 16; instruction |= (imms & 0x3f) << 10; } break; case BIC: // C6.2.29 case BICS: // C6.2.30 { if ((mnemonic == BIC) && ('D' == nxt() || 'd' == nxt())) { instruction = validated_FB_SIMD_instruction( mnemonic ); break; } unsigned d = reg () ; comma () ; unsigned n = reg () ; comma () ; unsigned m = reg () ; int shift = 0; int amount = 0; unsigned word_data = 32 == reg_size( d ) ; unsigned size_bit = (word_data ? 0 : (1 << 31)) ; if (',' == nxt()) { comma () ; shift = shift_type() ; hash () ; amount = expri() ; if (amount < 0 || amount >= reg_size( d )) error( 16, NULL ) ; } if (reg_size( d ) != reg_size( n ) || amount < 0 || amount >= reg_size( d )) error( 16, NULL ) ; switch (mnemonic) { case BIC: instruction = 0x0a200000; break; // C6.2.29 case BICS: instruction = 0x6a200000; break; // C6.2.30 default: assembler_error() ; } instruction |= size_bit; instruction |= shift << 22; instruction |= amount << 10; instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; instruction |= (m & 0x1f) << 16; } break; /************************************************************************* * Byte/Halfword in memory instructions *************************************************************************/ case CASB: case CASAB: case CASALB: case CASLB: case LDADDB: case LDADDAB: case LDADDALB: case LDADDLB: case LDCLRB: case LDCLRAB: case LDCLRALB: case LDCLRLB: case LDEORB: case LDEORAB: case LDEORALB: case LDEORLB: case LDSETB: case LDSETAB: case LDSETALB: case LDSETLB: case LDSMAXB: case LDSMAXAB: case LDSMAXALB: case LDSMAXLB: case LDSMINB: case LDSMINAB: case LDSMINALB: case LDSMINLB: case LDUMAXB: case LDUMAXAB: case LDUMAXALB: case LDUMAXLB: case LDUMINB: case LDUMINAB: case LDUMINALB: case LDUMINLB: case CASH: case CASAH: case CASALH: case CASLH: case LDADDH: case LDADDAH: case LDADDALH: case LDADDLH: case LDCLRH: case LDCLRAH: case LDCLRALH: case LDCLRLH: case LDEORH: case LDEORAH: case LDEORALH: case LDEORLH: case LDSETH: case LDSETAH: case LDSETALH: case LDSETLH: case LDSMAXH: case LDSMAXAH: case LDSMAXALH: case LDSMAXLH: case LDSMINH: case LDSMINAH: case LDSMINALH: case LDSMINLH: case LDUMAXH: case LDUMAXAH: case LDUMAXALH: case LDUMAXLH: case LDUMINH: case LDUMINAH: case LDUMINALH: case LDUMINLH: { // , , [] (documentation suggests an optional , #0 in the brackets.) unsigned s = reg () ; comma() ; unsigned t = reg () ; comma() ; open_square() ; unsigned n = reg () ; close_square() ; switch (mnemonic) { case CASB: instruction = 0x08a07c00 | 0x00000000; break; // C6.2.37 case CASAB: instruction = 0x08a07c00 | 0x00400000; break; // C6.2.37 case CASALB: instruction = 0x08a07c00 | 0x00408000; break; // C6.2.37 case CASLB: instruction = 0x08a07c00 | 0x00008000; break; // C6.2.37 case LDADDB: instruction = 0x38200000 | 0x00000000; break; // C6.2.86 case LDADDAB: instruction = 0x38200000 | 0x00800000; break; // C6.2.86 case LDADDALB: instruction = 0x38200000 | 0x00c00000; break; // C6.2.86 case LDADDLB: instruction = 0x38200000 | 0x00400000; break; // C6.2.86 case LDCLRB: instruction = 0x38201000 | 0x00000000; break; // C6.2.99 case LDCLRAB: instruction = 0x38201000 | 0x00800000; break; // C6.2.99 case LDCLRALB: instruction = 0x38201000 | 0x00c00000; break; // C6.2.99 case LDCLRLB: instruction = 0x38201000 | 0x00400000; break; // C6.2.99 case LDEORB: instruction = 0x38202000 | 0x00000000; break; // C6.2.102 case LDEORAB: instruction = 0x38202000 | 0x00800000; break; // C6.2.102 case LDEORALB: instruction = 0x38202000 | 0x00c00000; break; // C6.2.102 case LDEORLB: instruction = 0x38202000 | 0x00400000; break; // C6.2.102 case LDSETB: instruction = 0x38203000 | 0x00000000; break; // C6.2.126 case LDSETAB: instruction = 0x38203000 | 0x00800000; break; // C6.2.126 case LDSETALB: instruction = 0x38203000 | 0x00c00000; break; // C6.2.126 case LDSETLB: instruction = 0x38203000 | 0x00400000; break; // C6.2.126 case LDSMAXB: instruction = 0x38204000 | 0x00000000; break; // C6.2.129 case LDSMAXAB: instruction = 0x38204000 | 0x00800000; break; // C6.2.129 case LDSMAXALB: instruction = 0x38204000 | 0x00c00000; break; // C6.2.129 case LDSMAXLB: instruction = 0x38204000 | 0x00400000; break; // C6.2.129 case LDSMINB: instruction = 0x38205000 | 0x00000000; break; // C6.2.132 case LDSMINAB: instruction = 0x38205000 | 0x00800000; break; // C6.2.132 case LDSMINALB: instruction = 0x38205000 | 0x00c00000; break; // C6.2.132 case LDSMINLB: instruction = 0x38205000 | 0x00400000; break; // C6.2.132 case LDUMAXB: instruction = 0x38206000 | 0x00000000; break; // C6.2.141 case LDUMAXAB: instruction = 0x38206000 | 0x00800000; break; // C6.2.141 case LDUMAXALB: instruction = 0x38206000 | 0x00c00000; break; // C6.2.141 case LDUMAXLB: instruction = 0x38206000 | 0x00400000; break; // C6.2.141 case LDUMINB: instruction = 0x38207000 | 0x00000000; break; // C6.2.144 case LDUMINAB: instruction = 0x38207000 | 0x00800000; break; // C6.2.144 case LDUMINALB: instruction = 0x38207000 | 0x00c00000; break; // C6.2.144 case LDUMINLB: instruction = 0x38207000 | 0x00400000; break; // C6.2.144 case CASH: instruction = 0x48a07c00 | 0x00000000; break; // C6.2.38 case CASAH: instruction = 0x48a07c00 | 0x00400000; break; // C6.2.38 case CASALH: instruction = 0x48a07c00 | 0x00408000; break; // C6.2.38 case CASLH: instruction = 0x48a07c00 | 0x00008000; break; // C6.2.38 case LDADDH: instruction = 0x78200000 | 0x00000000; break; // C6.2.87 case LDADDAH: instruction = 0x78200000 | 0x00800000; break; // C6.2.87 case LDADDALH: instruction = 0x78200000 | 0x00c00000; break; // C6.2.87 case LDADDLH: instruction = 0x78200000 | 0x00400000; break; // C6.2.87 case LDCLRH: instruction = 0x78201000 | 0x00000000; break; // C6.2.100 case LDCLRAH: instruction = 0x78201000 | 0x00800000; break; // C6.2.100 case LDCLRALH: instruction = 0x78201000 | 0x00c00000; break; // C6.2.100 case LDCLRLH: instruction = 0x78201000 | 0x00400000; break; // C6.2.100 case LDEORH: instruction = 0x78202000 | 0x00000000; break; // C6.2.103 case LDEORAH: instruction = 0x78202000 | 0x00800000; break; // C6.2.103 case LDEORALH: instruction = 0x78202000 | 0x00c00000; break; // C6.2.103 case LDEORLH: instruction = 0x78202000 | 0x00400000; break; // C6.2.103 case LDSETH: instruction = 0x78203000 | 0x00000000; break; // C6.2.127 case LDSETAH: instruction = 0x78203000 | 0x00800000; break; // C6.2.127 case LDSETALH: instruction = 0x78203000 | 0x00c00000; break; // C6.2.127 case LDSETLH: instruction = 0x78203000 | 0x00400000; break; // C6.2.127 case LDSMAXH: instruction = 0x78204000 | 0x00000000; break; // C6.2.130 case LDSMAXAH: instruction = 0x78204000 | 0x00800000; break; // C6.2.130 case LDSMAXALH: instruction = 0x78204000 | 0x00c00000; break; // C6.2.130 case LDSMAXLH: instruction = 0x78204000 | 0x00400000; break; // C6.2.130 case LDSMINH: instruction = 0x78205000 | 0x00000000; break; // C6.2.133 case LDSMINAH: instruction = 0x78205000 | 0x00800000; break; // C6.2.133 case LDSMINALH: instruction = 0x78205000 | 0x00c00000; break; // C6.2.133 case LDSMINLH: instruction = 0x78205000 | 0x00400000; break; // C6.2.133 case LDUMAXH: instruction = 0x78206000 | 0x00000000; break; // C6.2.142 case LDUMAXAH: instruction = 0x78206000 | 0x00800000; break; // C6.2.142 case LDUMAXALH: instruction = 0x78206000 | 0x00c00000; break; // C6.2.142 case LDUMAXLH: instruction = 0x78206000 | 0x00400000; break; // C6.2.142 case LDUMINH: instruction = 0x78207000 | 0x00000000; break; // C6.2.145 case LDUMINAH: instruction = 0x78207000 | 0x00800000; break; // C6.2.145 case LDUMINALH: instruction = 0x78207000 | 0x00c00000; break; // C6.2.145 case LDUMINLH: instruction = 0x78207000 | 0x00400000; break; // C6.2.145 default: assembler_error() ; } if (64 == reg_size( s ) || 64 == reg_size( t ) || 32 == reg_size( n ) ) error( 16, NULL ) ; instruction |= (s & 0x1f) << 16; instruction |= (t & 0x1f) << 0; instruction |= (n & 0x1f) << 5; } break; case LDAPR: case LDAPRB: case LDAPRH: case LDAXR: case LDAXRB: case LDAXRH: case LDAR: case LDARB: case LDARH: case LDLAR: case LDLARB: case LDLARH: case LDXR: case STLLRB: case STLLRH: case STLLR: case STLR: case STLRB: case STLRH: { unsigned only_32bit = 0; switch (mnemonic) { case LDAPR: instruction = 0xb8bfc000; only_32bit = 0; break; // C6.2.89 case LDAPRB:instruction = 0x38bfc000; only_32bit = 1; break; // C6.2.90 case LDAPRH:instruction = 0x78bfc000; only_32bit = 1; break; // C6.2.91 case LDAXR: instruction = 0x885ffc00; only_32bit = 0; break; // C6.2.96 case LDAXRB:instruction = 0x085ffc00; only_32bit = 1; break; // C6.2.97 case LDAXRH:instruction = 0x485ffc00; only_32bit = 1; break; // C6.2.98 case LDAR: instruction = 0x88dffc00; only_32bit = 0; break; // C6.2.92 case LDARB: instruction = 0x08dffc00; only_32bit = 1; break; // C6.2.93 case LDARH: instruction = 0x48dffc00; only_32bit = 1; break; // C6.2.94 case LDLAR: instruction = 0x88df7c00; only_32bit = 0; break; // C6.2.107 case LDLARB:instruction = 0x08df7c00; only_32bit = 1; break; // C6.2.105 case LDLARH:instruction = 0x48df7c00; only_32bit = 1; break; // C6.2.106 case LDXR: instruction = 0x885f7c00; only_32bit = 0; break; // C6.2.154 case STLLRB:instruction = 0x089f7c00; only_32bit = 1; break; // C6.2.230 case STLLRH:instruction = 0x489f7c00; only_32bit = 1; break; // C6.2.231 case STLLR: instruction = 0x889f7c00; only_32bit = 0; break; // C6.2.232 case STLR: instruction = 0x889ffc00; only_32bit = 0; break; // C6.2.233 case STLRB: instruction = 0x089ffc00; only_32bit = 1; break; // C6.2.234 case STLRH: instruction = 0x489ffc00; only_32bit = 1; break; // C6.2.235 default: assembler_error() ; } // , [ {, #0}] unsigned t = reg () ; comma() ; open_square() ; unsigned n = reg () ; optional_zero_offset() ; close_square() ; unsigned word_data = 32 == reg_size( t ) ; unsigned size_bit = word_data ? 0 : (1 << 30) ; if (32 == reg_size( n ) || (only_32bit && !word_data)) error( 16, NULL ) ; instruction |= size_bit; instruction |= (t & 0x1f) << 0; instruction |= (n & 0x1f) << 5; } break; case SWP: case SWPA: case SWPAL: case SWPL: case SWPB: case SWPAB: case SWPALB: case SWPLB: case SWPH: case SWPAH: case SWPALH: case SWPLH: { unsigned only_32bit = 0; switch (mnemonic) { case SWPB: instruction = 0x38208000; only_32bit = 1; break; // C6.2.280 case SWPAB: instruction = 0x38a08000; only_32bit = 1; break; // C6.2.280 case SWPALB: instruction = 0x38e08000; only_32bit = 1; break; // C6.2.280 case SWPLB: instruction = 0x38608000; only_32bit = 1; break; // C6.2.280 case SWPH: instruction = 0x78208000; only_32bit = 1; break; // C6.2.281 case SWPAH: instruction = 0x78a08000; only_32bit = 1; break; // C6.2.281 case SWPALH: instruction = 0x78e08000; only_32bit = 1; break; // C6.2.281 case SWPLH: instruction = 0x78608000; only_32bit = 1; break; // C6.2.281 case SWP: instruction = 0xb8208000; only_32bit = 0; break; // C6.2.282 case SWPA: instruction = 0xb8a08000; only_32bit = 0; break; // C6.2.282 case SWPAL: instruction = 0xb8e08000; only_32bit = 0; break; // C6.2.282 case SWPL: instruction = 0xb8608000; only_32bit = 0; break; // C6.2.282 default: assembler_error() ; } // , |, [ {, #0}] unsigned s = reg () ; comma() ; unsigned t = reg () ; comma() ; open_square() ; unsigned n = reg () ; optional_zero_offset() ; close_square() ; if (reg_size( t ) != reg_size( s ) || (only_32bit && 64 == reg_size( t ) ) || 32 == reg_size( n ) ) error( 16, NULL ) ; if (!only_32bit && 64 == reg_size( t ) ) { instruction |= (1 << 30) ; } instruction |= (t & 0x1f) << 0; instruction |= (n & 0x1f) << 5; instruction |= (s & 0x1f) << 16; } break; case SYSL: case SYS: { int op1; int cn = 0; int cm = 0; int op2; unsigned t = 31 | 64; if (mnemonic == SYSL) { instruction = 0xd5280000; // C6.2.286 t = reg () ; comma() ; } else { instruction = 0xd5080000; // C6.2.286 } hash() ; op1 = expri () ; comma () ; if ('C' == nxt() || 'c' == nxt()) { esi++; cn = expri () ; } else error( 16, 0 ) ; comma () ; if ('C' == nxt() || 'c' == nxt()) { esi++; cm = expri () ; } else error( 16, 0 ) ; comma () ; hash() ; op2 = expri () ; if (mnemonic == SYS && ',' == nxt()) { comma() ; t = reg () ; } if (op1 < 0 || op1 > 7 || cm < 0 || cm > 15 || cn < 0 || cn > 15 || op2 < 0 || op2 > 7 || 32 == reg_size( t ) ) error( 16, NULL ) ; instruction |= op1 << 16; instruction |= cn << 12; instruction |= cm << 8; instruction |= op2 << 5; instruction |= (t & 0x1f) << 0; } break; case TLBI: { char *ops[] = { "ALLE1", "ALLE1IS", "ALLE2", "ALLE2IS", "ALLE3", "ALLE3IS", "ASIDE1", "ASIDE1IS", "IPAS2E1", "IPAS2E1IS", "IPAS2LE1", "IPAS2LE1IS", "VAAE1", "VAAE1IS", "VAALE1", "VAALE1IS", "VAE1", "VAE1IS", "VAE2", "VAE2IS", "VAE3", "VAE3IS", "VALE1", "VALE1IS", "VALE2", "VALE2IS", "VALE3", "VALE3IS", "VMALLE1", "VMALLE1IS", "VMALLS12E1", "VMALLS12E1IS", }; unsigned code[] = { 0x47080 , 0x43080 , 0x47000 , 0x43000 , 0x67000 , 0x63000 , 0x00740 , 0x00340 , 0x44020 , 0x40020 , 0x440a0 , 0x400a0 , 0x00760 , 0x00360 , 0x007e0 , 0x003e0 , 0x00720 , 0x00320 , 0x47020 , 0x43020 , 0x67020 , 0x63020 , 0x007a0 , 0x003a0 , 0x470a0 , 0x430a0 , 0x670a0 , 0x630a0 , 0x07000 , 0x03000 , 0x470c0 , 0x430c0 }; unsigned t = 31; int op = lookup( ops, sizeof( ops ) / sizeof( ops[0] ) ) ; if (op == -1 || !isspace( *esi )) error( 16, NULL ) ; instruction = 0xd5088000; instruction |= code[op]; if (',' == nxt()) { comma() ; t = reg () ; } instruction |= (t & 0x1f) << 0; } break; case STLXP: case STXP: { switch (mnemonic) { case STLXP: instruction = 0x88208000; break; // C6.2.236 case STXP: instruction = 0x88200000; break; // C6.2.269 default: assembler_error() ; } unsigned s = reg () ; comma() ; unsigned t1 = reg () ; comma() ; unsigned t2 = reg () ; comma() ; open_square() ; unsigned n = reg () ; optional_zero_offset() ; close_square() ; if (64 == reg_size( s ) || reg_size( t1 ) != reg_size( t2 ) || (32 == reg_size( n ) )) error( 16, NULL ) ; unsigned word_data = 32 == reg_size( t1 ) ; unsigned size_bit = word_data ? 0 : (1 << 30) ; instruction |= size_bit; instruction |= (t1 & 0x1f) << 0; instruction |= (t2 & 0x1f) << 10; instruction |= (s & 0x1f) << 16; instruction |= (n & 0x1f) << 5; } break; case STLXR: case STLXRB: case STLXRH: { switch (mnemonic) { case STLXR: instruction = 0x8800fc00; break; // C6.2.237 case STLXRB: instruction = 0x0800fc00; break; // C6.2.238 case STLXRH: instruction = 0x4800fc00; break; // C6.2.239 default: assembler_error() ; } unsigned s = reg () ; comma() ; unsigned t = reg () ; comma() ; open_square() ; unsigned n = reg () ; optional_zero_offset() ; close_square() ; unsigned word_data = 32 == reg_size( t ) ; unsigned size_bit = word_data ? 0 : (1 << 30) ; if (64 == reg_size( s ) || (32 == reg_size( n ) ) || (!word_data && mnemonic != STLXR)) error( 16, NULL ) ; instruction |= size_bit; instruction |= (t & 0x1f) << 0; instruction |= (s & 0x1f) << 16; instruction |= (n & 0x1f) << 5; } break; case LDRAA: case LDRAB: { switch (mnemonic) { case LDRAA: instruction = 0xf8200400; break; // C6.2.114 case LDRAB: instruction = 0xf8a00400; break; // C6.2.114 default: assembler_error() ; } unsigned t = reg () ; comma() ; open_square() ; unsigned n = reg () ; int offset = 0; if (',' == nxt()) { comma () ; hash(); offset = expri () ; } close_square() ; if ('!' == nxt()) { esi++; instruction |= (1 << 11) ; // W } if (32 == reg_size( t ) || 32 == reg_size( n ) || 0 != (offset & 7) || offset < -4096 || offset > 4088) error( 16, NULL ) ; instruction |= (offset & 0x0ff8) << (12 - 3) ; instruction |= (offset & 0x1000) << (22 - 12) ; // sign bit instruction |= (t & 0x1f) << 0; instruction |= (n & 0x1f) << 5; } break; case CAS: case CASA: case CASAL: case CASL: case LDADD: case LDADDA: case LDADDAL: case LDADDL: case LDCLR: case LDCLRA: case LDCLRAL: case LDCLRL: case LDEOR: case LDEORA: case LDEORAL: case LDEORL: case LDSET: case LDSETA: case LDSETAL: case LDSETL: case LDSMAX: case LDSMAXA: case LDSMAXAL: case LDSMAXL: case LDSMIN: case LDSMINA: case LDSMINAL: case LDSMINL: case LDUMAX: case LDUMAXA: case LDUMAXAL: case LDUMAXL: case LDUMIN: case LDUMINA: case LDUMINAL: case LDUMINL: { // , , [] unsigned s = reg () ; comma() ; unsigned t = reg () ; comma() ; open_square() ; unsigned n = reg () ; close_square() ; switch (mnemonic) { case CAS: instruction = 0x88a07c00 | 0x00000000; break; // C6.2.37 case CASA: instruction = 0x88a07c00 | 0x00400000; break; // C6.2.37 case CASAL: instruction = 0x88a07c00 | 0x00408000; break; // C6.2.37 case CASL: instruction = 0x88a07c00 | 0x00008000; break; // C6.2.37 case LDADD: instruction = 0xb8200000 | 0x00000000; break; // C6.2.88 case LDADDA: instruction = 0xb8200000 | 0x00800000; break; // C6.2.88 case LDADDAL: instruction = 0xb8200000 | 0x00c00000; break; // C6.2.88 case LDADDL: instruction = 0xb8200000 | 0x00400000; break; // C6.2.88 case LDCLR: instruction = 0xb8201000 | 0x00000000; break; // C6.2.101 case LDCLRA: instruction = 0xb8201000 | 0x00800000; break; // C6.2.101 case LDCLRAL: instruction = 0xb8201000 | 0x00c00000; break; // C6.2.101 case LDCLRL: instruction = 0xb8201000 | 0x00400000; break; // C6.2.101 case LDEOR: instruction = 0xb8202000 | 0x00000000; break; // C6.2.104 case LDEORA: instruction = 0xb8202000 | 0x00800000; break; // C6.2.104 case LDEORAL: instruction = 0xb8202000 | 0x00c00000; break; // C6.2.104 case LDEORL: instruction = 0xb8202000 | 0x00400000; break; // C6.2.104 case LDSET: instruction = 0xb8203000 | 0x00000000; break; // C6.2.128 case LDSETA: instruction = 0xb8203000 | 0x00800000; break; // C6.2.128 case LDSETAL: instruction = 0xb8203000 | 0x00c00000; break; // C6.2.128 case LDSETL: instruction = 0xb8203000 | 0x00400000; break; // C6.2.128 case LDSMAX: instruction = 0xb8204000 | 0x00000000; break; // C6.2.131 case LDSMAXA: instruction = 0xb8204000 | 0x00800000; break; // C6.2.131 case LDSMAXAL: instruction = 0xb8204000 | 0x00c00000; break; // C6.2.131 case LDSMAXL: instruction = 0xb8204000 | 0x00400000; break; // C6.2.131 case LDSMIN: instruction = 0xb8205000 | 0x00000000; break; // C6.2.131 case LDSMINA: instruction = 0xb8205000 | 0x00800000; break; // C6.2.131 case LDSMINAL: instruction = 0xb8205000 | 0x00c00000; break; // C6.2.131 case LDSMINL: instruction = 0xb8205000 | 0x00400000; break; // C6.2.131 case LDUMAX: instruction = 0xb8206000 | 0x00000000; break; // C6.2.131 case LDUMAXA: instruction = 0xb8206000 | 0x00800000; break; // C6.2.131 case LDUMAXAL: instruction = 0xb8206000 | 0x00c00000; break; // C6.2.131 case LDUMAXL: instruction = 0xb8206000 | 0x00400000; break; // C6.2.131 case LDUMIN: instruction = 0xb8207000 | 0x00000000; break; // C6.2.131 case LDUMINA: instruction = 0xb8207000 | 0x00800000; break; // C6.2.131 case LDUMINAL: instruction = 0xb8207000 | 0x00c00000; break; // C6.2.131 case LDUMINL: instruction = 0xb8207000 | 0x00400000; break; // C6.2.131 default: assembler_error() ; } unsigned word_data = 32 == reg_size( s ) ; unsigned size_bit = (word_data ? 0 : (1 << 30)) ; if (reg_size( s ) != reg_size( t ) || 32 == reg_size( n ) ) error( 16, NULL ) ; instruction |= size_bit; instruction |= (s & 0x1f) << 16; instruction |= (t & 0x1f) << 0; instruction |= (n & 0x1f) << 5; } break; case STADDB: // C6.2.221 case STADDLB: // C6.2.221 case STADDH: // C6.2.222 case STADDLH: // C6.2.222 case STCLRB: // C6.2.224 case STCLRLB: // C6.2.224 case STCLRH: // C6.2.225 case STCLRLH: // C6.2.225 case STEORB: // C6.2.227 case STEORLB: // C6.2.227 case STEORH: // C6.2.228 case STEORLH: // C6.2.228 case STSETB: // C6.2.248 case STSETLB: // C6.2.248 case STSETH: // C6.2.249 case STSETLH: // C6.2.249 case STSMAXB: // C6.2.251 case STSMAXLB: // C6.2.251 case STSMAXH: // C6.2.252 case STSMAXLH: // C6.2.252 case STSMINB: // C6.2.254 case STSMINLB: // C6.2.254 case STSMINH: // C6.2.255 case STSMINLH: // C6.2.255 case STUMAXB: // C6.2.260 case STUMAXLB: // C6.2.260 case STUMAXH: // C6.2.261 case STUMAXLH: // C6.2.261 case STUMINB: // C6.2.263 case STUMINLB: // C6.2.263 case STUMINH: // C6.2.264 case STUMINLH: // C6.2.264 { // , , [] (documentation suggests an optional , #0 in the brackets.) unsigned s = reg () ; comma() ; open_square() ; unsigned n = reg () ; close_square() ; switch (mnemonic) { case STADDB: instruction = 0x38200000 | 0x00000000; break; case STADDLB: instruction = 0x38200000 | 0x00400000; break; case STADDH: instruction = 0x78200000 | 0x00000000; break; case STADDLH: instruction = 0x78200000 | 0x00400000; break; case STCLRB: instruction = 0x38201000 | 0x00000000; break; case STCLRLB: instruction = 0x38201000 | 0x00400000; break; case STCLRH: instruction = 0x78201000 | 0x00000000; break; case STCLRLH: instruction = 0x78201000 | 0x00400000; break; case STEORB: instruction = 0x38202000 | 0x00000000; break; case STEORLB: instruction = 0x38202000 | 0x00400000; break; case STEORH: instruction = 0x78202000 | 0x00000000; break; case STEORLH: instruction = 0x78202000 | 0x00400000; break; case STSETB: instruction = 0x38203000 | 0x00000000; break; case STSETLB: instruction = 0x38203000 | 0x00400000; break; case STSETH: instruction = 0x78203000 | 0x00000000; break; case STSETLH: instruction = 0x78203000 | 0x00400000; break; case STSMAXB: instruction = 0x38204000 | 0x00000000; break; case STSMAXLB: instruction = 0x38204000 | 0x00400000; break; case STSMAXH: instruction = 0x78204000 | 0x00000000; break; case STSMAXLH: instruction = 0x78204000 | 0x00400000; break; case STSMINB: instruction = 0x38205000 | 0x00000000; break; case STSMINLB: instruction = 0x38205000 | 0x00400000; break; case STSMINH: instruction = 0x78205000 | 0x00000000; break; case STSMINLH: instruction = 0x78205000 | 0x00400000; break; case STUMAXB: instruction = 0x38206000 | 0x00000000; break; case STUMAXLB: instruction = 0x38206000 | 0x00400000; break; case STUMAXH: instruction = 0x78206000 | 0x00000000; break; case STUMAXLH: instruction = 0x78206000 | 0x00400000; break; case STUMINB: instruction = 0x38207000 | 0x00000000; break; case STUMINLB: instruction = 0x38207000 | 0x00400000; break; case STUMINH: instruction = 0x78207000 | 0x00000000; break; case STUMINLH: instruction = 0x78207000 | 0x00400000; break; default: assembler_error() ; } if (64 == reg_size( s ) || 32 == reg_size( n ) ) error( 16, NULL ) ; instruction |= (s & 0x1f) << 16; instruction |= 31; instruction |= (n & 0x1f) << 5; } break; case STADD: // C6.2.223 case STADDL: // C6.2.223 case STCLR: // C6.2.226 case STCLRL: // C6.2.226 case STEOR: // C6.2.229 case STEORL: // C6.2.229 case STSET: // C6.2.250 case STSETL: // C6.2.250 case STSMAX: // C6.2.253 case STSMAXL: // C6.2.253 case STSMIN: // C6.2.256 case STSMINL: // C6.2.256 case STUMAX: // C6.2.262 case STUMAXL: // C6.2.262 case STUMIN: // C6.2.265 case STUMINL: // C6.2.265 { // , , [] // Equivalent to LD* , , [] unsigned s = reg () ; comma() ; open_square() ; unsigned n = reg () ; close_square() ; switch (mnemonic) { case STADD: instruction = 0xb8200000 | 0x0000001f; break; case STADDL: instruction = 0xb8200000 | 0x0040001f; break; case STCLR: instruction = 0xb8201000 | 0x0000001f; break; case STCLRL: instruction = 0xb8201000 | 0x0040001f; break; case STEOR: instruction = 0xb8202000 | 0x0000001f; break; case STEORL: instruction = 0xb8202000 | 0x0040001f; break; case STSET: instruction = 0xb8203000 | 0x0000001f; break; case STSETL: instruction = 0xb8203000 | 0x0040001f; break; case STSMAX: instruction = 0xb8204000 | 0x0000001f; break; case STSMAXL: instruction = 0xb8204000 | 0x0040001f; break; case STSMIN: instruction = 0xb8205000 | 0x0000001f; break; case STSMINL: instruction = 0xb8205000 | 0x0040001f; break; case STUMAX: instruction = 0xb8206000 | 0x0000001f; break; case STUMAXL: instruction = 0xb8206000 | 0x0040001f; break; case STUMIN: instruction = 0xb8207000 | 0x0000001f; break; case STUMINL: instruction = 0xb8207000 | 0x0040001f; break; default: assembler_error() ; } unsigned word_data = 32 == reg_size( s ) ; unsigned size_bit = (word_data ? 0 : (1 << 30)) ; if (32 == reg_size( n ) ) error( 16, NULL ) ; instruction |= size_bit; instruction |= (s & 0x1f) << 16; instruction |= (n & 0x1f) << 5; } break; case CASP: case CASPA: case CASPAL: case CASPL: { // , , [] // Equivalent to LD* , , [] unsigned s = reg () ; comma() ; unsigned s1 = reg () ; comma() ; unsigned t = reg () ; comma() ; unsigned t1 = reg () ; comma() ; open_square() ; unsigned n = reg () ; close_square() ; switch (mnemonic) // C6.2.39 { case CASP: instruction = 0x08207c00 | 0x00000000; break; case CASPA: instruction = 0x08207c00 | 0x00400000; break; case CASPAL:instruction = 0x08207c00 | 0x00408000; break; case CASPL: instruction = 0x08207c00 | 0x00008000; break; default: assembler_error() ; } unsigned word_data = 32 == reg_size( s ) ; unsigned size_bit = (word_data ? 0 : (1 << 30)) ; if (reg_size( s ) != reg_size( t ) || ((s1 & 0x7f) != s + 1) // X30, XZR or W30, WZR is allowed || ((t1 & 0x7f) != t + 1) // X30, XZR or W30, WZR is allowed || 32 == reg_size( n ) ) error( 16, "Pairs of registers must have sequential numbers and all be the same width" ) ; instruction |= size_bit; instruction |= (s & 0x1f) << 16; instruction |= (t & 0x1f) << 0; instruction |= (n & 0x1f) << 5; } break; case CCMN: case CCMP: { switch (mnemonic) { case CCMN: instruction = 0x3a400000; break; // C6.2.43, C6.2.44 case CCMP: instruction = 0x7a400000; break; // C6.2.45, C6.2.46 default: assembler_error() ; } unsigned n = reg () ; comma () ; unsigned word_data = 32 == reg_size( n ) ; unsigned size_bit = (word_data ? 0 : (1 << 31)) ; if ('#' == nxt()) { hash () ; instruction |= 0x800; // Immediate form C6.2.43, C6.2.45 int imm5 = expri () ; if (imm5 < 0 || imm5 > 31) error( 8, NULL ) ; instruction |= imm5 << 16; } else { unsigned m = reg() ; if (reg_size( n ) != reg_size( m )) error( 16, NULL ) ; instruction |= (m & 0x1f) << 16; } comma () ; hash () ; int new_cond = expri () ; if (new_cond < 0 || new_cond > 15) error( 8, NULL ) ; instruction |= new_cond; comma () ; instruction |= validated_condition() << 12; instruction |= size_bit; instruction |= (n & 0x1f) << 5; } break; case CLREX: { int CRm = 15; if ('#' == nxt()) { hash() ; CRm = expri() ; if (CRm < 0 || CRm >15) error( 8, NULL ) ; } instruction = 0xd503305f; // C6.2.49 instruction |= CRm << 8; } break; case CLS: case CLZ: { if ('D' == nxt() || 'd' == nxt()) { instruction = validated_FB_SIMD_instruction( mnemonic ); break; } unsigned d = reg () ; comma () ; unsigned n = reg () ; if (reg_size( d ) != reg_size( n )) { error( 16, NULL ) ; } unsigned word_data = 32 == reg_size( d ) ; unsigned size_bit = (word_data ? 0 : (1 << 31)) ; switch (mnemonic) { case CLS: instruction = 0x5ac01400; break; // C6.2.50 case CLZ: instruction = 0x5ac01000; break; // C6.2.51 default: assembler_error() ; } instruction |= size_bit; instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; } break; case CSEL: case CSINC: case CSINV: case CSNEG: { unsigned d = reg () ; comma () ; unsigned n = reg () ; comma () ; unsigned m = reg () ; comma () ; if (reg_size( d ) != reg_size( n ) || reg_size( d ) != reg_size( m )) error( 16, NULL ) ; unsigned word_data = 32 == reg_size( d ) ; unsigned size_bit = (word_data ? 0 : (1 << 31)) ; switch (mnemonic) { case CSEL: instruction = 0x1a800000; break; // C6.2.61 case CSINC: instruction = 0x1a800400; break; // C6.2.64 case CSINV: instruction = 0x5a800000; break; // C6.2.65 case CSNEG: instruction = 0x5a800400; break; // C6.2.66 default: assembler_error() ; } instruction |= size_bit; instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; instruction |= (m & 0x1f) << 16; instruction |= validated_condition() << 12; } break; case CINC: case CINV: case CNEG: { unsigned d = reg () ; comma () ; unsigned n = reg () ; comma () ; if (reg_size( d ) != reg_size( n )) error( 16, NULL ) ; unsigned word_data = 32 == reg_size( d ) ; unsigned size_bit = (word_data ? 0 : (1 << 31)) ; switch (mnemonic) { case CINC: instruction = 0x1a800400; break; // C6.2.47 case CINV: instruction = 0x5a800000; break; // C6.2.48 case CNEG: instruction = 0x5a800400; break; // C6.2.58 default: assembler_error() ; } instruction |= size_bit; instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; instruction |= (n & 0x1f) << 16; // Same register twice instruction |= validated_condition() << 12; instruction ^= (1 << 12) ; // Invert the condition } break; case CSET: case CSETM: { unsigned d = reg () ; comma () ; unsigned word_data = 32 == reg_size( d ) ; unsigned size_bit = (word_data ? 0 : (1 << 31)) ; switch (mnemonic) { case CSET: instruction = 0x1a9f07e0; break; // C6.2.62 case CSETM: instruction = 0x5a9f03e0; break; // C6.2.63 default: assembler_error() ; } instruction |= size_bit; instruction |= (d & 0x1f) << 0; int cond = validated_condition() ; if (cond < 0 || cond > 13) error( 16, NULL ) ; instruction |= cond << 12; instruction ^= (1 << 12) ; // Invert the condition } break; case CRC32B: case CRC32H: case CRC32W: case CRC32X: case CRC32CB: case CRC32CH: case CRC32CW: case CRC32CX: { unsigned d = reg () ; comma () ; unsigned n = reg () ; comma () ; unsigned m = reg () ; if (64 == reg_size( d ) || 64 == reg_size( n ) || ((64 == reg_size( m )) != (mnemonic == CRC32X || mnemonic == CRC32CX))) error( 16, NULL ) ; switch (mnemonic) { case CRC32B: instruction = 0x1ac04000; break; // C6.2.59 case CRC32H: instruction = 0x1ac04400; break; // C6.2.59 case CRC32W: instruction = 0x1ac04800; break; // C6.2.59 case CRC32X: instruction = 0x9ac04c00; break; // C6.2.59 case CRC32CB: instruction = 0x1ac05000; break; // C6.2.59 case CRC32CH: instruction = 0x1ac05400; break; // C6.2.59 case CRC32CW: instruction = 0x1ac05800; break; // C6.2.59 case CRC32CX: instruction = 0x9ac05c00; break; // C6.2.59 default: assembler_error() ; } instruction |= (m & 0x1f) << 16; instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; } break; case DC: { char *ops[] = { "IVAC", "ISW", "CSW", "CISW", "ZVA", "CVAC", "CVAU", "CIVAC", "CVAP" }; unsigned code[] = { 0x00000620, 0x00000640, 0x00000a40, 0x00000e40, 0x00030420, 0x00030a20, 0x00030b20, 0x00030c20 }; int op = lookup( ops, sizeof( ops ) / sizeof( ops[0] ) ) ; comma () ; unsigned d = reg () ; if (op < 0 || (32 == reg_size( d ) ) || !isspace( *esi )) error( 16, NULL ) ; instruction = 0xd5087000; // C6.2.67 instruction |= code[op]; instruction |= (d & 0x1f) ; } break; case IC: { char *ops[] = { "IALLU", "IALLUIS", "IVAU" }; unsigned code[] = { 0x00000500, 0x00000100, 0x00030520 }; int op = lookup( ops, sizeof( ops ) / sizeof( ops[0] ) ) ; unsigned d = 64 | 0b11111; if (',' == nxt()) { comma () ; d = reg () ; } if (op < 0 || (32 == reg_size( d ) )) error( 16, NULL ) ; instruction = 0xd5087000; // C6.2.84 instruction |= code[op]; instruction |= (d & 0x1f) ; } break; case DMB: case DSB: case ISB: { char *ops[] = { "SY", "ST", "LD", "ISH", "ISHST", "ISHLD", "NSH", "NSHST", "NSHLD", "OSH", "OSHST", "OSHLD" }; unsigned code[] = { 0b1111, 0b1110, 0b1101, 0b1011, 0b1010, 0b1001, 0b0111, 0b0110, 0b0101, 0b0011, 0b0010, 0b0001 }; switch (mnemonic) { case DMB: instruction = 0xd50330bf; break; // C6.2.71 case DSB: instruction = 0xd503309f; break; // C6.2.73 case ISB: instruction = 0xd50330df; break; // C6.2.73 default: assembler_error() ; } int CRm = 0; if ('#' == nxt() ) { hash() ; CRm = expri() ; if (CRm < 0 || CRm > 15) error( 8, NULL ) ; } else if (mnemonic == ISB) { // Optional SY, encoded as 15 if (0 == strnicmp ((const char *)esi, "SY", 2)) { esi += 2; } CRm = 15; } else { int op = lookup( ops, sizeof( ops ) / sizeof( ops[0] ) ) ; if (op < 0) error( 16, NULL ) ; CRm = code[op]; } instruction |= CRm << 8; } break; case LDAXP: { unsigned t1 = reg () ; comma() ; unsigned t2 = reg () ; comma() ; unsigned word_data = 32 == reg_size( t1 ) ; unsigned size_bit = (word_data ? 0 : (1 << 30)) ; open_square() ; unsigned n = reg () ; optional_zero_offset() ; close_square () ; if (32 == reg_size( n ) || reg_size( t1 ) != reg_size( t2 )) error( 16, NULL ) ; instruction = 0x887f8000; // C6.2.95 instruction |= size_bit; instruction |= (t1 & 0x1f) << 0; instruction |= (t2 & 0x1f) << 10; instruction |= (n & 0x1f) << 5; } break; case LDNP: case STNP: { switch (mnemonic) { case LDNP: instruction = 0x28400000; break; // C6.2.108 case STNP: instruction = 0x28000000; break; // C6.2.240 default: assembler_error() ; } unsigned t1 = reg () ; comma() ; unsigned t2 = reg () ; comma() ; unsigned word_data = 32 == reg_size( t1 ) ; unsigned size_bit = (word_data ? 0 : (1 << 31)) ; struct addressing addressing = read_addressing(); if ((addressing.mode != NO_OFFSET && addressing.mode != IMMEDIATE) || reg_size( t1 ) != reg_size( t2 ) || (addressing.imm & 3) != 0 || (!word_data && (addressing.imm & 7) != 0) || addressing.imm < -512 || addressing.imm > 504 || (word_data && (addressing.imm < -256 || addressing.imm > 252))) error( 16, NULL ) ; instruction |= size_bit; instruction |= (t1 & 0x1f) << 0; instruction |= (t2 & 0x1f) << 10; instruction |= (addressing.n & 0x1f) << 5; instruction |= ((addressing.imm >> (word_data ? 2 : 3)) & 0x7f) << 15; } break; case LDP: case LDPSW: case STP: { switch (mnemonic) { case LDP: instruction = 0x28400000; break; // C6.2.109 case LDPSW: instruction = 0x68400000; break; // C6.2.110 case STP: instruction = 0x28000000; break; // C6.2.241 default: assembler_error() ; } unsigned t1 = reg () ; comma() ; unsigned t2 = reg () ; comma() ; // The whole point of LDPSW is to read words and extend them, hence: unsigned word_data = (32 == reg_size( t1 )) || (mnemonic == LDPSW) ; unsigned size_bit = (word_data ? 0 : (1 << 31)) ; struct addressing addressing = read_addressing(); if (reg_size( t1 ) != reg_size( t2 ) || (addressing.imm & 3) != 0 || (!word_data && (addressing.imm & 7) != 0) || addressing.imm < -512 || addressing.imm > 504 || (word_data && (addressing.imm < -256 || addressing.imm > 252))) error( 16, NULL ) ; // Post-indexed: 0x00800000 // Pre-indexed: 0x01800000 // Signed offset:0x01000000 switch (addressing.mode) { case NO_OFFSET: case IMMEDIATE: instruction |= 0x01000000; break; // Signed offset case PRE_INDEXED: instruction |= 0x01800000; break; case POST_INDEXED: instruction |= 0x00800000; break; default: error( 16, NULL ); } instruction |= size_bit; instruction |= (t1 & 0x1f) << 0; instruction |= (t2 & 0x1f) << 10; instruction |= (addressing.n & 0x1f) << 5; instruction |= ((addressing.imm >> (word_data ? 2 : 3)) & 0x7f) << 15; } break; case LDR: case STr: { if ('B' == nxt() || 'b' == nxt() || 'H' == nxt() || 'h' == nxt() || 'S' == nxt() || 's' == nxt() || 'D' == nxt() || 'd' == nxt() || 'Q' == nxt() || 'q' == nxt()) { instruction = validated_FB_SIMD_instruction( mnemonic ); break; } unsigned load_store_bit = (mnemonic == STr) ? 0 : (1 << 22) ; unsigned t = reg () ; comma () ; struct addressing addressing = read_addressing(); unsigned word_data = 32 == reg_size( t ) ; unsigned size_bit = (word_data ? 0 : (1 << 30)) ; unsigned allowed_imm = word_data ? 2 : 3; switch (addressing.mode) { case NO_OFFSET: case IMMEDIATE: { if (addressing.imm < 0 || (0 != (addressing.imm & 0x3)) || (!word_data && (0 != (addressing.imm & 7)))) { // Use STUR/LDUR instruction = 0xb8000000; instruction |= (addressing.n & 0x1f) << 5; instruction |= validated_imm9( addressing.imm ) << 12; } else { instruction = 0xb9000000; instruction |= (addressing.n & 0x1f) << 5; // Only positive offsets, imm12 * size of destination register instruction |= validated_imm12( addressing.imm, word_data ? 2 : 3 ) << 10; } } break; case PRE_INDEXED: { instruction = 0xb8000c00; instruction |= (addressing.n & 0x1f) << 5; instruction |= validated_imm9( addressing.imm ) << 12; } break; case POST_INDEXED: { instruction = 0xb8000400; instruction |= (addressing.n & 0x1f) << 5; instruction |= validated_imm9( addressing.imm ) << 12; } break; case REG_LSL: case REG_UXTW: case REG_SXTW: case REG_SXTX: case REG_UNMODIFIED: { instruction = 0xb8200800; // C6.2.113 instruction |= address_extend_op[addressing.mode]; instruction |= (addressing.n & 0x1f) << 5; instruction |= (addressing.m & 0x1f) << 16; if (addressing.imm == allowed_imm) instruction |= addressing.amount_present ? (1 << 12) : 0 ; // S bit else if (addressing.imm != 0) error( 8, NULL ) ; // address out of range } break; case LITERAL: { // Offset from PC if (!load_store_bit) error( 16, NULL ) ; // There is no STR literal load_store_bit = 0; instruction = 0x18000000; instruction |= validated_literal_offset( addressing.imm ) << 5; break ; } default: { error (16, NULL) ; } break; } instruction |= size_bit; instruction |= (t & 0x1f) << 0; instruction |= load_store_bit; } break; case LDRB: case STRB: { unsigned load_store_bit = (mnemonic == STRB) ? 0 : (1 << 22) ; unsigned t = reg () ; comma () ; struct addressing addressing = read_addressing(); if (64 == reg_size( t )) error( 16, NULL ) ; switch (addressing.mode) { case NO_OFFSET: case IMMEDIATE: { instruction = 0x39000000; instruction |= (addressing.n & 0x1f) << 5; instruction |= validated_imm12( addressing.imm, 0 ) << 10; } break; case PRE_INDEXED: { instruction = 0x38000c00; instruction |= (addressing.n & 0x1f) << 5; instruction |= validated_imm9( addressing.imm ) << 12; } break; case POST_INDEXED: { instruction = 0x38000400; instruction |= (addressing.n & 0x1f) << 5; instruction |= validated_imm9( addressing.imm ) << 12; } break; case REG_LSL: case REG_UXTW: case REG_SXTW: case REG_SXTX: case REG_UNMODIFIED: { instruction = 0x38200800; // C6.2.116 instruction |= address_extend_op[addressing.mode]; instruction |= (addressing.n & 0x1f) << 5; instruction |= (addressing.m & 0x1f) << 16; if (addressing.imm == 0) instruction |= addressing.amount_present ? (1 << 12) : 0 ; // S bit else if (addressing.imm != 0) error( 8, NULL ) ; // address out of range } break; default: { error (16, NULL) ; } break; } instruction |= load_store_bit; instruction |= (t & 0x1f) << 0; } break; case LDRH: case STRH: { unsigned load_store_bit = (mnemonic == STRH) ? 0 : (1 << 22) ; unsigned t = reg () ; comma () ; struct addressing addressing = read_addressing(); if (64 == reg_size( t )) error( 16, NULL ) ; switch (addressing.mode) { case NO_OFFSET: case IMMEDIATE: { instruction = 0x79000000; instruction |= (addressing.n & 0x1f) << 5; instruction |= validated_imm12( addressing.imm, 1 ) << 10; } break; case PRE_INDEXED: { instruction = 0x78000c00; instruction |= (addressing.n & 0x1f) << 5; instruction |= validated_imm9( addressing.imm ) << 12; } break; case POST_INDEXED: { instruction = 0x78000400; instruction |= (addressing.n & 0x1f) << 5; instruction |= validated_imm9( addressing.imm ) << 12; } break; case REG_LSL: case REG_UXTW: case REG_SXTW: case REG_SXTX: case REG_UNMODIFIED: { instruction = 0x78200800; // C6.2.116 instruction |= address_extend_op[addressing.mode]; instruction |= (addressing.n & 0x1f) << 5; instruction |= (addressing.m & 0x1f) << 16; if (addressing.imm == 2) instruction |= (1 << 12) ; // S bit else if (addressing.imm != 0) error( 8, NULL ) ; // address out of range } break; default: { error (16, NULL) ; } break; } instruction |= (t & 0x1f) << 0; instruction |= load_store_bit; } break; case LDRSB: case LDRSH: case LDRSW: { unsigned t = reg () ; comma () ; struct addressing addressing = read_addressing(); unsigned word_data = 32 == reg_size( t ) ; unsigned allowed_imm = 0; // Size of destination register unsigned size_bits = (word_data ? (1 << 22) : 0) ; switch (mnemonic) // Size of data read { case LDRSB: size_bits |= 0x00000000; allowed_imm = 0; break; case LDRSH: size_bits |= 0x40000000; allowed_imm = 1; break; case LDRSW: size_bits |= 0x80000000; allowed_imm = 2; break; default: assembler_error(); }; switch (addressing.mode) { case NO_OFFSET: case IMMEDIATE: { instruction = 0x39800000; // C6.2.119, C6.2.121, C6.2.123 instruction |= (addressing.n & 0x1f) << 5; instruction |= validated_imm12( addressing.imm, allowed_imm ) << 10; } break; case PRE_INDEXED: { instruction = 0x38800c00; // C6.2.119, C6.2.121, C6.2.123 instruction |= (addressing.n & 0x1f) << 5; instruction |= validated_imm9( addressing.imm ) << 12; } break; case POST_INDEXED: { instruction = 0x38800400; // C6.2.119, C6.2.121, C6.2.123 instruction |= (addressing.n & 0x1f) << 5; instruction |= validated_imm9( addressing.imm ) << 12; } break; case REG_LSL: case REG_SXTW: // case REG_UXTW: Not a valid option for LDRSB? case REG_SXTX: case REG_UNMODIFIED: { instruction = 0x38a00800; // C6.2.120, C6.2.122, C6.2.125 instruction |= address_extend_op[addressing.mode]; instruction |= (addressing.n & 0x1f) << 5; instruction |= (addressing.m & 0x1f) << 16; if (addressing.imm == allowed_imm) instruction |= addressing.amount_present ? (1 << 12) : 0 ; // S bit else if (addressing.imm != 0) error( 8, NULL ) ; // address out of range } break; case LITERAL: { if (mnemonic != LDRSW || word_data) error( 16, NULL ) ; // No literal option for others instruction = 0x98000000; // C6.2.124 size_bits = 0; // All known, in this case instruction |= validated_literal_offset( addressing.imm ) << 5; break ; } default: { error (16, NULL) ; } break; } instruction |= size_bits; instruction |= (t & 0x1f) << 0; } break; case LDTR: case LDTRB: case LDTRH: { unsigned t = reg () ; comma () ; unsigned word_data = 32 == reg_size( t ) ; struct addressing addressing = read_addressing(); if ((addressing.mode != NO_OFFSET && addressing.mode != IMMEDIATE) || (!word_data && mnemonic != LDTR)) error (16, NULL) ; switch (mnemonic) { case LDTR: instruction = 0xb8400800; if (!word_data) instruction |= (1 << 30); break; // C6.2.135 case LDTRB: instruction = 0x38400800; break; // C6.2.136 case LDTRH: instruction = 0x78400800; break; // C6.2.137 default: assembler_error(); }; instruction |= (t & 0x1f) << 0; instruction |= (addressing.n & 0x1f) << 5; // Not as wide a range of addresses as LDR instruction |= validated_imm9( addressing.imm ) << 12; } break; case LDTRSB: case LDTRSH: case LDTRSW: { unsigned t = reg () ; comma () ; unsigned word_data = 32 == reg_size( t ) ; unsigned size_bit = (word_data ? (1 << 22) : 0) ; struct addressing addressing = read_addressing(); if ((addressing.mode != NO_OFFSET && addressing.mode != IMMEDIATE) || (word_data && mnemonic == LDTRSW)) error (16, NULL) ; switch (mnemonic) { case LDTRSB: instruction = 0x38800800; break; // C6.2.138 case LDTRSH: instruction = 0x78800800; break; // C6.2.139 case LDTRSW: instruction = 0xb8800800; size_bit = 0; break; // C6.2.140 default: assembler_error(); }; instruction |= size_bit; instruction |= (t & 0x1f) << 0; instruction |= (addressing.n & 0x1f) << 5; instruction |= validated_imm9( addressing.imm ) << 12; } break; case LDURB: case STURB: case LDURH: case STURH: case LDUR: case STUR: case LDURSB: case LDURSH: case LDURSW: case STTR: case STTRB: case STTRH: { switch (mnemonic) { case LDURB: instruction = 0x38400000; break; // C6.2.148 case STURB: instruction = 0x38000000; break; // C6.2.267 case LDURH: instruction = 0x78400000; break; // C6.2.149 case LDURSB:instruction = 0x38800000; break; // C6.2.150 case LDURSH:instruction = 0x78800000; break; // C6.2.151 case LDURSW:instruction = 0xb8800000; break; // C6.2.152 case STURH: instruction = 0x78000000; break; // C6.2.268 case LDUR: instruction = 0xb8400000; break; // C6.2.147 case STUR: instruction = 0xb8000000; break; // C6.2.265 case STTR: instruction = 0xb8000800; break; // C6.2.257 case STTRB: instruction = 0x38000800; break; // C6.2.258 case STTRH: instruction = 0x78000800; break; // C6.2.259 default: assembler_error() ; } unsigned t = reg () ; comma () ; struct addressing addressing = read_addressing(); unsigned word_data = 32 == reg_size( t ) ; if (!word_data) { if (mnemonic != LDUR && mnemonic != LDURSB && mnemonic != LDURSH && mnemonic != LDURSW && mnemonic != STUR && mnemonic != STTR) { error (16, NULL) ; } if (mnemonic == LDUR || mnemonic == STUR || mnemonic == STTR) { instruction |= (1 << 30) ; // Transfer 64 bits, default 32 } } else { if (mnemonic == LDURSW) // Always expands to 64 bits error( 16, NULL ) ; if (mnemonic == LDURSB || mnemonic == LDURSH) instruction |= (1 << 22) ; // Expand to 32 bits, default 64 } if (addressing.mode != NO_OFFSET && addressing.mode != IMMEDIATE) error( 16, NULL ) ; instruction |= t & 0x1f; instruction |= (addressing.n & 0x1f) << 5; instruction |= validated_imm9( addressing.imm ) << 12; } break; case LDXP: { unsigned t1 = reg () ; comma () ; unsigned t2 = reg () ; comma () ; struct addressing addressing = read_addressing(); unsigned word_data = 32 == reg_size( t1 ) ; unsigned size_bit = (word_data ? 0 : (1 << 30)) ; if ((addressing.mode != NO_OFFSET && addressing.mode != IMMEDIATE) || reg_size( t1 ) != reg_size( t2 ) || 32 == reg_size( addressing.n ) || addressing.imm != 0) error( 16, NULL ) ; instruction = 0x887f0000 | size_bit; // C6.2.153 instruction |= (t1 & 0x1f) << 0; instruction |= (t2 & 0x1f) << 10; instruction |= (addressing.n & 0x1f) << 5; instruction |= validated_imm9( addressing.imm ) << 12; } break; case STXR: case STXRB: case STXRH: { switch (mnemonic) { case STXR: instruction = 0x88007c00; break; // C6.2.270 case STXRB: instruction = 0x08007c00; break; // C6.2.271 case STXRH: instruction = 0x48007c00; break; // C6.2.272 default: assembler_error() ; } unsigned s = reg () ; comma () ; unsigned t = reg () ; comma () ; open_square() ; unsigned n = reg () ; optional_zero_offset() ; close_square() ; unsigned word_data = 32 == reg_size( t ) ; unsigned size_bit = word_data ? 0 : (1 << 30) ; if (32 == reg_size( n ) || 64 == reg_size( s ) ) error( 16, NULL ) ; instruction |= size_bit; instruction |= (t & 0x1f) << 0; instruction |= (n & 0x1f) << 5; instruction |= (s & 0x1f) << 16; } break; case LDXRB: case LDXRH: { switch (mnemonic) { case LDXRB: instruction = 0x085f7c00; break; // C6.2.155 case LDXRH: instruction = 0x485f7c00; break; // C6.2.156 default: assembler_error() ; } unsigned t = reg () ; comma () ; struct addressing addressing = read_addressing(); if ((addressing.mode != NO_OFFSET && addressing.mode != IMMEDIATE) || 32 == reg_size( addressing.n ) || addressing.imm != 0) error( 16, NULL ) ; instruction |= (t & 0x1f) << 0; instruction |= (addressing.n & 0x1f) << 5; } break; case ASR: case LSL: case ROR: case LSR: { // Alias for UBFM/SBFM or V variant unsigned d = reg () ; comma () ; unsigned word_data = 32 == reg_size( d ) ; unsigned n = reg () ; comma () ; if ('#' == nxt()) // Alias for UBFM/SBFM/EXTR { switch (mnemonic) { case ASR: instruction = 0x13007c00; break; // C6.2.16 (SBFM) case LSL: instruction = 0x53000000; break; // C6.2.158 (UBFM) case LSR: instruction = 0x53007c00; break; // C6.2.161 (UBFM) case ROR: instruction = 0x13800000; break; // C6.2.204 (EXTR) default: assembler_error() ; } hash () ; unsigned shift = expri () ; unsigned bits = reg_size( d ) ; if (reg_size( d ) != reg_size( n ) || (shift >= bits)) error( 16, NULL ) ; unsigned immr = 0, imms = 0; switch (mnemonic) { case ASR: immr = shift; imms = bits - 1; break; // C6.2.16 case LSL: immr = (-shift) % bits; imms = (bits-1)-shift; break; // C6.2.158 case LSR: immr = shift; imms = bits - 1; break; // C6.2.161 case ROR: immr = (n & 0x1f) ; imms = shift; break; // C6.2.204 default: assembler_error() ; } // sf == N unsigned size_bits = (word_data ? 0 : 0x80400000) ; instruction |= size_bits; instruction |= (imms & 0x3f) << 10; instruction |= (immr & 0x3f) << 16; } else // Alias for V form { switch (mnemonic) { case ASR: instruction = 0x1ac02800; break; // C6.2.17 case LSL: instruction = 0x1ac02000; break; // C6.2.159 case LSR: instruction = 0x1ac02400; break; // C6.2.162 case ROR: instruction = 0x1ac02c00; break; // C6.2.206 default: assembler_error() ; } unsigned m = reg () ; if (reg_size( d ) != reg_size( n ) || reg_size( n ) != reg_size( m )) error( 16, NULL ) ; unsigned size_bit = (word_data ? 0 : (1 << 31)) ; instruction |= size_bit; instruction |= (m & 0x1f) << 16; } instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; } break; case EXTR: { unsigned d = reg () ; comma () ; unsigned n = reg () ; comma () ; unsigned m = reg () ; comma () ; hash () ; int lsb = expri () ; unsigned word_data = 32 == reg_size( d ) ; if (reg_size( d ) != reg_size( n ) || reg_size( n ) != reg_size( m ) || lsb < 0 || lsb >= reg_size( d )) error( 16, NULL ) ; instruction = 0x13800000; // sf == N unsigned size_bits = (word_data ? 0 : 0x80400000) ; instruction |= lsb << 10; instruction |= size_bits; instruction |= (m & 0x1f) << 16; instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; } break; case MADD: case MSUB: { unsigned d = reg () ; comma () ; unsigned n = reg () ; comma () ; unsigned m = reg () ; comma () ; unsigned a = reg () ; if (reg_size( d ) != reg_size( n ) || reg_size( d ) != reg_size( m ) || reg_size( d ) != reg_size( a )) error( 16, NULL ) ; unsigned word_data = 32 == reg_size( d ) ; unsigned size_bit = (word_data ? 0 : (1 << 31)) ; switch (mnemonic) { case MADD: instruction = 0x1b000000; break; // C6.2.163 case MSUB: instruction = 0x1b008000; break; // C6.2.176 default: assembler_error() ; } instruction |= size_bit; instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; instruction |= (m & 0x1f) << 16; instruction |= (a & 0x1f) << 10; } break; case SMADDL: case SMSUBL: case UMADDL: case UMSUBL: { unsigned d = reg () ; comma () ; unsigned n = reg () ; comma () ; unsigned m = reg () ; comma () ; unsigned a = reg () ; if (32 == reg_size( d ) || 64 == reg_size( n ) || 64 == reg_size( m ) || 32 == reg_size( a ) ) error( 16, "Registers must be: Xd, Wn, Wm, Xa" ) ; switch (mnemonic) { case SMADDL: instruction = 0x9b200000; break; // C6.2.215 case SMSUBL: instruction = 0x9b208000; break; // C6.2.218 case UMADDL: instruction = 0x9ba00000; break; // C6.2.297 case UMSUBL: instruction = 0x9ba08000; break; // C6.2.299 default: assembler_error() ; } instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; instruction |= (m & 0x1f) << 16; instruction |= (a & 0x1f) << 10; } break; case SMNEGL: case SMULL: case UMNEGL: case UMULL: { if ((mnemonic == SMULL || mnemonic == UMULL) && ('D' == nxt() || 'd' == nxt())) { instruction = validated_FB_SIMD_instruction( mnemonic ); break; } unsigned d = reg () ; comma () ; unsigned n = reg () ; comma () ; unsigned m = reg () ; if (32 == reg_size( d ) || 64 == reg_size( n ) || 64 == reg_size( m ) ) error( 16, "Registers must be: Xd, Wn, Wm" ) ; switch (mnemonic) { case SMNEGL:instruction = 0x9b20fc00; break; // C6.2.217 case SMULL: instruction = 0x9b207c00; break; // C6.2.220 case UMULL: instruction = 0x9ba07c00; break; // C6.2.301 case UMNEGL:instruction = 0x9ba0fc00; break; // C6.2.298 default: assembler_error() ; } instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; instruction |= (m & 0x1f) << 16; } break; case MOV: { // Variations: // C6.2.165 MOV (to/from SP) // C6.2.169 MOV (register) // C6.2.166 MOV (inverted wide immediate) // C6.2.167 MOV (wide immediate) // C6.2.168 MOV (bitmask immediate) if ('D' == nxt() || 'd' == nxt()) { instruction = validated_FB_SIMD_instruction( mnemonic ); break; } unsigned d = reg () ; comma () ; unsigned word_data = 32 == reg_size( d ) ; if (nxt() == '#') { esi++; long long imm = expri () ; if (is_sp( d )) { // Alias of ORR, needed to write to SP. Why you can MOV to the zero register, IDK. instruction = 0x320003e0; // C6.2.168 instruction |= validated_N_immr_imms( imm, word_data ) << 10 ; } else { unsigned long long all_ones = word_data ? 0xffffffff : 0xffffffffffffffffull; unsigned long long eor = 0; // Don't invert instruction = 0; // Are all the relevant bits within a 16-bit area? // First, all other bits are zeros? (Use MOVZ) if (imm == (imm & 0xffffull)) { instruction = 0x52800000; // No shift } else if (imm == (imm & 0xffff0000ull)) { imm = imm >> 16; instruction = 0x52a00000; // 16 bit left shift } else if (!word_data && imm == (imm & 0xffff00000000ull)) { imm = imm >> 32; instruction = 0x52c00000; // 32 bit left shift } else if (!word_data && imm == (imm & 0xffff000000000000ull)) { imm = imm >> 48; instruction = 0x52e00000; // 48 bit left shift } // Or all other bits are ones (use MOVN) else if ((imm | 0xffffull) == all_ones) { instruction = 0x12800000; // No shift eor = all_ones; } else if ((imm | 0xffff0000ull) == all_ones) { imm = imm >> 16; eor = all_ones; instruction = 0x12a00000; // 16 bit left shift } else if (!word_data && (imm | 0xffff00000000ull) == all_ones) { imm = imm >> 32; eor = all_ones; instruction = 0x12c00000; // 32 bit left shift } else if (!word_data && (imm | 0xffff000000000000ull) == all_ones) { imm = imm >> 48; eor = all_ones; instruction = 0x12e00000; // 48 bit left shift } if (instruction != 0) { imm = imm ^ eor; instruction |= ((imm & 0xffff) << 5) ; } else { // Alias of ORR, needed to write to SP. Why you can MOV to the zero register, IDK. instruction = 0x320003e0; // C6.2.168 instruction |= validated_N_immr_imms( imm, word_data ) << 10 ; } } } else { unsigned s = reg () ; if (reg_size( d ) != reg_size( s )) error( 16, NULL ) ; if (is_sp( d ) || is_sp( s )) { // To or from SP instruction = 0x11000000; // C6.2.165 MOV (to/from SP) instruction |= (s & 0x1f) << 5; // Rn } else { // Other register instruction = 0x2a0003e0; // C6.2.169 MOV (register) instruction |= (s & 0x1f) << 16; // Rm } } unsigned size_bit = (word_data ? 0 : (1 << 31)) ; instruction |= size_bit; instruction |= (d & 0x1f) << 0; } break; case MOVK: case MOVN: case MOVZ: { unsigned d = reg () ; comma () ; unsigned word_data = 32 == reg_size( d ) ; switch (mnemonic) { case MOVK: instruction = 0x72800000; break; // C6.2.170 case MOVN: instruction = 0x12800000; break; // C6.2.171 case MOVZ: instruction = 0x52800000; break; // C6.2.172 default: assembler_error() ; } unsigned size_bit = (word_data ? 0 : (1 << 31)) ; instruction |= size_bit; instruction |= (d & 0x1f) << 0; hash() ; long long imm = expri () ; int shift = 0; if (imm < 0 || imm > 65535) error( 8, NULL ) ; instruction |= imm << 5; if (nxt() == ',') { comma() ; nxt() ; if (strnicmp ((const char *)esi, "LSL", 3) == 0) { esi += 3; hash() ; shift = expri () ; if (shift != 0 && shift != 16 && shift != 32 && shift != 48) error ( 16, "Shift must be a multiple of 16, up to 48" ) ; shift = (shift / 16) & 3; instruction |= shift << 21; } else { error( 16, NULL ) ; } } } break; case MRS: { unsigned t = reg () ; comma () ; if (32 == reg_size( t ) ) error( 16, NULL ); instruction = 0xd5300000; instruction |= validated_system_register(); instruction |= (t & 0x1f) << 0; } break; case MSR: { char *immediate_targets[] = { "SPSel", "DAIFSet", "DAIFClr", "UAO", "PAN" }; int entry = lookup( immediate_targets, sizeof( immediate_targets ) / sizeof( immediate_targets[0] ) ); unsigned code[] = { 0b000 << 16 | 0b101 << 5, // SPSel 0b011 << 16 | 0b110 << 5, // DAIFSet 0b011 << 16 | 0b111 << 5, // DAIFClr 0b000 << 16 | 0b011 << 5, // UAO 0b000 << 16 | 0b100 << 5 // PAN }; if (entry >= 0 && !isspace( *esi)) error( 16, "Unnown tlbi_op" ); if (entry >= 0) { instruction = 0xd5300000; // C6.2.174 instruction |= code[entry]; } else { instruction = 0xd5100000; // C6.2.175 instruction |= validated_system_register(); } comma () ; unsigned t = reg () ; instruction |= (t & 0x1f) << 0; if (32 == reg_size( t ) ) error( 16, NULL ); } break; case MVN: case NEG: case NEGS: { unsigned d = reg () ; unsigned word_data = 32 == reg_size( d ) ; comma () ; unsigned m = reg () ; int shift = 0; int amount = 0; if (',' == nxt()) { comma () ; shift = shift_type() ; hash () ; amount = expri () ; if (amount < 0 || amount > 63 || (amount > 31 && word_data)) { error ( 16, NULL ) ; } // Only MVN of these three allows ROR shifts if (shift == 3 && mnemonic != MVN) { error ( 16, NULL ) ; } } switch (mnemonic) { case MVN : instruction = 0x2a2003e0; break; // C6.2.178 case NEG : instruction = 0x4b0003e0; break; // C6.2.179 case NEGS: instruction = 0x6b0003e0; break; // C6.2.180 default: assembler_error() ; } unsigned size_bit = (word_data ? 0 : (1 << 31)) ; instruction |= size_bit; instruction |= (d & 0x1f) << 0; instruction |= (m & 0x1f) << 16; instruction |= shift << 22; instruction |= amount << 10; } break; case NGC: case NGCS: { unsigned d = reg () ; unsigned word_data = 32 == reg_size( d ) ; comma () ; unsigned m = reg () ; switch (mnemonic) { case NGC : instruction = 0x5a0003e0; break; // C6.2.181 case NGCS: instruction = 0x7a0003e0; break; // C6.2.182 default: assembler_error() ; } unsigned size_bit = (word_data ? 0 : (1 << 31)) ; instruction |= size_bit; instruction |= (d & 0x1f) << 0; instruction |= (m & 0x1f) << 16; } break; case ORN: { unsigned d = reg () ; comma () ; unsigned n = reg () ; comma () ; unsigned m = reg () ; unsigned word_data = 32 == reg_size( d ) ; int shift = 0; int amount = 0; if (',' == nxt()) { comma () ; shift = shift_type() ; hash () ; amount = expri () ; if (amount < 0 || amount > 63 || (amount > 31 && word_data)) { error ( 16, NULL ) ; } } instruction = 0x2a200000; // C6.2.184 if (reg_size( d ) != reg_size( n ) || reg_size( d ) != reg_size( m )) error( 16, NULL ) ; unsigned size_bit = (word_data ? 0 : (1 << 31)) ; instruction |= size_bit; instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; instruction |= (m & 0x1f) << 16; instruction |= shift << 22; instruction |= amount << 10; } break; case AND: case ANDS: case EOR: case ORR: case TST: case EON: { if ((mnemonic == ORR || mnemonic == AND || mnemonic == EOR) && ('D' == nxt() || 'd' == nxt())) { instruction = validated_FB_SIMD_instruction( mnemonic ); break; } unsigned d; if (mnemonic != TST) { d = reg () ; comma () ; } unsigned n = reg () ; comma () ; if (mnemonic == TST) { d = 0x1f | reg_size( n ) | REGISTER_IS_ZERO; } if (reg_size( d ) != reg_size( n )) error( 16, NULL ) ; unsigned word_data = 32 == reg_size( d ) ; unsigned size_bit = (word_data ? 0 : (1 << 31)) ; if (mnemonic != EON && '#' == nxt()) { switch (mnemonic) { case AND: instruction = 0x12000000; break; // C6.2.11 case TST: case ANDS: instruction = 0x72000000; break; // C6.2.13 case EOR: instruction = 0x52000000; break; // C6.2.75 case ORR: instruction = 0x32000000; break; // C6.2.185 default: assembler_error() ; } esi++; long long imm = expri () ; instruction |= validated_N_immr_imms( imm, word_data ) << 10; } else { switch (mnemonic) { case AND: instruction = 0x0a000000; break; // C6.2.12 case TST: case ANDS: instruction = 0x6a000000; break; // C6.2.14 case EON: instruction = 0x4a200000; break; // C6.2.74 case EOR: instruction = 0x4a000000; break; // C6.2.76 case ORR: instruction = 0x2a000000; break; // C6.2.186 default: assembler_error() ; } unsigned m = reg () ; int shift = 0; int amount = 0; if (',' == nxt()) { comma () ; shift = shift_type() ; hash () ; amount = expri () ; if (amount < 0 || amount > 63 || (amount > 31 && word_data)) { error ( 16, NULL ) ; } } if (reg_size( d ) != reg_size( n ) || reg_size( d ) != reg_size( m )) error( 16, NULL ) ; instruction |= (m & 0x1f) << 16; instruction |= shift << 22; instruction |= amount << 10; } instruction |= size_bit; instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; } break; case PACDA: case PACDB: case PACIA: case PACIB: { unsigned d = reg () ; comma () ; unsigned n = reg () ; switch (mnemonic) { case PACDA: instruction = 0xdac10800; break; // C6.2.187 case PACDB: instruction = 0xdac10c00; break; // C6.2.188 case PACIA: instruction = 0xdac10000; break; // C6.2.190 case PACIB: instruction = 0xdac10400; break; // C6.2.191 default: assembler_error() ; } if (32 == reg_size( d ) || 32 == reg_size( n ) || (n == 31 && 0 != (n & REGISTER_IS_ZERO))) // XZR not allowed { error( 16, NULL ) ; } instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; } break; case PACDZA: case PACDZB: case PACIZA: case PACIZB: { unsigned d = reg () ; switch (mnemonic) { case PACDZA: instruction = 0xdac12be0; break; // C6.2.187 case PACDZB: instruction = 0xdac12fe0; break; // C6.2.188 case PACIZA: instruction = 0xdac123e0; break; // C6.2.190 case PACIZB: instruction = 0xdac127e0; break; // C6.2.191 default: assembler_error() ; } instruction |= (d & 0x1f) << 0; if (32 == reg_size( d ) ) { error( 16, NULL ) ; } } break; case PACGA: { unsigned d = reg () ; comma () ; unsigned n = reg () ; comma () ; unsigned m = reg () ; switch (mnemonic) { case PACGA: instruction = 0x9ac03000; break; // C6.2.189 default: assembler_error() ; } if (32 == reg_size( d ) || 32 == reg_size( n ) || 32 == reg_size( m ) || (m == 31 && 0 != (m & REGISTER_IS_ZERO))) // XZR not allowed { error( 16, NULL ) ; } instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; instruction |= (m & 0x1f) << 16; } break; case PRFM: { char *prfops_type[] = { "PLD", "PLI", "PST" }; char *prfops_target[] = { "L1", "L2", "L3" }; char *prfops_policy[] = { "KEEP", "STRM" }; int prfop = 0; if ('#' == nxt() ) { hash(); prfop = expri () ; } else { prfop = (lookup( prfops_type, 3 ) << 3) | (lookup( prfops_target, 3 ) << 1) | (lookup( prfops_policy, 2 ) << 0) ; } if (prfop < 0 || prfop > 31) error( 16, NULL ) ; comma () ; struct addressing addressing = read_addressing(); if (addressing.mode == LITERAL) { // Literal instruction = 0xd8000000; // C6.2.193 instruction |= validated_literal_offset( addressing.imm ) << 5; } else if (addressing.mode == NO_OFFSET || addressing.mode == IMMEDIATE) { if (addressing.imm >= 0 && addressing.imm <= 32760 && (addressing.imm & 7) == 0) { instruction = 0xf9800000; // C6.2.192 instruction |= validated_imm12( addressing.imm, 3 ) << 10; } else { instruction = 0xf8800000; // C6.2.195 instruction |= validated_imm9( addressing.imm ) << 12; } } else if (addressing.mode < LITERAL) { // register instruction = 0xf8a00800; // C6.2.194 instruction |= address_extend_op[addressing.mode]; instruction |= (addressing.m & 0x1f) << 16; if (addressing.imm == 3) instruction |= (1 << 12) ; else if (addressing.imm != 0 || (!addressing.amount_present && addressing.mode == REG_LSL)) error( 8, "Only shifts #0 and #3 allowed, must be present with LSL" ) ; } else error( 16, NULL ) ; instruction |= (addressing.n & 0x1f) << 5; instruction |= prfop << 0; } break; case REV: case REV16: case REV32: case REV64: case RBIT: { unsigned d = reg () ; comma () ; unsigned n = reg () ; switch (mnemonic) { case REV: instruction = 0x5ac00800; break; // C6.2.200 case REV16: instruction = 0x5ac00400; break; // C6.2.201 case REV32: instruction = 0xdac00800; break; // C6.2.202 case REV64: instruction = 0xdac00c00; break; // C6.2.203 case RBIT: instruction = 0x5ac00000; break; // C6.2.197 default: assembler_error() ; } switch (mnemonic) { case REV: if (64 == reg_size( n ) ) instruction |= (1 << 31) | (1 << 10) ; break; case RBIT: case REV16: if (64 == reg_size( n ) ) instruction |= (1 << 31) ; break; case REV32: case REV64: if (32 == reg_size( n ) ) error( 16, NULL ) ; break; default: assembler_error() ; } if (reg_size( d ) != reg_size( n )) error( 16, NULL ) ; instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; } break; case SMULH: case UMULH: { unsigned d = reg () ; comma () ; unsigned n = reg () ; comma () ; unsigned m = reg () ; switch (mnemonic) { case SMULH: instruction = 0x9b407c00; break; // C6.2.200 case UMULH: instruction = 0x9bc07c00; break; // C6.2.300 default: assembler_error() ; } if (32 == reg_size( d ) || 32 == reg_size( n ) || 32 == reg_size( m ) ) error( 16, NULL ) ; instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; instruction |= (m & 0x1f) << 16; } break; case SBFM: // C6.2.210 case UBFM: // C6.2.294 // Alias... case SBFIZ: // C6.2.209, case UBFIZ: // C6.2.293 case SBFX: // C6.2.211 case UBFX: // C6.2.295 { // Two registers, two constants instruction = 0x13000000; if (mnemonic == UBFIZ || mnemonic == UBFM || mnemonic == UBFX) // Unsigned instruction |= 0x40000000; unsigned d = reg () ; comma () ; unsigned n = reg () ; comma () ; hash () ; int c1 = expri () ; comma() ; hash () ; int c2 = expri () ; unsigned word_data = 32 == reg_size( d ) ; unsigned size_bits = word_data ? 0 : 0x80400000; // sf != N is a reserved value switch (mnemonic) { case UBFIZ: case SBFIZ: c1 = ((unsigned) -c1) % reg_size( d ); c2 --; break; case UBFX: case SBFX: c2 += c1 - 1; break; case SBFM: break; case UBFM: break; default: assembler_error() ; } if (reg_size( d ) != reg_size( n ) || c1 < 0 || c1 > 63 || (word_data && c1 > 31) || c2 < 0 || c2 > 63 || (word_data && c2 > 31)) { error( 16, NULL ) ; } instruction |= size_bits; instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; instruction |= c1 << 16; instruction |= c2 << 10; } break; case SXTB: case SXTH: case SXTW: case UXTB: case UXTH: case UXTW: // This is an 'unofficial' mnemonic { // Two registers, implicit constants switch (mnemonic) { case SXTB: instruction = 0x13001c00; break; // C6.2.283 case SXTH: instruction = 0x13003c00; break; // C6.2.284 case SXTW: instruction = 0x93407c00; break; // C6.2.285 case UXTB: instruction = 0x53001c00; break; // C6.2.302 case UXTH: instruction = 0x53003c00; break; // C6.2.303 case UXTW: instruction = 0x53000000; break; default: assembler_error() ; } unsigned d = reg () ; comma () ; unsigned n = reg () ; int c1 = 0; int c2 = 0; // Initial value to avoid compiler warning unsigned word_data = 32 == reg_size( d ) ; unsigned size_bits = word_data ? 0 : ((1 << 31) | (1 << 22)) ; switch (mnemonic) { case UXTB: case SXTB: c2 = 7; break; case UXTH: case SXTH: c2 = 15; break; case SXTW: case UXTW: c2 = 31; break; default: assembler_error() ; } if (reg_size( d ) < reg_size( n ) || c1 < 0 || c1 >= reg_size( d ) || c2 < 0 || c2 >= reg_size( d ) || ( word_data && mnemonic == SXTW) || ( word_data && mnemonic == UXTW) || (!word_data && mnemonic == UXTB) || (!word_data && mnemonic == UXTH)) { error( 16, NULL ) ; } instruction |= size_bits; instruction |= (d & 0x1f) << 0; instruction |= (n & 0x1f) << 5; instruction |= c1 << 16; instruction |= c2 << 10; } break; case DRPS: { instruction = 0xd6bf03e0; } break; case PACIA1716: { instruction = 0xd503211f; } break; case PACIASP: { instruction = 0xd503233f; } break; case PACIAZ: { instruction = 0xd503231f; } break; case PACIB1716: { instruction = 0xd503215f; } break; case PACIBSP: { instruction = 0xd503237f; } break; case PACIBZ: { instruction = 0xd503235f; } break; case RET: { instruction = 0xd65f0000; // C6.2.198 int link = 30; if ('X' == nxt() || 'x' == nxt ()) link = reg () ; instruction |= (link & 0x1f) << 5; } break; case ERET: { instruction = 0xd69f03e0; // C6.2.77 } break; case RETAA: { instruction = 0xd65f0bff; // C6.2.199 } break; case RETAB: { instruction = 0xd65f0fff; // C6.2.199 } break; case ERETAA: { instruction = 0xd69f0bff; // C6.2.78 } break; case ERETAB: { instruction = 0xd69f0fff; // C6.2.78 } break; case HINT: { instruction = 0xd503201f; // C6.2.81 hash () ; int imm = expri () ; if (imm < 0 || imm > 127) error( 8, NULL ) ; instruction |= imm << 5; } break; case NOP: { instruction = 0xd503201f; // C6.2.81 instruction |= (0 << 5) ; // C6.2.183 } break; case YIELD: { instruction = 0xd503201f; // C6.2.81 instruction |= (1 << 5) ; // C6.2.307 } break; case WFE: { instruction = 0xd503201f; // C6.2.81 instruction |= (2 << 5) ; // C6.2.304 } break; case WFI: { instruction = 0xd503201f; // C6.2.81 instruction |= (3 << 5) ; // C6.2.305 } break; case SEV: { instruction = 0xd503201f; // C6.2.81 instruction |= (4 << 5) ; // C6.2.213 } break; case SEVL: { instruction = 0xd503201f; // C6.2.81 instruction |= (5 << 5) ; // C6.2.214 } break; case ESB: { instruction = 0xd503201f; // C6.2.81 instruction |= (16 << 5) ; // C6.2.79 } break; case PSB: { nxt () ; if (strnicmp ((const char *)esi, "CSYNC", 5) == 0) esi += 5; else error( 16, "" ) ; instruction = 0xd503201f; // C6.2.81 instruction |= (17 << 5) ; // C6.2.196 } break; case XPACD: { unsigned d = reg () ; if (32 == reg_size( d ) ) error( 16, NULL ) ; instruction = 0xdac147e0; // C6.2.306 instruction |= (d & 0x1f) << 0; } break; case XPACI: { unsigned d = reg () ; if (32 == reg_size( d ) ) error( 16, NULL ) ; instruction = 0xdac143e0; // C6.2.306 instruction |= (d & 0x1f) << 0; } break; case XPACLRI: { instruction = 0xd50320ff; // C6.2.306 } break; // Floating point and SIMD operations case ABS: { instruction = 0x5ee0b800; } break; case ADDHN: case ADDHN2: case ADDP: case ADDV: case AESD: case AESE: case AESIMC: case AESMC: case BCAX: case BIF: case BIT: case BSL: case CMEQ: case CMGE: case CMGT: case CMHI: case CMHS: case CMLE: case CMLT: case CMTST: case CNT: case DUP: case EOR3: case EXT: case FABD: case FABS: case FACGE: case FACGT: case FADD: case FADDP: case FCADD: case FCCMP: case FCCMPE: case FCMEQ: case FCMGE: case FCMGT: case FCMLA: case FCMLE: case FCMLT: case FCMP: case FCMPE: case FCSEL: case FCVT: case FCVTAS: case FCVTAU: case FCVTL: case FCVTL2: case FCVTMS: case FCVTMU: case FCVTN: case FCVTN2: case FCVTNS: case FCVTNU: case FCVTPS: case FCVTPU: case FCVTXN: case FCVTXN2: case FCVTZS: case FCVTZU: case FDIV: case FJCVTZS: case FMADD: case FMAX: case FMAXNM: case FMAXNMP: case FMAXNMV: case FMAXP: case FMAXV: case FMIN: case FMINNM: case FMINNMP: case FMINNMV: case FMINP: case FMINV: case FMLA: case FMLAL: case FMLAL2: case FMLS: case FMLSL: case FMLSL2: case FMOV: case FMSUB: case FMUL: case FMULX: case FNEG: case FNMADD: case FNMSUB: case FNMUL: case FRECPE: case FRECPS: case FRECPX: case FRINTA: case FRINTI: case FRINTM: case FRINTN: case FRINTP: case FRINTX: case FRINTZ: case FRSQRTE: case FRSQRTS: case FSQRT: case FSUB: case INS: case LD1: case LD1R: case LD2: case LD2R: case LD3: case LD3R: case LD4: case LD4R: case MLA: case MLS: case MOVI: case MVNI: case NOT: case PMUL: case PMULL: case PMULL2: case PSBCSYNC: case RADDHN: case RADDHN2: case RAX1: case RSHRN: case RSHRN2: case RSUBHN: case RSUBHN2: case SABA: case SABAL: case SABAL2: case SABD: case SABDL: case SABDL2: case SADALP: case SADDL: case SADDL2: case SADDLP: case SADDLV: case SADDW: case SADDW2: case SCVTF: case SDOT: case SHA1C: case SHA1H: case SHA1M: case SHA1P: case SHA1SU0: case SHA1SU1: case SHA256H: case SHA256H2: case SHA256SU0: case SHA256SU1: case SHA512H: case SHA512H2: case SHA512SU0: case SHA512SU1: case SHADD: case SHL: case SHLL: case SHLL2: case SHRN: case SHRN2: case SHSUB: case SLI: case SM3PARTW1: case SM3PARTW2: case SM3SS1: case SM3TT1A: case SM3TT1B: case SM3TT2A: case SM3TT2B: case SM4E: case SM4EKEY: case SMAX: case SMAXP: case SMAXV: case SMIN: case SMINP: case SMINV: case SMLAL: case SMLAL2: case SMLSL: case SMLSL2: case SMOV: case SMULL2: case SQABS: case SQADD: case SQDMLAL: case SQDMLAL2: case SQDMLSL: case SQDMLSL2: case SQDMULH: case SQDMULL: case SQDMULL2: case SQNEG: case SQRDMLAH: case SQRDMLSH: case SQRDMULH: case SQRSHL: case SQRSHRN: case SQRSHRN2: case SQRSHRUN: case SQRSHRUN2: case SQSHL: case SQSHLU: case SQSHRN: case SQSHRN2: case SQSHRUN: case SQSHRUN2: case SQSUB: case SQXTN: case SQXTN2: case SQXTUN: case SQXTUN2: case SRHADD: case SRI: case SRSHL: case SRSHR: case SRSRA: case SSHL: case SSHLL: case SSHLL2: case SSHR: case SSRA: case SSUBL: case SSUBL2: case SSUBW: case SSUBW2: case ST1: case ST2: case ST3: case ST4: case SUBHN: case SUBHN2: case SUQADD: case SXTL: case SXTL2: case TBL: case TBX: case TRN1: case TRN2: case UABA: case UABAL: case UABAL2: case UABD: case UABDL: case UABDL2: case UADALP: case UADDL: case UADDL2: case UADDLP: case UADDLV: case UADDW: case UADDW2: case UCVTF: case UDOT: case UHADD: case UHSUB: case UMAX: case UMAXP: case UMAXV: case UMIN: case UMINP: case UMINV: case UMLAL: case UMLAL2: case UMLSL: case UMLSL2: case UMOV: case UMULL2: case UQADD: case UQRSHL: case UQRSHRN: case UQRSHRN2: case UQSHL: case UQSHRN: case UQSHRN2: case UQSUB: case UQXTN: case UQXTN2: case URECPE: case URHADD: case URSHL: case URSHR: case URSQRTE: case URSRA: case USHL: case USHLL: case USHLL2: case USHR: case USQADD: case USRA: case USUBL: case USUBL2: case USUBW: case USUBW2: case UXTL: case UXTL2: case UZP1: case UZP2: case XAR: case XTN: case XTN2: case ZIP1: case ZIP2: instruction = validated_FB_SIMD_instruction( mnemonic ); break; default: error (16, "Unknown instruction" ); } oldpc = align () ; poke (&instruction, 4) ; } } ; } ================================================ FILE: src/bbasmb_arm_v6m.c ================================================ /*******************************************************************\ * 32-bit BBC BASIC Interpreter * * (c) 2018-2021 R.T.Russell http://www.rtrussell.co.uk/ * * * * bbasmb_arm_v6m.c Assembler for ARMv6m thunb instructions * * Unified & Divided syntax * * Version 1.24a, 12-Jul-2021 * \*******************************************************************/ #include #include #include #include #include #include #include "BBC.h" #ifndef __WINDOWS__ #define stricmp strcasecmp #define strnicmp strncasecmp #endif #if defined(__x86_64__) || defined(__aarch64__) #define OC ((unsigned int) stavar[15] + (void *)((long long) stavar[13] << 32)) #define PC ((unsigned int) stavar[16] + (void *)((long long) stavar[17] << 32)) #else #define OC (void *) stavar[15] #define PC (void *) stavar[16] #endif // External routines: void newlin (void); void *getput (unsigned char *); void error (int, const char *); void token (signed char); void text (const char*); void crlf (void); void comma (void); void spaces (int); int range0 (char); signed char nxt (void); long long itemi (void); long long expri (void); VAR expr (void); VAR exprs (void); VAR loadn (void *, unsigned char); void storen (VAR, void *, unsigned char); // Routines in bbcmos.c: void *sysadr (char *); unsigned char osrdch (void); void oswrch (unsigned char); int oskey (int); void osline (char *); int osopen (int, char *); void osshut (int); unsigned char osbget (int, int *); void osbput (int, unsigned char); long long getptr (int); void setptr (int, long long); long long getext (int); void oscli (char *); int osbyte (int, int); void osword (int, void *); int bUni = 1; // Set for unified syntax enum { ASR, LSL, LSR, // 0-2: 2 Opcodes LDRB, STRB, // 3-4: 2 opcodes LDRH, STRH, // 5-6: 2 opcodes ADC, AND, BIC, CMN, EOR, MVN, ORR, REV16, REVSH, REV, ROR, SBC, SXTB, SXTH, TST, UXTB, UXTH, // 7-23: , NOP, SEV, WFE, WFI, YIELD, // 24-28: BLX, BX, // 29-30: DMB, DSB, ISB, // 31-33: 32-bit 0xF3BF____ LDRSB, LDRSH, // 34-35: , [, ] CPSID, CPSIE, CMP, MOV, ADD, ADR, BKPT, B, LDM, LDR, MRS, MSR, MUL, POP, PUSH, RSB, STM, STr, SUB, SVC, // 36-53: Unique opcodes ALIGN, DB, DCB, DCD, DCS, DCW, EQUB, EQUD, EQUQ, EQUS, EQUW, OPT, SYNTAX // 54-66: Pseudo-ops }; static const char *mnemonics[] = { "asr", "lsl", "lsr", "ldrb", "strb", "ldrh", "strh", "adc", "and", "bic", "cmn", "eor", "mvn", "orr", "rev16", "revsh", "rev", "ror", "sbc", "sxtb", "sxth", "tst", "uxtb", "uxth", "nop", "sev", "wfe", "wfi", "yield", "blx", "bx", "dmb", "dsb", "isb", "ldrsb", "ldrsh", "cpsid", "cpsie", "cmp", "mov", "add", "adr", "bkpt", "b", "ldm", "ldr", "mrs", "msr", "mul", "pop", "push", "rsb", "stm", "str", "sub", "svc", "align", "db", "dcb", "dcd", "dcs", "dcw", "equb", "equd", "equq", "equs", "equw", "opt", "syntax"}; static const uint16_t opcodes[] = { 0x1000, // ASR \ , , # 0x0000, // LSL | 0x0800, // LSR / 0x7800, // LDRB \ , [, #] 0x7000, // STRB / 0x8800, // LDRH \ , [. #] 0x8000, // STRH / 0x4140, // ADC \ , 0x4000, // AND | 0x4380, // BIC | 0x42C0, // CMN | 0x4040, // EOR | 0x43C0, // MVN | 0x4300, // ORR | 0xBA40, // REV16 | 0xBAC0, // REVSH | 0xBA00, // REV | 0x41C0, // ROR | 0x4180, // SBC | 0xB240, // SXTB | 0xB200, // SXTH | 0x4200, // TST | 0xB2C0, // UXTB | 0xB280, // UXTH / 0xBF00, // NOP \ 0xBF40, // SEV | 0xBF20, // WFE | 0xBF30, // WFI | 0xBF10, // YIELD / 0x4780, // BLX \ 0x4700, // BX / 0x8F5F, // DMB \ 32-bit 0xF3BF____ 0x8F4F, // DSB | 0x8F6F, // ISB / 0x5600, // LDRSB \ , [, ] 0x5E00, // LDRSH / 0xB672, // CPSID \ i 0xB662 // CPSIE / }; static const uint16_t opcode2[] = { 0x4100, // ASR \ , 0x4080, // LSL | 0x40C0, // LSR / 0x5C00, // LDRB \ , [, ] 0x5400, // STRB / 0x5A00, // LDRH \ , [, ] 0x5200, // STRH / }; static const char *conditions[] = { "al", "cc", "cs", "eq", "ge", "gt", "hi", "hs", "le", "lo", "ls", "lt", "mi", "ne", "pl", "vc", "vs" }; static const unsigned char ccodes[] = { 0b1110, 0b0011, 0b0010, 0b0000, 0b1010, 0b1100, 0b1000, 0b0010, 0b1101, 0b0011, 0b1001, 0b1011, 0b0100, 0b0001, 0b0101, 0b0111, 0b0110 }; static const char *registers[] = { "lr", "pc", "r0", "r10", "r11", "r12", "r13", "r14", "r15", "r1", "r2", "r3", "r4", "r5", "r6", "r7", "r8", "r9", "sp" }; static const unsigned char regno[] = { 14, 15, 0, 10, 11, 12, 13, 14, 15, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13 }; static const char *sysm[] = { "apsr", "iapsr", "eapsr", "xpsr", "ipsr", "epsr", "iepsr", "msp", "psp", "primask", "control" }; static const char *oslist[] = { "osrdch", "oswrch", "oskey", "osline", "oscli", "osopen", "osbyte", "osword", "osshut", "osbget", "osbput", "getptr", "setptr", "getext" }; static const void *osfunc[] = { osrdch, oswrch, oskey, osline, oscli, osopen, osbyte, osword, osshut, osbget, osbput, getptr, setptr, getext }; static const char *asmmsg[] = { "Invalid opcode", // 101 "Too many parameters", // 102 "Invalid register", // 103 "Low register required", // 104 "Invalid alignment", // 105 "Register / list conflict", // 106 "Invalid register list", // 107 "Status flags not set", // 108 "Invalid special register", // 109 "Instruction sets status flags" // 110 }; static void asmerr (int ierr) { if ( liston & 0x20 ) { const char *pserr = NULL; if ( ierr > 100 ) pserr = asmmsg[ierr - 101]; error (ierr, pserr); } } static int lookup (const char **arr, int num) { int i, n; for (i = 0; i < num; i++) { n = strlen (*(arr + i)); if (strnicmp ((const char *)esi, *(arr + i), n) == 0) break; } if (i >= num) return -1; esi += n; return i; } static int status (void) { if (( *esi == 's' ) || ( *esi == 'S' )) { ++esi; return 1; } return 0; } static void chkstatus (void) { int st = status (); if (( bUni ) && ( ! st )) asmerr (110); // 'Instruction sets status flags' } static unsigned char reg (void) { int i; nxt (); i = lookup (registers, sizeof(registers) / sizeof(registers[0])); if (i < 0) { i = itemi(); if ((i < 0) || (i > 15)) asmerr (103); // 'Invalid register' return i; } return regno[i]; } static unsigned char reg8 (void) { int i = reg (); if ( i >= 8 ) asmerr (104); // 'Low register required' return i; } static int reglist (void) { int temp = 0; if (nxt () != '{') asmerr (16); // 'Syntax error' do { unsigned char tmp; esi++; tmp = reg (); temp |= 1 << tmp; if (nxt () == '-') { unsigned char last; esi++; last = reg (); while (++tmp <= last) temp |= 1 << tmp; } } while (nxt () == ','); if (*esi != '}') asmerr (16); // 'Syntax error' esi++; return temp; } static int offset (int *pbImm) { *pbImm = 0; if (nxt () == '#') { esi++; *pbImm = 1; return expri (); } return reg (); } static int offset2 (int *pbImm) { int or; if ( nxt () == ',' ) { ++esi; or = offset (pbImm); } else { *pbImm = 1; or = 0; } return or; } static void tabit (int x) { if (vcount == x) return ; if (vcount > x) crlf () ; spaces (x - vcount) ; } static void poke (const void *p, int n) { char *d; if (liston & BIT6) { d = OC; stavar[15] += n; } else d = PC; stavar[16] += n; memcpy (d, p, n); } static void *align (int n) { while (stavar[16] & (n-1)) { stavar[16]++; if (liston & BIT6) stavar[15]++; }; return PC; } static inline int eol (char ch) { return (( ch == 0x0D ) || ( ch == ':' ) || ( ch == ';' ) || ( ch == TREM )) ? 1 : 0; } static void asarg (int *rd, int *rn, int *offreg, int *bImm) { *bImm = 0; *rd = reg (); comma (); *rn = offset (bImm); if ( *bImm ) { if ( bUni ) asmerr (16); // 'Syntax error' *offreg = *rn; *rn = *rd; } else { if ( nxt () == ',' ) { ++esi; *offreg = offset (bImm); } else { if ( bUni ) asmerr (16); // 'Syntax error' *offreg = *rn; *rn = *rd; } } } static int addsi (int rd, int rn, int offreg) { int instruction; if ( rd == rn ) { if ( offreg >= 0 ) { instruction = 0x3000 | ( rd << 8 ) | ( offreg & 0xFF ); } else { offreg = -offreg; instruction = 0x3800 | ( rd << 8 ) | ( offreg & 0xFF ); } if (offreg > 255) asmerr (2); // 'Bad immediate constant' } else { if ( offreg >= 0 ) { instruction = 0x1C00 | (( offreg & 0x07 ) << 6 ) | ( rn << 3 ) | rd; } else { offreg = -offreg; instruction = 0x1E00 | (( offreg & 0x07 ) << 6 ) | ( rn << 3 ) | rd; } if (offreg > 7) asmerr (2); // 'Bad immediate constant' } return instruction; } void assemble (void) { signed char al; signed char *oldesi = esi; int init = 1 ; void *oldpc = PC; while (1) { int mnemonic, condition, instruction; if (liston & BIT7) { int tmp; if (liston & BIT6) tmp = stavar[15]; else tmp = stavar[16]; if (tmp >= stavar[12]) error (8, NULL); // 'Address out of range' } al = nxt (); esi++; switch (al) { case 0: esi--; liston = (liston & 0x0F) | 0x30; return; case ']': liston = (liston & 0x0F) | 0x30; return; case 0x0D: newlin (); if (*esi == 0x0D) break; case ':': if (liston & BIT4) { void *p; int n = PC - oldpc; if (liston & BIT6) p = OC - n; else p = PC - n; do { #if (defined (_WIN32)) && (__GNUC__ < 9) sprintf (accs, "%08I64X ", (long long) (size_t) oldpc); #else sprintf (accs, "%08llX ", (long long) (size_t) oldpc); #endif char *ps = accs + 9; switch (n) { default: sprintf (ps, "%02X ", *((unsigned char *)p)); ps += 3; ++p; case 3: sprintf (ps, "%02X ", *((unsigned char *)p)); ps += 3; ++p; case 2: sprintf (ps, "%02X ", *((unsigned char *)p)); ps += 3; ++p; case 1: sprintf (ps, "%02X ", *((unsigned char *)p)); ps += 3; ++p; case 0: break; } if (n > 4) { n -= 4; oldpc += 4; } else n = 0; text (accs); if (*oldesi == '.') { tabit (21); do { token (*oldesi++ ); } while (range0(*oldesi)); while (*oldesi == ' ') oldesi++; } tabit (30); while ((*oldesi != ':') && (*oldesi != 0x0D)) token (*oldesi++); crlf (); } while (n); } nxt (); #ifdef __arm__ if ((liston & BIT6) == 0) __builtin___clear_cache (oldpc, PC); #endif oldpc = PC; oldesi = esi; break; case ';': case TREM: while ((*esi != 0x0D) && (*esi != ':')) esi++; break; case '.': { VAR v; unsigned char type; void *ptr = getput (&type); if (ptr == NULL) asmerr (16); // 'Syntax error' if (type >= 128) asmerr (6); // 'Type mismatch' if ((liston & BIT5) == 0) { v = loadn (ptr, type); if (v.i.n) asmerr (3); // 'Multiple label' } if (init) oldpc = align (4); v.i.t = 0; v.i.n = (intptr_t) PC; storen (v, ptr, type); break; } default: esi--; mnemonic = lookup (mnemonics, sizeof(mnemonics)/sizeof(mnemonics[0])); oldpc = PC; if (mnemonic != OPT) init = 0; instruction = opcodes[NOP]; int instruction2 = -1; switch (mnemonic) { case OPT: liston = (liston & 0x0F) | (expri () << 4); continue; case DB: { VAR v = expr (); if (v.s.t == -1) { if (v.s.l > 256) asmerr (19); // 'String too long' poke (v.s.p + zero, v.s.l); continue; } if (v.i.t) v.i.n = v.f; poke (&v.i.n, 1); continue; } case DCB: case EQUB: { int n = expri (); poke (&n, 1); continue; // n.b. not break } case DCW: case EQUW: { align (2); int n = expri (); poke (&n, 2); continue; // n.b. not break } case DCD: case EQUD: case EQUQ: { VAR v = expr (); long long n; if (v.s.t == -1) { signed char *oldesi = esi; int i; memcpy (accs, v.s.p + zero, v.s.l); *(accs + v.s.l) = 0; esi = (signed char *)accs; i = lookup (oslist, sizeof(oslist) / sizeof(oslist[0])); esi = oldesi; if (i >= 0) n = (size_t) osfunc[i]; else n = (size_t) sysadr (accs); if (n == 0) asmerr (51); // 'No such system call' } else if (v.i.t == 0) n = v.i.n; else n = v.f; align (4); if (mnemonic == EQUQ) poke (&n, 8); else poke (&n, 4); } continue; // n.b. not break case DCS: case EQUS: { VAR v = exprs (); if (v.s.l > 256) asmerr (19); // 'String too long' poke (v.s.p + zero, v.s.l); continue; } case ALIGN: align (4); if ((nxt() >= '1') && (*esi <= '9')) { int n = expri (); if ((n & (n - 1)) || (n & 0xFFFFFF03) || (n == 0)) asmerr (105); // 'invalid alignment' instruction = opcodes[NOP]; while (stavar[16] & (n - 1)) poke (&instruction, 2); } continue; case SYNTAX: switch (nxt ()) { case 'u': case 'U': bUni = 1; break; case 'd': case 'D': bUni = 0; break; default: asmerr (16); // 'Syntax error' break; } ++esi; continue; // Thumb Instructions case MOV: // MOVS , # // MOVS , // MOV , if ( status () ) { int rd = reg8 (); comma (); int bImm; int offreg = offset (&bImm); if ( bImm ) { if (( offreg < 0 ) || ( offreg > 0xFF )) asmerr (2); // 'Bad immediate constant' instruction = 0x2000 | (( rd & 0x07 ) << 8 ) | ( offreg & 0xFF ); } else { if ( offreg > 7 ) asmerr (104); // 'Low register required' instruction = 0x0000 | (( offreg & 0x07 ) << 3 ) | rd; } } else { int rd = reg (); comma (); int bImm; int offreg = offset (&bImm); if ( bImm ) { if ( bUni ) asmerr (110); // 'Instruction affects status flags' if ( rd > 7 ) asmerr (104); // 'Low register required' if (( offreg < 0 ) || ( offreg > 0xFF )) asmerr (2); // 'Bad immediate constant' instruction = 0x2000 | (( rd & 0x07 ) << 8 ) | ( offreg & 0xFF ); } else { instruction = 0x4600 | (( rd & 0x08 ) << 4 ) | ( offreg << 3 ) | ( rd & 0x07 ); } } break; case CMP: { // , # // , // , int rn = reg (); comma (); int bImm; int offreg = offset (&bImm); if ( bImm ) { if ( rn > 7 ) asmerr (104); // 'Low register required' if (( offreg < 0 ) || ( offreg > 0xFF )) asmerr (2); // 'Bad immediate constant' instruction = 0x2800 | ( rn << 8 ) | ( offreg & 0xFF ); } else if (( rn < 8 ) && ( offreg < 8 )) { instruction = 0x4280 | ( offreg << 3 ) | rn; } else { instruction = 0x4500 | (( rn & 0x08 ) << 4 ) | ( reg () << 3 ) | ( rn & 0x07 ); } break; } case ASR: case LSL: case LSR: { // Rd, Rm, # // {Rd,} Rd, Rm chkstatus (); int rd = reg8 (); comma (); int rm = reg8 (); int bImm = 0; int offreg = rm; if ( nxt () == ',' ) { ++esi; offreg = offset (&bImm); } else if ( bUni ) { asmerr (16); // 'Syntax error' } else { rm = rd; } if ( bImm ) { if (( offreg < 0 ) || ( offreg > 31 )) asmerr (2); // 'Bad immediate constant' instruction = opcodes[mnemonic] | ( offreg << 6 ) | ( rm << 3 ) | rd; } else if (( rm == rd ) && ( offreg < 8 )) { instruction = opcode2[mnemonic] | ( offreg << 3 ) | rd; } else { asmerr (103); //'Invalid register' } break; } case LDRB: case STRB: { // , [, #] // , [, ] int rd = reg8 (); comma (); if ( nxt () == '[' ) ++esi; else asmerr (16); // 'Syntax error' int rn = reg8 (); int bImm; int offreg = offset2 (&bImm); if ( bImm ) { if (( offreg < 0 ) || ( offreg > 31 )) asmerr (2); // 'Bad immediate constant' instruction = opcodes[mnemonic] | (( offreg & 0x1F ) << 6 ) | ( rn << 3 ) | rd; } else { if ( offreg > 7 ) asmerr (104); // 'Low register required' instruction = opcode2[mnemonic] | (( offreg & 0x07 ) << 6 ) | ( rn << 3 ) | rd; } if ( nxt () == ']' ) ++esi; else asmerr (16); // 'Syntax error' break; } case LDRH: case STRH: { // LDRH , [, #] // LDRH , [, ] int rd = reg8 (); comma (); if ( nxt () == '[' ) ++esi; else asmerr (16); // 'Syntax error' int rn = reg8 (); int bImm; int offreg = offset2 (&bImm); if ( bImm ) { if (( offreg < 0 ) || ( offreg > 62 )) asmerr (2); // 'Bad immediate constant' else if ( offreg & 0x01 ) asmerr (105); // 'Invalid alignment' instruction = opcodes[mnemonic] | (( offreg & 0x3E ) << 5 ) | ( rn << 3 ) | rd; } else { if ( offreg > 7 ) asmerr (104); // 'Low register required' instruction = opcode2[mnemonic] | (( offreg & 0x07 ) << 6 ) | ( rn << 3 ) | rd; } if ( nxt () == ']' ) ++esi; else asmerr (16); // 'Syntax error' break; } case ADC: case AND: case BIC: case EOR: case ORR: case ROR: case SBC: { // {rd,} rd, rn chkstatus (); int rd = reg8 (); comma (); int rn = reg8 (); int rm = rn; if ( nxt () == ',' ) { ++esi; rm = reg8 (); if ( rn != rd ) asmerr (103); // 'Invalid register' } else if ( bUni ) { asmerr (16); // 'Syntax error' } instruction = opcodes[mnemonic] | ( rm << 3 ) | rd; break; } case MVN: chkstatus (); case CMN: case REV: case REV16: case REVSH: case SXTB: case SXTH: case TST: case UXTB: case UXTH: // Rd, Rn instruction = opcodes[mnemonic] | reg8 (); comma (); instruction |= reg8 () << 3; break; case NOP: case SEV: case WFE: case WFI: case YIELD: instruction = opcodes[mnemonic]; break; case BLX: case BX: // instruction = opcodes[mnemonic] | ( reg () << 3 ); break; case DMB: case DSB: case ISB: // nxt (); if ( !strnicmp ((const char *)esi, "sy", 2) ) esi += 2; instruction2 = 0xF3BF; instruction = opcodes[mnemonic]; break; case LDRSB: case LDRSH: // , [, ] instruction = opcodes[mnemonic] | reg8 (); comma (); if ( nxt () == '[' ) ++esi; else asmerr (16); // 'Syntax error' instruction |= reg8 () << 3; comma (); instruction |= reg8 () << 6; if ( nxt () == ']' ) ++esi; else asmerr (16); // 'Syntax error' break; case ADD: { int st = status (); int rd; int rn; int offreg; int bImm; asarg (&rd, &rn, &offreg, &bImm); if ( st ) { if (( rd > 7 ) || ( rn > 7 )) asmerr (104); //'Low register required' if ( bImm ) { instruction = addsi (rd, rn, offreg); } else { if ( offreg > 7 ) asmerr (104); // 'Low register required' instruction = 0x1800 | ( ( offreg & 0x07 ) << 6 ) | ( rn << 3 ) | rd; } } else { if ( bImm ) { if ( rn == 13 ) { if ( rd == 13 ) { if ( offreg >= 0 ) { instruction = 0xB000 | (( offreg >> 2 ) & 0x7F ); } else { offreg = - offreg; instruction = 0xB080 | (( offreg >> 2 ) & 0x7F ); } if ( offreg > 508 ) asmerr (2); // 'Bad immediate constant' else if ( offreg & 0x03 ) asmerr (105); // 'Invalid alignment' } else { if ( rd > 7 ) asmerr (104); //'Low register required' if (( offreg < 0 ) || ( offreg > 1020 )) asmerr (2); // 'Bad immediate constant' else if ( offreg & 0x03 ) asmerr (105); // 'Invalid alignment' instruction = 0xA800 | (( rd & 0x07 ) << 8 ) | (( offreg >> 2 ) & 0xFF ); } } else if ( rn == 15 ) { if ( rd > 7 ) asmerr (104); //'Low register required' if (( offreg < 0 ) || ( offreg > 1020 )) asmerr (2); // 'Bad immediate constant' else if ( offreg & 0x03 ) asmerr (105); // 'Invalid alignment' instruction = 0xA000 | (( rd & 0x07 ) << 8 ) | (( offreg >> 2 ) & 0xFF ); } else if ( ! bUni ) { if (( rd > 7 ) || ( rn > 7 )) asmerr (104); //'Low register required' instruction = addsi (rd, rn, offreg); } else { asmerr (103); // 'Invalid register' } } else { if ( rn == rd ) { instruction = 0x4400 | (( rd & 0x08 ) << 4 ) | ( offreg << 3 ) | ( rd & 0x07 ); } else if ( ! bUni ) { if (( rd > 7 ) || ( rn > 7 ) || ( offreg > 7 )) asmerr (104); // 'Low register required' instruction = 0x1800 | ( ( offreg & 0x07 ) << 6 ) | ( rn << 3 ) | rd; } else { asmerr (103); // 'Invalid register' } } } break; } case SUB: { int st = status (); int rd; int rn; int offreg; int bImm; asarg (&rd, &rn, &offreg, &bImm); if ( st ) { if (( rd > 7 ) || ( rn > 7 )) asmerr (104); //'Low register required' if ( bImm ) { instruction = addsi (rd, rn, -offreg); } else { if ( offreg > 7 ) asmerr (104); // 'Low register required' instruction = 0x1A00 | (( offreg & 0x07 ) << 6 ) | ( rn << 3 ) | rd; } } else { if (( rd == 13 ) && ( rn == 13 ) && ( bImm )) { if ( offreg >= 0 ) { instruction = 0xB080 | (( offreg >> 2 ) & 0x7F ); } else { offreg = - offreg; instruction = 0xB000 | (( offreg >> 2 ) & 0x7F ); } if ( offreg > 508 ) asmerr (2); // 'Bad immediate constant' else if ( offreg & 0x03 ) asmerr (105); // 'Invalid alignment' } else if ( ! bUni ) { if ( bImm ) { if (( rd > 7 ) || ( rn > 7 )) asmerr (104); //'Low register required' instruction = addsi (rd, rn, -offreg); } else { if (( rd > 7 ) || ( rn > 7 ) || ( offreg > 7 )) asmerr (104); // 'Low register required' instruction = 0x1A00 | (( offreg & 0x07 ) << 6 ) | ( rn << 3 ) | rd; } } else { asmerr (103); // 'Invalid register' } } break; } case ADR: { // ADR ,