:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v:v