Diferencia entre revisiones de «Juan Domingo Perón»

Contenido eliminado Contenido añadido
Sin resumen de edición
m Revertidos los cambios de 200.114.244.73 (disc.) a la última edición de Tirithel
Línea 1:
{{otros usos|Perón}}
PENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENEPENE
{{Ficha de autoridad
| imagen = Juan Peron con banda de presidente.jpg
| Pde la Nación Argentina]]
| tamaño = 210px
| pieimagen = '''Juan Perón''' en 1947
| cargo = 41.<sup>er</sup> [[Presidente de la Nación Argentina]]
| escudo = Coat_of_arms_of_Argentina.svg
| inicio = [[12 de octubre]] de [[1973]]
| final = [[1 de julio]] de [[1974]]
| vicepresidente = [[María Estela Martínez de Perón]]
| predecesor = [[Raúl Lastiri]]
| sucesor = [[María Estela Martínez de Perón]]
| Pdecargo2 = 29.° [[Presidente de la Nación Argentina]]
| escudo2 = Coat_of_arms_of_Argentina.svg
| inicio2 = [[4 de junio]] de [[1946]]