wrf-lesintherealworld: towardsaseamless ...label real vortex−les 111 m vortex−pbl 3 km 0.00 0.05...
TRANSCRIPT
-
17th WRF Users’ Workshop
WRF-LES in the real world: Towards a seamless
modeling chain for wind industry applications
A. Montornès1 P. Casso1 B. Kosovic2 G. Lizcano1
1Vortex, 2NCAR–RAL
Montornès et. al, [email protected] Vortex
WRF-LES in the real world
-
17th WRF Users’ Workshop
◮ Experienced Vortex started its technology development in 2005 byformer Wind Site engineers, atmospheric physicists and computerexperts in a unusual collaborative team of experienced professionalswith active researchers.
◮ Wind industry Vortex provides wind resource maps and seriesoriented for wind resources assessment and forecasting purposes.
Montornès et. al, [email protected] Vortex
WRF-LES in the real world
-
17th WRF Users’ Workshop
0
10
20
30
19/12 21/12 23/12 25/12 27/12 29/12 31/12Time (10')
10
' me
an
Win
d s
pe
ed
[m
/s]
lab Real
Montornès et. al, [email protected] Vortex
WRF-LES in the real world
-
17th WRF Users’ Workshop
2000s - 2010s
1 m 10 m100 m
1 km10 km
100 km
1.000 km
10.000 km
1 h
1 day
1 week
1 Month
1 Year
10 Years
100 Years
1000 Years
10 min
1 min
10 s
1 s
-
17th WRF Users’ Workshop
Mesoscale models 2000s - 2010s
F = F̄ + F ′
◮ ∆x ≥ 500 m
◮ Wind resolved at each grid-point of the domain describes the meanstate flow F̄ .
◮ Mixing motions F ′ must be simplified and parameterized.
◮ Model splits the spatial diffusion
◮ Vertical diffusion → PBL schemes.◮ Horizontal diffusion → represented in terms of the
deformation of the large-scale flow.
Montornès et. al, [email protected] Vortex
WRF-LES in the real world
-
17th WRF Users’ Workshop
2000s - 2010s
0
10
20
30
19/12 21/12 23/12 25/12 27/12 29/12 31/12Time (10')
10
' me
an
Win
d s
pe
ed
[m
/s]
lab Real Vortex−PBL 3 km
Montornès et. al, [email protected] Vortex
WRF-LES in the real world
-
17th WRF Users’ Workshop
2016: Microscale is here
1 m 10 m100 m
1 km10 km
100 km
1.000 km
10.000 km
10 cm1 cm
-
17th WRF Users’ Workshop
Large Eddy Simulations
F′ = Large Eddies (> ∆x) + Small Eddies (< ∆x)
◮ Turbulence motions are divided in Large Eddies and Small Eddies.
◮ Large Eddies (> ∆x) are solved as a solution of the Navier-StokesEquations.
◮ Small Eddies (< ∆x) need to be parameterized in subgrid-scalemodels (SGS) and resolved sub-filter scales (SFS).
Montornès et. al, [email protected] Vortex
WRF-LES in the real world
-
17th WRF Users’ Workshop
2016: Real or model?
Serie 1
Serie 2
0
10
20
30
0
10
20
30
16/07 18/07 20/07 22/07 24/07 26/07 28/07 30/07Time (10')
10
' me
an
Win
d s
pe
ed
[m
/s]
Montornès et. al, [email protected] Vortex
WRF-LES in the real world
-
17th WRF Users’ Workshop
2016: Real or model?
0
10
20
30
16/07 18/07 20/07 22/07 24/07 26/07 28/07 30/07Time (10')
10
' me
an
Win
d s
pe
ed
[m
/s]
lab Real Vortex−LES 111 m
Montornès et. al, [email protected] Vortex
WRF-LES in the real world
-
17th WRF Users’ Workshop
2016: Real or model?
0
10
20
30
16/07 18/07 20/07 22/07 24/07 26/07 28/07 30/07Time (10')
10
' me
an
Win
d s
pe
ed
[m
/s]
lab Real Vortex−LES 111 m Vortex−PBL 3 km
Montornès et. al, [email protected] Vortex
WRF-LES in the real world
-
17th WRF Users’ Workshop
Limitations in real simulations
Mesoscale PBL
BC
Microscale LES
Montornès et. al, [email protected] Vortex
WRF-LES in the real world
-
17th WRF Users’ Workshop
Limitations in real simulations
Mesoscale PBL
BC
Montornès et. al, [email protected] Vortex
WRF-LES in the real world
-
17th WRF Users’ Workshop
Limitations in real simulations
Mesoscale PBL
BC
θnew = θold + θ'
MuñozEsparza (2014)
+Vortex inhouse R+D
Montornès et. al, [email protected] Vortex
WRF-LES in the real world
-
17th WRF Users’ Workshop
Vortex approach
Reanalysis
VortexWRFLESVortex
WRFLES
Mesoscale PBL
Microscale LES
Postprocessing
4 Hz output 10' averages
10' standard deviation
20150 meters above ground
Wind speed, Wind direction,Temperature, Pressure, RichardsonNumber, PBL Fluxes, Wind Veer,
Inflow angle, ...
3'' gust
Montornès et. al, [email protected] Vortex
WRF-LES in the real world
-
17th WRF Users’ Workshop
Site 1 Metmast: 60 m
Vortex-3 km
Vortex-111 m
Bias10' RMSE10' R2
hourly R2
daily
1.0 ms-1 1.7 ms-1
1.0 ms-1 1.7 ms-1
0.87 0.95
0.86 0.94
0.00
0.03
0.06
0.09
0.12
0 10 20 3010' mean wind speed [m/s]
Pro
babili
ty D
ensity
label Real Vortex−LES 111 m Vortex−PBL 3 km
●●
●
●
●
●
●
●●●
● ●
●
●
● ●●
●
●
●● ●●● ●
● ●
●
●
●
●
●●
●●
● ●●
● ●
●●
●
●
●
●●●
●
●
●
●
●●●
●
●
●
●
●
●
●
●
●●●●●
●●●●
●●
●●●
● ●●●
● ●
●
●
●●
●
●
●
●●●
●●
●
●
●
●●●
●●●●
●●●●●●
●●●●●
●●●●●●●●
●●●●
●●●●
●●
●●●●●
●●
●●●●●
●
●●●
●
●●
●●
●●●
●●●●
●●●●●●
●
●
●●●●●
●●●
●
●
●
●
●●
●
●
●
●
●●●
●
●●●●
●
●
●
●●●
●
●●●●●●●
●
●
●
●
●●●
●
●
●
●
●●
●●●
●
●
●●●●
●
●
●
●
●
●
●
●
●
●● ●
●
●●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●●●
●
●
●
●
●
●
●
●●●
●
●● ●
●
●
●
●
●
●
●
●●
●
●
●
●
●●●●
●●
●
●●●
●
●
●●
●
●
●
●
●
●
●●
●
●
●
●
●
● ●
●●
●●
●
●
●
●●
●●
●
●●●●
●●
●
●
●●
●●
●
●
●●
●●
●
●
●●●
●
●●
●
●●
●
●
●●●●●
●
●
●
●
●
●
●
●●
●
●
● ●●●●●●●●
●●●●●●
●●●●●
●
●
●●●●●●
●●
●
●●●●
●
●
●●
●
●●
●●●
●●
●●
●
●●●
●●●●
●●
●●
●
●
●
●●
●●
●●●
●●●●●
●
●
●●
●
●●
●●
●●
●●●●●
●●
●
●●
●
●
●
●
●
●●●●
●● ●●●●●
●●
●●
●●●
●●●●
●
●●●●●
●●●
●●● ●●
●
●
●
●
●●●
●
●
●
●●
●
●●
●
●●●
●●●
●
●●●
●●●
●●●
●●
●
●●●●
●●●●●●●
●●
●●
●
●
●●●●
●●●●
●
●●
●●
●
●●
●
●●●●●●●
●●●●●
●●●●
●●●●
●
●
●●●
●●
●
●●●
●
●●●●●●●
●●●●●
●● ●
●●
●
●●●
●●●●●
●●●●●
●
●
●●●
●
●●
●
●
●●
●●●●
● ●
●●●●●●●
●
●●
●
●●
●●●
●●●●●
●
●
●●
●
●●
●
●●
●
●●●
●
●●
●●
●
●
●●
●
●
●●
●●
●●
●
●
●●●
●●●
●
●
●
●●●●
●●●
●
●
●
●
●
●
●●
●
●●
●●
●●●
●
●●
●
●
●●
●
●● ●
●
●
●●●●
●●●●●●
●●●● ●●●●
● ●
●●
●
●
●●●
●
●●
●●●●
●●
●
●
●●●
●
●●●
●●
●●●
●
●
●
●
●●●
●
●
●
●
●
●
●
●●
●
●
●
●●● ●
●
●●
●
●
●
●
●
●●
●
●●
●●
●
●
●
●
●●
●
●●
●
●
●
●
●●
●
●
●
●
●
●●
●●●
●
●
●
●
●
●
●
●
●
●
●
●●●
●
●
●●
●
●
●●●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●
●●
●
●
●
●
●
●●
●
●
●●
●● ●
●
●
●●
●
●●●
●●
●
●●
●●
●
●●
●
●
●
●
●
●
● ●●
●
●●●
●●
●●●
● ●
●
●
●
●●
●
●
●●●●●●
●
●●
●●
●
●
●
●●●
●●
●
●●
●●
●
●
●●
●
●●
●●
●●●
●●
●
●
●
●●
●●
●
●
●
●
●
●●
●
● ●
●●
●●
●
●
●
●
●
●
●
●
●●
●●
●
●●
●●
●
●
●
●●
●●
●
●
●
●
●
●●
●
●
●●
●●●
●●●
●●
●●●
●●●●●
●●●●
●
●
●●● ●●
●●●●
●●
●●
●
●●
●
●
●●
●
●
●
●●
●
●
●●
●●
●●
●
● ●
●
● ●
●
●
●
●●
●●
●
●
●●●●●
●●●●
●●●
●●
●
●
●●
●●●●● ● ●
●●●
●
●
●
●
●
●●
●●
●
●
●
●
● ●● ●●●● ●
●●●
●●●
●
●
●●
●●●
●
●●
●
●●
●
●
●●●
●
●
●
●
●
●●
●●●●●
●
●
● ●●
●●
●
●
●●●●
●●●
●●●●
●● ●●
●●●
●
●●
●
●
●
●●●
●●●
●
●●
●
●● ●
●
●
●
●
●●●
●
●●
●
●
●
●●
●
●
●
●●
●●●●
●● ●●●●●● ●
●●●●●●
●●
●
●
●
●●
●
●●
●
●
●●●●●
●●
●
●
●
●
● ●●●●
● ●
●
●● ●
●●●
● ●●●
●
●●●
●●●
●
●
●
● ●●
●
●
●
●
●●●
●
●●●● ●●●
●
●●
●●
●●
●
●
●●
●
●●●●
●●●●
●●
●●
●●
●●●●
●●●
●●●
●●●●
●●●●●
●●●
●●●
●
●
●●●
●
●
●
●●
●●●
●●
●●●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●
●
●
●●
●●
●●
●
●●
●●
●●
●●
●
●
●●●
●
●
●
●
●
●●●
●●●●
●●●
●●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●●
●
●●
●
●
●
●●
●
●●
●
●
●
●
●
●
●
●
●
●
●●●
●
●
●●
●
●●●●
●●●
●
●
● ●
●
●
●
●●
●
●●
●
●
●●
●
●●
●
●●
●
●
●●●●●
●
●
●●●
●●
●
●●●●
●
●
●
●
●●
●
●●
●
●
●
● ●
●
●
●
●
●
●●
●
●
●
●
●●
●
●●
●
●
●
●●
●
●
●
●
●
●●●●●
●
●●
●●
●
●●●●●
●
●
●
●
●
●
●●
●●
●
●
●●
●
●●
●●
●
●●
●
●
●●●●●
●
●
●●
●
●●
●●●●●●
●●
●
●
●●
●
●●
●●
●
●
●●●●
●
●
●
●
●●●
●
●●
●
●
●
●
●
●●
●●
●
●
● ●
●
●
●
●
●
●
●
●●
●●
●●●●
●●●
●
●●●
●
●
●●
● ●
●●
●
●● ●
● ●
●
●●●●
●
●
●
●●
●●●●
●●
●
●●●
●
●●
●
●
●
●●
●
●●
●
●
●●
●
●
●●
●
●
●
●
●
●●
●●
●
●
●●●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●
●
●
●●●
● ●
●●
●
●●
●
●
●
●
●●
●●
●●
●
●●
●
●
●
●●●●
●●●●
●●
●
●
●
●
●
●●●
●●●●●
●
● ●●
●
●●●
●●
●
●
●●
●●
●
●
●
●
●
●
●
●
●
●
●●●●
●
●●
● ●●
●●●●
●●●
●●●
●●
●
●
●
●●
●
●●
●
●
●●
●
●●
●●
●●
●
●
●● ●
●
●
●●
●●●
●●
●
●●
●
●●
●
●
●●
●●
●●●
●
●
●●●
●●
●●
●●
●
●
●●
●
● ●●
●
● ●
●
●●
●●
●●
●
●●●●
●●
●
●●● ●
●
●●
●
●●●
●
●
●●●
●
●●●●●●●●
●●●●
●●●
●●●●●●●
●●●●●● ●
●●●●●●●●●●●
●●
●●●●●
●● ●●
●●●●●●●●●
●
●●
●●●●
● ●
●●
●
●
●
●
●
●
●●●
●●●
●
●●●●
●●●●
●●●●●●●●●● ●
●
●●
●●●●
●●●
●●●●●●
●
●
●●
●●●●●●●●●●●●
●●
●●●●●●●●●●
●
●
●●●●
● ●●●●●●
●●●
●●
●●●
●●●●●●
●●
●
●
●●
●●
●
●●●
●●●●●●●
●●●●
●●●
●●●●
●
●●●
●●
●●
●●●●●
●●●●●
●●●●
●●●●
●
●
●●
●●
●●
●●●●
●●
●●
●●
●
●
●●
●●
●●●
●
●●● ●
●
●●●●●●
●●●●
●●●●●
●●
●
●●●●●
●●
●●
●●
●●
●
●●
●
●
●
●
●
●
●
●
●●
●
●●●●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●●●
● ●●●
●●
●●●
●
●
●
●
●
●
●●
●●●
●
●●
●
●●
●
●
●
●
●
●
●
●●
●●
●
●●●
●●
●
●
●
●
●
●
●●
●●●
●
●
●●●
● ●●
●
●●●●
●
●
●●
●
●
●
●●●●
●
●
●
●●●
●
●
●
●●●●●●●●●●●●●●
●●●●
●●● ●●●
●
●●
●
●
●
●
●
●
●
●●●●
●
●●
●
●
●●●●
●
●●
●
●●
●
●●
●
●
●●●
●●●
● ●●
●●
●●
●
●
●●
●
●●●
●●●
●●●
●
●●
●●●●●●
●●●
●●●
●●●
●
●●●●
●●●●
● ●●
●●●
●
●
●
●
●●●●
●
●
●
●
● ●●●●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●●●●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
●
●
●
●
●
●●
●●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●●
●●
●●
●
●
●●●
●
●
●
●
●●
●
●
●
●
●
●
●
●●
●
●
●●
●
●
●
●
●
●●●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●●●
●●
●
●
●
●●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●
●●●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●●
●
●
●
●
●
●
●●
●
●
●
●
●●
●
●
●●
●
●
●
●
●
●
●
●●●
●
●
●
●
●● ●
●●
●
●
●●
●
●
●●●
●
●
●
●●
●●
●●
●●
●
●●●
●
●●
●●
●●●
●
●●●
●●●
●
●●
●●●●●
●
●●
●●
●●
●
●●●●●
●
●
●●●
●
●●
● ●
●
●●●
●
●●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●●●
●●●●
●
●
●
●●●
●
●
●
●●●●●●
●●●
●
●●●
●●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●●●
●
●
●
●
●
●●●
●
●
●
●●
●●
●
●
●●
●
●
●
●
●●
●
●
●
●●
●
●
●
●
●
●●
●●●●
●
●●●
●● ●
●●●●●●●●●●●
●●●●●
●●
●
●
●●
●
●
●●
●
● ●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
● ●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●●
●
●●●
●
●● ●
●●●●
●
●
●●
●
●●
●●●
●●
●
●
●
●●
●
●
●
●●●
●
●●●●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●●● ●●
●●
●●
●
●●
●●
●● ●
●
●●
●●●●●●
●
●
● ●●
●
●
●●●
●
●●
●●
●
●●
●
●
●●
● ●● ●
●
●●
●
● ●●●●
●
●
●●
●●
●
●
●
●●●
●
●●●
●●●
●●
●●● ●●
●●
●●●●●●
●●●
●
●
●
●
●●
●
●●
●
●
●●
●●
●
●
●●●●●●●●●
●
●●●
●
●●●●
●
●
●
●
●
●
●
●
●
●
●
●●
●
● ●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
● ●
●●
●
●● ●
●
●
●
●
●
●
●
●●
●●
●
●
●●
●
●●
● ●●●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●●● ●
●●
●
●
●
●●
●
●
●
● ●
●
●
●●
●●
●
● ●
●
●● ●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●●
●
●
●
●
●
●
●
●●●
●
●●
●
●
●
●
●●
●
●
●
● ●●
●●
●
●●●
●
●●
●●
●●●●
●
●●
●
●
●
●
●●
●●
●
●
●●●●●
●●
●●
●
●●
●●
●●●●
●●
●
●●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●●●●
●
●●●●●
●
●
●●
●●
●
●●
●
●
●●
●
●
●
●●
●
●●
●
●
●
●
●●●
●
●●●
●
●●
●●●●
●
●
●●●●●
●●●●
●
●
●●●●
●●
●●●
●●
●●●●
●
●●●
●●
●
●
●●●●●●
●●
●
●
●
●
●
●
●
●
●
●●
●●● ●
●●
●●
●●
●
●
●
●
●●
●●
●
●
●
●
●●
●
●●
● ●
●
●
●
●
●
●
●
●
●●
●
●●●
●
●●
●●● ●
●●●
●
●●
●●
●
●●●●●●●●
● ●●
●●●
●
●● ●
●
●
●
●●●●●●●●●●●
●●●
●
●●
● ●
●●
●●
●●
●●
●
●●●
●
●●
●●
●●●●
●●
● ●
●●
●
●●
●
●●
●●
●●●●●
●●●
●●●●
●
●
●
●●
●
●
●
●●
●●●
●●●●
●●
●● ●
●●●
●●●●
●●●
●
●
● ●●●
●
●
●
●
●●
●●
●●
●
●●
●●
●●●●
●●●●●●●
●●
●●
●
●●●●
●
●● ●
●
●
●
● ● ●●●●
●●●
●
●
●
●
● ●
●
●●
●
●
●
●
●
●●
●
●
●
●
●●
●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
●
●
●
●
●
●
●●●
●●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●●
●
●
●●
●
●
●●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●● ●
●
●
●●
●
●
●●●
●
●●
●●●●
●
●
●●
●●●
●●●●●
●●
●
●●●●●●
●
●●
●
●●
●
●●●
●
●●●
●
●●●
●●
●●
●●
●●●
●●●●●●●
●
●
●
● ●
●
●●
●
●
●●
●●
●
●
●
●
● ●
●●●●
●
●●●●
●●
●●● ●
●●
●●
●●●●●
●
●●●●
●●●●●
●●
●
●
●●●
●
●● ●●
●
●
●
●●●
●
●
●●
●
●
●●
● ●●
●●
●
●●
●●
●●
●●
●
●●
●
●
●
●
●
●
●●
●●
●
●●
●●
●●●
●●●●●●●
●●●
●●●
●●
●●●
●●●●●
●●●●●●●●
●●●●
●●●●●●
●●
●
●●●●●●●●● ●●
●● ●●●●
●●
●●●●●●●●●●
●●●
●●
●
● ●●
●
●●●●●
●●●●
●●●●●
●●●
●●●●●●● ●●
●
●
●●
●●
●
●● ●●●●●
●●● ●
●●
●●
●
● ●●
●
●●●
●●
●●●●●●
●●●●●●●●●●●●●●
●●●●●
●●●●
●●●●
●●
●
●●
●
●●●●●
●●●●●●●
●●● ●●●●●
● ●●●
●
●●
●●●●●●●●●●●
●●●●●●●●●●●●
●●
●
●
●●● ●
●●●
●●●●
●● ●●●
●●●●●
●●●●
●●●●
●●●
●●
●●
●●●●
●●●
●●
● ● ●●
●
●●●●●
● ●●
●●●
●
●●●
●●
●
●●●
●●
●
●
●
●●
●●
●
●
●
●
●
●
●●
●●
●●
●
●
●
●
●
●
●●
●●
●●
●●●
●
●
●
●
●●●●●
●
●●
●
●●●●
● ●●
●
●
●●
●●●●●
● ● ●●
● ● ● ●
●●●
●
●
●●●
●●
●
●●●
●
●
●
●●
●●
●
●
●
●
●●
●
●
●●●●
●
● ●●●
●●
●
●
●●
●●
●
●●●
●●
●
●
● ●●●
●
●
●
● ●
●
●
●●●
● ●●
●●
●●●
●●●
●●
●●
●
●●●
●
●●
●
●
●●
●
● ●
●
●●●
●
●● ●
●
●
●●
●
●
●
●●
●
●
●●●
●●●●●
●●●
●
●
●●
● ●
●
●●
●
● ●
●●
●●●
●●●
●
● ●●●●
●
●●
●
●●
●●●●
●●●●●●
●●●●●
●●
●
●●
●
●
●●●
●●
●●●
● ●●
●●
●
●●
●●
●●
●●
●●
●●
●●● ●
●●●
●●●●●●
●●●●●●
●●
●
●
●
●●●
●●●
●●●
●●●●
●●●● ●●
●
●●
●●
●●
●●●●●●●●●
●
●
●
●●●
●● ●●●●
●●
●
●●●
●●
●●
●●
●●
●●
●●●
●●
●
●
●
●●●
●●
●
●
●
●●
●●
●
●
●
●
●
●●
●● ●
●●●●●●●
●●●●
● ● ●●●
●●●● ●●●●
●●●
●
●●
●
●
●
●●
●
●● ●●●
●
●
●●
●●●
●● ●●
●●●
●
●●●
●
●
●●●
●●
●●●
●● ●●● ●●
●●●●●●●●
●● ●●●●
●●●●●
●●
●
●
●
●●
●
●
●
●●●●
●
●●
●●●
●●●●
●
●●●
●
●
●
●●
●
●
●
●●
●●
●
●●●●
●
●●
●●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
●
●●
●● ●
●
●
●
●●
●●
●
●●
●
●
●
●
●●
●●
●●
●●●
●
●●
●
●●
●
●●
●●
●
●
●
●●
●
●●
●●
●
●
●
●
●
●●
●
●●●●●●
●●● ●
●
●
●
●
●
●● ●
●
●●●●
●●●
●●
●
●●
●
●
●●
●●
●
●
●●●
●●
●●
●
●● ●
●
●●
●
●●
●●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
● ●
●
● ●
●
●
●
●●●
●
●●
●
●
●●
●
●
●●
●●
●
●
●
●●
●
●●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●●
●●
●
●
●
●●
●
●
●
●
● ●
●
●
●
●●
●●
●●
●
●●
●
●
●
●
●
●●
●
●●
●●
●
●
●
●
●
●
●
●
●
●●
●●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
●
●
●
● ●
●
●
●
●
●
●●
●
●
●●●
● ●
●●●●●●
●
●
●●
●
●
●
●
●●
●
●
●
●●
●
●●●
●
●
●
●
●
●●
●
●
●
●
●
●●
●●
●
●●
●
●
●●
●●●
●●
●●
●●●
●
●
●
●
●
●●
●
●
●
●
●
●●
●
●
●
● ●
●
● ●
●
●●
●
●
●●
●
●
●●
●●●
●
●
●
●●
●
●
●
●
●●●
●●
●
●
●
●
●
●
●
●●
●●
●●
●
●●●●
● ●
●
●●
●
●
●
●●●
●
●
●
●
●
●●
●
●
●
●●●
●
●
●
●
●●
●●
●●●
●●●
●
●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●●
●●
●●
● ●●●●
●●
●
●●
●●
●
●
●●
●●
●
●
●●
●
●
●
●● ●●
●
●●
● ●●●
●
●
●
●
●
●
●
●
●● ●
●●
●
●●
● ●
●
● ●
●
●●
●
●
●
●
●● ●
●
●●
●
●●
●
●●
●
●
●●
● ● ●
●
●
●
●
●●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
● ●
●
●
●●
●
●
●●
●
●●●
●
●●
●
●●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●●
●
●
●●
●
●●
●●
●●
●
●
●
●
●
●
●
●
●
●
●●●
●
●
●
●
●●●
●
●
●●
●
●●
●
●●
●
●
●
●
●●
●
●
●
●●●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●●●
●
●●
●
●
●
●●●
●
●
●
●
●
●●●
●
●●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●●
●
● ●●●
●
●
●
●
●
●●
●
●
●
●●
●
●
●●
●
●
●
●
●
●
●●● ●
●
●
●●
●●● ●● ●●
●
●
●●
●●
●
●●●
●
●●●
●
●
●●
●
●
●
●
●●
●●
●
●●
●
●
●
●●
●●●●
●●●
●●
●
●
●
●
●
●
●●
●●● ●
●
●
●
●●
●●
●
●●
●●
●●●●
●●●
●
●
●●
●
● ●
●
●
●●●●
● ●●
●
●●●
●
●
●
●
●
●●
●●●
●
●●
●
●
●
●
●●
●
●
●
●●
●●●
●
●
●
●●●
●
●
●
●
●
●
●
●
●●
●
●
●●●
●●
●
●
●●
●●
●●●●
●●●●
●●●●
●
●
●
●●
●●
●●●
●●●
●
●
●
●●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●●
●
●●
●●
●
●
●
●●
●
●
●
●
●
●●
●●
●
●●
●●
●●
●
●
●
●
●●
●●
●
●
●
●
●●
●●
●
●
●
●
●
●
●●
●
●
●
●
●●
●●
●
●
●
●●
●
●
●●
●
●
●
●
●●
●
●
●●
●●
●●●
●
●
●
● ●
●
●
●
●
●
●
●
●
●
●
●
●●
●●●●
●
●
●●
●
●●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●●●
●
●●●●
●
●
●
●
●
●
●
●●
● ●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●●
●
●
●●
●
●
●
●
●●●
●
●●
●●
●
●
●●●
●
●
●
●
●
●●●●
●
●
●
●
●
●
●●●
●●
●
●●
●
●
●
●●
●●●
●●●●●
●
●●●●●●●●●
●●●
●●
●●
●●
●●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
● ● ●
●●
●
●
●●
●●
●●
●●● ●
●●
●●●●●
●●●●
●●●●
●●●●●●●●●●●●●●●●●
●●●●
●●●●
●●●●
●●●
●●
●
●
●●●●●●●●
●
●●●●●●●●●●●●●●●
●●●●●●
●●
●●●●
●●
●
●●
●●●
●
●●●
●
●
●
●●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●
●●
●
●●
●
●
●●●●
●●
●
●
●●
●●
●●●●
● ●●
●
●
●
●
●●●
●●●
●●
●●●●●●●
●●●
●●
●●
●●
●
●
●
●●●
●●●●●●●●●●●●
●
●●●●●
● ●
●●●
●●●●●●●●●
●●
●
●●●●●●●
●
●
●●
●
●●●●
●●●
●●
●●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
●
●●●
●
●
●●
●
●
● ●
●●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●●
●●
●●
●
●●●
●●●●
●
●
●
●
●●
●●●●
●
●
●●
●●
●
●●
●
●●
●
●
●
●
●
●
●●
●
●
●●●
●●
●
●
●●
●
●
●
●
●
●
●
●●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●●
●
●
●
●
●●
●
●
●●
●
●
●●
●
●
●
●
●
●
●
●●
●
●●
●
●
●●●
●
●● ●
●
●
●●●●
●
●
●
●
●
●
●●
●
●
●
●
●
●● ●
●● ●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●●
●
●●
● ●●
●
●
●●
●●●
●●●
●
●●
●
●
●
●
●●●
●
●
●
●●●
●
●
●
●●
●●
●●
●●
●●●
●
●
●●●
●
●●
●
●
●
●
●
●
●
●●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●●●
●●●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
●
●●
●
●
●
●
●
●
●
●
●
●●
●●●
●
●
●
●
●●●●
●
●
● ●
●
●
●
●●
●●
●●●●●
●
●
●
●●
●●●
●●●●●
●●
●
●
●●
●
●
●●
●●
●●
●
●●
●●●
●
●●
●
●●●
●
●●
●●
●
●
●
●
●
●
●●
●
●
●
●●
●
●
●
●●
●
●●
●
●●
●●
●●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●●●
●
●
●●
●
●
● ●
●●
●
●
●●●
●●●
●●
●●
●
●
●●
●
●●●●
●
●
● ●
●
●
●●●
●●
●
●●●
●●
●●●
●●
●●
●●●●
●
●
●●●
●
●●●●●
●
●
●●
●●
●●
●
●
●●
●●
●
●●●●
●
●
●●
●●
●
●●
●●●
●●●●●
●● ●●●
●
●
●
●●●
●
●●
●●
●
●
●
●●
●●●●
●
●●
●●
●
●
●●● ●
●●●
●●●●●
●●
●●
●●
●●●●●●
●●●
●● ●●
●
●
●
●
●
●●●
●●●●●
●
●●
●●
●
● ●
● ●●●
●●●●●●
●
●
●●●
●
●
●●
●
●
●
●●
●
●
●●
●
●●
●
●
●
●
●
●
●●●
●●
●●●
●
●
● ●●
●
●
●●●
● ●●●●
●
●
●●
●
●●
●
●●●●
●
●
●●●
●
●●● ●
●
●●
●
●●
●●
●
●●●
●●
●●
●
●●
●●
●●●●
●●
●
●
●●
●
●
●●●
●●
●●●●● ●
●
●●●
●●●●●
●
●●●
●
●
●
●●●
●
●●
●● ●
●
●
●●
●
●
●
●●
●●
●
●
●
●●●
●
●
●
●
●
●●●
●
●●
●●
●
●●
●●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●●●
●
●●
●
●●●
●
●
●
●
●
●
●
●
●
●●●
●
●●
●●
●●●
●
●●
● ●
●●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
●
●●
●
●
●
●
●
●●
●
●
●●●
●
●●
●
●
●
●
●
●●
●
●●
●
●
●
●●
●
●
●
● ●
●●
●
●
●●●●●
●
●
●●
●
●
●
●
●●
●
●
●●
●
●
●●
●
●●
●
●
●●
●
●
●
●
●
●●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●●
●
●
●
●
●
●
●●
●
●
●
●●
●
●●●
●
●
●
●●
●
●
●
●●
●
●●
●
●
●●
●
●●
●
●
●
●●
●●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●●
●●
●●●
●
●
●
●
●
●
●●
●
●
●
●
●●
●
●
●
●●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●●
●
●●
●●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
●
●●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●●●
●
●
●
●
●
●
●
●●
●
●
●●
●
●●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●●●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●●
●
●●
●●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●●
●
●
●
●
●
●
●
●
●●
●
●●
●●●
●
●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●●
●●●●●
●
●
●●●
●
●●
●●
●●●●●●●
●●●●
●●
●
●●
●
●
●●
●●
●●
●●
●●●●●
●
●
●●
●
●
●●
●
●
●
●
●
●
●●
●
● ●
●
●
●
●
●●
●
●
●●
●
●
●
●
●
●
●
●
●●
● ●
●
●●●●
●●
●
●
●
● ●
●
●
●●
●●●
●
●
●●●●
●●●●
●
●
●
●
●
●
●●
●●●●
● ●●●
●●
●●●●
●
●●●●●
●●
●
●●
●
●
●●
●
●●
●
●●●
●●
●
●●●●
●●
●●
●●
●●●●●● ●
●●
●
●●
●●
●●●●
●●●
●
●
●●●
● ●●
●
●
●●
●
●
●●
●
●●
● ●
●
●
●●● ●
●
●
●●
●
● ●●
●●●●●●●●
●●● ●
●●●
●●●●
●● ●●●
●
●
●
● ●●●●
●● ●
●●
●
●●
●
●●
●
●●●
●
●●
●
●●
●●
●
●
●
● ●●●
●●
●
●●●●
●
●●●●●●
●
●
●
● ●
●
●
●●●
●●
●
●
● ●
●●
●●
●
●
●
●
●
●●●●●●●●
●●●●
●
●
●●
●
●●
●●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●●●
●●●
●●
●
●●●●
●●●
●●
●
●
●
●
●
●
●
●
●
●
●
●●
●●
●
●
●●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
● ●
●
●
●●
●
●●
●
●●
●●
●
●
●●●
● ●
●
●●
●●●
●●
●
●
●
●
●
●●
●
●
●●●●●
●●●●
●
●●●●●● ●
●●
●●●●●●
●●
●●●●●●●
●●
●●
●●●●
●●●
●
●●●●●
●●
●●●●
●●●●
●
●●
●
●●●●
●
●
●
●●
●
●
●●
●
●
●●●
●●
●
●
●
●
●●●●
●●●●
●● ●●
●●
●●
●●
●●●
●
●●●
●●
●●
●●●
●
●●
●●●●●
●●
●●
●●
●
●●
●●●●●
●
●●●●●
●●●●
●
●
●
●●●●●●●
●●●●
●●●●●●●●
●●●●
●
●● ●●●
●
●●●
●●●
●●●●●
●
●
●●
● ●●
●
●●●
●●
●●
●●●
●●● ●●●●●
●
●
●
●●●
●●
●●●●
●●
●● ●●
●●
●●●●
●●
●●
●●
●●●●
●●
●●●●
●●● ●
●●●●●●
●
●●
●●●●
●●
●●●●●●
●●●●●● ●●
●●
●
●
●●
●
●
●●
●
●●●
●
●●
●● ●●
●
●●
●●
●
● ●
●
●
●●
●
●
●
●●
●
●
●
●
●
●●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●● ●
●
●●
●●
●●●●
●
●
●
●●
●
●
●●
●●
●
●●
●●●●
●●●●
● ●●● ●●
●●●
●●● ●
● ●●●
●
●
●●
●●●
●●
●
●●●●
●●
●●
●●●
●●
●
●
●
●
●
●
●
●●
●
●
●●
●●●●
●
●
●
●●●●●●●●
● ●●●●●●
●
●
●●●●●
●●●● ● ●
●●
● ●●
● ●●●●
●
●●●
● ●
●●
●●●● ●
●●● ●●
●
●●●●●●●
●●
●
●●●●
●●●
● ●
●
●
●●
●
●
●
●
●●
●● ●
●
● ●
●●
●●
●●
●
●
●
●
●
●
● ●●●
●●
●
●
●
●
●
●●
●
●
●
●●
●●
●
●
●
●●
●
●●
●
●
●●
●
●
●●●●
●
●●
●
●
●
●
●
●
●
●●
● ●
●
●●●
●
●
●
●
●
●
● ● ●
●●●
●
●●
●
●
●
●●
●●●
●
●
●
●
●●
●
●●
●●●
●●●
●●
●
●●
●
●●
●●
●●
●●
●●
●
●
●
● ●
●●
●
●● ●
●
●
●
●
●●
●
●
●●●
●●●●●
●●
●
●●
●
●
●●●
●●
●
●
●●
●
●●
●●●
●●
●●
●
●
●
●
●
●
●●
●●
●
● ●●
●
●
●
●
●●
●
●
●
●
●
●●
●
●
●
●●
●●
●●●●
●
●
●●●
●
●
●
●●
●
●●
●
●
●●
●
●●
●
●
●
●
●
●
●●●
●
●
●
●
●
●
●
●●●
●
●●
●
●●●●●
●●
●
●
●
●
●●●●
●●
●
●●●●
●●
●
●●●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●●●●●
●
●●●●●●
●●●●
●
●●●●
●●●
●●●●
●●
●●
●
●● ●
●●
●
●
●●
●●●
●●
●●
●
●●
●●
●
●
●●●
●
●
●
●
●●
●●
●●
●
●●
●●●●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
●●
●●●●●
●
●
●
●
●●
●●
●
●
●●●
●●●
●
●
●●●
●
●
●●
●●●
●
●
●●
●
●
●
●
●
● ●
●●
●
●
●
●●●
●●
●
●
●●
●
● ●●
●●
●
●
●
●
●
●●●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●●
●
●
●●
●●●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
●●
●●●
●
●
●
●
●
●
●
●
●
●●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●●●
●●
●
●
●
●
●
●●
●●●
●
●●
●
●●●
●
●●
●
●
●●●
●●
●
●
●
●●
●
●●
●
●●
●●
●
●
●●
●●
●
●
●
●●
●
●
●
●
●
●
●
● ●●●
●
●
●
●
●●
●
●
●
●● ●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●●
●
●
●
● ●●
●
●
●
●
●●●
●
●●
●
●
●
●
●
●
●●
●
●
●
●
●●
●
● ●
●
●
●
●
●
●
●●
●●●
●
●
●
●●
●●●●
●
●
●●
●
●
●
●
●●●●
● ●●●
●●
●
●
●●
●
●●
●●
●
●
●●●●●
●
●
●
●●●●●
●
●
●
●
●
●●
●●
●● ●●
●
●
●
●●
●●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●●●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
●
●●
●
●● ●
●
●●
●●
●
●●
●
●●
●●
●●●●
●●
●●
●●●
●●
●
●●●
●●
●
●
●
●
●
●●●●
●
●●
● ●
●
●
●
●●
●●
●
●●●●
●●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●●
●●
●●
●
●
●
●
●
●●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
● ●●●
●
●
●●
●
●●
●
●
●
●
●
●
●
●
●
● ●
●●
●
●
●
●
●
●
●
●●●
●
●
●
●
●
●
●●
●●
●
●●
●
●●
●
●
●
●
●
●●
●
●
●
●
●●
●●
●●
●
●
●●
●
●
●●
●
●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●●
●
●
●
●
●
●
●●
●●
●●
●●
●●
●
●
●●
●●
●●●
●
●
●●●●●
●●
●●●●
●
●
●
●●●●
●
●●●●
●●
●
●
●
●
●
●●●
●
●
●●
●
●●
●
●●
●
●●●
●●
●●●●
●●●●●
●
●
●●●●
●●
●
●
●●
●
●●●●●
●●●
●●
●
●
●
●●
●●●●●
●
●
●●●
●●
●●
●
●
●
●
●●●●●●●●●●●●
● ●●●
●●
●
●
●
●●
●●
●
●●●
●
●
●
●
●
●
●
●●●●●
●●●●
●●●●
●●●●
●● ●●●●●●
●
●●●●●●●
●●● ●●
●
●
●
●●
●
●●
●
●
●●●●
●●
●●●●
●●
●●●●
●●●●
●●
●●
●●
●● ●
●
●●●
●
●
●●●●●●●●
●
●●
●
●
●
●
●●
●●● ●●●
●●
●●●
●●●
●●
●●●●
●●●●●●●●●
●
●●● ●
●
●●● ●●●
●●●●●
●●●●●●
●●●●●●●●●●●●
●●●●●
●●
●
●●●●
●●●
●●●●●
●●●
●●●
●●●● ●●●
●
●●
●
●●●
●●
●●●●●
●
●●
●●●●●●
●
●●●●●●●●●
●●
●
●
●●●●
●
●●
●
●●●●
●
●●●
● ●
●●
●
●
●●
●●●
●●
●●●●●● ●●
●●●●
●●●
●●●
●●
●
●●●
●
●●●
●●
●
●
●●
●
●●
●●
●
●●
●
●●
●
●●
●
●
●
●
●●
●
●●●
●
●
●
●●
●●●●●●
●●●
●
●●
●●
●●●
●
●
●●
●●
●
● ●
●
●
●●
●
●
●●
●
●●●●●
●
●
●●●
●●
●●
●
●●●
●●●●●
●
●●●●
●
●
●●●
●●●
●
● ●●●
●
●
●●
●●●●
●●●●
●●
●
●●●●●●
●●●●
●●
●● ●
●●●
●●●●
●●●●●●●
●●
●
●
●
●
●●
●●
●
●●
●
●●
●●
●●
●
●
●●●
●
●●
●
●
●●
●
●
●
●●
●
●
●●
●
●
●
●●●
●
●●
●
●
●
●●●
●
●
●
●
●●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●●
●
●
●
●●
●
●
●
●
●
●
●
●●
●
●
●
●
●●●
●
● ●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●●
●
●●
●
●
●
●
●
●
●
●●
●●
●
●●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●●●
●
●●
●
●
●
●
●
●●●
●
●
●●
●
●●
●●
●●
●
●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●●
●
●●
●●
●
●●
●
●
●●
●
●
●●
●
● ●
●●
●
●
●●
●●●
●●●●
●
●
●●●
●●●
●
●●
●●●
●
●●
● ●●●
●●●●●●
●
●
●
●●
●●●
●
●
●
●
●●
●●
●●●●
●
●
●
●
●
●●
●●
●●●
●
●
●●●
●
●●●
●●●
●
●●
●
●
●
●
●
●
●
●●●
●
●●
●●●●
●●
●
●●
●
●●
●
●
●
●●
●
●
● ●
●
●
●●
●
●
● ●
●●
●
●
●
●
● ●
●●
●
●●
●●●
●
●
●
●
●
●
●●
●
●●
●●
●●●●●
●●●●●●●●●●●●
●●●
●
●
●
●
●
●
●
●
●●
●●
●●●
●●●
●●
●●●
●
●
●
●●
●●
●