Contenido eliminado Contenido añadido
|
|
{{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]]
|