MixX: Unterschied zwischen den Versionen

Aus Coldmirror-Wiki
Zur Navigation springen Zur Suche springen
K
 
(3 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
WixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixX
+
[[Bild:Mixx.jpg|thumb|MixX-Logo]]
XWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixXWixX
+
[[Bild:Altes_MixX_TV_Logo.PNG|thumb|Das alte MixX TV Logo (bis ca. 2002)]]
 +
 
 +
'''MixX''' war ein Jugendfernsehmagazin, das erstmals im Februar 1999 unter dem damaligen Namen "MixX TV" im ''Offenen Kanal Umland der Stadt Bremen'' lief. Als der Sender sich im Jahr 2002 in den ''Bürgerfunk Bremer Umland'' umformierte und seine Fernsehsparte fortan ''UMLANDtv'' nannte, war die Redaktion gezwungen, sich fortan nur noch "MixX" zu nennen, weil in den Namen der Sendungen kein "TV" mehr vorkommen sollte. Im Jahr 2004 endete die Sendung und die Redaktion ging auseinander.
 +
 
 +
[[Coldmirror]] gehörte der Redaktion von MixX seit dem Jahr 2000 bis zum Ende der Sendung an.
 +
 
 +
==Geschichte==
 +
Auf Initiative eines gewissen Tims fand ein erstes Treffen zur Redaktionsgründung am 1. Oktober 1998 statt, damals nur mit ihm, [[KWiNK]], den Tim von seiner Arbeit bei der Schülerzeitung kannte, und [[Nina]], die Tim während eines Ferienprojekts im Sommer 1998 kennen gelernt hatte. Zum zweiten Treffen, eine Woche später, brachten sie dann verschiedene Freunde mit, darunter KWiNKs Schulfreund [[Sven]] und seine Schwester [[Korinna]], die beide feste Bestandteile der Redaktion wurden. Im November wurde als erster Beitrag ein Interview mit dem amerikanischen Kinderstar Aaron Carter gedreht, eine komplette, halbstündige Sendung wurde aber erst Ende Februar 1999 ausgestrahlt.
 +
 
 +
Nach dieser ersten Sendung verließ Tim die Redaktion, Nina und KWiNK übernahmen seine organisatorischen Aufgaben. Die Sendung erlangte bald einen guten Ruf und wurde ins Samstagsprogramm des Senders geholt, wo sie alle zwei Monate den Vorabend bestritt. Als der Samstag als Sendetag wegfiel, verlegte man sich auf den jeweils vierten Montag jeden Monats mit einer geraden Zahl. Insbesondere durch die Rubrik "''Nina in Gefahr''" bekam MixX schnell eine kleine Fanbasis, die sich aber vor allem auf Nina konzentrierte.
 +
 
 +
2004 beschloss die Redaktion ihre Auflösung, da sich vier der Mitglieder um ihr Abitur kümmern mussten und die Anderen ebenfalls anderen Verpflichtungen (Job, Studienabschluss, etc.) nachgehen wollten. Die letzte Sendung im Juni 2004 konnte leider nie ausgestrahlt werden, weil Jemand das Sendetape aus dem Schnittraum entwendete.
 +
 
 +
==Konzept==
 +
MixX war eine Magazinsendung im weitesten Sinne. Neben Starinterviews (z.B. mit Aaron Carter, [[MIA.]], Söhne Mannheims, Placebo, Beatsteaks, Christian Ulmen etc.) und jugendrelevanten Themenberichten spielte vor allem der Comedyaspekt eine große Rolle. Gerade hier war [[Coldmirror]] aktiv, in den Sketchen, Scherzumfragen und Improberichten.
 +
 
 +
Die Redaktion versuchte immer, ihre Mitglieder zu Figuren aufzubauen, die man als Charakter erkannte und auch daher witzig fand. Dieses gelang jedoch nur mit Hauptmoderatorin [[Nina]] wirklich, die mit ihrer eigenen Berichte-Reihe in MixX, ''Nina in Gefahr'', einen relativ hohe Bekanntheitsgrad im Sendegebiet erreichte.
 +
 
 +
Die Sendung lief alle zwei Monate am jeweils vierten Montag des Monats (zeitweise auch am zweiten Samstag, bis dieser Sendetag für den Sender gestrichen wurde) und war zu verschiedenen Zeiten ihrer Existenz 30, 45, 60 oder 75 Minuten lang. Ein ständiger Grund für Kritik war die teilweise exzessive Länge der Beiträge, die häufig oberhalb von zehn Minuten lag.
 +
 
 +
==Personen==
 +
[[Bild:Mixxred2004.JPG|thumb|Die MixX-Redaktion im März 2004]]
 +
===[[Coldmirror|Kathrin (aka Coldmirror)]]===
 +
Coldmirror, damals noch Kathrin, war wie geschrieben seit dem Jahr 2000 Mitglied der Redaktion. Sie kam über ihre Schulfreundin [[Korinna]] mit der Sendung in Kontakt und Korinnas Bruder, Redaktionsleiter [[KWiNK]], wollte sie wegen ihres ungewöhnlichen Humors gerne dabei haben. Ihren ersten Auftritt hatte sie als Lehrerin im Sketch "Die Sprachschule", der am 10. Juni 2000 gesendet wurde, zunächst nur als Schauspielerin. Am 14. Oktober lief dann mit "[[Alte-Oma-Helf-Män]]" ein erster Sketch, den sie selbst geschrieben hatte (mit Nachbearbeitungen von KWiNK). Im Laufe ihrer Arbeit bei MixX führte sie auch manchmal Regie und war an verschiedenen Scherzumfragen beteiligt. Erst in den letzten Sendungen wurde auch ihr Talent für Improberichte entdeckt und es entstanden drei [[Kaddi und Koko|"Kaddi & Koko"-Beiträge]], in denen sie und Korinna zu Veranstaltungen gingen und dort allerhand lustiges Zeug trieben.
 +
 
 +
===[[Nina]] und [[Sven]]===
 +
Nina und Sven waren die Hauptmoderatoren der Sendung, die auch durch ihr Auftreten die Beiträge miteinander verknüpften. Insbesondere Nina war auch hinter den Kulissen sehr aktiv und war in sehr vielen Berichten vertreten. Beide waren von Anfang an dabei, Nina schied aber Ende 2003 aus der Redaktion aus, um sich verstärkt auf ihr Abitur und ein Engagement beim Radio zu konzentrieren. Beide kommen in Zusammenhang mit Coldmirror bislang nicht weiter vor.
 +
 
 +
===[[KWiNK]]===
 +
KWiNK war der inoffizielle Redaktionsleiter der Sendung, der vor allem die Redaktionstreffen und Drehs organisierte. Drehbücher für Sketche schrieb häufig er, nicht wenige in Zusammenarbeit mit [[Coldmirror]]. Er moderierte auch Beiträge und trat in Sketchen auf. Außerdem war er häufig für Regie und Kamera zuständig, den Schnitt der gesamten Sendung machte er ab 2000 komplett selbst. Sein großer Einfluss formte die Sendung, jedoch nicht immer zum Guten, da sie gerade in den letzten Jahren vermehrt seine Interessen und Vorlieben widerzuspiegeln begann und sich so immer mehr spezialisierte.
 +
 
 +
===[[Korinna]]===
 +
Korinna war ebenfalls von Anfang bis Ende der Sendung dabei, allerdings nicht so präsent wie ihr Bruder. Sie schrieb nur gelegentlich Drehbücher, war dafür als Moderatorin von Beiträgen und Schauspielerin häufiger zu sehen, zeichnete sich auch immer wieder für die Kamera verantwortlich. Innerhalb der Redaktion war sie ein wichtiges Bindeglied, da viele Mitglieder über sie in die Sendung kamen.
 +
 
 +
===[[Clofix|Claudia (aka Clofix)]]===
 +
Claudia oder "Clo", Coldmirrors Schwester, kam schon im September 1999 über Korinna zur Redaktion, war damals mit neun Jahren das bei weitem jüngste Redaktionsmitglied. Ihren ersten Auftritt hatte sie in der Sendung vom 25. Oktober 1999 als "Gummibärchengirl" im Sketch "Der Gummibärchenmann braucht Hilfe". Sie hat sich wenig mit der Technik oder redaktionellen Belangen beschäftigt, war mehr für Schauspiel und Moderationen von Scherzumfragen verantwortlich. Ihre erste solche Umfrage wurde am 6. August 2009 unter dem Namen "Frage der Woche: Sind Sie 'sitt'?" auf ''MixXclassixX'' veröffentlicht. Häufig basierten aber auch Sketche auf Improvisationen, die sie und ihre Schwester zu hause mit ihrer Privatkamera gemacht hatten.
 +
 
 +
===[[Jenni|Jennifer]]===
 +
Jennifer, die als Freundin von [[Korinna]] und [[Coldmirror|Kathrin]] 2000 in die Redaktion kam, war ebenfalls vor allem für Schauspiel und vereinzelte Moderationen zuständig, engagierte sich zum Ende der Sendung hin aber auch stärker, so dass sie einige wichtige Interviews führen konnte. Ihr erster Auftritt war im Oktober 2000 im Sketch "Alte-Oma-Helf-Män", sie war aber im Juni 1999 schon mal als interviewte Person in einem Bericht aufgetaucht.
 +
 
 +
===Weitere Redaktionsmitglieder===
 +
Weitere Redaktionsmitglieder, die aber Großteils nur für wenige Sendungen dabei waren, waren z.B. '''Miriam''', '''[[Kai]]''', '''[[Xenia]]''', '''Svenja''' und einige mehr.
 +
 
 +
===Besetzungshistorie===
 +
Auf der folgenden Grafik kann man erkennen, wer von 1999 bis 2004 bei MixX aktiv dabei gewesen ist:
 +
 
 +
[[Bild:MixxTV_-_Redaktionsbesetzung.JPG|thumb|center|left|825px]]
 +
 
 +
==MixXclassixX==
 +
Nach dem Ende der Sendung versprengten sich die Redaktionsmitglieder über Deutschland (und in Jennis Fall Amerika) und gingen anderen Pflichten nach. Als Coldmirrors Bekanntheitsgrad stieg und insbesondere da sie einzelne MixX-Beiträge bereits hochgeladen hatte und die teilweise sehr gut ankamen (z.B: die [[Normi Potter]]-Reihe, [[Prinzessin Tausendschön]] oder [[World Gone Wild]]), beschloss man jedoch, die alten Beiträge der Sendung auf einem eigenen [[YouTube]]-Kanal namens '''MixXclassixX''' einer breiteren Öffentlichkeit wieder zugänglich zu machen. Von 2007 bis 2009 stellte Coldmirror, die damals noch als einziges ehemaliges Redaktionsmitglied die nötige Technik besaß, in teilweise sehr großen Abständen Berichte und Sketche von MixX ein. Seit dem Jahr 2009 stellt KWiNK, der nun ebenfalls über geeignetes Equipment verfügt und damit sogar bessere Qualität erreicht, jeden Freitag "was neues aus den Jahren 1999 bis 2004" online. Jedes frühere Redaktionsmitglied hat den Zugang zum Account und beantwortet gelegentlich Fragen der Nutzer.
 +
 
 +
Als Coldmirrors Kanal bei YouTube kurzfristig gesperrt wurde und Kathrin einen neuen Kanal einrichtete, lud sie alle alten "MixX"-Videos, die bislang nur in ihrem Account zu sehen waren, bei ''MixXclassixX'' wieder hoch. Nun sind alle Videos von MixX, die man im Netz findet, bei ''MixXclassixX'' gesammelt.
 +
 
 +
Am 10. September jeden Jahres färbt das Kanaldesign sich für einen Tag schwarz, um an den Todestag von [[Clofix]] zu erinnern.
 +
 
 +
==Weblinks==
 +
*[http://home.arcor.de/kwink MixX-Homepage]
 +
*[http://www.youtube.com/MixXclassixX YouTube-Kanal MixXclassixX]
 +
*[http://www.bfbu.de Homepage des Bürgerfunks Bremer Umland]
 +
*[http://home.arcor.de/kwink/galerie/pub1_frame.htm]
 +
 
 +
[[Kategorie:Shows]]
 +
[[Kategorie:Andere Werke]]
 +
[[Kategorie:MixX]]

Aktuelle Version vom 27. Oktober 2011, 21:50 Uhr

MixX-Logo
Das alte MixX TV Logo (bis ca. 2002)

MixX war ein Jugendfernsehmagazin, das erstmals im Februar 1999 unter dem damaligen Namen "MixX TV" im Offenen Kanal Umland der Stadt Bremen lief. Als der Sender sich im Jahr 2002 in den Bürgerfunk Bremer Umland umformierte und seine Fernsehsparte fortan UMLANDtv nannte, war die Redaktion gezwungen, sich fortan nur noch "MixX" zu nennen, weil in den Namen der Sendungen kein "TV" mehr vorkommen sollte. Im Jahr 2004 endete die Sendung und die Redaktion ging auseinander.

Coldmirror gehörte der Redaktion von MixX seit dem Jahr 2000 bis zum Ende der Sendung an.

Geschichte

Auf Initiative eines gewissen Tims fand ein erstes Treffen zur Redaktionsgründung am 1. Oktober 1998 statt, damals nur mit ihm, KWiNK, den Tim von seiner Arbeit bei der Schülerzeitung kannte, und Nina, die Tim während eines Ferienprojekts im Sommer 1998 kennen gelernt hatte. Zum zweiten Treffen, eine Woche später, brachten sie dann verschiedene Freunde mit, darunter KWiNKs Schulfreund Sven und seine Schwester Korinna, die beide feste Bestandteile der Redaktion wurden. Im November wurde als erster Beitrag ein Interview mit dem amerikanischen Kinderstar Aaron Carter gedreht, eine komplette, halbstündige Sendung wurde aber erst Ende Februar 1999 ausgestrahlt.

Nach dieser ersten Sendung verließ Tim die Redaktion, Nina und KWiNK übernahmen seine organisatorischen Aufgaben. Die Sendung erlangte bald einen guten Ruf und wurde ins Samstagsprogramm des Senders geholt, wo sie alle zwei Monate den Vorabend bestritt. Als der Samstag als Sendetag wegfiel, verlegte man sich auf den jeweils vierten Montag jeden Monats mit einer geraden Zahl. Insbesondere durch die Rubrik "Nina in Gefahr" bekam MixX schnell eine kleine Fanbasis, die sich aber vor allem auf Nina konzentrierte.

2004 beschloss die Redaktion ihre Auflösung, da sich vier der Mitglieder um ihr Abitur kümmern mussten und die Anderen ebenfalls anderen Verpflichtungen (Job, Studienabschluss, etc.) nachgehen wollten. Die letzte Sendung im Juni 2004 konnte leider nie ausgestrahlt werden, weil Jemand das Sendetape aus dem Schnittraum entwendete.

Konzept

MixX war eine Magazinsendung im weitesten Sinne. Neben Starinterviews (z.B. mit Aaron Carter, MIA., Söhne Mannheims, Placebo, Beatsteaks, Christian Ulmen etc.) und jugendrelevanten Themenberichten spielte vor allem der Comedyaspekt eine große Rolle. Gerade hier war Coldmirror aktiv, in den Sketchen, Scherzumfragen und Improberichten.

Die Redaktion versuchte immer, ihre Mitglieder zu Figuren aufzubauen, die man als Charakter erkannte und auch daher witzig fand. Dieses gelang jedoch nur mit Hauptmoderatorin Nina wirklich, die mit ihrer eigenen Berichte-Reihe in MixX, Nina in Gefahr, einen relativ hohe Bekanntheitsgrad im Sendegebiet erreichte.

Die Sendung lief alle zwei Monate am jeweils vierten Montag des Monats (zeitweise auch am zweiten Samstag, bis dieser Sendetag für den Sender gestrichen wurde) und war zu verschiedenen Zeiten ihrer Existenz 30, 45, 60 oder 75 Minuten lang. Ein ständiger Grund für Kritik war die teilweise exzessive Länge der Beiträge, die häufig oberhalb von zehn Minuten lag.

Personen

Die MixX-Redaktion im März 2004

Kathrin (aka Coldmirror)

Coldmirror, damals noch Kathrin, war wie geschrieben seit dem Jahr 2000 Mitglied der Redaktion. Sie kam über ihre Schulfreundin Korinna mit der Sendung in Kontakt und Korinnas Bruder, Redaktionsleiter KWiNK, wollte sie wegen ihres ungewöhnlichen Humors gerne dabei haben. Ihren ersten Auftritt hatte sie als Lehrerin im Sketch "Die Sprachschule", der am 10. Juni 2000 gesendet wurde, zunächst nur als Schauspielerin. Am 14. Oktober lief dann mit "Alte-Oma-Helf-Män" ein erster Sketch, den sie selbst geschrieben hatte (mit Nachbearbeitungen von KWiNK). Im Laufe ihrer Arbeit bei MixX führte sie auch manchmal Regie und war an verschiedenen Scherzumfragen beteiligt. Erst in den letzten Sendungen wurde auch ihr Talent für Improberichte entdeckt und es entstanden drei "Kaddi & Koko"-Beiträge, in denen sie und Korinna zu Veranstaltungen gingen und dort allerhand lustiges Zeug trieben.

Nina und Sven

Nina und Sven waren die Hauptmoderatoren der Sendung, die auch durch ihr Auftreten die Beiträge miteinander verknüpften. Insbesondere Nina war auch hinter den Kulissen sehr aktiv und war in sehr vielen Berichten vertreten. Beide waren von Anfang an dabei, Nina schied aber Ende 2003 aus der Redaktion aus, um sich verstärkt auf ihr Abitur und ein Engagement beim Radio zu konzentrieren. Beide kommen in Zusammenhang mit Coldmirror bislang nicht weiter vor.

KWiNK

KWiNK war der inoffizielle Redaktionsleiter der Sendung, der vor allem die Redaktionstreffen und Drehs organisierte. Drehbücher für Sketche schrieb häufig er, nicht wenige in Zusammenarbeit mit Coldmirror. Er moderierte auch Beiträge und trat in Sketchen auf. Außerdem war er häufig für Regie und Kamera zuständig, den Schnitt der gesamten Sendung machte er ab 2000 komplett selbst. Sein großer Einfluss formte die Sendung, jedoch nicht immer zum Guten, da sie gerade in den letzten Jahren vermehrt seine Interessen und Vorlieben widerzuspiegeln begann und sich so immer mehr spezialisierte.

Korinna

Korinna war ebenfalls von Anfang bis Ende der Sendung dabei, allerdings nicht so präsent wie ihr Bruder. Sie schrieb nur gelegentlich Drehbücher, war dafür als Moderatorin von Beiträgen und Schauspielerin häufiger zu sehen, zeichnete sich auch immer wieder für die Kamera verantwortlich. Innerhalb der Redaktion war sie ein wichtiges Bindeglied, da viele Mitglieder über sie in die Sendung kamen.

Claudia (aka Clofix)

Claudia oder "Clo", Coldmirrors Schwester, kam schon im September 1999 über Korinna zur Redaktion, war damals mit neun Jahren das bei weitem jüngste Redaktionsmitglied. Ihren ersten Auftritt hatte sie in der Sendung vom 25. Oktober 1999 als "Gummibärchengirl" im Sketch "Der Gummibärchenmann braucht Hilfe". Sie hat sich wenig mit der Technik oder redaktionellen Belangen beschäftigt, war mehr für Schauspiel und Moderationen von Scherzumfragen verantwortlich. Ihre erste solche Umfrage wurde am 6. August 2009 unter dem Namen "Frage der Woche: Sind Sie 'sitt'?" auf MixXclassixX veröffentlicht. Häufig basierten aber auch Sketche auf Improvisationen, die sie und ihre Schwester zu hause mit ihrer Privatkamera gemacht hatten.

Jennifer

Jennifer, die als Freundin von Korinna und Kathrin 2000 in die Redaktion kam, war ebenfalls vor allem für Schauspiel und vereinzelte Moderationen zuständig, engagierte sich zum Ende der Sendung hin aber auch stärker, so dass sie einige wichtige Interviews führen konnte. Ihr erster Auftritt war im Oktober 2000 im Sketch "Alte-Oma-Helf-Män", sie war aber im Juni 1999 schon mal als interviewte Person in einem Bericht aufgetaucht.

Weitere Redaktionsmitglieder

Weitere Redaktionsmitglieder, die aber Großteils nur für wenige Sendungen dabei waren, waren z.B. Miriam, Kai, Xenia, Svenja und einige mehr.

Besetzungshistorie

Auf der folgenden Grafik kann man erkennen, wer von 1999 bis 2004 bei MixX aktiv dabei gewesen ist:

MixxTV - Redaktionsbesetzung.JPG

MixXclassixX

Nach dem Ende der Sendung versprengten sich die Redaktionsmitglieder über Deutschland (und in Jennis Fall Amerika) und gingen anderen Pflichten nach. Als Coldmirrors Bekanntheitsgrad stieg und insbesondere da sie einzelne MixX-Beiträge bereits hochgeladen hatte und die teilweise sehr gut ankamen (z.B: die Normi Potter-Reihe, Prinzessin Tausendschön oder World Gone Wild), beschloss man jedoch, die alten Beiträge der Sendung auf einem eigenen YouTube-Kanal namens MixXclassixX einer breiteren Öffentlichkeit wieder zugänglich zu machen. Von 2007 bis 2009 stellte Coldmirror, die damals noch als einziges ehemaliges Redaktionsmitglied die nötige Technik besaß, in teilweise sehr großen Abständen Berichte und Sketche von MixX ein. Seit dem Jahr 2009 stellt KWiNK, der nun ebenfalls über geeignetes Equipment verfügt und damit sogar bessere Qualität erreicht, jeden Freitag "was neues aus den Jahren 1999 bis 2004" online. Jedes frühere Redaktionsmitglied hat den Zugang zum Account und beantwortet gelegentlich Fragen der Nutzer.

Als Coldmirrors Kanal bei YouTube kurzfristig gesperrt wurde und Kathrin einen neuen Kanal einrichtete, lud sie alle alten "MixX"-Videos, die bislang nur in ihrem Account zu sehen waren, bei MixXclassixX wieder hoch. Nun sind alle Videos von MixX, die man im Netz findet, bei MixXclassixX gesammelt.

Am 10. September jeden Jahres färbt das Kanaldesign sich für einen Tag schwarz, um an den Todestag von Clofix zu erinnern.

Weblinks